main.js 5.8 MB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564
  1. !function(t){function e(e){for(var n,r,o=e[0],a=e[1],s=0,l=[];s<o.length;s++)r=o[s],Object.prototype.hasOwnProperty.call(i,r)&&i[r]&&l.push(i[r][0]),i[r]=0;for(n in a)Object.prototype.hasOwnProperty.call(a,n)&&(t[n]=a[n]);for(c&&c(e);l.length;)l.shift()()}var n={},i={9:0};function r(e){if(n[e])return n[e].exports;var i=n[e]={i:e,l:!1,exports:{}};return t[e].call(i.exports,i,i.exports,r),i.l=!0,i.exports}r.e=function(t){var e=[],n=i[t];if(0!==n)if(n)e.push(n[2]);else{var o=new Promise(function(e,r){n=i[t]=[e,r]});e.push(n[2]=o);var a,s=document.createElement("script");s.charset="utf-8",s.timeout=120,r.nc&&s.setAttribute("nonce",r.nc),s.src=function(t){return r.p+""+({4:"NotoSansCJKjp-Regular",5:"",6:"NotoSansCJKtc-Regular",7:"PTSans-Regular",8:"",10:"",11:"openlayers",12:"",13:"vendors~openlayers"}[t]||t)+{0:"",1:"",2:"",3:"",4:"c180b1217acb50b16596",5:"",6:"64b7b547b4e6a67626a7",7:"dbde102023883b514726",8:"",10:"",11:"9e59effec83cc3693b5d",12:"",13:"bda930fc91df500ed80d",14:"4331acc2c778ecc64c4a",15:"",16:"",17:"",18:"",19:"",20:"",21:"",22:"",23:"",24:"",25:""}[t]+".js"}(t);var c=new Error;a=function(e){s.onerror=s.onload=null,clearTimeout(l);var n=i[t];if(0!==n){if(n){var r=e&&("load"===e.type?"missing":e.type),o=e&&e.target&&e.target.src;c.message="Loading chunk "+t+" failed.\n("+r+": "+o+")",c.name="ChunkLoadError",c.type=r,c.request=o,n[1](c)}i[t]=void 0}};var l=setTimeout(function(){a({type:"timeout",target:s})},12e4);s.onerror=s.onload=a,document.head.appendChild(s)}return Promise.all(e)},r.m=t,r.c=n,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)r.d(n,i,function(e){return t[e]}.bind(null,i));return n},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r.oe=function(t){throw console.error(t),t};var o=window.webpackJsonpNVIV=window.webpackJsonpNVIV||[],a=o.push.bind(o);o.push=e,o=o.slice();for(var s=0;s<o.length;s++)e(o[s]);var c=a;r(r.s=651)}([function(t,e,n){"use strict";n.r(e),function(t){n.d(e,"ANALYZE_FOR_ENTRY_COMPONENTS",function(){return Qc}),n.d(e,"APP_BOOTSTRAP_LISTENER",function(){return ky}),n.d(e,"APP_ID",function(){return Cy}),n.d(e,"APP_INITIALIZER",function(){return My}),n.d(e,"ApplicationInitStatus",function(){return Ey}),n.d(e,"ApplicationModule",function(){return mw}),n.d(e,"ApplicationRef",function(){return Ob}),n.d(e,"Attribute",function(){return C}),n.d(e,"COMPILER_OPTIONS",function(){return Jy}),n.d(e,"CUSTOM_ELEMENTS_SCHEMA",function(){return Di}),n.d(e,"ChangeDetectionStrategy",function(){return Ct}),n.d(e,"ChangeDetectorRef",function(){return Fs}),n.d(e,"Compiler",function(){return Zy}),n.d(e,"CompilerFactory",function(){return Qy}),n.d(e,"Component",function(){return cy}),n.d(e,"ComponentFactory",function(){return Lp}),n.d(e,"ComponentFactoryResolver",function(){return Up}),n.d(e,"ComponentRef",function(){return Rp}),n.d(e,"ContentChild",function(){return el}),n.d(e,"ContentChildren",function(){return tl}),n.d(e,"DEFAULT_CURRENCY_CODE",function(){return Ny}),n.d(e,"DebugElement",function(){return sw}),n.d(e,"DebugEventListener",function(){return zb}),n.d(e,"DebugNode",function(){return aw}),n.d(e,"DefaultIterableDiffer",function(){return eh}),n.d(e,"Directive",function(){return sy}),n.d(e,"ElementRef",function(){return Gp}),n.d(e,"EmbeddedViewRef",function(){return Bb}),n.d(e,"ErrorHandler",function(){return ki}),n.d(e,"EventEmitter",function(){return tv}),n.d(e,"Host",function(){return M}),n.d(e,"HostBinding",function(){return py}),n.d(e,"HostListener",function(){return hy}),n.d(e,"INJECTOR",function(){return lt}),n.d(e,"Inject",function(){return b}),n.d(e,"InjectFlags",function(){return v}),n.d(e,"Injectable",function(){return oc}),n.d(e,"InjectionToken",function(){return ct}),n.d(e,"Injector",function(){return Ec}),n.d(e,"Input",function(){return uy}),n.d(e,"IterableDiffers",function(){return lh}),n.d(e,"KeyValueDiffers",function(){return uh}),n.d(e,"LOCALE_ID",function(){return Ly}),n.d(e,"MissingTranslationStrategy",function(){return _y}),n.d(e,"ModuleWithComponentFactories",function(){return By}),n.d(e,"NO_ERRORS_SCHEMA",function(){return Ri}),n.d(e,"NgModule",function(){return wy}),n.d(e,"NgModuleFactory",function(){return Pt}),n.d(e,"NgModuleFactoryLoader",function(){return Ib}),n.d(e,"NgModuleRef",function(){return _t}),n.d(e,"NgProbeToken",function(){return wb}),n.d(e,"NgZone",function(){return eb}),n.d(e,"Optional",function(){return w}),n.d(e,"Output",function(){return dy}),n.d(e,"PACKAGE_ROOT_URL",function(){return Dy}),n.d(e,"PLATFORM_ID",function(){return Iy}),n.d(e,"PLATFORM_INITIALIZER",function(){return Py}),n.d(e,"Pipe",function(){return ly}),n.d(e,"PlatformRef",function(){return Ab}),n.d(e,"Query",function(){return $c}),n.d(e,"QueryList",function(){return nv}),n.d(e,"ReflectiveInjector",function(){return Zc}),n.d(e,"ReflectiveKey",function(){return jc}),n.d(e,"Renderer2",function(){return Kp}),n.d(e,"RendererFactory2",function(){return qp}),n.d(e,"RendererStyleFlags2",function(){return jp}),n.d(e,"ResolvedReflectiveFactory",function(){return Gc}),n.d(e,"Sanitizer",function(){return Zp}),n.d(e,"SecurityContext",function(){return sr}),n.d(e,"Self",function(){return S}),n.d(e,"SimpleChange",function(){return xp}),n.d(e,"SkipSelf",function(){return x}),n.d(e,"SystemJsNgModuleLoader",function(){return Vb}),n.d(e,"SystemJsNgModuleLoaderConfig",function(){return Nb}),n.d(e,"TRANSLATIONS",function(){return jy}),n.d(e,"TRANSLATIONS_FORMAT",function(){return Vy}),n.d(e,"TemplateRef",function(){return gh}),n.d(e,"Testability",function(){return lb}),n.d(e,"TestabilityRegistry",function(){return ub}),n.d(e,"Type",function(){return zs}),n.d(e,"VERSION",function(){return Qp}),n.d(e,"Version",function(){return Jp}),n.d(e,"ViewChild",function(){return il}),n.d(e,"ViewChildren",function(){return nl}),n.d(e,"ViewContainerRef",function(){return yh}),n.d(e,"ViewEncapsulation",function(){return Tt}),n.d(e,"ViewRef",function(){return Ub}),n.d(e,"WrappedValue",function(){return gl}),n.d(e,"asNativeElements",function(){return Wb}),n.d(e,"assertPlatform",function(){return Mb}),n.d(e,"createPlatform",function(){return Sb}),n.d(e,"createPlatformFactory",function(){return xb}),n.d(e,"defineInjectable",function(){return _}),n.d(e,"destroyPlatform",function(){return Eb}),n.d(e,"enableProdMode",function(){return Qi}),n.d(e,"forwardRef",function(){return z}),n.d(e,"getDebugNode",function(){return nw}),n.d(e,"getModuleFactory",function(){return Rb}),n.d(e,"getPlatform",function(){return Cb}),n.d(e,"inject",function(){return bt}),n.d(e,"isDevMode",function(){return Ji}),n.d(e,"platformCore",function(){return cw}),n.d(e,"resolveForwardRef",function(){return G}),n.d(e,"setTestabilityGetter",function(){return db}),n.d(e,"ɵ0",function(){return y}),n.d(e,"ɵ1",function(){return E}),n.d(e,"ɵALLOW_MULTIPLE_PLATFORMS",function(){return bb}),n.d(e,"ɵAPP_ID_RANDOM_PROVIDER",function(){return Ty}),n.d(e,"ɵChangeDetectorStatus",function(){return At}),n.d(e,"ɵCodegenComponentFactoryResolver",function(){return Bp}),n.d(e,"ɵCompiler_compileModuleAndAllComponentsAsync__POST_R3__",function(){return Xy}),n.d(e,"ɵCompiler_compileModuleAndAllComponentsSync__POST_R3__",function(){return qy}),n.d(e,"ɵCompiler_compileModuleAsync__POST_R3__",function(){return Hy}),n.d(e,"ɵCompiler_compileModuleSync__POST_R3__",function(){return zy}),n.d(e,"ɵComponentFactory",function(){return Lp}),n.d(e,"ɵConsole",function(){return Ry}),n.d(e,"ɵDEFAULT_LOCALE_ID",function(){return Pg}),n.d(e,"ɵEMPTY_ARRAY",function(){return gf}),n.d(e,"ɵEMPTY_MAP",function(){return mf}),n.d(e,"ɵINJECTOR_IMPL__POST_R3__",function(){return xc}),n.d(e,"ɵINJECTOR_SCOPE",function(){return cc}),n.d(e,"ɵLifecycleHooksFeature",function(){return dp}),n.d(e,"ɵLocaleDataIndex",function(){return bg}),n.d(e,"ɵNG_COMP_DEF",function(){return $}),n.d(e,"ɵNG_DIR_DEF",function(){return tt}),n.d(e,"ɵNG_ELEMENT_ID",function(){return ot}),n.d(e,"ɵNG_INJ_DEF",function(){return L}),n.d(e,"ɵNG_MOD_DEF",function(){return nt}),n.d(e,"ɵNG_PIPE_DEF",function(){return et}),n.d(e,"ɵNG_PROV_DEF",function(){return R}),n.d(e,"ɵNOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR",function(){return sg}),n.d(e,"ɵNO_CHANGE",function(){return ho}),n.d(e,"ɵNgModuleFactory",function(){return _m}),n.d(e,"ɵNoopNgZone",function(){return cb}),n.d(e,"ɵReflectionCapabilities",function(){return Xs}),n.d(e,"ɵRender3ComponentFactory",function(){return vg}),n.d(e,"ɵRender3ComponentRef",function(){return yg}),n.d(e,"ɵRender3NgModuleRef",function(){return Om}),n.d(e,"ɵSWITCH_CHANGE_DETECTOR_REF_FACTORY__POST_R3__",function(){return Us}),n.d(e,"ɵSWITCH_COMPILE_COMPONENT__POST_R3__",function(){return fy}),n.d(e,"ɵSWITCH_COMPILE_DIRECTIVE__POST_R3__",function(){return gy}),n.d(e,"ɵSWITCH_COMPILE_INJECTABLE__POST_R3__",function(){return ac}),n.d(e,"ɵSWITCH_COMPILE_NGMODULE__POST_R3__",function(){return Sy}),n.d(e,"ɵSWITCH_COMPILE_PIPE__POST_R3__",function(){return my}),n.d(e,"ɵSWITCH_ELEMENT_REF_FACTORY__POST_R3__",function(){return Hp}),n.d(e,"ɵSWITCH_IVY_ENABLED__POST_R3__",function(){return Fy}),n.d(e,"ɵSWITCH_RENDERER2_FACTORY__POST_R3__",function(){return Xp}),n.d(e,"ɵSWITCH_TEMPLATE_REF_FACTORY__POST_R3__",function(){return mh}),n.d(e,"ɵSWITCH_VIEW_CONTAINER_REF_FACTORY__POST_R3__",function(){return bh}),n.d(e,"ɵ_sanitizeHtml",function(){return Cr}),n.d(e,"ɵ_sanitizeStyle",function(){return _r}),n.d(e,"ɵ_sanitizeUrl",function(){return nr}),n.d(e,"ɵallowSanitizationBypassAndThrow",function(){return zi}),n.d(e,"ɵand",function(){return vw}),n.d(e,"ɵangular_packages_core_core_a",function(){return H}),n.d(e,"ɵangular_packages_core_core_b",function(){return mt}),n.d(e,"ɵangular_packages_core_core_ba",function(){return on}),n.d(e,"ɵangular_packages_core_core_bb",function(){return cn}),n.d(e,"ɵangular_packages_core_core_bc",function(){return fn}),n.d(e,"ɵangular_packages_core_core_bd",function(){return In}),n.d(e,"ɵangular_packages_core_core_bf",function(){return Bm}),n.d(e,"ɵangular_packages_core_core_bg",function(){return zm}),n.d(e,"ɵangular_packages_core_core_bh",function(){return Gm}),n.d(e,"ɵangular_packages_core_core_bi",function(){return Hm}),n.d(e,"ɵangular_packages_core_core_bj",function(){return Wm}),n.d(e,"ɵangular_packages_core_core_bk",function(){return Lr}),n.d(e,"ɵangular_packages_core_core_bl",function(){return g}),n.d(e,"ɵangular_packages_core_core_bm",function(){return m}),n.d(e,"ɵangular_packages_core_core_bn",function(){return A}),n.d(e,"ɵangular_packages_core_core_bp",function(){return l}),n.d(e,"ɵangular_packages_core_core_bq",function(){return go}),n.d(e,"ɵangular_packages_core_core_c",function(){return xt}),n.d(e,"ɵangular_packages_core_core_d",function(){return Jc}),n.d(e,"ɵangular_packages_core_core_e",function(){return Uc}),n.d(e,"ɵangular_packages_core_core_f",function(){return Wc}),n.d(e,"ɵangular_packages_core_core_g",function(){return Ay}),n.d(e,"ɵangular_packages_core_core_h",function(){return Ls}),n.d(e,"ɵangular_packages_core_core_i",function(){return Ns}),n.d(e,"ɵangular_packages_core_core_j",function(){return kb}),n.d(e,"ɵangular_packages_core_core_k",function(){return Gb}),n.d(e,"ɵangular_packages_core_core_l",function(){return Hb}),n.d(e,"ɵangular_packages_core_core_m",function(){return iw}),n.d(e,"ɵangular_packages_core_core_n",function(){return $p}),n.d(e,"ɵangular_packages_core_core_o",function(){return ah}),n.d(e,"ɵangular_packages_core_core_p",function(){return lw}),n.d(e,"ɵangular_packages_core_core_q",function(){return uw}),n.d(e,"ɵangular_packages_core_core_r",function(){return dw}),n.d(e,"ɵangular_packages_core_core_s",function(){return hw}),n.d(e,"ɵangular_packages_core_core_t",function(){return fw}),n.d(e,"ɵangular_packages_core_core_u",function(){return Ig}),n.d(e,"ɵangular_packages_core_core_v",function(){return tg}),n.d(e,"ɵangular_packages_core_core_w",function(){return Ih}),n.d(e,"ɵangular_packages_core_core_x",function(){return mg}),n.d(e,"ɵangular_packages_core_core_y",function(){return yi}),n.d(e,"ɵangular_packages_core_core_z",function(){return tn}),n.d(e,"ɵbypassSanitizationTrustHtml",function(){return Hi}),n.d(e,"ɵbypassSanitizationTrustResourceUrl",function(){return Xi}),n.d(e,"ɵbypassSanitizationTrustScript",function(){return qi}),n.d(e,"ɵbypassSanitizationTrustStyle",function(){return Wi}),n.d(e,"ɵbypassSanitizationTrustUrl",function(){return Ki}),n.d(e,"ɵccf",function(){return _f}),n.d(e,"ɵclearOverrides",function(){return HS}),n.d(e,"ɵclearResolutionOfComponentResourcesQueue",function(){return cl}),n.d(e,"ɵcmf",function(){return WS}),n.d(e,"ɵcompileComponent",function(){return qv}),n.d(e,"ɵcompileDirective",function(){return Kv}),n.d(e,"ɵcompileNgModule",function(){return kv}),n.d(e,"ɵcompileNgModuleDefs",function(){return Dv}),n.d(e,"ɵcompileNgModuleFactory__POST_R3__",function(){return gb}),n.d(e,"ɵcompilePipe",function(){return oy}),n.d(e,"ɵcreateInjector",function(){return fc}),n.d(e,"ɵcrt",function(){return jh}),n.d(e,"ɵdefaultIterableDiffers",function(){return hh}),n.d(e,"ɵdefaultKeyValueDiffers",function(){return fh}),n.d(e,"ɵdetectChanges",function(){return Gl}),n.d(e,"ɵdevModeEqual",function(){return fl}),n.d(e,"ɵdid",function(){return Jf}),n.d(e,"ɵeld",function(){return yw}),n.d(e,"ɵfindLocaleData",function(){return Eg}),n.d(e,"ɵflushModuleScopingQueueAsMuchAsPossible",function(){return Pv}),n.d(e,"ɵgetComponentViewDefinitionFactory",function(){return Pf}),n.d(e,"ɵgetDebugNodeR2",function(){return rw}),n.d(e,"ɵgetDebugNode__POST_R3__",function(){return ew}),n.d(e,"ɵgetDirectives",function(){return Jd}),n.d(e,"ɵgetHostElement",function(){return $d}),n.d(e,"ɵgetInjectableDef",function(){return I}),n.d(e,"ɵgetLContext",function(){return Hr}),n.d(e,"ɵgetLocaleCurrencyCode",function(){return Cg}),n.d(e,"ɵgetLocalePluralCase",function(){return Ag}),n.d(e,"ɵgetModuleFactory__POST_R3__",function(){return Db}),n.d(e,"ɵgetSanitizationBypassType",function(){return Gi}),n.d(e,"ɵglobal",function(){return J}),n.d(e,"ɵinitServicesIfNeeded",function(){return oS}),n.d(e,"ɵinlineInterpolate",function(){return hf}),n.d(e,"ɵinterpolate",function(){return pf}),n.d(e,"ɵisBoundToModule__POST_R3__",function(){return yb}),n.d(e,"ɵisDefaultChangeDetectionStrategy",function(){return te}),n.d(e,"ɵisListLikeIterable",function(){return ml}),n.d(e,"ɵisObservable",function(){return su}),n.d(e,"ɵisPromise",function(){return au}),n.d(e,"ɵivyEnabled",function(){return Uy}),n.d(e,"ɵlooseIdentical",function(){return hl}),n.d(e,"ɵmakeDecorator",function(){return h}),n.d(e,"ɵmarkDirty",function(){return Hl}),n.d(e,"ɵmod",function(){return xf}),n.d(e,"ɵmpd",function(){return Sf}),n.d(e,"ɵncd",function(){return Ow}),n.d(e,"ɵnov",function(){return Bf}),n.d(e,"ɵoverrideComponentView",function(){return GS}),n.d(e,"ɵoverrideProvider",function(){return zS}),n.d(e,"ɵpad",function(){return Iw}),n.d(e,"ɵpatchComponentDefWithScope",function(){return zv}),n.d(e,"ɵpid",function(){return Qf}),n.d(e,"ɵpod",function(){return kw}),n.d(e,"ɵppd",function(){return Pw}),n.d(e,"ɵprd",function(){return $f}),n.d(e,"ɵpublishDefaultGlobalUtils",function(){return op}),n.d(e,"ɵpublishGlobalUtil",function(){return ap}),n.d(e,"ɵqud",function(){return Mw}),n.d(e,"ɵregisterLocaleData",function(){return Mg}),n.d(e,"ɵregisterModuleFactory",function(){return Em}),n.d(e,"ɵregisterNgModuleType",function(){return Am}),n.d(e,"ɵrenderComponent",function(){return sp}),n.d(e,"ɵresetCompiledComponents",function(){return Fv}),n.d(e,"ɵresetJitOptions",function(){return Av}),n.d(e,"ɵresolveComponentResources",function(){return rl}),n.d(e,"ɵsetClassMetadata",function(){return xm}),n.d(e,"ɵsetCurrentInjector",function(){return ft}),n.d(e,"ɵsetDocument",function(){return Ne}),n.d(e,"ɵsetLocaleId",function(){return Sm}),n.d(e,"ɵstore",function(){return ql}),n.d(e,"ɵstringify",function(){return F}),n.d(e,"ɵted",function(){return Rw}),n.d(e,"ɵtransitiveScopesFor",function(){return Gv}),n.d(e,"ɵunregisterLocaleData",function(){return Og}),n.d(e,"ɵunv",function(){return Nh}),n.d(e,"ɵunwrapSafeValue",function(){return Bi}),n.d(e,"ɵvid",function(){return jw}),n.d(e,"ɵwhenRendered",function(){return pp}),n.d(e,"ɵɵCopyDefinitionFeature",function(){return Sp}),n.d(e,"ɵɵInheritDefinitionFeature",function(){return fp}),n.d(e,"ɵɵNgOnChangesFeature",function(){return Mp}),n.d(e,"ɵɵProvidersFeature",function(){return Dp}),n.d(e,"ɵɵadvance",function(){return bo}),n.d(e,"ɵɵattribute",function(){return El}),n.d(e,"ɵɵattributeInterpolate1",function(){return Rl}),n.d(e,"ɵɵattributeInterpolate2",function(){return Ll}),n.d(e,"ɵɵattributeInterpolate3",function(){return Nl}),n.d(e,"ɵɵattributeInterpolate4",function(){return jl}),n.d(e,"ɵɵattributeInterpolate5",function(){return Vl}),n.d(e,"ɵɵattributeInterpolate6",function(){return Fl}),n.d(e,"ɵɵattributeInterpolate7",function(){return Ul}),n.d(e,"ɵɵattributeInterpolate8",function(){return Bl}),n.d(e,"ɵɵattributeInterpolateV",function(){return zl}),n.d(e,"ɵɵclassMap",function(){return Ku}),n.d(e,"ɵɵclassMapInterpolate1",function(){return vd}),n.d(e,"ɵɵclassMapInterpolate2",function(){return yd}),n.d(e,"ɵɵclassMapInterpolate3",function(){return bd}),n.d(e,"ɵɵclassMapInterpolate4",function(){return wd}),n.d(e,"ɵɵclassMapInterpolate5",function(){return Sd}),n.d(e,"ɵɵclassMapInterpolate6",function(){return xd}),n.d(e,"ɵɵclassMapInterpolate7",function(){return Md}),n.d(e,"ɵɵclassMapInterpolate8",function(){return Ed}),n.d(e,"ɵɵclassMapInterpolateV",function(){return Cd}),n.d(e,"ɵɵclassProp",function(){return Hu}),n.d(e,"ɵɵcomponentHostSyntheticListener",function(){return lu}),n.d(e,"ɵɵcontentQuery",function(){return gv}),n.d(e,"ɵɵdefaultStyleSanitizer",function(){return jr}),n.d(e,"ɵɵdefineComponent",function(){return re}),n.d(e,"ɵɵdefineDirective",function(){return pe}),n.d(e,"ɵɵdefineInjectable",function(){return O}),n.d(e,"ɵɵdefineInjector",function(){return P}),n.d(e,"ɵɵdefineNgModule",function(){return le}),n.d(e,"ɵɵdefinePipe",function(){return he}),n.d(e,"ɵɵdirectiveInject",function(){return Xl}),n.d(e,"ɵɵdisableBindings",function(){return rn}),n.d(e,"ɵɵelement",function(){return eu}),n.d(e,"ɵɵelementContainer",function(){return ru}),n.d(e,"ɵɵelementContainerEnd",function(){return iu}),n.d(e,"ɵɵelementContainerStart",function(){return nu}),n.d(e,"ɵɵelementEnd",function(){return tu}),n.d(e,"ɵɵelementStart",function(){return $l}),n.d(e,"ɵɵenableBindings",function(){return nn}),n.d(e,"ɵɵgetCurrentView",function(){return ou}),n.d(e,"ɵɵgetFactoryOf",function(){return Ti}),n.d(e,"ɵɵgetInheritedFactory",function(){return Oi}),n.d(e,"ɵɵhostProperty",function(){return Hd}),n.d(e,"ɵɵi18n",function(){return lm}),n.d(e,"ɵɵi18nApply",function(){return fm}),n.d(e,"ɵɵi18nAttributes",function(){return um}),n.d(e,"ɵɵi18nEnd",function(){return om}),n.d(e,"ɵɵi18nExp",function(){return hm}),n.d(e,"ɵɵi18nPostprocess",function(){return rm}),n.d(e,"ɵɵi18nStart",function(){return tm}),n.d(e,"ɵɵinject",function(){return vt}),n.d(e,"ɵɵinjectAttribute",function(){return Yl}),n.d(e,"ɵɵinjectPipeChangeDetectorRef",function(){return Mv}),n.d(e,"ɵɵinvalidFactory",function(){return Zl}),n.d(e,"ɵɵinvalidFactoryDep",function(){return yt}),n.d(e,"ɵɵlistener",function(){return cu}),n.d(e,"ɵɵloadQuery",function(){return yv}),n.d(e,"ɵɵnamespaceHTML",function(){return jn}),n.d(e,"ɵɵnamespaceMathML",function(){return Nn}),n.d(e,"ɵɵnamespaceSVG",function(){return Ln}),n.d(e,"ɵɵnextContext",function(){return hu}),n.d(e,"ɵɵpipe",function(){return qm}),n.d(e,"ɵɵpipeBind1",function(){return Km}),n.d(e,"ɵɵpipeBind2",function(){return Xm}),n.d(e,"ɵɵpipeBind3",function(){return Ym}),n.d(e,"ɵɵpipeBind4",function(){return Zm}),n.d(e,"ɵɵpipeBindV",function(){return Jm}),n.d(e,"ɵɵprojection",function(){return yu}),n.d(e,"ɵɵprojectionDef",function(){return gu}),n.d(e,"ɵɵproperty",function(){return Jl}),n.d(e,"ɵɵpropertyInterpolate",function(){return bu}),n.d(e,"ɵɵpropertyInterpolate1",function(){return wu}),n.d(e,"ɵɵpropertyInterpolate2",function(){return Su}),n.d(e,"ɵɵpropertyInterpolate3",function(){return xu}),n.d(e,"ɵɵpropertyInterpolate4",function(){return Mu}),n.d(e,"ɵɵpropertyInterpolate5",function(){return Eu}),n.d(e,"ɵɵpropertyInterpolate6",function(){return Cu}),n.d(e,"ɵɵpropertyInterpolate7",function(){return Au}),n.d(e,"ɵɵpropertyInterpolate8",function(){return Tu}),n.d(e,"ɵɵpropertyInterpolateV",function(){return Ou}),n.d(e,"ɵɵpureFunction0",function(){return Pm}),n.d(e,"ɵɵpureFunction1",function(){return Im}),n.d(e,"ɵɵpureFunction2",function(){return km}),n.d(e,"ɵɵpureFunction3",function(){return Dm}),n.d(e,"ɵɵpureFunction4",function(){return Rm}),n.d(e,"ɵɵpureFunction5",function(){return Lm}),n.d(e,"ɵɵpureFunction6",function(){return Nm}),n.d(e,"ɵɵpureFunction7",function(){return jm}),n.d(e,"ɵɵpureFunction8",function(){return Vm}),n.d(e,"ɵɵpureFunctionV",function(){return Fm}),n.d(e,"ɵɵqueryRefresh",function(){return dv}),n.d(e,"ɵɵreference",function(){return Kl}),n.d(e,"ɵɵresolveBody",function(){return ci}),n.d(e,"ɵɵresolveDocument",function(){return si}),n.d(e,"ɵɵresolveWindow",function(){return ai}),n.d(e,"ɵɵrestoreView",function(){return sn}),n.d(e,"ɵɵsanitizeHtml",function(){return Pr}),n.d(e,"ɵɵsanitizeResourceUrl",function(){return Dr}),n.d(e,"ɵɵsanitizeScript",function(){return Rr}),n.d(e,"ɵɵsanitizeStyle",function(){return Ir}),n.d(e,"ɵɵsanitizeUrl",function(){return kr}),n.d(e,"ɵɵsanitizeUrlOrResourceUrl",function(){return Nr}),n.d(e,"ɵɵselect",function(){return wo}),n.d(e,"ɵɵsetComponentScope",function(){return oe}),n.d(e,"ɵɵsetNgModuleScope",function(){return ue}),n.d(e,"ɵɵstaticContentQuery",function(){return mv}),n.d(e,"ɵɵstaticViewQuery",function(){return pv}),n.d(e,"ɵɵstyleMap",function(){return Wu}),n.d(e,"ɵɵstyleMapInterpolate1",function(){return Ad}),n.d(e,"ɵɵstyleMapInterpolate2",function(){return Td}),n.d(e,"ɵɵstyleMapInterpolate3",function(){return Od}),n.d(e,"ɵɵstyleMapInterpolate4",function(){return _d}),n.d(e,"ɵɵstyleMapInterpolate5",function(){return Pd}),n.d(e,"ɵɵstyleMapInterpolate6",function(){return Id}),n.d(e,"ɵɵstyleMapInterpolate7",function(){return kd}),n.d(e,"ɵɵstyleMapInterpolate8",function(){return Dd}),n.d(e,"ɵɵstyleMapInterpolateV",function(){return Rd}),n.d(e,"ɵɵstyleProp",function(){return Gu}),n.d(e,"ɵɵstylePropInterpolate1",function(){return Ld}),n.d(e,"ɵɵstylePropInterpolate2",function(){return Nd}),n.d(e,"ɵɵstylePropInterpolate3",function(){return jd}),n.d(e,"ɵɵstylePropInterpolate4",function(){return Vd}),n.d(e,"ɵɵstylePropInterpolate5",function(){return Fd}),n.d(e,"ɵɵstylePropInterpolate6",function(){return Ud}),n.d(e,"ɵɵstylePropInterpolate7",function(){return Bd}),n.d(e,"ɵɵstylePropInterpolate8",function(){return zd}),n.d(e,"ɵɵstylePropInterpolateV",function(){return Gd}),n.d(e,"ɵɵstyleSanitizer",function(){return zu}),n.d(e,"ɵɵtemplate",function(){return Wl}),n.d(e,"ɵɵtemplateRefExtractor",function(){return xv}),n.d(e,"ɵɵtext",function(){return ad}),n.d(e,"ɵɵtextInterpolate",function(){return sd}),n.d(e,"ɵɵtextInterpolate1",function(){return cd}),n.d(e,"ɵɵtextInterpolate2",function(){return ld}),n.d(e,"ɵɵtextInterpolate3",function(){return ud}),n.d(e,"ɵɵtextInterpolate4",function(){return dd}),n.d(e,"ɵɵtextInterpolate5",function(){return pd}),n.d(e,"ɵɵtextInterpolate6",function(){return hd}),n.d(e,"ɵɵtextInterpolate7",function(){return fd}),n.d(e,"ɵɵtextInterpolate8",function(){return gd}),n.d(e,"ɵɵtextInterpolateV",function(){return md}),n.d(e,"ɵɵupdateSyntheticHostBinding",function(){return Wd}),n.d(e,"ɵɵviewQuery",function(){return hv});var i=n(1),r=n(33),o=n(32),a=n(12),s=n(279),c=n(632);
  2. /**
  3. * @license Angular v9.1.9
  4. * (c) 2010-2020 Google LLC. https://angular.io/
  5. * License: MIT
  6. */
  7. /**
  8. * @license
  9. * Copyright Google Inc. All Rights Reserved.
  10. *
  11. * Use of this source code is governed by an MIT-style license that can be
  12. * found in the LICENSE file at https://angular.io/license
  13. */function l(t){return t()}
  14. /**
  15. * @license
  16. * Copyright Google Inc. All Rights Reserved.
  17. *
  18. * Use of this source code is governed by an MIT-style license that can be
  19. * found in the LICENSE file at https://angular.io/license
  20. */var u="__annotations__",d="__parameters__",p="__prop__metadata__";function h(t,e,n,r,o){return l(function(){var a=f(e);function s(){for(var t,e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];if(this instanceof s)return a.call.apply(a,Object(i.h)([this],e)),this;var c=new((t=s).bind.apply(t,Object(i.h)([void 0],e)));return function(t){return o&&o.apply(void 0,Object(i.h)([t],e)),(t.hasOwnProperty(u)?t[u]:Object.defineProperty(t,u,{value:[]})[u]).push(c),r&&r(t),t}}return n&&(s.prototype=Object.create(n.prototype)),s.prototype.ngMetadataName=t,s.annotationCls=s,s})}function f(t){return function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];if(t){var r=t.apply(void 0,Object(i.h)(e));for(var o in r)this[o]=r[o]}}}function g(t,e,n){return l(function(){var r=f(e);function o(){for(var t,e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];if(this instanceof o)return r.apply(this,e),this;var a=new((t=o).bind.apply(t,Object(i.h)([void 0],e)));return s.annotation=a,s;function s(t,e,n){for(var i=t.hasOwnProperty(d)?t[d]:Object.defineProperty(t,d,{value:[]})[d];i.length<=n;)i.push(null);return(i[n]=i[n]||[]).push(a),t}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=t,o.annotationCls=o,o})}function m(t,e,n,r){return l(function(){var o=f(e);function a(){for(var t,e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];if(this instanceof a)return o.apply(this,e),this;var s=new((t=a).bind.apply(t,Object(i.h)([void 0],e)));return function(t,n){var o=t.constructor,a=o.hasOwnProperty(p)?o[p]:Object.defineProperty(o,p,{value:{}})[p];a[n]=a.hasOwnProperty(n)&&a[n]||[],a[n].unshift(s),r&&r.apply(void 0,Object(i.h)([t,n],e))}}return n&&(a.prototype=Object.create(n.prototype)),a.prototype.ngMetadataName=t,a.annotationCls=a,a})}
  21. /**
  22. * @license
  23. * Copyright Google Inc. All Rights Reserved.
  24. *
  25. * Use of this source code is governed by an MIT-style license that can be
  26. * found in the LICENSE file at https://angular.io/license
  27. */var v,y=function(t){return{token:t}},b=g("Inject",y),w=g("Optional"),S=g("Self"),x=g("SkipSelf"),M=g("Host"),E=function(t){return{attributeName:t}},C=g("Attribute",E);
  28. /**
  29. * @license
  30. * Copyright Google Inc. All Rights Reserved.
  31. *
  32. * Use of this source code is governed by an MIT-style license that can be
  33. * found in the LICENSE file at https://angular.io/license
  34. */function A(t){for(var e in t)if(t[e]===A)return e;throw Error("Could not find renamed property on target object.")}function T(t,e){for(var n in e)e.hasOwnProperty(n)&&!t.hasOwnProperty(n)&&(t[n]=e[n])}
  35. /**
  36. * @license
  37. * Copyright Google Inc. All Rights Reserved.
  38. *
  39. * Use of this source code is governed by an MIT-style license that can be
  40. * found in the LICENSE file at https://angular.io/license
  41. */function O(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}!function(t){t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional"}(v||(v={}));var _=O;function P(t){return{factory:t.factory,providers:t.providers||[],imports:t.imports||[]}}function I(t){return k(t,t[R])||k(t,t[j])}function k(t,e){return e&&e.token===t?e:null}function D(t){return t&&(t.hasOwnProperty(L)||t.hasOwnProperty(V))?t[L]:null}var R=A({"ɵprov":A}),L=A({"ɵinj":A}),N=A({"ɵprovFallback":A}),j=A({ngInjectableDef:A}),V=A({ngInjectorDef:A});
  42. /**
  43. * @license
  44. * Copyright Google Inc. All Rights Reserved.
  45. *
  46. * Use of this source code is governed by an MIT-style license that can be
  47. * found in the LICENSE file at https://angular.io/license
  48. */function F(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(F).join(", ")+"]";if(null==t)return""+t;if(t.overriddenName)return""+t.overriddenName;if(t.name)return""+t.name;var e=t.toString();if(null==e)return""+e;var n=e.indexOf("\n");return-1===n?e:e.substring(0,n)}function U(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}
  49. /**
  50. * @license
  51. * Copyright Google Inc. All Rights Reserved.
  52. *
  53. * Use of this source code is governed by an MIT-style license that can be
  54. * found in the LICENSE file at https://angular.io/license
  55. */var B=A({__forward_ref__:A});function z(t){return t.__forward_ref__=z,t.toString=function(){return F(this())},t}function G(t){return H(t)?t():t}function H(t){return"function"==typeof t&&t.hasOwnProperty(B)&&t.__forward_ref__===z}
  56. /**
  57. * @license
  58. * Copyright Google Inc. All Rights Reserved.
  59. *
  60. * Use of this source code is governed by an MIT-style license that can be
  61. * found in the LICENSE file at https://angular.io/license
  62. */var W,q,K,X="undefined"!=typeof globalThis&&globalThis,Y="undefined"!=typeof window&&window,Z="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,J=X||void 0!==t&&t||Y||Z;
  63. /**
  64. * @license
  65. * Copyright Google Inc. All Rights Reserved.
  66. *
  67. * Use of this source code is governed by an MIT-style license that can be
  68. * found in the LICENSE file at https://angular.io/license
  69. */function Q(){var t=J.ng;if(!t||!t.ɵcompilerFacade)throw new Error("Angular JIT compilation failed: '@angular/compiler' not loaded!\n - JIT compilation is discouraged for production use-cases! Consider AOT mode instead.\n - Did you bootstrap using '@angular/platform-browser-dynamic' or '@angular/platform-server'?\n - Alternatively provide the compiler with 'import \"@angular/compiler\";' before bootstrapping.");return t.ɵcompilerFacade}
  70. /**
  71. * @license
  72. * Copyright Google Inc. All Rights Reserved.
  73. *
  74. * Use of this source code is governed by an MIT-style license that can be
  75. * found in the LICENSE file at https://angular.io/license
  76. */!function(t){t[t.Token=0]="Token",t[t.Attribute=1]="Attribute",t[t.ChangeDetectorRef=2]="ChangeDetectorRef",t[t.Invalid=3]="Invalid"}(W||(W={})),function(t){t[t.Directive=0]="Directive",t[t.Component=1]="Component",t[t.Injectable=2]="Injectable",t[t.Pipe=3]="Pipe",t[t.NgModule=4]="NgModule"}(q||(q={})),function(t){t[t.Emulated=0]="Emulated",t[t.Native=1]="Native",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom"}(K||(K={}));var $=A({"ɵcmp":A}),tt=A({"ɵdir":A}),et=A({"ɵpipe":A}),nt=A({"ɵmod":A}),it=A({"ɵloc":A}),rt=A({"ɵfac":A}),ot=A({__NG_ELEMENT_ID__:A});function at(){return!("undefined"!=typeof ngDevMode&&!ngDevMode||("object"!=typeof ngDevMode&&(t="undefined"!=typeof location?location.toString():"",e={namedConstructors:-1!=t.indexOf("ngDevMode=namedConstructors"),firstCreatePass:0,tNode:0,tView:0,rendererCreateTextNode:0,rendererSetText:0,rendererCreateElement:0,rendererAddEventListener:0,rendererSetAttribute:0,rendererRemoveAttribute:0,rendererSetProperty:0,rendererSetClassName:0,rendererAddClass:0,rendererRemoveClass:0,rendererSetStyle:0,rendererRemoveStyle:0,rendererDestroy:0,rendererDestroyNode:0,rendererMoveNode:0,rendererRemoveNode:0,rendererAppendChild:0,rendererInsertBefore:0,rendererCreateComment:0},n=-1===t.indexOf("ngDevMode=false"),J.ngDevMode=n&&e),!ngDevMode));
  77. /**
  78. * @license
  79. * Copyright Google Inc. All Rights Reserved.
  80. *
  81. * Use of this source code is governed by an MIT-style license that can be
  82. * found in the LICENSE file at https://angular.io/license
  83. */var t,e,n}
  84. /**
  85. * @license
  86. * Copyright Google Inc. All Rights Reserved.
  87. *
  88. * Use of this source code is governed by an MIT-style license that can be
  89. * found in the LICENSE file at https://angular.io/license
  90. */var st,ct=function(){function t(t,e){this._desc=t,this.ngMetadataName="InjectionToken",this.ɵprov=void 0,"number"==typeof e?this.__NG_ELEMENT_ID__=e:void 0!==e&&(this.ɵprov=O({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}return t.prototype.toString=function(){return"InjectionToken "+this._desc},t}(),lt=new ct("INJECTOR",-1),ut={},dt=/\n/gm,pt=A({provide:String,useValue:A}),ht=void 0;
  91. /**
  92. * @license
  93. * Copyright Google Inc. All Rights Reserved.
  94. *
  95. * Use of this source code is governed by an MIT-style license that can be
  96. * found in the LICENSE file at https://angular.io/license
  97. */function ft(t){var e=ht;return ht=t,e}function gt(t){var e=st;return st=t,e}function mt(t,e){if(void 0===e&&(e=v.Default),void 0===ht)throw new Error("inject() must be called from an injection context");return null===ht?wt(t,void 0,e):ht.get(t,e&v.Optional?null:void 0,e)}function vt(t,e){return void 0===e&&(e=v.Default),(st||mt)(G(t),e)}function yt(t){var e=ngDevMode?"This constructor is not compatible with Angular Dependency Injection because its dependency at index "+t+" of the parameter list is invalid.\nThis can happen if the dependency type is a primitive like a string or if an ancestor of this class is missing an Angular decorator.\n\nPlease check that 1) the type for the parameter at index "+t+" is correct and 2) the correct Angular decorators are defined for this class and its ancestors.":"invalid";throw new Error(e)}var bt=vt;function wt(t,e,n){var i=I(t);if(i&&"root"==i.providedIn)return void 0===i.value?i.value=i.factory():i.value;if(n&v.Optional)return null;if(void 0!==e)return e;throw new Error("Injector: NOT_FOUND ["+F(t)+"]")}function St(t){for(var e=[],n=0;n<t.length;n++){var i=G(t[n]);if(Array.isArray(i)){if(0===i.length)throw new Error("Arguments array must have arguments.");for(var r=void 0,o=v.Default,a=0;a<i.length;a++){var s=i[a];s instanceof w||"Optional"===s.ngMetadataName||s===w?o|=v.Optional:s instanceof x||"SkipSelf"===s.ngMetadataName||s===x?o|=v.SkipSelf:s instanceof S||"Self"===s.ngMetadataName||s===S?o|=v.Self:r=s instanceof b||s===b?s.token:s}e.push(vt(r,o))}else e.push(vt(i))}return e}var xt=function(){function t(){}return t.prototype.get=function(t,e){if(void 0===e&&(e=ut),e===ut){var n=new Error("NullInjectorError: No provider for "+F(t)+"!");throw n.name="NullInjectorError",n}return e},t}();function Mt(t,e,n,i){var r=t.ngTempTokenPath;throw e.__source&&r.unshift(e.__source),t.message=Et("\n"+t.message,r,n,i),t.ngTokenPath=r,t.ngTempTokenPath=null,t}function Et(t,e,n,i){void 0===i&&(i=null),t=t&&"\n"===t.charAt(0)&&"ɵ"==t.charAt(1)?t.substr(2):t;var r=F(e);if(Array.isArray(e))r=e.map(F).join(" -> ");else if("object"==typeof e){var o=[];for(var a in e)if(e.hasOwnProperty(a)){var s=e[a];o.push(a+":"+("string"==typeof s?JSON.stringify(s):F(s)))}r="{"+o.join(", ")+"}"}return n+(i?"("+i+")":"")+"["+r+"]: "+t.replace(dt,"\n ")}
  98. /**
  99. * @license
  100. * Copyright Google Inc. All Rights Reserved.
  101. *
  102. * Use of this source code is governed by an MIT-style license that can be
  103. * found in the LICENSE file at https://angular.io/license
  104. */var Ct,At,Tt,Ot={"ɵɵdefineInjectable":O,"ɵɵdefineInjector":P,"ɵɵinject":vt,"ɵɵgetFactoryOf":function t(e){var n=e;if(H(e))return function(){var e=t(G(n));return e?e():null};var i=I(n)||D(n);return i&&void 0!==i.factory?i.factory:null}
  105. /**
  106. * @license
  107. * Copyright Google Inc. All Rights Reserved.
  108. *
  109. * Use of this source code is governed by an MIT-style license that can be
  110. * found in the LICENSE file at https://angular.io/license
  111. */,"ɵɵinvalidFactoryDep":yt},_t=function(){},Pt=function(){};
  112. /**
  113. * @license
  114. * Copyright Google Inc. All Rights Reserved.
  115. *
  116. * Use of this source code is governed by an MIT-style license that can be
  117. * found in the LICENSE file at https://angular.io/license
  118. */
  119. function It(t,e){"number"!=typeof t&&zt(e,typeof t,"number","===")}function kt(t,e,n){It(t,"Expected a number"),Ft(t,n,"Expected number to be less than or equal to"),function(t,e,n){t>=e||zt("Expected number to be greater than or equal to",t,e,">=")}(t,e)}function Dt(t,e){"string"!=typeof t&&zt(e,null===t?"null":typeof t,"string","===")}function Rt(t,e,n){t!=e&&zt(n,t,e,"==")}function Lt(t,e,n){t==e&&zt(n,t,e,"!=")}function Nt(t,e,n){t!==e&&zt(n,t,e,"===")}function jt(t,e,n){t===e&&zt(n,t,e,"!==")}function Vt(t,e,n){t<e||zt(n,t,e,"<")}function Ft(t,e,n){t<=e||zt(n,t,e,"<=")}function Ut(t,e,n){t>e||zt(n,t,e,">")}function Bt(t,e){null==t&&zt(e,t,null,"!=")}function zt(t,e,n,i){throw new Error("ASSERTION ERROR: "+t+(null==i?"":" [Expected=> "+n+" "+i+" "+e+" <=Actual]"))}function Gt(t){Rt("undefined"!=typeof Node&&t instanceof Node||"object"==typeof t&&null!=t&&"WebWorkerRenderNode"===t.constructor.name,!0,"The provided value must be an instance of a DOM Node but got "+F(t))}function Ht(t,e){var n=t?t.length:0;Vt(e,n,"Index expected to be less than "+n+" but got "+e)}
  120. /**
  121. * @license
  122. * Copyright Google Inc. All Rights Reserved.
  123. *
  124. * Use of this source code is governed by an MIT-style license that can be
  125. * found in the LICENSE file at https://angular.io/license
  126. */function Wt(t,e){for(var n=0;n<t.length;n++)e.push(t[n])}function qt(t,e){void 0===e&&(e=t);for(var n=0;n<t.length;n++){var i=t[n];Array.isArray(i)?(e===t&&(e=t.slice(0,n)),qt(i,e)):e!==t&&e.push(i)}return e}function Kt(t,e){t.forEach(function(t){return Array.isArray(t)?Kt(t,e):e(t)})}function Xt(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function Yt(t,e){return e>=t.length-1?t.pop():t.splice(e,1)[0]}function Zt(t,e){for(var n=[],i=0;i<t;i++)n.push(e);return n}function Jt(t,e,n){var i=$t(t,e);return i>=0?t[1|i]=n:function(t,e,n,i){ngDevMode&&Ft(e,t.length,"Can't insert past array end.");var r=t.length;if(r==e)t.push(n,i);else if(1===r)t.push(i,t[0]),t[0]=n;else{for(r--,t.push(t[r-1],t[r]);r>e;){var o=r-2;t[r]=t[o],r--}t[e]=n,t[e+1]=i}}(t,i=~i,e,n),i}function Qt(t,e){var n=$t(t,e);if(n>=0)return t[1|n]}function $t(t,e){return function(t,e,n){ngDevMode&&Rt(Array.isArray(t),!0,"Expecting an array");for(var i=0,r=t.length>>n;r!==i;){var o=i+(r-i>>1),a=t[o<<n];if(e===a)return o<<n;a>e?r=o:i=o+1}return~(r<<n)}
  127. /**
  128. * @license
  129. * Copyright Google Inc. All Rights Reserved.
  130. *
  131. * Use of this source code is governed by an MIT-style license that can be
  132. * found in the LICENSE file at https://angular.io/license
  133. */(t,e,1)}function te(t){return null==t||t===Ct.Default}
  134. /**
  135. * @license
  136. * Copyright Google Inc. All Rights Reserved.
  137. *
  138. * Use of this source code is governed by an MIT-style license that can be
  139. * found in the LICENSE file at https://angular.io/license
  140. */!function(t){t[t.OnPush=0]="OnPush",t[t.Default=1]="Default"}(Ct||(Ct={})),function(t){t[t.CheckOnce=0]="CheckOnce",t[t.Checked=1]="Checked",t[t.CheckAlways=2]="CheckAlways",t[t.Detached=3]="Detached",t[t.Errored=4]="Errored",t[t.Destroyed=5]="Destroyed"}(At||(At={})),function(t){t[t.Emulated=0]="Emulated",t[t.Native=1]="Native",t[t.None=2]="None",t[t.ShadowDom=3]="ShadowDom"}(Tt||(Tt={}));
  141. /**
  142. * @license
  143. * Copyright Google Inc. All Rights Reserved.
  144. *
  145. * Use of this source code is governed by an MIT-style license that can be
  146. * found in the LICENSE file at https://angular.io/license
  147. */
  148. var ee={},ne=[];("undefined"==typeof ngDevMode||ngDevMode)&&at()&&(Object.freeze(ee),Object.freeze(ne)
  149. /**
  150. * @license
  151. * Copyright Google Inc. All Rights Reserved.
  152. *
  153. * Use of this source code is governed by an MIT-style license that can be
  154. * found in the LICENSE file at https://angular.io/license
  155. */);var ie=0;function re(t){return l(function(){("undefined"==typeof ngDevMode||ngDevMode)&&at();var e=t.type,n=e.prototype,i={},r={type:e,providersResolver:null,decls:t.decls,vars:t.vars,factory:null,template:t.template||null,consts:t.consts||null,ngContentSelectors:t.ngContentSelectors,hostBindings:t.hostBindings||null,hostVars:t.hostVars||0,hostAttrs:t.hostAttrs||null,contentQueries:t.contentQueries||null,declaredInputs:i,inputs:null,outputs:null,exportAs:t.exportAs||null,onChanges:null,onInit:n.ngOnInit||null,doCheck:n.ngDoCheck||null,afterContentInit:n.ngAfterContentInit||null,afterContentChecked:n.ngAfterContentChecked||null,afterViewInit:n.ngAfterViewInit||null,afterViewChecked:n.ngAfterViewChecked||null,onDestroy:n.ngOnDestroy||null,onPush:t.changeDetection===Ct.OnPush,directiveDefs:null,pipeDefs:null,selectors:t.selectors||ne,viewQuery:t.viewQuery||null,features:t.features||null,data:t.data||{},encapsulation:t.encapsulation||Tt.Emulated,id:"c",styles:t.styles||ne,_:null,setInput:null,schemas:t.schemas||null,tView:null},o=t.directives,a=t.features,s=t.pipes;return r.id+=ie++,r.inputs=de(t.inputs,i),r.outputs=de(t.outputs),a&&a.forEach(function(t){return t(r)}),r.directiveDefs=o?function(){return("function"==typeof o?o():o).map(ae)}:null,r.pipeDefs=s?function(){return("function"==typeof s?s():s).map(se)}:null,r})}function oe(t,e,n){var i=t.ɵcmp;i.directiveDefs=function(){return e.map(ae)},i.pipeDefs=function(){return n.map(se)}}function ae(t){var e=fe(t)||ge(t);if(ngDevMode&&!e)throw new Error("'"+t.name+"' is neither 'ComponentType' or 'DirectiveType'.");return e}function se(t){var e=me(t);if(ngDevMode&&!e)throw new Error("'"+t.name+"' is not a 'PipeType'.");return e}var ce={};function le(t){var e={type:t.type,bootstrap:t.bootstrap||ne,declarations:t.declarations||ne,imports:t.imports||ne,exports:t.exports||ne,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&l(function(){ce[t.id]=t.type}),e}function ue(t,e){return l(function(){var n=ye(t,!0);n.declarations=e.declarations||ne,n.imports=e.imports||ne,n.exports=e.exports||ne})}function de(t,e){if(null==t)return ee;var n={};for(var i in t)if(t.hasOwnProperty(i)){var r=t[i],o=r;Array.isArray(r)&&(o=r[1],r=r[0]),n[r]=i,e&&(e[r]=o)}return n}var pe=re;function he(t){return{type:t.type,name:t.name,factory:null,pure:!1!==t.pure,onDestroy:t.type.prototype.ngOnDestroy||null}}function fe(t){return t[$]||null}function ge(t){return t[tt]||null}function me(t){return t[et]||null}function ve(t,e){var n=t.hasOwnProperty(rt);if(!n&&!0===e&&ngDevMode)throw new Error("Type "+F(t)+" does not have 'ɵfac' property.");return n?t[rt]:null}function ye(t,e){var n=t[nt]||null;if(!n&&!0===e)throw new Error("Type "+F(t)+" does not have 'ɵmod' property.");return n}
  156. /**
  157. * @license
  158. * Copyright Google Inc. All Rights Reserved.
  159. *
  160. * Use of this source code is governed by an MIT-style license that can be
  161. * found in the LICENSE file at https://angular.io/license
  162. */function be(t){return Array.isArray(t)&&"object"==typeof t[1]}function we(t){return Array.isArray(t)&&!0===t[1]}function Se(t){return 0!=(8&t.flags)}function xe(t){return 2==(2&t.flags)}function Me(t){return 1==(1&t.flags)}function Ee(t){return null!==t.template}function Ce(t){return 0!=(512&t[2])}
  163. /**
  164. * @license
  165. * Copyright Google Inc. All Rights Reserved.
  166. *
  167. * Use of this source code is governed by an MIT-style license that can be
  168. * found in the LICENSE file at https://angular.io/license
  169. */function Ae(t,e){t.hasOwnProperty("tView_")&&Rt(t.tView_,e[1],"This TNode does not belong to this LView.")}function Te(t,e){void 0===e&&(e="Type passed in is not ComponentType, it does not have 'ɵcmp' property."),fe(t)||zt(e)}function Oe(t){Bt(t,"previousOrParentTNode should exist!"),Bt(t.parent,"previousOrParentTNode should have a parent")}function _e(t){Bt(t,"LContainer must be defined"),Rt(we(t),!0,"Expecting LContainer")}function Pe(t){t&&Rt(be(t),!0,"Expecting LView or undefined or null")}function Ie(t){Bt(t,"LView must be defined"),Rt(be(t),!0,"Expecting LView")}function ke(t,e){Rt(t.firstCreatePass,!0,e||"Should only be called in first create pass.")}function De(t,e){Rt(t.firstUpdatePass,!0,e||"Should only be called in first update pass.")}
  170. /**
  171. * @license
  172. * Copyright Google Inc. All Rights Reserved.
  173. *
  174. * Use of this source code is governed by an MIT-style license that can be
  175. * found in the LICENSE file at https://angular.io/license
  176. */var Re,Le=void 0;function Ne(t){Le=t}function je(){return void 0!==Le?Le:"undefined"!=typeof document?document:void 0}
  177. /**
  178. * @license
  179. * Copyright Google Inc. All Rights Reserved.
  180. *
  181. * Use of this source code is governed by an MIT-style license that can be
  182. * found in the LICENSE file at https://angular.io/license
  183. */function Ve(t){return!!t.listen}!function(t){t[t.Important=1]="Important",t[t.DashCase=2]="DashCase"}(Re||(Re={}));var Fe={createRenderer:function(t,e){return je()}};
  184. /**
  185. * @license
  186. * Copyright Google Inc. All Rights Reserved.
  187. *
  188. * Use of this source code is governed by an MIT-style license that can be
  189. * found in the LICENSE file at https://angular.io/license
  190. */function Ue(t){for(;Array.isArray(t);)t=t[0];return t}function Be(t,e){return Ue(e[t+20])}function ze(t,e){ngDevMode&&Ae(t,e),ngDevMode&&Ht(e,t.index);var n=Ue(e[t.index]);return ngDevMode&&!Ve(e[11])&&Gt(n),n}function Ge(t,e){var n=t.index;if(-1!==n){ngDevMode&&Ae(t,e);var i=Ue(e[n]);return ngDevMode&&null!==i&&!Ve(e[11])&&Gt(i),i}return null}function He(t,e){return ngDevMode&&Ut(e,-1,"wrong index for TNode"),ngDevMode&&Vt(e,t.data.length,"wrong index for TNode"),t.data[e+20]}function We(t,e){return ngDevMode&&Ht(t,e+20),t[e+20]}function qe(t,e){ngDevMode&&Ht(e,t);var n=e[t];return be(n)?n:n[0]}function Ke(t){return ngDevMode&&Bt(t,"Target expected"),t.__ngContext__||null}function Xe(t){var e=Ke(t);return e?Array.isArray(e)?e:e.lView:null}function Ye(t){return 4==(4&t[2])}function Ze(t){return 128==(128&t[2])}function Je(t,e){return null===t||null==e?null:t[e]}function Qe(t){t[18]=0}function $e(t,e){t[5]+=e;for(var n=t,i=t[3];null!==i&&(1===e&&1===n[5]||-1===e&&0===n[5]);)i[5]+=e,n=i,i=i[3]}
  191. /**
  192. * @license
  193. * Copyright Google Inc. All Rights Reserved.
  194. *
  195. * Use of this source code is governed by an MIT-style license that can be
  196. * found in the LICENSE file at https://angular.io/license
  197. */var tn={lFrame:Tn(null),bindingsEnabled:!0,checkNoChangesMode:!1};function en(){return tn.bindingsEnabled}function nn(){tn.bindingsEnabled=!0}function rn(){tn.bindingsEnabled=!1}function on(){return tn.lFrame.lView}function an(){return tn.lFrame.tView}function sn(t){tn.lFrame.contextLView=t}function cn(){return tn.lFrame.previousOrParentTNode}function ln(t,e){tn.lFrame.previousOrParentTNode=t,tn.lFrame.isParent=e}function un(){return tn.lFrame.isParent}function dn(){tn.lFrame.isParent=!1}function pn(){return tn.checkNoChangesMode}function hn(t){tn.checkNoChangesMode=t}function fn(){var t=tn.lFrame,e=t.bindingRootIndex;return-1===e&&(e=t.bindingRootIndex=t.tView.bindingStartIndex),e}function gn(){return tn.lFrame.bindingIndex}function mn(t){return tn.lFrame.bindingIndex=t}function vn(){return tn.lFrame.bindingIndex++}function yn(t){var e=tn.lFrame,n=e.bindingIndex;return e.bindingIndex=e.bindingIndex+t,n}function bn(t,e){var n=tn.lFrame;n.bindingIndex=n.bindingRootIndex=t,wn(e)}function wn(t){tn.lFrame.currentDirectiveIndex=t}function Sn(t){var e=tn.lFrame.currentDirectiveIndex;return-1===e?null:t[e]}function xn(){return tn.lFrame.currentQueryIndex}function Mn(t){tn.lFrame.currentQueryIndex=t}function En(t,e){ngDevMode&&Pe(t);var n=An();tn.lFrame=n,n.previousOrParentTNode=e,n.lView=t}function Cn(t,e){ngDevMode&&Pe(t);var n=An();ngDevMode&&(Rt(n.isParent,!0,"Expected clean LFrame"),Rt(n.lView,null,"Expected clean LFrame"),Rt(n.tView,null,"Expected clean LFrame"),Rt(n.selectedIndex,0,"Expected clean LFrame"),Rt(n.elementDepthCount,0,"Expected clean LFrame"),Rt(n.currentDirectiveIndex,-1,"Expected clean LFrame"),Rt(n.currentNamespace,null,"Expected clean LFrame"),Rt(n.currentSanitizer,null,"Expected clean LFrame"),Rt(n.bindingRootIndex,-1,"Expected clean LFrame"),Rt(n.currentQueryIndex,0,"Expected clean LFrame"));var i=t[1];tn.lFrame=n,n.previousOrParentTNode=e,n.lView=t,n.tView=i,n.contextLView=t,n.bindingIndex=i.bindingStartIndex}function An(){var t=tn.lFrame,e=null===t?null:t.child;return null===e?Tn(t):e}function Tn(t){var e={previousOrParentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:0,contextLView:null,elementDepthCount:0,currentNamespace:null,currentSanitizer:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null};return null!==t&&(t.child=e),e}function On(){var t=tn.lFrame;return tn.lFrame=t.parent,t.previousOrParentTNode=null,t.lView=null,t}var _n=On;function Pn(){var t=On();t.isParent=!0,t.tView=null,t.selectedIndex=0,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.currentSanitizer=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function In(t){return(tn.lFrame.contextLView=function(t,e){for(;t>0;)ngDevMode&&Bt(e[15],"Declaration view should be defined if nesting level is greater than 0."),e=e[15],t--;return e}(t,tn.lFrame.contextLView))[8]}function kn(){return tn.lFrame.selectedIndex}function Dn(t){tn.lFrame.selectedIndex=t}function Rn(){var t=tn.lFrame;return He(t.tView,t.selectedIndex)}function Ln(){tn.lFrame.currentNamespace="http://www.w3.org/2000/svg"}function Nn(){tn.lFrame.currentNamespace="http://www.w3.org/1998/MathML/"}function jn(){tn.lFrame.currentNamespace=null}function Vn(t,e){ngDevMode&&ke(t);for(var n=e.directiveStart,i=e.directiveEnd;n<i;n++){var r=t.data[n];r.afterContentInit&&(t.contentHooks||(t.contentHooks=[])).push(-n,r.afterContentInit),r.afterContentChecked&&((t.contentHooks||(t.contentHooks=[])).push(n,r.afterContentChecked),(t.contentCheckHooks||(t.contentCheckHooks=[])).push(n,r.afterContentChecked)),r.afterViewInit&&(t.viewHooks||(t.viewHooks=[])).push(-n,r.afterViewInit),r.afterViewChecked&&((t.viewHooks||(t.viewHooks=[])).push(n,r.afterViewChecked),(t.viewCheckHooks||(t.viewCheckHooks=[])).push(n,r.afterViewChecked)),null!=r.onDestroy&&(t.destroyHooks||(t.destroyHooks=[])).push(n,r.onDestroy)}}function Fn(t,e,n){zn(t,e,3,n)}function Un(t,e,n,i){ngDevMode&&Lt(n,3,"Init pre-order hooks should not be called more than once"),(3&t[2])===n&&zn(t,e,n,i)}function Bn(t,e){ngDevMode&&Lt(e,3,"Init hooks phase should not be incremented after all init hooks have been run.");var n=t[2];(3&n)===e&&(n&=2047,n+=1,t[2]=n)}function zn(t,e,n,i){ngDevMode&&Rt(pn(),!1,"Hooks should never be run in the check no changes mode.");for(var r=null!=i?i:-1,o=0,a=void 0!==i?65535&t[18]:0;a<e.length;a++)if("number"==typeof e[a+1]){if(o=e[a],null!=i&&o>=i)break}else e[a]<0&&(t[18]+=65536),(o<r||-1==r)&&(Gn(t,n,e,a),t[18]=(4294901760&t[18])+a+2),a++}function Gn(t,e,n,i){var r=n[i]<0,o=n[i+1],a=t[r?-n[i]:n[i]];r?t[2]>>11<t[18]>>16&&(3&t[2])===e&&(t[2]+=2048,o.call(a)):o.call(a)}
  198. /**
  199. * @license
  200. * Copyright Google Inc. All Rights Reserved.
  201. *
  202. * Use of this source code is governed by an MIT-style license that can be
  203. * found in the LICENSE file at https://angular.io/license
  204. */var Hn=function(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n
  205. /**
  206. * @license
  207. * Copyright Google Inc. All Rights Reserved.
  208. *
  209. * Use of this source code is governed by an MIT-style license that can be
  210. * found in the LICENSE file at https://angular.io/license
  211. */};function Wn(t,e){Bt(t,"should be called with a TNode"),Rt(t.type,e,"should be a "+Kn(e))}function qn(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];Bt(t,"should be called with a TNode"),Rt(e.some(function(e){return t.type===e}),!0,"Should be one of "+e.map(Kn).join(", ")+" but got "+Kn(t.type))}function Kn(t){return 1==t?"Projection":0==t?"Container":5==t?"IcuContainer":2==t?"View":3==t?"Element":4==t?"ElementContainer":"<unknown>"}function Xn(t,e,n){for(var i=Ve(t),r=0;r<n.length;){var o=n[r];if("number"==typeof o){if(0!==o)break;r++;var a=n[r++],s=n[r++],c=n[r++];ngDevMode&&ngDevMode.rendererSetAttribute++,i?t.setAttribute(e,s,c,a):e.setAttributeNS(a,s,c)}else s=o,c=n[++r],ngDevMode&&ngDevMode.rendererSetAttribute++,Zn(s)?i&&t.setProperty(e,s,c):i?t.setAttribute(e,s,c):e.setAttribute(s,c),r++}return r}function Yn(t){return 3===t||4===t||6===t}function Zn(t){return 64===t.charCodeAt(0)}function Jn(t,e){if(null===e||0===e.length);else if(null===t||0===t.length)t=e.slice();else for(var n=-1,i=0;i<e.length;i++){var r=e[i];"number"==typeof r?n=r:0===n||Qn(t,n,r,null,-1===n||2===n?e[++i]:null)}return t}function Qn(t,e,n,i,r){var o=0,a=t.length;if(-1===e)a=-1;else for(;o<t.length;){var s=t[o++];if("number"==typeof s){if(s===e){a=-1;break}if(s>e){a=o-1;break}}}for(;o<t.length;){var c=t[o];if("number"==typeof c)break;if(c===n){if(null===i)return void(null!==r&&(t[o+1]=r));if(i===t[o+1])return void(t[o+2]=r)}o++,null!==i&&o++,null!==r&&o++}-1!==a&&(t.splice(a,0,e),o=a+1),t.splice(o++,0,n),null!==i&&t.splice(o++,0,i),null!==r&&t.splice(o++,0,r)}
  212. /**
  213. * @license
  214. * Copyright Google Inc. All Rights Reserved.
  215. *
  216. * Use of this source code is governed by an MIT-style license that can be
  217. * found in the LICENSE file at https://angular.io/license
  218. */function $n(t){return-1!==t}function ti(t){return 32767&t}function ei(t){return t>>16}function ni(t,e){for(var n=ei(t),i=e;n>0;)i=i[15],n--;return i}
  219. /**
  220. * @license
  221. * Copyright Google Inc. All Rights Reserved.
  222. *
  223. * Use of this source code is governed by an MIT-style license that can be
  224. * found in the LICENSE file at https://angular.io/license
  225. */function ii(t){return"string"==typeof t?t:null==t?"":""+t}function ri(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():ii(t)}var oi=("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(J);function ai(t){return{name:"window",target:t.ownerDocument.defaultView}}function si(t){return{name:"document",target:t.ownerDocument}}function ci(t){return{name:"body",target:t.ownerDocument.body}}function li(t){return t instanceof Function?t():t}
  226. /**
  227. * @license
  228. * Copyright Google Inc. All Rights Reserved.
  229. *
  230. * Use of this source code is governed by an MIT-style license that can be
  231. * found in the LICENSE file at https://angular.io/license
  232. */var ui=!0;function di(t){var e=ui;return ui=t,e}var pi=0;function hi(t,e){var n=gi(t,e);if(-1!==n)return n;var i=e[1];i.firstCreatePass&&(t.injectorIndex=e.length,fi(i.data,t),fi(e,null),fi(i.blueprint,null));var r=mi(t,e),o=t.injectorIndex;if($n(r))for(var a=ti(r),s=ni(r,e),c=s[1].data,l=0;l<8;l++)e[o+l]=s[a+l]|c[a+l];return e[o+8]=r,o}function fi(t,e){t.push(0,0,0,0,0,0,0,0,e)}function gi(t,e){return-1===t.injectorIndex||t.parent&&t.parent.injectorIndex===t.injectorIndex||null==e[t.injectorIndex+8]?-1:t.injectorIndex}function mi(t,e){if(t.parent&&-1!==t.parent.injectorIndex)return t.parent.injectorIndex;for(var n=e[6],i=1;n&&-1===n.injectorIndex;)n=(e=e[15])?e[6]:null,i++;return n?n.injectorIndex|i<<16:-1}function vi(t,e,n){!function(t,e,n){ngDevMode&&Rt(e.firstCreatePass,!0,"expected firstCreatePass to be true");var i="string"!=typeof n?n[ot]:n.charCodeAt(0)||0;null==i&&(i=n[ot]=pi++);var r=255&i,o=1<<r,a=128&r,s=64&r,c=32&r,l=e.data;a?s?c?l[t+7]|=o:l[t+6]|=o:c?l[t+5]|=o:l[t+4]|=o:s?c?l[t+3]|=o:l[t+2]|=o:c?l[t+1]|=o:l[t]|=o}(t,e,n)}function yi(t,e){if(ngDevMode&&qn(t,0,3,4),ngDevMode&&Bt(t,"expecting tNode"),"class"===e)return t.classes;if("style"===e)return t.styles;var n=t.attrs;if(n)for(var i=n.length,r=0;r<i;){var o=n[r];if(Yn(o))break;if(0===o)r+=2;else if("number"==typeof o)for(r++;r<i&&"string"==typeof n[r];)r++;else{if(o===e)return n[r+1];r+=2}}return null}function bi(t,e,n,i,r){if(void 0===i&&(i=v.Default),null!==t){var o=function(t){if(ngDevMode&&Bt(t,"token must be defined"),"string"==typeof t)return t.charCodeAt(0)||0;var e=t[ot];return"number"==typeof e&&e>0?255&e:e}(n);if("function"==typeof o){En(e,t);try{var a=o();if(null!=a||i&v.Optional)return a;throw new Error("No provider for "+ri(n)+"!")}finally{_n()}}else if("number"==typeof o){if(-1===o)return new Ai(t,e);var s=null,c=gi(t,e),l=-1,u=i&v.Host?e[16][6]:null;for((-1===c||i&v.SkipSelf)&&(l=-1===c?mi(t,e):e[c+8],Ci(i,!1)?(s=e[1],c=ti(l),e=ni(l,e)):c=-1);-1!==c;){l=e[c+8];var d=e[1];if(Ei(o,c,d.data)){var p=Si(c,e,n,s,i,u);if(p!==wi)return p}Ci(i,e[1].data[c+8]===u)&&Ei(o,c,e)?(s=d,c=ti(l),e=ni(l,e)):c=-1}}}if(i&v.Optional&&void 0===r&&(r=null),0==(i&(v.Self|v.Host))){var h=e[9],f=gt(void 0);try{return h?h.get(n,r,i&v.Optional):wt(n,r,i&v.Optional)}finally{gt(f)}}if(i&v.Optional)return r;throw new Error("NodeInjector: NOT_FOUND ["+ri(n)+"]")}var wi={};function Si(t,e,n,i,r,o){var a=e[1],s=a.data[t+8],c=xi(s,a,n,null==i?xe(s)&&ui:i!=a&&3===s.type,r&v.Host&&o===s);return null!==c?Mi(e,a,c,s):wi}function xi(t,e,n,i,r){for(var o=t.providerIndexes,a=e.data,s=65535&o,c=t.directiveStart,l=t.directiveEnd,u=o>>16,d=r?s+u:l,p=i?s:s+u;p<d;p++){var h=a[p];if(p<c&&n===h||p>=c&&h.type===n)return p}if(r){var f=a[c];if(f&&Ee(f)&&f.type===n)return c}return null}function Mi(t,e,n,i){var r=t[n],o=e.data;if(r instanceof Hn){var a=r;if(a.resolving)throw new Error("Circular dep for "+ri(o[n]));var s=di(a.canSeeViewProviders);a.resolving=!0;var c=void 0;a.injectImpl&&(c=gt(a.injectImpl)),En(t,i);try{r=t[n]=a.factory(void 0,o,t,i),e.firstCreatePass&&n>=i.directiveStart&&(ngDevMode&&function(t){void 0!==t.type&&null!=t.selectors&&void 0!==t.inputs||zt("Expected a DirectiveDef/ComponentDef and this object does not seem to have the expected shape.")}(o[n]),
  233. /**
  234. * @license
  235. * Copyright Google Inc. All Rights Reserved.
  236. *
  237. * Use of this source code is governed by an MIT-style license that can be
  238. * found in the LICENSE file at https://angular.io/license
  239. */
  240. function(t,e,n){ngDevMode&&ke(n);var i=e.onChanges,r=e.onInit,o=e.doCheck;i&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,i)),r&&(n.preOrderHooks||(n.preOrderHooks=[])).push(-t,r),o&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,o),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,o))}(n,o[n],e))}finally{a.injectImpl&&gt(c),di(s),a.resolving=!1,_n()}}return r}function Ei(t,e,n){var i=1<<t,r=64&t,o=32&t;return!!((128&t?r?o?n[e+7]:n[e+6]:o?n[e+5]:n[e+4]:r?o?n[e+3]:n[e+2]:o?n[e+1]:n[e])&i)}function Ci(t,e){return!(t&v.Self||t&v.Host&&e)}var Ai=function(){function t(t,e){this._tNode=t,this._lView=e}return t.prototype.get=function(t,e){return bi(this._tNode,this._lView,t,void 0,e)},t}();function Ti(t){var e=t;if(H(t))return function(){var t=Ti(G(e));return t?t():null};var n=ve(e);if(null===n){var i=D(e);n=i&&i.factory}return n||null}function Oi(t){return l(function(){var e=Object.getPrototypeOf(t.prototype).constructor,n=e[rt]||Ti(e);return null!==n?n:function(t){return new t}})}
  241. /**
  242. * @license
  243. * Copyright Google Inc. All Rights Reserved.
  244. *
  245. * Use of this source code is governed by an MIT-style license that can be
  246. * found in the LICENSE file at https://angular.io/license
  247. */function _i(t){return t.ngDebugContext}function Pi(t){return t.ngOriginalError}function Ii(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];t.error.apply(t,Object(i.h)(e))}
  248. /**
  249. * @license
  250. * Copyright Google Inc. All Rights Reserved.
  251. *
  252. * Use of this source code is governed by an MIT-style license that can be
  253. * found in the LICENSE file at https://angular.io/license
  254. */var ki=function(){function t(){this._console=console}return t.prototype.handleError=function(t){var e=this._findOriginalError(t),n=this._findContext(t),i=function(t){return t.ngErrorLogger||Ii}(t);i(this._console,"ERROR",t),e&&i(this._console,"ORIGINAL ERROR",e),n&&i(this._console,"ERROR CONTEXT",n)},t.prototype._findContext=function(t){return t?_i(t)?_i(t):this._findContext(Pi(t)):null},t.prototype._findOriginalError=function(t){for(var e=Pi(t);e&&Pi(e);)e=Pi(e);return e},t}(),Di={name:"custom-elements"},Ri={name:"no-errors-schema"},Li=function(){function t(t){this.changingThisBreaksApplicationSecurity=t}return t.prototype.toString=function(){return"SafeValue must use [property]=binding: "+this.changingThisBreaksApplicationSecurity+" (see http://g.co/ng/security#xss)"},t}(),Ni=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Object(i.c)(e,t),e.prototype.getTypeName=function(){return"HTML"},e}(Li),ji=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Object(i.c)(e,t),e.prototype.getTypeName=function(){return"Style"},e}(Li),Vi=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Object(i.c)(e,t),e.prototype.getTypeName=function(){return"Script"},e}(Li),Fi=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Object(i.c)(e,t),e.prototype.getTypeName=function(){return"URL"},e}(Li),Ui=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Object(i.c)(e,t),e.prototype.getTypeName=function(){return"ResourceURL"},e}(Li);
  255. /**
  256. * @license
  257. * Copyright Google Inc. All Rights Reserved.
  258. *
  259. * Use of this source code is governed by an MIT-style license that can be
  260. * found in the LICENSE file at https://angular.io/license
  261. */function Bi(t){return t instanceof Li?t.changingThisBreaksApplicationSecurity:t}function zi(t,e){var n=Gi(t);if(null!=n&&n!==e){if("ResourceURL"===n&&"URL"===e)return!0;throw new Error("Required a safe "+e+", got a "+n+" (see http://g.co/ng/security#xss)")}return n===e}function Gi(t){return t instanceof Li&&t.getTypeName()||null}function Hi(t){return new Ni(t)}function Wi(t){return new ji(t)}function qi(t){return new Vi(t)}function Ki(t){return new Fi(t)}function Xi(t){return new Ui(t)}
  262. /**
  263. * @license
  264. * Copyright Google Inc. All Rights Reserved.
  265. *
  266. * Use of this source code is governed by an MIT-style license that can be
  267. * found in the LICENSE file at https://angular.io/license
  268. */var Yi=!0,Zi=!1;function Ji(){return Zi=!0,Yi}function Qi(){if(Zi)throw new Error("Cannot enable prod mode after platform setup.");Yi=!1}
  269. /**
  270. * @license
  271. * Copyright Google Inc. All Rights Reserved.
  272. *
  273. * Use of this source code is governed by an MIT-style license that can be
  274. * found in the LICENSE file at https://angular.io/license
  275. */var $i=function(){function t(t){this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert");var e=this.inertDocument.body;if(null==e){var n=this.inertDocument.createElement("html");this.inertDocument.appendChild(n),e=this.inertDocument.createElement("body"),n.appendChild(e)}e.innerHTML='<svg><g onload="this.parentNode.remove()"></g></svg>',!e.querySelector||e.querySelector("svg")?(e.innerHTML='<svg><p><style><img src="</style><img src=x onerror=alert(1)//">',e.querySelector&&e.querySelector("svg img")&&function(){try{return!!window.DOMParser}catch(t){return!1}}
  276. /**
  277. * @license
  278. * Copyright Google Inc. All Rights Reserved.
  279. *
  280. * Use of this source code is governed by an MIT-style license that can be
  281. * found in the LICENSE file at https://angular.io/license
  282. */()?this.getInertBodyElement=this.getInertBodyElement_DOMParser:this.getInertBodyElement=this.getInertBodyElement_InertDocument):this.getInertBodyElement=this.getInertBodyElement_XHR}return t.prototype.getInertBodyElement_XHR=function(t){t="<body><remove></remove>"+t+"</body>";try{t=encodeURI(t)}catch(t){return null}var e=new XMLHttpRequest;e.responseType="document",e.open("GET","data:text/html;charset=utf-8,"+t,!1),e.send(void 0);var n=e.response.body;return n.removeChild(n.firstChild),n},t.prototype.getInertBodyElement_DOMParser=function(t){t="<body><remove></remove>"+t+"</body>";try{var e=(new window.DOMParser).parseFromString(t,"text/html").body;return e.removeChild(e.firstChild),e}catch(t){return null}},t.prototype.getInertBodyElement_InertDocument=function(t){var e=this.inertDocument.createElement("template");if("content"in e)return e.innerHTML=t,e;var n=this.inertDocument.createElement("body");return n.innerHTML=t,this.defaultDoc.documentMode&&this.stripCustomNsAttrs(n),n},t.prototype.stripCustomNsAttrs=function(t){for(var e=t.attributes,n=e.length-1;0<n;n--){var i=e.item(n).name;"xmlns:ns1"!==i&&0!==i.indexOf("ns1:")||t.removeAttribute(i)}for(var r=t.firstChild;r;)r.nodeType===Node.ELEMENT_NODE&&this.stripCustomNsAttrs(r),r=r.nextSibling},t}(),tr=/^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi,er=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+\/]+=*$/i;function nr(t){return(t=String(t)).match(tr)||t.match(er)?t:(Ji()&&console.warn("WARNING: sanitizing unsafe URL value "+t+" (see http://g.co/ng/security#xss)"),"unsafe:"+t)}function ir(t){return(t=String(t)).split(",").map(function(t){return nr(t.trim())}).join(", ")}
  283. /**
  284. * @license
  285. * Copyright Google Inc. All Rights Reserved.
  286. *
  287. * Use of this source code is governed by an MIT-style license that can be
  288. * found in the LICENSE file at https://angular.io/license
  289. */function rr(t){var e,n,r={};try{for(var o=Object(i.j)(t.split(",")),a=o.next();!a.done;a=o.next())r[a.value]=!0}catch(t){e={error:t}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(e)throw e.error}}return r}function or(){for(var t,e,n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];var o={};try{for(var a=Object(i.j)(n),s=a.next();!s.done;s=a.next()){var c=s.value;for(var l in c)c.hasOwnProperty(l)&&(o[l]=!0)}}catch(e){t={error:e}}finally{try{s&&!s.done&&(e=a.return)&&e.call(a)}finally{if(t)throw t.error}}return o}var ar,sr,cr=rr("area,br,col,hr,img,wbr"),lr=rr("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),ur=rr("rp,rt"),dr=or(ur,lr),pr=or(lr,rr("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),hr=or(ur,rr("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),fr=or(cr,pr,hr,dr),gr=rr("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),mr=rr("srcset"),vr=rr("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),yr=rr("aria-activedescendant,aria-atomic,aria-autocomplete,aria-busy,aria-checked,aria-colcount,aria-colindex,aria-colspan,aria-controls,aria-current,aria-describedby,aria-details,aria-disabled,aria-dropeffect,aria-errormessage,aria-expanded,aria-flowto,aria-grabbed,aria-haspopup,aria-hidden,aria-invalid,aria-keyshortcuts,aria-label,aria-labelledby,aria-level,aria-live,aria-modal,aria-multiline,aria-multiselectable,aria-orientation,aria-owns,aria-placeholder,aria-posinset,aria-pressed,aria-readonly,aria-relevant,aria-required,aria-roledescription,aria-rowcount,aria-rowindex,aria-rowspan,aria-selected,aria-setsize,aria-sort,aria-valuemax,aria-valuemin,aria-valuenow,aria-valuetext"),br=or(gr,mr,vr,yr),wr=rr("script,style,template"),Sr=function(){function t(){this.sanitizedSomething=!1,this.buf=[]}return t.prototype.sanitizeChildren=function(t){for(var e=t.firstChild,n=!0;e;)if(e.nodeType===Node.ELEMENT_NODE?n=this.startElement(e):e.nodeType===Node.TEXT_NODE?this.chars(e.nodeValue):this.sanitizedSomething=!0,n&&e.firstChild)e=e.firstChild;else for(;e;){e.nodeType===Node.ELEMENT_NODE&&this.endElement(e);var i=this.checkClobberedElement(e,e.nextSibling);if(i){e=i;break}e=this.checkClobberedElement(e,e.parentNode)}return this.buf.join("")},t.prototype.startElement=function(t){var e=t.nodeName.toLowerCase();if(!fr.hasOwnProperty(e))return this.sanitizedSomething=!0,!wr.hasOwnProperty(e);this.buf.push("<"),this.buf.push(e);for(var n=t.attributes,i=0;i<n.length;i++){var r=n.item(i),o=r.name,a=o.toLowerCase();if(br.hasOwnProperty(a)){var s=r.value;gr[a]&&(s=nr(s)),mr[a]&&(s=ir(s)),this.buf.push(" ",o,'="',Er(s),'"')}else this.sanitizedSomething=!0}return this.buf.push(">"),!0},t.prototype.endElement=function(t){var e=t.nodeName.toLowerCase();fr.hasOwnProperty(e)&&!cr.hasOwnProperty(e)&&(this.buf.push("</"),this.buf.push(e),this.buf.push(">"))},t.prototype.chars=function(t){this.buf.push(Er(t))},t.prototype.checkClobberedElement=function(t,e){if(e&&(t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error("Failed to sanitize html because the element is clobbered: "+t.outerHTML);return e},t}(),xr=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Mr=/([^\#-~ |!])/g;function Er(t){return t.replace(/&/g,"&amp;").replace(xr,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(Mr,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(/</g,"&lt;").replace(/>/g,"&gt;")}function Cr(t,e){var n=null;try{ar=ar||new $i(t);var i=e?String(e):"";n=ar.getInertBodyElement(i);var r=5,o=i;do{if(0===r)throw new Error("Failed to sanitize html because the input is unstable");r--,i=o,o=n.innerHTML,n=ar.getInertBodyElement(i)}while(i!==o);var a=new Sr,s=a.sanitizeChildren(Ar(n)||n);return Ji()&&a.sanitizedSomething&&console.warn("WARNING: sanitizing HTML stripped some content, see http://g.co/ng/security#xss"),s}finally{if(n)for(var c=Ar(n)||n;c.firstChild;)c.removeChild(c.firstChild)}}function Ar(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}
  290. /**
  291. * @license
  292. * Copyright Google Inc. All Rights Reserved.
  293. *
  294. * Use of this source code is governed by an MIT-style license that can be
  295. * found in the LICENSE file at https://angular.io/license
  296. */(t)?t.content:null}!function(t){t[t.NONE=0]="NONE",t[t.HTML=1]="HTML",t[t.STYLE=2]="STYLE",t[t.SCRIPT=3]="SCRIPT",t[t.URL=4]="URL",t[t.RESOURCE_URL=5]="RESOURCE_URL"}(sr||(sr={}));
  297. /**
  298. * @license
  299. * Copyright Google Inc. All Rights Reserved.
  300. *
  301. * Use of this source code is governed by an MIT-style license that can be
  302. * found in the LICENSE file at https://angular.io/license
  303. */
  304. var Tr=new RegExp("^([-,.\"'%_!# a-zA-Z0-9]+|(?:(?:matrix|translate|scale|rotate|skew|perspective)(?:X|Y|Z|3d)?|(?:rgb|hsl)a?|(?:repeating-)?(?:linear|radial)-gradient|(?:attr|calc|var))\\([-0-9.%, #a-zA-Z]+\\))$","g"),Or=/^url\(([^)]+)\)$/;function _r(t){if(!(t=String(t).trim()))return"";var e=t.match(Or);return e&&nr(e[1])===e[1]||t.match(Tr)&&function(t){for(var e=!0,n=!0,i=0;i<t.length;i++){var r=t.charAt(i);"'"===r&&n?e=!e:'"'===r&&e&&(n=!n)}return e&&n}(t)?t:(Ji()&&console.warn("WARNING: sanitizing unsafe style value "+t+" (see http://g.co/ng/security#xss)."),"unsafe")}
  305. /**
  306. * @license
  307. * Copyright Google Inc. All Rights Reserved.
  308. *
  309. * Use of this source code is governed by an MIT-style license that can be
  310. * found in the LICENSE file at https://angular.io/license
  311. */function Pr(t){var e=Fr();return e?e.sanitize(sr.HTML,t)||"":zi(t,"HTML")?Bi(t):Cr(je(),ii(t))}function Ir(t){var e=Fr();return e?e.sanitize(sr.STYLE,t)||"":zi(t,"Style")?Bi(t):_r(ii(t))}function kr(t){var e=Fr();return e?e.sanitize(sr.URL,t)||"":zi(t,"URL")?Bi(t):nr(ii(t))}function Dr(t){var e=Fr();if(e)return e.sanitize(sr.RESOURCE_URL,t)||"";if(zi(t,"ResourceURL"))return Bi(t);throw new Error("unsafe value used in a resource URL context (see http://g.co/ng/security#xss)")}function Rr(t){var e=Fr();if(e)return e.sanitize(sr.SCRIPT,t)||"";if(zi(t,"Script"))return Bi(t);throw new Error("unsafe value used in a script context")}function Lr(t,e){return"src"===e&&("embed"===t||"frame"===t||"iframe"===t||"media"===t||"script"===t)||"href"===e&&("base"===t||"link"===t)?Dr:kr}function Nr(t,e,n){return Lr(e,n)(t)}var jr=function(t,e,n){if(void 0===e&&void 0===n)return Ir(t);var i=!0;return 1&(n=n||3)&&(i=Vr(t)),2&n?i?Ir(e):Bi(e):i};function Vr(t){return"background-image"===t||"backgroundImage"===t||"background"===t||"border-image"===t||"borderImage"===t||"border-image-source"===t||"borderImageSource"===t||"filter"===t||"list-style"===t||"listStyle"===t||"list-style-image"===t||"listStyleImage"===t||"clip-path"===t||"clipPath"===t}function Fr(){var t=on();return t&&t[12]}
  312. /**
  313. * @license
  314. * Copyright Google Inc. All Rights Reserved.
  315. *
  316. * Use of this source code is governed by an MIT-style license that can be
  317. * found in the LICENSE file at https://angular.io/license
  318. */function Ur(t){if(!ngDevMode)throw new Error("Looks like we are in 'prod mode', but we are creating a named Array type, which is wrong! Check your code");try{return new(0,Ur.constructor)("Array","return class "+t+" extends Array{}")(Array)}catch(t){return Array}}
  319. /**
  320. * @license
  321. * Copyright Google Inc. All Rights Reserved.
  322. *
  323. * Use of this source code is governed by an MIT-style license that can be
  324. * found in the LICENSE file at https://angular.io/license
  325. */function Br(t){return"ng-reflect-"+t.replace(/[$@]/g,"_").replace(zr,function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return"-"+t[1].toLowerCase()})}var zr=/([A-Z])/g;function Gr(t){try{return null!=t?t.toString().slice(0,30):t}catch(t){return"[ERROR] Exception while trying to serialize the value"}}
  326. /**
  327. * @license
  328. * Copyright Google Inc. All Rights Reserved.
  329. *
  330. * Use of this source code is governed by an MIT-style license that can be
  331. * found in the LICENSE file at https://angular.io/license
  332. */function Hr(t){var e,n=Ke(t);if(n){if(Array.isArray(n)){var i=n,r=void 0,o=void 0,a=void 0;if((e=t)&&e.constructor&&e.constructor.ɵcmp){if(-1==(r=Zr(i,t)))throw new Error("The provided component was not found in the application");o=t}else if(function(t){return t&&t.constructor&&t.constructor.ɵdir}(t)){if(-1==(r=function(t,e){for(var n=t[1].firstChild;n;){for(var i=n.directiveStart,r=n.directiveEnd,o=i;o<r;o++)if(t[o]===e)return n.index;n=Yr(n)}return-1}(i,t)))throw new Error("The provided directive was not found in the application");a=Jr(r,i,!1)}else if(-1==(r=Xr(i,t)))return null;var s=Ke(f=Ue(i[r])),c=s&&!Array.isArray(s)?s:Wr(i,r,f);if(o&&void 0===c.component&&(c.component=o,Kr(c.component,c)),a&&void 0===c.directives){c.directives=a;for(var l=0;l<a.length;l++)Kr(a[l],c)}Kr(c.native,c),n=c}}else{var u=t;ngDevMode&&Gt(u);for(var d=u;d=d.parentNode;){var p=Ke(d);if(p){if(i=void 0,!(i=Array.isArray(p)?p:p.lView))return null;var h=Xr(i,u);if(h>=0){var f;Kr(f=Ue(i[h]),c=Wr(i,h,f)),n=c;break}}}}return n||null}function Wr(t,e,n){return{lView:t,nodeIndex:e,native:n,component:void 0,directives:void 0,localRefs:void 0}}function qr(t){var e,n=Ke(t);if(Array.isArray(n)){var i=Zr(n,t);(r=Wr(n,i,(e=qe(i,n))[0])).component=t,Kr(t,r),Kr(r.native,r)}else{var r;e=qe((r=n).nodeIndex,r.lView)}return e}function Kr(t,e){t.__ngContext__=e}function Xr(t,e){for(var n=t[1].firstChild;n;){if(Ge(n,t)===e)return n.index;n=Yr(n)}return-1}function Yr(t){if(t.child)return t.child;if(t.next)return t.next;for(;t.parent&&!t.parent.next;)t=t.parent;return t.parent&&t.parent.next}function Zr(t,e){var n=t[1].components;if(n)for(var i=0;i<n.length;i++){var r=n[i];if(qe(r,t)[8]===e)return r}else if(qe(20,t)[8]===e)return 20;return-1}function Jr(t,e,n){var i=e[1].data[t],r=i.directiveStart;if(0==r)return ne;var o=i.directiveEnd;return!n&&2&i.flags&&r++,e.slice(r,o)}function Qr(t){throw new Error("Multiple components match node with tagname "+t.tagName)}function $r(){throw new Error("Cannot mix multi providers and regular providers")}function to(t,e,n,r,o){for(var a=Object(i.f)(r.split("�")),s=a[0],c=a[1],l=a.slice(2),u=c,d=c,p=0;p<l.length;p++){var h=e+p;u+=""+t[h]+l[p],d+=""+(h===n?o:t[h])+l[p]}return{propName:s,oldValue:u,newValue:d}}
  333. /**
  334. * @license
  335. * Copyright Google Inc. All Rights Reserved.
  336. *
  337. * Use of this source code is governed by an MIT-style license that can be
  338. * found in the LICENSE file at https://angular.io/license
  339. */function eo(t,e,n){ngDevMode&&Lt(e,"",'can not look for "" string.');for(var i=t.length;;){var r=t.indexOf(e,n);if(-1===r)return r;if(0===r||t.charCodeAt(r-1)<=32){var o=e.length;if(r+o===i||t.charCodeAt(r+o)<=32)return r}n=r+1}}
  340. /**
  341. * @license
  342. * Copyright Google Inc. All Rights Reserved.
  343. *
  344. * Use of this source code is governed by an MIT-style license that can be
  345. * found in the LICENSE file at https://angular.io/license
  346. */function no(t,e,n){ngDevMode&&Rt(e,e.toLowerCase(),"Class name expected to be lowercase.");for(var i=0;i<t.length;){var r=t[i++];if(n&&"class"===r){if(-1!==eo((r=t[i]).toLowerCase(),e,0))return!0}else if(1===r){for(;i<t.length&&"string"==typeof(r=t[i++]);)if(r.toLowerCase()===e)return!0;return!1}}return!1}function io(t){return 0===t.type&&"ng-template"!==t.tagName}function ro(t,e,n){return e===(0!==t.type||n?t.tagName:"ng-template")}function oo(t,e,n){ngDevMode&&Bt(e[0],"Selector should have a tag name");for(var i=4,r=t.attrs||[],o=function(t){for(var e=0;e<t.length;e++)if(Yn(t[e]))return e;return t.length}(r),a=!1,s=0;s<e.length;s++){var c=e[s];if("number"!=typeof c){if(!a)if(4&i){if(i=2|1&i,""!==c&&!ro(t,c,n)||""===c&&1===e.length){if(ao(i))return!1;a=!0}}else{var l=8&i?c:e[++s];if(8&i&&null!==t.attrs){if(!no(t.attrs,l,n)){if(ao(i))return!1;a=!0}continue}var u=so(8&i?"class":c,r,io(t),n);if(-1===u){if(ao(i))return!1;a=!0;continue}if(""!==l){var d=void 0;u>o?d="":(ngDevMode&&Lt(r[u],0,"We do not match directives on namespaced attributes"),d=r[u+1].toLowerCase());var p=8&i?d:null;if(p&&-1!==eo(p,l,0)||2&i&&l!==d){if(ao(i))return!1;a=!0}}}}else{if(!a&&!ao(i)&&!ao(c))return!1;if(a&&ao(c))continue;a=!1,i=c|1&i}}return ao(i)||a}function ao(t){return 0==(1&t)}function so(t,e,n,i){if(null===e)return-1;var r=0;if(i||!n){for(var o=!1;r<e.length;){var a=e[r];if(a===t)return r;if(3===a||6===a)o=!0;else{if(1===a||2===a){for(var s=e[++r];"string"==typeof s;)s=e[++r];continue}if(4===a)break;if(0===a){r+=4;continue}}r+=o?1:2}return-1}return function(t,e){var n=t.indexOf(4);if(n>-1)for(n++;n<t.length;){var i=t[n];if("number"==typeof i)return-1;if(i===e)return n;n++}return-1}(e,t)}function co(t,e,n){void 0===n&&(n=!1);for(var i=0;i<e.length;i++)if(oo(t,e[i],n))return!0;return!1}function lo(t,e){t:for(var n=0;n<e.length;n++){var i=e[n];if(t.length===i.length){for(var r=0;r<t.length;r++)if(t[r]!==i[r])continue t;return!0}}return!1}function uo(t,e){return t?":not("+e.trim()+")":e}function po(t){for(var e=t[0],n=1,i=2,r="",o=!1;n<t.length;){var a=t[n];if("string"==typeof a)if(2&i){var s=t[++n];r+="["+a+(s.length>0?'="'+s+'"':"")+"]"}else 8&i?r+="."+a:4&i&&(r+=" "+a);else""===r||ao(a)||(e+=uo(o,r),r=""),i=a,o=o||!ao(i);n++}return""!==r&&(e+=uo(o,r)),e}
  347. /**
  348. * @license
  349. * Copyright Google Inc. All Rights Reserved.
  350. *
  351. * Use of this source code is governed by an MIT-style license that can be
  352. * found in the LICENSE file at https://angular.io/license
  353. */var ho="undefined"==typeof ngDevMode||ngDevMode?{__brand__:"NO_CHANGE"}:{};
  354. /**
  355. * @license
  356. * Copyright Google Inc. All Rights Reserved.
  357. *
  358. * Use of this source code is governed by an MIT-style license that can be
  359. * found in the LICENSE file at https://angular.io/license
  360. */function fo(t){ngDevMode&&Ie(t);var e=t[3];return we(e)?e[3]:e}function go(t){var e=function(t){ngDevMode&&Bt(t,"component");for(var e=be(t)?t:Xe(t);e&&!(512&e[2]);)e=fo(e);return ngDevMode&&Ie(e),e}(t);return ngDevMode&&Bt(e[8],"RootView has no context. Perhaps it is disconnected?"),e[8]}function mo(t){return yo(t[13])}function vo(t){return yo(t[4])}function yo(t){for(;null!==t&&!we(t);)t=t[4];return t}
  361. /**
  362. * @license
  363. * Copyright Google Inc. All Rights Reserved.
  364. *
  365. * Use of this source code is governed by an MIT-style license that can be
  366. * found in the LICENSE file at https://angular.io/license
  367. */function bo(t){ngDevMode&&Ut(t,0,"Can only advance forward"),So(an(),on(),kn()+t,pn())}function wo(t){So(an(),on(),t,pn())}function So(t,e,n,i){if(ngDevMode&&Ut(n,-1,"Invalid index"),ngDevMode&&Ht(e,n+20),!i)if(3==(3&e[2])){var r=t.preOrderCheckHooks;null!==r&&Fn(e,r,n)}else{var o=t.preOrderHooks;null!==o&&Un(e,o,0,n)}Dn(n)}
  368. /**
  369. * @license
  370. * Copyright Google Inc. All Rights Reserved.
  371. *
  372. * Use of this source code is governed by an MIT-style license that can be
  373. * found in the LICENSE file at https://angular.io/license
  374. */var xo={marker:"element"},Mo={marker:"comment"};
  375. /**
  376. * @license
  377. * Copyright Google Inc. All Rights Reserved.
  378. *
  379. * Use of this source code is governed by an MIT-style license that can be
  380. * found in the LICENSE file at https://angular.io/license
  381. */function Eo(t,e){return ngDevMode&&kt(t,0,32767),ngDevMode&&kt(e,0,32767),t<<17|e<<2}function Co(t){return ngDevMode&&It(t,"expected number"),t>>17&32767}function Ao(t){return ngDevMode&&It(t,"expected number"),2==(2&t)}function To(t){return ngDevMode&&It(t,"expected number"),2|t}function Oo(t){return ngDevMode&&It(t,"expected number"),(131068&t)>>2}function _o(t,e){return ngDevMode&&It(t,"expected number"),ngDevMode&&kt(e,0,32767),-131069&t|e<<2}function Po(t){return ngDevMode&&It(t,"expected number"),1==(1&t)}function Io(t){return ngDevMode&&It(t,"expected number"),1|t}
  382. /**
  383. * @license
  384. * Copyright Google Inc. All Rights Reserved.
  385. *
  386. * Use of this source code is governed by an MIT-style license that can be
  387. * found in the LICENSE file at https://angular.io/license
  388. */function ko(t,e){Object.defineProperty(t,"debug",{value:e,enumerable:!1})}
  389. /**
  390. * @license
  391. * Copyright Google Inc. All Rights Reserved.
  392. *
  393. * Use of this source code is governed by an MIT-style license that can be
  394. * found in the LICENSE file at https://angular.io/license
  395. */var Do,Ro,Lo,No=("undefined"==typeof ngDevMode||!!ngDevMode)&&at();function jo(t){if(null==t)return"";var e=t.lastIndexOf("_Template");return"_"+(-1===e?t:t.substr(0,e))}var Vo=function(){function t(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m,v,y,b,w,S,x,M,E,C,A,T,O,_,P){this.type=t,this.id=e,this.blueprint=n,this.template=i,this.queries=r,this.viewQuery=o,this.node=a,this.data=s,this.bindingStartIndex=c,this.expandoStartIndex=l,this.expandoInstructions=u,this.firstCreatePass=d,this.firstUpdatePass=p,this.staticViewQueries=h,this.staticContentQueries=f,this.preOrderHooks=g,this.preOrderCheckHooks=m,this.contentHooks=v,this.contentCheckHooks=y,this.viewHooks=b,this.viewCheckHooks=w,this.destroyHooks=S,this.cleanup=x,this.contentQueries=M,this.components=E,this.directiveRegistry=C,this.pipeRegistry=A,this.firstChild=T,this.schemas=O,this.consts=_,this.incompleteFirstPass=P}return Object.defineProperty(t.prototype,"template_",{get:function(){var t=[];return Bo(this.firstChild,t),t.join("")},enumerable:!0,configurable:!0}),t}(),Fo=function(){function t(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m,v,y,b,w,S,x,M,E,C,A,T,O,_,P){this.tView_=t,this.type=e,this.index=n,this.injectorIndex=i,this.directiveStart=r,this.directiveEnd=o,this.directiveStylingLast=a,this.propertyBindings=s,this.flags=c,this.providerIndexes=l,this.tagName=u,this.attrs=d,this.mergedAttrs=p,this.localNames=h,this.initialInputs=f,this.inputs=g,this.outputs=m,this.tViews=v,this.next=y,this.projectionNext=b,this.child=w,this.parent=S,this.projection=x,this.styles=M,this.stylesWithoutHost=E,this.residualStyles=C,this.classes=A,this.classesWithoutHost=T,this.residualClasses=O,this.classBindings=_,this.styleBindings=P}return Object.defineProperty(t.prototype,"type_",{get:function(){switch(this.type){case 0:return"TNodeType.Container";case 3:return"TNodeType.Element";case 4:return"TNodeType.ElementContainer";case 5:return"TNodeType.IcuContainer";case 1:return"TNodeType.Projection";case 2:return"TNodeType.View";default:return"TNodeType.???"}},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"flags_",{get:function(){var t=[];return 16&this.flags&&t.push("TNodeFlags.hasClassInput"),8&this.flags&&t.push("TNodeFlags.hasContentQuery"),32&this.flags&&t.push("TNodeFlags.hasStyleInput"),128&this.flags&&t.push("TNodeFlags.hasHostBindings"),2&this.flags&&t.push("TNodeFlags.isComponentHost"),1&this.flags&&t.push("TNodeFlags.isDirectiveHost"),64&this.flags&&t.push("TNodeFlags.isDetached"),4&this.flags&&t.push("TNodeFlags.isProjected"),t.join("|")},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"template_",{get:function(){var t=[];if(t.push("<",this.tagName||this.type_),this.attrs)for(var e=0;e<this.attrs.length;){var n=this.attrs[e++];if("number"==typeof n)break;var i=this.attrs[e++];t.push(" ",n,'="',i,'"')}return t.push(">"),Bo(this.child,t),t.push("</",this.tagName||this.type_,">"),t.join("")},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"styleBindings_",{get:function(){return Uo(this,!1)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"classBindings_",{get:function(){return Uo(this,!0)},enumerable:!0,configurable:!0}),t}();function Uo(t,e){for(var n=t.tView_.data,i=[],r=e?t.classBindings:t.styleBindings,o=Co(r),a=Oo(r),s=0!==a,c=s?a:o;0!==c;){var l=n[c],u=n[c+1];i.unshift({key:l,index:c,isTemplate:s,prevDuplicate:Ao(u),nextDuplicate:Po(u),nextIndex:Oo(u),prevIndex:Co(u)}),c===o&&(s=!1),c=Co(u)}return i.push((e?t.residualClasses:t.residualStyles)||null),i}function Bo(t,e){for(;t;)e.push(t.template_),t=t.next}var zo,Go=No&&Ur("TViewData")||null,Ho=No&&Ur("LViewBlueprint")||null,Wo=No&&Ur("MatchesArray")||null,qo=No&&Ur("TViewComponents")||null,Ko=No&&Ur("TNodeLocalNames")||null,Xo=No&&Ur("TNodeInitialInputs")||null,Yo=(No&&Ur("TNodeInitialData"),No&&Ur("LCleanup")||null),Zo=No&&Ur("TCleanup")||null;function Jo(t){if(t){var e=t.debug;return Bt(e,"Object does not have a debug representation."),e}return t}function Qo(t,e){void 0===e&&(e=!1);var n=Ue(t);if(n){var i=n.nodeType===Node.TEXT_NODE,r=(i?n.textContent:n.outerHTML)||"";if(e||i)return r;var o=">"+n.innerHTML+"<";return r.split(o)[0]+">"}return null}var $o=function(){function t(t){this._raw_lView=t}return Object.defineProperty(t.prototype,"flags",{get:function(){var t=this._raw_lView[2];return{__raw__flags__:t,initPhaseState:3&t,creationMode:!!(4&t),firstViewPass:!!(8&t),checkAlways:!!(16&t),dirty:!!(64&t),attached:!!(128&t),destroyed:!!(256&t),isRoot:!!(512&t),indexWithinInitPhase:t>>11}},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parent",{get:function(){return Jo(this._raw_lView[3])},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"host",{get:function(){return Qo(this._raw_lView[0],!0)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"html",{get:function(){return(this.nodes||[]).map(function(t){return Qo(t.native,!0)}).join("")},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"context",{get:function(){return this._raw_lView[8]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"nodes",{get:function(){var t=this._raw_lView;return ta(t[1].firstChild,t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"tView",{get:function(){return this._raw_lView[1]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"cleanup",{get:function(){return this._raw_lView[7]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"injector",{get:function(){return this._raw_lView[9]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"rendererFactory",{get:function(){return this._raw_lView[10]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"renderer",{get:function(){return this._raw_lView[11]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"sanitizer",{get:function(){return this._raw_lView[12]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"childHead",{get:function(){return Jo(this._raw_lView[13])},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"next",{get:function(){return Jo(this._raw_lView[4])},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"childTail",{get:function(){return Jo(this._raw_lView[14])},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"declarationView",{get:function(){return Jo(this._raw_lView[15])},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"queries",{get:function(){return this._raw_lView[19]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"tHost",{get:function(){return this._raw_lView[6]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"childViews",{get:function(){for(var t=[],e=this.childHead;e;)t.push(e),e=e.next;return t},enumerable:!0,configurable:!0}),t}();function ta(t,e){if(t){for(var n=[],i=t;i;)n.push(ea(i,e,i.index)),i=i.next;return n}return null}function ea(t,e,n){var i=e[n],r=Ue(i),o=Jo(function(t){for(;Array.isArray(t);){if(t.length>=19)return t;t=t[0]}return null}(i));return{html:Qo(r),native:r,nodes:ta(t.child,e),component:o}}var na=function(){function t(t){this._raw_lContainer=t}return Object.defineProperty(t.prototype,"hasTransplantedViews",{get:function(){return this._raw_lContainer[2]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"views",{get:function(){return this._raw_lContainer.slice(10).map(Jo)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parent",{get:function(){return Jo(this._raw_lContainer[3])},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"movedViews",{get:function(){return this._raw_lContainer[9]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"host",{get:function(){return this._raw_lContainer[0]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"native",{get:function(){return this._raw_lContainer[7]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"next",{get:function(){return Jo(this._raw_lContainer[4])},enumerable:!0,configurable:!0}),t}(),ia=function(){function t(t,e,n,i){this.__raw_opCode=t,this._lView=e,this.nodeIndex=n,this.type=i}return Object.defineProperty(t.prototype,"tNode",{get:function(){return He(this._lView[1],this.nodeIndex)},enumerable:!0,configurable:!0}),t}(),ra=function(){function t(t,e){this.__raw_opCodes=t,this.__lView=e}return Object.defineProperty(t.prototype,"operations",{get:function(){for(var t=this.__lView,e=this.__raw_opCodes,n=[],i=0;i<e.length;i++){var r=e[i],o=void 0;if("string"==typeof r&&(o={__raw_opCode:r,type:"Create Text Node",nodeIndex:e[++i],text:r}),"number"==typeof r)switch(7&r){case 1:o=new ia(r,t,r>>>17,"AppendChild");break;case 0:o=new ia(r,t,r>>>3,"Select");break;case 5:var a=r>>>3;o=new ia(r,t,a,"ElementEnd");break;case 4:(o=new ia(r,t,a=r>>>3,"Attr")).attrName=e[++i],o.attrValue=e[++i]}if(!o)switch(r){case Mo:o={__raw_opCode:r,type:"COMMENT_MARKER",commentValue:e[++i],nodeIndex:e[++i]};break;case xo:o={__raw_opCode:r,type:"ELEMENT_MARKER"}}o||(o={__raw_opCode:r,type:"Unknown Op Code",code:r}),n.push(o)}return n},enumerable:!0,configurable:!0}),t}(),oa=function(){function t(t,e,n){this.__raw_opCodes=t,this.icus=e,this.__lView=n}return Object.defineProperty(t.prototype,"operations",{get:function(){for(var t=this.__lView,e=this.__raw_opCodes,n=this.icus,i=[],r=0;r<e.length;r++){for(var o=e[r],a=e[++r],s="",c=r+1;c<=r+a;c++){var l=e[c];if("string"==typeof l)s+=l;else if("number"==typeof l)if(l<0)s+="�"+(-l-1)+"�";else{var u=l>>>2,d=void 0,p=void 0;switch(3&l){case 1:var h=e[++c],f=e[++c];i.push({__raw_opCode:l,checkBit:o,type:"Attr",attrValue:s,attrName:h,sanitizeFn:f});break;case 0:i.push({__raw_opCode:l,checkBit:o,type:"Text",nodeIndex:u,text:s});break;case 2:p=n[d=e[++c]];var g=new ia(l,t,u,"IcuSwitch");g.tIcuIndex=d,g.checkBit=o,g.mainBinding=s,g.tIcu=p,i.push(g);break;case 3:p=n[d=e[++c]],(g=new ia(l,t,u,"IcuUpdate")).tIcuIndex=d,g.checkBit=o,g.tIcu=p,i.push(g)}}}r+=a}return i},enumerable:!0,configurable:!0}),t}(),aa=Promise.resolve(null);function sa(t,e){var n=t.contentQueries;if(null!==n)for(var i=0;i<n.length;i+=2){var r=n[i],o=n[i+1];if(-1!==o){var a=t.data[o];ngDevMode&&Bt(a.contentQueries,"contentQueries function should be defined"),Mn(r),a.contentQueries(2,e[o],o)}}}function ca(t,e,n){return Ve(e)?e.createElement(t,n):null===n?e.createElement(t):e.createElementNS(n,t)}function la(t,e,n,i,r,o,a,s,c,l){var u=ngDevMode?function(t){return function(t,e){switch(t){case 0:return void 0===Lo&&(Lo=new(Ur("LRootView"))),Lo;case 1:void 0===Do&&(Do=new Map);var n=Do.get(e);return void 0===n&&(n=new(Ur("LComponentView"+jo(e))),Do.set(e,n)),n;case 2:void 0===Ro&&(Ro=new Map);var i=Ro.get(e);return void 0===i&&(i=new(Ur("LEmbeddedView"+jo(e))),Ro.set(e,i)),i}throw new Error("unreachable code")}(t.type,t.template&&t.template.name).concat(t.blueprint)}(e):e.blueprint.slice();return u[0]=r,u[2]=140|i,Qe(u),u[3]=u[15]=t,u[8]=n,u[10]=a||t&&t[10],ngDevMode&&Bt(u[10],"RendererFactory is required"),u[11]=s||t&&t[11],ngDevMode&&Bt(u[11],"Renderer is required"),u[12]=c||t&&t[12]||null,u[9]=l||t&&t[9]||null,u[6]=o,ngDevMode&&Rt(2!=e.type||null!==t,!0,"Embedded views must have parentLView"),u[16]=2==e.type?t[16]:u,ngDevMode&&ko(u,new $o(u)),u}function ua(t,e,n,i,r,o){var a=n+20,s=t.data[a]||function(t,e,n,i,r,o){var a=cn(),s=un(),c=s?a:a&&a.parent,l=c&&c!==e?c:null,u=t.data[n]=Sa(t,l,i,n,r,o);return null===t.firstChild&&(t.firstChild=u),a&&(!s||null!=a.child||null===u.parent&&2!==a.type?s||(a.next=u):a.child=u),u}(t,e,a,i,r,o);return ln(s,!0),s}function da(t,e,n){ngDevMode&&Rt(Ye(e),!0,"Should be run in creation mode"),Cn(e,e[6]);try{var i=t.viewQuery;null!==i&&Za(1,i,n);var r=t.template;null!==r&&fa(t,e,r,1,n),t.firstCreatePass&&(t.firstCreatePass=!1),t.staticContentQueries&&sa(t,e),t.staticViewQueries&&Za(2,t.viewQuery,n);var o=t.components;null!==o&&function(t,e){for(var n=0;n<e.length;n++)Ha(t,e[n])}(e,o)}catch(e){throw t.firstCreatePass&&(t.incompleteFirstPass=!0),e}finally{e[2]&=-5,Pn()}}function pa(t,e,n,i){ngDevMode&&Rt(Ye(e),!1,"Should be run in update mode");var r=e[2];if(256!=(256&r)){Cn(e,e[6]);var o=pn();try{Qe(e),mn(t.bindingStartIndex),null!==n&&fa(t,e,n,2,i);var a=3==(3&r);if(!o)if(a){var s=t.preOrderCheckHooks;null!==s&&Fn(e,s,null)}else{var c=t.preOrderHooks;null!==c&&Un(e,c,0,null),Bn(e,0)}if(function(t){for(var e=mo(t);null!==e;e=vo(e))if(e[2]){var n=e[9];ngDevMode&&Bt(n,"Transplanted View flags set but missing MOVED_VIEWS");for(var i=0;i<n.length;i++){var r=n[i],o=r[3];ngDevMode&&_e(o),0==(1024&r[2])&&$e(o,1),r[2]|=1024}}}(e),function(t){for(var e=mo(t);null!==e;e=vo(e))for(var n=10;n<e.length;n++){var i=e[n],r=i[1];ngDevMode&&Bt(r,"TView must be allocated"),Ze(i)&&pa(r,i,r.template,i[8])}}(e),null!==t.contentQueries&&sa(t,e),!o)if(a){var l=t.contentCheckHooks;null!==l&&Fn(e,l)}else{var u=t.contentHooks;null!==u&&Un(e,u,1),Bn(e,1)}!function(t,e){ngDevMode&&Nt(t,e[1],"`LView` is not associated with the `TView`!");try{var n=t.expandoInstructions;if(null!==n)for(var i=t.expandoStartIndex,r=-1,o=0;o<n.length;o++){var a=n[o];"number"==typeof a?a<=0?(Dn(0-a),r=i+=9+n[++o]):i+=a:(null!==a&&(bn(i,r),a(2,e[r])),r++)}}finally{Dn(-1)}}(t,e);var d=t.components;null!==d&&function(t,e){for(var n=0;n<e.length;n++)Ga(t,e[n])}(e,d);var p=t.viewQuery;if(null!==p&&Za(2,p,i),!o)if(a){var h=t.viewCheckHooks;null!==h&&Fn(e,h)}else{var f=t.viewHooks;null!==f&&Un(e,f,2),Bn(e,2)}!0===t.firstUpdatePass&&(t.firstUpdatePass=!1),o||(e[2]&=-73),1024&e[2]&&(e[2]&=-1025,$e(e[3],-1))}finally{Pn()}}}function ha(t,e,n,i){var r=e[10],o=!pn(),a=Ye(e);try{o&&!a&&r.begin&&r.begin(),a&&da(t,e,i),pa(t,e,n,i)}finally{o&&!a&&r.end&&r.end()}}function fa(t,e,n,i,r){var o=kn();try{Dn(-1),2&i&&e.length>20&&So(t,e,0,pn()),n(i,r)}finally{Dn(o)}}function ga(t,e,n){if(Se(e))for(var i=e.directiveStart,r=e.directiveEnd,o=i;o<r;o++){var a=t.data[o];a.contentQueries&&a.contentQueries(1,n[o],o)}}function ma(t,e,n){en()&&(function(t,e,n,i){var r=n.directiveStart,o=n.directiveEnd;t.firstCreatePass||hi(n,e),Kr(i,e);for(var a=n.initialInputs,s=r;s<o;s++){var c=t.data[s],l=Ee(c);l&&(ngDevMode&&qn(n,3),ja(e,n,c));var u=Mi(e,t,s,n);Kr(u,e),null!==a&&Fa(e,s-r,u,c,n,a),l&&(qe(n.index,e)[8]=u)}}(t,e,n,ze(n,e)),128==(128&n.flags)&&function(t,e,n){var i=n.directiveStart,r=n.directiveEnd,o=t.expandoInstructions,a=t.firstCreatePass,s=n.index-20,c=tn.lFrame.currentDirectiveIndex;try{Dn(s);for(var l=i;l<r;l++){var u=t.data[l],d=e[l];wn(l),null!==u.hostBindings||0!==u.hostVars||null!==u.hostAttrs?Ia(u,d):a&&o.push(null)}}finally{Dn(-1),wn(c)}}(t,e,n))}function va(t,e,n){void 0===n&&(n=ze);var i=e.localNames;if(null!==i)for(var r=e.index+1,o=0;o<i.length;o+=2){var a=i[o+1],s=-1===a?n(e,t):t[a];t[r++]=s}}function ya(t){var e=t.tView;return null===e||e.incompleteFirstPass?t.tView=ba(1,-1,t.template,t.decls,t.vars,t.directiveDefs,t.pipeDefs,t.viewQuery,t.schemas,t.consts):e}function ba(t,e,n,i,r,o,a,s,c,l){ngDevMode&&ngDevMode.tView++;var u,d=20+i,p=d+r,h=function(t,e){for(var n=ngDevMode?new Ho:[],i=0;i<e;i++)n.push(i<t?null:ho);return n}(d,p);return h[1]=ngDevMode?new Vo(t,e,h,n,null,s,null,(u=h,void 0===zo&&(zo=new Go),zo.concat(u)).fill(null,d),d,p,null,!0,!0,!1,!1,null,null,null,null,null,null,null,null,null,null,"function"==typeof o?o():o,"function"==typeof a?a():a,null,c,l,!1):{type:t,id:e,blueprint:h,template:n,queries:null,viewQuery:s,node:null,data:h.slice().fill(null,d),bindingStartIndex:d,expandoStartIndex:p,expandoInstructions:null,firstCreatePass:!0,firstUpdatePass:!0,staticViewQueries:!1,staticContentQueries:!1,preOrderHooks:null,preOrderCheckHooks:null,contentHooks:null,contentCheckHooks:null,viewHooks:null,viewCheckHooks:null,destroyHooks:null,cleanup:null,contentQueries:null,components:null,directiveRegistry:"function"==typeof o?o():o,pipeRegistry:"function"==typeof a?a():a,firstChild:null,schemas:c,consts:l,incompleteFirstPass:!1}}function wa(t,e,n){if(Ve(t)){var i=n===Tt.ShadowDom;return t.selectRootElement(e,i)}var r="string"==typeof e?t.querySelector(e):e;return ngDevMode&&function(t,e){if(!r)throw function(t,e){return new Error("Renderer: "+t+" ["+ri(e)+"]")}("string"==typeof e?"Host node with selector not found:":"Host node is required:",e)}(0,e),r.textContent="",r}function Sa(t,e,n,i,r,o){ngDevMode&&ngDevMode.tNode++;var a=e?e.injectorIndex:-1;return ngDevMode?new Fo(t,n,i,a,-1,-1,-1,null,0,0,r,o,null,null,void 0,null,null,null,null,null,null,e,null,null,null,void 0,null,null,void 0,0,0):{type:n,index:i,injectorIndex:a,directiveStart:-1,directiveEnd:-1,directiveStylingLast:-1,propertyBindings:null,flags:0,providerIndexes:0,tagName:r,attrs:o,mergedAttrs:null,localNames:null,initialInputs:void 0,inputs:null,outputs:null,tViews:null,next:null,projectionNext:null,child:null,parent:e,projection:null,styles:null,stylesWithoutHost:null,residualStyles:void 0,classes:null,classesWithoutHost:null,residualClasses:void 0,classBindings:0,styleBindings:0}}function xa(t,e,n){for(var i in t)if(t.hasOwnProperty(i)){n=null===n?{}:n;var r=t[i];n.hasOwnProperty(i)?n[i].push(e,r):n[i]=[e,r]}return n}function Ma(t,e,n,i,r,o,a,s){ngDevMode&&jt(r,ho,"Incoming value should never be NO_CHANGE.");var c,l=ze(e,n),u=e.inputs;if(!s&&null!=u&&(c=u[i]))is(t,n,c,i,r),xe(e)&&function(t,e){ngDevMode&&Ie(t);var n=qe(e,t);16&n[2]||(n[2]|=64)}(n,e.index),ngDevMode&&Ca(n,l,e.type,c,r);else if(3===e.type){if(i="class"===i?"className":"for"===i?"htmlFor":"formaction"===i?"formAction":"innerHtml"===i?"innerHTML":"readonly"===i?"readOnly":"tabindex"===i?"tabIndex":i,ngDevMode){if(function(t){if(t.toLowerCase().startsWith("on")){var e="Binding to event property '"+t+"' is disallowed for security reasons, please use ("+t.slice(2)+")=...\nIf '"+t+"' is a directive input, make sure the directive is imported by the current module.";throw new Error(e)}}(i),!function(t,e,n,i,r){return null===t.schemas||(!!(Aa(t,e,r.tagName)||i in n||Zn(i))||("undefined"==typeof Node||null===Node||!(n instanceof Node)))}(t,n,l,i,e))return void Ta(i,e);ngDevMode.rendererSetProperty++}r=null!=a?a(r,e.tagName||"",i):r,Ve(o)?o.setProperty(l,i,r):Zn(i)||(l.setProperty?l.setProperty(i,r):l[i]=r)}else 0===e.type&&ngDevMode&&!Aa(t,n,e.tagName)&&Ta(i,e)}function Ea(t,e,n,i,r){var o,a=t[11];i=Br(i);var s=Gr(r);if(3===n)null==r?Ve(a)?a.removeAttribute(e,i):e.removeAttribute(i):Ve(a)?a.setAttribute(e,i,s):e.setAttribute(i,s);else{var c="bindings="+JSON.stringify(((o={})[i]=s,o),null,2);Ve(a)?a.setValue(e,c):e.textContent=c}}function Ca(t,e,n,i,r){if(3===n||0===n)for(var o=0;o<i.length;o+=2)Ea(t,e,n,i[o+1],r)}function Aa(t,e,n){var i=t.schemas;if(null!==i)for(var r=0;r<i.length;r++){var o=i[r];if(o===Ri||o===Di&&n&&n.indexOf("-")>-1)return!0}return!1}function Ta(t,e){console.warn("Can't bind to '"+t+"' since it isn't a known property of '"+e.tagName+"'.")}function Oa(t,e,n,i){ngDevMode&&ke(t);var r=!1;if(en()){var o=function(t,e,n){ngDevMode&&ke(t),ngDevMode&&qn(n,3,4,0);var i=t.directiveRegistry,r=null;if(i)for(var o=0;o<i.length;o++){var a=i[o];co(n,a.selectors,!1)&&(r||(r=ngDevMode?new Wo:[]),vi(hi(n,e),t,a.type),Ee(a)?(2&n.flags&&Qr(n),Da(t,n),r.unshift(a)):r.push(a))}return r}(t,e,n),a=null===i?null:{"":-1};if(null!==o){var s=0;r=!0,La(n,t.data.length,o.length);for(var c=0;c<o.length;c++)(d=o[c]).providersResolver&&d.providersResolver(d);ka(t,n,o.length);var l=!1,u=!1;for(c=0;c<o.length;c++){var d=o[c];n.mergedAttrs=Jn(n.mergedAttrs,d.hostAttrs),Na(t,e,d),Ra(t.data.length-1,d,a),null!==d.contentQueries&&(n.flags|=8),null===d.hostBindings&&null===d.hostAttrs&&0===d.hostVars||(n.flags|=128),!l&&(d.onChanges||d.onInit||d.doCheck)&&((t.preOrderHooks||(t.preOrderHooks=[])).push(n.index-20),l=!0),u||!d.onChanges&&!d.doCheck||((t.preOrderCheckHooks||(t.preOrderCheckHooks=[])).push(n.index-20),u=!0),_a(t,d),s+=d.hostVars}!function(t,e){ngDevMode&&ke(t);for(var n=e.directiveStart,i=e.directiveEnd,r=t.data,o=e.attrs,a=ngDevMode?new Xo:[],s=null,c=null,l=n;l<i;l++){var u=r[l],d=u.inputs,p=null===o||io(e)?null:Ua(d,o);a.push(p),s=xa(d,l,s),c=xa(u.outputs,l,c)}null!==s&&(s.hasOwnProperty("class")&&(e.flags|=16),s.hasOwnProperty("style")&&(e.flags|=32)),e.initialInputs=a,e.inputs=s,e.outputs=c}(t,n),Pa(t,e,s)}a&&function(t,e,n){if(e)for(var i=t.localNames=ngDevMode?new Ko:[],r=0;r<e.length;r+=2){var o=n[e[r+1]];if(null==o)throw new Error("Export of name '"+e[r+1]+"' not found!");i.push(e[r],o)}}(n,i,a)}return n.mergedAttrs=Jn(n.mergedAttrs,n.attrs),r}function _a(t,e){ngDevMode&&ke(t);var n=t.expandoInstructions;n.push(e.hostBindings),0!==e.hostVars&&n.push(e.hostVars)}function Pa(t,e,n){ngDevMode&&ke(t),ngDevMode&&Nt(t,e[1],"`LView` must be associated with `TView`!");for(var i=0;i<n;i++)e.push(ho),t.blueprint.push(ho),t.data.push(null)}function Ia(t,e){null!==t.hostBindings&&t.hostBindings(1,e)}function ka(t,e,n){ngDevMode&&Rt(t.firstCreatePass,!0,"Expando block should only be generated on first create pass.");var i=20-e.index,r=65535&e.providerIndexes,o=t.data.length-r;(t.expandoInstructions||(t.expandoInstructions=[])).push(i,o,n)}function Da(t,e){ngDevMode&&ke(t),e.flags|=2,(t.components||(t.components=ngDevMode?new qo:[])).push(e.index)}function Ra(t,e,n){if(n){if(e.exportAs)for(var i=0;i<e.exportAs.length;i++)n[e.exportAs[i]]=t;Ee(e)&&(n[""]=t)}}function La(t,e,n){ngDevMode&&Lt(n,t.directiveEnd-t.directiveStart,"Reached the max number of directives"),t.flags|=1,t.directiveStart=e,t.directiveEnd=e+n,t.providerIndexes=e}function Na(t,e,n){t.data.push(n);var i=n.factory||(n.factory=ve(n.type,!0)),r=new Hn(i,Ee(n),null);t.blueprint.push(r),e.push(r)}function ja(t,e,n){var i=ze(e,t),r=ya(n),o=t[10],a=Wa(t,la(t,r,null,n.onPush?64:16,i,e,o,o.createRenderer(i,n)));t[e.index]=a}function Va(t,e,n,i,r,o){ngDevMode&&jt(i,ho,"Incoming value should never be NO_CHANGE."),ngDevMode&&function(t){if(t.toLowerCase().startsWith("on")){var e="Binding to event attribute '"+t+"' is disallowed for security reasons, please use ("+t.slice(2)+")=...";throw new Error(e)}}(n);var a=ze(t,e),s=e[11];if(null==i)ngDevMode&&ngDevMode.rendererRemoveAttribute++,Ve(s)?s.removeAttribute(a,n,o):a.removeAttribute(n);else{ngDevMode&&ngDevMode.rendererSetAttribute++;var c=null==r?ii(i):r(i,t.tagName||"",n);Ve(s)?s.setAttribute(a,n,c,o):o?a.setAttributeNS(o,n,c):a.setAttribute(n,c)}}function Fa(t,e,n,i,r,o){var a=o[e];if(null!==a)for(var s=i.setInput,c=0;c<a.length;){var l=a[c++],u=a[c++],d=a[c++];null!==s?i.setInput(n,d,l,u):n[u]=d,ngDevMode&&Ea(t,ze(r,t),r.type,u,d)}}function Ua(t,e){for(var n=null,i=0;i<e.length;){var r=e[i];if(0!==r)if(5!==r){if("number"==typeof r)break;t.hasOwnProperty(r)&&(null===n&&(n=[]),n.push(r,t[r],e[i+1])),i+=2}else i+=2;else i+=4}return n}var Ba=("undefined"==typeof ngDevMode||ngDevMode)&&at()&&Ur("LContainer");function za(t,e,n,i){ngDevMode&&Ie(e),ngDevMode&&!Ve(e[11])&&Gt(n);var r=new(ngDevMode?Ba:Array)(t,!0,!1,e,null,0,i,n,null,null);return ngDevMode&&Rt(r.length,10,"Should allocate correct number of slots for LContainer header."),ngDevMode&&ko(r,new na(r)),r}function Ga(t,e){ngDevMode&&Rt(Ye(t),!1,"Should be run in update mode");var n=qe(e,t);if(Ze(n)){var i=n[1];80&n[2]?pa(i,n,i.template,n[8]):n[5]>0&&function t(e){for(var n=mo(e);null!==n;n=vo(n))for(var i=10;i<n.length;i++){var r=n[i];if(1024&r[2]){var o=r[1];ngDevMode&&Bt(o,"TView must be allocated"),pa(o,r,o.template,r[8])}else r[5]>0&&t(r)}var a=e[1].components;if(null!==a)for(i=0;i<a.length;i++){var s=qe(a[i],e);Ze(s)&&s[5]>0&&t(s)}}(n)}}function Ha(t,e){ngDevMode&&Rt(Ye(t),!0,"Should be run in creation mode");var n=qe(e,t),i=n[1];!function(t,e){for(var n=e.length;n<t.blueprint.length;n++)e.push(t.blueprint[n])}(i,n),da(i,n,n[8])}function Wa(t,e){return t[13]?t[14][4]=e:t[13]=e,t[14]=e,e}function qa(t){for(;t;){t[2]|=64;var e=fo(t);if(Ce(t)&&!e)return t;t=e}return null}function Ka(t){for(var e=0;e<t.components.length;e++){var n=t.components[e],i=Xe(n),r=i[1];ha(r,i,r.template,n)}}function Xa(t,e,n){var i=e[10];i.begin&&i.begin();try{pa(t,e,t.template,n)}catch(t){throw ns(e,t),t}finally{i.end&&i.end()}}function Ya(t){Ka(t[8])}function Za(t,e,n){ngDevMode&&Bt(e,"View queries function to execute must be defined."),Mn(0),e(t,n)}function Ja(t,e,n,i){for(var r=[],o=4;o<arguments.length;o++)r[o-4]=arguments[o];if(null===t[i]&&(null==e.inputs||!e.inputs[n])){(e.propertyBindings||(e.propertyBindings=[])).push(i);var a=n;r.length>0&&(a+="�"+r.join("�")),t[i]=a}}var Qa=aa;function $a(t){return t[7]||(t[7]=ngDevMode?new Yo:[])}function ts(t){return t.cleanup||(t.cleanup=ngDevMode?new Zo:[])}function es(t,e,n){return(null===t||Ee(t))&&(n=function(t){for(;Array.isArray(t);){if("object"==typeof t[1])return t;t=t[0]}return null}(n[e.index])),n[11]}function ns(t,e){var n=t[9],i=n?n.get(ki,null):null;i&&i.handleError(e)}function is(t,e,n,i,r){for(var o=0;o<n.length;){var a=n[o++],s=n[o++],c=e[a];ngDevMode&&Ht(e,a);var l=t.data[a];null!==l.setInput?l.setInput(c,r,i,s):c[s]=r}}function rs(t,e,n){ngDevMode&&jt(n,ho,"value should not be NO_CHANGE"),ngDevMode&&Ht(t,e+20);var i=Be(e,t);ngDevMode&&Bt(i,"native element should exist"),ngDevMode&&ngDevMode.rendererSetText++;var r=t[11];Ve(r)?r.setValue(i,n):i.textContent=n}
  396. /**
  397. * @license
  398. * Copyright Google Inc. All Rights Reserved.
  399. *
  400. * Use of this source code is governed by an MIT-style license that can be
  401. * found in the LICENSE file at https://angular.io/license
  402. */function os(t,e){ngDevMode&&Ie(e);var n=e[3];return-1===t.index?we(n)?n:null:(ngDevMode&&_e(n),n)}function as(t,e){var n=os(t,e);return n?bs(e[11],n[7]):null}function ss(t,e,n,i,r){if(null!=i){var o=void 0,a=!1;we(i)?o=i:be(i)&&(a=!0,ngDevMode&&Bt(i[0],"HOST must be defined for a component LView"),i=i[0]);var s=Ue(i);ngDevMode&&!Ve(e)&&Gt(s),0===t&&null!==n?null==r?vs(e,n,s):ms(e,n,s,r||null):1===t&&null!==n?ms(e,n,s,r||null):2===t?Ms(e,s,a):3===t&&(ngDevMode&&ngDevMode.rendererDestroyNode++,e.destroyNode(s)),null!=o&&function(t,e,n,i,r){ngDevMode&&_e(n);var o=n[7];o!==Ue(n)&&ss(e,t,i,o,r);for(var a=10;a<n.length;a++){var s=n[a];Cs(s[1],s,t,e,i,o)}}(e,t,o,n,r)}}function cs(t,e){return ngDevMode&&ngDevMode.rendererCreateTextNode++,ngDevMode&&ngDevMode.rendererSetText++,Ve(e)?e.createText(t):e.createTextNode(t)}function ls(t,e,n,i){var r=as(t.node,e);ngDevMode&&Wn(t.node,2),r&&Cs(t,e,e[11],n?1:2,r,i)}function us(t,e){ngDevMode&&_e(t),ngDevMode&&Bt(t[9],"A projected view should belong to a non-empty projected views collection");var n=t[9],i=n.indexOf(e),r=e[3];ngDevMode&&_e(r),1024&e[2]&&$e(r,-1),n.splice(i,1)}function ds(t,e){if(!(t.length<=10)){var n=10+e,i=t[n];if(i){var r=i[17];null!==r&&r!==t&&us(r,i),e>0&&(t[n-1][4]=i[4]);var o=Yt(t,10+e);ls(i[1],i,!1,null);var a=o[19];null!==a&&a.detachView(o[1]),i[3]=null,i[4]=null,i[2]&=-129}return i}}function ps(t,e){if(!(256&e[2])){var n=e[11];Ve(n)&&n.destroyNode&&Cs(t,e,n,3,null,null),function(t){var e=t[13];if(!e)return fs(t[1],t);for(;e;){var n=null;if(be(e))n=e[13];else{ngDevMode&&_e(e);var i=e[10];i&&(n=i)}if(!n){for(;e&&!e[4]&&e!==t;)be(e)&&fs(e[1],e),e=hs(e,t);null===e&&(e=t),be(e)&&fs(e[1],e),n=e&&e[4]}e=n}}(e)}}function hs(t,e){var n;return be(t)&&(n=t[6])&&2===n.type?os(n,t):t[3]===e?null:t[3]}function fs(t,e){if(!(256&e[2])){e[2]&=-129,e[2]|=256,function(t,e){var n;if(null!=t&&null!=(n=t.destroyHooks))for(var i=0;i<n.length;i+=2){var r=e[n[i]];if(!(r instanceof Hn)){var o=n[i+1];if(Array.isArray(o))for(var a=0;a<o.length;a+=2)o[a+1].call(r[o[a]]);else o.call(r)}}}(t,e),function(t,e){var n=t.cleanup;if(null!==n){for(var i=e[7],r=0;r<n.length-1;r+=2)if("string"==typeof n[r]){var o=n[r+1],a="function"==typeof o?o(e):Ue(e[o]),s=i[n[r+2]],c=n[r+3];"boolean"==typeof c?a.removeEventListener(n[r],s,c):c>=0?i[c]():i[-c].unsubscribe(),r+=2}else{var l=i[n[r+1]];n[r].call(l)}e[7]=null}}(t,e);var n=e[6];n&&3===n.type&&Ve(e[11])&&(ngDevMode&&ngDevMode.rendererDestroy++,e[11].destroy());var i=e[17];if(null!==i&&we(e[3])){i!==e[3]&&us(i,e);var r=e[19];null!==r&&r.detachView(t)}}}function gs(t,e,n){for(var i=e.parent;null!=i&&(4===i.type||5===i.type);)i=(e=i).parent;if(null==i){var r=n[6];return 2===r.type?as(r,n):(ngDevMode&&qn(r,3),n[0])}if(e&&5===e.type&&4&e.flags)return ze(e,n).parentNode;if(ngDevMode&&Wn(i,3),2&i.flags){var o=t.data,a=o[o[i.index].directiveStart].encapsulation;if(a!==Tt.ShadowDom&&a!==Tt.Native)return null}return ze(i,n)}function ms(t,e,n,i){ngDevMode&&ngDevMode.rendererInsertBefore++,Ve(t)?t.insertBefore(e,n,i):e.insertBefore(n,i,!0)}function vs(t,e,n){ngDevMode&&ngDevMode.rendererAppendChild++,ngDevMode&&Bt(e,"parent node must be defined"),Ve(t)?t.appendChild(e,n):e.appendChild(n)}function ys(t,e,n,i){null!==i?ms(t,e,n,i):vs(t,e,n)}function bs(t,e){return Ve(t)?t.parentNode(e):e.parentNode}function ws(t,e){if(2===t.type){var n=os(t,e);return null===n?null:xs(n.indexOf(e,10)-10,n)}return 4===t.type||5===t.type?ze(t,e):null}function Ss(t,e,n,i){var r=gs(t,i,e);if(null!=r){var o=e[11],a=ws(i.parent||e[6],e);if(Array.isArray(n))for(var s=0;s<n.length;s++)ys(o,r,n[s],a);else ys(o,r,n,a)}}function xs(t,e){var n=10+t+1;if(n<e.length){var i=e[n],r=i[1].firstChild;if(null!==r)return function t(e,n){if(null!==n){ngDevMode&&qn(n,3,0,4,5,1);var i=n.type;if(3===i)return ze(n,e);if(0===i)return xs(-1,e[n.index]);if(4===i||5===i){var r=n.child;if(null!==r)return t(e,r);var o=e[n.index];return we(o)?xs(-1,o):Ue(o)}var a=e[16],s=a[6],c=fo(a),l=s.projection[n.projection];return null!=l?t(c,l):t(e,n.next)}return null}(i,r)}return e[7]}function Ms(t,e,n){var i=bs(t,e);i&&function(t,e,n,i){Ve(t)?t.removeChild(e,n,i):e.removeChild(n)}(t,i,e,n)}function Es(t,e,n,i,r,o,a){for(;null!=n;){ngDevMode&&Ae(n,i),ngDevMode&&qn(n,0,3,4,1,1,5);var s=i[n.index],c=n.type;a&&0===e&&(s&&Kr(Ue(s),i),n.flags|=4),64!=(64&n.flags)&&(4===c||5===c?(Es(t,e,n.child,i,r,o,!1),ss(e,t,r,s,o)):1===c?Ts(t,e,i,n,r,o):(ngDevMode&&qn(n,3,0),ss(e,t,r,s,o))),n=a?n.projectionNext:n.next}}function Cs(t,e,n,i,r,o){ngDevMode&&Wn(t.node,2),Es(n,i,t.node.child,e,r,o,!1)}function As(t,e,n){Ts(e[11],0,e,n,gs(t,n,e),ws(n.parent||e[6],e))}function Ts(t,e,n,i,r,o){var a=n[16],s=a[6];ngDevMode&&Rt(typeof i.projection,"number","expecting projection index");var c=s.projection[i.projection];if(Array.isArray(c))for(var l=0;l<c.length;l++)ss(e,t,r,c[l],o);else Es(t,e,c,a[3],r,o,!0)}function Os(t,e,n){ngDevMode&&Dt(n,"'newValue' should be a string"),Ve(t)?t.setAttribute(e,"style",n):e.style.cssText=n,ngDevMode&&ngDevMode.rendererSetStyle++}function _s(t,e,n){ngDevMode&&Dt(n,"'newValue' should be a string"),Ve(t)?""===n?t.removeAttribute(e,"class"):t.setAttribute(e,"class",n):e.className=n,ngDevMode&&ngDevMode.rendererSetClassName++}
  403. /**
  404. * @license
  405. * Copyright Google Inc. All Rights Reserved.
  406. *
  407. * Use of this source code is governed by an MIT-style license that can be
  408. * found in the LICENSE file at https://angular.io/license
  409. */
  410. /**
  411. * @license
  412. * Copyright Google Inc. All Rights Reserved.
  413. *
  414. * Use of this source code is governed by an MIT-style license that can be
  415. * found in the LICENSE file at https://angular.io/license
  416. */var Ps,Is,ks,Ds=function(){function t(t,e){this._lView=t,this._cdRefInjectingView=e,this._appRef=null,this._viewContainerRef=null}return Object.defineProperty(t.prototype,"rootNodes",{get:function(){var t=this._lView;if(null==t[0]){var e=t[6];return function t(e,n,r,o,a){for(void 0===a&&(a=!1);null!==r;){ngDevMode&&qn(r,3,0,1,4,5);var s=n[r.index];if(null!==s&&o.push(Ue(s)),we(s))for(var c=10;c<s.length;c++){var l=s[c],u=l[1].firstChild;null!==u&&t(l[1],l,u,o)}var d=r.type;if(4===d||5===d)t(e,n,r.child,o);else if(1===d){var p=n[16],h=p[6],f=r.projection;ngDevMode&&Bt(h.projection,"Components with projection nodes (<ng-content>) must have projection slots defined.");var g=h.projection[f];if(Array.isArray(g))o.push.apply(o,Object(i.h)(g));else{var m=fo(p);ngDevMode&&Bt(m,"Component views should always have a parent view (component's host view)"),t(m[1],m,g,o,!0)}}r=a?r.projectionNext:r.next}return o}
  417. /**
  418. * @license
  419. * Copyright Google Inc. All Rights Reserved.
  420. *
  421. * Use of this source code is governed by an MIT-style license that can be
  422. * found in the LICENSE file at https://angular.io/license
  423. */(t[1],t,e.child,[])}return[]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"context",{get:function(){return this._lView[8]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"destroyed",{get:function(){return 256==(256&this._lView[2])},enumerable:!0,configurable:!0}),t.prototype.destroy=function(){if(this._appRef)this._appRef.detachView(this);else if(this._viewContainerRef){var t=this._viewContainerRef.indexOf(this);t>-1&&this._viewContainerRef.detach(t),this._viewContainerRef=null}ps(this._lView[1],this._lView)},t.prototype.onDestroy=function(t){var e,n,i;e=this._lView[1],i=t,$a(n=this._lView).push(i),e.firstCreatePass&&ts(e).push(n[7].length-1,null)},t.prototype.markForCheck=function(){qa(this._cdRefInjectingView||this._lView)},t.prototype.detach=function(){this._lView[2]&=-129},t.prototype.reattach=function(){this._lView[2]|=128},t.prototype.detectChanges=function(){Xa(this._lView[1],this._lView,this.context)},t.prototype.checkNoChanges=function(){!function(t,e,n){hn(!0);try{Xa(t,e,n)}finally{hn(!1)}}(this._lView[1],this._lView,this.context)},t.prototype.attachToViewContainerRef=function(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t},t.prototype.detachFromAppRef=function(){var t;this._appRef=null,Cs(this._lView[1],t=this._lView,t[11],2,null,null)},t.prototype.attachToAppRef=function(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t},t}(),Rs=function(t){function e(e){var n=t.call(this,e)||this;return n._view=e,n}return Object(i.c)(e,t),e.prototype.detectChanges=function(){Ya(this._view)},e.prototype.checkNoChanges=function(){!function(t){hn(!0);try{Ya(t)}finally{hn(!1)}}(this._view)},Object.defineProperty(e.prototype,"context",{get:function(){return null},enumerable:!0,configurable:!0}),e}(Ds);function Ls(t,e,n){return Ps||(Ps=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Object(i.c)(e,t),e}(t)),new Ps(ze(e,n))}function Ns(t,e,n,r){return Is||(Is=function(t){function e(e,n,i){var r=t.call(this)||this;return r._declarationView=e,r._declarationTContainer=n,r.elementRef=i,r}return Object(i.c)(e,t),e.prototype.createEmbeddedView=function(t){var e=this._declarationTContainer.tViews,n=la(this._declarationView,e,t,16,null,e.node),i=this._declarationView[this._declarationTContainer.index];ngDevMode&&_e(i),n[17]=i;var r=this._declarationView[19];return null!==r&&(n[19]=r.createEmbeddedView(e)),da(e,n,t),new Ds(n)},e}(t)),0===n.type?(ngDevMode&&Bt(n.tViews,"TView must be allocated"),new Is(r,n,Ls(e,n,r))):null}function js(t,e,n,r){var o;ks||(ks=function(t){function n(e,n,i){var r=t.call(this)||this;return r._lContainer=e,r._hostTNode=n,r._hostView=i,r}return Object(i.c)(n,t),Object.defineProperty(n.prototype,"element",{get:function(){return Ls(e,this._hostTNode,this._hostView)},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"injector",{get:function(){return new Ai(this._hostTNode,this._hostView)},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"parentInjector",{get:function(){var t=mi(this._hostTNode,this._hostView),e=ni(t,this._hostView),n=function(t,e,n){if(n.parent&&-1!==n.parent.injectorIndex){for(var i=n.parent.injectorIndex,r=n.parent;null!=r.parent&&i==r.parent.injectorIndex;)r=r.parent;return r}for(var o=ei(t),a=e,s=e[6];o>1;)s=(a=a[15])[6],o--;return s}(t,this._hostView,this._hostTNode);return $n(t)&&null!=n?new Ai(n,e):new Ai(null,this._hostView)},enumerable:!0,configurable:!0}),n.prototype.clear=function(){for(;this.length>0;)this.remove(this.length-1)},n.prototype.get=function(t){return null!==this._lContainer[8]&&this._lContainer[8][t]||null},Object.defineProperty(n.prototype,"length",{get:function(){return this._lContainer.length-10},enumerable:!0,configurable:!0}),n.prototype.createEmbeddedView=function(t,e,n){var i=t.createEmbeddedView(e||{});return this.insert(i,n),i},n.prototype.createComponent=function(t,e,n,i,r){var o=n||this.parentInjector;if(!r&&null==t.ngModule&&o){var a=o.get(_t,null);a&&(r=a)}var s=t.create(o,i,void 0,r);return this.insert(s.hostView,e),s},n.prototype.insert=function(t,e){var n=t._lView,i=n[1];if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");if(this.allocateContainerIfNeeded(),we(n[3])){var r=this.indexOf(t);if(-1!==r)this.detach(r);else{var o=n[3];ngDevMode&&Rt(we(o),!0,"An attached view should have its PARENT point to a container.");var a=new ks(o,o[6],o[3]);a.detach(a.indexOf(t))}}var s=this._adjustIndex(e);return function(t,e,n,i){ngDevMode&&Ie(e),ngDevMode&&_e(n);var r=10+i,o=n.length;i>0&&(n[r-1][4]=e),i<o-10?(e[4]=n[r],Xt(n,10+i,e)):(n.push(e),e[4]=null),e[3]=n;var a=e[17];null!==a&&n!==a&&function(t,e){ngDevMode&&Bt(e,"LView required"),ngDevMode&&_e(t);var n=t[9],i=e[3];ngDevMode&&_e(i);var r=i[3][16];ngDevMode&&Bt(r,"Missing insertedComponentLView");var o=e[16];ngDevMode&&Bt(o,"Missing declaredComponentLView"),o!==r&&(t[2]=!0),null===n?t[9]=[e]:n.push(e)}(a,e);var s=e[19];null!==s&&s.insertView(t),e[2]|=128}(i,n,this._lContainer,s),ls(i,n,!0,xs(s,this._lContainer)),t.attachToViewContainerRef(this),Xt(this._lContainer[8],s,t),t},n.prototype.move=function(t,e){if(t.destroyed)throw new Error("Cannot move a destroyed View in a ViewContainer!");return this.insert(t,e)},n.prototype.indexOf=function(t){var e=this._lContainer[8];return null!==e?e.indexOf(t):-1},n.prototype.remove=function(t){this.allocateContainerIfNeeded();var e=this._adjustIndex(t,-1);!function(t,e){var n=ds(t,e);n&&ps(n[1],n)}(this._lContainer,e),Yt(this._lContainer[8],e)},n.prototype.detach=function(t){this.allocateContainerIfNeeded();var e=this._adjustIndex(t,-1),n=ds(this._lContainer,e);return n&&null!=Yt(this._lContainer[8],e)?new Ds(n):null},n.prototype._adjustIndex=function(t,e){return void 0===e&&(e=0),null==t?this.length+e:(ngDevMode&&(Ut(t,-1,"ViewRef index must be positive, got "+t),Vt(t,this.length+1+e,"index")),t)},n.prototype.allocateContainerIfNeeded=function(){null===this._lContainer[8]&&(this._lContainer[8]=[])},n}(t)),ngDevMode&&qn(n,0,3,4);var a=r[n.index];if(we(a))o=a;else{var s=void 0;if(4===n.type)s=Ue(a);else if(ngDevMode&&ngDevMode.rendererCreateComment++,s=r[11].createComment(ngDevMode?"container":""),Ce(r)){var c=r[11],l=ze(n,r);ms(c,bs(c,l),s,function(t,e){return Ve(t)?t.nextSibling(e):e.nextSibling}(c,l))}else Ss(r[1],r,s,n);r[n.index]=o=za(a,r,s,n),Wa(r,o)}return new ks(o,n,r)}function Vs(t){return void 0===t&&(t=!1),function(t,e,n){if(!n&&xe(t)){var i=qe(t.index,e);return new Ds(i,i)}if(3===t.type||0===t.type||4===t.type||5===t.type){var r=e[16];return new Ds(r,e)}return null}(cn(),on(),t)}
  424. /**
  425. * @license
  426. * Copyright Google Inc. All Rights Reserved.
  427. *
  428. * Use of this source code is governed by an MIT-style license that can be
  429. * found in the LICENSE file at https://angular.io/license
  430. */var Fs=function(){function t(){}return t.__NG_ELEMENT_ID__=function(){return Bs()},t}(),Us=Vs,Bs=Us,zs=Function;function Gs(t){return"function"==typeof t}
  431. /**
  432. * @license
  433. * Copyright Google Inc. All Rights Reserved.
  434. *
  435. * Use of this source code is governed by an MIT-style license that can be
  436. * found in the LICENSE file at https://angular.io/license
  437. */var Hs=/^function\s+\S+\(\)\s*{[\s\S]+\.apply\(this,\s*arguments\)/,Ws=/^class\s+[A-Za-z\d$_]*\s*extends\s+[^{]+{/,qs=/^class\s+[A-Za-z\d$_]*\s*extends\s+[^{]+{[\s\S]*constructor\s*\(/,Ks=/^class\s+[A-Za-z\d$_]*\s*extends\s+[^{]+{[\s\S]*constructor\s*\(\)\s*{\s*super\(\.\.\.arguments\)/,Xs=function(){function t(t){this._reflect=t||J.Reflect}return t.prototype.isReflectionEnabled=function(){return!0},t.prototype.factory=function(t){return function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return new(t.bind.apply(t,Object(i.h)([void 0],e)))}},t.prototype._zipTypesAndAnnotations=function(t,e){var n;n=Zt(void 0===t?e.length:t.length);for(var i=0;i<n.length;i++)void 0===t?n[i]=[]:t[i]&&t[i]!=Object?n[i]=[t[i]]:n[i]=[],e&&null!=e[i]&&(n[i]=n[i].concat(e[i]));return n},t.prototype._ownParameters=function(t,e){if(function(t){return Hs.test(t)||Ks.test(t)||Ws.test(t)&&!qs.test(t)}(t.toString()))return null;if(t.parameters&&t.parameters!==e.parameters)return t.parameters;var n=t.ctorParameters;if(n&&n!==e.ctorParameters){var i="function"==typeof n?n():n,r=i.map(function(t){return t&&t.type}),o=i.map(function(t){return t&&Ys(t.decorators)});return this._zipTypesAndAnnotations(r,o)}var a=t.hasOwnProperty(d)&&t[d],s=this._reflect&&this._reflect.getOwnMetadata&&this._reflect.getOwnMetadata("design:paramtypes",t);return s||a?this._zipTypesAndAnnotations(s,a):Zt(t.length)},t.prototype.parameters=function(t){if(!Gs(t))return[];var e=Zs(t),n=this._ownParameters(t,e);return n||e===Object||(n=this.parameters(e)),n||[]},t.prototype._ownAnnotations=function(t,e){if(t.annotations&&t.annotations!==e.annotations){var n=t.annotations;return"function"==typeof n&&n.annotations&&(n=n.annotations),n}return t.decorators&&t.decorators!==e.decorators?Ys(t.decorators):t.hasOwnProperty(u)?t[u]:null},t.prototype.annotations=function(t){if(!Gs(t))return[];var e=Zs(t),n=this._ownAnnotations(t,e)||[];return(e!==Object?this.annotations(e):[]).concat(n)},t.prototype._ownPropMetadata=function(t,e){if(t.propMetadata&&t.propMetadata!==e.propMetadata){var n=t.propMetadata;return"function"==typeof n&&n.propMetadata&&(n=n.propMetadata),n}if(t.propDecorators&&t.propDecorators!==e.propDecorators){var i=t.propDecorators,r={};return Object.keys(i).forEach(function(t){r[t]=Ys(i[t])}),r}return t.hasOwnProperty(p)?t[p]:null},t.prototype.propMetadata=function(t){if(!Gs(t))return{};var e=Zs(t),n={};if(e!==Object){var r=this.propMetadata(e);Object.keys(r).forEach(function(t){n[t]=r[t]})}var o=this._ownPropMetadata(t,e);return o&&Object.keys(o).forEach(function(t){var e=[];n.hasOwnProperty(t)&&e.push.apply(e,Object(i.h)(n[t])),e.push.apply(e,Object(i.h)(o[t])),n[t]=e}),n},t.prototype.ownPropMetadata=function(t){return Gs(t)&&this._ownPropMetadata(t,Zs(t))||{}},t.prototype.hasLifecycleHook=function(t,e){return t instanceof zs&&e in t.prototype},t.prototype.guards=function(t){return{}},t.prototype.getter=function(t){return new Function("o","return o."+t+";")},t.prototype.setter=function(t){return new Function("o","v","return o."+t+" = v;")},t.prototype.method=function(t){return new Function("o","args","if (!o."+t+") throw new Error('\""+t+"\" is undefined');\n return o."+t+".apply(o, args);")},t.prototype.importUri=function(t){return"object"==typeof t&&t.filePath?t.filePath:"./"+F(t)},t.prototype.resourceUri=function(t){return"./"+F(t)},t.prototype.resolveIdentifier=function(t,e,n,i){return i},t.prototype.resolveEnum=function(t,e){return t[e]},t}();function Ys(t){return t?t.map(function(t){var e=t.type.annotationCls,n=t.args?t.args:[];return new(e.bind.apply(e,Object(i.h)([void 0],n)))}):[]}function Zs(t){var e=t.prototype?Object.getPrototypeOf(t.prototype):null;return(e?e.constructor:null)||Object}
  438. /**
  439. * @license
  440. * Copyright Google Inc. All Rights Reserved.
  441. *
  442. * Use of this source code is governed by an MIT-style license that can be
  443. * found in the LICENSE file at https://angular.io/license
  444. */var Js=null;function Qs(){return Js=Js||new Xs}function $s(t){return tc(Qs().parameters(t))}function tc(t){var e=Q();return t.map(function(t){return function(t,e){var n={token:null,host:!1,optional:!1,resolved:t.R3ResolvedDependencyType.Token,self:!1,skipSelf:!1};function i(e){n.resolved=t.R3ResolvedDependencyType.Token,n.token=e}if(Array.isArray(e)&&e.length>0)for(var r=0;r<e.length;r++){var o=e[r];if(void 0!==o){var a=Object.getPrototypeOf(o);if(o instanceof w||"Optional"===a.ngMetadataName)n.optional=!0;else if(o instanceof x||"SkipSelf"===a.ngMetadataName)n.skipSelf=!0;else if(o instanceof S||"Self"===a.ngMetadataName)n.self=!0;else if(o instanceof M||"Host"===a.ngMetadataName)n.host=!0;else if(o instanceof b)n.token=o.token;else if(o instanceof C){if(void 0===o.attributeName)throw new Error("Attribute name must be defined.");n.token=o.attributeName,n.resolved=t.R3ResolvedDependencyType.Attribute}else o===Fs?(n.token=o,n.resolved=t.R3ResolvedDependencyType.ChangeDetectorRef):i(o)}}else void 0===e||Array.isArray(e)&&0===e.length?(n.token=void 0,n.resolved=W.Invalid):i(e);return n}
  445. /**
  446. * @license
  447. * Copyright Google Inc. All Rights Reserved.
  448. *
  449. * Use of this source code is governed by an MIT-style license that can be
  450. * found in the LICENSE file at https://angular.io/license
  451. */(e,t)})}var ec=A({provide:String,useValue:A});function nc(t){return void 0!==t.useClass}function ic(t){return void 0!==t.useFactory}function rc(t,e){var n=e||{providedIn:null},i={name:t.name,type:t,typeArgumentCount:0,providedIn:n.providedIn,userDeps:void 0};return(nc(n)||ic(n))&&void 0!==n.deps&&(i.userDeps=tc(n.deps)),nc(n)?i.useClass=G(n.useClass):ec in n?i.useValue=G(n.useValue):ic(n)?i.useFactory=n.useFactory:void 0!==n.useExisting&&(i.useExisting=G(n.useExisting)),i}
  452. /**
  453. * @license
  454. * Copyright Google Inc. All Rights Reserved.
  455. *
  456. * Use of this source code is governed by an MIT-style license that can be
  457. * found in the LICENSE file at https://angular.io/license
  458. */A({provide:String,useValue:A});
  459. /**
  460. * @license
  461. * Copyright Google Inc. All Rights Reserved.
  462. *
  463. * Use of this source code is governed by an MIT-style license that can be
  464. * found in the LICENSE file at https://angular.io/license
  465. */
  466. var oc=h("Injectable",void 0,void 0,void 0,function(t,e){return sc(t,e)}),ac=function(t,e){var n=null,i=null;t.hasOwnProperty(R)||(Object.defineProperty(t,R,{get:function(){return null===n&&(n=Q().compileInjectable(Ot,"ng:///"+t.name+"/ɵprov.js",rc(t,e))),n}}),t.hasOwnProperty(N)||(t[N]=function(){return t[R]})),t.hasOwnProperty(rt)||Object.defineProperty(t,rt,{get:function(){if(null===i){var n=rc(t,e),r=Q();i=r.compileFactory(Ot,"ng:///"+t.name+"/ɵfac.js",{name:n.name,type:n.type,typeArgumentCount:n.typeArgumentCount,deps:$s(t),injectFn:"inject",target:r.R3FactoryTarget.Injectable})}return i},configurable:!0})},sc=ac,cc=new ct("Set Injector scope."),lc={},uc={},dc=[],pc=void 0;function hc(){return void 0===pc&&(pc=new xt),pc}function fc(t,e,n,i){void 0===e&&(e=null),void 0===n&&(n=null);var r=gc(t,e,n,i);return r._resolveInjectorDefTypes(),r}function gc(t,e,n,i){return void 0===e&&(e=null),void 0===n&&(n=null),new mc(t,n,e||hc(),i)}var mc=function(){function t(t,e,n,i){var r=this;void 0===i&&(i=null),this.parent=n,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var o=[];e&&Kt(e,function(n){return r.processProvider(n,t,e)}),Kt([t],function(t){return r.processInjectorType(t,[],o)}),this.records.set(lt,bc(void 0,this));var a=this.records.get(cc);this.scope=null!=a?a.value:null,this.source=i||("object"==typeof t?null:F(t))}return Object.defineProperty(t.prototype,"destroyed",{get:function(){return this._destroyed},enumerable:!0,configurable:!0}),t.prototype.destroy=function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(function(t){return t.ngOnDestroy()})}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}},t.prototype.get=function(t,e,n){void 0===e&&(e=ut),void 0===n&&(n=v.Default),this.assertNotDestroyed();var i,r=ft(this);try{if(!(n&v.SkipSelf)){var o=this.records.get(t);if(void 0===o){var a=("function"==typeof(i=t)||"object"==typeof i&&i instanceof ct)&&I(t);o=a&&this.injectableDefInScope(a)?bc(vc(t),lc):null,this.records.set(t,o)}if(null!=o)return this.hydrate(t,o)}var s=n&v.Self?hc():this.parent;return e=n&v.Optional&&e===ut?null:e,s.get(t,e)}catch(e){if("NullInjectorError"===e.name){if((e.ngTempTokenPath=e.ngTempTokenPath||[]).unshift(F(t)),r)throw e;return Mt(e,t,"R3InjectorError",this.source)}throw e}finally{ft(r)}},t.prototype._resolveInjectorDefTypes=function(){var t=this;this.injectorDefTypes.forEach(function(e){return t.get(e)})},t.prototype.toString=function(){var t=[];return this.records.forEach(function(e,n){return t.push(F(n))}),"R3Injector["+t.join(", ")+"]"},t.prototype.assertNotDestroyed=function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")},t.prototype.processInjectorType=function(t,e,n){var i=this;if(!(t=G(t)))return!1;var r=D(t),o=null==r&&t.ngModule||void 0,a=void 0===o?t:o;if(ngDevMode&&-1!==e.indexOf(a)){var s=F(a);throw new Error("Circular dependency in DI detected for type "+s+". Dependency path: "+e.map(function(t){return F(t)}).join(" > ")+" > "+s+".")}var c=-1!==n.indexOf(a);if(void 0!==o&&(r=D(o)),null==r)return!1;if(null!=r.imports&&!c){var l;ngDevMode&&e.push(a),n.push(a);try{Kt(r.imports,function(t){i.processInjectorType(t,e,n)&&(void 0===l&&(l=[]),l.push(t))})}finally{ngDevMode&&e.pop()}if(void 0!==l)for(var u=function(t){var e=l[t],n=e.ngModule,r=e.providers;Kt(r,function(t){return i.processProvider(t,n,r||dc)})},d=0;d<l.length;d++)u(d)}this.injectorDefTypes.add(a),this.records.set(a,bc(r.factory,lc));var p=r.providers;if(null!=p&&!c){var h=t;Kt(p,function(t){return i.processProvider(t,h,p)})}return void 0!==o&&void 0!==t.providers},t.prototype.processProvider=function(t,e,n){var i=Sc(t=G(t))?t:G(t&&t.provide),r=function(t,e,n){return wc(t)?bc(void 0,t.useValue):bc(yc(t,e,n),lc)}(t,e,n);if(Sc(t)||!0!==t.multi){var o=this.records.get(i);o&&void 0!==o.multi&&$r()}else{var a=this.records.get(i);a?void 0===a.multi&&$r():((a=bc(void 0,lc,!0)).factory=function(){return St(a.multi)},this.records.set(i,a)),i=t,a.multi.push(t)}this.records.set(i,r)},t.prototype.hydrate=function(t,e){var n;return e.value===uc?function(t){throw new Error("Cannot instantiate cyclic dependency! "+t)}(F(t)):e.value===lc&&(e.value=uc,e.value=e.factory()),"object"==typeof e.value&&e.value&&null!==(n=e.value)&&"object"==typeof n&&"function"==typeof n.ngOnDestroy&&this.onDestroy.add(e.value),e.value},t.prototype.injectableDefInScope=function(t){return!!t.providedIn&&("string"==typeof t.providedIn?"any"===t.providedIn||t.providedIn===this.scope:this.injectorDefTypes.has(t.providedIn))},t}();function vc(t){var e=I(t),n=null!==e?e.factory:ve(t);if(null!==n)return n;var i=D(t);if(null!==i)return i.factory;if(t instanceof ct)throw new Error("Token "+F(t)+" is missing a ɵprov definition.");if(t instanceof Function)return function(t){var e=t.length;if(e>0){var n=Zt(e,"?");throw new Error("Can't resolve all parameters for "+F(t)+": ("+n.join(", ")+").")}var i=function(t){var e=t&&(t[R]||t[j]||t[N]&&t[N]());if(e){var n=function(t){if(t.hasOwnProperty("name"))return t.name;var e=(""+t).match(/^function\s*([^\s(]+)/);return null===e?"":e[1]}(t);return console.warn('DEPRECATED: DI is instantiating a token "'+n+'" that inherits its @Injectable decorator but does not provide one itself.\nThis will become an error in v10. Please add @Injectable() to the "'+n+'" class.'),e}return null}(t);return null!==i?function(){return i.factory(t)}:function(){return new t}}(t);throw new Error("unreachable")}function yc(t,e,n){var r,o=void 0;if(Sc(t)){var a=G(t);return ve(a)||vc(a)}if(wc(t))o=function(){return G(t.useValue)};else if((r=t)&&r.useFactory)o=function(){return t.useFactory.apply(t,Object(i.h)(St(t.deps||[])))};else if(function(t){return!(!t||!t.useExisting)}(t))o=function(){return vt(G(t.useExisting))};else{var s=G(t&&(t.useClass||t.provide));if(s||function(t,e,n){var i="";throw t&&e&&(i=" - only instances of Provider and Type are allowed, got: ["+e.map(function(t){return t==n?"?"+n+"?":"..."}).join(", ")+"]"),new Error("Invalid provider for the NgModule '"+F(t)+"'"+i)}(e,n,t),!function(t){return!!t.deps}(t))return ve(s)||vc(s);o=function(){return new(s.bind.apply(s,Object(i.h)([void 0],St(t.deps))))}}return o}function bc(t,e,n){return void 0===n&&(n=!1),{factory:t,value:e,multi:n?[]:void 0}}function wc(t){return null!==t&&"object"==typeof t&&pt in t}function Sc(t){return"function"==typeof t}function xc(t,e,n){return fc({name:n},e,t,n)}var Mc=xc,Ec=function(){function t(){}return t.create=function(t,e){return Array.isArray(t)?Mc(t,e,""):Mc(t.providers,t.parent,t.name||"")},t.THROW_IF_NOT_FOUND=ut,t.NULL=new xt,t.ɵprov=O({token:t,providedIn:"any",factory:function(){return vt(lt)}}),t.__NG_ELEMENT_ID__=-1,t}(),Cc=function(t){return t},Ac=[],Tc=Cc,Oc=function(){return Array.prototype.slice.call(arguments)};function _c(t){var e=function(t){var e=Ac,n=t.deps;if(n&&n.length){e=[];for(var i=0;i<n.length;i++){var r=6,o=G(n[i]);if(Array.isArray(o))for(var a=0,s=o;a<s.length;a++){var c=s[a];c instanceof w||c==w?r|=1:c instanceof x||c==x?r&=-3:c instanceof S||c==S?r&=-5:o=c instanceof b?c.token:G(c)}e.push({token:o,options:r})}}else if(t.useExisting)e=[{token:o=G(t.useExisting),options:6}];else if(!(n||pt in t))throw kc("'deps' required",t);return e}(t),n=Cc,i=Ac,r=!1,o=G(t.provide);if(pt in t)i=t.useValue;else if(t.useFactory)n=t.useFactory;else if(t.useExisting);else if(t.useClass)r=!0,n=G(t.useClass);else{if("function"!=typeof o)throw kc("StaticProvider does not have [useValue|useFactory|useExisting|useClass] or [provide] is not newable",t);r=!0,n=o}return{deps:e,fn:n,useNew:r,value:i}}function Pc(t){return kc("Cannot mix multi providers and regular providers",t)}function Ic(t,e,n,r,o,a){try{return function(t,e,n,r,o,a){var s,c;if(!e||a&v.SkipSelf)c=a&v.Self?a&v.Optional?Ec.NULL.get(t,void 0!==o?o:null):Ec.NULL.get(t,o):r.get(t,o,v.Default);else{if((c=e.value)==Tc)throw Error("ɵCircular dependency");if(c===Ac){e.value=Tc;var l=e.useNew,u=e.fn,d=e.deps,p=Ac;if(d.length){p=[];for(var h=0;h<d.length;h++){var f=d[h],g=f.options,m=2&g?n.get(f.token):void 0;p.push(Ic(f.token,m,n,m||4&g?r:Ec.NULL,1&g?null:Ec.THROW_IF_NOT_FOUND,v.Default))}}e.value=c=l?new((s=u).bind.apply(s,Object(i.h)([void 0],p))):u.apply(void 0,p)}}return c}(t,e,n,r,o,a)}catch(n){throw n instanceof Error||(n=new Error(n)),(n.ngTempTokenPath=n.ngTempTokenPath||[]).unshift(t),e&&e.value==Tc&&(e.value=Ac),n}}function kc(t,e){return new Error(Et(t,e,"StaticInjectorError"))}
  467. /**
  468. * @license
  469. * Copyright Google Inc. All Rights Reserved.
  470. *
  471. * Use of this source code is governed by an MIT-style license that can be
  472. * found in the LICENSE file at https://angular.io/license
  473. */function Dc(t){return t.length>1?" ("+function(t){for(var e=[],n=0;n<t.length;++n){if(e.indexOf(t[n])>-1)return e.push(t[n]),e;e.push(t[n])}return e}(t.slice().reverse()).map(function(t){return F(t.token)}).join(" -> ")+")":""}function Rc(t,e,n,i){var r=[e],o=n(r),a=i?function(t,e){var n=o+" caused by: "+(e instanceof Error?e.message:e),i=Error(n);return i.ngOriginalError=e,i}
  474. /**
  475. * @license
  476. * Copyright Google Inc. All Rights Reserved.
  477. *
  478. * Use of this source code is governed by an MIT-style license that can be
  479. * found in the LICENSE file at https://angular.io/license
  480. */(0,i):Error(o);return a.addKey=Lc,a.keys=r,a.injectors=[t],a.constructResolvingMessage=n,a.ngOriginalError=i,a}function Lc(t,e){this.injectors.push(t),this.keys.push(e),this.message=this.constructResolvingMessage(this.keys)}function Nc(t,e){for(var n=[],i=0,r=e.length;i<r;i++){var o=e[i];o&&0!=o.length?n.push(o.map(F).join(" ")):n.push("?")}return Error("Cannot resolve all parameters for '"+F(t)+"'("+n.join(", ")+"). Make sure that all the parameters are decorated with Inject or have valid type annotations and that '"+F(t)+"' is decorated with Injectable.")}
  481. /**
  482. * @license
  483. * Copyright Google Inc. All Rights Reserved.
  484. *
  485. * Use of this source code is governed by an MIT-style license that can be
  486. * found in the LICENSE file at https://angular.io/license
  487. */!function(){function t(t,e,n){void 0===e&&(e=Ec.NULL),void 0===n&&(n=null),this.parent=e,this.source=n;var i=this._records=new Map;i.set(Ec,{token:Ec,fn:Cc,deps:Ac,value:this,useNew:!1}),i.set(lt,{token:lt,fn:Cc,deps:Ac,value:this,useNew:!1}),this.scope=function t(e,n){var i=null;if(n)if(n=G(n),Array.isArray(n))for(var r=0;r<n.length;r++)i=t(e,n[r])||i;else{if("function"==typeof n)throw kc("Function/Class not supported",n);if(!n||"object"!=typeof n||!n.provide)throw kc("Unexpected provider",n);var o=G(n.provide),a=_c(n);if(!0===n.multi){var s=e.get(o);if(s){if(s.fn!==Oc)throw Pc(o)}else e.set(o,s={token:n.provide,deps:[],useNew:!1,fn:Oc,value:Ac});o=n,s.deps.push({token:o,options:6})}var c=e.get(o);if(c&&c.fn==Oc)throw Pc(o);o===cc&&(i=a.value),e.set(o,a)}return i}(i,t)}t.prototype.get=function(t,e,n){void 0===n&&(n=v.Default);var i=this._records,r=i.get(t);if(void 0===r){var o=I(t);if(o){var a=o&&o.providedIn;("any"===a||null!=a&&a===this.scope)&&i.set(t,r=_c({provide:t,useFactory:o.factory,deps:Ac}))}void 0===r&&i.set(t,null)}var s=ft(this);try{return Ic(t,r,i,this.parent,e,n)}catch(e){return Mt(e,t,"StaticInjectorError",this.source)}finally{ft(s)}},t.prototype.toString=function(){var t=[];return this._records.forEach(function(e,n){return t.push(F(n))}),"StaticInjector["+t.join(", ")+"]"}}();var jc=function(){function t(t,e){if(this.token=t,this.id=e,!t)throw new Error("Token must be defined!");this.displayName=F(this.token)}return t.get=function(t){return Vc.get(G(t))},Object.defineProperty(t,"numberOfKeys",{get:function(){return Vc.numberOfKeys},enumerable:!0,configurable:!0}),t}(),Vc=new(function(){function t(){this._allKeys=new Map}return t.prototype.get=function(t){if(t instanceof jc)return t;if(this._allKeys.has(t))return this._allKeys.get(t);var e=new jc(t,jc.numberOfKeys);return this._allKeys.set(t,e),e},Object.defineProperty(t.prototype,"numberOfKeys",{get:function(){return this._allKeys.size},enumerable:!0,configurable:!0}),t}()),Fc=new(function(){function t(t){this.reflectionCapabilities=t}return t.prototype.updateCapabilities=function(t){this.reflectionCapabilities=t},t.prototype.factory=function(t){return this.reflectionCapabilities.factory(t)},t.prototype.parameters=function(t){return this.reflectionCapabilities.parameters(t)},t.prototype.annotations=function(t){return this.reflectionCapabilities.annotations(t)},t.prototype.propMetadata=function(t){return this.reflectionCapabilities.propMetadata(t)},t.prototype.hasLifecycleHook=function(t,e){return this.reflectionCapabilities.hasLifecycleHook(t,e)},t.prototype.getter=function(t){return this.reflectionCapabilities.getter(t)},t.prototype.setter=function(t){return this.reflectionCapabilities.setter(t)},t.prototype.method=function(t){return this.reflectionCapabilities.method(t)},t.prototype.importUri=function(t){return this.reflectionCapabilities.importUri(t)},t.prototype.resourceUri=function(t){return this.reflectionCapabilities.resourceUri(t)},t.prototype.resolveIdentifier=function(t,e,n,i){return this.reflectionCapabilities.resolveIdentifier(t,e,n,i)},t.prototype.resolveEnum=function(t,e){return this.reflectionCapabilities.resolveEnum(t,e)},t}())(new Xs),Uc=function(){function t(t,e,n){this.key=t,this.optional=e,this.visibility=n}return t.fromKey=function(e){return new t(e,!1,null)},t}(),Bc=[],zc=function(t,e,n){this.key=t,this.resolvedFactories=e,this.multiProvider=n,this.resolvedFactory=this.resolvedFactories[0]},Gc=function(t,e){this.factory=t,this.dependencies=e};function Hc(t){return new zc(jc.get(t.provide),[function(t){var e,n;if(t.useClass){var i=G(t.useClass);e=Fc.factory(i),n=qc(i)}else t.useExisting?(e=function(t){return t},n=[Uc.fromKey(jc.get(t.useExisting))]):t.useFactory?(e=t.useFactory,n=function(t,e){if(e){var n=e.map(function(t){return[t]});return e.map(function(e){return Kc(t,e,n)})}return qc(t)}(t.useFactory,t.deps)):(e=function(){return t.useValue},n=Bc);return new Gc(e,n)}(t)],t.multi||!1)}function Wc(t){var e=function(t,e){for(var n=0;n<t.length;n++){var i=t[n],r=e.get(i.key.id);if(r){if(i.multiProvider!==r.multiProvider)throw Error("Cannot mix multi providers and regular providers, got: "+r+" "+i);if(i.multiProvider)for(var o=0;o<i.resolvedFactories.length;o++)r.resolvedFactories.push(i.resolvedFactories[o]);else e.set(i.key.id,i)}else{var a;a=i.multiProvider?new zc(i.key,i.resolvedFactories.slice(),i.multiProvider):i,e.set(i.key.id,a)}}return e}(function t(e,n){return e.forEach(function(e){if(e instanceof zs)n.push({provide:e,useClass:e});else if(e&&"object"==typeof e&&void 0!==e.provide)n.push(e);else{if(!Array.isArray(e))throw Error("Invalid provider - only instances of Provider and Type are allowed, got: "+e);t(e,n)}}),n}(t,[]).map(Hc),new Map);return Array.from(e.values())}function qc(t){var e=Fc.parameters(t);if(!e)return[];if(e.some(function(t){return null==t}))throw Nc(t,e);return e.map(function(n){return Kc(t,n,e)})}function Kc(t,e,n){var i=null,r=!1;if(!Array.isArray(e))return Xc(e instanceof b?e.token:e,r,null);for(var o=null,a=0;a<e.length;++a){var s=e[a];s instanceof zs?i=s:s instanceof b?i=s.token:s instanceof w?r=!0:s instanceof S||s instanceof x?o=s:s instanceof ct&&(i=s)}if(null!=(i=G(i)))return Xc(i,r,o);throw Nc(t,n)}function Xc(t,e,n){return new Uc(jc.get(t),e,n)}
  488. /**
  489. * @license
  490. * Copyright Google Inc. All Rights Reserved.
  491. *
  492. * Use of this source code is governed by an MIT-style license that can be
  493. * found in the LICENSE file at https://angular.io/license
  494. */var Yc={},Zc=function(){function t(){}return t.resolve=function(t){return Wc(t)},t.resolveAndCreate=function(e,n){var i=t.resolve(e);return t.fromResolvedProviders(i,n)},t.fromResolvedProviders=function(t,e){return new Jc(t,e)},t}(),Jc=function(){function t(t,e){this._constructionCounter=0,this._providers=t,this.parent=e||null;var n=t.length;this.keyIds=[],this.objs=[];for(var i=0;i<n;i++)this.keyIds[i]=t[i].key.id,this.objs[i]=Yc}return t.prototype.get=function(t,e){return void 0===e&&(e=ut),this._getByKey(jc.get(t),null,e)},t.prototype.resolveAndCreateChild=function(t){var e=Zc.resolve(t);return this.createChildFromResolved(e)},t.prototype.createChildFromResolved=function(e){var n=new t(e);return n.parent=this,n},t.prototype.resolveAndInstantiate=function(t){return this.instantiateResolved(Zc.resolve([t])[0])},t.prototype.instantiateResolved=function(t){return this._instantiateProvider(t)},t.prototype.getProviderAtIndex=function(t){if(t<0||t>=this._providers.length)throw function(t){return Error("Index "+t+" is out-of-bounds.")}(t);return this._providers[t]},t.prototype._new=function(t){if(this._constructionCounter++>this._getMaxNumberOfObjects())throw this,Rc(this,t.key,function(t){return"Cannot instantiate cyclic dependency!"+Dc(t)});return this._instantiateProvider(t)},t.prototype._getMaxNumberOfObjects=function(){return this.objs.length},t.prototype._instantiateProvider=function(t){if(t.multiProvider){for(var e=[],n=0;n<t.resolvedFactories.length;++n)e[n]=this._instantiate(t,t.resolvedFactories[n]);return e}return this._instantiate(t,t.resolvedFactories[0])},t.prototype._instantiate=function(t,e){var n,r,o,a=this,s=e.factory;try{n=e.dependencies.map(function(t){return a._getByReflectiveDependency(t)})}catch(e){throw e.addKey&&e.addKey(this,t.key),e}try{r=s.apply(void 0,Object(i.h)(n))}catch(e){throw this,o=e,e.stack,Rc(this,t.key,function(t){var e=F(t[0].token);return o.message+": Error during instantiation of "+e+"!"+Dc(t)+"."},o)}return r},t.prototype._getByReflectiveDependency=function(t){return this._getByKey(t.key,t.visibility,t.optional?null:ut)},t.prototype._getByKey=function(e,n,i){return e===t.INJECTOR_KEY?this:n instanceof S?this._getByKeySelf(e,i):this._getByKeyDefault(e,i,n)},t.prototype._getObjByKeyId=function(t){for(var e=0;e<this.keyIds.length;e++)if(this.keyIds[e]===t)return this.objs[e]===Yc&&(this.objs[e]=this._new(this._providers[e])),this.objs[e];return Yc},t.prototype._throwOrNull=function(t,e){if(e!==ut)return e;throw function(t,e){return Rc(t,e,function(t){return"No provider for "+F(t[0].token)+"!"+Dc(t)})}(this,t)},t.prototype._getByKeySelf=function(t,e){var n=this._getObjByKeyId(t.id);return n!==Yc?n:this._throwOrNull(t,e)},t.prototype._getByKeyDefault=function(e,n,i){var r;for(r=i instanceof x?this.parent:this;r instanceof t;){var o=r,a=o._getObjByKeyId(e.id);if(a!==Yc)return a;r=o.parent}return null!==r?r.get(e.token,n):this._throwOrNull(e,n)},Object.defineProperty(t.prototype,"displayName",{get:function(){return"ReflectiveInjector(providers: ["+function(t,e){for(var n=[],i=0;i<t._providers.length;++i)n[i]=e(t.getProviderAtIndex(i));return n}
  495. /**
  496. * @license
  497. * Copyright Google Inc. All Rights Reserved.
  498. *
  499. * Use of this source code is governed by an MIT-style license that can be
  500. * found in the LICENSE file at https://angular.io/license
  501. */
  502. /**
  503. * @license
  504. * Copyright Google Inc. All Rights Reserved.
  505. *
  506. * Use of this source code is governed by an MIT-style license that can be
  507. * found in the LICENSE file at https://angular.io/license
  508. */
  509. /**
  510. * @license
  511. * Copyright Google Inc. All Rights Reserved.
  512. *
  513. * Use of this source code is governed by an MIT-style license that can be
  514. * found in the LICENSE file at https://angular.io/license
  515. */(this,function(t){return' "'+t.key.displayName+'" '}).join(", ")+"])"},enumerable:!0,configurable:!0}),t.prototype.toString=function(){return this.displayName},t.INJECTOR_KEY=jc.get(Ec),t}(),Qc=new ct("AnalyzeForEntryComponents"),$c=function(){},tl=m("ContentChildren",function(t,e){return void 0===e&&(e={}),Object(i.a)({selector:t,first:!1,isViewQuery:!1,descendants:!1},e)},$c),el=m("ContentChild",function(t,e){return void 0===e&&(e={}),Object(i.a)({selector:t,first:!0,isViewQuery:!1,descendants:!0},e)},$c),nl=m("ViewChildren",function(t,e){return void 0===e&&(e={}),Object(i.a)({selector:t,first:!1,isViewQuery:!0,descendants:!0},e)},$c),il=m("ViewChild",function(t,e){return Object(i.a)({selector:t,first:!0,isViewQuery:!0,descendants:!0},e)},$c);
  516. /**
  517. * @license
  518. * Copyright Google Inc. All Rights Reserved.
  519. *
  520. * Use of this source code is governed by an MIT-style license that can be
  521. * found in the LICENSE file at https://angular.io/license
  522. */
  523. function rl(t){var e=[],n=new Map;function i(e){var i=n.get(e);if(!i){var r=t(e);n.set(e,i=r.then(ll))}return i}return ol.forEach(function(t,n){var r=[];t.templateUrl&&r.push(i(t.templateUrl).then(function(e){t.template=e}));var o=t.styleUrls,a=t.styles||(t.styles=[]),s=t.styles.length;o&&o.forEach(function(e,n){a.push(""),r.push(i(e).then(function(i){a[s+n]=i,o.splice(o.indexOf(e),1),0==o.length&&(t.styleUrls=void 0)}))});var c=Promise.all(r).then(function(){return t=n,void al.delete(t);var t;
  524. /**
  525. * @license
  526. * Copyright Google Inc. All Rights Reserved.
  527. *
  528. * Use of this source code is governed by an MIT-style license that can be
  529. * found in the LICENSE file at https://angular.io/license
  530. */});e.push(c)}),cl(),Promise.all(e).then(function(){})}var ol=new Map,al=new Set;function sl(t){return!!(t.templateUrl&&!t.hasOwnProperty("template")||t.styleUrls&&t.styleUrls.length)}function cl(){var t=ol;return ol=new Map,t}function ll(t){return"string"==typeof t?t:t.text()}function ul(t,e,n){ngDevMode&&ke(an(),"Expecting to be called in first template pass only");var i=n?t.styles:null,r=n?t.classes:null,o=0;if(null!==e)for(var a=0;a<e.length;a++){var s=e[a];"number"==typeof s?o=s:1==o?r=U(r,s):2==o&&(i=U(i,s+": "+e[++a]+";"))}n?t.styles=i:t.stylesWithoutHost=i,n?t.classes=r:t.classesWithoutHost=r}
  531. /**
  532. * @license
  533. * Copyright Google Inc. All Rights Reserved.
  534. *
  535. * Use of this source code is governed by an MIT-style license that can be
  536. * found in the LICENSE file at https://angular.io/license
  537. */var dl=null;function pl(){if(!dl){var t=J.Symbol;if(t&&t.iterator)dl=t.iterator;else for(var e=Object.getOwnPropertyNames(Map.prototype),n=0;n<e.length;++n){var i=e[n];"entries"!==i&&"size"!==i&&Map.prototype[i]===Map.prototype.entries&&(dl=i)}}return dl}
  538. /**
  539. * @license
  540. * Copyright Google Inc. All Rights Reserved.
  541. *
  542. * Use of this source code is governed by an MIT-style license that can be
  543. * found in the LICENSE file at https://angular.io/license
  544. */
  545. /**
  546. * @license
  547. * Copyright Google Inc. All Rights Reserved.
  548. *
  549. * Use of this source code is governed by an MIT-style license that can be
  550. * found in the LICENSE file at https://angular.io/license
  551. */function hl(t,e){return t===e||"number"==typeof t&&"number"==typeof e&&isNaN(t)&&isNaN(e)}
  552. /**
  553. * @license
  554. * Copyright Google Inc. All Rights Reserved.
  555. *
  556. * Use of this source code is governed by an MIT-style license that can be
  557. * found in the LICENSE file at https://angular.io/license
  558. */function fl(t,e){var n=ml(t),i=ml(e);return n&&i?function(t,e,n){for(var i=t[pl()](),r=e[pl()]();;){var o=i.next(),a=r.next();if(o.done&&a.done)return!0;if(o.done||a.done)return!1;if(!n(o.value,a.value))return!1}}(t,e,fl):!(n||!t||"object"!=typeof t&&"function"!=typeof t||i||!e||"object"!=typeof e&&"function"!=typeof e)||hl(t,e)}var gl=function(){function t(t){this.wrapped=t}return t.wrap=function(e){return new t(e)},t.unwrap=function(e){return t.isWrapped(e)?e.wrapped:e},t.isWrapped=function(e){return e instanceof t},t}();function ml(t){return!!vl(t)&&(Array.isArray(t)||!(t instanceof Map)&&pl()in t)}function vl(t){return null!==t&&("function"==typeof t||"object"==typeof t)}
  559. /**
  560. * @license
  561. * Copyright Google Inc. All Rights Reserved.
  562. *
  563. * Use of this source code is governed by an MIT-style license that can be
  564. * found in the LICENSE file at https://angular.io/license
  565. */function yl(t,e,n){return t[e]=n}function bl(t,e){return ngDevMode&&Ht(t,e),ngDevMode&&jt(t[e],ho,"Stored value should never be NO_CHANGE."),t[e]}function wl(t,e,n){ngDevMode&&jt(n,ho,"Incoming value should never be NO_CHANGE."),ngDevMode&&Vt(e,t.length,"Slot should have been initialized to NO_CHANGE");var i=t[e];if(Object.is(i,n))return!1;if(ngDevMode&&pn()){var r=i!==ho?i:void 0;if(!fl(r,n)){var o=function(t,e,n,i){var r=t[1].data,o=r[e];if("string"==typeof o)return o.indexOf("�")>-1?to(t,e,e,o,i):{propName:o,oldValue:n,newValue:i};if(null===o){for(var a=e-1;"string"!=typeof r[a]&&null===r[a+1];)a--;var s=r[a];if("string"==typeof s){var c=s.match(new RegExp("�","g"));if(c&&c.length-1>e-a)return to(t,a,e,s,i)}}return{propName:void 0,oldValue:n,newValue:i}}(t,e,r,n);!function(t,e,n,i){var r="ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value"+(i?" for '"+i+"'":"")+": '"+e+"'. Current value: '"+n+"'.";throw t&&(r+=" It seems like the view has been created after its parent and its children have been dirty checked. Has it been created in a change detection hook?"),new Error(r)}(i===ho,o.oldValue,o.newValue,o.propName)}return!1}return t[e]=n,!0}function Sl(t,e,n,i){var r=wl(t,e,n);return wl(t,e+1,i)||r}function xl(t,e,n,i,r){var o=Sl(t,e,n,i);return wl(t,e+2,r)||o}function Ml(t,e,n,i,r,o){var a=Sl(t,e,n,i);return Sl(t,e+2,r,o)||a}
  566. /**
  567. * @license
  568. * Copyright Google Inc. All Rights Reserved.
  569. *
  570. * Use of this source code is governed by an MIT-style license that can be
  571. * found in the LICENSE file at https://angular.io/license
  572. */function El(t,e,n,i){var r=on(),o=vn();if(wl(r,o,e)){var a=an(),s=Rn();Va(s,r,t,e,n,i),ngDevMode&&Ja(a.data,s,"attr."+t,o)}return El}
  573. /**
  574. * @license
  575. * Copyright Google Inc. All Rights Reserved.
  576. *
  577. * Use of this source code is governed by an MIT-style license that can be
  578. * found in the LICENSE file at https://angular.io/license
  579. */function Cl(t,e){ngDevMode&&Vt(2,e.length,"should have at least 3 values"),ngDevMode&&Rt(e.length%2,1,"should have an odd number of values");for(var n=!1,i=gn(),r=1;r<e.length;r+=2)n=wl(t,i++,e[r])||n;if(mn(i),!n)return ho;var o=e[0];for(r=1;r<e.length;r+=2)o+=ii(e[r])+e[r+1];return o}function Al(t,e,n,i){return wl(t,vn(),n)?e+ii(n)+i:ho}function Tl(t,e,n,i,r,o){var a=Sl(t,gn(),n,r);return yn(2),a?e+ii(n)+i+ii(r)+o:ho}function Ol(t,e,n,i,r,o,a,s){var c=xl(t,gn(),n,r,a);return yn(3),c?e+ii(n)+i+ii(r)+o+ii(a)+s:ho}function _l(t,e,n,i,r,o,a,s,c,l){var u=Ml(t,gn(),n,r,a,c);return yn(4),u?e+ii(n)+i+ii(r)+o+ii(a)+s+ii(c)+l:ho}function Pl(t,e,n,i,r,o,a,s,c,l,u,d){var p=gn(),h=Ml(t,p,n,r,a,c);return h=wl(t,p+4,u)||h,yn(5),h?e+ii(n)+i+ii(r)+o+ii(a)+s+ii(c)+l+ii(u)+d:ho}function Il(t,e,n,i,r,o,a,s,c,l,u,d,p,h){var f=gn(),g=Ml(t,f,n,r,a,c);return g=Sl(t,f+4,u,p)||g,yn(6),g?e+ii(n)+i+ii(r)+o+ii(a)+s+ii(c)+l+ii(u)+d+ii(p)+h:ho}function kl(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g){var m=gn(),v=Ml(t,m,n,r,a,c);return v=xl(t,m+4,u,p,f)||v,yn(7),v?e+ii(n)+i+ii(r)+o+ii(a)+s+ii(c)+l+ii(u)+d+ii(p)+h+ii(f)+g:ho}function Dl(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m,v){var y=gn(),b=Ml(t,y,n,r,a,c);return b=Ml(t,y+4,u,p,f,m)||b,yn(8),b?e+ii(n)+i+ii(r)+o+ii(a)+s+ii(c)+l+ii(u)+d+ii(p)+h+ii(f)+g+ii(m)+v:ho}function Rl(t,e,n,i,r,o){var a=on(),s=Al(a,e,n,i);if(s!==ho){var c=Rn();Va(c,a,t,s,r,o),ngDevMode&&Ja(an().data,c,"attr."+t,gn()-1,e,i)}return Rl}function Ll(t,e,n,i,r,o,a,s){var c=on(),l=Tl(c,e,n,i,r,o);if(l!==ho){var u=Rn();Va(u,c,t,l,a,s),ngDevMode&&Ja(an().data,u,"attr."+t,gn()-2,e,i,o)}return Ll}function Nl(t,e,n,i,r,o,a,s,c,l){var u=on(),d=Ol(u,e,n,i,r,o,a,s);if(d!==ho){var p=Rn();Va(p,u,t,d,c,l),ngDevMode&&Ja(an().data,p,"attr."+t,gn()-3,e,i,o,s)}return Nl}function jl(t,e,n,i,r,o,a,s,c,l,u,d){var p=on(),h=_l(p,e,n,i,r,o,a,s,c,l);if(h!==ho){var f=Rn();Va(f,p,t,h,u,d),ngDevMode&&Ja(an().data,f,"attr."+t,gn()-4,e,i,o,s,l)}return jl}function Vl(t,e,n,i,r,o,a,s,c,l,u,d,p,h){var f=on(),g=Pl(f,e,n,i,r,o,a,s,c,l,u,d);if(g!==ho){var m=Rn();Va(m,f,t,g,p,h),ngDevMode&&Ja(an().data,m,"attr."+t,gn()-5,e,i,o,s,l,d)}return Vl}function Fl(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g){var m=on(),v=Il(m,e,n,i,r,o,a,s,c,l,u,d,p,h);if(v!==ho){var y=Rn();Va(y,m,t,v,f,g),ngDevMode&&Ja(an().data,y,"attr."+t,gn()-6,e,i,o,s,l,d,h)}return Fl}function Ul(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m,v){var y=on(),b=kl(y,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g);if(b!==ho){var w=Rn();Va(w,y,t,b,m,v),ngDevMode&&Ja(an().data,w,"attr."+t,gn()-7,e,i,o,s,l,d,h,g)}return Ul}function Bl(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m,v,y,b){var w=on(),S=Dl(w,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m,v);if(S!==ho){var x=Rn();Va(x,w,t,S,y,b),ngDevMode&&Ja(an().data,x,"attr."+t,gn()-8,e,i,o,s,l,d,h,g,v)}return Bl}function zl(t,e,n,r){var o=on(),a=Cl(o,e);if(a!==ho){var s=Rn();if(Va(s,o,t,a,n,r),ngDevMode){for(var c=[e[0]],l=2;l<e.length;l+=2)c.push(e[l]);Ja.apply(void 0,Object(i.h)([an().data,s,"attr."+t,gn()-c.length+1],c))}}return zl}
  580. /**
  581. * @license
  582. * Copyright Google Inc. All Rights Reserved.
  583. *
  584. * Use of this source code is governed by an MIT-style license that can be
  585. * found in the LICENSE file at https://angular.io/license
  586. */function Gl(t){var e=qr(t);Xa(e[1],e,t)}function Hl(t){ngDevMode&&Bt(t,"component");var e,n,i,r=qa(qr(t));ngDevMode&&Bt(r[8],"rootContext should be defined"),i=0===(e=r[8]).flags,e.flags|=1,i&&e.clean==aa&&(e.clean=new Promise(function(t){return n=t}),e.scheduler(function(){if(1&e.flags&&(e.flags&=-2,Ka(e)),2&e.flags){e.flags&=-3;var t=e.playerHandler;t&&t.flushPlayers()}e.clean=aa,n(null)}))}function Wl(t,e,n,i,r,o,a,s){var c=on(),l=an(),u=t+20,d=l.firstCreatePass?
  587. /**
  588. * @license
  589. * Copyright Google Inc. All Rights Reserved.
  590. *
  591. * Use of this source code is governed by an MIT-style license that can be
  592. * found in the LICENSE file at https://angular.io/license
  593. */
  594. function(t,e,n,i,r,o,a,s,c){ngDevMode&&ke(e),ngDevMode&&ngDevMode.firstCreatePass++;var l=e.consts,u=ua(e,n[6],t,0,a||null,Je(l,s));Oa(e,n,u,Je(l,c)),Vn(e,u);var d=u.tViews=ba(2,-1,i,r,o,e.directiveRegistry,e.pipeRegistry,null,e.schemas,l),p=Sa(e,null,2,-1,null,null);return p.injectorIndex=u.injectorIndex,d.node=p,null!==e.queries&&(e.queries.template(e,u),d.queries=e.queries.embeddedTView(u)),u}(t,l,c,e,n,i,r,o,a):l.data[u];ln(d,!1);var p=c[11].createComment(ngDevMode?"container":"");Ss(l,c,p,d),Kr(p,c),Wa(c,c[u]=za(p,c,p,d)),Me(d)&&ma(l,c,d),null!=a&&va(c,d,s)}
  595. /**
  596. * @license
  597. * Copyright Google Inc. All Rights Reserved.
  598. *
  599. * Use of this source code is governed by an MIT-style license that can be
  600. * found in the LICENSE file at https://angular.io/license
  601. */function ql(t,e,n,i){var r=n+20;r>=t.data.length&&(t.data[r]=null,t.blueprint[r]=null),e[r]=i}function Kl(t){return We(tn.lFrame.contextLView,t)}
  602. /**
  603. * @license
  604. * Copyright Google Inc. All Rights Reserved.
  605. *
  606. * Use of this source code is governed by an MIT-style license that can be
  607. * found in the LICENSE file at https://angular.io/license
  608. */function Xl(t,e){void 0===e&&(e=v.Default);var n=on();return null==n?vt(t,e):bi(cn(),n,G(t),e)}function Yl(t){return yi(cn(),t)}function Zl(){var t=ngDevMode?"This constructor was not compatible with Dependency Injection.":"invalid";throw new Error(t)}
  609. /**
  610. * @license
  611. * Copyright Google Inc. All Rights Reserved.
  612. *
  613. * Use of this source code is governed by an MIT-style license that can be
  614. * found in the LICENSE file at https://angular.io/license
  615. */function Jl(t,e,n){var i=on(),r=vn();if(wl(i,r,e)){var o=an(),a=Rn();Ma(o,a,i,t,e,i[11],n,!1),ngDevMode&&Ja(o.data,a,t,r)}return Jl}function Ql(t,e,n,i,r){var o=r?"class":"style";is(t,n,e.inputs[o],o,i)}
  616. /**
  617. * @license
  618. * Copyright Google Inc. All Rights Reserved.
  619. *
  620. * Use of this source code is governed by an MIT-style license that can be
  621. * found in the LICENSE file at https://angular.io/license
  622. */function $l(t,e,n,i){var r=on(),o=an(),a=20+t;ngDevMode&&Rt(gn(),o.bindingStartIndex,"elements should be created before any bindings"),ngDevMode&&ngDevMode.rendererCreateElement++,ngDevMode&&Ht(r,a);var s=r[11],c=r[a]=ca(e,s,tn.lFrame.currentNamespace),l=o.firstCreatePass?function(t,e,n,i,r,o,a){ngDevMode&&ke(e),ngDevMode&&ngDevMode.firstCreatePass++;var s=e.consts,c=Je(s,o),l=ua(e,n[6],t,3,r,c),u=Oa(e,n,l,Je(s,a));return ngDevMode&&function(t,e,n,i,r){if(null!==t.schemas){var o=i.tagName;if(!r&&null!==o&&("undefined"!=typeof HTMLUnknownElement&&HTMLUnknownElement&&n instanceof HTMLUnknownElement||"undefined"!=typeof customElements&&o.indexOf("-")>-1&&!customElements.get(o))&&!Aa(t,0,o)){var a="'"+o+"' is not a known element:\n";a+="1. If '"+o+"' is an Angular component, then verify that it is part of this module.\n",o&&o.indexOf("-")>-1?a+="2. If '"+o+"' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message.":a+="2. To allow any element add 'NO_ERRORS_SCHEMA' to the '@NgModule.schemas' of this component.",console.warn(a)}}}
  623. /**
  624. * @license
  625. * Copyright Google Inc. All Rights Reserved.
  626. *
  627. * Use of this source code is governed by an MIT-style license that can be
  628. * found in the LICENSE file at https://angular.io/license
  629. */(e,0,i,l,u),null!==l.attrs&&ul(l,l.attrs,!1),null!==l.mergedAttrs&&ul(l,l.mergedAttrs,!0),null!==e.queries&&e.queries.elementStart(e,l),l}(t,o,r,c,e,n,i):o.data[a];ln(l,!0);var u=l.mergedAttrs;null!==u&&Xn(s,c,u);var d=l.classes;null!==d&&_s(s,c,d);var p=l.styles;null!==p&&Os(s,c,p),Ss(o,r,c,l),0===tn.lFrame.elementDepthCount&&Kr(c,r),tn.lFrame.elementDepthCount++,Me(l)&&(ma(o,r,l),ga(o,l,r)),null!==i&&va(r,l)}function tu(){var t=cn();ngDevMode&&Bt(t,"No parent node to close."),un()?dn():(ngDevMode&&Oe(cn()),ln(t=t.parent,!1));var e=t;ngDevMode&&Wn(e,3),tn.lFrame.elementDepthCount--;var n=an();n.firstCreatePass&&(Vn(n,t),Se(t)&&n.queries.elementEnd(t)),null!=e.classesWithoutHost&&0!=(16&e.flags)&&Ql(n,e,on(),e.classesWithoutHost,!0),null!=e.stylesWithoutHost&&0!=(32&e.flags)&&Ql(n,e,on(),e.stylesWithoutHost,!1)}function eu(t,e,n,i){$l(t,e,n,i),tu()}function nu(t,e,n){var i=on(),r=an(),o=t+20;ngDevMode&&Ht(i,o),ngDevMode&&Rt(gn(),r.bindingStartIndex,"element containers should be created before any bindings");var a=r.firstCreatePass?function(t,e,n,i,r){ngDevMode&&ngDevMode.firstCreatePass++;var o=e.consts,a=Je(o,i),s=ua(e,n[6],t,4,"ng-container",a);return null!==a&&ul(s,a,!0),Oa(e,n,s,Je(o,r)),null!==e.queries&&e.queries.elementStart(e,s),s}(t,r,i,e,n):r.data[o];ln(a,!0),ngDevMode&&ngDevMode.rendererCreateComment++;var s=i[o]=i[11].createComment(ngDevMode?"ng-container":"");Ss(r,i,s,a),Kr(s,i),Me(a)&&(ma(r,i,a),ga(r,a,i)),null!=n&&va(i,a)}function iu(){var t=cn(),e=an();un()?dn():(ngDevMode&&Oe(t),ln(t=t.parent,!1)),ngDevMode&&Wn(t,4),e.firstCreatePass&&(Vn(e,t),Se(t)&&e.queries.elementEnd(t))}function ru(t,e,n){nu(t,e,n),iu()}function ou(){return on()}
  630. /**
  631. * @license
  632. * Copyright Google Inc. All Rights Reserved.
  633. *
  634. * Use of this source code is governed by an MIT-style license that can be
  635. * found in the LICENSE file at https://angular.io/license
  636. */function au(t){return!!t&&"function"==typeof t.then}function su(t){return!!t&&"function"==typeof t.subscribe}
  637. /**
  638. * @license
  639. * Copyright Google Inc. All Rights Reserved.
  640. *
  641. * Use of this source code is governed by an MIT-style license that can be
  642. * found in the LICENSE file at https://angular.io/license
  643. */function cu(t,e,n,i){void 0===n&&(n=!1);var r=on(),o=an(),a=cn();return uu(o,r,r[11],a,t,e,n,i),cu}function lu(t,e,n,i){void 0===n&&(n=!1);var r=cn(),o=on(),a=an();return uu(a,o,es(Sn(a.data),r,o),r,t,e,n,i),lu}function uu(t,e,n,i,r,o,a,s){void 0===a&&(a=!1);var c=Me(i),l=t.firstCreatePass&&(t.cleanup||(t.cleanup=[])),u=$a(e);ngDevMode&&qn(i,3,0,4);var d=!0;if(3===i.type){var p=ze(i,e),h=s?s(p):ee,f=h.target||p,g=u.length,m=s?function(t){return s(Ue(t[i.index])).target}:i.index;if(Ve(n)){var v=null;if(!s&&c&&(v=function(t,e,n,i){var r=t.cleanup;if(null!=r)for(var o=0;o<r.length-1;o+=2){var a=r[o];if(a===n&&r[o+1]===i){var s=e[7],c=r[o+2];return s.length>c?s[c]:null}"string"==typeof a&&(o+=2)}return null}(t,e,r,i.index)),null!==v)(v.__ngLastListenerFn__||v).__ngNextListenerFn__=o,v.__ngLastListenerFn__=o,d=!1;else{o=pu(i,e,o,!1);var y=n.listen(h.name||f,r,o);ngDevMode&&ngDevMode.rendererAddEventListener++,u.push(o,y),l&&l.push(r,m,g,g+1)}}else o=pu(i,e,o,!0),f.addEventListener(r,o,a),ngDevMode&&ngDevMode.rendererAddEventListener++,u.push(o),l&&l.push(r,m,g,a)}var b,w=i.outputs;if(d&&null!==w&&(b=w[r])){var S=b.length;if(S)for(var x=0;x<S;x+=2){var M=b[x];ngDevMode&&Ht(e,M);var E=b[x+1],C=e[M],A=C[E];if(ngDevMode&&!su(A))throw new Error("@Output "+E+" not initialized in '"+C.constructor.name+"'.");var T=A.subscribe(o),O=u.length;u.push(o,T),l&&l.push(r,i.index,O,-(O+1))}}}function du(t,e,n){try{return!1!==e(n)}catch(e){return ns(t,e),!1}}function pu(t,e,n,i){return function r(o){if(o===Function)return n;var a=2&t.flags?qe(t.index,e):e;0==(32&e[2])&&qa(a);for(var s=du(e,n,o),c=r.__ngNextListenerFn__;c;)s=du(e,c,o)&&s,c=c.__ngNextListenerFn__;return i&&!1===s&&(o.preventDefault(),o.returnValue=!1),s
  644. /**
  645. * @license
  646. * Copyright Google Inc. All Rights Reserved.
  647. *
  648. * Use of this source code is governed by an MIT-style license that can be
  649. * found in the LICENSE file at https://angular.io/license
  650. */
  651. /**
  652. * @license
  653. * Copyright Google Inc. All Rights Reserved.
  654. *
  655. * Use of this source code is governed by an MIT-style license that can be
  656. * found in the LICENSE file at https://angular.io/license
  657. */}}function hu(t){return void 0===t&&(t=1),In(t)}
  658. /**
  659. * @license
  660. * Copyright Google Inc. All Rights Reserved.
  661. *
  662. * Use of this source code is governed by an MIT-style license that can be
  663. * found in the LICENSE file at https://angular.io/license
  664. */function fu(t,e){for(var n=null,i=function(t){var e=t.attrs;if(null!=e){var n=e.indexOf(5);if(0==(1&n))return e[n+1]}return null}(t),r=0;r<e.length;r++){var o=e[r];if("*"!==o){if(null===i?co(t,o,!0):lo(i,o))return r}else n=r}return n}function gu(t){var e=on()[16][6];if(!e.projection)for(var n=t?t.length:1,i=e.projection=Zt(n,null),r=i.slice(),o=e.child;null!==o;){var a=t?fu(o,t):0;null!==a&&(r[a]?r[a].projectionNext=o:i[a]=o,r[a]=o),o=o.next}}var mu=!1;function vu(t){mu=t}function yu(t,e,n){void 0===e&&(e=0);var i=on(),r=an(),o=ua(r,i[6],t,1,null,n||null);null===o.projection&&(o.projection=e),dn(),mu||As(r,i,o)}function bu(t,e,n){return wu(t,"",e,"",n),bu}function wu(t,e,n,i,r){var o=on(),a=Al(o,e,n,i);if(a!==ho){var s=an(),c=Rn();Ma(s,c,o,t,a,o[11],r,!1),ngDevMode&&Ja(s.data,c,t,gn()-1,e,i)}return wu}function Su(t,e,n,i,r,o,a){var s=on(),c=Tl(s,e,n,i,r,o);if(c!==ho){var l=an(),u=Rn();Ma(l,u,s,t,c,s[11],a,!1),ngDevMode&&Ja(l.data,u,t,gn()-2,e,i,o)}return Su}function xu(t,e,n,i,r,o,a,s,c){var l=on(),u=Ol(l,e,n,i,r,o,a,s);if(u!==ho){var d=an(),p=Rn();Ma(d,p,l,t,u,l[11],c,!1),ngDevMode&&Ja(d.data,p,t,gn()-3,e,i,o,s)}return xu}function Mu(t,e,n,i,r,o,a,s,c,l,u){var d=on(),p=_l(d,e,n,i,r,o,a,s,c,l);if(p!==ho){var h=an(),f=Rn();Ma(h,f,d,t,p,d[11],u,!1),ngDevMode&&Ja(h.data,f,t,gn()-4,e,i,o,s,l)}return Mu}function Eu(t,e,n,i,r,o,a,s,c,l,u,d,p){var h=on(),f=Pl(h,e,n,i,r,o,a,s,c,l,u,d);if(f!==ho){var g=an(),m=Rn();Ma(g,m,h,t,f,h[11],p,!1),ngDevMode&&Ja(g.data,m,t,gn()-5,e,i,o,s,l,d)}return Eu}function Cu(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f){var g=on(),m=Il(g,e,n,i,r,o,a,s,c,l,u,d,p,h);if(m!==ho){var v=an(),y=Rn();Ma(v,y,g,t,m,g[11],f,!1),ngDevMode&&Ja(v.data,y,t,gn()-6,e,i,o,s,l,d,h)}return Cu}function Au(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m){var v=on(),y=kl(v,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g);if(y!==ho){var b=an(),w=Rn();Ma(b,w,v,t,y,v[11],m,!1),ngDevMode&&Ja(b.data,w,t,gn()-7,e,i,o,s,l,d,h,g)}return Au}function Tu(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m,v,y){var b=on(),w=Dl(b,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m,v);if(w!==ho){var S=an(),x=Rn();Ma(S,x,b,t,w,b[11],y,!1),ngDevMode&&Ja(S.data,x,t,gn()-8,e,i,o,s,l,d,h,g,v)}return Tu}function Ou(t,e,n){var r=on(),o=Cl(r,e);if(o!==ho){var a=an(),s=Rn();if(Ma(a,s,r,t,o,r[11],n,!1),ngDevMode){for(var c=[e[0]],l=2;l<e.length;l+=2)c.push(e[l]);Ja.apply(void 0,Object(i.h)([a.data,s,t,gn()-c.length+1],c))}}return Ou}
  665. /**
  666. * @license
  667. * Copyright Google Inc. All Rights Reserved.
  668. *
  669. * Use of this source code is governed by an MIT-style license that can be
  670. * found in the LICENSE file at https://angular.io/license
  671. */var _u=[];function Pu(t,e,n,i,r){for(var o=t[n+1],a=null===e,s=i?Co(o):Oo(o),c=!1;0!==s&&(!1===c||a);){ngDevMode&&Ht(t,s);var l=t[s],u=t[s+1];Iu(l,e)&&(c=!0,t[s+1]=i?Io(u):To(u)),s=i?Co(u):Oo(u)}c&&(t[n+1]=i?To(o):Io(o))}function Iu(t,e){return ngDevMode&&Lt(Array.isArray(e),!0,"Expected that 'tStylingKey' has been unwrapped"),null===t||null==e||(Array.isArray(t)?t[1]:t)===e||!(!Array.isArray(t)||"string"!=typeof e)&&$t(t,e)>=0}
  672. /**
  673. * @license
  674. * Copyright Google Inc. All Rights Reserved.
  675. *
  676. * Use of this source code is governed by an MIT-style license that can be
  677. * found in the LICENSE file at https://angular.io/license
  678. */
  679. /**
  680. * @license
  681. * Copyright Google Inc. All Rights Reserved.
  682. *
  683. * Use of this source code is governed by an MIT-style license that can be
  684. * found in the LICENSE file at https://angular.io/license
  685. */
  686. ("undefined"==typeof ngDevMode||ngDevMode)&&at()&&(Object.freeze({}),Object.freeze(_u)
  687. /**
  688. * @license
  689. * Copyright Google Inc. All Rights Reserved.
  690. *
  691. * Use of this source code is governed by an MIT-style license that can be
  692. * found in the LICENSE file at https://angular.io/license
  693. */);var ku={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function Du(t){return t.substring(ku.key,ku.keyEnd)}function Ru(t){return t.substring(ku.value,ku.valueEnd)}function Lu(t,e){var n=ku.textEnd;return n===e?-1:Vu(t,e=ku.keyEnd=function(t,e,n){for(;e<n&&t.charCodeAt(e)>32;)e++;return e}(t,ku.key=e,n),n)}function Nu(t,e){var n=ku.textEnd,i=ku.key=Vu(t,e,n);return n===i?-1:(i=Fu(t,i=ku.keyEnd=function(t,e,n){for(var i;e<n&&(45===(i=t.charCodeAt(e))||95===i||(-33&i)>=65&&(-33&i)<=90);)e++;return e}(t,i,n),n,58),i=ku.value=Vu(t,i,n),Fu(t,i=ku.valueEnd=function(t,e,n){for(var i=-1,r=-1,o=-1,a=e,s=a;a<n;){var c=t.charCodeAt(a++);if(59===c)return s;34===c||39===c?s=a=Uu(t,c,a,n):e===a-4&&85===o&&82===r&&76===i&&40===c?s=a=Uu(t,41,a,n):c>32&&(s=a),o=r,r=i,i=-33&c}return s}(t,i,n),n,59))}function ju(t){ku.key=0,ku.keyEnd=0,ku.value=0,ku.valueEnd=0,ku.textEnd=t.length}function Vu(t,e,n){for(;e<n&&t.charCodeAt(e)<=32;)e++;return e}function Fu(t,e,n,i){return(e=Vu(t,e,n))<n&&(ngDevMode&&t.charCodeAt(e)!==i&&Bu(t,String.fromCharCode(i),e),e++),e}function Uu(t,e,n,i){for(var r=-1,o=n;o<i;){var a=t.charCodeAt(o++);if(a==e&&92!==r)return o;r=92==a&&92===r?0:a}throw ngDevMode?Bu(t,String.fromCharCode(e),i):new Error}function Bu(t,e,n){throw ngDevMode&&Rt("string"==typeof t,!0,"String expected here"),zt("Malformed style at location "+n+" in string '"+t.substring(0,n)+"[>>"+t.substring(n,n+1)+"<<]"+t.substr(n+1)+"'. Expecting '"+e+"'.")}
  694. /**
  695. * @license
  696. * Copyright Google Inc. All Rights Reserved.
  697. *
  698. * Use of this source code is governed by an MIT-style license that can be
  699. * found in the LICENSE file at https://angular.io/license
  700. */function zu(t){!function(t){tn.lFrame.currentSanitizer=t}(t)}function Gu(t,e,n){return Yu(t,e,n,!1),Gu}function Hu(t,e){return Yu(t,e,null,!0),Hu}function Wu(t){Zu(ed,qu,t,!1)}function qu(t,e){for(var n=function(t){return ju(t),Nu(t,Vu(t,0,ku.textEnd))}(e);n>=0;n=Nu(e,n))ed(t,Du(e),Ru(e))}function Ku(t){Zu(Jt,Xu,t,!0)}function Xu(t,e){for(var n=function(t){return ju(t),Lu(t,Vu(t,0,ku.textEnd))}(e);n>=0;n=Lu(e,n))Jt(t,Du(e),!0)}function Yu(t,e,n,i){var r,o=on(),a=an(),s=yn(2);if(a.firstUpdatePass&&Qu(a,t,s,i),e!==ho&&wl(o,s,e)){var c=void 0;null==n&&(c=null===(r=tn.lFrame)?null:r.currentSanitizer)&&(n=c),nd(a,a.data[kn()+20],o,o[11],t,o[s+1]=function(t,e){return null==t||("function"==typeof e?t=e(t):"string"==typeof e?t+=e:"object"==typeof t&&(t=F(Bi(t)))),t}(e,n),i,s)}}function Zu(t,e,n,i){var r=an(),o=yn(2);r.firstUpdatePass&&Qu(r,null,o,i);var a=on();if(n!==ho&&wl(a,o,n)){var s=r.data[kn()+20];if(od(s,i)&&!Ju(r,o)){if(ngDevMode){var c=r.data[o];Rt(Array.isArray(c)?c[1]:c,!1,"Styling linked list shadow input should be marked as 'false'")}var l=i?s.classesWithoutHost:s.stylesWithoutHost;ngDevMode&&!1===i&&null!==l&&Rt(l.endsWith(";"),!0,"Expecting static portion to end with ';'"),null!==l&&(n=U(l,n||"")),Ql(r,s,a,n,i)}else!function(t,e,n,i,r,o,a,s){r===ho&&(r=_u);for(var c=0,l=0,u=0<r.length?r[0]:null,d=0<o.length?o[0]:null;null!==u||null!==d;){ngDevMode&&Vt(c,999,"Are we stuck in infinite loop?"),ngDevMode&&Vt(l,999,"Are we stuck in infinite loop?");var p=c<r.length?r[c+1]:void 0,h=l<o.length?o[l+1]:void 0,f=null,g=void 0;u===d?(c+=2,l+=2,p!==h&&(f=d,g=h)):null===d||null!==u&&u<d?(c+=2,f=u):(ngDevMode&&Bt(d,"Expecting to have a valid key"),l+=2,f=d,g=h),null!==f&&nd(t,e,n,i,f,g,a,s),u=c<r.length?r[c]:null,d=l<o.length?o[l]:null}}(r,s,a,a[11],a[o+1],a[o+1]=function(t,e,n){if(null==n||""===n)return _u;var i=[],r=Bi(n);if(Array.isArray(r))for(var o=0;o<r.length;o++)t(i,r[o],!0);else if("object"==typeof r)for(var a in r)r.hasOwnProperty(a)&&t(i,a,r[a]);else"string"==typeof r?e(i,r):ngDevMode&&zt("Unsupported styling type "+typeof r+": "+r);return i}(t,e,n),i,o)}}function Ju(t,e){return e>=t.expandoStartIndex}function Qu(t,e,n,i){ngDevMode&&De(t);var r=t.data;if(null===r[n+1]){var o=r[kn()+20],a=Ju(t,n);od(o,i)&&null===e&&!a&&(e=!1),e=function(t,e,n,i){var r=Sn(t),o=i?e.residualClasses:e.residualStyles;if(null===r)0===(i?e.classBindings:e.styleBindings)&&(n=td(n=$u(null,t,e,n,i),e.attrs,i),o=null);else{var a=e.directiveStylingLast;if(-1===a||t[a]!==r)if(n=$u(r,t,e,n,i),null===o){var s=function(t,e,n){var i=n?e.classBindings:e.styleBindings;if(0!==Oo(i))return t[Co(i)]}(t,e,i);void 0!==s&&Array.isArray(s)&&function(t,e,n,i){var r=n?e.classBindings:e.styleBindings;ngDevMode&&Lt(Oo(r),0,"Expecting to have at least one template styling binding."),t[Co(r)]=i}(t,e,i,s=td(s=$u(null,t,e,s[1],i),e.attrs,i))}else o=function(t,e,n){var i=void 0,r=e.directiveEnd;ngDevMode&&Lt(e.directiveStylingLast,-1,"By the time this function gets called at least one hostBindings-node styling instruction must have executed.");for(var o=1+e.directiveStylingLast;o<r;o++){i=td(i,t[o].hostAttrs,n)}return td(i,e.attrs,n)}(t,e,i)}return void 0!==o&&(i?e.residualClasses=o:e.residualStyles=o),n}(r,o,e,i),function(t,e,n,i,r,o){ngDevMode&&De(an());var a=o?e.classBindings:e.styleBindings,s=Co(a),c=Oo(a);t[i]=n;var l,u,d,p=!1;if(Array.isArray(n)){var h=n;(null===(l=h[1])||$t(h,l)>0)&&(p=!0)}else l=n;if(r)if(0!==c){var f=Co(t[s+1]);t[i+1]=Eo(f,s),0!==f&&(t[f+1]=_o(t[f+1],i)),t[s+1]=(u=t[s+1],d=i,ngDevMode&&It(u,"expected number"),ngDevMode&&kt(d,0,32767),131071&u|d<<17)}else t[i+1]=Eo(s,0),0!==s&&(t[s+1]=_o(t[s+1],i)),s=i;else t[i+1]=Eo(c,0),ngDevMode&&Rt(0!==s&&0===c,!1,"Adding template bindings after hostBindings is not allowed."),0===s?s=i:t[c+1]=_o(t[c+1],i),c=i;p&&(t[i+1]=To(t[i+1])),Pu(t,l,i,!0),Pu(t,l,i,!1),function(t,e,n,i,r){var o=r?t.residualClasses:t.residualStyles;null!=o&&"string"==typeof e&&$t(o,e)>=0&&(n[i+1]=Io(n[i+1]))}(e,l,t,i,o),a=Eo(s,c),o?e.classBindings=a:e.styleBindings=a}(r,o,e,n,a,i)}}function $u(t,e,n,i,r){var o=null,a=n.directiveEnd,s=n.directiveStylingLast;for(-1===s?s=n.directiveStart:s++;s<a&&(o=e[s],ngDevMode&&Bt(o,"expected to be defined"),i=td(i,o.hostAttrs,r),o!==t);)s++;return null!==t&&(n.directiveStylingLast=s),i}function td(t,e,n){var i=n?1:2,r=-1;if(null!==e)for(var o=0;o<e.length;o++){var a=e[o];"number"==typeof a?r=a:r===i&&(Array.isArray(t)||(t=void 0===t?[]:["",t]),Jt(t,a,!!n||e[++o]))}return void 0===t?null:t}function ed(t,e,n){Vr(e)&&(n=Ir(n)),Jt(t,e,n)}function nd(t,e,n,i,r,o,a,s){if(3===e.type){var c=t.data,l=c[s+1];rd(Po(l)?id(c,e,n,r,Oo(l),a):void 0)||(rd(o)||Ao(l)&&(o=id(c,null,n,r,s,a)),function(t,e,n,i,r){var o=Ve(t);if(e)r?(ngDevMode&&ngDevMode.rendererAddClass++,o?t.addClass(n,i):(ngDevMode&&Bt(n.classList,"HTMLElement expected"),n.classList.add(i))):(ngDevMode&&ngDevMode.rendererRemoveClass++,o?t.removeClass(n,i):n.classList.remove(i));else{var a=-1==i.indexOf("-")?void 0:2;null==r?(ngDevMode&&ngDevMode.rendererRemoveStyle++,o?t.removeStyle(n,i,a):n.style.removeProperty(i)):(ngDevMode&&ngDevMode.rendererSetStyle++,o?t.setStyle(n,i,r,a):(ngDevMode&&Bt(n.style,"HTMLElement expected"),n.style.setProperty(i,r)))}}(i,a,Be(kn(),n),r,o))}}function id(t,e,n,i,r,o){for(var a=null===e,s=void 0;r>0;){var c=t[r],l=Array.isArray(c),u=l?c[1]:c,d=null===u,p=n[r+1];p===ho&&(p=d?_u:void 0);var h=d?Qt(p,i):u===i?p:void 0;if(l&&!rd(h)&&(h=Qt(c,i)),rd(h)&&(s=h,a))return s;var f=t[r+1];r=a?Co(f):Oo(f)}if(null!==e){var g=o?e.residualClasses:e.residualStyles;null!=g&&(s=Qt(g,i))}return s}function rd(t){return void 0!==t}function od(t,e){return 0!=(t.flags&(e?16:32))}
  701. /**
  702. * @license
  703. * Copyright Google Inc. All Rights Reserved.
  704. *
  705. * Use of this source code is governed by an MIT-style license that can be
  706. * found in the LICENSE file at https://angular.io/license
  707. */function ad(t,e){void 0===e&&(e="");var n=on(),i=an(),r=t+20;ngDevMode&&Rt(gn(),i.bindingStartIndex,"text nodes should be created before any bindings"),ngDevMode&&Ht(n,r);var o=i.firstCreatePass?ua(i,n[6],t,3,null,null):i.data[r],a=n[r]=cs(e,n[11]);Ss(i,n,a,o),ln(o,!1)}
  708. /**
  709. * @license
  710. * Copyright Google Inc. All Rights Reserved.
  711. *
  712. * Use of this source code is governed by an MIT-style license that can be
  713. * found in the LICENSE file at https://angular.io/license
  714. */function sd(t){return cd("",t,""),sd}function cd(t,e,n){var i=on(),r=Al(i,t,e,n);return r!==ho&&rs(i,kn(),r),cd}function ld(t,e,n,i,r){var o=on(),a=Tl(o,t,e,n,i,r);return a!==ho&&rs(o,kn(),a),ld}function ud(t,e,n,i,r,o,a){var s=on(),c=Ol(s,t,e,n,i,r,o,a);return c!==ho&&rs(s,kn(),c),ud}function dd(t,e,n,i,r,o,a,s,c){var l=on(),u=_l(l,t,e,n,i,r,o,a,s,c);return u!==ho&&rs(l,kn(),u),dd}function pd(t,e,n,i,r,o,a,s,c,l,u){var d=on(),p=Pl(d,t,e,n,i,r,o,a,s,c,l,u);return p!==ho&&rs(d,kn(),p),pd}function hd(t,e,n,i,r,o,a,s,c,l,u,d,p){var h=on(),f=Il(h,t,e,n,i,r,o,a,s,c,l,u,d,p);return f!==ho&&rs(h,kn(),f),hd}function fd(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f){var g=on(),m=kl(g,t,e,n,i,r,o,a,s,c,l,u,d,p,h,f);return m!==ho&&rs(g,kn(),m),fd}function gd(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m){var v=on(),y=Dl(v,t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m);return y!==ho&&rs(v,kn(),y),gd}function md(t){var e=on(),n=Cl(e,t);return n!==ho&&rs(e,kn(),n),md}
  715. /**
  716. * @license
  717. * Copyright Google Inc. All Rights Reserved.
  718. *
  719. * Use of this source code is governed by an MIT-style license that can be
  720. * found in the LICENSE file at https://angular.io/license
  721. */function vd(t,e,n){Zu(Jt,Xu,Al(on(),t,e,n),!0)}function yd(t,e,n,i,r){Zu(Jt,Xu,Tl(on(),t,e,n,i,r),!0)}function bd(t,e,n,i,r,o,a){Zu(Jt,Xu,Ol(on(),t,e,n,i,r,o,a),!0)}function wd(t,e,n,i,r,o,a,s,c){Zu(Jt,Xu,_l(on(),t,e,n,i,r,o,a,s,c),!0)}function Sd(t,e,n,i,r,o,a,s,c,l,u){Zu(Jt,Xu,Pl(on(),t,e,n,i,r,o,a,s,c,l,u),!0)}function xd(t,e,n,i,r,o,a,s,c,l,u,d,p){Zu(Jt,Xu,Il(on(),t,e,n,i,r,o,a,s,c,l,u,d,p),!0)}function Md(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f){Zu(Jt,Xu,kl(on(),t,e,n,i,r,o,a,s,c,l,u,d,p,h,f),!0)}function Ed(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m){Zu(Jt,Xu,Dl(on(),t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m),!0)}function Cd(t){Zu(Jt,Xu,Cl(on(),t),!0)}
  722. /**
  723. * @license
  724. * Copyright Google Inc. All Rights Reserved.
  725. *
  726. * Use of this source code is governed by an MIT-style license that can be
  727. * found in the LICENSE file at https://angular.io/license
  728. */function Ad(t,e,n){Wu(Al(on(),t,e,n))}function Td(t,e,n,i,r){Wu(Tl(on(),t,e,n,i,r))}function Od(t,e,n,i,r,o,a){Wu(Ol(on(),t,e,n,i,r,o,a))}function _d(t,e,n,i,r,o,a,s,c){Wu(_l(on(),t,e,n,i,r,o,a,s,c))}function Pd(t,e,n,i,r,o,a,s,c,l,u){Wu(Pl(on(),t,e,n,i,r,o,a,s,c,l,u))}function Id(t,e,n,i,r,o,a,s,c,l,u,d,p){Wu(Il(on(),t,e,n,i,r,o,a,s,c,l,u,d,p))}function kd(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f){Wu(kl(on(),t,e,n,i,r,o,a,s,c,l,u,d,p,h,f))}function Dd(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m){Wu(Dl(on(),t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m))}function Rd(t){Wu(Cl(on(),t))}
  729. /**
  730. * @license
  731. * Copyright Google Inc. All Rights Reserved.
  732. *
  733. * Use of this source code is governed by an MIT-style license that can be
  734. * found in the LICENSE file at https://angular.io/license
  735. */function Ld(t,e,n,i,r){return Yu(t,Al(on(),e,n,i),r,!1),Ld}function Nd(t,e,n,i,r,o,a){return Yu(t,Tl(on(),e,n,i,r,o),a,!1),Nd}function jd(t,e,n,i,r,o,a,s,c){return Yu(t,Ol(on(),e,n,i,r,o,a,s),c,!1),jd}function Vd(t,e,n,i,r,o,a,s,c,l,u){return Yu(t,_l(on(),e,n,i,r,o,a,s,c,l),u,!1),Vd}function Fd(t,e,n,i,r,o,a,s,c,l,u,d,p){return Yu(t,Pl(on(),e,n,i,r,o,a,s,c,l,u,d),p,!1),Fd}function Ud(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f){return Yu(t,Il(on(),e,n,i,r,o,a,s,c,l,u,d,p,h),f,!1),Ud}function Bd(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m){return Yu(t,kl(on(),e,n,i,r,o,a,s,c,l,u,d,p,h,f,g),m,!1),Bd}function zd(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m,v,y){return Yu(t,Dl(on(),e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m,v),y,!1),zd}function Gd(t,e,n){return Yu(t,Cl(on(),e),n,!1),Gd}
  736. /**
  737. * @license
  738. * Copyright Google Inc. All Rights Reserved.
  739. *
  740. * Use of this source code is governed by an MIT-style license that can be
  741. * found in the LICENSE file at https://angular.io/license
  742. */function Hd(t,e,n){var i=on(),r=vn();if(wl(i,r,e)){var o=an(),a=Rn();Ma(o,a,i,t,e,i[11],n,!0),ngDevMode&&Ja(o.data,a,t,r)}return Hd}function Wd(t,e,n){var i=on(),r=vn();if(wl(i,r,e)){var o=an(),a=Rn();Ma(o,a,i,t,e,es(Sn(o.data),a,i),n,!0),ngDevMode&&Ja(o.data,a,t,r)}return Wd}
  743. /**
  744. * @license
  745. * Copyright Google Inc. All Rights Reserved.
  746. *
  747. * Use of this source code is governed by an MIT-style license that can be
  748. * found in the LICENSE file at https://angular.io/license
  749. */
  750. /**
  751. * @license
  752. * Copyright Google Inc. All Rights Reserved.
  753. *
  754. * Use of this source code is governed by an MIT-style license that can be
  755. * found in the LICENSE file at https://angular.io/license
  756. */function qd(t){np(t);var e,n,i,r,o=Qd(t,!1);return null===o?null:(void 0===o.component&&(o.component=(e=o.nodeIndex,r=(i=(n=o.lView)[1].data[e]).directiveStart,2&i.flags?n[r]:null)),o.component)}function Kd(t){np(t);var e=Qd(t,!1);return null===e?null:e.lView[8]}function Xd(t){var e=Qd(t,!1);if(null===e)return null;var n,i=e.lView;for(ngDevMode&&Ie(i);null===i[0]&&(n=fo(i));)i=n;return 512&i[2]?null:i[8]}function Yd(t){return Object(i.h)(go(t).components)}function Zd(t){var e=Qd(t,!1);if(null===e)return Ec.NULL;var n=e.lView[1].data[e.nodeIndex];return new Ai(n,e.lView)}function Jd(t){var e=Qd(t);return void 0===e.directives&&(e.directives=Jr(e.nodeIndex,e.lView,!1)),null===e.directives?[]:Object(i.h)(e.directives)}function Qd(t,e){void 0===e&&(e=!0);var n=Hr(t);if(!n&&e)throw new Error(ngDevMode?"Unable to find context associated with "+ri(t):"Invalid ng target");return n}function $d(t){return Hr(t).native}function tp(t){np(t);var e=Qd(t,!1);if(null===e)return[];var n=e.lView,i=n[1],r=n[7],o=i.cleanup,a=[];if(o&&r)for(var s=0;s<o.length;){var c=o[s++],l=o[s++];if("string"==typeof c){var u=c,d=Ue(n[l]),p=r[o[s++]],h=o[s++],f="boolean"==typeof h||h>=0?"dom":"output",g="boolean"==typeof h&&h;t==d&&a.push({element:t,name:u,callback:p,useCapture:g,type:f})}}return a.sort(ep),a}function ep(t,e){return t.name==e.name?0:t.name<e.name?-1:1}function np(t){if("undefined"!=typeof Element&&!(t instanceof Element))throw new Error("Expecting instance of DOM Element")}
  757. /**
  758. * @license
  759. * Copyright Google Inc. All Rights Reserved.
  760. *
  761. * Use of this source code is governed by an MIT-style license that can be
  762. * found in the LICENSE file at https://angular.io/license
  763. */function ip(t){Hl(t),Yd(t).forEach(function(t){return Gl(t)})}
  764. /**
  765. * @license
  766. * Copyright Google Inc. All Rights Reserved.
  767. *
  768. * Use of this source code is governed by an MIT-style license that can be
  769. * found in the LICENSE file at https://angular.io/license
  770. */var rp=!1;function op(){rp||(rp=!0,ap("getComponent",qd),ap("getContext",Kd),ap("getListeners",tp),ap("getOwningComponent",Xd),ap("getHostElement",$d),ap("getInjector",Zd),ap("getRootComponents",Yd),ap("getDirectives",Jd),ap("applyChanges",ip))}function ap(t,e){if("undefined"==typeof COMPILED||!COMPILED){var n=J;if(ngDevMode&&Bt(e,"function not defined"),n){var i=n.ng;i||(i=n.ng={}),i[t]=e}}}
  771. /**
  772. * @license
  773. * Copyright Google Inc. All Rights Reserved.
  774. *
  775. * Use of this source code is governed by an MIT-style license that can be
  776. * found in the LICENSE file at https://angular.io/license
  777. */function sp(t,e){void 0===e&&(e={}),ngDevMode&&op(),ngDevMode&&Te(t);var n=e.rendererFactory||Fe,i=e.sanitizer||null,r=fe(t);r.type!=t&&(r.type=t);var o,a=r.selectors[0][0],s=wa(n.createRenderer(null,null),e.host||a,r.encapsulation),c=r.onPush?576:528,l=up(e.scheduler,e.playerHandler),u=n.createRenderer(s,r),d=ba(0,-1,null,1,0,null,null,null,null,null),p=la(null,d,l,c,null,null,n,u,void 0,e.injector||null);Cn(p,null);try{n.begin&&n.begin(),o=lp(cp(s,r,p,n,u,i),r,p,l,e.hostFeatures||null),da(d,p,null),pa(d,p,null,null)}finally{Pn(),n.end&&n.end()}return o}function cp(t,e,n,i,r,o){var a=n[1];ngDevMode&&Ht(n,20),n[20]=t;var s=ua(a,null,0,3,null,null),c=s.mergedAttrs=e.hostAttrs;null!==c&&(ul(s,c,!0),null!==t&&(Xn(r,t,c),null!==s.classes&&_s(r,t,s.classes),null!==s.styles&&Os(r,t,s.styles)));var l=i.createRenderer(t,e),u=la(n,ya(e),null,e.onPush?64:16,n[20],s,i,l,o);return a.firstCreatePass&&(vi(hi(s,n),a,e.type),Da(a,s),La(s,n.length,1)),Wa(n,u),n[20]=u}function lp(t,e,n,i,r){var o=n[1],a=function(t,e,n){var i=cn();t.firstCreatePass&&(n.providersResolver&&n.providersResolver(n),ka(t,i,1),Na(t,e,n));var r=Mi(e,t,e.length-1,i);Kr(r,e);var o=ze(i,e);return o&&Kr(o,e),r}(o,n,e);i.components.push(a),t[8]=a,r&&r.forEach(function(t){return t(a,e)}),e.contentQueries&&e.contentQueries(1,a,n.length-1);var s=cn();if(o.firstCreatePass&&(null!==e.hostBindings||null!==e.hostAttrs)){Dn(s.index-20);var c=n[1];_a(c,e),Pa(c,n,e.hostVars),Ia(e,a)}return a}function up(t,e){return{components:[],scheduler:t||oi,clean:Qa,playerHandler:e||null,flags:0}}function dp(t,e){var n=Xe(t)[1],i=n.data.length-1;Vn(n,{directiveStart:i,directiveEnd:i+1})}function pp(t){return go(t).clean}
  778. /**
  779. * @license
  780. * Copyright Google Inc. All Rights Reserved.
  781. *
  782. * Use of this source code is governed by an MIT-style license that can be
  783. * found in the LICENSE file at https://angular.io/license
  784. */function hp(t){return Object.getPrototypeOf(t.prototype).constructor}function fp(t){for(var e=hp(t.type),n=!0,i=[t];e;){var r=void 0;if(Ee(t))r=e.ɵcmp||e.ɵdir;else{if(e.ɵcmp)throw new Error("Directives cannot inherit Components");r=e.ɵdir}if(r){if(n){i.push(r);var o=t;o.inputs=gp(t.inputs),o.declaredInputs=gp(t.declaredInputs),o.outputs=gp(t.outputs);var a=r.hostBindings;a&&yp(t,a);var s=r.viewQuery,c=r.contentQueries;if(s&&mp(t,s),c&&vp(t,c),T(t.inputs,r.inputs),T(t.declaredInputs,r.declaredInputs),T(t.outputs,r.outputs),Ee(r)&&r.data.animation){var l=t.data;l.animation=(l.animation||[]).concat(r.data.animation)}o.afterContentChecked=o.afterContentChecked||r.afterContentChecked,o.afterContentInit=t.afterContentInit||r.afterContentInit,o.afterViewChecked=t.afterViewChecked||r.afterViewChecked,o.afterViewInit=t.afterViewInit||r.afterViewInit,o.doCheck=t.doCheck||r.doCheck,o.onDestroy=t.onDestroy||r.onDestroy,o.onInit=t.onInit||r.onInit}var u=r.features;if(u)for(var d=0;d<u.length;d++){var p=u[d];p&&p.ngInherit&&p(t),p===fp&&(n=!1)}}e=Object.getPrototypeOf(e)}!function(t){for(var e=0,n=null,i=t.length-1;i>=0;i--){var r=t[i];r.hostVars=e+=r.hostVars,r.hostAttrs=Jn(r.hostAttrs,n=Jn(n,r.hostAttrs))}}(i)}function gp(t){return t===ee?{}:t===ne?[]:t}function mp(t,e){var n=t.viewQuery;t.viewQuery=n?function(t,i){e(t,i),n(t,i)}:e}function vp(t,e){var n=t.contentQueries;t.contentQueries=n?function(t,i,r){e(t,i,r),n(t,i,r)}:e}function yp(t,e){var n=t.hostBindings;t.hostBindings=n?function(t,i){e(t,i),n(t,i)}:e}
  785. /**
  786. * @license
  787. * Copyright Google Inc. All Rights Reserved.
  788. *
  789. * Use of this source code is governed by an MIT-style license that can be
  790. * found in the LICENSE file at https://angular.io/license
  791. */var bp=["providersResolver"],wp=["template","decls","consts","vars","onPush","ngContentSelectors","styles","encapsulation","schemas"];function Sp(t){var e,n,r,o,a,s=hp(t.type);a=Ee(t)?s.ɵcmp:s.ɵdir;var c=t;try{for(var l=Object(i.j)(bp),u=l.next();!u.done;u=l.next())c[h=u.value]=a[h]}catch(t){e={error:t}}finally{try{u&&!u.done&&(n=l.return)&&n.call(l)}finally{if(e)throw e.error}}if(Ee(a))try{for(var d=Object(i.j)(wp),p=d.next();!p.done;p=d.next()){var h;c[h=p.value]=a[h]}}catch(t){r={error:t}}finally{try{p&&!p.done&&(o=d.return)&&o.call(d)}finally{if(r)throw r.error}}}
  792. /**
  793. * @license
  794. * Copyright Google Inc. All Rights Reserved.
  795. *
  796. * Use of this source code is governed by an MIT-style license that can be
  797. * found in the LICENSE file at https://angular.io/license
  798. */var xp=function(){function t(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}return t.prototype.isFirstChange=function(){return this.firstChange},t}();
  799. /**
  800. * @license
  801. * Copyright Google Inc. All Rights Reserved.
  802. *
  803. * Use of this source code is governed by an MIT-style license that can be
  804. * found in the LICENSE file at https://angular.io/license
  805. */function Mp(t){t.type.prototype.ngOnChanges&&(t.setInput=Ep,t.onChanges=function(){var t=Cp(this),e=t&&t.current;if(e){var n=t.previous;if(n===ee)t.previous=e;else for(var i in e)n[i]=e[i];t.current=null,this.ngOnChanges(e)}})}function Ep(t,e,n,i){var r=Cp(t)||function(t,e){return t.__ngSimpleChanges__=e}
  806. /**
  807. * @license
  808. * Copyright Google Inc. All Rights Reserved.
  809. *
  810. * Use of this source code is governed by an MIT-style license that can be
  811. * found in the LICENSE file at https://angular.io/license
  812. */(t,{previous:ee,current:null}),o=r.current||(r.current={}),a=r.previous,s=this.declaredInputs[n],c=a[s];o[s]=new xp(c&&c.currentValue,e,a===ee),t[i]=e}function Cp(t){return t.__ngSimpleChanges__||null}function Ap(t,e,n,i,r){if(t=G(t),Array.isArray(t))for(var o=0;o<t.length;o++)Ap(t[o],e,n,i,r);else{var a=an(),s=on(),c=Sc(t)?t:G(t.provide),l=yc(t),u=cn(),d=65535&u.providerIndexes,p=u.directiveStart,h=u.providerIndexes>>16;if(Sc(t)||!t.multi){var f=new Hn(l,r,Xl),g=_p(c,e,r?d:d+h,p);-1===g?(vi(hi(u,s),a,c),Tp(a,t,e.length),e.push(c),u.directiveStart++,u.directiveEnd++,r&&(u.providerIndexes+=65536),n.push(f),s.push(f)):(n[g]=f,s[g]=f)}else{var m=_p(c,e,d+h,p),v=_p(c,e,d,d+h),y=m>=0&&n[m],b=v>=0&&n[v];r&&!b||!r&&!y?(vi(hi(u,s),a,c),f=function(t,e,n,i,r){var o=new Hn(t,n,Xl);return o.multi=[],o.index=e,o.componentProviders=0,Op(o,r,i&&!n),o}(r?Ip:Pp,n.length,r,i,l),!r&&b&&(n[v].providerFactory=f),Tp(a,t,e.length,0),e.push(c),u.directiveStart++,u.directiveEnd++,r&&(u.providerIndexes+=65536),n.push(f),s.push(f)):Tp(a,t,m>-1?m:v,Op(n[r?v:m],l,!r&&i)),!r&&i&&b&&n[v].componentProviders++}}}function Tp(t,e,n,i){var r=Sc(e);if(r||e.useClass){var o=(e.useClass||e).prototype.ngOnDestroy;if(o){var a=t.destroyHooks||(t.destroyHooks=[]);if(!r&&e.multi){ngDevMode&&Bt(i,"indexInFactory when registering multi factory destroy hook");var s=a.indexOf(n);-1===s?a.push(n,[i,o]):a[s+1].push(i,o)}else a.push(n,o)}}}function Op(t,e,n){return n&&t.componentProviders++,t.multi.push(e)-1}function _p(t,e,n,i){for(var r=n;r<i;r++)if(e[r]===t)return r;return-1}function Pp(t,e,n,i){return kp(this.multi,[])}function Ip(t,e,n,i){var r,o=this.multi;if(this.providerFactory){var a=this.providerFactory.componentProviders,s=Mi(n,n[1],this.providerFactory.index,i);kp(o,r=s.slice(0,a));for(var c=a;c<s.length;c++)r.push(s[c])}else kp(o,r=[]);return r}function kp(t,e){for(var n=0;n<t.length;n++){var i=t[n];e.push(i())}return e}function Dp(t,e){return void 0===e&&(e=[]),function(n){n.providersResolver=function(n,i){return function(t,e,n){var i=an();if(i.firstCreatePass){var r=Ee(t);Ap(n,i.data,i.blueprint,r,!0),Ap(e,i.data,i.blueprint,r,!1)}}(n,i?i(t):t,e)}}}
  813. /**
  814. * @license
  815. * Copyright Google Inc. All Rights Reserved.
  816. *
  817. * Use of this source code is governed by an MIT-style license that can be
  818. * found in the LICENSE file at https://angular.io/license
  819. */Mp.ngInherit=!0;var Rp=function(){},Lp=function(){};
  820. /**
  821. * @license
  822. * Copyright Google Inc. All Rights Reserved.
  823. *
  824. * Use of this source code is governed by an MIT-style license that can be
  825. * found in the LICENSE file at https://angular.io/license
  826. */function Np(t){var e=Error("No component factory found for "+F(t)+". Did you add it to @NgModule.entryComponents?");return e[Vp]=t,e}var jp,Vp="ngComponent",Fp=function(){function t(){}return t.prototype.resolveComponentFactory=function(t){throw Np(t)},t}(),Up=function(){function t(){}return t.NULL=new Fp,t}(),Bp=function(){function t(t,e,n){this._parent=e,this._ngModule=n,this._factories=new Map;for(var i=0;i<t.length;i++){var r=t[i];this._factories.set(r.componentType,r)}}return t.prototype.resolveComponentFactory=function(t){var e=this._factories.get(t);if(!e&&this._parent&&(e=this._parent.resolveComponentFactory(t)),!e)throw Np(t);return new zp(e,this._ngModule)},t}(),zp=function(t){function e(e,n){var i=t.call(this)||this;return i.factory=e,i.ngModule=n,i.selector=e.selector,i.componentType=e.componentType,i.ngContentSelectors=e.ngContentSelectors,i.inputs=e.inputs,i.outputs=e.outputs,i}return Object(i.c)(e,t),e.prototype.create=function(t,e,n,i){return this.factory.create(t,e,n,i||this.ngModule)},e}(Lp),Gp=function(){function t(t){this.nativeElement=t}return t.__NG_ELEMENT_ID__=function(){return Wp(t)},t}(),Hp=function(t){return Ls(t,cn(),on())},Wp=Hp,qp=(new ct("Renderer2Interceptor"),function(){});!function(t){t[t.Important=1]="Important",t[t.DashCase=2]="DashCase"}(jp||(jp={}));var Kp=function(){function t(){}return t.__NG_ELEMENT_ID__=function(){return Yp()},t}(),Xp=function(){var t=on(),e=qe(cn().index,t);return function(t){var e=t[11];if(Ve(e))return e;throw new Error("Cannot inject Renderer2 when the application uses Renderer3!")}(be(e)?e:t)},Yp=Xp,Zp=function(){function t(){}return t.ɵprov=O({token:t,providedIn:"root",factory:function(){return null}}),t}(),Jp=function(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")},Qp=new Jp("9.1.9"),$p=function(){function t(){}return t.prototype.supports=function(t){return ml(t)},t.prototype.create=function(t){return new eh(t)},t}(),th=function(t,e){return e},eh=function(){function t(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||th}return t.prototype.forEachItem=function(t){var e;for(e=this._itHead;null!==e;e=e._next)t(e)},t.prototype.forEachOperation=function(t){for(var e=this._itHead,n=this._removalsHead,i=0,r=null;e||n;){var o=!n||e&&e.currentIndex<oh(n,i,r)?e:n,a=oh(o,i,r),s=o.currentIndex;if(o===n)i--,n=n._nextRemoved;else if(e=e._next,null==o.previousIndex)i++;else{r||(r=[]);var c=a-i,l=s-i;if(c!=l){for(var u=0;u<c;u++){var d=u<r.length?r[u]:r[u]=0,p=d+u;l<=p&&p<c&&(r[u]=d+1)}r[o.previousIndex]=l-c}}a!==s&&t(o,a,s)}},t.prototype.forEachPreviousItem=function(t){var e;for(e=this._previousItHead;null!==e;e=e._nextPrevious)t(e)},t.prototype.forEachAddedItem=function(t){var e;for(e=this._additionsHead;null!==e;e=e._nextAdded)t(e)},t.prototype.forEachMovedItem=function(t){var e;for(e=this._movesHead;null!==e;e=e._nextMoved)t(e)},t.prototype.forEachRemovedItem=function(t){var e;for(e=this._removalsHead;null!==e;e=e._nextRemoved)t(e)},t.prototype.forEachIdentityChange=function(t){var e;for(e=this._identityChangesHead;null!==e;e=e._nextIdentityChange)t(e)},t.prototype.diff=function(t){if(null==t&&(t=[]),!ml(t))throw new Error("Error trying to diff '"+F(t)+"'. Only arrays and iterables are allowed");return this.check(t)?this:null},t.prototype.onDestroy=function(){},t.prototype.check=function(t){var e=this;this._reset();var n,i,r,o=this._itHead,a=!1;if(Array.isArray(t)){this.length=t.length;for(var s=0;s<this.length;s++)i=t[s],r=this._trackByFn(s,i),null!==o&&hl(o.trackById,r)?(a&&(o=this._verifyReinsertion(o,i,r,s)),hl(o.item,i)||this._addIdentityChange(o,i)):(o=this._mismatch(o,i,r,s),a=!0),o=o._next}else n=0,function(t,e){if(Array.isArray(t))for(var n=0;n<t.length;n++)e(t[n]);else for(var i=t[pl()](),r=void 0;!(r=i.next()).done;)e(r.value)}(t,function(t){r=e._trackByFn(n,t),null!==o&&hl(o.trackById,r)?(a&&(o=e._verifyReinsertion(o,t,r,n)),hl(o.item,t)||e._addIdentityChange(o,t)):(o=e._mismatch(o,t,r,n),a=!0),o=o._next,n++}),this.length=n;return this._truncate(o),this.collection=t,this.isDirty},Object.defineProperty(t.prototype,"isDirty",{get:function(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead},enumerable:!0,configurable:!0}),t.prototype._reset=function(){if(this.isDirty){var t=void 0,e=void 0;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=e)t.previousIndex=t.currentIndex,e=t._nextMoved;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}},t.prototype._mismatch=function(t,e,n,i){var r;return null===t?r=this._itTail:(r=t._prev,this._remove(t)),null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,i))?(hl(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,r,i)):null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(hl(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,r,i)):t=this._addAfter(new nh(e,n),r,i),t},t.prototype._verifyReinsertion=function(t,e,n,i){var r=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==r?t=this._reinsertAfter(r,t._prev,i):t.currentIndex!=i&&(t.currentIndex=i,this._addToMoves(t,i)),t},t.prototype._truncate=function(t){for(;null!==t;){var e=t._next;this._addToRemovals(this._unlink(t)),t=e}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)},t.prototype._reinsertAfter=function(t,e,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);var i=t._prevRemoved,r=t._nextRemoved;return null===i?this._removalsHead=r:i._nextRemoved=r,null===r?this._removalsTail=i:r._prevRemoved=i,this._insertAfter(t,e,n),this._addToMoves(t,n),t},t.prototype._moveAfter=function(t,e,n){return this._unlink(t),this._insertAfter(t,e,n),this._addToMoves(t,n),t},t.prototype._addAfter=function(t,e,n){return this._insertAfter(t,e,n),null===this._additionsTail?this._additionsTail=this._additionsHead=t:this._additionsTail=this._additionsTail._nextAdded=t,t},t.prototype._insertAfter=function(t,e,n){var i=null===e?this._itHead:e._next;return t._next=i,t._prev=e,null===i?this._itTail=t:i._prev=t,null===e?this._itHead=t:e._next=t,null===this._linkedRecords&&(this._linkedRecords=new rh),this._linkedRecords.put(t),t.currentIndex=n,t},t.prototype._remove=function(t){return this._addToRemovals(this._unlink(t))},t.prototype._unlink=function(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);var e=t._prev,n=t._next;return null===e?this._itHead=n:e._next=n,null===n?this._itTail=e:n._prev=e,t},t.prototype._addToMoves=function(t,e){return t.previousIndex===e||(null===this._movesTail?this._movesTail=this._movesHead=t:this._movesTail=this._movesTail._nextMoved=t),t},t.prototype._addToRemovals=function(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new rh),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t},t.prototype._addIdentityChange=function(t,e){return t.item=e,null===this._identityChangesTail?this._identityChangesTail=this._identityChangesHead=t:this._identityChangesTail=this._identityChangesTail._nextIdentityChange=t,t},t}(),nh=function(t,e){this.item=t,this.trackById=e,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null},ih=function(){function t(){this._head=null,this._tail=null}return t.prototype.add=function(t){null===this._head?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)},t.prototype.get=function(t,e){var n;for(n=this._head;null!==n;n=n._nextDup)if((null===e||e<=n.currentIndex)&&hl(n.trackById,t))return n;return null},t.prototype.remove=function(t){var e=t._prevDup,n=t._nextDup;return null===e?this._head=n:e._nextDup=n,null===n?this._tail=e:n._prevDup=e,null===this._head},t}(),rh=function(){function t(){this.map=new Map}return t.prototype.put=function(t){var e=t.trackById,n=this.map.get(e);n||(n=new ih,this.map.set(e,n)),n.add(t)},t.prototype.get=function(t,e){var n=t,i=this.map.get(n);return i?i.get(t,e):null},t.prototype.remove=function(t){var e=t.trackById;return this.map.get(e).remove(t)&&this.map.delete(e),t},Object.defineProperty(t.prototype,"isEmpty",{get:function(){return 0===this.map.size},enumerable:!0,configurable:!0}),t.prototype.clear=function(){this.map.clear()},t}();function oh(t,e,n){var i=t.previousIndex;if(null===i)return i;var r=0;return n&&i<n.length&&(r=n[i]),i+e+r}
  827. /**
  828. * @license
  829. * Copyright Google Inc. All Rights Reserved.
  830. *
  831. * Use of this source code is governed by an MIT-style license that can be
  832. * found in the LICENSE file at https://angular.io/license
  833. */var ah=function(){function t(){}return t.prototype.supports=function(t){return t instanceof Map||vl(t)},t.prototype.create=function(){return new sh},t}(),sh=function(){function t(){this._records=new Map,this._mapHead=null,this._appendAfter=null,this._previousMapHead=null,this._changesHead=null,this._changesTail=null,this._additionsHead=null,this._additionsTail=null,this._removalsHead=null,this._removalsTail=null}return Object.defineProperty(t.prototype,"isDirty",{get:function(){return null!==this._additionsHead||null!==this._changesHead||null!==this._removalsHead},enumerable:!0,configurable:!0}),t.prototype.forEachItem=function(t){var e;for(e=this._mapHead;null!==e;e=e._next)t(e)},t.prototype.forEachPreviousItem=function(t){var e;for(e=this._previousMapHead;null!==e;e=e._nextPrevious)t(e)},t.prototype.forEachChangedItem=function(t){var e;for(e=this._changesHead;null!==e;e=e._nextChanged)t(e)},t.prototype.forEachAddedItem=function(t){var e;for(e=this._additionsHead;null!==e;e=e._nextAdded)t(e)},t.prototype.forEachRemovedItem=function(t){var e;for(e=this._removalsHead;null!==e;e=e._nextRemoved)t(e)},t.prototype.diff=function(t){if(t){if(!(t instanceof Map||vl(t)))throw new Error("Error trying to diff '"+F(t)+"'. Only maps and objects are allowed")}else t=new Map;return this.check(t)?this:null},t.prototype.onDestroy=function(){},t.prototype.check=function(t){var e=this;this._reset();var n=this._mapHead;if(this._appendAfter=null,this._forEach(t,function(t,i){if(n&&n.key===i)e._maybeAddToChanges(n,t),e._appendAfter=n,n=n._next;else{var r=e._getOrCreateRecordForKey(i,t);n=e._insertBeforeOrAppend(n,r)}}),n){n._prev&&(n._prev._next=null),this._removalsHead=n;for(var i=n;null!==i;i=i._nextRemoved)i===this._mapHead&&(this._mapHead=null),this._records.delete(i.key),i._nextRemoved=i._next,i.previousValue=i.currentValue,i.currentValue=null,i._prev=null,i._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty},t.prototype._insertBeforeOrAppend=function(t,e){if(t){var n=t._prev;return e._next=t,e._prev=n,t._prev=e,n&&(n._next=e),t===this._mapHead&&(this._mapHead=e),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null},t.prototype._getOrCreateRecordForKey=function(t,e){if(this._records.has(t)){var n=this._records.get(t);this._maybeAddToChanges(n,e);var i=n._prev,r=n._next;return i&&(i._next=r),r&&(r._prev=i),n._next=null,n._prev=null,n}var o=new ch(t);return this._records.set(t,o),o.currentValue=e,this._addToAdditions(o),o},t.prototype._reset=function(){if(this.isDirty){var t=void 0;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}},t.prototype._maybeAddToChanges=function(t,e){hl(e,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=e,this._addToChanges(t))},t.prototype._addToAdditions=function(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)},t.prototype._addToChanges=function(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)},t.prototype._forEach=function(t,e){t instanceof Map?t.forEach(e):Object.keys(t).forEach(function(n){return e(t[n],n)})},t}(),ch=function(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null},lh=function(){function t(t){this.factories=t}return t.create=function(e,n){if(null!=n){var i=n.factories.slice();e=e.concat(i)}return new t(e)},t.extend=function(e){return{provide:t,useFactory:function(n){if(!n)throw new Error("Cannot extend IterableDiffers without a parent injector");return t.create(e,n)},deps:[[t,new x,new w]]}},t.prototype.find=function(t){var e,n=this.factories.find(function(e){return e.supports(t)});if(null!=n)return n;throw new Error("Cannot find a differ supporting object '"+t+"' of type '"+((e=t).name||typeof e)+"'")},t.ɵprov=O({token:t,providedIn:"root",factory:function(){return new t([new $p])}}),t}(),uh=function(){function t(t){this.factories=t}return t.create=function(e,n){if(n){var i=n.factories.slice();e=e.concat(i)}return new t(e)},t.extend=function(e){return{provide:t,useFactory:function(n){if(!n)throw new Error("Cannot extend KeyValueDiffers without a parent injector");return t.create(e,n)},deps:[[t,new x,new w]]}},t.prototype.find=function(t){var e=this.factories.find(function(e){return e.supports(t)});if(e)return e;throw new Error("Cannot find a differ supporting object '"+t+"'")},t.ɵprov=O({token:t,providedIn:"root",factory:function(){return new t([new ah])}}),t}(),dh=[new ah],ph=[new $p],hh=new lh(ph),fh=new uh(dh),gh=function(){function t(){}return t.__NG_ELEMENT_ID__=function(){return vh(t,Gp)},t}(),mh=function(t,e){return Ns(t,e,cn(),on())},vh=mh,yh=function(){function t(){}return t.__NG_ELEMENT_ID__=function(){return wh(t,Gp)},t}(),bh=function(t,e){return js(t,e,cn(),on())},wh=bh;
  834. /**
  835. * @license
  836. * Copyright Google Inc. All Rights Reserved.
  837. *
  838. * Use of this source code is governed by an MIT-style license that can be
  839. * found in the LICENSE file at https://angular.io/license
  840. */
  841. /**
  842. * @license
  843. * Copyright Google Inc. All Rights Reserved.
  844. *
  845. * Use of this source code is governed by an MIT-style license that can be
  846. * found in the LICENSE file at https://angular.io/license
  847. */
  848. /**
  849. * @license
  850. * Copyright Google Inc. All Rights Reserved.
  851. *
  852. * Use of this source code is governed by an MIT-style license that can be
  853. * found in the LICENSE file at https://angular.io/license
  854. */
  855. function Sh(t,e,n,i){var r="ExpressionChangedAfterItHasBeenCheckedError: Expression has changed after it was checked. Previous value: '"+e+"'. Current value: '"+n+"'.";return i&&(r+=" It seems like the view has been created after its parent and its children have been dirty checked. Has it been created in a change detection hook ?"),function(t,e){var n=new Error(r);return xh(n,e),n}(0,t)}function xh(t,e){t.ngDebugContext=e,t.ngErrorLogger=e.logError.bind(e)}function Mh(t){return new Error("ViewDestroyedError: Attempt to use a destroyed view: "+t)}
  856. /**
  857. * @license
  858. * Copyright Google Inc. All Rights Reserved.
  859. *
  860. * Use of this source code is governed by an MIT-style license that can be
  861. * found in the LICENSE file at https://angular.io/license
  862. */function Eh(t,e,n){var i=t.state,r=1792&i;return r===e?(t.state=-1793&i|n,t.initIndex=-1,!0):r===n}function Ch(t,e,n){return(1792&t.state)===e&&t.initIndex<=n&&(t.initIndex=n+1,!0)}function Ah(t,e){return t.nodes[e]}function Th(t,e){return t.nodes[e]}function Oh(t,e){return t.nodes[e]}function _h(t,e){return t.nodes[e]}function Ph(t,e){return t.nodes[e]}var Ih=function(){},kh={setCurrentNode:void 0,createRootView:void 0,createEmbeddedView:void 0,createComponentView:void 0,createNgModuleRef:void 0,overrideProvider:void 0,overrideComponentView:void 0,clearOverrides:void 0,checkAndUpdateView:void 0,checkNoChangesView:void 0,destroyView:void 0,resolveDep:void 0,createDebugContext:void 0,handleEvent:void 0,updateDirectives:void 0,updateRenderer:void 0,dirtyParentQueries:void 0},Dh=function(){},Rh=new Map;function Lh(t){var e=Rh.get(t);return e||(e=F(t)+"_"+Rh.size,Rh.set(t,e)),e}function Nh(t,e,n,i){if(gl.isWrapped(i)){i=gl.unwrap(i);var r=t.def.nodes[e].bindingIndex+n,o=gl.unwrap(t.oldValues[r]);t.oldValues[r]=new gl(o)}return i}function jh(t){return{id:"$$undefined",styles:t.styles,encapsulation:t.encapsulation,data:t.data}}var Vh=0;function Fh(t,e,n,i){var r=t.oldValues;return!(!(2&t.state)&&hl(r[e.bindingIndex+n],i))}function Uh(t,e,n,i){return!!Fh(t,e,n,i)&&(t.oldValues[e.bindingIndex+n]=i,!0)}function Bh(t,e,n,i){var r=t.oldValues[e.bindingIndex+n];if(1&t.state||!fl(r,i)){var o=e.bindings[n].name;throw Sh(kh.createDebugContext(t,e.nodeIndex),o+": "+r,o+": "+i,0!=(1&t.state))}}function zh(t){for(var e=t;e;)2&e.def.flags&&(e.state|=8),e=e.viewContainerParent||e.parent}function Gh(t,e){for(var n=t;n&&n!==e;)n.state|=64,n=n.viewContainerParent||n.parent}function Hh(t,e,n,i){try{return zh(33554432&t.def.nodes[e].flags?Th(t,e).componentView:t),kh.handleEvent(t,e,n,i)}catch(e){t.root.errorHandler.handleError(e)}}function Wh(t){return t.parent?Th(t.parent,t.parentNodeDef.nodeIndex):null}function qh(t){return t.parent?t.parentNodeDef.parent:null}function Kh(t,e){switch(201347067&e.flags){case 1:return Th(t,e.nodeIndex).renderElement;case 2:return Ah(t,e.nodeIndex).renderText}}function Xh(t,e){return t?t+":"+e:e}function Yh(t){return!!t.parent&&!!(32768&t.parentNodeDef.flags)}function Zh(t){return!(!t.parent||32768&t.parentNodeDef.flags)}function Jh(t){return 1<<t%32}function Qh(t){var e={},n=0,r={};return t&&t.forEach(function(t){var o=Object(i.f)(t,2),a=o[0],s=o[1];"number"==typeof a?(e[a]=s,n|=Jh(a)):r[a]=s}),{matchedQueries:e,references:r,matchedQueryIds:n}}function $h(t,e){return t.map(function(t){var n,r,o;return Array.isArray(t)?(o=(n=Object(i.f)(t,2))[0],r=n[1]):(o=0,r=t),r&&("function"==typeof r||"object"==typeof r)&&e&&Object.defineProperty(r,"__source",{value:e,configurable:!0}),{flags:o,token:r,tokenKey:Lh(r)}})}function tf(t,e,n){var i=n.renderParent;return i?0==(1&i.flags)||0==(33554432&i.flags)||i.element.componentRendererType&&i.element.componentRendererType.encapsulation===Tt.Native?Th(t,n.renderParent.nodeIndex).renderElement:void 0:e}var ef=new WeakMap;function nf(t){var e=ef.get(t);return e||((e=t(function(){return Dh})).factory=t,ef.set(t,e)),e}function rf(t,e,n,i,r){3===e&&(n=t.renderer.parentNode(Kh(t,t.def.lastRenderRootNode))),of(t,e,0,t.def.nodes.length-1,n,i,r)}function of(t,e,n,i,r,o,a){for(var s=n;s<=i;s++){var c=t.def.nodes[s];11&c.flags&&sf(t,c,e,r,o,a),s+=c.childCount}}function af(t,e,n,i,r,o){for(var a=t;a&&!Yh(a);)a=a.parent;for(var s=a.parent,c=qh(a),l=c.nodeIndex+1,u=c.nodeIndex+c.childCount,d=l;d<=u;d++){var p=s.def.nodes[d];p.ngContentIndex===e&&sf(s,p,n,i,r,o),d+=p.childCount}if(!s.parent){var h=t.root.projectableNodes[e];if(h)for(d=0;d<h.length;d++)cf(t,h[d],n,i,r,o)}}function sf(t,e,n,i,r,o){if(8&e.flags)af(t,e.ngContent.index,n,i,r,o);else{var a=Kh(t,e);if(3===n&&33554432&e.flags&&48&e.bindingFlags?(16&e.bindingFlags&&cf(t,a,n,i,r,o),32&e.bindingFlags&&cf(Th(t,e.nodeIndex).componentView,a,n,i,r,o)):cf(t,a,n,i,r,o),16777216&e.flags)for(var s=Th(t,e.nodeIndex).viewContainer._embeddedViews,c=0;c<s.length;c++)rf(s[c],n,i,r,o);1&e.flags&&!e.element.name&&of(t,n,e.nodeIndex+1,e.nodeIndex+e.childCount,i,r,o)}}function cf(t,e,n,i,r,o){var a=t.renderer;switch(n){case 1:a.appendChild(i,e);break;case 2:a.insertBefore(i,e,r);break;case 3:a.removeChild(i,e);break;case 0:o.push(e)}}var lf=/^:([^:]+):(.+)$/;function uf(t){if(":"===t[0]){var e=t.match(lf);return[e[1],e[2]]}return["",t]}function df(t){for(var e=0,n=0;n<t.length;n++)e|=t[n].flags;return e}function pf(t,e){for(var n="",i=0;i<2*t;i+=2)n=n+e[i]+ff(e[i+1]);return n+e[2*t]}function hf(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m,v,y,b){switch(t){case 1:return e+ff(n)+i;case 2:return e+ff(n)+i+ff(r)+o;case 3:return e+ff(n)+i+ff(r)+o+ff(a)+s;case 4:return e+ff(n)+i+ff(r)+o+ff(a)+s+ff(c)+l;case 5:return e+ff(n)+i+ff(r)+o+ff(a)+s+ff(c)+l+ff(u)+d;case 6:return e+ff(n)+i+ff(r)+o+ff(a)+s+ff(c)+l+ff(u)+d+ff(p)+h;case 7:return e+ff(n)+i+ff(r)+o+ff(a)+s+ff(c)+l+ff(u)+d+ff(p)+h+ff(f)+g;case 8:return e+ff(n)+i+ff(r)+o+ff(a)+s+ff(c)+l+ff(u)+d+ff(p)+h+ff(f)+g+ff(m)+v;case 9:return e+ff(n)+i+ff(r)+o+ff(a)+s+ff(c)+l+ff(u)+d+ff(p)+h+ff(f)+g+ff(m)+v+ff(y)+b;default:throw new Error("Does not support more than 9 expressions")}}function ff(t){return null!=t?t.toString():""}var gf=[],mf={},vf={},yf=Lh(Ec),bf=Lh(lt),wf=Lh(_t);function Sf(t,e,n,i){return n=G(n),{index:-1,deps:$h(i,F(e)),flags:t,token:e,value:n}}function xf(t){for(var e={},n=[],i=null,r=0;r<t.length;r++){var o=t[r];o.token===cc&&(i=o.value),1073741824&o.flags&&n.push(o.token),o.index=r,e[Lh(o.token)]=o}return{factory:null,providersByKey:e,providers:t,modules:n,scope:i}}function Mf(t,e,n){void 0===n&&(n=Ec.THROW_IF_NOT_FOUND);var i,r,o=ft(t);try{if(8&e.flags)return e.token;if(2&e.flags&&(n=null),1&e.flags)return t._parent.get(e.token,n);var a=e.tokenKey;switch(a){case yf:case bf:case wf:return t}var s,c=t._def.providersByKey[a];if(c){var l=t._providers[c.index];return void 0===l&&(l=t._providers[c.index]=Ef(t,c)),l===vf?void 0:l}if((s=I(e.token))&&(i=t,null!=(r=s.providedIn)&&("any"===r||r===i._def.scope||function(t,e){return i._def.modules.indexOf(e)>-1}(0,r)))){var u=t._providers.length;return t._def.providers[u]=t._def.providersByKey[e.tokenKey]={flags:5120,value:s.factory,deps:[],index:u,token:e.token},t._providers[u]=vf,t._providers[u]=Ef(t,t._def.providersByKey[e.tokenKey])}return 4&e.flags?n:t._parent.get(e.token,n)}finally{ft(o)}}function Ef(t,e){var n;switch(201347067&e.flags){case 512:n=function(t,e,n){var r=n.length;switch(r){case 0:return new e;case 1:return new e(Mf(t,n[0]));case 2:return new e(Mf(t,n[0]),Mf(t,n[1]));case 3:return new e(Mf(t,n[0]),Mf(t,n[1]),Mf(t,n[2]));default:for(var o=[],a=0;a<r;a++)o[a]=Mf(t,n[a]);return new(e.bind.apply(e,Object(i.h)([void 0],o)))}}(t,e.value,e.deps);break;case 1024:n=function(t,e,n){var r=n.length;switch(r){case 0:return e();case 1:return e(Mf(t,n[0]));case 2:return e(Mf(t,n[0]),Mf(t,n[1]));case 3:return e(Mf(t,n[0]),Mf(t,n[1]),Mf(t,n[2]));default:for(var o=[],a=0;a<r;a++)o[a]=Mf(t,n[a]);return e.apply(void 0,Object(i.h)(o))}}(t,e.value,e.deps);break;case 2048:n=Mf(t,e.deps[0]);break;case 256:n=e.value}return n===vf||null===n||"object"!=typeof n||131072&e.flags||"function"!=typeof n.ngOnDestroy||(e.flags|=131072),void 0===n?vf:n}
  863. /**
  864. * @license
  865. * Copyright Google Inc. All Rights Reserved.
  866. *
  867. * Use of this source code is governed by an MIT-style license that can be
  868. * found in the LICENSE file at https://angular.io/license
  869. */function Cf(t,e){var n=t.viewContainer._embeddedViews;if((null==e||e>=n.length)&&(e=n.length-1),e<0)return null;var i=n[e];return i.viewContainerParent=null,Yt(n,e),kh.dirtyParentQueries(i),Tf(i),i}function Af(t,e,n){var i=e?Kh(e,e.def.lastRenderRootNode):t.renderElement;rf(n,2,n.renderer.parentNode(i),n.renderer.nextSibling(i),void 0)}function Tf(t){rf(t,3,null,null,void 0)}
  870. /**
  871. * @license
  872. * Copyright Google Inc. All Rights Reserved.
  873. *
  874. * Use of this source code is governed by an MIT-style license that can be
  875. * found in the LICENSE file at https://angular.io/license
  876. */var Of={};function _f(t,e,n,i,r,o){return new If(t,e,n,i,r,o)}function Pf(t){return t.viewDefFactory}var If=function(t){function e(e,n,i,r,o,a){var s=t.call(this)||this;return s.selector=e,s.componentType=n,s._inputs=r,s._outputs=o,s.ngContentSelectors=a,s.viewDefFactory=i,s}return Object(i.c)(e,t),Object.defineProperty(e.prototype,"inputs",{get:function(){var t=[],e=this._inputs;for(var n in e){var i=e[n];t.push({propName:n,templateName:i})}return t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"outputs",{get:function(){var t=[];for(var e in this._outputs){var n=this._outputs[e];t.push({propName:e,templateName:n})}return t},enumerable:!0,configurable:!0}),e.prototype.create=function(t,e,n,i){if(!i)throw new Error("ngModule should be provided");var r=nf(this.viewDefFactory),o=r.nodes[0].element.componentProvider.nodeIndex,a=kh.createRootView(t,e||[],n,r,i,Of),s=Oh(a,o).instance;return n&&a.renderer.setAttribute(Th(a,0).renderElement,"ng-version",Qp.full),new kf(a,new Nf(a),s)},e}(Lp),kf=function(t){function e(e,n,i){var r=t.call(this)||this;return r._view=e,r._viewRef=n,r._component=i,r._elDef=r._view.def.nodes[0],r.hostView=n,r.changeDetectorRef=n,r.instance=i,r}return Object(i.c)(e,t),Object.defineProperty(e.prototype,"location",{get:function(){return new Gp(Th(this._view,this._elDef.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"injector",{get:function(){return new Uf(this._view,this._elDef)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"componentType",{get:function(){return this._component.constructor},enumerable:!0,configurable:!0}),e.prototype.destroy=function(){this._viewRef.destroy()},e.prototype.onDestroy=function(t){this._viewRef.onDestroy(t)},e}(Rp);function Df(t,e,n){return new Rf(t,e,n)}var Rf=function(){function t(t,e,n){this._view=t,this._elDef=e,this._data=n,this._embeddedViews=[]}return Object.defineProperty(t.prototype,"element",{get:function(){return new Gp(this._data.renderElement)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"injector",{get:function(){return new Uf(this._view,this._elDef)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"parentInjector",{get:function(){for(var t=this._view,e=this._elDef.parent;!e&&t;)e=qh(t),t=t.parent;return t?new Uf(t,e):new Uf(this._view,null)},enumerable:!0,configurable:!0}),t.prototype.clear=function(){for(var t=this._embeddedViews.length-1;t>=0;t--){var e=Cf(this._data,t);kh.destroyView(e)}},t.prototype.get=function(t){var e=this._embeddedViews[t];if(e){var n=new Nf(e);return n.attachToViewContainerRef(this),n}return null},Object.defineProperty(t.prototype,"length",{get:function(){return this._embeddedViews.length},enumerable:!0,configurable:!0}),t.prototype.createEmbeddedView=function(t,e,n){var i=t.createEmbeddedView(e||{});return this.insert(i,n),i},t.prototype.createComponent=function(t,e,n,i,r){var o=n||this.parentInjector;r||t instanceof zp||(r=o.get(_t));var a=t.create(o,i,void 0,r);return this.insert(a.hostView,e),a},t.prototype.insert=function(t,e){if(t.destroyed)throw new Error("Cannot insert a destroyed View in a ViewContainer!");var n=t,i=n._view;return function(t,e,n,i){var r=e.viewContainer._embeddedViews;null==n&&(n=r.length),i.viewContainerParent=t,Xt(r,n,i),function(t,e){var n=Wh(e);if(n&&n!==t&&!(16&e.state)){e.state|=16;var i=n.template._projectedViews;i||(i=n.template._projectedViews=[]),i.push(e),function(t,e){if(!(4&e.flags)){t.nodeFlags|=4,e.flags|=4;for(var n=e.parent;n;)n.childFlags|=4,n=n.parent}}(e.parent.def,e.parentNodeDef)}}(e,i),kh.dirtyParentQueries(i),Af(e,n>0?r[n-1]:null,i)}(this._view,this._data,e,i),n.attachToViewContainerRef(this),t},t.prototype.move=function(t,e){if(t.destroyed)throw new Error("Cannot move a destroyed View in a ViewContainer!");var n,i,r,o,a;return i=this._embeddedViews.indexOf(t._view),r=e,a=(o=(n=this._data).viewContainer._embeddedViews)[i],Yt(o,i),null==r&&(r=o.length),Xt(o,r,a),kh.dirtyParentQueries(a),Tf(a),Af(n,r>0?o[r-1]:null,a),t},t.prototype.indexOf=function(t){return this._embeddedViews.indexOf(t._view)},t.prototype.remove=function(t){var e=Cf(this._data,t);e&&kh.destroyView(e)},t.prototype.detach=function(t){var e=Cf(this._data,t);return e?new Nf(e):null},t}();function Lf(t){return new Nf(t)}var Nf=function(){function t(t){this._view=t,this._viewContainerRef=null,this._appRef=null}return Object.defineProperty(t.prototype,"rootNodes",{get:function(){return rf(this._view,0,void 0,void 0,t=[]),t;var t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"context",{get:function(){return this._view.context},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"destroyed",{get:function(){return 0!=(128&this._view.state)},enumerable:!0,configurable:!0}),t.prototype.markForCheck=function(){zh(this._view)},t.prototype.detach=function(){this._view.state&=-5},t.prototype.detectChanges=function(){var t=this._view.root.rendererFactory;t.begin&&t.begin();try{kh.checkAndUpdateView(this._view)}finally{t.end&&t.end()}},t.prototype.checkNoChanges=function(){kh.checkNoChangesView(this._view)},t.prototype.reattach=function(){this._view.state|=4},t.prototype.onDestroy=function(t){this._view.disposables||(this._view.disposables=[]),this._view.disposables.push(t)},t.prototype.destroy=function(){this._appRef?this._appRef.detachView(this):this._viewContainerRef&&this._viewContainerRef.detach(this._viewContainerRef.indexOf(this)),kh.destroyView(this._view)},t.prototype.detachFromAppRef=function(){this._appRef=null,Tf(this._view),kh.dirtyParentQueries(this._view)},t.prototype.attachToAppRef=function(t){if(this._viewContainerRef)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t},t.prototype.attachToViewContainerRef=function(t){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._viewContainerRef=t},t}();function jf(t,e){return new Vf(t,e)}var Vf=function(t){function e(e,n){var i=t.call(this)||this;return i._parentView=e,i._def=n,i}return Object(i.c)(e,t),e.prototype.createEmbeddedView=function(t){return new Nf(kh.createEmbeddedView(this._parentView,this._def,this._def.element.template,t))},Object.defineProperty(e.prototype,"elementRef",{get:function(){return new Gp(Th(this._parentView,this._def.nodeIndex).renderElement)},enumerable:!0,configurable:!0}),e}(gh);function Ff(t,e){return new Uf(t,e)}var Uf=function(){function t(t,e){this.view=t,this.elDef=e}return t.prototype.get=function(t,e){void 0===e&&(e=Ec.THROW_IF_NOT_FOUND);var n=!!this.elDef&&0!=(33554432&this.elDef.flags);return kh.resolveDep(this.view,this.elDef,n,{flags:0,token:t,tokenKey:Lh(t)},e)},t}();function Bf(t,e){var n=t.def.nodes[e];if(1&n.flags){var i=Th(t,n.nodeIndex);return n.element.template?i.template:i.renderElement}if(2&n.flags)return Ah(t,n.nodeIndex).renderText;if(20240&n.flags)return Oh(t,n.nodeIndex).instance;throw new Error("Illegal state: read nodeValue for node index "+e)}function zf(t,e,n,i){return new Gf(t,e,n,i)}var Gf=function(){function t(t,e,n,i){this._moduleType=t,this._parent=e,this._bootstrapComponents=n,this._def=i,this._destroyListeners=[],this._destroyed=!1,this.injector=this,function(t){for(var e=t._def,n=t._providers=Zt(e.providers.length),i=0;i<e.providers.length;i++){var r=e.providers[i];4096&r.flags||void 0===n[i]&&(n[i]=Ef(t,r))}}(this)}return t.prototype.get=function(t,e,n){void 0===e&&(e=Ec.THROW_IF_NOT_FOUND),void 0===n&&(n=v.Default);var i=0;return n&v.SkipSelf?i|=1:n&v.Self&&(i|=4),Mf(this,{token:t,tokenKey:Lh(t),flags:i},e)},Object.defineProperty(t.prototype,"instance",{get:function(){return this.get(this._moduleType)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"componentFactoryResolver",{get:function(){return this.get(Up)},enumerable:!0,configurable:!0}),t.prototype.destroy=function(){if(this._destroyed)throw new Error("The ng module "+F(this.instance.constructor)+" has already been destroyed.");this._destroyed=!0,function(t,e){for(var n=t._def,i=new Set,r=0;r<n.providers.length;r++)if(131072&n.providers[r].flags){var o=t._providers[r];if(o&&o!==vf){var a=o.ngOnDestroy;"function"!=typeof a||i.has(o)||(a.apply(o),i.add(o))}}}(this),this._destroyListeners.forEach(function(t){return t()})},t.prototype.onDestroy=function(t){this._destroyListeners.push(t)},t}(),Hf=Lh(Kp),Wf=Lh(Gp),qf=Lh(yh),Kf=Lh(gh),Xf=Lh(Fs),Yf=Lh(Ec),Zf=Lh(lt);
  877. /**
  878. * @license
  879. * Copyright Google Inc. All Rights Reserved.
  880. *
  881. * Use of this source code is governed by an MIT-style license that can be
  882. * found in the LICENSE file at https://angular.io/license
  883. */function Jf(t,e,n,r,o,a,s,c){var l=[];if(s)for(var u in s){var d=Object(i.f)(s[u],2),p=d[0],h=d[1];l[p]={flags:8,name:u,nonMinifiedName:h,ns:null,securityContext:null,suffix:null}}var f=[];if(c)for(var g in c)f.push({type:1,propName:g,target:null,eventName:c[g]});return tg(t,e|=16384,n,r,o,o,a,l,f)}function Qf(t,e,n){return tg(-1,t|=16,null,0,e,e,n)}function $f(t,e,n,i,r){return tg(-1,t,e,0,n,i,r)}function tg(t,e,n,i,r,o,a,s,c){var l=Qh(n),u=l.matchedQueries,d=l.references,p=l.matchedQueryIds;c||(c=[]),s||(s=[]),o=G(o);var h=$h(a,F(r));return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:u,matchedQueryIds:p,references:d,ngContentIndex:-1,childCount:i,bindings:s,bindingFlags:df(s),outputs:c,element:null,provider:{token:r,value:o,deps:h},text:null,query:null,ngContent:null}}function eg(t,e){return og(t,e)}function ng(t,e){for(var n=t;n.parent&&!Yh(n);)n=n.parent;return ag(n.parent,qh(n),!0,e.provider.value,e.provider.deps)}function ig(t,e){var n=(32768&e.flags)>0,i=ag(t,e.parent,n,e.provider.value,e.provider.deps);if(e.outputs.length)for(var r=0;r<e.outputs.length;r++){var o=e.outputs[r],a=i[o.propName];if(!su(a))throw new Error("@Output "+o.propName+" not initialized in '"+i.constructor.name+"'.");var s=a.subscribe(rg(t,e.parent.nodeIndex,o.eventName));t.disposables[e.outputIndex+r]=s.unsubscribe.bind(s)}return i}function rg(t,e,n){return function(i){return Hh(t,e,n,i)}}function og(t,e){var n=(8192&e.flags)>0,r=e.provider;switch(201347067&e.flags){case 512:return ag(t,e.parent,n,r.value,r.deps);case 1024:return function(t,e,n,r,o){var a=o.length;switch(a){case 0:return r();case 1:return r(cg(t,e,n,o[0]));case 2:return r(cg(t,e,n,o[0]),cg(t,e,n,o[1]));case 3:return r(cg(t,e,n,o[0]),cg(t,e,n,o[1]),cg(t,e,n,o[2]));default:for(var s=[],c=0;c<a;c++)s.push(cg(t,e,n,o[c]));return r.apply(void 0,Object(i.h)(s))}}(t,e.parent,n,r.value,r.deps);case 2048:return cg(t,e.parent,n,r.deps[0]);case 256:return r.value}}function ag(t,e,n,r,o){var a=o.length;switch(a){case 0:return new r;case 1:return new r(cg(t,e,n,o[0]));case 2:return new r(cg(t,e,n,o[0]),cg(t,e,n,o[1]));case 3:return new r(cg(t,e,n,o[0]),cg(t,e,n,o[1]),cg(t,e,n,o[2]));default:for(var s=[],c=0;c<a;c++)s.push(cg(t,e,n,o[c]));return new(r.bind.apply(r,Object(i.h)([void 0],s)))}}var sg={};function cg(t,e,n,i,r){if(void 0===r&&(r=Ec.THROW_IF_NOT_FOUND),8&i.flags)return i.token;var o=t;2&i.flags&&(r=null);var a=i.tokenKey;a===Xf&&(n=!(!e||!e.element.componentView)),e&&1&i.flags&&(n=!1,e=e.parent);for(var s=t;s;){if(e)switch(a){case Hf:return lg(s,e,n).renderer;case Wf:return new Gp(Th(s,e.nodeIndex).renderElement);case qf:return Th(s,e.nodeIndex).viewContainer;case Kf:if(e.element.template)return Th(s,e.nodeIndex).template;break;case Xf:return Lf(lg(s,e,n));case Yf:case Zf:return Ff(s,e);default:var c=(n?e.element.allProviders:e.element.publicProviders)[a];if(c){var l=Oh(s,c.nodeIndex);return l||(l={instance:og(s,c)},s.nodes[c.nodeIndex]=l),l.instance}}n=Yh(s),e=qh(s),s=s.parent,4&i.flags&&(s=null)}var u=o.root.injector.get(i.token,sg);return u!==sg||r===sg?u:o.root.ngModule.injector.get(i.token,r)}function lg(t,e,n){var i;if(n)i=Th(t,e.nodeIndex).componentView;else for(i=t;i.parent&&!Yh(i);)i=i.parent;return i}function ug(t,e,n,i,r,o){if(32768&n.flags){var a=Th(t,n.parent.nodeIndex).componentView;2&a.def.flags&&(a.state|=8)}var s=n.bindings[i].name;if(e.instance[s]=r,524288&n.flags){o=o||{};var c=gl.unwrap(t.oldValues[n.bindingIndex+i]);o[n.bindings[i].nonMinifiedName]=new xp(c,r,0!=(2&t.state))}return t.oldValues[n.bindingIndex+i]=r,o}function dg(t,e){if(t.def.nodeFlags&e)for(var n=t.def.nodes,i=0,r=0;r<n.length;r++){var o=n[r],a=o.parent;for(!a&&o.flags&e&&hg(t,r,o.flags&e,i++),0==(o.childFlags&e)&&(r+=o.childCount);a&&1&a.flags&&r===a.nodeIndex+a.childCount;)a.directChildFlags&e&&(i=pg(t,a,e,i)),a=a.parent}}function pg(t,e,n,i){for(var r=e.nodeIndex+1;r<=e.nodeIndex+e.childCount;r++){var o=t.def.nodes[r];o.flags&n&&hg(t,r,o.flags&n,i++),r+=o.childCount}return i}function hg(t,e,n,i){var r=Oh(t,e);if(r){var o=r.instance;o&&(kh.setCurrentNode(t,e),1048576&n&&Ch(t,512,i)&&o.ngAfterContentInit(),2097152&n&&o.ngAfterContentChecked(),4194304&n&&Ch(t,768,i)&&o.ngAfterViewInit(),8388608&n&&o.ngAfterViewChecked(),131072&n&&o.ngOnDestroy())}}
  884. /**
  885. * @license
  886. * Copyright Google Inc. All Rights Reserved.
  887. *
  888. * Use of this source code is governed by an MIT-style license that can be
  889. * found in the LICENSE file at https://angular.io/license
  890. */var fg=function(t){function e(e){var n=t.call(this)||this;return n.ngModule=e,n}return Object(i.c)(e,t),e.prototype.resolveComponentFactory=function(t){ngDevMode&&Te(t);var e=fe(t);return new vg(e,this.ngModule)},e}(Up);function gg(t){var e=[];for(var n in t)if(t.hasOwnProperty(n)){var i=t[n];e.push({propName:i,templateName:n})}return e}var mg=new ct("SCHEDULER_TOKEN",{providedIn:"root",factory:function(){return oi}}),vg=function(t){function e(e,n){var i=t.call(this)||this;return i.componentDef=e,i.ngModule=n,i.componentType=e.type,i.selector=e.selectors.map(po).join(","),i.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],i.isBoundToModule=!!n,i}return Object(i.c)(e,t),Object.defineProperty(e.prototype,"inputs",{get:function(){return gg(this.componentDef.inputs)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"outputs",{get:function(){return gg(this.componentDef.outputs)},enumerable:!0,configurable:!0}),e.prototype.create=function(t,e,n,i){var r,o,a=(i=i||this.ngModule)?function(t,e){return{get:function(n,i,r){var o=t.get(n,sg,r);return o!==sg||i===sg?o:e.get(n,i,r)}}}(t,i.injector):t,s=a.get(qp,Fe),c=a.get(Zp,null),l=s.createRenderer(null,this.componentDef),u=this.componentDef.selectors[0][0]||"div",d=n?wa(l,n,this.componentDef.encapsulation):ca(u,s.createRenderer(null,this.componentDef),function(t){var e=u.toLowerCase();return"svg"===e?"http://www.w3.org/2000/svg":"math"===e?"http://www.w3.org/1998/MathML/":null}()),p=this.componentDef.onPush?576:528,h="string"==typeof n&&/^#root-ng-internal-isolated-\d+/.test(n),f=up(),g=ba(0,-1,null,1,0,null,null,null,null,null),m=la(null,g,f,p,null,null,s,l,c,a);Cn(m,null);try{var v=cp(d,this.componentDef,m,s,l);if(d)if(n)Xn(l,d,["ng-version",Qp.full]);else{var y=function(t){for(var e=[],n=[],i=1,r=2;i<t.length;){var o=t[i];if("string"==typeof o)2===r?""!==o&&e.push(o,t[++i]):8===r&&n.push(o);else{if(!ao(r))break;r=o}i++}return{attrs:e,classes:n}}(this.componentDef.selectors[0]),b=y.attrs,w=y.classes;b&&Xn(l,d,b),w&&w.length>0&&_s(l,d,w.join(" "))}if(o=He(g,0),void 0!==e)for(var S=o.projection=[],x=0;x<this.ngContentSelectors.length;x++){var M=e[x];S.push(null!=M?Array.from(M):null)}r=lp(v,this.componentDef,m,f,[dp]),da(g,m,null)}finally{Pn()}var E=new yg(this.componentType,r,Ls(Gp,o,m),m,o);return n&&!h||(ngDevMode&&qn(g.node,2),g.node.child=o),E},e}(Lp);new fg;var yg=function(t){function e(e,n,i,r,o){var a,s,c,l,u=t.call(this)||this;return u.location=i,u._rootLView=r,u._tNode=o,u.destroyCbs=[],u.instance=n,u.hostView=u.changeDetectorRef=new Rs(r),s=null,-1,c=r,null==(l=(a=r[1]).node)&&(ngDevMode,a.node=l=Sa(a,s,2,-1,null,null)),c[6]=l,u.componentType=e,u}return Object(i.c)(e,t),Object.defineProperty(e.prototype,"injector",{get:function(){return new Ai(this._tNode,this._rootLView)},enumerable:!0,configurable:!0}),e.prototype.destroy=function(){this.destroyCbs&&(this.destroyCbs.forEach(function(t){return t()}),this.destroyCbs=null,!this.hostView.destroyed&&this.hostView.destroy())},e.prototype.onDestroy=function(t){this.destroyCbs&&this.destroyCbs.push(t)},e}(Rp);
  891. /**
  892. * @license
  893. * Copyright Google Inc. All Rights Reserved.
  894. *
  895. * Use of this source code is governed by an MIT-style license that can be
  896. * found in the LICENSE file at https://angular.io/license
  897. */"undefined"==typeof ngI18nClosureMode&&(J.ngI18nClosureMode="undefined"!=typeof goog&&"function"==typeof goog.getMsg);
  898. /**
  899. * @license
  900. * Copyright Google Inc. All Rights Reserved.
  901. *
  902. * Use of this source code is governed by an MIT-style license that can be
  903. * found in the LICENSE file at https://angular.io/license
  904. */
  905. var bg,wg=void 0,Sg=["en",[["a","p"],["AM","PM"],wg],[["AM","PM"],wg,wg],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],wg,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],wg,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",wg,"{1} 'at' {0}",wg],[".",",",";","%","+","-","E","×","‰","∞","NaN",":"],["#,##0.###","#,##0%","¤#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function(t){var e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}],xg={};
  906. /**
  907. * @license
  908. * Copyright Google Inc. All Rights Reserved.
  909. *
  910. * Use of this source code is governed by an MIT-style license that can be
  911. * found in the LICENSE file at https://angular.io/license
  912. */
  913. function Mg(t,e,n){"string"!=typeof e&&(n=e,e=t[bg.LocaleId]),e=e.toLowerCase().replace(/_/g,"-"),xg[e]=t,n&&(xg[e][bg.ExtraData]=n)}function Eg(t){var e=function(t){return t.toLowerCase().replace(/_/g,"-")}
  914. /**
  915. * @license
  916. * Copyright Google Inc. All Rights Reserved.
  917. *
  918. * Use of this source code is governed by an MIT-style license that can be
  919. * found in the LICENSE file at https://angular.io/license
  920. */(t),n=Tg(e);if(n)return n;var i=e.split("-")[0];if(n=Tg(i))return n;if("en"===i)return Sg;throw new Error('Missing locale data for the locale "'+t+'".')}function Cg(t){return Eg(t)[bg.CurrencyCode]||null}function Ag(t){return Eg(t)[bg.PluralCase]}function Tg(t){return t in xg||(xg[t]=J.ng&&J.ng.common&&J.ng.common.locales&&J.ng.common.locales[t]),xg[t]}function Og(){xg={}}!function(t){t[t.LocaleId=0]="LocaleId",t[t.DayPeriodsFormat=1]="DayPeriodsFormat",t[t.DayPeriodsStandalone=2]="DayPeriodsStandalone",t[t.DaysFormat=3]="DaysFormat",t[t.DaysStandalone=4]="DaysStandalone",t[t.MonthsFormat=5]="MonthsFormat",t[t.MonthsStandalone=6]="MonthsStandalone",t[t.Eras=7]="Eras",t[t.FirstDayOfWeek=8]="FirstDayOfWeek",t[t.WeekendRange=9]="WeekendRange",t[t.DateFormat=10]="DateFormat",t[t.TimeFormat=11]="TimeFormat",t[t.DateTimeFormat=12]="DateTimeFormat",t[t.NumberSymbols=13]="NumberSymbols",t[t.NumberFormats=14]="NumberFormats",t[t.CurrencyCode=15]="CurrencyCode",t[t.CurrencySymbol=16]="CurrencySymbol",t[t.CurrencyName=17]="CurrencyName",t[t.Currencies=18]="Currencies",t[t.Directionality=19]="Directionality",t[t.PluralCase=20]="PluralCase",t[t.ExtraData=21]="ExtraData"}(bg||(bg={}));var _g=["zero","one","two","few","many"],Pg="en-US",Ig="USD",kg=/^\s*(�\d+:?\d*�)\s*,\s*(select|plural)\s*,/,Dg=/�\/?\*(\d+:\d+)�/gi,Rg=/�(\/?[#*!]\d+):?\d*�/gi,Lg=/�(\d+):?\d*�/gi,Ng=/({\s*�\d+:?\d*�\s*,\s*\S{6}\s*,[\s\S]*})/gi,jg=/\[(�.+?�?)\]/,Vg=/\[(�.+?�?)\]|(�\/?\*\d+:\d+�)/g,Fg=/({\s*)(VAR_(PLURAL|SELECT)(_\d+)?)(\s*,)/g,Ug=/{([A-Z0-9_]+)}/g,Bg=/�I18N_EXP_(ICU(_\d+)?)�/g,zg=/\/\*/,Gg=/\d+\:(\d+)/;function Hg(t){if(!t)return[];var e,n=0,i=[],r=[],o=/[{}]/g;for(o.lastIndex=0;e=o.exec(t);){var a=e.index;if("}"==e[0]){if(i.pop(),0==i.length){var s=t.substring(n,a);kg.test(s)?r.push(Wg(s)):r.push(s),n=a+1}}else{if(0==i.length){var c=t.substring(n,a);r.push(c),n=a+1}i.push("{")}}var l=t.substring(n);return r.push(l),r}function Wg(t){for(var e=[],n=[],i=1,r=0,o=Hg(t=t.replace(kg,function(t,e,n){return i="select"===n?0:1,r=parseInt(e.substr(1),10),""})),a=0;a<o.length;){var s=o[a++].trim();1===i&&(s=s.replace(/\s*(?:=)?(\w+)\s*/,"$1")),s.length&&e.push(s);var c=Hg(o[a++]);e.length>n.length&&n.push(c)}return{type:i,mainBinding:r,cases:e,values:n}}function qg(t){for(var e,n,i="",r=0,o=!1;null!==(e=Dg.exec(t));)o?e[0]==="�/*"+n+"�"&&(r=e.index,o=!1):(i+=t.substring(r,e.index+e[0].length),n=e[1],o=!0);return ngDevMode&&Rt(o,!1,'Tag mismatch: unable to find the end of the sub-template in the translation "'+t+'"'),i+t.substr(r)}function Kg(t,e,n,i){void 0===i&&(i=null);for(var r=[null,null],o=t.split(Lg),a=0,s=0;s<o.length;s++){var c=o[s];if(1&s){var l=parseInt(c,10);r.push(-1-l),a|=Jg(l)}else""!==c&&r.push(c)}return r.push(e<<2|(n?1:0)),n&&r.push(n,i),r[0]=a,r[1]=r.length-2,r}function Xg(t,e){var n;void 0===e&&(e=0),e|=Jg(t.mainBinding);for(var i=0;i<t.values.length;i++)for(var r=t.values[i],o=0;o<r.length;o++){var a=r[o];if("string"==typeof a)for(;n=Lg.exec(a);)e|=Jg(parseInt(n[1],10));else e=Xg(a,e)}return e}var Yg=[],Zg=-1;function Jg(t){return 1<<Math.min(t,31)}var Qg,$g=[];function tm(t,e,n){var i=an();ngDevMode&&Bt(i,"tView should be defined"),Yg[++Zg]=t,vu(!0),i.firstCreatePass&&null===i.data[t+20]&&function(t,e,n,i,r){var o=e.blueprint.length-20;Qg=0;var a=cn(),s=un()?a:a&&a.parent,c=s&&s!==t[6]?s.index-20:n,l=0;$g[l]=c;var u=[];if(n>0&&a!==s){var d=a.index-20;un()||(d=~d),u.push(d<<3|0)}var p=[],h=[];if(""===i&&im(r))u.push(i,em(o),c<<17|1);else for(var f=function(t,e){if(im(e))return qg(t);var n=t.indexOf(":"+e+"�")+2+e.toString().length,i=t.search(new RegExp("�\\/\\*\\d+:"+e+"�"));return qg(t.substring(n,i))}(i,r),g=f.replace(bm," ").split(Rg),m=0;m<g.length;m++){var v=g[m];if(1&m)if("/"===v.charAt(0)){if("#"===v.charAt(1)){var y=parseInt(v.substr(2),10);c=$g[--l],u.push(y<<3|5)}}else{y=parseInt(v.substr(1),10);var b="#"===v.charAt(0);u.push((b?y:~y)<<3|0,c<<17|1),b&&($g[++l]=c=y)}else for(var w=Hg(v),S=0;S<w.length;S++)if(1&S){var x=w[S];if("object"!=typeof x)throw new Error('Unable to parse ICU expression in "'+f+'" message.');var M=em(o);u.push(Mo,ngDevMode?"ICU "+M:"",M,c<<17|1);var E=Xg(x);mm(h,x,M,M);var C=h.length-1;p.push(Jg(x.mainBinding),3,-1-x.mainBinding,M<<2|2,C,E,2,M<<2|3,C)}else if(""!==w[S]){var A=w[S],T=A.match(Lg),O=em(o);u.push(T?"":A,O,c<<17|1),T&&Wt(Kg(A,O),p)}}Qg>0&&function(t,e,n){if(ngDevMode&&Ut(n,0,"The number of slots to alloc should be greater than 0"),n>0&&t.firstCreatePass){for(var i=0;i<n;i++)t.blueprint.push(null),t.data.push(null),e.push(null);t.expandoInstructions?t.expandoInstructions.push(n):t.expandoStartIndex+=n}}(e,t,Qg),ngDevMode&&function(t,e,n,i){ko(u,new ra(u,i)),ko(e,new oa(e,n,i)),n&&n.forEach(function(t){t.create.forEach(function(t){ko(t,new ra(t,i))}),t.update.forEach(function(t){ko(t,new oa(t,n,i))})})}(0,p,h.length?h:null,t);var _={vars:Qg,create:u,update:p,icus:h.length?h:null};e.data[n+20]=_}(on(),i,t,e,n)}function em(t){return t+Qg++}function nm(t,e,n,i,r){ngDevMode&&ngDevMode.rendererMoveNode++;var o=e.next;i||(i=n),i===n&&e!==n.child?(e.next=n.child,n.child=e):i!==n&&e!==i.next?(e.next=i.next,i.next=e):e.next=null,n!==r[6]&&(e.parent=n);for(var a=e.next;a;)a.next===e&&(a.next=o),a=a.next;if(1===e.type)return As(t,r,e),e;Ss(t,r,ze(e,r),e);var s=r[e.index];return 0!==e.type&&we(s)&&Ss(t,r,s[7],e),e}function im(t){return void 0===t}function rm(t,e){void 0===e&&(e={});var n=t;if(jg.test(t)){var r={},o=[0];n=n.replace(Vg,function(t,e,n){var a=e||n,s=r[a]||[];if(s.length||(a.split("|").forEach(function(t){var e=t.match(Gg),n=e?parseInt(e[1],10):0,i=zg.test(t);s.push([n,i,t])}),r[a]=s),!s.length)throw new Error("i18n postprocess: unmatched placeholder - "+a);for(var c=o[o.length-1],l=0,u=0;u<s.length;u++)if(s[u][0]===c){l=u;break}var d=Object(i.f)(s[l],3),p=d[0],h=d[1],f=d[2];return h?o.pop():c!==p&&o.push(p),s.splice(l,1),f})}return Object.keys(e).length?n=(n=(n=n.replace(Fg,function(t,n,i,r,o,a){return e.hasOwnProperty(i)?""+n+e[i]+a:t})).replace(Ug,function(t,n){return e.hasOwnProperty(n)?e[n]:t})).replace(Bg,function(t,n){if(e.hasOwnProperty(n)){var i=e[n];if(!i.length)throw new Error("i18n postprocess: unmatched ICU - "+t+" with key: "+n);return i.shift()}return t}):n}function om(){var t=on(),e=an();ngDevMode&&Bt(e,"tView should be defined"),function(t,e){ngDevMode&&Rt(gn(),t.bindingStartIndex,"i18nEnd should be called before any binding");var n=Yg[Zg--],i=t.data[n+20];ngDevMode&&Bt(i,"You should call i18nStart before i18nEnd");for(var r=cn(),o=sm(n,i.create,t,e),a=n+1;a<=r.index-20;){-1===o.indexOf(a)&&cm(t,e,a,!0);var s=He(t,a);!s||0!==s.type&&3!==s.type&&4!==s.type||null===s.localNames||(a+=s.localNames.length>>1),a++}}(e,t),vu(!1)}function am(t,e,n,i,r,o){var a=cn();ngDevMode&&Ht(e,n+20),e[n+20]=r;var s=ua(t,e[6],n,i,o,null);return a&&a.next===s&&(a.next=null),s}function sm(t,e,n,i){for(var r=i[11],o=null,a=null,s=[],c=0;c<e.length;c++){var l=e[c];if("string"==typeof l){var u=cs(l,r),d=e[++c];ngDevMode&&ngDevMode.rendererCreateTextNode++,a=o,o=am(n,i,d,3,u,null),s.push(d),dn()}else if("number"==typeof l)switch(7&l){case 1:var p,h=l>>>17;p=h===t?i[6]:He(n,h),ngDevMode&&Bt(o,"You need to create or select a node before you can insert it into the DOM"),a=nm(n,o,p,a,i);break;case 0:var f=l>=0,g=(f?l:~l)>>>3;s.push(g),a=o,(o=He(n,g))&&ln(o,f);break;case 5:a=o=He(n,l>>>3),ln(o,!1);break;case 4:var m=l>>>3,v=e[++c],y=e[++c];Va(He(n,m),i,v,y,null,null);break;default:throw new Error('Unable to determine the type of mutate operation for "'+l+'"')}else switch(l){case Mo:var b=e[++c],w=e[++c];ngDevMode&&Rt(typeof b,"string",'Expected "'+b+'" to be a comment node value');var S=r.createComment(b);ngDevMode&&ngDevMode.rendererCreateComment++,a=o,o=am(n,i,w,5,S,null),s.push(w),Kr(S,i),o.activeCaseIndex=null,dn();break;case xo:var x=e[++c];m=e[++c],ngDevMode&&Rt(typeof x,"string",'Expected "'+x+'" to be an element node tag name');var M=r.createElement(x);ngDevMode&&ngDevMode.rendererCreateElement++,a=o,o=am(n,i,m,3,M,x),s.push(m);break;default:throw new Error('Unable to determine the type of mutate operation for "'+l+'"')}}return dn(),s}function cm(t,e,n,i){var r=He(t,n),o=Be(n,e);o&&Ms(e[11],o);var a=We(e,n);if(we(a)){var s=a;0!==r.type&&Ms(e[11],s[7])}i&&(r.flags|=64),ngDevMode&&ngDevMode.rendererRemoveNode++}function lm(t,e,n){tm(t,e,n),om()}function um(t,e){var n=on(),i=an();ngDevMode&&Bt(i,"tView should be defined"),function(t,e,n,i){for(var r=cn().index-20,o=[],a=0;a<i.length;a+=2)for(var s=i[a],c=i[a+1].split(Ng),l=0;l<c.length;l++){var u=c[l];if(1&l)throw new Error("ICU expressions are not yet supported in attributes");if(""!==u)if(u.match(Lg))e.firstCreatePass&&null===e.data[n+20]&&Wt(Kg(u,r,s),o);else{var d=He(e,r);3===d.type&&Va(d,t,s,u,null,null);var p=null!==d.inputs&&d.inputs[s];if(p&&(is(e,t,p,s,u),ngDevMode))Ca(t,Be(r,t),d.type,p,u)}}e.firstCreatePass&&null===e.data[n+20]&&(e.data[n+20]=o)}(n,i,t,e)}var dm=0,pm=0;function hm(t){return wl(on(),vn(),t)&&(dm|=1<<pm),pm++,hm}function fm(t){if(pm){var e=an();ngDevMode&&Bt(e,"tView should be defined");var n=e.data[t+20],i=void 0,r=null;Array.isArray(n)?i=n:(i=n.update,r=n.icus);var o=gn()-pm-1,a=on();!function t(e,n,i,r,o,a,s){void 0===s&&(s=!1);for(var c=!1,l=0;l<e.length;l++){var u=e[l],d=e[++l];if(s||u&r)for(var p="",h=l+1;h<=l+d;h++){var f=e[h];if("string"==typeof f)p+=f;else if("number"==typeof f)if(f<0)p+=ii(a[i-f]);else{var g=f>>>2,m=void 0,v=void 0;switch(3&f){case 1:var y=e[++h],b=e[++h];Ma(o,He(o,g),a,y,p,a[11],b,!1);break;case 0:rs(a,g,p);break;case 2:if(m=n[e[++h]],null!==(v=He(o,g)).activeCaseIndex)for(var w=m.remove[v.activeCaseIndex],S=0;S<w.length;S++){var x=w[S];switch(7&x){case 3:cm(o,a,x>>>3,!1);break;case 6:var M=He(o,w[S+1]>>>3).activeCaseIndex;null!==M&&Wt(n[x>>>3].remove[M],w)}}var E=gm(m,p);v.activeCaseIndex=-1!==E?E:null,E>-1&&(sm(-1,m.create[E],o,a),c=!0);break;case 3:m=n[e[++h]],null!==(v=He(o,g)).activeCaseIndex&&t(m.update[v.activeCaseIndex],n,i,r,o,a,c)}}}l+=d}}(i,r,o,dm,e,a),dm=0,pm=0}}function gm(t,e){var n=t.cases.indexOf(e);if(-1===n)switch(t.type){case 1:var i=function(t,e){var n=Ag(wm)(parseInt(t,10)),i=_g[n];return void 0!==i?i:"other"}(e);-1===(n=t.cases.indexOf(i))&&"other"!==i&&(n=t.cases.indexOf("other"));break;case 0:n=t.cases.indexOf("other")}return n}function mm(t,e,n,r){for(var o=[],a=[],s=[],c=[],l=[],u=0;u<e.values.length;u++){for(var d=e.values[u],p=[],h=0;h<d.length;h++){var f=d[h];if("string"!=typeof f){var g=p.push(f)-1;d[h]="\x3c!--�"+g+"�--\x3e"}}var m=vm(d.join(""),n,p,t,r);o.push(m.create),a.push(m.remove),s.push(m.update),c.push(m.vars),l.push(m.childIcus)}var v={type:e.type,vars:c,childIcus:l,cases:e.cases,create:o,remove:a,update:s};t.push(v),Qg+=Math.max.apply(Math,Object(i.h)(c))}function vm(t,e,n,r,o){var a=new $i(je()).getInertBodyElement(t);if(!a)throw new Error("Unable to generate inert body element");var s={vars:0,childIcus:[],create:[],remove:[],update:[]};return function t(e,n,r,o,a,s){if(e){for(var c=[];e;){var l=e.nextSibling,u=s+ ++n.vars;switch(e.nodeType){case Node.ELEMENT_NODE:var d=e,p=d.tagName.toLowerCase();if(fr.hasOwnProperty(p)){n.create.push(xo,p,u,r<<17|1);for(var h=d.attributes,f=0;f<h.length;f++){var g=h.item(f),m=g.name.toLowerCase();g.value.match(Lg)?br.hasOwnProperty(m)?gr[m]?Wt(Kg(g.value,u,g.name,nr),n.update):mr[m]?Wt(Kg(g.value,u,g.name,ir),n.update):Wt(Kg(g.value,u,g.name),n.update):ngDevMode&&console.warn("WARNING: ignoring unsafe attribute value "+m+" on element "+p+" (see http://g.co/ng/security#xss)"):n.create.push(u<<3|4,g.name,g.value)}t(e.firstChild,n,u,o,a,s),n.remove.push(u<<3|3)}else n.vars--;break;case Node.TEXT_NODE:var v=e.textContent||"",y=v.match(Lg);n.create.push(y?"":v,u,r<<17|1),n.remove.push(u<<3|3),y&&Wt(Kg(v,u),n.update);break;case Node.COMMENT_NODE:var b=ym.exec(e.textContent||"");if(b){var w=parseInt(b[1],10),S=ngDevMode?"nested ICU "+w:"";n.create.push(Mo,S,u,r<<17|1);var x=o[w];c.push([x,u])}else n.vars--;break;default:n.vars--}e=l}for(f=0;f<c.length;f++){x=c[f][0];var M=c[f][1];mm(a,x,M,s+n.vars);var E=a.length-1;n.vars+=Math.max.apply(Math,Object(i.h)(a[E].vars)),n.childIcus.push(E);var C=Xg(x);n.update.push(Jg(x.mainBinding),3,-1-x.mainBinding,M<<2|2,E,C,2,M<<2|3,E),n.remove.push(E<<3|6,M<<3|3)}}}((Ar(a)||a).firstChild,s,e,n,r,o),s}var ym=/�(\d+)�/,bm=/\uE500/g,wm=Pg;function Sm(t){Bt(t,"Expected localeId to be defined"),"string"==typeof t&&(wm=t.toLowerCase().replace(/_/g,"-"))}
  921. /**
  922. * @license
  923. * Copyright Google Inc. All Rights Reserved.
  924. *
  925. * Use of this source code is governed by an MIT-style license that can be
  926. * found in the LICENSE file at https://angular.io/license
  927. */function xm(t,e,n,r){return l(function(){var o,a=t,s=a.prototype?Object.getPrototypeOf(a.prototype):null,c=s&&s.constructor;null!==e&&(void 0===a.decorators||c&&c.decorators===a.decorators?a.decorators=e:(o=a.decorators).push.apply(o,Object(i.h)(e))),null!==n&&(a.ctorParameters=n),null!==r&&(void 0===a.propDecorators||c&&c.propDecorators===a.propDecorators?a.propDecorators=r:a.propDecorators=Object(i.a)(Object(i.a)({},a.propDecorators),r))})}
  928. /**
  929. * @license
  930. * Copyright Google Inc. All Rights Reserved.
  931. *
  932. * Use of this source code is governed by an MIT-style license that can be
  933. * found in the LICENSE file at https://angular.io/license
  934. */var Mm=new Map;function Em(t,e){var n=Mm.get(t);Cm(t,n&&n.moduleType,e.moduleType),Mm.set(t,e)}function Cm(t,e,n){if(e&&e!==n)throw new Error("Duplicate module registered for "+t+" - "+F(e)+" vs "+F(e.name))}function Am(t){if(null!==t.ɵmod.id){var e=t.ɵmod.id;Cm(e,Mm.get(e),t),Mm.set(e,t)}var n=t.ɵmod.imports;n instanceof Function&&(n=n()),n&&n.forEach(function(t){return Am(t)})}function Tm(t){return Mm.get(t)||ce[t]}
  935. /**
  936. * @license
  937. * Copyright Google Inc. All Rights Reserved.
  938. *
  939. * Use of this source code is governed by an MIT-style license that can be
  940. * found in the LICENSE file at https://angular.io/license
  941. */var Om=function(t){function e(e,n){var i=t.call(this)||this;i._parent=n,i._bootstrapComponents=[],i.injector=i,i.destroyCbs=[],i.componentFactoryResolver=new fg(i);var r=ye(e);ngDevMode&&Bt(r,"NgModule '"+F(e)+"' is not a subtype of 'NgModuleType'.");var o=e[it]||null;return o&&Sm(o),i._bootstrapComponents=li(r.bootstrap),i._r3Injector=gc(e,n,[{provide:_t,useValue:i},{provide:Up,useValue:i.componentFactoryResolver}],F(e)),i._r3Injector._resolveInjectorDefTypes(),i.instance=i.get(e),i}return Object(i.c)(e,t),e.prototype.get=function(t,e,n){return void 0===e&&(e=Ec.THROW_IF_NOT_FOUND),void 0===n&&(n=v.Default),t===Ec||t===_t||t===lt?this:this._r3Injector.get(t,e,n)},e.prototype.destroy=function(){ngDevMode&&Bt(this.destroyCbs,"NgModule already destroyed");var t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(function(t){return t()}),this.destroyCbs=null},e.prototype.onDestroy=function(t){ngDevMode&&Bt(this.destroyCbs,"NgModule already destroyed"),this.destroyCbs.push(t)},e}(_t),_m=function(t){function e(e){var n=t.call(this)||this;return n.moduleType=e,null!==ye(e)&&Am(e),n}return Object(i.c)(e,t),e.prototype.create=function(t){return new Om(this.moduleType,t)},e}(Pt);
  942. /**
  943. * @license
  944. * Copyright Google Inc. All Rights Reserved.
  945. *
  946. * Use of this source code is governed by an MIT-style license that can be
  947. * found in the LICENSE file at https://angular.io/license
  948. */function Pm(t,e,n){var i=fn()+t,r=on();return r[i]===ho?yl(r,i,n?e.call(n):e()):bl(r,i)}function Im(t,e,n,i){return Bm(on(),fn(),t,e,n,i)}function km(t,e,n,i,r){return zm(on(),fn(),t,e,n,i,r)}function Dm(t,e,n,i,r,o){return Gm(on(),fn(),t,e,n,i,r,o)}function Rm(t,e,n,i,r,o,a){return Hm(on(),fn(),t,e,n,i,r,o,a)}function Lm(t,e,n,i,r,o,a,s){var c=fn()+t,l=on(),u=Ml(l,c,n,i,r,o);return wl(l,c+4,a)||u?yl(l,c+5,s?e.call(s,n,i,r,o,a):e(n,i,r,o,a)):bl(l,c+5)}function Nm(t,e,n,i,r,o,a,s,c){var l=fn()+t,u=on(),d=Ml(u,l,n,i,r,o);return Sl(u,l+4,a,s)||d?yl(u,l+6,c?e.call(c,n,i,r,o,a,s):e(n,i,r,o,a,s)):bl(u,l+6)}function jm(t,e,n,i,r,o,a,s,c,l){var u=fn()+t,d=on(),p=Ml(d,u,n,i,r,o);return xl(d,u+4,a,s,c)||p?yl(d,u+7,l?e.call(l,n,i,r,o,a,s,c):e(n,i,r,o,a,s,c)):bl(d,u+7)}function Vm(t,e,n,i,r,o,a,s,c,l,u){var d=fn()+t,p=on(),h=Ml(p,d,n,i,r,o);return Ml(p,d+4,a,s,c,l)||h?yl(p,d+8,u?e.call(u,n,i,r,o,a,s,c,l):e(n,i,r,o,a,s,c,l)):bl(p,d+8)}function Fm(t,e,n,i){return Wm(on(),fn(),t,e,n,i)}function Um(t,e){ngDevMode&&Ht(t,e);var n=t[e];return n===ho?void 0:n}function Bm(t,e,n,i,r,o){var a=e+n;return wl(t,a,r)?yl(t,a+1,o?i.call(o,r):i(r)):Um(t,a+1)}function zm(t,e,n,i,r,o,a){var s=e+n;return Sl(t,s,r,o)?yl(t,s+2,a?i.call(a,r,o):i(r,o)):Um(t,s+2)}function Gm(t,e,n,i,r,o,a,s){var c=e+n;return xl(t,c,r,o,a)?yl(t,c+3,s?i.call(s,r,o,a):i(r,o,a)):Um(t,c+3)}function Hm(t,e,n,i,r,o,a,s,c){var l=e+n;return Ml(t,l,r,o,a,s)?yl(t,l+4,c?i.call(c,r,o,a,s):i(r,o,a,s)):Um(t,l+4)}function Wm(t,e,n,i,r,o){for(var a=e+n,s=!1,c=0;c<r.length;c++)wl(t,a++,r[c])&&(s=!0);return s?yl(t,a,i.apply(o,r)):Um(t,a)}
  949. /**
  950. * @license
  951. * Copyright Google Inc. All Rights Reserved.
  952. *
  953. * Use of this source code is governed by an MIT-style license that can be
  954. * found in the LICENSE file at https://angular.io/license
  955. */function qm(t,e){var n,i=an(),r=t+20;i.firstCreatePass?(n=function(t,e){if(e)for(var n=e.length-1;n>=0;n--){var i=e[n];if(t===i.name)return i}throw new Error("The pipe '"+t+"' could not be found!")}(e,i.pipeRegistry),i.data[r]=n,n.onDestroy&&(i.destroyHooks||(i.destroyHooks=[])).push(r,n.onDestroy)):n=i.data[r];var o=n.factory||(n.factory=ve(n.type,!0)),a=gt(Xl),s=di(!1),c=o();return di(s),gt(a),ql(i,on(),t,c),c}function Km(t,e,n){var i=on(),r=We(i,t);return $m(i,Qm(i,t)?Bm(i,fn(),e,r.transform,n,r):r.transform(n))}function Xm(t,e,n,i){var r=on(),o=We(r,t);return $m(r,Qm(r,t)?zm(r,fn(),e,o.transform,n,i,o):o.transform(n,i))}function Ym(t,e,n,i,r){var o=on(),a=We(o,t);return $m(o,Qm(o,t)?Gm(o,fn(),e,a.transform,n,i,r,a):a.transform(n,i,r))}function Zm(t,e,n,i,r,o){var a=on(),s=We(a,t);return $m(a,Qm(a,t)?Hm(a,fn(),e,s.transform,n,i,r,o,s):s.transform(n,i,r,o))}function Jm(t,e,n){var i=on(),r=We(i,t);return $m(i,Qm(i,t)?Wm(i,fn(),e,r.transform,n,r):r.transform.apply(r,n))}function Qm(t,e){return t[1].data[e+20].pure}function $m(t,e){return gl.isWrapped(e)&&(e=gl.unwrap(e),t[gn()]=ho),e}
  956. /**
  957. * @license
  958. * Copyright Google Inc. All Rights Reserved.
  959. *
  960. * Use of this source code is governed by an MIT-style license that can be
  961. * found in the LICENSE file at https://angular.io/license
  962. */var tv=function(t){function e(e){void 0===e&&(e=!1);var n=t.call(this)||this;return n.__isAsync=e,n}return Object(i.c)(e,t),e.prototype.emit=function(e){t.prototype.next.call(this,e)},e.prototype.subscribe=function(e,n,i){var o,a=function(t){return null},s=function(){return null};e&&"object"==typeof e?(o=this.__isAsync?function(t){setTimeout(function(){return e.next(t)})}:function(t){e.next(t)},e.error&&(a=this.__isAsync?function(t){setTimeout(function(){return e.error(t)})}:function(t){e.error(t)}),e.complete&&(s=this.__isAsync?function(){setTimeout(function(){return e.complete()})}:function(){e.complete()})):(o=this.__isAsync?function(t){setTimeout(function(){return e(t)})}:function(t){e(t)},n&&(a=this.__isAsync?function(t){setTimeout(function(){return n(t)})}:function(t){n(t)}),i&&(s=this.__isAsync?function(){setTimeout(function(){return i()})}:function(){i()}));var c=t.prototype.subscribe.call(this,o,a,s);return e instanceof r.a&&e.add(c),c},e}(o.a);
  963. /**
  964. * @license
  965. * Copyright Google Inc. All Rights Reserved.
  966. *
  967. * Use of this source code is governed by an MIT-style license that can be
  968. * found in the LICENSE file at https://angular.io/license
  969. */function ev(){return this._results[pl()]()}var nv=function(){function t(){this.dirty=!0,this._results=[],this.changes=new tv,this.length=0;var e=pl(),n=t.prototype;n[e]||(n[e]=ev)}return t.prototype.map=function(t){return this._results.map(t)},t.prototype.filter=function(t){return this._results.filter(t)},t.prototype.find=function(t){return this._results.find(t)},t.prototype.reduce=function(t,e){return this._results.reduce(t,e)},t.prototype.forEach=function(t){this._results.forEach(t)},t.prototype.some=function(t){return this._results.some(t)},t.prototype.toArray=function(){return this._results.slice()},t.prototype.toString=function(){return this._results.toString()},t.prototype.reset=function(t){this._results=qt(t),this.dirty=!1,this.length=this._results.length,this.last=this._results[this.length-1],this.first=this._results[0]},t.prototype.notifyOnChanges=function(){this.changes.emit(this)},t.prototype.setDirty=function(){this.dirty=!0},t.prototype.destroy=function(){this.changes.complete(),this.changes.unsubscribe()},t}(),iv=function(){function t(t){this.queryList=t,this.matches=null}return t.prototype.clone=function(){return new t(this.queryList)},t.prototype.setDirty=function(){this.queryList.setDirty()},t}(),rv=function(){function t(t){void 0===t&&(t=[]),this.queries=t}return t.prototype.createEmbeddedView=function(e){var n=e.queries;if(null!==n){for(var i=null!==e.contentQueries?e.contentQueries[0]:n.length,r=[],o=0;o<i;o++){var a=n.getByIndex(o),s=this.queries[a.indexInDeclarationView];r.push(s.clone())}return new t(r)}return null},t.prototype.insertView=function(t){this.dirtyQueriesWithMatches(t)},t.prototype.detachView=function(t){this.dirtyQueriesWithMatches(t)},t.prototype.dirtyQueriesWithMatches=function(t){for(var e=0;e<this.queries.length;e++)null!==Sv(t,e).matches&&this.queries[e].setDirty()},t}(),ov=function(t,e,n,i){void 0===i&&(i=null),this.predicate=t,this.descendants=e,this.isStatic=n,this.read=i},av=function(){function t(t){void 0===t&&(t=[]),this.queries=t}return t.prototype.elementStart=function(t,e){ngDevMode&&ke(t,"Queries should collect results on the first template pass only");for(var n=0;n<this.queries.length;n++)this.queries[n].elementStart(t,e)},t.prototype.elementEnd=function(t){for(var e=0;e<this.queries.length;e++)this.queries[e].elementEnd(t)},t.prototype.embeddedTView=function(e){for(var n=null,i=0;i<this.length;i++){var r=null!==n?n.length:0,o=this.getByIndex(i).embeddedTView(e,r);o&&(o.indexInDeclarationView=i,null!==n?n.push(o):n=[o])}return null!==n?new t(n):null},t.prototype.template=function(t,e){ngDevMode&&ke(t,"Queries should collect results on the first template pass only");for(var n=0;n<this.queries.length;n++)this.queries[n].template(t,e)},t.prototype.getByIndex=function(t){return ngDevMode&&Ht(this.queries,t),this.queries[t]},Object.defineProperty(t.prototype,"length",{get:function(){return this.queries.length},enumerable:!0,configurable:!0}),t.prototype.track=function(t){this.queries.push(t)},t}(),sv=function(){function t(t,e){void 0===e&&(e=-1),this.metadata=t,this.matches=null,this.indexInDeclarationView=-1,this.crossesNgTemplate=!1,this._appliesToNextNode=!0,this._declarationNodeIndex=e}return t.prototype.elementStart=function(t,e){this.isApplyingToNode(e)&&this.matchTNode(t,e)},t.prototype.elementEnd=function(t){this._declarationNodeIndex===t.index&&(this._appliesToNextNode=!1)},t.prototype.template=function(t,e){this.elementStart(t,e)},t.prototype.embeddedTView=function(e,n){return this.isApplyingToNode(e)?(this.crossesNgTemplate=!0,this.addMatch(-e.index,n),new t(this.metadata)):null},t.prototype.isApplyingToNode=function(t){if(this._appliesToNextNode&&!1===this.metadata.descendants){for(var e=this._declarationNodeIndex,n=t.parent;null!==n&&4===n.type&&n.index!==e;)n=n.parent;return e===(null!==n?n.index:-1)}return this._appliesToNextNode},t.prototype.matchTNode=function(t,e){if(Array.isArray(this.metadata.predicate))for(var n=this.metadata.predicate,i=0;i<n.length;i++)this.matchTNodeWithReadOption(t,e,cv(e,n[i]));else{var r=this.metadata.predicate;r===gh?0===e.type&&this.matchTNodeWithReadOption(t,e,-1):this.matchTNodeWithReadOption(t,e,xi(e,t,r,!1,!1))}},t.prototype.matchTNodeWithReadOption=function(t,e,n){if(null!==n){var i=this.metadata.read;if(null!==i)if(i===Gp||i===yh||i===gh&&0===e.type)this.addMatch(e.index,-2);else{var r=xi(e,t,i,!1,!1);null!==r&&this.addMatch(e.index,r)}else this.addMatch(e.index,n)}},t.prototype.addMatch=function(t,e){null===this.matches?this.matches=[t,e]:this.matches.push(t,e)},t}();
  970. /**
  971. * @license
  972. * Copyright Google Inc. All Rights Reserved.
  973. *
  974. * Use of this source code is governed by an MIT-style license that can be
  975. * found in the LICENSE file at https://angular.io/license
  976. */function cv(t,e){var n=t.localNames;if(null!==n)for(var i=0;i<n.length;i+=2)if(n[i]===e)return n[i+1];return null}function lv(t,e,n,i){return-1===n?function(t,e){return 3===t.type||4===t.type?Ls(Gp,t,e):0===t.type?Ns(gh,Gp,t,e):null}(e,t):-2===n?function(t,e,n){return n===Gp?Ls(Gp,e,t):n===gh?Ns(gh,Gp,e,t):n===yh?(ngDevMode&&qn(e,3,0,4),js(yh,Gp,e,t)):void(ngDevMode&&zt("Special token to read should be one of ElementRef, TemplateRef or ViewContainerRef but got "+F(n)+"."))}(t,e,i):Mi(t,t[1],n,e)}function uv(t,e,n,i){var r=e[19].queries[i];if(null===r.matches){for(var o=t.data,a=n.matches,s=[],c=0;c<a.length;c+=2){var l=a[c];if(l<0)s.push(null);else{ngDevMode&&Ht(o,l);var u=o[l];s.push(lv(e,u,a[c+1],n.metadata.read))}}r.matches=s}return r.matches}function dv(t){var e=on(),n=an(),i=xn();Mn(i+1);var r=Sv(n,i);if(t.dirty&&Ye(e)===r.metadata.isStatic){if(null===r.matches)t.reset([]);else{var o=r.crossesNgTemplate?function t(e,n,i,r){var o=e.queries.getByIndex(i),a=o.matches;if(null!==a)for(var s=uv(e,n,o,i),c=0;c<a.length;c+=2){var l=a[c];if(l>0)r.push(s[c/2]);else{var u=a[c+1],d=n[-l];ngDevMode&&_e(d);for(var p=10;p<d.length;p++)(g=d[p])[17]===g[3]&&t(g[1],g,u,r);if(null!==d[9])for(var h=d[9],f=0;f<h.length;f++){var g;t((g=h[f])[1],g,u,r)}}}return r}(n,e,i,[]):uv(n,e,r,i);t.reset(o),t.notifyOnChanges()}return!0}return!1}function pv(t,e,n){fv(an(),on(),t,e,n,!0)}function hv(t,e,n){fv(an(),on(),t,e,n,!1)}function fv(t,e,n,i,r,o){t.firstCreatePass&&(wv(t,new ov(n,i,o,r),-1),o&&(t.staticViewQueries=!0)),bv(t,e)}function gv(t,e,n,i){vv(an(),on(),e,n,i,!1,cn(),t)}function mv(t,e,n,i){vv(an(),on(),e,n,i,!0,cn(),t)}function vv(t,e,n,i,r,o,a,s){t.firstCreatePass&&(wv(t,new ov(n,i,o,r),a.index),function(t,e){var n=t.contentQueries||(t.contentQueries=[]);e!==(t.contentQueries.length?n[n.length-1]:-1)&&n.push(t.queries.length-1,e)}(t,s),o&&(t.staticContentQueries=!0)),bv(t,e)}function yv(){return t=on(),e=xn(),ngDevMode&&Bt(t[19],"LQueries should be defined when trying to load a query"),ngDevMode&&Ht(t[19].queries,e),t[19].queries[e].queryList;var t,e}function bv(t,e){var n=new nv;!function(t,e,n,i){var r=$a(e);r.push(n),t.firstCreatePass&&ts(t).push(i,r.length-1)}(t,e,n,n.destroy),null===e[19]&&(e[19]=new rv),e[19].queries.push(new iv(n))}function wv(t,e,n){null===t.queries&&(t.queries=new av),t.queries.track(new sv(e,n))}function Sv(t,e){return ngDevMode&&Bt(t.queries,"TQueries must be defined to retrieve a TQuery"),t.queries.getByIndex(e)}
  977. /**
  978. * @license
  979. * Copyright Google Inc. All Rights Reserved.
  980. *
  981. * Use of this source code is governed by an MIT-style license that can be
  982. * found in the LICENSE file at https://angular.io/license
  983. */function xv(t,e){return Ns(gh,Gp,t,e)}function Mv(t){void 0===t&&(t=v.Default);var e=Vs(!0);if(null!=e||t&v.Optional)return e;throw new Error("No provider for ChangeDetectorRef!")}
  984. /**
  985. * @license
  986. * Copyright Google Inc. All Rights Reserved.
  987. *
  988. * Use of this source code is governed by an MIT-style license that can be
  989. * found in the LICENSE file at https://angular.io/license
  990. */
  991. /**
  992. * @license
  993. * Copyright Google Inc. All Rights Reserved.
  994. *
  995. * Use of this source code is governed by an MIT-style license that can be
  996. * found in the LICENSE file at https://angular.io/license
  997. */var Ev={"ɵɵattribute":El,"ɵɵattributeInterpolate1":Rl,"ɵɵattributeInterpolate2":Ll,"ɵɵattributeInterpolate3":Nl,"ɵɵattributeInterpolate4":jl,"ɵɵattributeInterpolate5":Vl,"ɵɵattributeInterpolate6":Fl,"ɵɵattributeInterpolate7":Ul,"ɵɵattributeInterpolate8":Bl,"ɵɵattributeInterpolateV":zl,"ɵɵdefineComponent":re,"ɵɵdefineDirective":pe,"ɵɵdefineInjectable":O,"ɵɵdefineInjector":P,"ɵɵdefineNgModule":le,"ɵɵdefinePipe":he,"ɵɵdirectiveInject":Xl,"ɵɵgetFactoryOf":Ti,"ɵɵgetInheritedFactory":Oi,"ɵɵinject":vt,"ɵɵinjectAttribute":Yl,"ɵɵinvalidFactory":Zl,"ɵɵinvalidFactoryDep":yt,"ɵɵinjectPipeChangeDetectorRef":Mv,"ɵɵtemplateRefExtractor":xv,"ɵɵNgOnChangesFeature":Mp,"ɵɵProvidersFeature":Dp,"ɵɵCopyDefinitionFeature":Sp,"ɵɵInheritDefinitionFeature":fp,"ɵɵnextContext":hu,"ɵɵnamespaceHTML":jn,"ɵɵnamespaceMathML":Nn,"ɵɵnamespaceSVG":Ln,"ɵɵenableBindings":nn,"ɵɵdisableBindings":rn,"ɵɵelementStart":$l,"ɵɵelementEnd":tu,"ɵɵelement":eu,"ɵɵelementContainerStart":nu,"ɵɵelementContainerEnd":iu,"ɵɵelementContainer":ru,"ɵɵpureFunction0":Pm,"ɵɵpureFunction1":Im,"ɵɵpureFunction2":km,"ɵɵpureFunction3":Dm,"ɵɵpureFunction4":Rm,"ɵɵpureFunction5":Lm,"ɵɵpureFunction6":Nm,"ɵɵpureFunction7":jm,"ɵɵpureFunction8":Vm,"ɵɵpureFunctionV":Fm,"ɵɵgetCurrentView":ou,"ɵɵrestoreView":sn,"ɵɵlistener":cu,"ɵɵprojection":yu,"ɵɵupdateSyntheticHostBinding":Wd,"ɵɵcomponentHostSyntheticListener":lu,"ɵɵpipeBind1":Km,"ɵɵpipeBind2":Xm,"ɵɵpipeBind3":Ym,"ɵɵpipeBind4":Zm,"ɵɵpipeBindV":Jm,"ɵɵprojectionDef":gu,"ɵɵhostProperty":Hd,"ɵɵproperty":Jl,"ɵɵpropertyInterpolate":bu,"ɵɵpropertyInterpolate1":wu,"ɵɵpropertyInterpolate2":Su,"ɵɵpropertyInterpolate3":xu,"ɵɵpropertyInterpolate4":Mu,"ɵɵpropertyInterpolate5":Eu,"ɵɵpropertyInterpolate6":Cu,"ɵɵpropertyInterpolate7":Au,"ɵɵpropertyInterpolate8":Tu,"ɵɵpropertyInterpolateV":Ou,"ɵɵpipe":qm,"ɵɵqueryRefresh":dv,"ɵɵviewQuery":hv,"ɵɵstaticViewQuery":pv,"ɵɵstaticContentQuery":mv,"ɵɵloadQuery":yv,"ɵɵcontentQuery":gv,"ɵɵreference":Kl,"ɵɵclassMap":Ku,"ɵɵclassMapInterpolate1":vd,"ɵɵclassMapInterpolate2":yd,"ɵɵclassMapInterpolate3":bd,"ɵɵclassMapInterpolate4":wd,"ɵɵclassMapInterpolate5":Sd,"ɵɵclassMapInterpolate6":xd,"ɵɵclassMapInterpolate7":Md,"ɵɵclassMapInterpolate8":Ed,"ɵɵclassMapInterpolateV":Cd,"ɵɵstyleMap":Wu,"ɵɵstyleMapInterpolate1":Ad,"ɵɵstyleMapInterpolate2":Td,"ɵɵstyleMapInterpolate3":Od,"ɵɵstyleMapInterpolate4":_d,"ɵɵstyleMapInterpolate5":Pd,"ɵɵstyleMapInterpolate6":Id,"ɵɵstyleMapInterpolate7":kd,"ɵɵstyleMapInterpolate8":Dd,"ɵɵstyleMapInterpolateV":Rd,"ɵɵstyleProp":Gu,"ɵɵstylePropInterpolate1":Ld,"ɵɵstylePropInterpolate2":Nd,"ɵɵstylePropInterpolate3":jd,"ɵɵstylePropInterpolate4":Vd,"ɵɵstylePropInterpolate5":Fd,"ɵɵstylePropInterpolate6":Ud,"ɵɵstylePropInterpolate7":Bd,"ɵɵstylePropInterpolate8":zd,"ɵɵstylePropInterpolateV":Gd,"ɵɵstyleSanitizer":zu,"ɵɵclassProp":Hu,"ɵɵselect":wo,"ɵɵadvance":bo,"ɵɵtemplate":Wl,"ɵɵtext":ad,"ɵɵtextInterpolate":sd,"ɵɵtextInterpolate1":cd,"ɵɵtextInterpolate2":ld,"ɵɵtextInterpolate3":ud,"ɵɵtextInterpolate4":dd,"ɵɵtextInterpolate5":pd,"ɵɵtextInterpolate6":hd,"ɵɵtextInterpolate7":fd,"ɵɵtextInterpolate8":gd,"ɵɵtextInterpolateV":md,"ɵɵi18n":lm,"ɵɵi18nAttributes":um,"ɵɵi18nExp":hm,"ɵɵi18nStart":tm,"ɵɵi18nEnd":om,"ɵɵi18nApply":fm,"ɵɵi18nPostprocess":rm,"ɵɵresolveWindow":ai,"ɵɵresolveDocument":si,"ɵɵresolveBody":ci,"ɵɵsetComponentScope":oe,"ɵɵsetNgModuleScope":ue,"ɵɵsanitizeHtml":Pr,"ɵɵsanitizeStyle":Ir,"ɵɵdefaultStyleSanitizer":jr,"ɵɵsanitizeResourceUrl":Dr,"ɵɵsanitizeScript":Rr,"ɵɵsanitizeUrl":kr,"ɵɵsanitizeUrlOrResourceUrl":Nr},Cv=null;function Av(){Cv=null}
  998. /**
  999. * @license
  1000. * Copyright Google Inc. All Rights Reserved.
  1001. *
  1002. * Use of this source code is governed by an MIT-style license that can be
  1003. * found in the LICENSE file at https://angular.io/license
  1004. */var Tv=[],Ov=[],_v=!1;function Pv(){if(!_v){_v=!0;try{for(var t=Ov.length-1;t>=0;t--){var e=Ov[t],n=e.moduleType,i=e.ngModule;i.declarations&&i.declarations.every(Iv)&&(Ov.splice(t,1),Bv(n,i))}}finally{_v=!1}}}function Iv(t){return Array.isArray(t)?t.every(Iv):!!G(t)}function kv(t,e){void 0===e&&(e={}),Dv(t,e),function(t,e){Ov.push({moduleType:t,ngModule:e})}(t,e)}function Dv(t,e,n){void 0===n&&(n=!1),ngDevMode&&Bt(t,"Required value moduleType"),ngDevMode&&Bt(e,"Required value ngModule");var i=qt(e.declarations||Tv),r=null;Object.defineProperty(t,nt,{configurable:!0,get:function(){if(null===r){if(ngDevMode&&e.imports&&e.imports.indexOf(t)>-1)throw new Error("'"+ri(t)+"' module can't import itself");(r=Q().compileNgModule(Ev,"ng:///"+t.name+"/ɵmod.js",{type:t,bootstrap:qt(e.bootstrap||Tv).map(G),declarations:i.map(G),imports:qt(e.imports||Tv).map(G).map(Hv),exports:qt(e.exports||Tv).map(G).map(Hv),schemas:e.schemas?qt(e.schemas):null,id:e.id||null})).schemas||(r.schemas=[])}return r}});var o=null;Object.defineProperty(t,L,{get:function(){if(null===o){ngDevMode&&Rv(t,n);var i={name:t.name,type:t,deps:$s(t),providers:e.providers||Tv,imports:[(e.imports||Tv).map(G),(e.exports||Tv).map(G)]};o=Q().compileInjector(Ev,"ng:///"+t.name+"/ɵinj.js",i)}return o},configurable:!!ngDevMode})}function Rv(t,e,n){if(!Vv.get(t)){var r;if(Vv.set(t,!0),t=G(t),n){if(!(r=ye(t)))throw new Error("Unexpected value '"+t.name+"' imported by the module '"+n.name+"'. Please add an @NgModule annotation.")}else r=ye(t,!0);var o=[],a=li(r.declarations),s=li(r.imports);qt(s).map(Lv).forEach(function(e){p(e,t),Rv(e,!1,t)});var c=li(r.exports);a.forEach(function(e){fe(e=G(e))||ge(e)||me(e)||o.push("Unexpected value '"+ri(e)+"' declared by the module '"+ri(t)+"'. Please add a @Pipe/@Directive/@Component annotation.")}),a.forEach(function(t){var e=ge(t=G(t));!fe(t)&&e&&0==e.selectors.length&&o.push("Directive "+ri(t)+" has no selector, please add it!")});var l=Object(i.h)(a.map(G),qt(s.map(Uv)).map(G));c.forEach(function(e){var n=(fe(e=G(e))?"component":ge(e)&&"directive")||me(e)&&"pipe";n&&-1===l.lastIndexOf(e)&&o.push("Can't export "+n+" "+ri(e)+" from "+ri(t)+" as it was neither declared nor imported!")}),a.forEach(function(n){return function(e,n){e=G(e);var i=jv.get(e);if(i&&i!==t){if(!n){var r=[i,t].map(ri).sort();o.push("Type "+ri(e)+" is part of the declarations of 2 modules: "+r[0]+" and "+r[1]+"! Please consider moving "+ri(e)+" to a higher module that imports "+r[0]+" and "+r[1]+". You can also create a new NgModule that exports and includes "+ri(e)+" then import that NgModule in "+r[0]+" and "+r[1]+".")}}else jv.set(e,t)}(n,e)}),a.forEach(function(t){if(fe(t=G(t))){var e=Nv(t,"Component");e&&e.entryComponents&&Kt(e.entryComponents,d)}});var u=Nv(t,"NgModule");if(u&&(u.imports&&qt(u.imports).map(Lv).forEach(function(e){p(e,t),Rv(e,!1,t)}),u.bootstrap&&Kt(u.bootstrap,function(t){fe(t=G(t))||o.push(ri(t)+" cannot be used as an entry component.")}),u.bootstrap&&Kt(u.bootstrap,d),u.entryComponents&&Kt(u.entryComponents,d)),o.length)throw new Error(o.join("\n"))}function d(t){t=G(t),jv.get(t)||o.push("Component "+ri(t)+" is not part of any NgModule or the module has not been imported into your module.")}function p(t,e){if(fe(t=G(t))||ge(t))throw new Error("Unexpected directive '"+t.name+"' imported by the module '"+e.name+"'. Please add an @NgModule annotation.");if(me(t))throw new Error("Unexpected pipe '"+t.name+"' imported by the module '"+e.name+"'. Please add an @NgModule annotation.")}}function Lv(t){return(t=G(t)).ngModule||t}function Nv(t,e){var n=null;return i(t.__annotations__),i(t.decorators),n;function i(t){t&&t.forEach(r)}function r(t){n||(Object.getPrototypeOf(t).ngMetadataName==e?n=t:t.type&&Object.getPrototypeOf(t.type).ngMetadataName==e&&(n=t.args[0]))}}var jv=new Map,Vv=new Map;function Fv(){jv=new Map,Vv=new Map,Ov.length=0}function Uv(t){var e=ye(t=G(t),!0);return Object(i.h)(qt(li(e.exports).map(function(t){return ye(t)?(Rv(t,!1),Uv(t)):t})))}function Bv(t,e){var n=qt(e.declarations||Tv),i=Gv(t);n.forEach(function(e){e.hasOwnProperty($)?zv(fe(e),i):e.hasOwnProperty(tt)||e.hasOwnProperty(et)||(e.ngSelectorScope=t)})}function zv(t,e){t.directiveDefs=function(){return Array.from(e.compilation.directives).map(function(t){return t.hasOwnProperty($)?fe(t):ge(t)}).filter(function(t){return!!t})},t.pipeDefs=function(){return Array.from(e.compilation.pipes).map(function(t){return me(t)})},t.schemas=e.schemas,t.tView=null}function Gv(t){if(!Wv(t))throw new Error(t.name+" does not have a module def (ɵmod property)");var e=ye(t);if(null!==e.transitiveCompileScopes)return e.transitiveCompileScopes;var n={schemas:e.schemas||null,compilation:{directives:new Set,pipes:new Set},exported:{directives:new Set,pipes:new Set}};return li(e.imports).forEach(function(t){var e=t;if(!Wv(e))throw new Error("Importing "+e.name+" which does not have a ɵmod property");var i=Gv(e);i.exported.directives.forEach(function(t){return n.compilation.directives.add(t)}),i.exported.pipes.forEach(function(t){return n.compilation.pipes.add(t)})}),li(e.declarations).forEach(function(t){me(t)?n.compilation.pipes.add(t):n.compilation.directives.add(t)}),li(e.exports).forEach(function(t){var e=t;if(Wv(e)){var i=Gv(e);i.exported.directives.forEach(function(t){n.compilation.directives.add(t),n.exported.directives.add(t)}),i.exported.pipes.forEach(function(t){n.compilation.pipes.add(t),n.exported.pipes.add(t)})}else me(e)?n.exported.pipes.add(e):n.exported.directives.add(e)}),e.transitiveCompileScopes=n,n}function Hv(t){return function(t){return void 0!==t.ngModule}(t)?t.ngModule:t}function Wv(t){return!!ye(t)}
  1005. /**
  1006. * @license
  1007. * Copyright Google Inc. All Rights Reserved.
  1008. *
  1009. * Use of this source code is governed by an MIT-style license that can be
  1010. * found in the LICENSE file at https://angular.io/license
  1011. */function qv(t,e){("undefined"==typeof ngDevMode||ngDevMode)&&at();var n=null;!function(t,e){sl(e)&&(ol.set(t,e),al.add(t))}(t,e),Yv(t,e),Object.defineProperty(t,$,{get:function(){if(null===n){var r=Q();if(sl(e)){var o=["Component '"+t.name+"' is not resolved:"];throw e.templateUrl&&o.push(" - templateUrl: "+e.templateUrl),e.styleUrls&&e.styleUrls.length&&o.push(" - styleUrls: "+JSON.stringify(e.styleUrls)),o.push("Did you run and wait for 'resolveComponentResources()'?"),new Error(o.join("\n"))}var a=Cv,s=e.preserveWhitespaces;void 0===s&&(s=null!==a&&void 0!==a.preserveWhitespaces&&a.preserveWhitespaces);var c=e.encapsulation;void 0===c&&(c=null!==a&&void 0!==a.defaultEncapsulation?a.defaultEncapsulation:Tt.Emulated);var l=e.templateUrl||"ng:///"+t.name+"/template.html",u=Object(i.a)(Object(i.a)({},Zv(t,e)),{typeSourceSpan:r.createParseSourceSpan("Component",t.name,l),template:e.template||"",preserveWhitespaces:s,styles:e.styles||ne,animations:e.animations,directives:[],changeDetection:e.changeDetection,pipes:new Map,encapsulation:c,interpolation:e.interpolation,viewProviders:e.viewProviders||null});if(u.usesInheritance&&Jv(t),n=r.compileComponent(Ev,l,u),Pv(),void 0!==t.ngSelectorScope){var d=Gv(t.ngSelectorScope);zv(n,d)}}return n},configurable:!!ngDevMode})}function Kv(t,e){var n=null;Yv(t,e||{}),Object.defineProperty(t,tt,{get:function(){if(null===n){var i=Xv(t,e||{});n=Q().compileDirective(Ev,i.sourceMapUrl,i.metadata)}return n},configurable:!!ngDevMode})}function Xv(t,e){var n=t&&t.name,i="ng:///"+n+"/ɵdir.js",r=Q(),o=Zv(t,e);return o.typeSourceSpan=r.createParseSourceSpan("Directive",n,i),o.usesInheritance&&Jv(t),{metadata:o,sourceMapUrl:i}}function Yv(t,e){var n=null;Object.defineProperty(t,rt,{get:function(){if(null===n){var r=Xv(t,e),o=Q();n=o.compileFactory(Ev,"ng:///"+t.name+"/ɵfac.js",Object(i.a)(Object(i.a)({},r.metadata),{injectFn:"directiveInject",target:o.R3FactoryTarget.Directive}))}return n},configurable:!!ngDevMode})}function Zv(t,e){var n,i=Qs(),r=i.ownPropMetadata(t);return{name:t.name,type:t,typeArgumentCount:0,selector:void 0!==e.selector?e.selector:null,deps:$s(t),host:e.host||ee,propMetadata:r,inputs:e.inputs||ne,outputs:e.outputs||ne,queries:Qv(t,r,$v),lifecycle:{usesOnChanges:i.hasLifecycleHook(t,"ngOnChanges")},typeSourceSpan:null,usesInheritance:!function(t){return Object.getPrototypeOf(t.prototype)===Object.prototype}(t),exportAs:(n=e.exportAs,void 0===n?null:ny(n)),providers:e.providers||null,viewQueries:Qv(t,r,ty)}}function Jv(t){for(var e=Object.prototype,n=Object.getPrototypeOf(t.prototype).constructor;n&&n!==e;)ge(n)||fe(n)||!ry(n)||Kv(n,null),n=Object.getPrototypeOf(n)}function Qv(t,e,n){var i=[],r=function(r){if(e.hasOwnProperty(r)){var o=e[r];o.forEach(function(e){if(n(e)){if(!e.selector)throw new Error("Can't construct a query for the property \""+r+'" of "'+ri(t)+"\" since the query selector wasn't defined.");if(o.some(ey))throw new Error("Cannot combine @Input decorators with query decorators");i.push(function(t,e){return{propertyName:r,predicate:(n=e.selector,"string"==typeof n?ny(n):G(n)),descendants:e.descendants,first:e.first,read:e.read?e.read:null,static:!!e.static};var n}(0,e))}})}};for(var o in e)r(o);return i}function $v(t){var e=t.ngMetadataName;return"ContentChild"===e||"ContentChildren"===e}function ty(t){var e=t.ngMetadataName;return"ViewChild"===e||"ViewChildren"===e}function ey(t){return"Input"===t.ngMetadataName}function ny(t){return t.split(",").map(function(t){return t.trim()})}var iy=["ngOnChanges","ngOnInit","ngOnDestroy","ngDoCheck","ngAfterViewInit","ngAfterViewChecked","ngAfterContentInit","ngAfterContentChecked"];function ry(t){var e=Qs();if(iy.some(function(n){return e.hasLifecycleHook(t,n)}))return!0;var n=e.propMetadata(t);for(var i in n)for(var r=n[i],o=0;o<r.length;o++){var a=r[o],s=a.ngMetadataName;if(ey(a)||$v(a)||ty(a)||"Output"===s||"HostBinding"===s||"HostListener"===s)return!0}return!1}
  1012. /**
  1013. * @license
  1014. * Copyright Google Inc. All Rights Reserved.
  1015. *
  1016. * Use of this source code is governed by an MIT-style license that can be
  1017. * found in the LICENSE file at https://angular.io/license
  1018. */function oy(t,e){var n=null,r=null;Object.defineProperty(t,rt,{get:function(){if(null===r){var n=ay(t,e),o=Q();r=o.compileFactory(Ev,"ng:///"+n.name+"/ɵfac.js",Object(i.a)(Object(i.a)({},n),{injectFn:"directiveInject",target:o.R3FactoryTarget.Pipe}))}return r},configurable:!!ngDevMode}),Object.defineProperty(t,et,{get:function(){if(null===n){var i=ay(t,e);n=Q().compilePipe(Ev,"ng:///"+i.name+"/ɵpipe.js",i)}return n},configurable:!!ngDevMode})}function ay(t,e){return{type:t,typeArgumentCount:0,name:t.name,deps:$s(t),pipeName:e.name,pure:void 0===e.pure||e.pure}}
  1019. /**
  1020. * @license
  1021. * Copyright Google Inc. All Rights Reserved.
  1022. *
  1023. * Use of this source code is governed by an MIT-style license that can be
  1024. * found in the LICENSE file at https://angular.io/license
  1025. */var sy=h("Directive",function(t){return void 0===t&&(t={}),t},void 0,void 0,function(t,e){return yy(t,e)}),cy=h("Component",function(t){return void 0===t&&(t={}),Object(i.a)({changeDetection:Ct.Default},t)},sy,void 0,function(t,e){return vy(t,e)}),ly=h("Pipe",function(t){return Object(i.a)({pure:!0},t)},void 0,void 0,function(t,e){return by(t,e)}),uy=m("Input",function(t){return{bindingPropertyName:t}}),dy=m("Output",function(t){return{bindingPropertyName:t}}),py=m("HostBinding",function(t){return{hostPropertyName:t}}),hy=m("HostListener",function(t,e){return{eventName:t,args:e}}),fy=qv,gy=Kv,my=oy,vy=fy,yy=gy,by=my,wy=h("NgModule",function(t){return t},void 0,void 0,function(t,e){return xy(t,e)}),Sy=kv,xy=Sy,My=new ct("Application Initializer"),Ey=function(){function t(t){var e=this;this.appInits=t,this.initialized=!1,this.done=!1,this.donePromise=new Promise(function(t,n){e.resolve=t,e.reject=n})}return t.prototype.runInitializers=function(){var t=this;if(!this.initialized){var e=[],n=function(){t.done=!0,t.resolve()};if(this.appInits)for(var i=0;i<this.appInits.length;i++){var r=this.appInits[i]();au(r)&&e.push(r)}Promise.all(e).then(function(){n()}).catch(function(e){t.reject(e)}),0===e.length&&n(),this.initialized=!0}},(t=Object(i.b)([Object(i.e)(0,b(My)),Object(i.e)(0,w()),Object(i.d)("design:paramtypes",[Array])],t)).ɵfac=function(e){return new(e||t)(vt(My,8))},t.ɵprov=O({token:t,factory:function(e){return t.ɵfac(e)}}),t}(),Cy=new ct("AppId");function Ay(){return""+Oy()+Oy()+Oy()}var Ty={provide:Cy,useFactory:Ay,deps:[]};function Oy(){return String.fromCharCode(97+Math.floor(25*Math.random()))}var _y,Py=new ct("Platform Initializer"),Iy=new ct("Platform ID"),ky=new ct("appBootstrapListener"),Dy=new ct("Application Packages Root URL"),Ry=function(){function t(){}return t.prototype.log=function(t){console.log(t)},t.prototype.warn=function(t){console.warn(t)},t.ɵfac=function(e){return new(e||t)},t.ɵprov=O({token:t,factory:function(e){return t.ɵfac(e)}}),t}(),Ly=new ct("LocaleId"),Ny=new ct("DefaultCurrencyCode"),jy=new ct("Translations"),Vy=new ct("TranslationsFormat");!function(t){t[t.Error=0]="Error",t[t.Warning=1]="Warning",t[t.Ignore=2]="Ignore"}(_y||(_y={}));
  1026. /**
  1027. * @license
  1028. * Copyright Google Inc. All Rights Reserved.
  1029. *
  1030. * Use of this source code is governed by an MIT-style license that can be
  1031. * found in the LICENSE file at https://angular.io/license
  1032. */
  1033. var Fy=!0,Uy=Fy,By=function(t,e){this.ngModuleFactory=t,this.componentFactories=e},zy=function(t){return new _m(t)},Gy=zy,Hy=function(t){return Promise.resolve(zy(t))},Wy=Hy,qy=function(t){var e=zy(t),n=li(ye(t).declarations).reduce(function(t,e){var n=fe(e);return n&&t.push(new vg(n)),t},[]);return new By(e,n)},Ky=qy,Xy=function(t){return Promise.resolve(qy(t))},Yy=Xy,Zy=function(){function t(){this.compileModuleSync=Gy,this.compileModuleAsync=Wy,this.compileModuleAndAllComponentsSync=Ky,this.compileModuleAndAllComponentsAsync=Yy}return t.prototype.clearCache=function(){},t.prototype.clearCacheFor=function(t){},t.prototype.getModuleId=function(t){},t.ɵfac=function(e){return new(e||t)},t.ɵprov=O({token:t,factory:function(e){return t.ɵfac(e)}}),t}(),Jy=new ct("compilerOptions"),Qy=function(){},$y=Promise.resolve(0);function tb(t){"undefined"==typeof Zone?$y.then(function(){t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}
  1034. /**
  1035. * @license
  1036. * Copyright Google Inc. All Rights Reserved.
  1037. *
  1038. * Use of this source code is governed by an MIT-style license that can be
  1039. * found in the LICENSE file at https://angular.io/license
  1040. */
  1041. /**
  1042. * @license
  1043. * Copyright Google Inc. All Rights Reserved.
  1044. *
  1045. * Use of this source code is governed by an MIT-style license that can be
  1046. * found in the LICENSE file at https://angular.io/license
  1047. */var eb=function(){function t(t){var e,n,i=t.enableLongStackTrace,r=void 0!==i&&i,o=t.shouldCoalesceEventChangeDetection,a=void 0!==o&&o;if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new tv(!1),this.onMicrotaskEmpty=new tv(!1),this.onStable=new tv(!1),this.onError=new tv(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched(),this._nesting=0,this._outer=this._inner=Zone.current,Zone.wtfZoneSpec&&(this._inner=this._inner.fork(Zone.wtfZoneSpec)),Zone.TaskTrackingZoneSpec&&(this._inner=this._inner.fork(new Zone.TaskTrackingZoneSpec)),r&&Zone.longStackTraceZoneSpec&&(this._inner=this._inner.fork(Zone.longStackTraceZoneSpec)),this.shouldCoalesceEventChangeDetection=a,this.lastRequestAnimationFrameId=-1,this.nativeRequestAnimationFrame=function(){var t=J.requestAnimationFrame,e=J.cancelAnimationFrame;if("undefined"!=typeof Zone&&t&&e){var n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);var i=e[Zone.__symbol__("OriginalDelegate")];i&&(e=i)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:e}}().nativeRequestAnimationFrame,n=!!(e=this).shouldCoalesceEventChangeDetection&&e.nativeRequestAnimationFrame&&function(){var t;-1===(t=e).lastRequestAnimationFrameId&&(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(J,function(){t.lastRequestAnimationFrameId=-1,ob(t),rb(t)}),ob(t))},e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0,maybeDelayChangeDetection:n},onInvokeTask:function(t,i,r,o,a,s){try{return ab(e),t.invokeTask(r,o,a,s)}finally{n&&"eventTask"===o.type&&n(),sb(e)}},onInvoke:function(t,n,i,r,o,a,s){try{return ab(e),t.invoke(i,r,o,a,s)}finally{sb(e)}},onHasTask:function(t,n,i,r){t.hasTask(i,r),n===i&&("microTask"==r.change?(e._hasPendingMicrotasks=r.microTask,ob(e),rb(e)):"macroTask"==r.change&&(e.hasPendingMacrotasks=r.macroTask))},onHandleError:function(t,n,i,r){return t.handleError(i,r),e.runOutsideAngular(function(){return e.onError.emit(r)}),!1}})}return t.isInAngularZone=function(){return!0===Zone.current.get("isAngularZone")},t.assertInAngularZone=function(){if(!t.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")},t.assertNotInAngularZone=function(){if(t.isInAngularZone())throw new Error("Expected to not be in Angular Zone, but it is!")},t.prototype.run=function(t,e,n){return this._inner.run(t,e,n)},t.prototype.runTask=function(t,e,n,i){var r=this._inner,o=r.scheduleEventTask("NgZoneEvent: "+i,t,ib,nb,nb);try{return r.runTask(o,e,n)}finally{r.cancelTask(o)}},t.prototype.runGuarded=function(t,e,n){return this._inner.runGuarded(t,e,n)},t.prototype.runOutsideAngular=function(t){return this._outer.run(t)},t}();function nb(){}var ib={};function rb(t){if(0==t._nesting&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(function(){return t.onStable.emit(null)})}finally{t.isStable=!0}}}function ob(t){t._hasPendingMicrotasks||t.shouldCoalesceEventChangeDetection&&-1!==t.lastRequestAnimationFrameId?t.hasPendingMicrotasks=!0:t.hasPendingMicrotasks=!1}function ab(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function sb(t){t._nesting--,rb(t)}var cb=function(){function t(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new tv,this.onMicrotaskEmpty=new tv,this.onStable=new tv,this.onError=new tv}return t.prototype.run=function(t,e,n){return t.apply(e,n)},t.prototype.runGuarded=function(t,e,n){return t.apply(e,n)},t.prototype.runOutsideAngular=function(t){return t()},t.prototype.runTask=function(t,e,n,i){return t.apply(e,n)},t}(),lb=function(){function t(t){var e=this;this._ngZone=t,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,this._watchAngularEvents(),t.run(function(){e.taskTrackingZone="undefined"==typeof Zone?null:Zone.current.get("TaskTrackingZone")})}return t.prototype._watchAngularEvents=function(){var t=this;this._ngZone.onUnstable.subscribe({next:function(){t._didWork=!0,t._isZoneStable=!1}}),this._ngZone.runOutsideAngular(function(){t._ngZone.onStable.subscribe({next:function(){eb.assertNotInAngularZone(),tb(function(){t._isZoneStable=!0,t._runCallbacksIfReady()})}})})},t.prototype.increasePendingRequestCount=function(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount},t.prototype.decreasePendingRequestCount=function(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount},t.prototype.isStable=function(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks},t.prototype._runCallbacksIfReady=function(){var t=this;if(this.isStable())tb(function(){for(;0!==t._callbacks.length;){var e=t._callbacks.pop();clearTimeout(e.timeoutId),e.doneCb(t._didWork)}t._didWork=!1});else{var e=this.getPendingTasks();this._callbacks=this._callbacks.filter(function(t){return!t.updateCb||!t.updateCb(e)||(clearTimeout(t.timeoutId),!1)}),this._didWork=!0}},t.prototype.getPendingTasks=function(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(function(t){return{source:t.source,creationLocation:t.creationLocation,data:t.data}}):[]},t.prototype.addCallback=function(t,e,n){var i=this,r=-1;e&&e>0&&(r=setTimeout(function(){i._callbacks=i._callbacks.filter(function(t){return t.timeoutId!==r}),t(i._didWork,i.getPendingTasks())},e)),this._callbacks.push({doneCb:t,timeoutId:r,updateCb:n})},t.prototype.whenStable=function(t,e,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/dist/task-tracking.js" loaded?');this.addCallback(t,e,n),this._runCallbacksIfReady()},t.prototype.getPendingRequestCount=function(){return this._pendingCount},t.prototype.findProviders=function(t,e,n){return[]},(t=Object(i.b)([Object(i.d)("design:paramtypes",[eb])],t)).ɵfac=function(e){return new(e||t)(vt(eb))},t.ɵprov=O({token:t,factory:function(e){return t.ɵfac(e)}}),t}(),ub=function(){function t(){this._applications=new Map,hb.addToWindow(this)}return t.prototype.registerApplication=function(t,e){this._applications.set(t,e)},t.prototype.unregisterApplication=function(t){this._applications.delete(t)},t.prototype.unregisterAllApplications=function(){this._applications.clear()},t.prototype.getTestability=function(t){return this._applications.get(t)||null},t.prototype.getAllTestabilities=function(){return Array.from(this._applications.values())},t.prototype.getAllRootElements=function(){return Array.from(this._applications.keys())},t.prototype.findTestabilityInTree=function(t,e){return void 0===e&&(e=!0),hb.findTestabilityInTree(this,t,e)},(t=Object(i.b)([Object(i.d)("design:paramtypes",[])],t)).ɵfac=function(e){return new(e||t)},t.ɵprov=O({token:t,factory:function(e){return t.ɵfac(e)}}),t}();
  1048. /**
  1049. * @license
  1050. * Copyright Google Inc. All Rights Reserved.
  1051. *
  1052. * Use of this source code is governed by an MIT-style license that can be
  1053. * found in the LICENSE file at https://angular.io/license
  1054. */function db(t){hb=t}var pb,hb=new(function(){function t(){}return t.prototype.addToWindow=function(t){},t.prototype.findTestabilityInTree=function(t,e,n){return null},t}()),fb=gb;
  1055. /**
  1056. * @license
  1057. * Copyright Google Inc. All Rights Reserved.
  1058. *
  1059. * Use of this source code is governed by an MIT-style license that can be
  1060. * found in the LICENSE file at https://angular.io/license
  1061. */function gb(t,e,n){var r;ngDevMode&&(void 0===r&&(r="Type passed in is not NgModuleType, it does not have 'ɵmod' property."),ye(n)||zt(r));var o=t.get(Jy,[]).concat(e);("undefined"==typeof ngJitMode||ngJitMode)&&function(t){if(null!==Cv){if(t.defaultEncapsulation!==Cv.defaultEncapsulation)return void(ngDevMode&&console.error("Provided value for `defaultEncapsulation` can not be changed once it has been set."));if(t.preserveWhitespaces!==Cv.preserveWhitespaces)return void(ngDevMode&&console.error("Provided value for `preserveWhitespaces` can not be changed once it has been set."))}Cv=t}({defaultEncapsulation:Pb(o.map(function(t){return t.defaultEncapsulation})),preserveWhitespaces:Pb(o.map(function(t){return t.preserveWhitespaces}))});var a=new _m(n);if(0===ol.size)return Promise.resolve(a);var s,c,l=(s=o.map(function(t){return t.providers}),c=[],s.forEach(function(t){return t&&c.push.apply(c,Object(i.h)(t))}),c);if(0===l.length)return Promise.resolve(a);var u=Q(),d=Ec.create({providers:l}).get(u.ResourceLoader);return rl(function(t){return Promise.resolve(d.get(t))}).then(function(){return a})}var mb=function(){ngDevMode&&op()},vb=yb;function yb(t){return t.isBoundToModule}var bb=new ct("AllowMultipleToken"),wb=function(t,e){this.name=t,this.token=e};function Sb(t){if(pb&&!pb.destroyed&&!pb.injector.get(bb,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");mb(),pb=t.get(Ab);var e=t.get(Py,null);return e&&e.forEach(function(t){return t()}),pb}function xb(t,e,n){void 0===n&&(n=[]);var i="Platform: "+e,r=new ct(i);return function(e){void 0===e&&(e=[]);var o=Cb();if(!o||o.injector.get(bb,!1))if(t)t(n.concat(e).concat({provide:r,useValue:!0}));else{var a=n.concat(e).concat({provide:r,useValue:!0},{provide:cc,useValue:"platform"});Sb(Ec.create({providers:a,name:i}))}return Mb(r)}}function Mb(t){var e=Cb();if(!e)throw new Error("No platform exists!");if(!e.injector.get(t,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return e}function Eb(){pb&&!pb.destroyed&&pb.destroy()}function Cb(){return pb&&!pb.destroyed?pb:null}var Ab=function(){function t(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return t.prototype.bootstrapModuleFactory=function(t,e){var n=this,i=function(t,e){return"noop"===t?new cb:("zone.js"===t?void 0:t)||new eb({enableLongStackTrace:Ji(),shouldCoalesceEventChangeDetection:e})}(e?e.ngZone:void 0,e&&e.ngZoneEventCoalescing||!1),r=[{provide:eb,useValue:i}];return i.run(function(){var e=Ec.create({providers:r,parent:n.injector,name:t.moduleType.name}),o=t.create(e),a=o.injector.get(ki,null);if(!a)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return o.onDestroy(function(){return _b(n._modules,o)}),i.runOutsideAngular(function(){return i.onError.subscribe({next:function(t){a.handleError(t)}})}),function(t,e,n){try{var i=n();return au(i)?i.catch(function(n){throw e.runOutsideAngular(function(){return t.handleError(n)}),n}):i}catch(n){throw e.runOutsideAngular(function(){return t.handleError(n)}),n}}(a,i,function(){var t=o.injector.get(Ey);return t.runInitializers(),t.donePromise.then(function(){return Uy&&Sm(o.injector.get(Ly,Pg)||Pg),n._moduleDoBootstrap(o),o})})})},t.prototype.bootstrapModule=function(t,e){var n=this;void 0===e&&(e=[]);var i=Tb({},e);return fb(this.injector,i,t).then(function(t){return n.bootstrapModuleFactory(t,i)})},t.prototype._moduleDoBootstrap=function(t){var e=t.injector.get(Ob);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(function(t){return e.bootstrap(t)});else{if(!t.instance.ngDoBootstrap)throw new Error("The module "+F(t.instance.constructor)+' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.');t.instance.ngDoBootstrap(e)}this._modules.push(t)},t.prototype.onDestroy=function(t){this._destroyListeners.push(t)},Object.defineProperty(t.prototype,"injector",{get:function(){return this._injector},enumerable:!0,configurable:!0}),t.prototype.destroy=function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(function(t){return t.destroy()}),this._destroyListeners.forEach(function(t){return t()}),this._destroyed=!0},Object.defineProperty(t.prototype,"destroyed",{get:function(){return this._destroyed},enumerable:!0,configurable:!0}),(t=Object(i.b)([Object(i.d)("design:paramtypes",[Ec])],t)).ɵfac=function(e){return new(e||t)(vt(Ec))},t.ɵprov=O({token:t,factory:function(e){return t.ɵfac(e)}}),t}();function Tb(t,e){return Array.isArray(e)?e.reduce(Tb,t):Object(i.a)(Object(i.a)({},t),e)}var Ob=function(){function t(t,e,n,i,r,o){var l=this;this._zone=t,this._console=e,this._injector=n,this._exceptionHandler=i,this._componentFactoryResolver=r,this._initStatus=o,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._enforceNoNewChanges=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._enforceNoNewChanges=Ji(),this._zone.onMicrotaskEmpty.subscribe({next:function(){l._zone.run(function(){l.tick()})}});var u=new a.a(function(t){l._stable=l._zone.isStable&&!l._zone.hasPendingMacrotasks&&!l._zone.hasPendingMicrotasks,l._zone.runOutsideAngular(function(){t.next(l._stable),t.complete()})}),d=new a.a(function(t){var e;l._zone.runOutsideAngular(function(){e=l._zone.onStable.subscribe(function(){eb.assertNotInAngularZone(),tb(function(){l._stable||l._zone.hasPendingMacrotasks||l._zone.hasPendingMicrotasks||(l._stable=!0,t.next(!0))})})});var n=l._zone.onUnstable.subscribe(function(){eb.assertInAngularZone(),l._stable&&(l._stable=!1,l._zone.runOutsideAngular(function(){t.next(!1)}))});return function(){e.unsubscribe(),n.unsubscribe()}});this.isStable=Object(s.a)(u,d.pipe(Object(c.a)()))}return t.prototype.bootstrap=function(t,e){var n,i=this;if(!this._initStatus.done)throw new Error("Cannot bootstrap as there are still asynchronous initializers running. Bootstrap components in the `ngDoBootstrap` method of the root module.");n=t instanceof Lp?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);var r=vb(n)?void 0:this._injector.get(_t),o=e||n.selector,a=n.create(Ec.NULL,[],o,r);a.onDestroy(function(){i._unloadComponent(a)});var s=a.injector.get(lb,null);return s&&a.injector.get(ub).registerApplication(a.location.nativeElement,s),this._loadComponent(a),Ji()&&this._console.log("Angular is running in the development mode. Call enableProdMode() to enable the production mode."),a},t.prototype.tick=function(){var t,e,n,r,o=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;try{for(var a=Object(i.j)(this._views),s=a.next();!s.done;s=a.next())s.value.detectChanges()}catch(e){t={error:e}}finally{try{s&&!s.done&&(e=a.return)&&e.call(a)}finally{if(t)throw t.error}}if(this._enforceNoNewChanges)try{for(var c=Object(i.j)(this._views),l=c.next();!l.done;l=c.next())l.value.checkNoChanges()}catch(t){n={error:t}}finally{try{l&&!l.done&&(r=c.return)&&r.call(c)}finally{if(n)throw n.error}}}catch(t){this._zone.runOutsideAngular(function(){return o._exceptionHandler.handleError(t)})}finally{this._runningTick=!1}},t.prototype.attachView=function(t){var e=t;this._views.push(e),e.attachToAppRef(this)},t.prototype.detachView=function(t){var e=t;_b(this._views,e),e.detachFromAppRef()},t.prototype._loadComponent=function(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(ky,[]).concat(this._bootstrapListeners).forEach(function(e){return e(t)})},t.prototype._unloadComponent=function(t){this.detachView(t.hostView),_b(this.components,t)},t.prototype.ngOnDestroy=function(){this._views.slice().forEach(function(t){return t.destroy()})},Object.defineProperty(t.prototype,"viewCount",{get:function(){return this._views.length},enumerable:!0,configurable:!0}),(t=Object(i.b)([Object(i.d)("design:paramtypes",[eb,Ry,Ec,ki,Up,Ey])],t)).ɵfac=function(e){return new(e||t)(vt(eb),vt(Ry),vt(Ec),vt(ki),vt(Up),vt(Ey))},t.ɵprov=O({token:t,factory:function(e){return t.ɵfac(e)}}),t}();function _b(t,e){var n=t.indexOf(e);n>-1&&t.splice(n,1)}function Pb(t){for(var e=t.length-1;e>=0;e--)if(void 0!==t[e])return t[e]}
  1062. /**
  1063. * @license
  1064. * Copyright Google Inc. All Rights Reserved.
  1065. *
  1066. * Use of this source code is governed by an MIT-style license that can be
  1067. * found in the LICENSE file at https://angular.io/license
  1068. */
  1069. /**
  1070. * @license
  1071. * Copyright Google Inc. All Rights Reserved.
  1072. *
  1073. * Use of this source code is governed by an MIT-style license that can be
  1074. * found in the LICENSE file at https://angular.io/license
  1075. */
  1076. /**
  1077. * @license
  1078. * Copyright Google Inc. All Rights Reserved.
  1079. *
  1080. * Use of this source code is governed by an MIT-style license that can be
  1081. * found in the LICENSE file at https://angular.io/license
  1082. */var Ib=function(){};function kb(t){var e=Tm(t);if(!e)throw Lb(t);return e}function Db(t){var e=Tm(t);if(!e)throw Lb(t);return new _m(e)}var Rb=Db;function Lb(t){return new Error("No module with ID "+t+" loaded")}
  1083. /**
  1084. * @license
  1085. * Copyright Google Inc. All Rights Reserved.
  1086. *
  1087. * Use of this source code is governed by an MIT-style license that can be
  1088. * found in the LICENSE file at https://angular.io/license
  1089. */var Nb=function(){},jb={factoryPathPrefix:"",factoryPathSuffix:".ngfactory"},Vb=function(){function t(t,e){this._compiler=t,this._config=e||jb}return t.prototype.load=function(t){return!Uy&&this._compiler instanceof Zy?this.loadFactory(t):this.loadAndCompile(t)},t.prototype.loadAndCompile=function(t){var e=this,r=Object(i.f)(t.split("#"),2),o=r[0],a=r[1];return void 0===a&&(a="default"),n(519)(o).then(function(t){return t[a]}).then(function(t){return Fb(t,o,a)}).then(function(t){return e._compiler.compileModuleAsync(t)})},t.prototype.loadFactory=function(t){var e=Object(i.f)(t.split("#"),2),r=e[0],o=e[1],a="NgFactory";return void 0===o&&(o="default",a=""),n(519)(this._config.factoryPathPrefix+r+this._config.factoryPathSuffix).then(function(t){return t[o+a]}).then(function(t){return Fb(t,r,o)})},(t=Object(i.b)([Object(i.e)(1,w()),Object(i.d)("design:paramtypes",[Zy,Nb])],t)).ɵfac=function(e){return new(e||t)(vt(Zy),vt(Nb,8))},t.ɵprov=O({token:t,factory:function(e){return t.ɵfac(e)}}),t}();function Fb(t,e,n){if(!t)throw new Error("Cannot find '"+n+"' in '"+e+"'");return t}
  1090. /**
  1091. * @license
  1092. * Copyright Google Inc. All Rights Reserved.
  1093. *
  1094. * Use of this source code is governed by an MIT-style license that can be
  1095. * found in the LICENSE file at https://angular.io/license
  1096. */var Ub=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Object(i.c)(e,t),e}(Fs),Bb=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Object(i.c)(e,t),e}(Ub),zb=function(t,e){this.name=t,this.callback=e},Gb=function(){function t(t,e,n){this.listeners=[],this.parent=null,this._debugContext=n,this.nativeNode=t,e&&e instanceof Hb&&e.addChild(this)}return Object.defineProperty(t.prototype,"injector",{get:function(){return this._debugContext.injector},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"componentInstance",{get:function(){return this._debugContext.component},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"context",{get:function(){return this._debugContext.context},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"references",{get:function(){return this._debugContext.references},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"providerTokens",{get:function(){return this._debugContext.providerTokens},enumerable:!0,configurable:!0}),t}(),Hb=function(t){function e(e,n,i){var r=t.call(this,e,n,i)||this;return r.properties={},r.attributes={},r.classes={},r.styles={},r.childNodes=[],r.nativeElement=e,r}return Object(i.c)(e,t),e.prototype.addChild=function(t){t&&(this.childNodes.push(t),t.parent=this)},e.prototype.removeChild=function(t){var e=this.childNodes.indexOf(t);-1!==e&&(t.parent=null,this.childNodes.splice(e,1))},e.prototype.insertChildrenAfter=function(t,e){var n,r=this,o=this.childNodes.indexOf(t);-1!==o&&((n=this.childNodes).splice.apply(n,Object(i.h)([o+1,0],e)),e.forEach(function(e){e.parent&&e.parent.removeChild(e),t.parent=r}))},e.prototype.insertBefore=function(t,e){var n=this.childNodes.indexOf(t);-1===n?this.addChild(e):(e.parent&&e.parent.removeChild(e),e.parent=this,this.childNodes.splice(n,0,e))},e.prototype.query=function(t){return this.queryAll(t)[0]||null},e.prototype.queryAll=function(t){var e=[];return function t(e,n,i){e.childNodes.forEach(function(e){e instanceof Hb&&(n(e)&&i.push(e),t(e,n,i))})}(this,t,e),e},e.prototype.queryAllNodes=function(t){var e=[];return function t(e,n,i){e instanceof Hb&&e.childNodes.forEach(function(e){n(e)&&i.push(e),e instanceof Hb&&t(e,n,i)})}(this,t,e),e},Object.defineProperty(e.prototype,"children",{get:function(){return this.childNodes.filter(function(t){return t instanceof e})},enumerable:!0,configurable:!0}),e.prototype.triggerEventHandler=function(t,e){this.listeners.forEach(function(n){n.name==t&&n.callback(e)})},e}(Gb);function Wb(t){return t.map(function(t){return t.nativeElement})}var qb=function(){function t(t){this.nativeNode=t}return Object.defineProperty(t.prototype,"parent",{get:function(){var t=this.nativeNode.parentNode;return t?new Kb(t):null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"injector",{get:function(){return Zd(this.nativeNode)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"componentInstance",{get:function(){var t=this.nativeNode;return t&&(qd(t)||Xd(t))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"context",{get:function(){return qd(this.nativeNode)||Kd(this.nativeNode)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"listeners",{get:function(){return tp(this.nativeNode).filter(function(t){return"dom"===t.type})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"references",{get:function(){return null===(t=Qd(this.nativeNode,!1))?{}:(void 0===t.localRefs&&(t.localRefs=function(t,e){var n=t[1].data[e];if(n&&n.localNames){for(var i={},r=n.index+1,o=0;o<n.localNames.length;o+=2)i[n.localNames[o]]=t[r],r++;return i}return null}(t.lView,t.nodeIndex)),t.localRefs||{});var t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"providerTokens",{get:function(){return function(t){var e=Qd(t,!1);if(null===e)return[];for(var n,i=e.lView[1],r=i.data[e.nodeIndex],o=[],a=65535&r.providerIndexes,s=r.directiveEnd,c=a;c<s;c++){var l=i.data[c];void 0!==(n=l).type&&void 0!==n.template&&void 0!==n.declaredInputs&&(l=l.type),o.push(l)}return o}(this.nativeNode)},enumerable:!0,configurable:!0}),t}(),Kb=function(t){function e(e){return ngDevMode&&Gt(e),t.call(this,e)||this}return Object(i.c)(e,t),Object.defineProperty(e.prototype,"nativeElement",{get:function(){return this.nativeNode.nodeType==Node.ELEMENT_NODE?this.nativeNode:null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"name",{get:function(){try{var t=Qd(this.nativeNode);return t.lView[1].data[t.nodeIndex].tagName}catch(t){return this.nativeNode.nodeName}},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"properties",{get:function(){var t=Qd(this.nativeNode,!1);if(null==t)return{};var e=t.lView,n=e[1].data,i=n[t.nodeIndex],r={};return function(t,e){if(t)for(var n=Object.getPrototypeOf(t),i=Node.prototype;null!==n&&n!==i;){var r=Object.getOwnPropertyDescriptors(n);for(var o in r)if(!o.startsWith("__")&&!o.startsWith("on")){var a=t[o];Xb(a)&&(e[o]=a)}n=Object.getPrototypeOf(n)}}(this.nativeElement,r),function(t,e,n,i){var r=e.propertyBindings;if(null!==r)for(var o=0;o<r.length;o++){var a=r[o],s=i[a].split("�"),c=s[0];if(s.length>1){for(var l=s[1],u=1;u<s.length-1;u++)l+=ii(n[a+u-1])+s[u+1];t[c]=l}else t[c]=n[a]}}(r,i,e,n),r},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"attributes",{get:function(){var t={},e=this.nativeElement;if(!e)return t;var n=Qd(e,!1);if(null==n)return{};var i=n.lView[1].data[n.nodeIndex].attrs,r=[];if(i)for(var o=0;o<i.length;){var a=i[o];if("string"!=typeof a)break;var s=i[o+1];t[a]=s,r.push(a.toLowerCase()),o+=2}var c=e.attributes;for(o=0;o<c.length;o++){var l=c[o],u=l.name.toLowerCase();-1===r.indexOf(u)&&(t[u]=l.value)}return t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"styles",{get:function(){return this.nativeElement&&this.nativeElement.style?this.nativeElement.style:{}},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"classes",{get:function(){var t={},e=this.nativeElement.className;return(e&&"string"!=typeof e?e.baseVal.split(" "):e.split(" ")).forEach(function(e){return t[e]=!0}),t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"childNodes",{get:function(){for(var t=this.nativeNode.childNodes,e=[],n=0;n<t.length;n++){var i=t[n];e.push(ew(i))}return e},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"children",{get:function(){var t=this.nativeElement;if(!t)return[];for(var e=t.children,n=[],i=0;i<e.length;i++){var r=e[i];n.push(ew(r))}return n},enumerable:!0,configurable:!0}),e.prototype.query=function(t){return this.queryAll(t)[0]||null},e.prototype.queryAll=function(t){var e=[];return Yb(this,t,e,!0),e},e.prototype.queryAllNodes=function(t){var e=[];return Yb(this,t,e,!1),e},e.prototype.triggerEventHandler=function(t,e){var n=this.nativeNode,i=[];this.listeners.forEach(function(r){if(r.name===t){var o=r.callback;o.call(n,e),i.push(o)}}),"function"==typeof n.eventListeners&&n.eventListeners(t).forEach(function(t){if(-1!==t.toString().indexOf("__ngUnwrap__")){var r=t("__ngUnwrap__");return-1===i.indexOf(r)&&r.call(n,e)}})},e}(qb);function Xb(t){return"string"==typeof t||"boolean"==typeof t||"number"==typeof t||null===t}function Yb(t,e,n,i){var r=Qd(t.nativeNode,!1);null!==r?Zb(r.lView[1].data[r.nodeIndex],r.lView,e,n,i,t.nativeNode):$b(t.nativeNode,e,n,i)}function Zb(t,e,n,r,o,a){var s,c,l=Ge(t,e);if(3===t.type||4===t.type){Qb(l,n,r,o,a),xe(t)?(p=qe(t.index,e))&&p[1].firstChild&&Zb(p[1].firstChild,p,n,r,o,a):(t.child&&Zb(t.child,e,n,r,o,a),l&&$b(l,n,r,o));var u=e[t.index];we(u)&&Jb(u,n,r,o,a)}else if(0===t.type){var d=e[t.index];Qb(d[7],n,r,o,a),Jb(d,n,r,o,a)}else if(1===t.type){var p,h=(p=e[16])[6].projection[t.projection];if(Array.isArray(h))try{for(var f=Object(i.j)(h),g=f.next();!g.done;g=f.next())Qb(g.value,n,r,o,a)}catch(t){s={error:t}}finally{try{g&&!g.done&&(c=f.return)&&c.call(f)}finally{if(s)throw s.error}}else if(h){var m,v=p[3];Zb(m=v[1].data[h.index],v,n,r,o,a)}}else t.child&&Zb(t.child,e,n,r,o,a);a!==l&&(m=4&t.flags?t.projectionNext:t.next)&&Zb(m,e,n,r,o,a)}function Jb(t,e,n,i,r){for(var o=10;o<t.length;o++){var a=t[o];Zb(a[1].node,a,e,n,i,r)}}function Qb(t,e,n,i,r){if(r!==t){var o=nw(t);if(!o)return;(i&&o instanceof Kb&&e(o)&&-1===n.indexOf(o)||!i&&e(o)&&-1===n.indexOf(o))&&n.push(o)}}function $b(t,e,n,i){for(var r=t.childNodes,o=r.length,a=0;a<o;a++){var s=r[a],c=nw(s);c&&((i&&c instanceof Kb&&e(c)&&-1===n.indexOf(c)||!i&&e(c)&&-1===n.indexOf(c))&&n.push(c),$b(s,e,n,i))}}var tw=new Map;function ew(t){return t instanceof Node?(t.hasOwnProperty("__ng_debug__")||(t.__ng_debug__=t.nodeType==Node.ELEMENT_NODE?new Kb(t):new qb(t)),t.__ng_debug__):null}var nw=ew;function iw(t){return function(t){return tw.get(t)||null}(t)}var rw=function(t){return null};function ow(t){tw.set(t.nativeNode,t)}var aw=qb,sw=Kb,cw=xb(null,"core",[{provide:Iy,useValue:"unknown"},{provide:Ab,deps:[Ec]},{provide:ub,deps:[]},{provide:Ry,deps:[]}]);
  1097. /**
  1098. * @license
  1099. * Copyright Google Inc. All Rights Reserved.
  1100. *
  1101. * Use of this source code is governed by an MIT-style license that can be
  1102. * found in the LICENSE file at https://angular.io/license
  1103. */function lw(){return hh}function uw(){return fh}function dw(t){return t=t||("undefined"!=typeof ngI18nClosureMode&&ngI18nClosureMode&&"undefined"!=typeof goog&&"en"!==goog.LOCALE?goog.LOCALE:Uy&&"undefined"!=typeof $localize&&$localize.locale||Pg),Uy&&Sm(t),t}var pw=Ig,hw=[{provide:Ob,useClass:Ob,deps:[eb,Ry,Ec,ki,Up,Ey]},{provide:mg,deps:[eb],useFactory:fw},{provide:Ey,useClass:Ey,deps:[[new w,My]]},{provide:Zy,useClass:Zy,deps:[]},Ty,{provide:lh,useFactory:lw,deps:[]},{provide:uh,useFactory:uw,deps:[]},{provide:Ly,useFactory:dw,deps:[[new b(Ly),new w,new x]]},{provide:Ny,useValue:pw}];function fw(t){var e=[];return t.onStable.subscribe(function(){for(;e.length;)e.pop()()}),function(t){e.push(t)}}var gw,mw=function(){function t(t){}return(t=Object(i.b)([Object(i.d)("design:paramtypes",[Ob])],t)).ɵmod=le({type:t}),t.ɵinj=P({factory:function(e){return new(e||t)(vt(Ob))},providers:hw}),t}();
  1104. /**
  1105. * @license
  1106. * Copyright Google Inc. All Rights Reserved.
  1107. *
  1108. * Use of this source code is governed by an MIT-style license that can be
  1109. * found in the LICENSE file at https://angular.io/license
  1110. */function vw(t,e,n,i,r,o){t|=1;var a=Qh(e),s=a.matchedQueries,c=a.references;return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,flags:t,checkIndex:-1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:s,matchedQueryIds:a.matchedQueryIds,references:c,ngContentIndex:n,childCount:i,bindings:[],bindingFlags:0,outputs:[],element:{ns:null,name:null,attrs:null,template:o?nf(o):null,componentProvider:null,componentView:null,componentRendererType:null,publicProviders:null,allProviders:null,handleEvent:r||Dh},provider:null,text:null,query:null,ngContent:null}}function yw(t,e,n,r,o,a,s,c,l,u,d,p){var h;void 0===s&&(s=[]),u||(u=Dh);var f=Qh(n),g=f.matchedQueries,m=f.references,v=f.matchedQueryIds,y=null,b=null;a&&(y=(h=Object(i.f)(uf(a),2))[0],b=h[1]),c=c||[];for(var w=[],S=0;S<c.length;S++){var x=Object(i.f)(c[S],3),M=x[0],E=x[1],C=x[2],A=Object(i.f)(uf(E),2),T=A[0],O=A[1],_=void 0,P=void 0;switch(15&M){case 4:P=C;break;case 1:case 8:_=C}w[S]={flags:M,ns:T,name:O,nonMinifiedName:O,securityContext:_,suffix:P}}l=l||[];var I=[];for(S=0;S<l.length;S++){var k=Object(i.f)(l[S],2),D=k[0],R=k[1];I[S]={type:0,target:D,eventName:R,propName:null}}var L=(s=s||[]).map(function(t){var e=Object(i.f)(t,2),n=e[0],r=e[1],o=Object(i.f)(uf(n),2);return[o[0],o[1],r]});return p=function(t){if(t&&"$$undefined"===t.id){var e=null!=t.encapsulation&&t.encapsulation!==Tt.None||t.styles.length||Object.keys(t.data).length;t.id=e?"c"+Vh++:"$$empty"}return t&&"$$empty"===t.id&&(t=null),t||null}(p),d&&(e|=33554432),{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:e|=1,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:g,matchedQueryIds:v,references:m,ngContentIndex:r,childCount:o,bindings:w,bindingFlags:df(w),outputs:I,element:{ns:y,name:b,attrs:L,template:null,componentProvider:null,componentView:d||null,componentRendererType:p,publicProviders:null,allProviders:null,handleEvent:u||Dh},provider:null,text:null,query:null,ngContent:null}}function bw(t,e,n){var r,o=n.element,a=t.root.selectorOrNode,s=t.renderer;if(t.parent||!a){r=o.name?s.createElement(o.name,o.ns):s.createComment("");var c=tf(t,e,n);c&&s.appendChild(c,r)}else{var l=!!o.componentRendererType&&o.componentRendererType.encapsulation===Tt.ShadowDom;r=s.selectRootElement(a,l)}if(o.attrs)for(var u=0;u<o.attrs.length;u++){var d=Object(i.f)(o.attrs[u],3),p=d[0],h=d[1],f=d[2];s.setAttribute(r,h,f,p)}return r}function ww(t,e,n,i){for(var r=0;r<n.outputs.length;r++){var o=n.outputs[r],a=Sw(t,n.nodeIndex,Xh(o.target,o.eventName)),s=o.target,c=t;"component"===o.target&&(s=null,c=e);var l=c.renderer.listen(s||i,o.eventName,a);t.disposables[n.outputIndex+r]=l}}function Sw(t,e,n){return function(i){return Hh(t,e,n,i)}}function xw(t,e,n,i){if(!Uh(t,e,n,i))return!1;var r=e.bindings[n],o=Th(t,e.nodeIndex),a=o.renderElement,s=r.name;switch(15&r.flags){case 1:!function(t,e,n,i,r,o){var a=e.securityContext,s=a?t.root.sanitizer.sanitize(a,o):o;s=null!=s?s.toString():null;var c=t.renderer;null!=o?c.setAttribute(n,r,s,i):c.removeAttribute(n,r,i)}(t,r,a,r.ns,s,i);break;case 2:!function(t,e,n,i){var r=t.renderer;i?r.addClass(e,n):r.removeClass(e,n)}(t,a,s,i);break;case 4:!function(t,e,n,i,r){var o=t.root.sanitizer.sanitize(sr.STYLE,r);if(null!=o){o=o.toString();var a=e.suffix;null!=a&&(o+=a)}else o=null;var s=t.renderer;null!=o?s.setStyle(n,i,o):s.removeStyle(n,i)}(t,r,a,s,i);break;case 8:!function(t,e,n,i,r){var o=e.securityContext,a=o?t.root.sanitizer.sanitize(o,r):r;t.renderer.setProperty(n,i,a)}
  1111. /**
  1112. * @license
  1113. * Copyright Google Inc. All Rights Reserved.
  1114. *
  1115. * Use of this source code is governed by an MIT-style license that can be
  1116. * found in the LICENSE file at https://angular.io/license
  1117. */(33554432&e.flags&&32&r.flags?o.componentView:t,r,a,s,i)}return!0}function Mw(t,e,n){var i=[];for(var r in n){var o=n[r];i.push({propName:r,bindingType:o})}return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:-1,flags:t,childFlags:0,directChildFlags:0,childMatchedQueries:0,ngContentIndex:-1,matchedQueries:{},matchedQueryIds:0,references:{},childCount:0,bindings:[],bindingFlags:0,outputs:[],element:null,provider:null,text:null,query:{id:e,filterId:Jh(e),bindings:i},ngContent:null}}function Ew(t){for(var e=t.def.nodeMatchedQueries;t.parent&&Zh(t);){var n=t.parentNodeDef;t=t.parent;for(var i=n.nodeIndex+n.childCount,r=0;r<=i;r++)67108864&(o=t.def.nodes[r]).flags&&536870912&o.flags&&(o.query.filterId&e)===o.query.filterId&&Ph(t,r).setDirty(),!(1&o.flags&&r+o.childCount<n.nodeIndex)&&67108864&o.childFlags&&536870912&o.childFlags||(r+=o.childCount)}if(134217728&t.def.nodeFlags)for(r=0;r<t.def.nodes.length;r++){var o;134217728&(o=t.def.nodes[r]).flags&&536870912&o.flags&&Ph(t,r).setDirty(),r+=o.childCount}}function Cw(t,e){var n=Ph(t,e.nodeIndex);if(n.dirty){var i,r=void 0;if(67108864&e.flags){var o=e.parent.parent;r=Aw(t,o.nodeIndex,o.nodeIndex+o.childCount,e.query,[]),i=Oh(t,e.parent.nodeIndex).instance}else 134217728&e.flags&&(r=Aw(t,0,t.def.nodes.length-1,e.query,[]),i=t.component);n.reset(r);for(var a=e.query.bindings,s=!1,c=0;c<a.length;c++){var l=a[c],u=void 0;switch(l.bindingType){case 0:u=n.first;break;case 1:u=n,s=!0}i[l.propName]=u}s&&n.notifyOnChanges()}}function Aw(t,e,n,i,r){for(var o=e;o<=n;o++){var a=t.def.nodes[o],s=a.matchedQueries[i.id];if(null!=s&&r.push(Tw(t,a,s)),1&a.flags&&a.element.template&&(a.element.template.nodeMatchedQueries&i.filterId)===i.filterId){var c=Th(t,o);if((a.childMatchedQueries&i.filterId)===i.filterId&&(Aw(t,o+1,o+a.childCount,i,r),o+=a.childCount),16777216&a.flags)for(var l=c.viewContainer._embeddedViews,u=0;u<l.length;u++){var d=l[u],p=Wh(d);p&&p===c&&Aw(d,0,d.def.nodes.length-1,i,r)}var h=c.template._projectedViews;if(h)for(u=0;u<h.length;u++){var f=h[u];Aw(f,0,f.def.nodes.length-1,i,r)}}(a.childMatchedQueries&i.filterId)!==i.filterId&&(o+=a.childCount)}return r}function Tw(t,e,n){if(null!=n)switch(n){case 1:return Th(t,e.nodeIndex).renderElement;case 0:return new Gp(Th(t,e.nodeIndex).renderElement);case 2:return Th(t,e.nodeIndex).template;case 3:return Th(t,e.nodeIndex).viewContainer;case 4:return Oh(t,e.nodeIndex).instance}}
  1118. /**
  1119. * @license
  1120. * Copyright Google Inc. All Rights Reserved.
  1121. *
  1122. * Use of this source code is governed by an MIT-style license that can be
  1123. * found in the LICENSE file at https://angular.io/license
  1124. */function Ow(t,e){return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:-1,flags:8,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:{},matchedQueryIds:0,references:{},ngContentIndex:t,childCount:0,bindings:[],bindingFlags:0,outputs:[],element:null,provider:null,text:null,query:null,ngContent:{index:e}}}function _w(t,e,n){var i=tf(t,e,n);i&&af(t,n.ngContent.index,1,i,null,void 0)}
  1125. /**
  1126. * @license
  1127. * Copyright Google Inc. All Rights Reserved.
  1128. *
  1129. * Use of this source code is governed by an MIT-style license that can be
  1130. * found in the LICENSE file at https://angular.io/license
  1131. */function Pw(t,e){return Dw(128,t,Zt(e+1))}function Iw(t,e){return Dw(32,t,Zt(e))}function kw(t,e){for(var n=Object.keys(e),i=n.length,r=[],o=0;o<i;o++){var a=n[o];e[a],r.push(a)}return Dw(64,t,r)}function Dw(t,e,n){for(var i=[],r=0;r<n.length;r++){var o=n[r];i.push({flags:8,name:o,ns:null,nonMinifiedName:o,securityContext:null,suffix:null})}return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:e,flags:t,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:{},matchedQueryIds:0,references:{},ngContentIndex:-1,childCount:0,bindings:i,bindingFlags:df(i),outputs:[],element:null,provider:null,text:null,query:null,ngContent:null}}
  1132. /**
  1133. * @license
  1134. * Copyright Google Inc. All Rights Reserved.
  1135. *
  1136. * Use of this source code is governed by an MIT-style license that can be
  1137. * found in the LICENSE file at https://angular.io/license
  1138. */function Rw(t,e,n){for(var i=[],r=1;r<n.length;r++)i[r-1]={flags:8,name:null,ns:null,nonMinifiedName:null,securityContext:null,suffix:n[r]};return{nodeIndex:-1,parent:null,renderParent:null,bindingIndex:-1,outputIndex:-1,checkIndex:t,flags:2,childFlags:0,directChildFlags:0,childMatchedQueries:0,matchedQueries:{},matchedQueryIds:0,references:{},ngContentIndex:e,childCount:0,bindings:i,bindingFlags:8,outputs:[],element:null,provider:null,text:{prefix:n[0]},query:null,ngContent:null}}function Lw(t,e,n){var i,r=t.renderer;i=r.createText(n.text.prefix);var o=tf(t,e,n);return o&&r.appendChild(o,i),{renderText:i}}function Nw(t,e){return(null!=t?t.toString():"")+e.suffix}
  1139. /**
  1140. * @license
  1141. * Copyright Google Inc. All Rights Reserved.
  1142. *
  1143. * Use of this source code is governed by an MIT-style license that can be
  1144. * found in the LICENSE file at https://angular.io/license
  1145. */function jw(t,e,n,i){for(var r=0,o=0,a=0,s=0,c=0,l=null,u=null,d=!1,p=!1,h=null,f=0;f<e.length;f++){var g=e[f];if(g.nodeIndex=f,g.parent=l,g.bindingIndex=r,g.outputIndex=o,g.renderParent=u,a|=g.flags,c|=g.matchedQueryIds,g.element){var m=g.element;m.publicProviders=l?l.element.publicProviders:Object.create(null),m.allProviders=m.publicProviders,d=!1,p=!1,g.element.template&&(c|=g.element.template.nodeMatchedQueries)}if(Fw(l,g,e.length),r+=g.bindings.length,o+=g.outputs.length,!u&&3&g.flags&&(h=g),20224&g.flags){d||(d=!0,l.element.publicProviders=Object.create(l.element.publicProviders),l.element.allProviders=l.element.publicProviders);var v=0!=(8192&g.flags),y=0!=(32768&g.flags);!v||y?l.element.publicProviders[Lh(g.provider.token)]=g:(p||(p=!0,l.element.allProviders=Object.create(l.element.publicProviders)),l.element.allProviders[Lh(g.provider.token)]=g),y&&(l.element.componentProvider=g)}if(l?(l.childFlags|=g.flags,l.directChildFlags|=g.flags,l.childMatchedQueries|=g.matchedQueryIds,g.element&&g.element.template&&(l.childMatchedQueries|=g.element.template.nodeMatchedQueries)):s|=g.flags,g.childCount>0)l=g,Vw(g)||(u=g);else for(;l&&f===l.nodeIndex+l.childCount;){var b=l.parent;b&&(b.childFlags|=l.childFlags,b.childMatchedQueries|=l.childMatchedQueries),u=(l=b)&&Vw(l)?l.renderParent:l}}return{factory:null,nodeFlags:a,rootNodeFlags:s,nodeMatchedQueries:c,flags:t,nodes:e,updateDirectives:n||Dh,updateRenderer:i||Dh,handleEvent:function(t,n,i,r){return e[n].element.handleEvent(t,i,r)},bindingCount:r,outputCount:o,lastRenderRootNode:h}}function Vw(t){return 0!=(1&t.flags)&&null===t.element.name}function Fw(t,e,n){var i=e.element&&e.element.template;if(i){if(!i.lastRenderRootNode)throw new Error("Illegal State: Embedded templates without nodes are not allowed!");if(i.lastRenderRootNode&&16777216&i.lastRenderRootNode.flags)throw new Error("Illegal State: Last root node of a template can't have embedded views, at index "+e.nodeIndex+"!")}if(20224&e.flags&&0==(1&(t?t.flags:0)))throw new Error("Illegal State: StaticProvider/Directive nodes need to be children of elements or anchors, at index "+e.nodeIndex+"!");if(e.query){if(67108864&e.flags&&(!t||0==(16384&t.flags)))throw new Error("Illegal State: Content Query nodes need to be children of directives, at index "+e.nodeIndex+"!");if(134217728&e.flags&&t)throw new Error("Illegal State: View Query nodes have to be top level nodes, at index "+e.nodeIndex+"!")}if(e.childCount){var r=t?t.nodeIndex+t.childCount:n-1;if(e.nodeIndex<=r&&e.nodeIndex+e.childCount>r)throw new Error("Illegal State: childCount of node leads outside of parent, at index "+e.nodeIndex+"!")}}function Uw(t,e,n,i){var r=Gw(t.root,t.renderer,t,e,n);return Hw(r,t.component,i),Ww(r),r}function Bw(t,e,n){var i=Gw(t,t.renderer,null,null,e);return Hw(i,n,n),Ww(i),i}function zw(t,e,n,i){var r,o=e.element.componentRendererType;return r=o?t.root.rendererFactory.createRenderer(i,o):t.root.renderer,Gw(t.root,r,t,e.element.componentProvider,n)}function Gw(t,e,n,i,r){var o=new Array(r.nodes.length),a=r.outputCount?new Array(r.outputCount):null;return{def:r,parent:n,viewContainerParent:null,parentNodeDef:i,context:null,component:null,nodes:o,state:13,root:t,renderer:e,oldValues:new Array(r.bindingCount),disposables:a,initIndex:-1}}function Hw(t,e,n){t.component=e,t.context=n}function Ww(t){var e;if(Yh(t)){var n=t.parentNodeDef;e=Th(t.parent,n.parent.nodeIndex).renderElement}for(var i=t.def,r=t.nodes,o=0;o<i.nodes.length;o++){var a=i.nodes[o];kh.setCurrentNode(t,o);var s=void 0;switch(201347067&a.flags){case 1:var c=bw(t,e,a),l=void 0;if(33554432&a.flags){var u=nf(a.element.componentView);l=kh.createComponentView(t,a,u,c)}ww(t,l,a,c),s={renderElement:c,componentView:l,viewContainer:null,template:a.element.template?jf(t,a):void 0},16777216&a.flags&&(s.viewContainer=Df(t,a,s));break;case 2:s=Lw(t,e,a);break;case 512:case 1024:case 2048:case 256:(s=r[o])||4096&a.flags||(s={instance:eg(t,a)});break;case 16:s={instance:ng(t,a)};break;case 16384:(s=r[o])||(s={instance:ig(t,a)}),32768&a.flags&&Hw(Th(t,a.parent.nodeIndex).componentView,s.instance,s.instance);break;case 32:case 64:case 128:s={value:void 0};break;case 67108864:case 134217728:s=new nv;break;case 8:_w(t,e,a),s=void 0}r[o]=s}$w(t,gw.CreateViewNodes),iS(t,201326592,268435456,0)}function qw(t){Yw(t),kh.updateDirectives(t,1),tS(t,gw.CheckNoChanges),kh.updateRenderer(t,1),$w(t,gw.CheckNoChanges),t.state&=-97}function Kw(t){1&t.state?(t.state&=-2,t.state|=2):t.state&=-3,Eh(t,0,256),Yw(t),kh.updateDirectives(t,0),tS(t,gw.CheckAndUpdate),iS(t,67108864,536870912,0);var e=Eh(t,256,512);dg(t,2097152|(e?1048576:0)),kh.updateRenderer(t,0),$w(t,gw.CheckAndUpdate),iS(t,134217728,536870912,0),dg(t,8388608|((e=Eh(t,512,768))?4194304:0)),2&t.def.flags&&(t.state&=-9),t.state&=-97,Eh(t,768,1024)}function Xw(t,e,n,r,o,a,s,c,l,u,d,p,h){return 0===n?function(t,e,n,i,r,o,a,s,c,l,u,d){switch(201347067&e.flags){case 1:return function(t,e,n,i,r,o,a,s,c,l,u,d){var p=e.bindings.length,h=!1;return p>0&&xw(t,e,0,n)&&(h=!0),p>1&&xw(t,e,1,i)&&(h=!0),p>2&&xw(t,e,2,r)&&(h=!0),p>3&&xw(t,e,3,o)&&(h=!0),p>4&&xw(t,e,4,a)&&(h=!0),p>5&&xw(t,e,5,s)&&(h=!0),p>6&&xw(t,e,6,c)&&(h=!0),p>7&&xw(t,e,7,l)&&(h=!0),p>8&&xw(t,e,8,u)&&(h=!0),p>9&&xw(t,e,9,d)&&(h=!0),h}(t,e,n,i,r,o,a,s,c,l,u,d);case 2:return function(t,e,n,i,r,o,a,s,c,l,u,d){var p=!1,h=e.bindings,f=h.length;if(f>0&&Uh(t,e,0,n)&&(p=!0),f>1&&Uh(t,e,1,i)&&(p=!0),f>2&&Uh(t,e,2,r)&&(p=!0),f>3&&Uh(t,e,3,o)&&(p=!0),f>4&&Uh(t,e,4,a)&&(p=!0),f>5&&Uh(t,e,5,s)&&(p=!0),f>6&&Uh(t,e,6,c)&&(p=!0),f>7&&Uh(t,e,7,l)&&(p=!0),f>8&&Uh(t,e,8,u)&&(p=!0),f>9&&Uh(t,e,9,d)&&(p=!0),p){var g=e.text.prefix;f>0&&(g+=Nw(n,h[0])),f>1&&(g+=Nw(i,h[1])),f>2&&(g+=Nw(r,h[2])),f>3&&(g+=Nw(o,h[3])),f>4&&(g+=Nw(a,h[4])),f>5&&(g+=Nw(s,h[5])),f>6&&(g+=Nw(c,h[6])),f>7&&(g+=Nw(l,h[7])),f>8&&(g+=Nw(u,h[8])),f>9&&(g+=Nw(d,h[9]));var m=Ah(t,e.nodeIndex).renderText;t.renderer.setValue(m,g)}return p}(t,e,n,i,r,o,a,s,c,l,u,d);case 16384:return function(t,e,n,i,r,o,a,s,c,l,u,d){var p=Oh(t,e.nodeIndex),h=p.instance,f=!1,g=void 0,m=e.bindings.length;return m>0&&Fh(t,e,0,n)&&(f=!0,g=ug(t,p,e,0,n,g)),m>1&&Fh(t,e,1,i)&&(f=!0,g=ug(t,p,e,1,i,g)),m>2&&Fh(t,e,2,r)&&(f=!0,g=ug(t,p,e,2,r,g)),m>3&&Fh(t,e,3,o)&&(f=!0,g=ug(t,p,e,3,o,g)),m>4&&Fh(t,e,4,a)&&(f=!0,g=ug(t,p,e,4,a,g)),m>5&&Fh(t,e,5,s)&&(f=!0,g=ug(t,p,e,5,s,g)),m>6&&Fh(t,e,6,c)&&(f=!0,g=ug(t,p,e,6,c,g)),m>7&&Fh(t,e,7,l)&&(f=!0,g=ug(t,p,e,7,l,g)),m>8&&Fh(t,e,8,u)&&(f=!0,g=ug(t,p,e,8,u,g)),m>9&&Fh(t,e,9,d)&&(f=!0,g=ug(t,p,e,9,d,g)),g&&h.ngOnChanges(g),65536&e.flags&&Ch(t,256,e.nodeIndex)&&h.ngOnInit(),262144&e.flags&&h.ngDoCheck(),f}(t,e,n,i,r,o,a,s,c,l,u,d);case 32:case 64:case 128:return function(t,e,n,i,r,o,a,s,c,l,u,d){var p=e.bindings,h=!1,f=p.length;if(f>0&&Uh(t,e,0,n)&&(h=!0),f>1&&Uh(t,e,1,i)&&(h=!0),f>2&&Uh(t,e,2,r)&&(h=!0),f>3&&Uh(t,e,3,o)&&(h=!0),f>4&&Uh(t,e,4,a)&&(h=!0),f>5&&Uh(t,e,5,s)&&(h=!0),f>6&&Uh(t,e,6,c)&&(h=!0),f>7&&Uh(t,e,7,l)&&(h=!0),f>8&&Uh(t,e,8,u)&&(h=!0),f>9&&Uh(t,e,9,d)&&(h=!0),h){var g=_h(t,e.nodeIndex),m=void 0;switch(201347067&e.flags){case 32:m=[],f>0&&m.push(n),f>1&&m.push(i),f>2&&m.push(r),f>3&&m.push(o),f>4&&m.push(a),f>5&&m.push(s),f>6&&m.push(c),f>7&&m.push(l),f>8&&m.push(u),f>9&&m.push(d);break;case 64:m={},f>0&&(m[p[0].name]=n),f>1&&(m[p[1].name]=i),f>2&&(m[p[2].name]=r),f>3&&(m[p[3].name]=o),f>4&&(m[p[4].name]=a),f>5&&(m[p[5].name]=s),f>6&&(m[p[6].name]=c),f>7&&(m[p[7].name]=l),f>8&&(m[p[8].name]=u),f>9&&(m[p[9].name]=d);break;case 128:var v=n;switch(f){case 1:m=v.transform(n);break;case 2:m=v.transform(i);break;case 3:m=v.transform(i,r);break;case 4:m=v.transform(i,r,o);break;case 5:m=v.transform(i,r,o,a);break;case 6:m=v.transform(i,r,o,a,s);break;case 7:m=v.transform(i,r,o,a,s,c);break;case 8:m=v.transform(i,r,o,a,s,c,l);break;case 9:m=v.transform(i,r,o,a,s,c,l,u);break;case 10:m=v.transform(i,r,o,a,s,c,l,u,d)}}g.value=m}return h}(t,e,n,i,r,o,a,s,c,l,u,d);default:throw"unreachable"}}(t,e,r,o,a,s,c,l,u,d,p,h):function(t,e,n){switch(201347067&e.flags){case 1:return function(t,e,n){for(var i=!1,r=0;r<n.length;r++)xw(t,e,r,n[r])&&(i=!0);return i}(t,e,n);case 2:return function(t,e,n){for(var i=e.bindings,r=!1,o=0;o<n.length;o++)Uh(t,e,o,n[o])&&(r=!0);if(r){var a="";for(o=0;o<n.length;o++)a+=Nw(n[o],i[o]);a=e.text.prefix+a;var s=Ah(t,e.nodeIndex).renderText;t.renderer.setValue(s,a)}return r}(t,e,n);case 16384:return function(t,e,n){for(var i=Oh(t,e.nodeIndex),r=i.instance,o=!1,a=void 0,s=0;s<n.length;s++)Fh(t,e,s,n[s])&&(o=!0,a=ug(t,i,e,s,n[s],a));return a&&r.ngOnChanges(a),65536&e.flags&&Ch(t,256,e.nodeIndex)&&r.ngOnInit(),262144&e.flags&&r.ngDoCheck(),o}(t,e,n);case 32:case 64:case 128:return function(t,e,n){for(var r=e.bindings,o=!1,a=0;a<n.length;a++)Uh(t,e,a,n[a])&&(o=!0);if(o){var s=_h(t,e.nodeIndex),c=void 0;switch(201347067&e.flags){case 32:c=n;break;case 64:for(c={},a=0;a<n.length;a++)c[r[a].name]=n[a];break;case 128:var l=n[0],u=n.slice(1);c=l.transform.apply(l,Object(i.h)(u))}s.value=c}return o}(t,e,n);default:throw"unreachable"}}(t,e,r)}function Yw(t){var e=t.def;if(4&e.nodeFlags)for(var n=0;n<e.nodes.length;n++){var i=e.nodes[n];if(4&i.flags){var r=Th(t,n).template._projectedViews;if(r)for(var o=0;o<r.length;o++){var a=r[o];a.state|=32,Gh(a,t)}}else 0==(4&i.childFlags)&&(n+=i.childCount)}}function Zw(t,e,n,i,r,o,a,s,c,l,u,d,p){return 0===n?function(t,e,n,i,r,o,a,s,c,l,u,d){var p=e.bindings.length;p>0&&Bh(t,e,0,n),p>1&&Bh(t,e,1,i),p>2&&Bh(t,e,2,r),p>3&&Bh(t,e,3,o),p>4&&Bh(t,e,4,a),p>5&&Bh(t,e,5,s),p>6&&Bh(t,e,6,c),p>7&&Bh(t,e,7,l),p>8&&Bh(t,e,8,u),p>9&&Bh(t,e,9,d)}(t,e,i,r,o,a,s,c,l,u,d,p):function(t,e,n){for(var i=0;i<n.length;i++)Bh(t,e,i,n[i])}(t,e,i),!1}function Jw(t,e){if(Ph(t,e.nodeIndex).dirty)throw Sh(kh.createDebugContext(t,e.nodeIndex),"Query "+e.query.id+" not dirty","Query "+e.query.id+" dirty",0!=(1&t.state))}function Qw(t){if(!(128&t.state)){if(tS(t,gw.Destroy),$w(t,gw.Destroy),dg(t,131072),t.disposables)for(var e=0;e<t.disposables.length;e++)t.disposables[e]();!function(t){if(16&t.state){var e=Wh(t);if(e){var n=e.template._projectedViews;n&&(Yt(n,n.indexOf(t)),kh.dirtyParentQueries(t))}}}(t),t.renderer.destroyNode&&function(t){for(var e=t.def.nodes.length,n=0;n<e;n++){var i=t.def.nodes[n];1&i.flags?t.renderer.destroyNode(Th(t,n).renderElement):2&i.flags?t.renderer.destroyNode(Ah(t,n).renderText):(67108864&i.flags||134217728&i.flags)&&Ph(t,n).destroy()}}(t),Yh(t)&&t.renderer.destroy(),t.state|=128}}function $w(t,e){var n=t.def;if(33554432&n.nodeFlags)for(var i=0;i<n.nodes.length;i++){var r=n.nodes[i];33554432&r.flags?eS(Th(t,i).componentView,e):0==(33554432&r.childFlags)&&(i+=r.childCount)}}function tS(t,e){var n=t.def;if(16777216&n.nodeFlags)for(var i=0;i<n.nodes.length;i++){var r=n.nodes[i];if(16777216&r.flags)for(var o=Th(t,i).viewContainer._embeddedViews,a=0;a<o.length;a++)eS(o[a],e);else 0==(16777216&r.childFlags)&&(i+=r.childCount)}}function eS(t,e){var n=t.state;switch(e){case gw.CheckNoChanges:0==(128&n)&&(12==(12&n)?qw(t):64&n&&nS(t,gw.CheckNoChangesProjectedViews));break;case gw.CheckNoChangesProjectedViews:0==(128&n)&&(32&n?qw(t):64&n&&nS(t,e));break;case gw.CheckAndUpdate:0==(128&n)&&(12==(12&n)?Kw(t):64&n&&nS(t,gw.CheckAndUpdateProjectedViews));break;case gw.CheckAndUpdateProjectedViews:0==(128&n)&&(32&n?Kw(t):64&n&&nS(t,e));break;case gw.Destroy:Qw(t);break;case gw.CreateViewNodes:Ww(t)}}function nS(t,e){tS(t,e),$w(t,e)}function iS(t,e,n,i){if(t.def.nodeFlags&e&&t.def.nodeFlags&n)for(var r=t.def.nodes.length,o=0;o<r;o++){var a=t.def.nodes[o];if(a.flags&e&&a.flags&n)switch(kh.setCurrentNode(t,a.nodeIndex),i){case 0:Cw(t,a);break;case 1:Jw(t,a)}a.childFlags&e&&a.childFlags&n||(o+=a.childCount)}}
  1146. /**
  1147. * @license
  1148. * Copyright Google Inc. All Rights Reserved.
  1149. *
  1150. * Use of this source code is governed by an MIT-style license that can be
  1151. * found in the LICENSE file at https://angular.io/license
  1152. */!function(t){t[t.CreateViewNodes=0]="CreateViewNodes",t[t.CheckNoChanges=1]="CheckNoChanges",t[t.CheckNoChangesProjectedViews=2]="CheckNoChangesProjectedViews",t[t.CheckAndUpdate=3]="CheckAndUpdate",t[t.CheckAndUpdateProjectedViews=4]="CheckAndUpdateProjectedViews",t[t.Destroy=5]="Destroy"}(gw||(gw={}));var rS=!1;function oS(){if(!rS){rS=!0;var t=Ji()?{setCurrentNode:OS,createRootView:sS,createEmbeddedView:lS,createComponentView:uS,createNgModuleRef:dS,overrideProvider:bS,overrideComponentView:wS,clearOverrides:SS,checkAndUpdateView:CS,checkNoChangesView:AS,destroyView:TS,createDebugContext:function(t,e){return new NS(t,e)},handleEvent:_S,updateDirectives:PS,updateRenderer:IS}:{setCurrentNode:function(){},createRootView:aS,createEmbeddedView:Uw,createComponentView:zw,createNgModuleRef:zf,overrideProvider:Dh,overrideComponentView:Dh,clearOverrides:Dh,checkAndUpdateView:Kw,checkNoChangesView:qw,destroyView:Qw,createDebugContext:function(t,e){return new NS(t,e)},handleEvent:function(t,e,n,i){return t.def.handleEvent(t,e,n,i)},updateDirectives:function(t,e){return t.def.updateDirectives(0===e?MS:ES,t)},updateRenderer:function(t,e){return t.def.updateRenderer(0===e?MS:ES,t)}};kh.setCurrentNode=t.setCurrentNode,kh.createRootView=t.createRootView,kh.createEmbeddedView=t.createEmbeddedView,kh.createComponentView=t.createComponentView,kh.createNgModuleRef=t.createNgModuleRef,kh.overrideProvider=t.overrideProvider,kh.overrideComponentView=t.overrideComponentView,kh.clearOverrides=t.clearOverrides,kh.checkAndUpdateView=t.checkAndUpdateView,kh.checkNoChangesView=t.checkNoChangesView,kh.destroyView=t.destroyView,kh.resolveDep=cg,kh.createDebugContext=t.createDebugContext,kh.handleEvent=t.handleEvent,kh.updateDirectives=t.updateDirectives,kh.updateRenderer=t.updateRenderer,kh.dirtyParentQueries=Ew}}function aS(t,e,n,i,r,o){return Bw(cS(t,r,r.injector.get(qp),e,n),i,o)}function sS(t,e,n,i,r,o){var a=r.injector.get(qp),s=cS(t,r,new US(a),e,n),c=xS(i);return VS(pS.create,Bw,null,[s,c,o])}function cS(t,e,n,i,r){var o=e.injector.get(Zp),a=e.injector.get(ki);return{ngModule:e,injector:t,projectableNodes:i,selectorOrNode:r,sanitizer:o,rendererFactory:n,renderer:n.createRenderer(null,null),errorHandler:a}}function lS(t,e,n,i){var r=xS(n);return VS(pS.create,Uw,null,[t,e,r,i])}function uS(t,e,n,i){return n=yS.get(e.element.componentProvider.provider.token)||xS(n),VS(pS.create,zw,null,[t,e,n,i])}function dS(t,e,n,i){return zf(t,e,n,function(t){var e=function(t){var e=!1,n=!1;return 0===mS.size?{hasOverrides:e,hasDeprecatedOverrides:n}:(t.providers.forEach(function(t){var i=mS.get(t.token);3840&t.flags&&i&&(e=!0,n=n||i.deprecatedBehavior)}),t.modules.forEach(function(t){vS.forEach(function(i,r){I(r).providedIn===t&&(e=!0,n=n||i.deprecatedBehavior)})}),{hasOverrides:e,hasDeprecatedOverrides:n})}(t),n=e.hasOverrides,i=e.hasDeprecatedOverrides;return n?(function(t){for(var e=0;e<t.providers.length;e++){var n=t.providers[e];i&&(n.flags|=4096);var r=mS.get(n.token);r&&(n.flags=-3841&n.flags|r.flags,n.deps=$h(r.deps),n.value=r.value)}if(vS.size>0){var o=new Set(t.modules);vS.forEach(function(e,n){if(o.has(I(n).providedIn)){var r={token:n,flags:e.flags|(i?4096:0),deps:$h(e.deps),value:e.value,index:t.providers.length};t.providers.push(r),t.providersByKey[Lh(n)]=r}})}}(t=t.factory(function(){return Dh})),t):t}(i))}var pS,hS,fS,gS,mS=new Map,vS=new Map,yS=new Map;function bS(t){var e;mS.set(t.token,t),"function"==typeof t.token&&(e=I(t.token))&&"function"==typeof e.providedIn&&vS.set(t.token,t)}function wS(t,e){var n=nf(nf(Pf(e)).nodes[0].element.componentView);yS.set(t,n)}function SS(){mS.clear(),vS.clear(),yS.clear()}function xS(t){if(0===mS.size)return t;var e=function(t){for(var e=[],n=null,i=0;i<t.nodes.length;i++){var r=t.nodes[i];1&r.flags&&(n=r),n&&3840&r.flags&&mS.has(r.provider.token)&&(e.push(n.nodeIndex),n=null)}return e}(t);if(0===e.length)return t;t=t.factory(function(){return Dh});for(var n=0;n<e.length;n++)i(t,e[n]);return t;function i(t,e){for(var n=e+1;n<t.nodes.length;n++){var i=t.nodes[n];if(1&i.flags)return;if(3840&i.flags){var r=i.provider,o=mS.get(r.token);o&&(i.flags=-3841&i.flags|o.flags,r.deps=$h(o.deps),r.value=o.value)}}}}function MS(t,e,n,i,r,o,a,s,c,l,u,d,p){var h=t.def.nodes[e];return Xw(t,h,n,i,r,o,a,s,c,l,u,d,p),224&h.flags?_h(t,e).value:void 0}function ES(t,e,n,i,r,o,a,s,c,l,u,d,p){var h=t.def.nodes[e];return Zw(t,h,n,i,r,o,a,s,c,l,u,d,p),224&h.flags?_h(t,e).value:void 0}function CS(t){return VS(pS.detectChanges,Kw,null,[t])}function AS(t){return VS(pS.checkNoChanges,qw,null,[t])}function TS(t){return VS(pS.destroy,Qw,null,[t])}function OS(t,e){fS=t,gS=e}function _S(t,e,n,i){return OS(t,e),VS(pS.handleEvent,t.def.handleEvent,null,[t,e,n,i])}function PS(t,e){if(128&t.state)throw Mh(pS[hS]);return OS(t,RS(t,0)),t.def.updateDirectives(function(t,n,i){for(var r=[],o=3;o<arguments.length;o++)r[o-3]=arguments[o];var a=t.def.nodes[n];return 0===e?kS(t,a,i,r):DS(t,a,i,r),16384&a.flags&&OS(t,RS(t,n)),224&a.flags?_h(t,a.nodeIndex).value:void 0},t)}function IS(t,e){if(128&t.state)throw Mh(pS[hS]);return OS(t,LS(t,0)),t.def.updateRenderer(function(t,n,i){for(var r=[],o=3;o<arguments.length;o++)r[o-3]=arguments[o];var a=t.def.nodes[n];return 0===e?kS(t,a,i,r):DS(t,a,i,r),3&a.flags&&OS(t,LS(t,n)),224&a.flags?_h(t,a.nodeIndex).value:void 0},t)}function kS(t,e,n,r){if(Xw.apply(void 0,Object(i.h)([t,e,n],r))){var o=1===n?r[0]:r;if(16384&e.flags){for(var a={},s=0;s<e.bindings.length;s++){var c=e.bindings[s],l=o[s];8&c.flags&&(a[Br(c.nonMinifiedName)]=Gr(l))}var u=e.parent,d=Th(t,u.nodeIndex).renderElement;if(u.element.name)for(var p in a)null!=(l=a[p])?t.renderer.setAttribute(d,p,l):t.renderer.removeAttribute(d,p);else t.renderer.setValue(d,"bindings="+JSON.stringify(a,null,2))}}}function DS(t,e,n,r){Zw.apply(void 0,Object(i.h)([t,e,n],r))}function RS(t,e){for(var n=e;n<t.def.nodes.length;n++){var i=t.def.nodes[n];if(16384&i.flags&&i.bindings&&i.bindings.length)return n}return null}function LS(t,e){for(var n=e;n<t.def.nodes.length;n++){var i=t.def.nodes[n];if(3&i.flags&&i.bindings&&i.bindings.length)return n}return null}!function(t){t[t.create=0]="create",t[t.detectChanges=1]="detectChanges",t[t.checkNoChanges=2]="checkNoChanges",t[t.destroy=3]="destroy",t[t.handleEvent=4]="handleEvent"}(pS||(pS={}));var NS=function(){function t(t,e){this.view=t,this.nodeIndex=e,null==e&&(this.nodeIndex=e=0),this.nodeDef=t.def.nodes[e];for(var n=this.nodeDef,i=t;n&&0==(1&n.flags);)n=n.parent;if(!n)for(;!n&&i;)n=qh(i),i=i.parent;this.elDef=n,this.elView=i}return Object.defineProperty(t.prototype,"elOrCompView",{get:function(){return Th(this.elView,this.elDef.nodeIndex).componentView||this.view},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"injector",{get:function(){return Ff(this.elView,this.elDef)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"component",{get:function(){return this.elOrCompView.component},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"context",{get:function(){return this.elOrCompView.context},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"providerTokens",{get:function(){var t=[];if(this.elDef)for(var e=this.elDef.nodeIndex+1;e<=this.elDef.nodeIndex+this.elDef.childCount;e++){var n=this.elView.def.nodes[e];20224&n.flags&&t.push(n.provider.token),e+=n.childCount}return t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"references",{get:function(){var t={};if(this.elDef){jS(this.elView,this.elDef,t);for(var e=this.elDef.nodeIndex+1;e<=this.elDef.nodeIndex+this.elDef.childCount;e++){var n=this.elView.def.nodes[e];20224&n.flags&&jS(this.elView,n,t),e+=n.childCount}}return t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"componentRenderElement",{get:function(){var t=function(t){for(;t&&!Yh(t);)t=t.parent;return t.parent?Th(t.parent,qh(t).nodeIndex):null}(this.elOrCompView);return t?t.renderElement:void 0},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"renderNode",{get:function(){return 2&this.nodeDef.flags?Kh(this.view,this.nodeDef):Kh(this.elView,this.elDef)},enumerable:!0,configurable:!0}),t.prototype.logError=function(t){for(var e,n,r=[],o=1;o<arguments.length;o++)r[o-1]=arguments[o];2&this.nodeDef.flags?(e=this.view.def,n=this.nodeDef.nodeIndex):(e=this.elView.def,n=this.elDef.nodeIndex);var a=function(t,e){for(var n=-1,i=0;i<=e;i++)3&t.nodes[i].flags&&n++;return n}(e,n),s=-1;e.factory(function(){var e;return++s===a?(e=t.error).bind.apply(e,Object(i.h)([t],r)):Dh}),s<a&&(t.error("Illegal state: the ViewDefinitionFactory did not call the logger!"),t.error.apply(t,Object(i.h)(r)))},t}();function jS(t,e,n){for(var i in e.references)n[i]=Tw(t,e,e.references[i])}function VS(t,e,n,i){var r=hS,o=fS,a=gS;try{hS=t;var s=e.apply(n,i);return fS=o,gS=a,hS=r,s}catch(t){if(_i(t)||!fS)throw t;throw function(t,e){return t instanceof Error||(t=new Error(t.toString())),xh(t,e),t}(t,FS())}}function FS(){return fS?new NS(fS,gS):null}var US=function(){function t(t){this.delegate=t}return t.prototype.createRenderer=function(t,e){return new BS(this.delegate.createRenderer(t,e))},t.prototype.begin=function(){this.delegate.begin&&this.delegate.begin()},t.prototype.end=function(){this.delegate.end&&this.delegate.end()},t.prototype.whenRenderingDone=function(){return this.delegate.whenRenderingDone?this.delegate.whenRenderingDone():Promise.resolve(null)},t}(),BS=function(){function t(t){this.delegate=t,this.debugContextFactory=FS,this.data=this.delegate.data}return t.prototype.createDebugContext=function(t){return this.debugContextFactory(t)},t.prototype.destroyNode=function(t){var e=nw(t);!function(t){tw.delete(t.nativeNode)}(e),e instanceof Gb&&(e.listeners.length=0),this.delegate.destroyNode&&this.delegate.destroyNode(t)},t.prototype.destroy=function(){this.delegate.destroy()},t.prototype.createElement=function(t,e){var n=this.delegate.createElement(t,e),i=this.createDebugContext(n);if(i){var r=new Hb(n,null,i);r.name=t,ow(r)}return n},t.prototype.createComment=function(t){var e=this.delegate.createComment(t),n=this.createDebugContext(e);return n&&ow(new Gb(e,null,n)),e},t.prototype.createText=function(t){var e=this.delegate.createText(t),n=this.createDebugContext(e);return n&&ow(new Gb(e,null,n)),e},t.prototype.appendChild=function(t,e){var n=nw(t),i=nw(e);n&&i&&n instanceof Hb&&n.addChild(i),this.delegate.appendChild(t,e)},t.prototype.insertBefore=function(t,e,n){var i=nw(t),r=nw(e),o=nw(n);i&&r&&i instanceof Hb&&i.insertBefore(o,r),this.delegate.insertBefore(t,e,n)},t.prototype.removeChild=function(t,e){var n=nw(t),i=nw(e);n&&i&&n instanceof Hb&&n.removeChild(i),this.delegate.removeChild(t,e)},t.prototype.selectRootElement=function(t,e){var n=this.delegate.selectRootElement(t,e),i=FS();return i&&ow(new Hb(n,null,i)),n},t.prototype.setAttribute=function(t,e,n,i){var r=nw(t);if(r&&r instanceof Hb){var o=i?i+":"+e:e;r.attributes[o]=n}this.delegate.setAttribute(t,e,n,i)},t.prototype.removeAttribute=function(t,e,n){var i=nw(t);if(i&&i instanceof Hb){var r=n?n+":"+e:e;i.attributes[r]=null}this.delegate.removeAttribute(t,e,n)},t.prototype.addClass=function(t,e){var n=nw(t);n&&n instanceof Hb&&(n.classes[e]=!0),this.delegate.addClass(t,e)},t.prototype.removeClass=function(t,e){var n=nw(t);n&&n instanceof Hb&&(n.classes[e]=!1),this.delegate.removeClass(t,e)},t.prototype.setStyle=function(t,e,n,i){var r=nw(t);r&&r instanceof Hb&&(r.styles[e]=n),this.delegate.setStyle(t,e,n,i)},t.prototype.removeStyle=function(t,e,n){var i=nw(t);i&&i instanceof Hb&&(i.styles[e]=null),this.delegate.removeStyle(t,e,n)},t.prototype.setProperty=function(t,e,n){var i=nw(t);i&&i instanceof Hb&&(i.properties[e]=n),this.delegate.setProperty(t,e,n)},t.prototype.listen=function(t,e,n){if("string"!=typeof t){var i=nw(t);i&&i.listeners.push(new zb(e,n))}return this.delegate.listen(t,e,n)},t.prototype.parentNode=function(t){return this.delegate.parentNode(t)},t.prototype.nextSibling=function(t){return this.delegate.nextSibling(t)},t.prototype.setValue=function(t,e){return this.delegate.setValue(t,e)},t}();
  1153. /**
  1154. * @license
  1155. * Copyright Google Inc. All Rights Reserved.
  1156. *
  1157. * Use of this source code is governed by an MIT-style license that can be
  1158. * found in the LICENSE file at https://angular.io/license
  1159. */function zS(t){return oS(),kh.overrideProvider(t)}function GS(t,e){return oS(),kh.overrideComponentView(t,e)}function HS(){return oS(),kh.clearOverrides()}function WS(t,e,n){return new qS(t,e,n)}var qS=function(t){function e(e,n,i){var r=t.call(this)||this;return r.moduleType=e,r._bootstrapComponents=n,r._ngModuleDefFactory=i,r}return Object(i.c)(e,t),e.prototype.create=function(t){oS();var e=function(t){var e=Array.from(t.providers),n=Array.from(t.modules),i={};for(var r in t.providersByKey)i[r]=t.providersByKey[r];return{factory:t.factory,scope:t.scope,providers:e,modules:n,providersByKey:i}}(nf(this._ngModuleDefFactory));return kh.createNgModuleRef(this.moduleType,t||Ec.NULL,this._bootstrapComponents,e)},e}(Pt);
  1160. /**
  1161. * @license
  1162. * Copyright Google Inc. All Rights Reserved.
  1163. *
  1164. * Use of this source code is governed by an MIT-style license that can be
  1165. * found in the LICENSE file at https://angular.io/license
  1166. */
  1167. /**
  1168. * @license
  1169. * Copyright Google Inc. All Rights Reserved.
  1170. *
  1171. * Use of this source code is governed by an MIT-style license that can be
  1172. * found in the LICENSE file at https://angular.io/license
  1173. */
  1174. /**
  1175. * @license
  1176. * Copyright Google Inc. All Rights Reserved.
  1177. *
  1178. * Use of this source code is governed by an MIT-style license that can be
  1179. * found in the LICENSE file at https://angular.io/license
  1180. */
  1181. /**
  1182. * @license
  1183. * Copyright Google Inc. All Rights Reserved.
  1184. *
  1185. * Use of this source code is governed by an MIT-style license that can be
  1186. * found in the LICENSE file at https://angular.io/license
  1187. */
  1188. /**
  1189. * @license
  1190. * Copyright Google Inc. All Rights Reserved.
  1191. *
  1192. * Use of this source code is governed by an MIT-style license that can be
  1193. * found in the LICENSE file at https://angular.io/license
  1194. */ngDevMode&&(J.$localize=J.$localize||function(){throw new Error("It looks like your application or one of its dependencies is using i18n.\nAngular 9 introduced a global `$localize()` function that needs to be loaded.\nPlease run `ng add @angular/localize` from the Angular CLI.\n(For non-CLI projects, add `import '@angular/localize/init';` to your `polyfills.ts` file.\nFor server-side rendering applications add the import to your `main.server.ts` file.)")})}.call(this,n(213))},function(t,e,n){"use strict";n.d(e,"c",function(){return r}),n.d(e,"a",function(){return o}),n.d(e,"g",function(){return a}),n.d(e,"b",function(){return s}),n.d(e,"e",function(){return c}),n.d(e,"d",function(){return l}),n.d(e,"j",function(){return u}),n.d(e,"f",function(){return d}),n.d(e,"h",function(){return p}),n.d(e,"i",function(){return h});
  1195. /*! *****************************************************************************
  1196. Copyright (c) Microsoft Corporation. All rights reserved.
  1197. Licensed under the Apache License, Version 2.0 (the "License"); you may not use
  1198. this file except in compliance with the License. You may obtain a copy of the
  1199. License at http://www.apache.org/licenses/LICENSE-2.0
  1200. THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  1201. KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
  1202. WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
  1203. MERCHANTABLITY OR NON-INFRINGEMENT.
  1204. See the Apache Version 2.0 License for specific language governing permissions
  1205. and limitations under the License.
  1206. ***************************************************************************** */
  1207. var i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)};function r(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}var o=function(){return(o=Object.assign||function(t){for(var e,n=1,i=arguments.length;n<i;n++)for(var r in e=arguments[n])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)};function a(t,e){var n={};for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(i=Object.getOwnPropertySymbols(t);r<i.length;r++)e.indexOf(i[r])<0&&Object.prototype.propertyIsEnumerable.call(t,i[r])&&(n[i[r]]=t[i[r]])}return n}function s(t,e,n,i){var r,o=arguments.length,a=o<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,n,i);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(a=(o<3?r(a):o>3?r(e,n,a):r(e,n))||a);return o>3&&a&&Object.defineProperty(e,n,a),a}function c(t,e){return function(n,i){e(n,i,t)}}function l(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}function u(t){var e="function"==typeof Symbol&&t[Symbol.iterator],n=0;return e?e.call(t):{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}}function d(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var i,r,o=n.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(i=o.next()).done;)a.push(i.value)}catch(t){r={error:t}}finally{try{i&&!i.done&&(n=o.return)&&n.call(o)}finally{if(r)throw r.error}}return a}function p(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(d(arguments[e]));return t}function h(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var i=Array(t),r=0;for(e=0;e<n;e++)for(var o=arguments[e],a=0,s=o.length;a<s;a++,r++)i[r]=o[a];return i}},function(t,e,n){n(924),t.exports=angular},function(t,e,n){"use strict";n.r(e),n.d(e,"APP_BASE_HREF",function(){return S}),n.d(e,"AsyncPipe",function(){return te}),n.d(e,"CommonModule",function(){return be}),n.d(e,"CurrencyPipe",function(){return fe}),n.d(e,"DOCUMENT",function(){return l}),n.d(e,"DatePipe",function(){return oe}),n.d(e,"DecimalPipe",function(){return pe}),n.d(e,"FormStyle",function(){return _}),n.d(e,"FormatWidth",function(){return I}),n.d(e,"HashLocationStrategy",function(){return M}),n.d(e,"I18nPluralPipe",function(){return se}),n.d(e,"I18nSelectPipe",function(){return ce}),n.d(e,"JsonPipe",function(){return le}),n.d(e,"KeyValuePipe",function(){return ue}),n.d(e,"LOCATION_INITIALIZED",function(){return p}),n.d(e,"Location",function(){return E}),n.d(e,"LocationStrategy",function(){return b}),n.d(e,"LowerCasePipe",function(){return ee}),n.d(e,"NgClass",function(){return Dt}),n.d(e,"NgComponentOutlet",function(){return Rt}),n.d(e,"NgForOf",function(){return Nt}),n.d(e,"NgForOfContext",function(){return Lt}),n.d(e,"NgIf",function(){return Vt}),n.d(e,"NgIfContext",function(){return Ft}),n.d(e,"NgLocaleLocalization",function(){return Pt}),n.d(e,"NgLocalization",function(){return Ot}),n.d(e,"NgPlural",function(){return Wt}),n.d(e,"NgPluralCase",function(){return qt}),n.d(e,"NgStyle",function(){return Kt}),n.d(e,"NgSwitch",function(){return zt}),n.d(e,"NgSwitchCase",function(){return Gt}),n.d(e,"NgSwitchDefault",function(){return Ht}),n.d(e,"NgTemplateOutlet",function(){return Xt}),n.d(e,"NumberFormatStyle",function(){return T}),n.d(e,"NumberSymbol",function(){return k}),n.d(e,"PathLocationStrategy",function(){return x}),n.d(e,"PercentPipe",function(){return he}),n.d(e,"PlatformLocation",function(){return u}),n.d(e,"Plural",function(){return O}),n.d(e,"SlicePipe",function(){return ve}),n.d(e,"TitleCasePipe",function(){return ie}),n.d(e,"TranslationWidth",function(){return P}),n.d(e,"UpperCasePipe",function(){return re}),n.d(e,"VERSION",function(){return Oe}),n.d(e,"ViewportScroller",function(){return _e}),n.d(e,"WeekDay",function(){return D}),n.d(e,"formatCurrency",function(){return Mt}),n.d(e,"formatDate",function(){return dt}),n.d(e,"formatNumber",function(){return Ct}),n.d(e,"formatPercent",function(){return Et}),n.d(e,"getCurrencySymbol",function(){return it}),n.d(e,"getLocaleCurrencyCode",function(){return Y}),n.d(e,"getLocaleCurrencyName",function(){return X}),n.d(e,"getLocaleCurrencySymbol",function(){return K}),n.d(e,"getLocaleDateFormat",function(){return z}),n.d(e,"getLocaleDateTimeFormat",function(){return H}),n.d(e,"getLocaleDayNames",function(){return j}),n.d(e,"getLocaleDayPeriods",function(){return N}),n.d(e,"getLocaleDirection",function(){return tt}),n.d(e,"getLocaleEraNames",function(){return F}),n.d(e,"getLocaleExtraDayPeriodRules",function(){return Q}),n.d(e,"getLocaleExtraDayPeriods",function(){return $}),n.d(e,"getLocaleFirstDayOfWeek",function(){return U}),n.d(e,"getLocaleId",function(){return L}),n.d(e,"getLocaleMonthNames",function(){return V}),n.d(e,"getLocaleNumberFormat",function(){return q}),n.d(e,"getLocaleNumberSymbol",function(){return W}),n.d(e,"getLocalePluralCase",function(){return Z}),n.d(e,"getLocaleTimeFormat",function(){return G}),n.d(e,"getLocaleWeekEndRange",function(){return B}),n.d(e,"getNumberOfCurrencyDigits",function(){return rt}),n.d(e,"isPlatformBrowser",function(){return Ee}),n.d(e,"isPlatformServer",function(){return Ce}),n.d(e,"isPlatformWorkerApp",function(){return Ae}),n.d(e,"isPlatformWorkerUi",function(){return Te}),n.d(e,"registerLocaleData",function(){return It}),n.d(e,"ɵBrowserPlatformLocation",function(){return h}),n.d(e,"ɵDomAdapter",function(){return c}),n.d(e,"ɵNullViewportScroller",function(){return Ie}),n.d(e,"ɵPLATFORM_BROWSER_ID",function(){return we}),n.d(e,"ɵPLATFORM_SERVER_ID",function(){return Se}),n.d(e,"ɵPLATFORM_WORKER_APP_ID",function(){return xe}),n.d(e,"ɵPLATFORM_WORKER_UI_ID",function(){return Me}),n.d(e,"ɵangular_packages_common_common_a",function(){return d}),n.d(e,"ɵangular_packages_common_common_b",function(){return g}),n.d(e,"ɵangular_packages_common_common_c",function(){return C}),n.d(e,"ɵangular_packages_common_common_d",function(){return w}),n.d(e,"ɵangular_packages_common_common_e",function(){return Yt}),n.d(e,"ɵangular_packages_common_common_f",function(){return ye}),n.d(e,"ɵgetDOM",function(){return a}),n.d(e,"ɵparseCookieValue",function(){return kt}),n.d(e,"ɵsetRootDomAdapter",function(){return s});var i=n(1),r=n(0),o=null;function a(){return o}function s(t){o||(o=t)}var c=function(){},l=new r.InjectionToken("DocumentToken"),u=function(){function t(){}return t.ɵprov=Object(r["ɵɵdefineInjectable"])({factory:d,token:t,providedIn:"platform"}),t.ɵfac=function(e){return new(e||t)},t}();
  1208. /**
  1209. * @license
  1210. * Copyright Google Inc. All Rights Reserved.
  1211. *
  1212. * Use of this source code is governed by an MIT-style license that can be
  1213. * found in the LICENSE file at https://angular.io/license
  1214. */function d(){return Object(r["ɵɵinject"])(h)}var p=new r.InjectionToken("Location Initialized"),h=function(t){function e(e){var n=t.call(this)||this;return n._doc=e,n._init(),n}return Object(i.c)(e,t),e.prototype._init=function(){this.location=a().getLocation(),this._history=a().getHistory()},e.prototype.getBaseHrefFromDOM=function(){return a().getBaseHref(this._doc)},e.prototype.onPopState=function(t){a().getGlobalEventTarget(this._doc,"window").addEventListener("popstate",t,!1)},e.prototype.onHashChange=function(t){a().getGlobalEventTarget(this._doc,"window").addEventListener("hashchange",t,!1)},Object.defineProperty(e.prototype,"href",{get:function(){return this.location.href},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"protocol",{get:function(){return this.location.protocol},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hostname",{get:function(){return this.location.hostname},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"port",{get:function(){return this.location.port},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"pathname",{get:function(){return this.location.pathname},set:function(t){this.location.pathname=t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"search",{get:function(){return this.location.search},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"hash",{get:function(){return this.location.hash},enumerable:!0,configurable:!0}),e.prototype.pushState=function(t,e,n){f()?this._history.pushState(t,e,n):this.location.hash=n},e.prototype.replaceState=function(t,e,n){f()?this._history.replaceState(t,e,n):this.location.hash=n},e.prototype.forward=function(){this._history.forward()},e.prototype.back=function(){this._history.back()},e.prototype.getState=function(){return this._history.state},e.ɵprov=Object(r["ɵɵdefineInjectable"])({factory:g,token:e,providedIn:"platform"}),(e=Object(i.b)([Object(i.e)(0,Object(r.Inject)(l)),Object(i.d)("design:paramtypes",[Object])],e)).ɵfac=function(t){return new(t||e)(r["ɵɵinject"](l))},e}(u);function f(){return!!window.history.pushState}function g(){return new h(Object(r["ɵɵinject"])(l))}
  1215. /**
  1216. * @license
  1217. * Copyright Google Inc. All Rights Reserved.
  1218. *
  1219. * Use of this source code is governed by an MIT-style license that can be
  1220. * found in the LICENSE file at https://angular.io/license
  1221. */
  1222. /**
  1223. * @license
  1224. * Copyright Google Inc. All Rights Reserved.
  1225. *
  1226. * Use of this source code is governed by an MIT-style license that can be
  1227. * found in the LICENSE file at https://angular.io/license
  1228. */function m(t,e){if(0==t.length)return e;if(0==e.length)return t;var n=0;return t.endsWith("/")&&n++,e.startsWith("/")&&n++,2==n?t+e.substring(1):1==n?t+e:t+"/"+e}function v(t){var e=t.match(/#|\?|$/),n=e&&e.index||t.length,i=n-("/"===t[n-1]?1:0);return t.slice(0,i)+t.slice(n)}function y(t){return t&&"?"!==t[0]?"?"+t:t}var b=function(){function t(){}return t.ɵprov=Object(r["ɵɵdefineInjectable"])({factory:w,token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)},t}();function w(t){var e=Object(r["ɵɵinject"])(l).location;return new x(Object(r["ɵɵinject"])(u),e&&e.origin||"")}var S=new r.InjectionToken("appBaseHref"),x=function(t){function e(e,n){var i=t.call(this)||this;if(i._platformLocation=e,null==n&&(n=i._platformLocation.getBaseHrefFromDOM()),null==n)throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");return i._baseHref=n,i}return Object(i.c)(e,t),e.prototype.onPopState=function(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)},e.prototype.getBaseHref=function(){return this._baseHref},e.prototype.prepareExternalUrl=function(t){return m(this._baseHref,t)},e.prototype.path=function(t){void 0===t&&(t=!1);var e=this._platformLocation.pathname+y(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?""+e+n:e},e.prototype.pushState=function(t,e,n,i){var r=this.prepareExternalUrl(n+y(i));this._platformLocation.pushState(t,e,r)},e.prototype.replaceState=function(t,e,n,i){var r=this.prepareExternalUrl(n+y(i));this._platformLocation.replaceState(t,e,r)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},(e=Object(i.b)([Object(i.e)(1,Object(r.Optional)()),Object(i.e)(1,Object(r.Inject)(S)),Object(i.d)("design:paramtypes",[u,String])],e)).ɵfac=function(t){return new(t||e)(r["ɵɵinject"](u),r["ɵɵinject"](S,8))},e.ɵprov=r["ɵɵdefineInjectable"]({token:e,factory:function(t){return e.ɵfac(t)}}),e}(b),M=function(t){function e(e,n){var i=t.call(this)||this;return i._platformLocation=e,i._baseHref="",null!=n&&(i._baseHref=n),i}return Object(i.c)(e,t),e.prototype.onPopState=function(t){this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t)},e.prototype.getBaseHref=function(){return this._baseHref},e.prototype.path=function(t){void 0===t&&(t=!1);var e=this._platformLocation.hash;return null==e&&(e="#"),e.length>0?e.substring(1):e},e.prototype.prepareExternalUrl=function(t){var e=m(this._baseHref,t);return e.length>0?"#"+e:e},e.prototype.pushState=function(t,e,n,i){var r=this.prepareExternalUrl(n+y(i));0==r.length&&(r=this._platformLocation.pathname),this._platformLocation.pushState(t,e,r)},e.prototype.replaceState=function(t,e,n,i){var r=this.prepareExternalUrl(n+y(i));0==r.length&&(r=this._platformLocation.pathname),this._platformLocation.replaceState(t,e,r)},e.prototype.forward=function(){this._platformLocation.forward()},e.prototype.back=function(){this._platformLocation.back()},(e=Object(i.b)([Object(i.e)(1,Object(r.Optional)()),Object(i.e)(1,Object(r.Inject)(S)),Object(i.d)("design:paramtypes",[u,String])],e)).ɵfac=function(t){return new(t||e)(r["ɵɵinject"](u),r["ɵɵinject"](S,8))},e.ɵprov=r["ɵɵdefineInjectable"]({token:e,factory:function(t){return e.ɵfac(t)}}),e}(b),E=function(){function t(t,e){var n=this;this._subject=new r.EventEmitter,this._urlChangeListeners=[],this._platformStrategy=t;var i=this._platformStrategy.getBaseHref();this._platformLocation=e,this._baseHref=v(A(i)),this._platformStrategy.onPopState(function(t){n._subject.emit({url:n.path(!0),pop:!0,state:t.state,type:t.type})})}var e;return e=t,t.prototype.path=function(t){return void 0===t&&(t=!1),this.normalize(this._platformStrategy.path(t))},t.prototype.getState=function(){return this._platformLocation.getState()},t.prototype.isCurrentPathEqualTo=function(t,e){return void 0===e&&(e=""),this.path()==this.normalize(t+y(e))},t.prototype.normalize=function(t){return e.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,A(t)))},t.prototype.prepareExternalUrl=function(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)},t.prototype.go=function(t,e,n){void 0===e&&(e=""),void 0===n&&(n=null),this._platformStrategy.pushState(n,"",t,e),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+y(e)),n)},t.prototype.replaceState=function(t,e,n){void 0===e&&(e=""),void 0===n&&(n=null),this._platformStrategy.replaceState(n,"",t,e),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+y(e)),n)},t.prototype.forward=function(){this._platformStrategy.forward()},t.prototype.back=function(){this._platformStrategy.back()},t.prototype.onUrlChange=function(t){var e=this;this._urlChangeListeners.push(t),this.subscribe(function(t){e._notifyUrlChangeListeners(t.url,t.state)})},t.prototype._notifyUrlChangeListeners=function(t,e){void 0===t&&(t=""),this._urlChangeListeners.forEach(function(n){return n(t,e)})},t.prototype.subscribe=function(t,e,n){return this._subject.subscribe({next:t,error:e,complete:n})},t.normalizeQueryParams=y,t.joinWithSlash=m,t.stripTrailingSlash=v,t.ɵprov=Object(r["ɵɵdefineInjectable"])({factory:C,token:t,providedIn:"root"}),(t=e=Object(i.b)([Object(i.d)("design:paramtypes",[b,u])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵinject"](b),r["ɵɵinject"](u))},t}();function C(){return new E(Object(r["ɵɵinject"])(b),Object(r["ɵɵinject"])(u))}function A(t){return t.replace(/\/index.html$/,"")}
  1229. /**
  1230. * @license
  1231. * Copyright Google Inc. All Rights Reserved.
  1232. *
  1233. * Use of this source code is governed by an MIT-style license that can be
  1234. * found in the LICENSE file at https://angular.io/license
  1235. */
  1236. /**
  1237. * @license
  1238. * Copyright Google Inc. All Rights Reserved.
  1239. *
  1240. * Use of this source code is governed by an MIT-style license that can be
  1241. * found in the LICENSE file at https://angular.io/license
  1242. */var T,O,_,P,I,k,D,R={ADP:[void 0,void 0,0],AFN:[void 0,void 0,0],ALL:[void 0,void 0,0],AMD:[void 0,void 0,2],AOA:[void 0,"Kz"],ARS:[void 0,"$"],AUD:["A$","$"],BAM:[void 0,"KM"],BBD:[void 0,"$"],BDT:[void 0,"৳"],BHD:[void 0,void 0,3],BIF:[void 0,void 0,0],BMD:[void 0,"$"],BND:[void 0,"$"],BOB:[void 0,"Bs"],BRL:["R$"],BSD:[void 0,"$"],BWP:[void 0,"P"],BYN:[void 0,"р.",2],BYR:[void 0,void 0,0],BZD:[void 0,"$"],CAD:["CA$","$",2],CHF:[void 0,void 0,2],CLF:[void 0,void 0,4],CLP:[void 0,"$",0],CNY:["CN¥","¥"],COP:[void 0,"$",2],CRC:[void 0,"₡",2],CUC:[void 0,"$"],CUP:[void 0,"$"],CZK:[void 0,"Kč",2],DJF:[void 0,void 0,0],DKK:[void 0,"kr",2],DOP:[void 0,"$"],EGP:[void 0,"E£"],ESP:[void 0,"₧",0],EUR:["€"],FJD:[void 0,"$"],FKP:[void 0,"£"],GBP:["£"],GEL:[void 0,"₾"],GIP:[void 0,"£"],GNF:[void 0,"FG",0],GTQ:[void 0,"Q"],GYD:[void 0,"$",2],HKD:["HK$","$"],HNL:[void 0,"L"],HRK:[void 0,"kn"],HUF:[void 0,"Ft",2],IDR:[void 0,"Rp",2],ILS:["₪"],INR:["₹"],IQD:[void 0,void 0,0],IRR:[void 0,void 0,0],ISK:[void 0,"kr",0],ITL:[void 0,void 0,0],JMD:[void 0,"$"],JOD:[void 0,void 0,3],JPY:["¥",void 0,0],KHR:[void 0,"៛"],KMF:[void 0,"CF",0],KPW:[void 0,"₩",0],KRW:["₩",void 0,0],KWD:[void 0,void 0,3],KYD:[void 0,"$"],KZT:[void 0,"₸"],LAK:[void 0,"₭",0],LBP:[void 0,"L£",0],LKR:[void 0,"Rs"],LRD:[void 0,"$"],LTL:[void 0,"Lt"],LUF:[void 0,void 0,0],LVL:[void 0,"Ls"],LYD:[void 0,void 0,3],MGA:[void 0,"Ar",0],MGF:[void 0,void 0,0],MMK:[void 0,"K",0],MNT:[void 0,"₮",2],MRO:[void 0,void 0,0],MUR:[void 0,"Rs",2],MXN:["MX$","$"],MYR:[void 0,"RM"],NAD:[void 0,"$"],NGN:[void 0,"₦"],NIO:[void 0,"C$"],NOK:[void 0,"kr",2],NPR:[void 0,"Rs"],NZD:["NZ$","$"],OMR:[void 0,void 0,3],PHP:[void 0,"₱"],PKR:[void 0,"Rs",2],PLN:[void 0,"zł"],PYG:[void 0,"₲",0],RON:[void 0,"lei"],RSD:[void 0,void 0,0],RUB:[void 0,"₽"],RUR:[void 0,"р."],RWF:[void 0,"RF",0],SBD:[void 0,"$"],SEK:[void 0,"kr",2],SGD:[void 0,"$"],SHP:[void 0,"£"],SLL:[void 0,void 0,0],SOS:[void 0,void 0,0],SRD:[void 0,"$"],SSP:[void 0,"£"],STD:[void 0,void 0,0],STN:[void 0,"Db"],SYP:[void 0,"£",0],THB:[void 0,"฿"],TMM:[void 0,void 0,0],TND:[void 0,void 0,3],TOP:[void 0,"T$"],TRL:[void 0,void 0,0],TRY:[void 0,"₺"],TTD:[void 0,"$"],TWD:["NT$","$",2],TZS:[void 0,void 0,2],UAH:[void 0,"₴"],UGX:[void 0,void 0,0],USD:["$"],UYI:[void 0,void 0,0],UYU:[void 0,"$"],UYW:[void 0,void 0,4],UZS:[void 0,void 0,2],VEF:[void 0,"Bs",2],VND:["₫",void 0,0],VUV:[void 0,void 0,0],XAF:["FCFA",void 0,0],XCD:["EC$","$"],XOF:["CFA",void 0,0],XPF:["CFPF",void 0,0],XXX:["¤"],YER:[void 0,void 0,0],ZAR:[void 0,"R"],ZMK:[void 0,void 0,0],ZMW:[void 0,"ZK"],ZWD:[void 0,void 0,0]};
  1243. /**
  1244. * @license
  1245. * Copyright Google Inc. All Rights Reserved.
  1246. *
  1247. * Use of this source code is governed by an MIT-style license that can be
  1248. * found in the LICENSE file at https://angular.io/license
  1249. */function L(t){return Object(r["ɵfindLocaleData"])(t)[r["ɵLocaleDataIndex"].LocaleId]}function N(t,e,n){var i=Object(r["ɵfindLocaleData"])(t);return et(et([i[r["ɵLocaleDataIndex"].DayPeriodsFormat],i[r["ɵLocaleDataIndex"].DayPeriodsStandalone]],e),n)}function j(t,e,n){var i=Object(r["ɵfindLocaleData"])(t);return et(et([i[r["ɵLocaleDataIndex"].DaysFormat],i[r["ɵLocaleDataIndex"].DaysStandalone]],e),n)}function V(t,e,n){var i=Object(r["ɵfindLocaleData"])(t);return et(et([i[r["ɵLocaleDataIndex"].MonthsFormat],i[r["ɵLocaleDataIndex"].MonthsStandalone]],e),n)}function F(t,e){return et(Object(r["ɵfindLocaleData"])(t)[r["ɵLocaleDataIndex"].Eras],e)}function U(t){return Object(r["ɵfindLocaleData"])(t)[r["ɵLocaleDataIndex"].FirstDayOfWeek]}function B(t){return Object(r["ɵfindLocaleData"])(t)[r["ɵLocaleDataIndex"].WeekendRange]}function z(t,e){return et(Object(r["ɵfindLocaleData"])(t)[r["ɵLocaleDataIndex"].DateFormat],e)}function G(t,e){return et(Object(r["ɵfindLocaleData"])(t)[r["ɵLocaleDataIndex"].TimeFormat],e)}function H(t,e){return et(Object(r["ɵfindLocaleData"])(t)[r["ɵLocaleDataIndex"].DateTimeFormat],e)}function W(t,e){var n=Object(r["ɵfindLocaleData"])(t),i=n[r["ɵLocaleDataIndex"].NumberSymbols][e];if(void 0===i){if(e===k.CurrencyDecimal)return n[r["ɵLocaleDataIndex"].NumberSymbols][k.Decimal];if(e===k.CurrencyGroup)return n[r["ɵLocaleDataIndex"].NumberSymbols][k.Group]}return i}function q(t,e){return Object(r["ɵfindLocaleData"])(t)[r["ɵLocaleDataIndex"].NumberFormats][e]}function K(t){return Object(r["ɵfindLocaleData"])(t)[r["ɵLocaleDataIndex"].CurrencySymbol]||null}function X(t){return Object(r["ɵfindLocaleData"])(t)[r["ɵLocaleDataIndex"].CurrencyName]||null}function Y(t){return Object(r["ɵgetLocaleCurrencyCode"])(t)}!function(t){t[t.Decimal=0]="Decimal",t[t.Percent=1]="Percent",t[t.Currency=2]="Currency",t[t.Scientific=3]="Scientific"}(T||(T={})),function(t){t[t.Zero=0]="Zero",t[t.One=1]="One",t[t.Two=2]="Two",t[t.Few=3]="Few",t[t.Many=4]="Many",t[t.Other=5]="Other"}(O||(O={})),function(t){t[t.Format=0]="Format",t[t.Standalone=1]="Standalone"}(_||(_={})),function(t){t[t.Narrow=0]="Narrow",t[t.Abbreviated=1]="Abbreviated",t[t.Wide=2]="Wide",t[t.Short=3]="Short"}(P||(P={})),function(t){t[t.Short=0]="Short",t[t.Medium=1]="Medium",t[t.Long=2]="Long",t[t.Full=3]="Full"}(I||(I={})),function(t){t[t.Decimal=0]="Decimal",t[t.Group=1]="Group",t[t.List=2]="List",t[t.PercentSign=3]="PercentSign",t[t.PlusSign=4]="PlusSign",t[t.MinusSign=5]="MinusSign",t[t.Exponential=6]="Exponential",t[t.SuperscriptingExponent=7]="SuperscriptingExponent",t[t.PerMille=8]="PerMille",t[t[1/0]=9]="Infinity",t[t.NaN=10]="NaN",t[t.TimeSeparator=11]="TimeSeparator",t[t.CurrencyDecimal=12]="CurrencyDecimal",t[t.CurrencyGroup=13]="CurrencyGroup"}(k||(k={})),function(t){t[t.Sunday=0]="Sunday",t[t.Monday=1]="Monday",t[t.Tuesday=2]="Tuesday",t[t.Wednesday=3]="Wednesday",t[t.Thursday=4]="Thursday",t[t.Friday=5]="Friday",t[t.Saturday=6]="Saturday"}(D||(D={}));var Z=r["ɵgetLocalePluralCase"];function J(t){if(!t[r["ɵLocaleDataIndex"].ExtraData])throw new Error('Missing extra locale data for the locale "'+t[r["ɵLocaleDataIndex"].LocaleId]+'". Use "registerLocaleData" to load new data. See the "I18n guide" on angular.io to know more.')}function Q(t){var e=Object(r["ɵfindLocaleData"])(t);return J(e),(e[r["ɵLocaleDataIndex"].ExtraData][2]||[]).map(function(t){return"string"==typeof t?nt(t):[nt(t[0]),nt(t[1])]})}function $(t,e,n){var i=Object(r["ɵfindLocaleData"])(t);return J(i),et(et([i[r["ɵLocaleDataIndex"].ExtraData][0],i[r["ɵLocaleDataIndex"].ExtraData][1]],e)||[],n)||[]}function tt(t){return Object(r["ɵfindLocaleData"])(t)[r["ɵLocaleDataIndex"].Directionality]}function et(t,e){for(var n=e;n>-1;n--)if(void 0!==t[n])return t[n];throw new Error("Locale data API: locale data undefined")}function nt(t){var e=Object(i.f)(t.split(":"),2);return{hours:+e[0],minutes:+e[1]}}function it(t,e,n){void 0===n&&(n="en");var i=function(t){return Object(r["ɵfindLocaleData"])(t)[r["ɵLocaleDataIndex"].Currencies]}(n)[t]||R[t]||[],o=i[1];return"narrow"===e&&"string"==typeof o?o:i[0]||t}function rt(t){var e,n=R[t];return n&&(e=n[2]),"number"==typeof e?e:2}
  1250. /**
  1251. * @license
  1252. * Copyright Google Inc. All Rights Reserved.
  1253. *
  1254. * Use of this source code is governed by an MIT-style license that can be
  1255. * found in the LICENSE file at https://angular.io/license
  1256. */var ot,at,st,ct=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,lt={},ut=/((?:[^GyMLwWdEabBhHmsSzZO']+)|(?:'(?:[^']|'')*')|(?:G{1,5}|y{1,4}|M{1,5}|L{1,5}|w{1,2}|W{1}|d{1,2}|E{1,6}|a{1,5}|b{1,5}|B{1,5}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|O{1,4}))([\s\S]*)/;function dt(t,e,n,r){var o=function(t){if(wt(t))return t;if("number"==typeof t&&!isNaN(t))return new Date(t);if("string"==typeof t){t=t.trim();var e,n=parseFloat(t);if(!isNaN(t-n))return new Date(n);if(/^(\d{4}-\d{1,2}-\d{1,2})$/.test(t)){var r=Object(i.f)(t.split("-").map(function(t){return+t}),3),o=r[0],a=r[1],s=r[2];return new Date(o,a-1,s)}if(e=t.match(ct))return function(t){var e=new Date(0),n=0,i=0,r=t[8]?e.setUTCFullYear:e.setFullYear,o=t[8]?e.setUTCHours:e.setHours;t[9]&&(n=Number(t[9]+t[10]),i=Number(t[9]+t[11])),r.call(e,Number(t[1]),Number(t[2])-1,Number(t[3]));var a=Number(t[4]||0)-n,s=Number(t[5]||0)-i,c=Number(t[6]||0),l=Math.round(1e3*parseFloat("0."+(t[7]||0)));return o.call(e,a,s,c,l),e}(e)}var c=new Date(t);if(!wt(c))throw new Error('Unable to convert "'+t+'" into a date');return c}(t);e=function t(e,n){var i=L(e);if(lt[i]=lt[i]||{},lt[i][n])return lt[i][n];var r="";switch(n){case"shortDate":r=z(e,I.Short);break;case"mediumDate":r=z(e,I.Medium);break;case"longDate":r=z(e,I.Long);break;case"fullDate":r=z(e,I.Full);break;case"shortTime":r=G(e,I.Short);break;case"mediumTime":r=G(e,I.Medium);break;case"longTime":r=G(e,I.Long);break;case"fullTime":r=G(e,I.Full);break;case"short":var o=t(e,"shortTime"),a=t(e,"shortDate");r=pt(H(e,I.Short),[o,a]);break;case"medium":var s=t(e,"mediumTime"),c=t(e,"mediumDate");r=pt(H(e,I.Medium),[s,c]);break;case"long":var l=t(e,"longTime"),u=t(e,"longDate");r=pt(H(e,I.Long),[l,u]);break;case"full":var d=t(e,"fullTime"),p=t(e,"fullDate");r=pt(H(e,I.Full),[d,p])}return r&&(lt[i][n]=r),r}(n,e)||e;for(var a,s=[];e;){if(!(a=ut.exec(e))){s.push(e);break}var c=(s=s.concat(a.slice(1))).pop();if(!c)break;e=c}var l=o.getTimezoneOffset();r&&(l=bt(r,l),o=function(t,e,n){var i=t.getTimezoneOffset();return function(t,e){return(t=new Date(t.getTime())).setMinutes(t.getMinutes()+e),t}(t,-1*(bt(e,i)-i))}(o,r));var u="";return s.forEach(function(t){var e=function(t){if(yt[t])return yt[t];var e;switch(t){case"G":case"GG":case"GGG":e=gt(st.Eras,P.Abbreviated);break;case"GGGG":e=gt(st.Eras,P.Wide);break;case"GGGGG":e=gt(st.Eras,P.Narrow);break;case"y":e=ft(at.FullYear,1,0,!1,!0);break;case"yy":e=ft(at.FullYear,2,0,!0,!0);break;case"yyy":e=ft(at.FullYear,3,0,!1,!0);break;case"yyyy":e=ft(at.FullYear,4,0,!1,!0);break;case"M":case"L":e=ft(at.Month,1,1);break;case"MM":case"LL":e=ft(at.Month,2,1);break;case"MMM":e=gt(st.Months,P.Abbreviated);break;case"MMMM":e=gt(st.Months,P.Wide);break;case"MMMMM":e=gt(st.Months,P.Narrow);break;case"LLL":e=gt(st.Months,P.Abbreviated,_.Standalone);break;case"LLLL":e=gt(st.Months,P.Wide,_.Standalone);break;case"LLLLL":e=gt(st.Months,P.Narrow,_.Standalone);break;case"w":e=vt(1);break;case"ww":e=vt(2);break;case"W":e=vt(1,!0);break;case"d":e=ft(at.Date,1);break;case"dd":e=ft(at.Date,2);break;case"E":case"EE":case"EEE":e=gt(st.Days,P.Abbreviated);break;case"EEEE":e=gt(st.Days,P.Wide);break;case"EEEEE":e=gt(st.Days,P.Narrow);break;case"EEEEEE":e=gt(st.Days,P.Short);break;case"a":case"aa":case"aaa":e=gt(st.DayPeriods,P.Abbreviated);break;case"aaaa":e=gt(st.DayPeriods,P.Wide);break;case"aaaaa":e=gt(st.DayPeriods,P.Narrow);break;case"b":case"bb":case"bbb":e=gt(st.DayPeriods,P.Abbreviated,_.Standalone,!0);break;case"bbbb":e=gt(st.DayPeriods,P.Wide,_.Standalone,!0);break;case"bbbbb":e=gt(st.DayPeriods,P.Narrow,_.Standalone,!0);break;case"B":case"BB":case"BBB":e=gt(st.DayPeriods,P.Abbreviated,_.Format,!0);break;case"BBBB":e=gt(st.DayPeriods,P.Wide,_.Format,!0);break;case"BBBBB":e=gt(st.DayPeriods,P.Narrow,_.Format,!0);break;case"h":e=ft(at.Hours,1,-12);break;case"hh":e=ft(at.Hours,2,-12);break;case"H":e=ft(at.Hours,1);break;case"HH":e=ft(at.Hours,2);break;case"m":e=ft(at.Minutes,1);break;case"mm":e=ft(at.Minutes,2);break;case"s":e=ft(at.Seconds,1);break;case"ss":e=ft(at.Seconds,2);break;case"S":e=ft(at.FractionalSeconds,1);break;case"SS":e=ft(at.FractionalSeconds,2);break;case"SSS":e=ft(at.FractionalSeconds,3);break;case"Z":case"ZZ":case"ZZZ":e=mt(ot.Short);break;case"ZZZZZ":e=mt(ot.Extended);break;case"O":case"OO":case"OOO":case"z":case"zz":case"zzz":e=mt(ot.ShortGMT);break;case"OOOO":case"ZZZZ":case"zzzz":e=mt(ot.Long);break;default:return null}return yt[t]=e,e}(t);u+=e?e(o,n,l):"''"===t?"'":t.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),u}function pt(t,e){return e&&(t=t.replace(/\{([^}]+)}/g,function(t,n){return null!=e&&n in e?e[n]:t})),t}function ht(t,e,n,i,r){void 0===n&&(n="-");var o="";(t<0||r&&t<=0)&&(r?t=1-t:(t=-t,o=n));for(var a=String(t);a.length<e;)a="0"+a;return i&&(a=a.substr(a.length-e)),o+a}function ft(t,e,n,i,r){return void 0===n&&(n=0),void 0===i&&(i=!1),void 0===r&&(r=!1),function(o,a){var s,c=function(t,e){switch(t){case at.FullYear:return e.getFullYear();case at.Month:return e.getMonth();case at.Date:return e.getDate();case at.Hours:return e.getHours();case at.Minutes:return e.getMinutes();case at.Seconds:return e.getSeconds();case at.FractionalSeconds:return e.getMilliseconds();case at.Day:return e.getDay();default:throw new Error('Unknown DateType value "'+t+'".')}}(t,o);if((n>0||c>-n)&&(c+=n),t===at.Hours)0===c&&-12===n&&(c=12);else if(t===at.FractionalSeconds)return s=e,ht(c,3).substr(0,s);var l=W(a,k.MinusSign);return ht(c,e,l,i,r)}}function gt(t,e,n,i){return void 0===n&&(n=_.Format),void 0===i&&(i=!1),function(r,o){return function(t,e,n,i,r,o){switch(n){case st.Months:return V(e,r,i)[t.getMonth()];case st.Days:return j(e,r,i)[t.getDay()];case st.DayPeriods:var a=t.getHours(),s=t.getMinutes();if(o){var c,l=Q(e),u=$(e,r,i);if(l.forEach(function(t,e){if(Array.isArray(t)){var n=t[0],i=n.hours,r=n.minutes,o=t[1],l=o.hours,d=o.minutes;a>=i&&s>=r&&(a<l||a===l&&s<d)&&(c=u[e])}else{var p=t.hours,h=t.minutes;p===a&&h===s&&(c=u[e])}}),c)return c}return N(e,r,i)[a<12?0:1];case st.Eras:return F(e,i)[t.getFullYear()<=0?0:1];default:throw new Error("unexpected translation type "+n)}}(r,o,t,e,n,i)}}function mt(t){return function(e,n,i){var r=-1*i,o=W(n,k.MinusSign),a=r>0?Math.floor(r/60):Math.ceil(r/60);switch(t){case ot.Short:return(r>=0?"+":"")+ht(a,2,o)+ht(Math.abs(r%60),2,o);case ot.ShortGMT:return"GMT"+(r>=0?"+":"")+ht(a,1,o);case ot.Long:return"GMT"+(r>=0?"+":"")+ht(a,2,o)+":"+ht(Math.abs(r%60),2,o);case ot.Extended:return 0===i?"Z":(r>=0?"+":"")+ht(a,2,o)+":"+ht(Math.abs(r%60),2,o);default:throw new Error('Unknown zone width "'+t+'"')}}}function vt(t,e){return void 0===e&&(e=!1),function(n,i){var r,o,a,s;if(e){var c=new Date(n.getFullYear(),n.getMonth(),1).getDay()-1,l=n.getDate();r=1+Math.floor((l+c)/7)}else{var u=(a=n.getFullYear(),s=new Date(a,0,1).getDay(),new Date(a,0,1+(s<=4?4:11)-s)),d=(o=n,new Date(o.getFullYear(),o.getMonth(),o.getDate()+(4-o.getDay()))).getTime()-u.getTime();r=1+Math.round(d/6048e5)}return ht(r,t,W(i,k.MinusSign))}}!function(t){t[t.Short=0]="Short",t[t.ShortGMT=1]="ShortGMT",t[t.Long=2]="Long",t[t.Extended=3]="Extended"}(ot||(ot={})),function(t){t[t.FullYear=0]="FullYear",t[t.Month=1]="Month",t[t.Date=2]="Date",t[t.Hours=3]="Hours",t[t.Minutes=4]="Minutes",t[t.Seconds=5]="Seconds",t[t.FractionalSeconds=6]="FractionalSeconds",t[t.Day=7]="Day"}(at||(at={})),function(t){t[t.DayPeriods=0]="DayPeriods",t[t.Days=1]="Days",t[t.Months=2]="Months",t[t.Eras=3]="Eras"}(st||(st={}));var yt={};function bt(t,e){t=t.replace(/:/g,"");var n=Date.parse("Jan 01, 1970 00:00:00 "+t)/6e4;return isNaN(n)?e:n}function wt(t){return t instanceof Date&&!isNaN(t.valueOf())}
  1257. /**
  1258. * @license
  1259. * Copyright Google Inc. All Rights Reserved.
  1260. *
  1261. * Use of this source code is governed by an MIT-style license that can be
  1262. * found in the LICENSE file at https://angular.io/license
  1263. */var St=/^(\d+)?\.((\d+)(-(\d+))?)?$/;function xt(t,e,n,i,r,o,a){void 0===a&&(a=!1);var s="",c=!1;if(isFinite(t)){var l=function(t){var e,n,i,r,o,a=Math.abs(t)+"",s=0;for((n=a.indexOf("."))>-1&&(a=a.replace(".","")),(i=a.search(/e/i))>0?(n<0&&(n=i),n+=+a.slice(i+1),a=a.substring(0,i)):n<0&&(n=a.length),i=0;"0"===a.charAt(i);i++);if(i===(o=a.length))e=[0],n=1;else{for(o--;"0"===a.charAt(o);)o--;for(n-=i,e=[],r=0;i<=o;i++,r++)e[r]=Number(a.charAt(i))}return n>22&&(e=e.splice(0,21),s=n-1,n=1),{digits:e,exponent:s,integerLen:n}}(t);a&&(l=function(t){if(0===t.digits[0])return t;var e=t.digits.length-t.integerLen;return t.exponent?t.exponent+=2:(0===e?t.digits.push(0,0):1===e&&t.digits.push(0),t.integerLen+=2),t}(l));var u=e.minInt,d=e.minFrac,p=e.maxFrac;if(o){var h=o.match(St);if(null===h)throw new Error(o+" is not a valid digit info");var f=h[1],g=h[3],m=h[5];null!=f&&(u=Tt(f)),null!=g&&(d=Tt(g)),null!=m?p=Tt(m):null!=g&&d>p&&(p=d)}!function(t,e,n){if(e>n)throw new Error("The minimum number of digits after fraction ("+e+") is higher than the maximum ("+n+").");var i=t.digits,r=i.length-t.integerLen,o=Math.min(Math.max(e,r),n),a=o+t.integerLen,s=i[a];if(a>0){i.splice(Math.max(t.integerLen,a));for(var c=a;c<i.length;c++)i[c]=0}else{r=Math.max(0,r),t.integerLen=1,i.length=Math.max(1,a=o+1),i[0]=0;for(var l=1;l<a;l++)i[l]=0}if(s>=5)if(a-1<0){for(var u=0;u>a;u--)i.unshift(0),t.integerLen++;i.unshift(1),t.integerLen++}else i[a-1]++;for(;r<Math.max(0,o);r++)i.push(0);var d=0!==o,p=e+t.integerLen,h=i.reduceRight(function(t,e,n,i){return e+=t,i[n]=e<10?e:e-10,d&&(0===i[n]&&n>=p?i.pop():d=!1),e>=10?1:0},0);h&&(i.unshift(h),t.integerLen++)}(l,d,p);var v=l.digits,y=l.integerLen,b=l.exponent,w=[];for(c=v.every(function(t){return!t});y<u;y++)v.unshift(0);for(;y<0;y++)v.unshift(0);y>0?w=v.splice(y,v.length):(w=v,v=[0]);var S=[];for(v.length>=e.lgSize&&S.unshift(v.splice(-e.lgSize,v.length).join(""));v.length>e.gSize;)S.unshift(v.splice(-e.gSize,v.length).join(""));v.length&&S.unshift(v.join("")),s=S.join(W(n,i)),w.length&&(s+=W(n,r)+w.join("")),b&&(s+=W(n,k.Exponential)+"+"+b)}else s=W(n,k.Infinity);return t<0&&!c?e.negPre+s+e.negSuf:e.posPre+s+e.posSuf}function Mt(t,e,n,i,r){var o=At(q(e,T.Currency),W(e,k.MinusSign));return o.minFrac=rt(i),o.maxFrac=o.minFrac,xt(t,o,e,k.CurrencyGroup,k.CurrencyDecimal,r).replace("¤",n).replace("¤","").trim()}function Et(t,e,n){return xt(t,At(q(e,T.Percent),W(e,k.MinusSign)),e,k.Group,k.Decimal,n,!0).replace(new RegExp("%","g"),W(e,k.PercentSign))}function Ct(t,e,n){return xt(t,At(q(e,T.Decimal),W(e,k.MinusSign)),e,k.Group,k.Decimal,n)}function At(t,e){void 0===e&&(e="-");var n={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},i=t.split(";"),r=i[0],o=i[1],a=-1!==r.indexOf(".")?r.split("."):[r.substring(0,r.lastIndexOf("0")+1),r.substring(r.lastIndexOf("0")+1)],s=a[0],c=a[1]||"";n.posPre=s.substr(0,s.indexOf("#"));for(var l=0;l<c.length;l++){var u=c.charAt(l);"0"===u?n.minFrac=n.maxFrac=l+1:"#"===u?n.maxFrac=l+1:n.posSuf+=u}var d=s.split(",");if(n.gSize=d[1]?d[1].length:0,n.lgSize=d[2]||d[1]?(d[2]||d[1]).length:0,o){var p=r.length-n.posPre.length-n.posSuf.length,h=o.indexOf("#");n.negPre=o.substr(0,h).replace(/'/g,""),n.negSuf=o.substr(h+p).replace(/'/g,"")}else n.negPre=e+n.posPre,n.negSuf=n.posSuf;return n}function Tt(t){var e=parseInt(t);if(isNaN(e))throw new Error("Invalid integer literal when parsing "+t);return e}
  1264. /**
  1265. * @license
  1266. * Copyright Google Inc. All Rights Reserved.
  1267. *
  1268. * Use of this source code is governed by an MIT-style license that can be
  1269. * found in the LICENSE file at https://angular.io/license
  1270. */var Ot=function(){};function _t(t,e,n,i){var r="="+t;if(e.indexOf(r)>-1)return r;if(r=n.getPluralCategory(t,i),e.indexOf(r)>-1)return r;if(e.indexOf("other")>-1)return"other";throw new Error('No plural message found for value "'+t+'"')}var Pt=function(t){function e(e){var n=t.call(this)||this;return n.locale=e,n}return Object(i.c)(e,t),e.prototype.getPluralCategory=function(t,e){switch(Z(e||this.locale)(t)){case O.Zero:return"zero";case O.One:return"one";case O.Two:return"two";case O.Few:return"few";case O.Many:return"many";default:return"other"}},(e=Object(i.b)([Object(i.e)(0,Object(r.Inject)(r.LOCALE_ID)),Object(i.d)("design:paramtypes",[String])],e)).ɵfac=function(t){return new(t||e)(r["ɵɵinject"](r.LOCALE_ID))},e.ɵprov=r["ɵɵdefineInjectable"]({token:e,factory:function(t){return e.ɵfac(t)}}),e}(Ot);
  1271. /**
  1272. * @license
  1273. * Copyright Google Inc. All Rights Reserved.
  1274. *
  1275. * Use of this source code is governed by an MIT-style license that can be
  1276. * found in the LICENSE file at https://angular.io/license
  1277. */function It(t,e,n){return Object(r["ɵregisterLocaleData"])(t,e,n)}
  1278. /**
  1279. * @license
  1280. * Copyright Google Inc. All Rights Reserved.
  1281. *
  1282. * Use of this source code is governed by an MIT-style license that can be
  1283. * found in the LICENSE file at https://angular.io/license
  1284. */function kt(t,e){var n,r;e=encodeURIComponent(e);try{for(var o=Object(i.j)(t.split(";")),a=o.next();!a.done;a=o.next()){var s=a.value,c=s.indexOf("="),l=Object(i.f)(-1==c?[s,""]:[s.slice(0,c),s.slice(c+1)],2),u=l[0],d=l[1];if(u.trim()===e)return decodeURIComponent(d)}}catch(t){n={error:t}}finally{try{a&&!a.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}return null}var Dt=function(){function t(t,e,n,i){this._iterableDiffers=t,this._keyValueDiffers=e,this._ngEl=n,this._renderer=i,this._iterableDiffer=null,this._keyValueDiffer=null,this._initialClasses=[],this._rawClass=null}return Object.defineProperty(t.prototype,"klass",{set:function(t){this._removeClasses(this._initialClasses),this._initialClasses="string"==typeof t?t.split(/\s+/):[],this._applyClasses(this._initialClasses),this._applyClasses(this._rawClass)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngClass",{set:function(t){this._removeClasses(this._rawClass),this._applyClasses(this._initialClasses),this._iterableDiffer=null,this._keyValueDiffer=null,this._rawClass="string"==typeof t?t.split(/\s+/):t,this._rawClass&&(Object(r["ɵisListLikeIterable"])(this._rawClass)?this._iterableDiffer=this._iterableDiffers.find(this._rawClass).create():this._keyValueDiffer=this._keyValueDiffers.find(this._rawClass).create())},enumerable:!0,configurable:!0}),t.prototype.ngDoCheck=function(){if(this._iterableDiffer){var t=this._iterableDiffer.diff(this._rawClass);t&&this._applyIterableChanges(t)}else if(this._keyValueDiffer){var e=this._keyValueDiffer.diff(this._rawClass);e&&this._applyKeyValueChanges(e)}},t.prototype._applyKeyValueChanges=function(t){var e=this;t.forEachAddedItem(function(t){return e._toggleClass(t.key,t.currentValue)}),t.forEachChangedItem(function(t){return e._toggleClass(t.key,t.currentValue)}),t.forEachRemovedItem(function(t){t.previousValue&&e._toggleClass(t.key,!1)})},t.prototype._applyIterableChanges=function(t){var e=this;t.forEachAddedItem(function(t){if("string"!=typeof t.item)throw new Error("NgClass can only toggle CSS classes expressed as strings, got "+Object(r["ɵstringify"])(t.item));e._toggleClass(t.item,!0)}),t.forEachRemovedItem(function(t){return e._toggleClass(t.item,!1)})},t.prototype._applyClasses=function(t){var e=this;t&&(Array.isArray(t)||t instanceof Set?t.forEach(function(t){return e._toggleClass(t,!0)}):Object.keys(t).forEach(function(n){return e._toggleClass(n,!!t[n])}))},t.prototype._removeClasses=function(t){var e=this;t&&(Array.isArray(t)||t instanceof Set?t.forEach(function(t){return e._toggleClass(t,!1)}):Object.keys(t).forEach(function(t){return e._toggleClass(t,!1)}))},t.prototype._toggleClass=function(t,e){var n=this;(t=t.trim())&&t.split(/\s+/g).forEach(function(t){e?n._renderer.addClass(n._ngEl.nativeElement,t):n._renderer.removeClass(n._ngEl.nativeElement,t)})},Object(i.b)([Object(r.Input)("class"),Object(i.d)("design:type",String),Object(i.d)("design:paramtypes",[String])],t.prototype,"klass",null),Object(i.b)([Object(r.Input)("ngClass"),Object(i.d)("design:type",Object),Object(i.d)("design:paramtypes",[Object])],t.prototype,"ngClass",null),(t=Object(i.b)([Object(i.d)("design:paramtypes",[r.IterableDiffers,r.KeyValueDiffers,r.ElementRef,r.Renderer2])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.IterableDiffers),r["ɵɵdirectiveInject"](r.KeyValueDiffers),r["ɵɵdirectiveInject"](r.ElementRef),r["ɵɵdirectiveInject"](r.Renderer2))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"}}),t}(),Rt=function(){function t(t){this._viewContainerRef=t,this._componentRef=null,this._moduleRef=null}return t.prototype.ngOnChanges=function(t){if(this._viewContainerRef.clear(),this._componentRef=null,this.ngComponentOutlet){var e=this.ngComponentOutletInjector||this._viewContainerRef.parentInjector;if(t.ngComponentOutletNgModuleFactory)if(this._moduleRef&&this._moduleRef.destroy(),this.ngComponentOutletNgModuleFactory){var n=e.get(r.NgModuleRef);this._moduleRef=this.ngComponentOutletNgModuleFactory.create(n.injector)}else this._moduleRef=null;var i=(this._moduleRef?this._moduleRef.componentFactoryResolver:e.get(r.ComponentFactoryResolver)).resolveComponentFactory(this.ngComponentOutlet);this._componentRef=this._viewContainerRef.createComponent(i,this._viewContainerRef.length,e,this.ngComponentOutletContent)}},t.prototype.ngOnDestroy=function(){this._moduleRef&&this._moduleRef.destroy()},Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",r.Type)],t.prototype,"ngComponentOutlet",void 0),Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",r.Injector)],t.prototype,"ngComponentOutletInjector",void 0),Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",Array)],t.prototype,"ngComponentOutletContent",void 0),Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",r.NgModuleFactory)],t.prototype,"ngComponentOutletNgModuleFactory",void 0),(t=Object(i.b)([Object(i.d)("design:paramtypes",[r.ViewContainerRef])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.ViewContainerRef))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","ngComponentOutlet",""]],inputs:{ngComponentOutlet:"ngComponentOutlet",ngComponentOutletInjector:"ngComponentOutletInjector",ngComponentOutletContent:"ngComponentOutletContent",ngComponentOutletNgModuleFactory:"ngComponentOutletNgModuleFactory"},features:[r["ɵɵNgOnChangesFeature"]]}),t}(),Lt=function(){function t(t,e,n,i){this.$implicit=t,this.ngForOf=e,this.index=n,this.count=i}return Object.defineProperty(t.prototype,"first",{get:function(){return 0===this.index},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"last",{get:function(){return this.index===this.count-1},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"even",{get:function(){return this.index%2==0},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"odd",{get:function(){return!this.even},enumerable:!0,configurable:!0}),t}(),Nt=function(){function t(t,e,n){this._viewContainer=t,this._template=e,this._differs=n,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}return Object.defineProperty(t.prototype,"ngForOf",{set:function(t){this._ngForOf=t,this._ngForOfDirty=!0},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngForTrackBy",{get:function(){return this._trackByFn},set:function(t){Object(r.isDevMode)()&&null!=t&&"function"!=typeof t&&console&&console.warn&&console.warn("trackBy must be a function, but received "+JSON.stringify(t)+". See https://angular.io/api/common/NgForOf#change-propagation for more information."),this._trackByFn=t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngForTemplate",{set:function(t){t&&(this._template=t)},enumerable:!0,configurable:!0}),t.prototype.ngDoCheck=function(){if(this._ngForOfDirty){this._ngForOfDirty=!1;var t=this._ngForOf;if(!this._differ&&t)try{this._differ=this._differs.find(t).create(this.ngForTrackBy)}catch(n){throw new Error("Cannot find a differ supporting object '"+t+"' of type '"+((e=t).name||typeof e)+"'. NgFor only supports binding to Iterables such as Arrays.")}}var e;
  1285. /**
  1286. * @license
  1287. * Copyright Google Inc. All Rights Reserved.
  1288. *
  1289. * Use of this source code is governed by an MIT-style license that can be
  1290. * found in the LICENSE file at https://angular.io/license
  1291. */if(this._differ){var n=this._differ.diff(this._ngForOf);n&&this._applyChanges(n)}},t.prototype._applyChanges=function(t){var e=this,n=[];t.forEachOperation(function(t,i,r){if(null==t.previousIndex){var o=e._viewContainer.createEmbeddedView(e._template,new Lt(null,e._ngForOf,-1,-1),null===r?void 0:r),a=new jt(t,o);n.push(a)}else null==r?e._viewContainer.remove(null===i?void 0:i):null!==i&&(o=e._viewContainer.get(i),e._viewContainer.move(o,r),a=new jt(t,o),n.push(a))});for(var i=0;i<n.length;i++)this._perViewChange(n[i].view,n[i].record);i=0;for(var r=this._viewContainer.length;i<r;i++){var o=this._viewContainer.get(i);o.context.index=i,o.context.count=r,o.context.ngForOf=this._ngForOf}t.forEachIdentityChange(function(t){e._viewContainer.get(t.currentIndex).context.$implicit=t.item})},t.prototype._perViewChange=function(t,e){t.context.$implicit=e.item},t.ngTemplateContextGuard=function(t,e){return!0},Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",Object),Object(i.d)("design:paramtypes",[Object])],t.prototype,"ngForOf",null),Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",Function),Object(i.d)("design:paramtypes",[Function])],t.prototype,"ngForTrackBy",null),Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",r.TemplateRef),Object(i.d)("design:paramtypes",[r.TemplateRef])],t.prototype,"ngForTemplate",null),(t=Object(i.b)([Object(i.d)("design:paramtypes",[r.ViewContainerRef,r.TemplateRef,r.IterableDiffers])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.ViewContainerRef),r["ɵɵdirectiveInject"](r.TemplateRef),r["ɵɵdirectiveInject"](r.IterableDiffers))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}}),t}(),jt=function(t,e){this.record=t,this.view=e
  1292. /**
  1293. * @license
  1294. * Copyright Google Inc. All Rights Reserved.
  1295. *
  1296. * Use of this source code is governed by an MIT-style license that can be
  1297. * found in the LICENSE file at https://angular.io/license
  1298. */},Vt=function(){function t(t,e){this._viewContainer=t,this._context=new Ft,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=e}return Object.defineProperty(t.prototype,"ngIf",{set:function(t){this._context.$implicit=this._context.ngIf=t,this._updateView()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngIfThen",{set:function(t){Ut("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngIfElse",{set:function(t){Ut("ngIfElse",t),this._elseTemplateRef=t,this._elseViewRef=null,this._updateView()},enumerable:!0,configurable:!0}),t.prototype._updateView=function(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))},t.ngTemplateContextGuard=function(t,e){return!0},Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",Object),Object(i.d)("design:paramtypes",[Object])],t.prototype,"ngIf",null),Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",Object),Object(i.d)("design:paramtypes",[Object])],t.prototype,"ngIfThen",null),Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",Object),Object(i.d)("design:paramtypes",[Object])],t.prototype,"ngIfElse",null),(t=Object(i.b)([Object(i.d)("design:paramtypes",[r.ViewContainerRef,r.TemplateRef])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.ViewContainerRef),r["ɵɵdirectiveInject"](r.TemplateRef))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}}),t}(),Ft=function(){this.$implicit=null,this.ngIf=null};function Ut(t,e){if(e&&!e.createEmbeddedView)throw new Error(t+" must be a TemplateRef, but received '"+Object(r["ɵstringify"])(e)+"'.")}
  1299. /**
  1300. * @license
  1301. * Copyright Google Inc. All Rights Reserved.
  1302. *
  1303. * Use of this source code is governed by an MIT-style license that can be
  1304. * found in the LICENSE file at https://angular.io/license
  1305. */var Bt=function(){function t(t,e){this._viewContainerRef=t,this._templateRef=e,this._created=!1}return t.prototype.create=function(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)},t.prototype.destroy=function(){this._created=!1,this._viewContainerRef.clear()},t.prototype.enforceState=function(t){t&&!this._created?this.create():!t&&this._created&&this.destroy()},t}(),zt=function(){function t(){this._defaultUsed=!1,this._caseCount=0,this._lastCaseCheckIndex=0,this._lastCasesMatched=!1}return Object.defineProperty(t.prototype,"ngSwitch",{set:function(t){this._ngSwitch=t,0===this._caseCount&&this._updateDefaultCases(!0)},enumerable:!0,configurable:!0}),t.prototype._addCase=function(){return this._caseCount++},t.prototype._addDefault=function(t){this._defaultViews||(this._defaultViews=[]),this._defaultViews.push(t)},t.prototype._matchCase=function(t){var e=t==this._ngSwitch;return this._lastCasesMatched=this._lastCasesMatched||e,this._lastCaseCheckIndex++,this._lastCaseCheckIndex===this._caseCount&&(this._updateDefaultCases(!this._lastCasesMatched),this._lastCaseCheckIndex=0,this._lastCasesMatched=!1),e},t.prototype._updateDefaultCases=function(t){if(this._defaultViews&&t!==this._defaultUsed){this._defaultUsed=t;for(var e=0;e<this._defaultViews.length;e++)this._defaultViews[e].enforceState(t)}},Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",Object),Object(i.d)("design:paramtypes",[Object])],t.prototype,"ngSwitch",null),t.ɵfac=function(e){return new(e||t)},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","ngSwitch",""]],inputs:{ngSwitch:"ngSwitch"}}),t}(),Gt=function(){function t(t,e,n){this.ngSwitch=n,n._addCase(),this._view=new Bt(t,e)}return t.prototype.ngDoCheck=function(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))},Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",Object)],t.prototype,"ngSwitchCase",void 0),(t=Object(i.b)([Object(i.e)(2,Object(r.Host)()),Object(i.d)("design:paramtypes",[r.ViewContainerRef,r.TemplateRef,zt])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.ViewContainerRef),r["ɵɵdirectiveInject"](r.TemplateRef),r["ɵɵdirectiveInject"](zt,1))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","ngSwitchCase",""]],inputs:{ngSwitchCase:"ngSwitchCase"}}),t}(),Ht=function(){function t(t,e,n){n._addDefault(new Bt(t,e))}return(t=Object(i.b)([Object(i.e)(2,Object(r.Host)()),Object(i.d)("design:paramtypes",[r.ViewContainerRef,r.TemplateRef,zt])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.ViewContainerRef),r["ɵɵdirectiveInject"](r.TemplateRef),r["ɵɵdirectiveInject"](zt,1))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","ngSwitchDefault",""]]}),t}(),Wt=function(){function t(t){this._localization=t,this._caseViews={}}return Object.defineProperty(t.prototype,"ngPlural",{set:function(t){this._switchValue=t,this._updateView()},enumerable:!0,configurable:!0}),t.prototype.addCase=function(t,e){this._caseViews[t]=e},t.prototype._updateView=function(){this._clearViews();var t=Object.keys(this._caseViews),e=_t(this._switchValue,t,this._localization);this._activateView(this._caseViews[e])},t.prototype._clearViews=function(){this._activeView&&this._activeView.destroy()},t.prototype._activateView=function(t){t&&(this._activeView=t,this._activeView.create())},Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",Number),Object(i.d)("design:paramtypes",[Number])],t.prototype,"ngPlural",null),(t=Object(i.b)([Object(i.d)("design:paramtypes",[Ot])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](Ot))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","ngPlural",""]],inputs:{ngPlural:"ngPlural"}}),t}(),qt=function(){function t(t,e,n,i){this.value=t;var r=!isNaN(Number(t));i.addCase(r?"="+t:t,new Bt(n,e))}return(t=Object(i.b)([Object(i.e)(0,Object(r.Attribute)("ngPluralCase")),Object(i.e)(3,Object(r.Host)()),Object(i.d)("design:paramtypes",[String,r.TemplateRef,r.ViewContainerRef,Wt])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵinjectAttribute"]("ngPluralCase"),r["ɵɵdirectiveInject"](r.TemplateRef),r["ɵɵdirectiveInject"](r.ViewContainerRef),r["ɵɵdirectiveInject"](Wt,1))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","ngPluralCase",""]]}),t}(),Kt=function(){function t(t,e,n){this._ngEl=t,this._differs=e,this._renderer=n,this._ngStyle=null,this._differ=null}return Object.defineProperty(t.prototype,"ngStyle",{set:function(t){this._ngStyle=t,!this._differ&&t&&(this._differ=this._differs.find(t).create())},enumerable:!0,configurable:!0}),t.prototype.ngDoCheck=function(){if(this._differ){var t=this._differ.diff(this._ngStyle);t&&this._applyChanges(t)}},t.prototype._setStyle=function(t,e){var n=Object(i.f)(t.split("."),2),r=n[0],o=n[1];null!=(e=null!=e&&o?""+e+o:e)?this._renderer.setStyle(this._ngEl.nativeElement,r,e):this._renderer.removeStyle(this._ngEl.nativeElement,r)},t.prototype._applyChanges=function(t){var e=this;t.forEachRemovedItem(function(t){return e._setStyle(t.key,null)}),t.forEachAddedItem(function(t){return e._setStyle(t.key,t.currentValue)}),t.forEachChangedItem(function(t){return e._setStyle(t.key,t.currentValue)})},Object(i.b)([Object(r.Input)("ngStyle"),Object(i.d)("design:type",Object),Object(i.d)("design:paramtypes",[Object])],t.prototype,"ngStyle",null),(t=Object(i.b)([Object(i.d)("design:paramtypes",[r.ElementRef,r.KeyValueDiffers,r.Renderer2])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.ElementRef),r["ɵɵdirectiveInject"](r.KeyValueDiffers),r["ɵɵdirectiveInject"](r.Renderer2))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"}}),t}(),Xt=function(){function t(t){this._viewContainerRef=t,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null}return t.prototype.ngOnChanges=function(t){if(this._shouldRecreateView(t)){var e=this._viewContainerRef;this._viewRef&&e.remove(e.indexOf(this._viewRef)),this._viewRef=this.ngTemplateOutlet?e.createEmbeddedView(this.ngTemplateOutlet,this.ngTemplateOutletContext):null}else this._viewRef&&this.ngTemplateOutletContext&&this._updateExistingContext(this.ngTemplateOutletContext)},t.prototype._shouldRecreateView=function(t){var e=t.ngTemplateOutletContext;return!!t.ngTemplateOutlet||e&&this._hasContextShapeChanged(e)},t.prototype._hasContextShapeChanged=function(t){var e,n,r=Object.keys(t.previousValue||{}),o=Object.keys(t.currentValue||{});if(r.length===o.length){try{for(var a=Object(i.j)(o),s=a.next();!s.done;s=a.next()){var c=s.value;if(-1===r.indexOf(c))return!0}}catch(t){e={error:t}}finally{try{s&&!s.done&&(n=a.return)&&n.call(a)}finally{if(e)throw e.error}}return!1}return!0},t.prototype._updateExistingContext=function(t){var e,n;try{for(var r=Object(i.j)(Object.keys(t)),o=r.next();!o.done;o=r.next()){var a=o.value;this._viewRef.context[a]=this.ngTemplateOutletContext[a]}}catch(t){e={error:t}}finally{try{o&&!o.done&&(n=r.return)&&n.call(r)}finally{if(e)throw e.error}}},Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",Object)],t.prototype,"ngTemplateOutletContext",void 0),Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",Object)],t.prototype,"ngTemplateOutlet",void 0),(t=Object(i.b)([Object(i.d)("design:paramtypes",[r.ViewContainerRef])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.ViewContainerRef))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet"},features:[r["ɵɵNgOnChangesFeature"]]}),t}(),Yt=[Dt,Rt,Nt,Vt,Xt,Kt,zt,Gt,Ht,Wt,qt];
  1306. /**
  1307. * @license
  1308. * Copyright Google Inc. All Rights Reserved.
  1309. *
  1310. * Use of this source code is governed by an MIT-style license that can be
  1311. * found in the LICENSE file at https://angular.io/license
  1312. */function Zt(t,e){return Error("InvalidPipeArgument: '"+e+"' for pipe '"+Object(r["ɵstringify"])(t)+"'")}
  1313. /**
  1314. * @license
  1315. * Copyright Google Inc. All Rights Reserved.
  1316. *
  1317. * Use of this source code is governed by an MIT-style license that can be
  1318. * found in the LICENSE file at https://angular.io/license
  1319. */var Jt=function(){function t(){}return t.prototype.createSubscription=function(t,e){return t.subscribe({next:e,error:function(t){throw t}})},t.prototype.dispose=function(t){t.unsubscribe()},t.prototype.onDestroy=function(t){t.unsubscribe()},t}(),Qt=new(function(){function t(){}return t.prototype.createSubscription=function(t,e){return t.then(e,function(t){throw t})},t.prototype.dispose=function(t){},t.prototype.onDestroy=function(t){},t}()),$t=new Jt,te=function(){function t(t){this._ref=t,this._latestValue=null,this._latestReturnedValue=null,this._subscription=null,this._obj=null,this._strategy=null}var e;return e=t,t.prototype.ngOnDestroy=function(){this._subscription&&this._dispose()},t.prototype.transform=function(t){return this._obj?t!==this._obj?(this._dispose(),this.transform(t)):Object(r["ɵlooseIdentical"])(this._latestValue,this._latestReturnedValue)?this._latestReturnedValue:(this._latestReturnedValue=this._latestValue,r.WrappedValue.wrap(this._latestValue)):(t&&this._subscribe(t),this._latestReturnedValue=this._latestValue,this._latestValue)},t.prototype._subscribe=function(t){var e=this;this._obj=t,this._strategy=this._selectStrategy(t),this._subscription=this._strategy.createSubscription(t,function(n){return e._updateLatestValue(t,n)})},t.prototype._selectStrategy=function(t){if(Object(r["ɵisPromise"])(t))return Qt;if(Object(r["ɵisObservable"])(t))return $t;throw Zt(e,t)},t.prototype._dispose=function(){this._strategy.dispose(this._subscription),this._latestValue=null,this._latestReturnedValue=null,this._subscription=null,this._obj=null},t.prototype._updateLatestValue=function(t,e){t===this._obj&&(this._latestValue=e,this._ref.markForCheck())},(t=e=Object(i.b)([Object(i.d)("design:paramtypes",[r.ChangeDetectorRef])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵinjectPipeChangeDetectorRef"]())},t.ɵpipe=r["ɵɵdefinePipe"]({name:"async",type:t,pure:!1}),t}(),ee=function(){function t(){}var e;return e=t,t.prototype.transform=function(t){if(!t)return t;if("string"!=typeof t)throw Zt(e,t);return t.toLowerCase()},t.ɵfac=function(e){return new(e||t)},t.ɵpipe=r["ɵɵdefinePipe"]({name:"lowercase",type:t,pure:!0}),t}(),ne=/(?:[A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D])\S*/g,ie=function(){function t(){}var e;return e=t,t.prototype.transform=function(t){if(!t)return t;if("string"!=typeof t)throw Zt(e,t);return t.replace(ne,function(t){return t[0].toUpperCase()+t.substr(1).toLowerCase()})},t.ɵfac=function(e){return new(e||t)},t.ɵpipe=r["ɵɵdefinePipe"]({name:"titlecase",type:t,pure:!0}),t}(),re=function(){function t(){}var e;return e=t,t.prototype.transform=function(t){if(!t)return t;if("string"!=typeof t)throw Zt(e,t);return t.toUpperCase()},t.ɵfac=function(e){return new(e||t)},t.ɵpipe=r["ɵɵdefinePipe"]({name:"uppercase",type:t,pure:!0}),t}(),oe=function(){function t(t){this.locale=t}var e;return e=t,t.prototype.transform=function(t,n,i,r){if(void 0===n&&(n="mediumDate"),null==t||""===t||t!=t)return null;try{return dt(t,n,r||this.locale,i)}catch(t){throw Zt(e,t.message)}},(t=e=Object(i.b)([Object(i.e)(0,Object(r.Inject)(r.LOCALE_ID)),Object(i.d)("design:paramtypes",[String])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.LOCALE_ID))},t.ɵpipe=r["ɵɵdefinePipe"]({name:"date",type:t,pure:!0}),t}(),ae=/#/g,se=function(){function t(t){this._localization=t}var e;return e=t,t.prototype.transform=function(t,n,i){if(null==t)return"";if("object"!=typeof n||null===n)throw Zt(e,n);return n[_t(t,Object.keys(n),this._localization,i)].replace(ae,t.toString())},(t=e=Object(i.b)([Object(i.d)("design:paramtypes",[Ot])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](Ot))},t.ɵpipe=r["ɵɵdefinePipe"]({name:"i18nPlural",type:t,pure:!0}),t}(),ce=function(){function t(){}var e;return e=t,t.prototype.transform=function(t,n){if(null==t)return"";if("object"!=typeof n||"string"!=typeof t)throw Zt(e,n);return n.hasOwnProperty(t)?n[t]:n.hasOwnProperty("other")?n.other:""},t.ɵfac=function(e){return new(e||t)},t.ɵpipe=r["ɵɵdefinePipe"]({name:"i18nSelect",type:t,pure:!0}),t}(),le=function(){function t(){}return t.prototype.transform=function(t){return JSON.stringify(t,null,2)},t.ɵfac=function(e){return new(e||t)},t.ɵpipe=r["ɵɵdefinePipe"]({name:"json",type:t,pure:!1}),t}(),ue=function(){function t(t){this.differs=t,this.keyValues=[]}return t.prototype.transform=function(t,e){var n=this;if(void 0===e&&(e=de),!t||!(t instanceof Map)&&"object"!=typeof t)return null;this.differ||(this.differ=this.differs.find(t).create());var i=this.differ.diff(t);return i&&(this.keyValues=[],i.forEachItem(function(t){n.keyValues.push({key:t.key,value:t.currentValue})}),this.keyValues.sort(e)),this.keyValues},(t=Object(i.b)([Object(i.d)("design:paramtypes",[r.KeyValueDiffers])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.KeyValueDiffers))},t.ɵpipe=r["ɵɵdefinePipe"]({name:"keyvalue",type:t,pure:!1}),t}();function de(t,e){var n=t.key,i=e.key;if(n===i)return 0;if(void 0===n)return 1;if(void 0===i)return-1;if(null===n)return 1;if(null===i)return-1;if("string"==typeof n&&"string"==typeof i)return n<i?-1:1;if("number"==typeof n&&"number"==typeof i)return n-i;if("boolean"==typeof n&&"boolean"==typeof i)return n<i?-1:1;var r=String(n),o=String(i);return r==o?0:r<o?-1:1}
  1320. /**
  1321. * @license
  1322. * Copyright Google Inc. All Rights Reserved.
  1323. *
  1324. * Use of this source code is governed by an MIT-style license that can be
  1325. * found in the LICENSE file at https://angular.io/license
  1326. */var pe=function(){function t(t){this._locale=t}var e;return e=t,t.prototype.transform=function(t,n,i){if(ge(t))return null;i=i||this._locale;try{return Ct(me(t),i,n)}catch(t){throw Zt(e,t.message)}},(t=e=Object(i.b)([Object(i.e)(0,Object(r.Inject)(r.LOCALE_ID)),Object(i.d)("design:paramtypes",[String])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.LOCALE_ID))},t.ɵpipe=r["ɵɵdefinePipe"]({name:"number",type:t,pure:!0}),t}(),he=function(){function t(t){this._locale=t}var e;return e=t,t.prototype.transform=function(t,n,i){if(ge(t))return null;i=i||this._locale;try{return Et(me(t),i,n)}catch(t){throw Zt(e,t.message)}},(t=e=Object(i.b)([Object(i.e)(0,Object(r.Inject)(r.LOCALE_ID)),Object(i.d)("design:paramtypes",[String])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.LOCALE_ID))},t.ɵpipe=r["ɵɵdefinePipe"]({name:"percent",type:t,pure:!0}),t}(),fe=function(){function t(t,e){void 0===e&&(e="USD"),this._locale=t,this._defaultCurrencyCode=e}var e;return e=t,t.prototype.transform=function(t,n,i,r,o){if(void 0===i&&(i="symbol"),ge(t))return null;o=o||this._locale,"boolean"==typeof i&&(console&&console.warn&&console.warn('Warning: the currency pipe has been changed in Angular v5. The symbolDisplay option (third parameter) is now a string instead of a boolean. The accepted values are "code", "symbol" or "symbol-narrow".'),i=i?"symbol":"code");var a=n||this._defaultCurrencyCode;"code"!==i&&(a="symbol"===i||"symbol-narrow"===i?it(a,"symbol"===i?"wide":"narrow",o):i);try{return Mt(me(t),o,a,n,r)}catch(t){throw Zt(e,t.message)}},(t=e=Object(i.b)([Object(i.e)(0,Object(r.Inject)(r.LOCALE_ID)),Object(i.e)(1,Object(r.Inject)(r.DEFAULT_CURRENCY_CODE)),Object(i.d)("design:paramtypes",[String,String])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.LOCALE_ID),r["ɵɵdirectiveInject"](r.DEFAULT_CURRENCY_CODE))},t.ɵpipe=r["ɵɵdefinePipe"]({name:"currency",type:t,pure:!0}),t}();function ge(t){return null==t||""===t||t!=t}function me(t){if("string"==typeof t&&!isNaN(Number(t)-parseFloat(t)))return Number(t);if("number"!=typeof t)throw new Error(t+" is not a number");return t}
  1327. /**
  1328. * @license
  1329. * Copyright Google Inc. All Rights Reserved.
  1330. *
  1331. * Use of this source code is governed by an MIT-style license that can be
  1332. * found in the LICENSE file at https://angular.io/license
  1333. */var ve=function(){function t(){}var e;return e=t,t.prototype.transform=function(t,n,i){if(null==t)return t;if(!this.supports(t))throw Zt(e,t);return t.slice(n,i)},t.prototype.supports=function(t){return"string"==typeof t||Array.isArray(t)},t.ɵfac=function(e){return new(e||t)},t.ɵpipe=r["ɵɵdefinePipe"]({name:"slice",type:t,pure:!1}),t}(),ye=[te,re,ee,le,ve,pe,he,ie,fe,oe,se,ce,ue],be=function(){function t(){}return t.ɵmod=r["ɵɵdefineNgModule"]({type:t}),t.ɵinj=r["ɵɵdefineInjector"]({factory:function(e){return new(e||t)},providers:[{provide:Ot,useClass:Pt}]}),("undefined"==typeof ngJitMode||ngJitMode)&&r["ɵɵsetNgModuleScope"](t,{declarations:[Dt,Rt,Nt,Vt,Xt,Kt,zt,Gt,Ht,Wt,qt,te,re,ee,le,ve,pe,he,ie,fe,oe,se,ce,ue],exports:[Dt,Rt,Nt,Vt,Xt,Kt,zt,Gt,Ht,Wt,qt,te,re,ee,le,ve,pe,he,ie,fe,oe,se,ce,ue]}),t}(),we="browser",Se="server",xe="browserWorkerApp",Me="browserWorkerUi";
  1334. /**
  1335. * @license
  1336. * Copyright Google Inc. All Rights Reserved.
  1337. *
  1338. * Use of this source code is governed by an MIT-style license that can be
  1339. * found in the LICENSE file at https://angular.io/license
  1340. */function Ee(t){return t===we}function Ce(t){return t===Se}function Ae(t){return t===xe}function Te(t){return t===Me}
  1341. /**
  1342. * @license
  1343. * Copyright Google Inc. All Rights Reserved.
  1344. *
  1345. * Use of this source code is governed by an MIT-style license that can be
  1346. * found in the LICENSE file at https://angular.io/license
  1347. */var Oe=new r.Version("9.1.9"),_e=function(){function t(){}return t.ɵprov=Object(r["ɵɵdefineInjectable"])({token:t,providedIn:"root",factory:function(){return new Pe(Object(r["ɵɵinject"])(l),window,Object(r["ɵɵinject"])(r.ErrorHandler))}}),t}(),Pe=function(){function t(t,e,n){this.document=t,this.window=e,this.errorHandler=n,this.offset=function(){return[0,0]}}return t.prototype.setOffset=function(t){Array.isArray(t)?this.offset=function(){return t}:this.offset=t},t.prototype.getScrollPosition=function(){return this.supportScrollRestoration()?[this.window.scrollX,this.window.scrollY]:[0,0]},t.prototype.scrollToPosition=function(t){this.supportScrollRestoration()&&this.window.scrollTo(t[0],t[1])},t.prototype.scrollToAnchor=function(t){if(this.supportScrollRestoration()){t=this.window.CSS&&this.window.CSS.escape?this.window.CSS.escape(t):t.replace(/(\"|\'\ |:|\.|\[|\]|,|=)/g,"\\$1");try{var e=this.document.querySelector("#"+t);if(e)return void this.scrollToElement(e);var n=this.document.querySelector("[name='"+t+"']");if(n)return void this.scrollToElement(n)}catch(t){this.errorHandler.handleError(t)}}},t.prototype.setHistoryScrollRestoration=function(t){if(this.supportScrollRestoration()){var e=this.window.history;e&&e.scrollRestoration&&(e.scrollRestoration=t)}},t.prototype.scrollToElement=function(t){var e=t.getBoundingClientRect(),n=e.left+this.window.pageXOffset,i=e.top+this.window.pageYOffset,r=this.offset();this.window.scrollTo(n-r[0],i-r[1])},t.prototype.supportScrollRestoration=function(){try{return!!this.window&&!!this.window.scrollTo}catch(t){return!1}},t}(),Ie=function(){function t(){}return t.prototype.setOffset=function(t){},t.prototype.getScrollPosition=function(){return[0,0]},t.prototype.scrollToPosition=function(t){},t.prototype.scrollToAnchor=function(t){},t.prototype.setHistoryScrollRestoration=function(t){},t}();
  1348. /**
  1349. * @license
  1350. * Copyright Google Inc. All Rights Reserved.
  1351. *
  1352. * Use of this source code is governed by an MIT-style license that can be
  1353. * found in the LICENSE file at https://angular.io/license
  1354. */},function(t,e,n){"use strict";var i;function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function o(t){return(o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function a(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&function(t,e){(Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}(t,e)}function c(t){var e=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch(t){return!1}}();return function(){var n,i=u(t);if(e){var r=u(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return function(t,e){return!e||"object"!==o(e)&&"function"!=typeof e?l(t):e}(this,n)}}function l(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function u(t){return(u=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}n.r(e),n.d(e,"ACESFilmicToneMapping",function(){return ht}),n.d(e,"AddEquation",function(){return L}),n.d(e,"AddOperation",function(){return st}),n.d(e,"AdditiveBlending",function(){return I}),n.d(e,"AlphaFormat",function(){return Kt}),n.d(e,"AlwaysDepth",function(){return Q}),n.d(e,"AlwaysStencilFunc",function(){return Dn}),n.d(e,"AmbientLight",function(){return nd}),n.d(e,"AmbientLightProbe",function(){return Cd}),n.d(e,"AnimationClip",function(){return lu}),n.d(e,"AnimationLoader",function(){return vu}),n.d(e,"AnimationMixer",function(){return ep}),n.d(e,"AnimationObjectGroup",function(){return $d}),n.d(e,"AnimationUtils",function(){return Zl}),n.d(e,"ArcCurve",function(){return Cu}),n.d(e,"ArrayCamera",function(){return Ss}),n.d(e,"ArrowHelper",function(){return Gp}),n.d(e,"Audio",function(){return Ld}),n.d(e,"AudioAnalyser",function(){return Bd}),n.d(e,"AudioContext",function(){return wd}),n.d(e,"AudioListener",function(){return Rd}),n.d(e,"AudioLoader",function(){return Sd}),n.d(e,"AxesHelper",function(){return Hp}),n.d(e,"AxisHelper",function(){return Yh}),n.d(e,"BackSide",function(){return C}),n.d(e,"BasicDepthPacking",function(){return fn}),n.d(e,"BasicShadowMap",function(){return w}),n.d(e,"BinaryTextureLoader",function(){return tf}),n.d(e,"Bone",function(){return $s}),n.d(e,"BooleanKeyframeTrack",function(){return nu}),n.d(e,"BoundingBoxHelper",function(){return Zh}),n.d(e,"Box2",function(){return up}),n.d(e,"Box3",function(){return qi}),n.d(e,"Box3Helper",function(){return Vp}),n.d(e,"BoxBufferGeometry",function(){return Eo}),n.d(e,"BoxGeometry",function(){return Mo}),n.d(e,"BoxHelper",function(){return jp}),n.d(e,"BufferAttribute",function(){return Ir}),n.d(e,"BufferGeometry",function(){return Zr}),n.d(e,"BufferGeometryLoader",function(){return cd}),n.d(e,"ByteType",function(){return Nt}),n.d(e,"Cache",function(){return du}),n.d(e,"Camera",function(){return _o}),n.d(e,"CameraHelper",function(){return Rp}),n.d(e,"CanvasRenderer",function(){return rf}),n.d(e,"CanvasTexture",function(){return Cc}),n.d(e,"CatmullRomCurve3",function(){return Iu}),n.d(e,"CineonToneMapping",function(){return pt}),n.d(e,"CircleBufferGeometry",function(){return jl}),n.d(e,"CircleGeometry",function(){return Nl}),n.d(e,"ClampToEdgeWrapping",function(){return Mt}),n.d(e,"Clock",function(){return _d}),n.d(e,"ClosedSplineCurve3",function(){return qh}),n.d(e,"Color",function(){return xr}),n.d(e,"ColorKeyframeTrack",function(){return iu}),n.d(e,"CompressedTexture",function(){return Ec}),n.d(e,"CompressedTextureLoader",function(){return yu}),n.d(e,"ConeBufferGeometry",function(){return Ll}),n.d(e,"ConeGeometry",function(){return Rl}),n.d(e,"CubeCamera",function(){return Io}),n.d(e,"CubeGeometry",function(){return Mo}),n.d(e,"CubeReflectionMapping",function(){return gt}),n.d(e,"CubeRefractionMapping",function(){return mt}),n.d(e,"CubeTexture",function(){return Wo}),n.d(e,"CubeTextureLoader",function(){return Su}),n.d(e,"CubeUVReflectionMapping",function(){return wt}),n.d(e,"CubeUVRefractionMapping",function(){return St}),n.d(e,"CubicBezierCurve",function(){return Lu}),n.d(e,"CubicBezierCurve3",function(){return Nu}),n.d(e,"CubicInterpolant",function(){return Ql}),n.d(e,"CullFaceBack",function(){return g}),n.d(e,"CullFaceFront",function(){return m}),n.d(e,"CullFaceFrontBack",function(){return v}),n.d(e,"CullFaceNone",function(){return f}),n.d(e,"Curve",function(){return Mu}),n.d(e,"CurvePath",function(){return Gu}),n.d(e,"CustomBlending",function(){return R}),n.d(e,"CylinderBufferGeometry",function(){return Dl}),n.d(e,"CylinderGeometry",function(){return kl}),n.d(e,"Cylindrical",function(){return cp}),n.d(e,"DataTexture",function(){return Do}),n.d(e,"DataTexture2DArray",function(){return qo}),n.d(e,"DataTexture3D",function(){return Ko}),n.d(e,"DataTextureLoader",function(){return bu}),n.d(e,"DecrementStencilOp",function(){return xn}),n.d(e,"DecrementWrapStencilOp",function(){return En}),n.d(e,"DefaultLoadingManager",function(){return hu}),n.d(e,"DepthFormat",function(){return $t}),n.d(e,"DepthStencilFormat",function(){return te}),n.d(e,"DepthTexture",function(){return Ac}),n.d(e,"DirectionalLight",function(){return ed}),n.d(e,"DirectionalLightHelper",function(){return Ip}),n.d(e,"DirectionalLightShadow",function(){return td}),n.d(e,"DiscreteInterpolant",function(){return tu}),n.d(e,"DodecahedronBufferGeometry",function(){return Fc}),n.d(e,"DodecahedronGeometry",function(){return Vc}),n.d(e,"DoubleSide",function(){return A}),n.d(e,"DstAlphaFactor",function(){return q}),n.d(e,"DstColorFactor",function(){return X}),n.d(e,"DynamicBufferAttribute",function(){return Nh}),n.d(e,"DynamicCopyUsage",function(){return Bn}),n.d(e,"DynamicDrawUsage",function(){return Ln}),n.d(e,"DynamicReadUsage",function(){return Vn}),n.d(e,"EdgesGeometry",function(){return Il}),n.d(e,"EdgesHelper",function(){return Jh}),n.d(e,"EllipseCurve",function(){return Eu}),n.d(e,"EqualDepth",function(){return et}),n.d(e,"EqualStencilFunc",function(){return On}),n.d(e,"EquirectangularReflectionMapping",function(){return vt}),n.d(e,"EquirectangularRefractionMapping",function(){return yt}),n.d(e,"Euler",function(){return mi}),n.d(e,"EventDispatcher",function(){return Gn}),n.d(e,"ExtrudeBufferGeometry",function(){return vl}),n.d(e,"ExtrudeGeometry",function(){return ml}),n.d(e,"Face3",function(){return Ar}),n.d(e,"Face4",function(){return Sh}),n.d(e,"FaceColors",function(){return Ch}),n.d(e,"FileLoader",function(){return mu}),n.d(e,"FlatShading",function(){return T}),n.d(e,"Float32Attribute",function(){return Hh}),n.d(e,"Float32BufferAttribute",function(){return Fr}),n.d(e,"Float64Attribute",function(){return Wh}),n.d(e,"Float64BufferAttribute",function(){return Ur}),n.d(e,"FloatType",function(){return Bt}),n.d(e,"Fog",function(){return As}),n.d(e,"FogExp2",function(){return Cs}),n.d(e,"Font",function(){return vd}),n.d(e,"FontLoader",function(){return bd}),n.d(e,"FrontFaceDirectionCCW",function(){return b}),n.d(e,"FrontFaceDirectionCW",function(){return y}),n.d(e,"FrontSide",function(){return E}),n.d(e,"Frustum",function(){return No}),n.d(e,"GammaEncoding",function(){return cn}),n.d(e,"Geometry",function(){return xo}),n.d(e,"GeometryUtils",function(){return nf}),n.d(e,"GreaterDepth",function(){return it}),n.d(e,"GreaterEqualDepth",function(){return nt}),n.d(e,"GreaterEqualStencilFunc",function(){return kn}),n.d(e,"GreaterStencilFunc",function(){return Pn}),n.d(e,"GridHelper",function(){return Ap}),n.d(e,"Group",function(){return xs}),n.d(e,"HalfFloatType",function(){return zt}),n.d(e,"HemisphereLight",function(){return Ku}),n.d(e,"HemisphereLightHelper",function(){return Cp}),n.d(e,"HemisphereLightProbe",function(){return Ed}),n.d(e,"IcosahedronBufferGeometry",function(){return jc}),n.d(e,"IcosahedronGeometry",function(){return Nc}),n.d(e,"ImageBitmapLoader",function(){return gd}),n.d(e,"ImageLoader",function(){return wu}),n.d(e,"ImageUtils",function(){return Zn}),n.d(e,"ImmediateRenderObject",function(){return fp}),n.d(e,"IncrementStencilOp",function(){return Sn}),n.d(e,"IncrementWrapStencilOp",function(){return Mn}),n.d(e,"InstancedBufferAttribute",function(){return sd}),n.d(e,"InstancedBufferGeometry",function(){return ad}),n.d(e,"InstancedInterleavedBuffer",function(){return ip}),n.d(e,"InstancedMesh",function(){return rc}),n.d(e,"Int16Attribute",function(){return Uh}),n.d(e,"Int16BufferAttribute",function(){return Lr}),n.d(e,"Int32Attribute",function(){return zh}),n.d(e,"Int32BufferAttribute",function(){return jr}),n.d(e,"Int8Attribute",function(){return jh}),n.d(e,"Int8BufferAttribute",function(){return kr}),n.d(e,"IntType",function(){return Ft}),n.d(e,"InterleavedBuffer",function(){return Ts}),n.d(e,"InterleavedBufferAttribute",function(){return Ps}),n.d(e,"Interpolant",function(){return Jl}),n.d(e,"InterpolateDiscrete",function(){return Ze}),n.d(e,"InterpolateLinear",function(){return Je}),n.d(e,"InterpolateSmooth",function(){return Qe}),n.d(e,"InvertStencilOp",function(){return Cn}),n.d(e,"JSONLoader",function(){return of}),n.d(e,"KeepStencilOp",function(){return bn}),n.d(e,"KeyframeTrack",function(){return eu}),n.d(e,"LOD",function(){return Xs}),n.d(e,"LatheBufferGeometry",function(){return Tl}),n.d(e,"LatheGeometry",function(){return Al}),n.d(e,"Layers",function(){return vi}),n.d(e,"LensFlare",function(){return sf}),n.d(e,"LessDepth",function(){return $}),n.d(e,"LessEqualDepth",function(){return tt}),n.d(e,"LessEqualStencilFunc",function(){return _n}),n.d(e,"LessStencilFunc",function(){return Tn}),n.d(e,"Light",function(){return qu}),n.d(e,"LightProbe",function(){return Md}),n.d(e,"LightShadow",function(){return Xu}),n.d(e,"Line",function(){return dc}),n.d(e,"Line3",function(){return hp}),n.d(e,"LineBasicMaterial",function(){return oc}),n.d(e,"LineCurve",function(){return ju}),n.d(e,"LineCurve3",function(){return Vu}),n.d(e,"LineDashedMaterial",function(){return Xl}),n.d(e,"LineLoop",function(){return gc}),n.d(e,"LinePieces",function(){return Mh}),n.d(e,"LineSegments",function(){return fc}),n.d(e,"LineStrip",function(){return xh}),n.d(e,"LinearEncoding",function(){return an}),n.d(e,"LinearFilter",function(){return Pt}),n.d(e,"LinearInterpolant",function(){return $l}),n.d(e,"LinearMipMapLinearFilter",function(){return Rt}),n.d(e,"LinearMipMapNearestFilter",function(){return kt}),n.d(e,"LinearMipmapLinearFilter",function(){return Dt}),n.d(e,"LinearMipmapNearestFilter",function(){return It}),n.d(e,"LinearToneMapping",function(){return lt}),n.d(e,"Loader",function(){return fu}),n.d(e,"LoaderUtils",function(){return od}),n.d(e,"LoadingManager",function(){return pu}),n.d(e,"LogLuvEncoding",function(){return un}),n.d(e,"LoopOnce",function(){return Ke}),n.d(e,"LoopPingPong",function(){return Ye}),n.d(e,"LoopRepeat",function(){return Xe}),n.d(e,"LuminanceAlphaFormat",function(){return Jt}),n.d(e,"LuminanceFormat",function(){return Zt}),n.d(e,"MOUSE",function(){return p}),n.d(e,"Material",function(){return Or}),n.d(e,"MaterialLoader",function(){return rd}),n.d(e,"Math",function(){return Kn}),n.d(e,"MathUtils",function(){return Kn}),n.d(e,"Matrix3",function(){return Yn}),n.d(e,"Matrix4",function(){return hi}),n.d(e,"MaxEquation",function(){return F}),n.d(e,"Mesh",function(){return go}),n.d(e,"MeshBasicMaterial",function(){return _r}),n.d(e,"MeshDepthMaterial",function(){return gs}),n.d(e,"MeshDistanceMaterial",function(){return ms}),n.d(e,"MeshFaceMaterial",function(){return Th}),n.d(e,"MeshLambertMaterial",function(){return ql}),n.d(e,"MeshMatcapMaterial",function(){return Kl}),n.d(e,"MeshNormalMaterial",function(){return Wl}),n.d(e,"MeshPhongMaterial",function(){return Gl}),n.d(e,"MeshPhysicalMaterial",function(){return zl}),n.d(e,"MeshStandardMaterial",function(){return Bl}),n.d(e,"MeshToonMaterial",function(){return Hl}),n.d(e,"MinEquation",function(){return V}),n.d(e,"MirroredRepeatWrapping",function(){return Et}),n.d(e,"MixOperation",function(){return at}),n.d(e,"MultiMaterial",function(){return Oh}),n.d(e,"MultiplyBlending",function(){return D}),n.d(e,"MultiplyOperation",function(){return ot}),n.d(e,"NearestFilter",function(){return Ct}),n.d(e,"NearestMipMapLinearFilter",function(){return _t}),n.d(e,"NearestMipMapNearestFilter",function(){return Tt}),n.d(e,"NearestMipmapLinearFilter",function(){return Ot}),n.d(e,"NearestMipmapNearestFilter",function(){return At}),n.d(e,"NeverDepth",function(){return J}),n.d(e,"NeverStencilFunc",function(){return An}),n.d(e,"NoBlending",function(){return _}),n.d(e,"NoColors",function(){return Eh}),n.d(e,"NoToneMapping",function(){return ct}),n.d(e,"NormalBlending",function(){return P}),n.d(e,"NotEqualDepth",function(){return rt}),n.d(e,"NotEqualStencilFunc",function(){return In}),n.d(e,"NumberKeyframeTrack",function(){return ru}),n.d(e,"Object3D",function(){return Ii}),n.d(e,"ObjectLoader",function(){return ud}),n.d(e,"ObjectSpaceNormalMap",function(){return vn}),n.d(e,"OctahedronBufferGeometry",function(){return Lc}),n.d(e,"OctahedronGeometry",function(){return Rc}),n.d(e,"OneFactor",function(){return B}),n.d(e,"OneMinusDstAlphaFactor",function(){return K}),n.d(e,"OneMinusDstColorFactor",function(){return Y}),n.d(e,"OneMinusSrcAlphaFactor",function(){return W}),n.d(e,"OneMinusSrcColorFactor",function(){return G}),n.d(e,"OrthographicCamera",function(){return $u}),n.d(e,"PCFShadowMap",function(){return S}),n.d(e,"PCFSoftShadowMap",function(){return x}),n.d(e,"PMREMGenerator",function(){return uh}),n.d(e,"ParametricBufferGeometry",function(){return _c}),n.d(e,"ParametricGeometry",function(){return Oc}),n.d(e,"Particle",function(){return Ph}),n.d(e,"ParticleBasicMaterial",function(){return Dh}),n.d(e,"ParticleSystem",function(){return Ih}),n.d(e,"ParticleSystemMaterial",function(){return Rh}),n.d(e,"Path",function(){return Hu}),n.d(e,"PerspectiveCamera",function(){return Po}),n.d(e,"Plane",function(){return sr}),n.d(e,"PlaneBufferGeometry",function(){return Uo}),n.d(e,"PlaneGeometry",function(){return Fo}),n.d(e,"PlaneHelper",function(){return Fp}),n.d(e,"PointCloud",function(){return _h}),n.d(e,"PointCloudMaterial",function(){return kh}),n.d(e,"PointLight",function(){return Qu}),n.d(e,"PointLightHelper",function(){return Sp}),n.d(e,"Points",function(){return Sc}),n.d(e,"PointsMaterial",function(){return mc}),n.d(e,"PolarGridHelper",function(){return Tp}),n.d(e,"PolyhedronBufferGeometry",function(){return Ic}),n.d(e,"PolyhedronGeometry",function(){return Pc}),n.d(e,"PositionalAudio",function(){return Ud}),n.d(e,"PropertyBinding",function(){return Qd}),n.d(e,"PropertyMixer",function(){return zd}),n.d(e,"QuadraticBezierCurve",function(){return Fu}),n.d(e,"QuadraticBezierCurve3",function(){return Uu}),n.d(e,"Quaternion",function(){return ni}),n.d(e,"QuaternionKeyframeTrack",function(){return au}),n.d(e,"QuaternionLinearInterpolant",function(){return ou}),n.d(e,"REVISION",function(){return d}),n.d(e,"RGBADepthPacking",function(){return gn}),n.d(e,"RGBAFormat",function(){return Yt}),n.d(e,"RGBAIntegerFormat",function(){return ae}),n.d(e,"RGBA_ASTC_10x10_Format",function(){return _e}),n.d(e,"RGBA_ASTC_10x5_Format",function(){return Ae}),n.d(e,"RGBA_ASTC_10x6_Format",function(){return Te}),n.d(e,"RGBA_ASTC_10x8_Format",function(){return Oe}),n.d(e,"RGBA_ASTC_12x10_Format",function(){return Pe}),n.d(e,"RGBA_ASTC_12x12_Format",function(){return Ie}),n.d(e,"RGBA_ASTC_4x4_Format",function(){return ye}),n.d(e,"RGBA_ASTC_5x4_Format",function(){return be}),n.d(e,"RGBA_ASTC_5x5_Format",function(){return we}),n.d(e,"RGBA_ASTC_6x5_Format",function(){return Se}),n.d(e,"RGBA_ASTC_6x6_Format",function(){return xe}),n.d(e,"RGBA_ASTC_8x5_Format",function(){return Me}),n.d(e,"RGBA_ASTC_8x6_Format",function(){return Ee}),n.d(e,"RGBA_ASTC_8x8_Format",function(){return Ce}),n.d(e,"RGBA_BPTC_Format",function(){return ke}),n.d(e,"RGBA_ETC2_EAC_Format",function(){return ve}),n.d(e,"RGBA_PVRTC_2BPPV1_Format",function(){return fe}),n.d(e,"RGBA_PVRTC_4BPPV1_Format",function(){return he}),n.d(e,"RGBA_S3TC_DXT1_Format",function(){return ce}),n.d(e,"RGBA_S3TC_DXT3_Format",function(){return le}),n.d(e,"RGBA_S3TC_DXT5_Format",function(){return ue}),n.d(e,"RGBDEncoding",function(){return hn}),n.d(e,"RGBEEncoding",function(){return ln}),n.d(e,"RGBEFormat",function(){return Qt}),n.d(e,"RGBFormat",function(){return Xt}),n.d(e,"RGBIntegerFormat",function(){return oe}),n.d(e,"RGBM16Encoding",function(){return pn}),n.d(e,"RGBM7Encoding",function(){return dn}),n.d(e,"RGB_ETC1_Format",function(){return ge}),n.d(e,"RGB_ETC2_Format",function(){return me}),n.d(e,"RGB_PVRTC_2BPPV1_Format",function(){return pe}),n.d(e,"RGB_PVRTC_4BPPV1_Format",function(){return de}),n.d(e,"RGB_S3TC_DXT1_Format",function(){return se}),n.d(e,"RGFormat",function(){return ie}),n.d(e,"RGIntegerFormat",function(){return re}),n.d(e,"RawShaderMaterial",function(){return Ul}),n.d(e,"Ray",function(){return ir}),n.d(e,"Raycaster",function(){return rp}),n.d(e,"RectAreaLight",function(){return id}),n.d(e,"RedFormat",function(){return ee}),n.d(e,"RedIntegerFormat",function(){return ne}),n.d(e,"ReinhardToneMapping",function(){return ut}),n.d(e,"RepeatWrapping",function(){return xt}),n.d(e,"ReplaceStencilOp",function(){return wn}),n.d(e,"ReverseSubtractEquation",function(){return j}),n.d(e,"RingBufferGeometry",function(){return Cl}),n.d(e,"RingGeometry",function(){return El}),n.d(e,"SRGB8_ALPHA8_ASTC_10x10_Format",function(){return He}),n.d(e,"SRGB8_ALPHA8_ASTC_10x5_Format",function(){return Be}),n.d(e,"SRGB8_ALPHA8_ASTC_10x6_Format",function(){return ze}),n.d(e,"SRGB8_ALPHA8_ASTC_10x8_Format",function(){return Ge}),n.d(e,"SRGB8_ALPHA8_ASTC_12x10_Format",function(){return We}),n.d(e,"SRGB8_ALPHA8_ASTC_12x12_Format",function(){return qe}),n.d(e,"SRGB8_ALPHA8_ASTC_4x4_Format",function(){return De}),n.d(e,"SRGB8_ALPHA8_ASTC_5x4_Format",function(){return Re}),n.d(e,"SRGB8_ALPHA8_ASTC_5x5_Format",function(){return Le}),n.d(e,"SRGB8_ALPHA8_ASTC_6x5_Format",function(){return Ne}),n.d(e,"SRGB8_ALPHA8_ASTC_6x6_Format",function(){return je}),n.d(e,"SRGB8_ALPHA8_ASTC_8x5_Format",function(){return Ve}),n.d(e,"SRGB8_ALPHA8_ASTC_8x6_Format",function(){return Fe}),n.d(e,"SRGB8_ALPHA8_ASTC_8x8_Format",function(){return Ue}),n.d(e,"Scene",function(){return ki}),n.d(e,"SceneUtils",function(){return af}),n.d(e,"ShaderChunk",function(){return Bo}),n.d(e,"ShaderLib",function(){return zo}),n.d(e,"ShaderMaterial",function(){return Oo}),n.d(e,"ShadowMaterial",function(){return Fl}),n.d(e,"Shape",function(){return Wu}),n.d(e,"ShapeBufferGeometry",function(){return _l}),n.d(e,"ShapeGeometry",function(){return Ol}),n.d(e,"ShapePath",function(){return md}),n.d(e,"ShapeUtils",function(){return hl}),n.d(e,"ShortType",function(){return jt}),n.d(e,"Skeleton",function(){return Qs}),n.d(e,"SkeletonHelper",function(){return wp}),n.d(e,"SkinnedMesh",function(){return Ys}),n.d(e,"SmoothShading",function(){return O}),n.d(e,"Sphere",function(){return Yi}),n.d(e,"SphereBufferGeometry",function(){return Ml}),n.d(e,"SphereGeometry",function(){return xl}),n.d(e,"Spherical",function(){return sp}),n.d(e,"SphericalHarmonics3",function(){return xd}),n.d(e,"SphericalReflectionMapping",function(){return bt}),n.d(e,"Spline",function(){return Xh}),n.d(e,"SplineCurve",function(){return Bu}),n.d(e,"SplineCurve3",function(){return Kh}),n.d(e,"SpotLight",function(){return Zu}),n.d(e,"SpotLightHelper",function(){return mp}),n.d(e,"SpotLightShadow",function(){return Yu}),n.d(e,"Sprite",function(){return Hs}),n.d(e,"SpriteMaterial",function(){return Is}),n.d(e,"SrcAlphaFactor",function(){return H}),n.d(e,"SrcAlphaSaturateFactor",function(){return Z}),n.d(e,"SrcColorFactor",function(){return z}),n.d(e,"StaticCopyUsage",function(){return Un}),n.d(e,"StaticDrawUsage",function(){return Rn}),n.d(e,"StaticReadUsage",function(){return jn}),n.d(e,"StereoCamera",function(){return Od}),n.d(e,"StreamCopyUsage",function(){return zn}),n.d(e,"StreamDrawUsage",function(){return Nn}),n.d(e,"StreamReadUsage",function(){return Fn}),n.d(e,"StringKeyframeTrack",function(){return su}),n.d(e,"SubtractEquation",function(){return N}),n.d(e,"SubtractiveBlending",function(){return k}),n.d(e,"TOUCH",function(){return h}),n.d(e,"TangentSpaceNormalMap",function(){return mn}),n.d(e,"TetrahedronBufferGeometry",function(){return Dc}),n.d(e,"TetrahedronGeometry",function(){return kc}),n.d(e,"TextBufferGeometry",function(){return Sl}),n.d(e,"TextGeometry",function(){return wl}),n.d(e,"Texture",function(){return Qn}),n.d(e,"TextureLoader",function(){return xu}),n.d(e,"TorusBufferGeometry",function(){return Wc}),n.d(e,"TorusGeometry",function(){return Hc}),n.d(e,"TorusKnotBufferGeometry",function(){return Gc}),n.d(e,"TorusKnotGeometry",function(){return zc}),n.d(e,"Triangle",function(){return yr}),n.d(e,"TriangleFanDrawMode",function(){return on}),n.d(e,"TriangleStripDrawMode",function(){return rn}),n.d(e,"TrianglesDrawMode",function(){return nn}),n.d(e,"TubeBufferGeometry",function(){return Bc}),n.d(e,"TubeGeometry",function(){return Uc}),n.d(e,"UVMapping",function(){return ft}),n.d(e,"Uint16Attribute",function(){return Bh}),n.d(e,"Uint16BufferAttribute",function(){return Nr}),n.d(e,"Uint32Attribute",function(){return Gh}),n.d(e,"Uint32BufferAttribute",function(){return Vr}),n.d(e,"Uint8Attribute",function(){return Vh}),n.d(e,"Uint8BufferAttribute",function(){return Dr}),n.d(e,"Uint8ClampedAttribute",function(){return Fh}),n.d(e,"Uint8ClampedBufferAttribute",function(){return Rr}),n.d(e,"Uncharted2ToneMapping",function(){return dt}),n.d(e,"Uniform",function(){return np}),n.d(e,"UniformsLib",function(){return jo}),n.d(e,"UniformsUtils",function(){return To}),n.d(e,"UnsignedByteType",function(){return Lt}),n.d(e,"UnsignedInt248Type",function(){return qt}),n.d(e,"UnsignedIntType",function(){return Ut}),n.d(e,"UnsignedShort4444Type",function(){return Gt}),n.d(e,"UnsignedShort5551Type",function(){return Ht}),n.d(e,"UnsignedShort565Type",function(){return Wt}),n.d(e,"UnsignedShortType",function(){return Vt}),n.d(e,"VSMShadowMap",function(){return M}),n.d(e,"Vector2",function(){return Xn}),n.d(e,"Vector3",function(){return oi}),n.d(e,"Vector4",function(){return $n}),n.d(e,"VectorKeyframeTrack",function(){return cu}),n.d(e,"Vertex",function(){return Lh}),n.d(e,"VertexColors",function(){return Ah}),n.d(e,"VideoTexture",function(){return Mc}),n.d(e,"WebGLCubeRenderTarget",function(){return ko}),n.d(e,"WebGLMultisampleRenderTarget",function(){return ei}),n.d(e,"WebGLRenderTarget",function(){return ti}),n.d(e,"WebGLRenderTargetCube",function(){return ef}),n.d(e,"WebGLRenderer",function(){return Es}),n.d(e,"WebGLUtils",function(){return ws}),n.d(e,"WireframeGeometry",function(){return Tc}),n.d(e,"WireframeHelper",function(){return Qh}),n.d(e,"WrapAroundEnding",function(){return en}),n.d(e,"XHRLoader",function(){return $h}),n.d(e,"ZeroCurvatureEnding",function(){return $e}),n.d(e,"ZeroFactor",function(){return U}),n.d(e,"ZeroSlopeEnding",function(){return tn}),n.d(e,"ZeroStencilOp",function(){return yn}),n.d(e,"sRGBEncoding",function(){return sn}),void 0===Number.EPSILON&&(Number.EPSILON=Math.pow(2,-52)),void 0===Number.isInteger&&(Number.isInteger=function(t){return"number"==typeof t&&isFinite(t)&&Math.floor(t)===t}),void 0===Math.sign&&(Math.sign=function(t){return t<0?-1:t>0?1:+t}),"name"in Function.prototype==0&&Object.defineProperty(Function.prototype,"name",{get:function(){return this.toString().match(/^\s*function\s*([^\(\s]*)/)[1]}}),void 0===Object.assign&&(Object.assign=function(t){if(null==t)throw new TypeError("Cannot convert undefined or null to object");for(var e=Object(t),n=1;n<arguments.length;n++){var i=arguments[n];if(null!=i)for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&(e[r]=i[r])}return e});var d="115",p={LEFT:0,MIDDLE:1,RIGHT:2,ROTATE:0,DOLLY:1,PAN:2},h={ROTATE:0,PAN:1,DOLLY_PAN:2,DOLLY_ROTATE:3},f=0,g=1,m=2,v=3,y=0,b=1,w=0,S=1,x=2,M=3,E=0,C=1,A=2,T=1,O=2,_=0,P=1,I=2,k=3,D=4,R=5,L=100,N=101,j=102,V=103,F=104,U=200,B=201,z=202,G=203,H=204,W=205,q=206,K=207,X=208,Y=209,Z=210,J=0,Q=1,$=2,tt=3,et=4,nt=5,it=6,rt=7,ot=0,at=1,st=2,ct=0,lt=1,ut=2,dt=3,pt=4,ht=5,ft=300,gt=301,mt=302,vt=303,yt=304,bt=305,wt=306,St=307,xt=1e3,Mt=1001,Et=1002,Ct=1003,At=1004,Tt=1004,Ot=1005,_t=1005,Pt=1006,It=1007,kt=1007,Dt=1008,Rt=1008,Lt=1009,Nt=1010,jt=1011,Vt=1012,Ft=1013,Ut=1014,Bt=1015,zt=1016,Gt=1017,Ht=1018,Wt=1019,qt=1020,Kt=1021,Xt=1022,Yt=1023,Zt=1024,Jt=1025,Qt=Yt,$t=1026,te=1027,ee=1028,ne=1029,ie=1030,re=1031,oe=1032,ae=1033,se=33776,ce=33777,le=33778,ue=33779,de=35840,pe=35841,he=35842,fe=35843,ge=36196,me=37492,ve=37496,ye=37808,be=37809,we=37810,Se=37811,xe=37812,Me=37813,Ee=37814,Ce=37815,Ae=37816,Te=37817,Oe=37818,_e=37819,Pe=37820,Ie=37821,ke=36492,De=37840,Re=37841,Le=37842,Ne=37843,je=37844,Ve=37845,Fe=37846,Ue=37847,Be=37848,ze=37849,Ge=37850,He=37851,We=37852,qe=37853,Ke=2200,Xe=2201,Ye=2202,Ze=2300,Je=2301,Qe=2302,$e=2400,tn=2401,en=2402,nn=0,rn=1,on=2,an=3e3,sn=3001,cn=3007,ln=3002,un=3003,dn=3004,pn=3005,hn=3006,fn=3200,gn=3201,mn=0,vn=1,yn=0,bn=7680,wn=7681,Sn=7682,xn=7683,Mn=34055,En=34056,Cn=5386,An=512,Tn=513,On=514,_n=515,Pn=516,In=517,kn=518,Dn=519,Rn=35044,Ln=35048,Nn=35040,jn=35045,Vn=35049,Fn=35041,Un=35046,Bn=35050,zn=35042;function Gn(){}Object.assign(Gn.prototype,{addEventListener:function(t,e){void 0===this._listeners&&(this._listeners={});var n=this._listeners;void 0===n[t]&&(n[t]=[]),-1===n[t].indexOf(e)&&n[t].push(e)},hasEventListener:function(t,e){if(void 0===this._listeners)return!1;var n=this._listeners;return void 0!==n[t]&&-1!==n[t].indexOf(e)},removeEventListener:function(t,e){if(void 0!==this._listeners){var n=this._listeners[t];if(void 0!==n){var i=n.indexOf(e);-1!==i&&n.splice(i,1)}}},dispatchEvent:function(t){if(void 0!==this._listeners){var e=this._listeners[t.type];if(void 0!==e){t.target=this;for(var n=e.slice(0),i=0,r=n.length;i<r;i++)n[i].call(this,t)}}}});for(var Hn=[],Wn=0;Wn<256;Wn++)Hn[Wn]=(Wn<16?"0":"")+Wn.toString(16);var qn,Kn={DEG2RAD:Math.PI/180,RAD2DEG:180/Math.PI,generateUUID:function(){var t=4294967295*Math.random()|0,e=4294967295*Math.random()|0,n=4294967295*Math.random()|0,i=4294967295*Math.random()|0;return(Hn[255&t]+Hn[t>>8&255]+Hn[t>>16&255]+Hn[t>>24&255]+"-"+Hn[255&e]+Hn[e>>8&255]+"-"+Hn[e>>16&15|64]+Hn[e>>24&255]+"-"+Hn[63&n|128]+Hn[n>>8&255]+"-"+Hn[n>>16&255]+Hn[n>>24&255]+Hn[255&i]+Hn[i>>8&255]+Hn[i>>16&255]+Hn[i>>24&255]).toUpperCase()},clamp:function(t,e,n){return Math.max(e,Math.min(n,t))},euclideanModulo:function(t,e){return(t%e+e)%e},mapLinear:function(t,e,n,i,r){return i+(t-e)*(r-i)/(n-e)},lerp:function(t,e,n){return(1-n)*t+n*e},smoothstep:function(t,e,n){return t<=e?0:t>=n?1:(t=(t-e)/(n-e))*t*(3-2*t)},smootherstep:function(t,e,n){return t<=e?0:t>=n?1:(t=(t-e)/(n-e))*t*t*(t*(6*t-15)+10)},randInt:function(t,e){return t+Math.floor(Math.random()*(e-t+1))},randFloat:function(t,e){return t+Math.random()*(e-t)},randFloatSpread:function(t){return t*(.5-Math.random())},degToRad:function(t){return t*Kn.DEG2RAD},radToDeg:function(t){return t*Kn.RAD2DEG},isPowerOfTwo:function(t){return 0==(t&t-1)&&0!==t},ceilPowerOfTwo:function(t){return Math.pow(2,Math.ceil(Math.log(t)/Math.LN2))},floorPowerOfTwo:function(t){return Math.pow(2,Math.floor(Math.log(t)/Math.LN2))},setQuaternionFromProperEuler:function(t,e,n,i,r){var o=Math.cos,a=Math.sin,s=o(n/2),c=a(n/2),l=o((e+i)/2),u=a((e+i)/2),d=o((e-i)/2),p=a((e-i)/2),h=o((i-e)/2),f=a((i-e)/2);"XYX"===r?t.set(s*u,c*d,c*p,s*l):"YZY"===r?t.set(c*p,s*u,c*d,s*l):"ZXZ"===r?t.set(c*d,c*p,s*u,s*l):"XZX"===r?t.set(s*u,c*f,c*h,s*l):"YXY"===r?t.set(c*h,s*u,c*f,s*l):"ZYZ"===r?t.set(c*f,c*h,s*u,s*l):console.warn("THREE.MathUtils: .setQuaternionFromProperEuler() encountered an unknown order.")}};function Xn(t,e){this.x=t||0,this.y=e||0}function Yn(){this.elements=[1,0,0,0,1,0,0,0,1],arguments.length>0&&console.error("THREE.Matrix3: the constructor no longer reads arguments. use .set() instead.")}Object.defineProperties(Xn.prototype,{width:{get:function(){return this.x},set:function(t){this.x=t}},height:{get:function(){return this.y},set:function(t){this.y=t}}}),Object.assign(Xn.prototype,{isVector2:!0,set:function(t,e){return this.x=t,this.y=e,this},setScalar:function(t){return this.x=t,this.y=t,this},setX:function(t){return this.x=t,this},setY:function(t){return this.y=t,this},setComponent:function(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;default:throw new Error("index is out of range: "+t)}return this},getComponent:function(t){switch(t){case 0:return this.x;case 1:return this.y;default:throw new Error("index is out of range: "+t)}},clone:function(){return new this.constructor(this.x,this.y)},copy:function(t){return this.x=t.x,this.y=t.y,this},add:function(t,e){return void 0!==e?(console.warn("THREE.Vector2: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(t,e)):(this.x+=t.x,this.y+=t.y,this)},addScalar:function(t){return this.x+=t,this.y+=t,this},addVectors:function(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this},addScaledVector:function(t,e){return this.x+=t.x*e,this.y+=t.y*e,this},sub:function(t,e){return void 0!==e?(console.warn("THREE.Vector2: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this)},subScalar:function(t){return this.x-=t,this.y-=t,this},subVectors:function(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this},multiply:function(t){return this.x*=t.x,this.y*=t.y,this},multiplyScalar:function(t){return this.x*=t,this.y*=t,this},divide:function(t){return this.x/=t.x,this.y/=t.y,this},divideScalar:function(t){return this.multiplyScalar(1/t)},applyMatrix3:function(t){var e=this.x,n=this.y,i=t.elements;return this.x=i[0]*e+i[3]*n+i[6],this.y=i[1]*e+i[4]*n+i[7],this},min:function(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this},max:function(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this},clamp:function(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this},clampScalar:function(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this},clampLength:function(t,e){var n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))},floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this},ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this},round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this},roundToZero:function(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this},negate:function(){return this.x=-this.x,this.y=-this.y,this},dot:function(t){return this.x*t.x+this.y*t.y},cross:function(t){return this.x*t.y-this.y*t.x},lengthSq:function(){return this.x*this.x+this.y*this.y},length:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},manhattanLength:function(){return Math.abs(this.x)+Math.abs(this.y)},normalize:function(){return this.divideScalar(this.length()||1)},angle:function(){return Math.atan2(-this.y,-this.x)+Math.PI},distanceTo:function(t){return Math.sqrt(this.distanceToSquared(t))},distanceToSquared:function(t){var e=this.x-t.x,n=this.y-t.y;return e*e+n*n},manhattanDistanceTo:function(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)},setLength:function(t){return this.normalize().multiplyScalar(t)},lerp:function(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this},lerpVectors:function(t,e,n){return this.subVectors(e,t).multiplyScalar(n).add(t)},equals:function(t){return t.x===this.x&&t.y===this.y},fromArray:function(t,e){return void 0===e&&(e=0),this.x=t[e],this.y=t[e+1],this},toArray:function(t,e){return void 0===t&&(t=[]),void 0===e&&(e=0),t[e]=this.x,t[e+1]=this.y,t},fromBufferAttribute:function(t,e,n){return void 0!==n&&console.warn("THREE.Vector2: offset has been removed from .fromBufferAttribute()."),this.x=t.getX(e),this.y=t.getY(e),this},rotateAround:function(t,e){var n=Math.cos(e),i=Math.sin(e),r=this.x-t.x,o=this.y-t.y;return this.x=r*n-o*i+t.x,this.y=r*i+o*n+t.y,this}}),Object.assign(Yn.prototype,{isMatrix3:!0,set:function(t,e,n,i,r,o,a,s,c){var l=this.elements;return l[0]=t,l[1]=i,l[2]=a,l[3]=e,l[4]=r,l[5]=s,l[6]=n,l[7]=o,l[8]=c,this},identity:function(){return this.set(1,0,0,0,1,0,0,0,1),this},clone:function(){return(new this.constructor).fromArray(this.elements)},copy:function(t){var e=this.elements,n=t.elements;return e[0]=n[0],e[1]=n[1],e[2]=n[2],e[3]=n[3],e[4]=n[4],e[5]=n[5],e[6]=n[6],e[7]=n[7],e[8]=n[8],this},extractBasis:function(t,e,n){return t.setFromMatrix3Column(this,0),e.setFromMatrix3Column(this,1),n.setFromMatrix3Column(this,2),this},setFromMatrix4:function(t){var e=t.elements;return this.set(e[0],e[4],e[8],e[1],e[5],e[9],e[2],e[6],e[10]),this},multiply:function(t){return this.multiplyMatrices(this,t)},premultiply:function(t){return this.multiplyMatrices(t,this)},multiplyMatrices:function(t,e){var n=t.elements,i=e.elements,r=this.elements,o=n[0],a=n[3],s=n[6],c=n[1],l=n[4],u=n[7],d=n[2],p=n[5],h=n[8],f=i[0],g=i[3],m=i[6],v=i[1],y=i[4],b=i[7],w=i[2],S=i[5],x=i[8];return r[0]=o*f+a*v+s*w,r[3]=o*g+a*y+s*S,r[6]=o*m+a*b+s*x,r[1]=c*f+l*v+u*w,r[4]=c*g+l*y+u*S,r[7]=c*m+l*b+u*x,r[2]=d*f+p*v+h*w,r[5]=d*g+p*y+h*S,r[8]=d*m+p*b+h*x,this},multiplyScalar:function(t){var e=this.elements;return e[0]*=t,e[3]*=t,e[6]*=t,e[1]*=t,e[4]*=t,e[7]*=t,e[2]*=t,e[5]*=t,e[8]*=t,this},determinant:function(){var t=this.elements,e=t[0],n=t[1],i=t[2],r=t[3],o=t[4],a=t[5],s=t[6],c=t[7],l=t[8];return e*o*l-e*a*c-n*r*l+n*a*s+i*r*c-i*o*s},getInverse:function(t,e){void 0!==e&&console.warn("THREE.Matrix3: .getInverse() can no longer be configured to throw on degenerate.");var n=t.elements,i=this.elements,r=n[0],o=n[1],a=n[2],s=n[3],c=n[4],l=n[5],u=n[6],d=n[7],p=n[8],h=p*c-l*d,f=l*u-p*s,g=d*s-c*u,m=r*h+o*f+a*g;if(0===m)return this.set(0,0,0,0,0,0,0,0,0);var v=1/m;return i[0]=h*v,i[1]=(a*d-p*o)*v,i[2]=(l*o-a*c)*v,i[3]=f*v,i[4]=(p*r-a*u)*v,i[5]=(a*s-l*r)*v,i[6]=g*v,i[7]=(o*u-d*r)*v,i[8]=(c*r-o*s)*v,this},transpose:function(){var t,e=this.elements;return t=e[1],e[1]=e[3],e[3]=t,t=e[2],e[2]=e[6],e[6]=t,t=e[5],e[5]=e[7],e[7]=t,this},getNormalMatrix:function(t){return this.setFromMatrix4(t).getInverse(this).transpose()},transposeIntoArray:function(t){var e=this.elements;return t[0]=e[0],t[1]=e[3],t[2]=e[6],t[3]=e[1],t[4]=e[4],t[5]=e[7],t[6]=e[2],t[7]=e[5],t[8]=e[8],this},setUvTransform:function(t,e,n,i,r,o,a){var s=Math.cos(r),c=Math.sin(r);this.set(n*s,n*c,-n*(s*o+c*a)+o+t,-i*c,i*s,-i*(-c*o+s*a)+a+e,0,0,1)},scale:function(t,e){var n=this.elements;return n[0]*=t,n[3]*=t,n[6]*=t,n[1]*=e,n[4]*=e,n[7]*=e,this},rotate:function(t){var e=Math.cos(t),n=Math.sin(t),i=this.elements,r=i[0],o=i[3],a=i[6],s=i[1],c=i[4],l=i[7];return i[0]=e*r+n*s,i[3]=e*o+n*c,i[6]=e*a+n*l,i[1]=-n*r+e*s,i[4]=-n*o+e*c,i[7]=-n*a+e*l,this},translate:function(t,e){var n=this.elements;return n[0]+=t*n[2],n[3]+=t*n[5],n[6]+=t*n[8],n[1]+=e*n[2],n[4]+=e*n[5],n[7]+=e*n[8],this},equals:function(t){for(var e=this.elements,n=t.elements,i=0;i<9;i++)if(e[i]!==n[i])return!1;return!0},fromArray:function(t,e){void 0===e&&(e=0);for(var n=0;n<9;n++)this.elements[n]=t[n+e];return this},toArray:function(t,e){void 0===t&&(t=[]),void 0===e&&(e=0);var n=this.elements;return t[e]=n[0],t[e+1]=n[1],t[e+2]=n[2],t[e+3]=n[3],t[e+4]=n[4],t[e+5]=n[5],t[e+6]=n[6],t[e+7]=n[7],t[e+8]=n[8],t}});var Zn={getDataURL:function(t){var e;if("undefined"==typeof HTMLCanvasElement)return t.src;if(t instanceof HTMLCanvasElement)e=t;else{void 0===qn&&(qn=document.createElementNS("http://www.w3.org/1999/xhtml","canvas")),qn.width=t.width,qn.height=t.height;var n=qn.getContext("2d");t instanceof ImageData?n.putImageData(t,0,0):n.drawImage(t,0,0,t.width,t.height),e=qn}return e.width>2048||e.height>2048?e.toDataURL("image/jpeg",.6):e.toDataURL("image/png")}},Jn=0;function Qn(t,e,n,i,r,o,a,s,c,l){Object.defineProperty(this,"id",{value:Jn++}),this.uuid=Kn.generateUUID(),this.name="",this.image=void 0!==t?t:Qn.DEFAULT_IMAGE,this.mipmaps=[],this.mapping=void 0!==e?e:Qn.DEFAULT_MAPPING,this.wrapS=void 0!==n?n:Mt,this.wrapT=void 0!==i?i:Mt,this.magFilter=void 0!==r?r:Pt,this.minFilter=void 0!==o?o:Dt,this.anisotropy=void 0!==c?c:1,this.format=void 0!==a?a:Yt,this.internalFormat=null,this.type=void 0!==s?s:Lt,this.offset=new Xn(0,0),this.repeat=new Xn(1,1),this.center=new Xn(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new Yn,this.generateMipmaps=!0,this.premultiplyAlpha=!1,this.flipY=!0,this.unpackAlignment=4,this.encoding=void 0!==l?l:an,this.version=0,this.onUpdate=null}function $n(t,e,n,i){this.x=t||0,this.y=e||0,this.z=n||0,this.w=void 0!==i?i:1}function ti(t,e,n){this.width=t,this.height=e,this.scissor=new $n(0,0,t,e),this.scissorTest=!1,this.viewport=new $n(0,0,t,e),n=n||{},this.texture=new Qn(void 0,n.mapping,n.wrapS,n.wrapT,n.magFilter,n.minFilter,n.format,n.type,n.anisotropy,n.encoding),this.texture.image={},this.texture.image.width=t,this.texture.image.height=e,this.texture.generateMipmaps=void 0!==n.generateMipmaps&&n.generateMipmaps,this.texture.minFilter=void 0!==n.minFilter?n.minFilter:Pt,this.depthBuffer=void 0===n.depthBuffer||n.depthBuffer,this.stencilBuffer=void 0===n.stencilBuffer||n.stencilBuffer,this.depthTexture=void 0!==n.depthTexture?n.depthTexture:null}function ei(t,e,n){ti.call(this,t,e,n),this.samples=4}function ni(t,e,n,i){this._x=t||0,this._y=e||0,this._z=n||0,this._w=void 0!==i?i:1}Qn.DEFAULT_IMAGE=void 0,Qn.DEFAULT_MAPPING=ft,Qn.prototype=Object.assign(Object.create(Gn.prototype),{constructor:Qn,isTexture:!0,updateMatrix:function(){this.matrix.setUvTransform(this.offset.x,this.offset.y,this.repeat.x,this.repeat.y,this.rotation,this.center.x,this.center.y)},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.name=t.name,this.image=t.image,this.mipmaps=t.mipmaps.slice(0),this.mapping=t.mapping,this.wrapS=t.wrapS,this.wrapT=t.wrapT,this.magFilter=t.magFilter,this.minFilter=t.minFilter,this.anisotropy=t.anisotropy,this.format=t.format,this.internalFormat=t.internalFormat,this.type=t.type,this.offset.copy(t.offset),this.repeat.copy(t.repeat),this.center.copy(t.center),this.rotation=t.rotation,this.matrixAutoUpdate=t.matrixAutoUpdate,this.matrix.copy(t.matrix),this.generateMipmaps=t.generateMipmaps,this.premultiplyAlpha=t.premultiplyAlpha,this.flipY=t.flipY,this.unpackAlignment=t.unpackAlignment,this.encoding=t.encoding,this},toJSON:function(t){var e=void 0===t||"string"==typeof t;if(!e&&void 0!==t.textures[this.uuid])return t.textures[this.uuid];var n={metadata:{version:4.5,type:"Texture",generator:"Texture.toJSON"},uuid:this.uuid,name:this.name,mapping:this.mapping,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],center:[this.center.x,this.center.y],rotation:this.rotation,wrap:[this.wrapS,this.wrapT],format:this.format,type:this.type,encoding:this.encoding,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};if(void 0!==this.image){var i=this.image;if(void 0===i.uuid&&(i.uuid=Kn.generateUUID()),!e&&void 0===t.images[i.uuid]){var r;if(Array.isArray(i)){r=[];for(var o=0,a=i.length;o<a;o++)r.push(Zn.getDataURL(i[o]))}else r=Zn.getDataURL(i);t.images[i.uuid]={uuid:i.uuid,url:r}}n.image=i.uuid}return e||(t.textures[this.uuid]=n),n},dispose:function(){this.dispatchEvent({type:"dispose"})},transformUv:function(t){if(this.mapping!==ft)return t;if(t.applyMatrix3(this.matrix),t.x<0||t.x>1)switch(this.wrapS){case xt:t.x=t.x-Math.floor(t.x);break;case Mt:t.x=t.x<0?0:1;break;case Et:1===Math.abs(Math.floor(t.x)%2)?t.x=Math.ceil(t.x)-t.x:t.x=t.x-Math.floor(t.x)}if(t.y<0||t.y>1)switch(this.wrapT){case xt:t.y=t.y-Math.floor(t.y);break;case Mt:t.y=t.y<0?0:1;break;case Et:1===Math.abs(Math.floor(t.y)%2)?t.y=Math.ceil(t.y)-t.y:t.y=t.y-Math.floor(t.y)}return this.flipY&&(t.y=1-t.y),t}}),Object.defineProperty(Qn.prototype,"needsUpdate",{set:function(t){!0===t&&this.version++}}),Object.defineProperties($n.prototype,{width:{get:function(){return this.z},set:function(t){this.z=t}},height:{get:function(){return this.w},set:function(t){this.w=t}}}),Object.assign($n.prototype,{isVector4:!0,set:function(t,e,n,i){return this.x=t,this.y=e,this.z=n,this.w=i,this},setScalar:function(t){return this.x=t,this.y=t,this.z=t,this.w=t,this},setX:function(t){return this.x=t,this},setY:function(t){return this.y=t,this},setZ:function(t){return this.z=t,this},setW:function(t){return this.w=t,this},setComponent:function(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;case 3:this.w=e;break;default:throw new Error("index is out of range: "+t)}return this},getComponent:function(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw new Error("index is out of range: "+t)}},clone:function(){return new this.constructor(this.x,this.y,this.z,this.w)},copy:function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=void 0!==t.w?t.w:1,this},add:function(t,e){return void 0!==e?(console.warn("THREE.Vector4: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(t,e)):(this.x+=t.x,this.y+=t.y,this.z+=t.z,this.w+=t.w,this)},addScalar:function(t){return this.x+=t,this.y+=t,this.z+=t,this.w+=t,this},addVectors:function(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this.w=t.w+e.w,this},addScaledVector:function(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this.w+=t.w*e,this},sub:function(t,e){return void 0!==e?(console.warn("THREE.Vector4: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this.z-=t.z,this.w-=t.w,this)},subScalar:function(t){return this.x-=t,this.y-=t,this.z-=t,this.w-=t,this},subVectors:function(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this.w=t.w-e.w,this},multiplyScalar:function(t){return this.x*=t,this.y*=t,this.z*=t,this.w*=t,this},applyMatrix4:function(t){var e=this.x,n=this.y,i=this.z,r=this.w,o=t.elements;return this.x=o[0]*e+o[4]*n+o[8]*i+o[12]*r,this.y=o[1]*e+o[5]*n+o[9]*i+o[13]*r,this.z=o[2]*e+o[6]*n+o[10]*i+o[14]*r,this.w=o[3]*e+o[7]*n+o[11]*i+o[15]*r,this},divideScalar:function(t){return this.multiplyScalar(1/t)},setAxisAngleFromQuaternion:function(t){this.w=2*Math.acos(t.w);var e=Math.sqrt(1-t.w*t.w);return e<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=t.x/e,this.y=t.y/e,this.z=t.z/e),this},setAxisAngleFromRotationMatrix:function(t){var e,n,i,r,o=t.elements,a=o[0],s=o[4],c=o[8],l=o[1],u=o[5],d=o[9],p=o[2],h=o[6],f=o[10];if(Math.abs(s-l)<.01&&Math.abs(c-p)<.01&&Math.abs(d-h)<.01){if(Math.abs(s+l)<.1&&Math.abs(c+p)<.1&&Math.abs(d+h)<.1&&Math.abs(a+u+f-3)<.1)return this.set(1,0,0,0),this;e=Math.PI;var g=(a+1)/2,m=(u+1)/2,v=(f+1)/2,y=(s+l)/4,b=(c+p)/4,w=(d+h)/4;return g>m&&g>v?g<.01?(n=0,i=.707106781,r=.707106781):(i=y/(n=Math.sqrt(g)),r=b/n):m>v?m<.01?(n=.707106781,i=0,r=.707106781):(n=y/(i=Math.sqrt(m)),r=w/i):v<.01?(n=.707106781,i=.707106781,r=0):(n=b/(r=Math.sqrt(v)),i=w/r),this.set(n,i,r,e),this}var S=Math.sqrt((h-d)*(h-d)+(c-p)*(c-p)+(l-s)*(l-s));return Math.abs(S)<.001&&(S=1),this.x=(h-d)/S,this.y=(c-p)/S,this.z=(l-s)/S,this.w=Math.acos((a+u+f-1)/2),this},min:function(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this.w=Math.min(this.w,t.w),this},max:function(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this.w=Math.max(this.w,t.w),this},clamp:function(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this.w=Math.max(t.w,Math.min(e.w,this.w)),this},clampScalar:function(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this.w=Math.max(t,Math.min(e,this.w)),this},clampLength:function(t,e){var n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))},floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this},ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this},round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this},roundToZero:function(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z),this.w=this.w<0?Math.ceil(this.w):Math.floor(this.w),this},negate:function(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this},dot:function(t){return this.x*t.x+this.y*t.y+this.z*t.z+this.w*t.w},lengthSq:function(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w},length:function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)},manhattanLength:function(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)},normalize:function(){return this.divideScalar(this.length()||1)},setLength:function(t){return this.normalize().multiplyScalar(t)},lerp:function(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this.w+=(t.w-this.w)*e,this},lerpVectors:function(t,e,n){return this.subVectors(e,t).multiplyScalar(n).add(t)},equals:function(t){return t.x===this.x&&t.y===this.y&&t.z===this.z&&t.w===this.w},fromArray:function(t,e){return void 0===e&&(e=0),this.x=t[e],this.y=t[e+1],this.z=t[e+2],this.w=t[e+3],this},toArray:function(t,e){return void 0===t&&(t=[]),void 0===e&&(e=0),t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t[e+3]=this.w,t},fromBufferAttribute:function(t,e,n){return void 0!==n&&console.warn("THREE.Vector4: offset has been removed from .fromBufferAttribute()."),this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this.w=t.getW(e),this}}),ti.prototype=Object.assign(Object.create(Gn.prototype),{constructor:ti,isWebGLRenderTarget:!0,setSize:function(t,e){this.width===t&&this.height===e||(this.width=t,this.height=e,this.texture.image.width=t,this.texture.image.height=e,this.dispose()),this.viewport.set(0,0,t,e),this.scissor.set(0,0,t,e)},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.width=t.width,this.height=t.height,this.viewport.copy(t.viewport),this.texture=t.texture.clone(),this.depthBuffer=t.depthBuffer,this.stencilBuffer=t.stencilBuffer,this.depthTexture=t.depthTexture,this},dispose:function(){this.dispatchEvent({type:"dispose"})}}),ei.prototype=Object.assign(Object.create(ti.prototype),{constructor:ei,isWebGLMultisampleRenderTarget:!0,copy:function(t){return ti.prototype.copy.call(this,t),this.samples=t.samples,this}}),Object.assign(ni,{slerp:function(t,e,n,i){return n.copy(t).slerp(e,i)},slerpFlat:function(t,e,n,i,r,o,a){var s=n[i+0],c=n[i+1],l=n[i+2],u=n[i+3],d=r[o+0],p=r[o+1],h=r[o+2],f=r[o+3];if(u!==f||s!==d||c!==p||l!==h){var g=1-a,m=s*d+c*p+l*h+u*f,v=m>=0?1:-1,y=1-m*m;if(y>Number.EPSILON){var b=Math.sqrt(y),w=Math.atan2(b,m*v);g=Math.sin(g*w)/b,a=Math.sin(a*w)/b}var S=a*v;if(s=s*g+d*S,c=c*g+p*S,l=l*g+h*S,u=u*g+f*S,g===1-a){var x=1/Math.sqrt(s*s+c*c+l*l+u*u);s*=x,c*=x,l*=x,u*=x}}t[e]=s,t[e+1]=c,t[e+2]=l,t[e+3]=u}}),Object.defineProperties(ni.prototype,{x:{get:function(){return this._x},set:function(t){this._x=t,this._onChangeCallback()}},y:{get:function(){return this._y},set:function(t){this._y=t,this._onChangeCallback()}},z:{get:function(){return this._z},set:function(t){this._z=t,this._onChangeCallback()}},w:{get:function(){return this._w},set:function(t){this._w=t,this._onChangeCallback()}}}),Object.assign(ni.prototype,{isQuaternion:!0,set:function(t,e,n,i){return this._x=t,this._y=e,this._z=n,this._w=i,this._onChangeCallback(),this},clone:function(){return new this.constructor(this._x,this._y,this._z,this._w)},copy:function(t){return this._x=t.x,this._y=t.y,this._z=t.z,this._w=t.w,this._onChangeCallback(),this},setFromEuler:function(t,e){if(!t||!t.isEuler)throw new Error("THREE.Quaternion: .setFromEuler() now expects an Euler rotation rather than a Vector3 and order.");var n=t._x,i=t._y,r=t._z,o=t.order,a=Math.cos,s=Math.sin,c=a(n/2),l=a(i/2),u=a(r/2),d=s(n/2),p=s(i/2),h=s(r/2);return"XYZ"===o?(this._x=d*l*u+c*p*h,this._y=c*p*u-d*l*h,this._z=c*l*h+d*p*u,this._w=c*l*u-d*p*h):"YXZ"===o?(this._x=d*l*u+c*p*h,this._y=c*p*u-d*l*h,this._z=c*l*h-d*p*u,this._w=c*l*u+d*p*h):"ZXY"===o?(this._x=d*l*u-c*p*h,this._y=c*p*u+d*l*h,this._z=c*l*h+d*p*u,this._w=c*l*u-d*p*h):"ZYX"===o?(this._x=d*l*u-c*p*h,this._y=c*p*u+d*l*h,this._z=c*l*h-d*p*u,this._w=c*l*u+d*p*h):"YZX"===o?(this._x=d*l*u+c*p*h,this._y=c*p*u+d*l*h,this._z=c*l*h-d*p*u,this._w=c*l*u-d*p*h):"XZY"===o&&(this._x=d*l*u-c*p*h,this._y=c*p*u-d*l*h,this._z=c*l*h+d*p*u,this._w=c*l*u+d*p*h),!1!==e&&this._onChangeCallback(),this},setFromAxisAngle:function(t,e){var n=e/2,i=Math.sin(n);return this._x=t.x*i,this._y=t.y*i,this._z=t.z*i,this._w=Math.cos(n),this._onChangeCallback(),this},setFromRotationMatrix:function(t){var e,n=t.elements,i=n[0],r=n[4],o=n[8],a=n[1],s=n[5],c=n[9],l=n[2],u=n[6],d=n[10],p=i+s+d;return p>0?(e=.5/Math.sqrt(p+1),this._w=.25/e,this._x=(u-c)*e,this._y=(o-l)*e,this._z=(a-r)*e):i>s&&i>d?(e=2*Math.sqrt(1+i-s-d),this._w=(u-c)/e,this._x=.25*e,this._y=(r+a)/e,this._z=(o+l)/e):s>d?(e=2*Math.sqrt(1+s-i-d),this._w=(o-l)/e,this._x=(r+a)/e,this._y=.25*e,this._z=(c+u)/e):(e=2*Math.sqrt(1+d-i-s),this._w=(a-r)/e,this._x=(o+l)/e,this._y=(c+u)/e,this._z=.25*e),this._onChangeCallback(),this},setFromUnitVectors:function(t,e){var n=t.dot(e)+1;return n<1e-6?(n=0,Math.abs(t.x)>Math.abs(t.z)?(this._x=-t.y,this._y=t.x,this._z=0,this._w=n):(this._x=0,this._y=-t.z,this._z=t.y,this._w=n)):(this._x=t.y*e.z-t.z*e.y,this._y=t.z*e.x-t.x*e.z,this._z=t.x*e.y-t.y*e.x,this._w=n),this.normalize()},angleTo:function(t){return 2*Math.acos(Math.abs(Kn.clamp(this.dot(t),-1,1)))},rotateTowards:function(t,e){var n=this.angleTo(t);if(0===n)return this;var i=Math.min(1,e/n);return this.slerp(t,i),this},inverse:function(){return this.conjugate()},conjugate:function(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this},dot:function(t){return this._x*t._x+this._y*t._y+this._z*t._z+this._w*t._w},lengthSq:function(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w},length:function(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)},normalize:function(){var t=this.length();return 0===t?(this._x=0,this._y=0,this._z=0,this._w=1):(t=1/t,this._x=this._x*t,this._y=this._y*t,this._z=this._z*t,this._w=this._w*t),this._onChangeCallback(),this},multiply:function(t,e){return void 0!==e?(console.warn("THREE.Quaternion: .multiply() now only accepts one argument. Use .multiplyQuaternions( a, b ) instead."),this.multiplyQuaternions(t,e)):this.multiplyQuaternions(this,t)},premultiply:function(t){return this.multiplyQuaternions(t,this)},multiplyQuaternions:function(t,e){var n=t._x,i=t._y,r=t._z,o=t._w,a=e._x,s=e._y,c=e._z,l=e._w;return this._x=n*l+o*a+i*c-r*s,this._y=i*l+o*s+r*a-n*c,this._z=r*l+o*c+n*s-i*a,this._w=o*l-n*a-i*s-r*c,this._onChangeCallback(),this},slerp:function(t,e){if(0===e)return this;if(1===e)return this.copy(t);var n=this._x,i=this._y,r=this._z,o=this._w,a=o*t._w+n*t._x+i*t._y+r*t._z;if(a<0?(this._w=-t._w,this._x=-t._x,this._y=-t._y,this._z=-t._z,a=-a):this.copy(t),a>=1)return this._w=o,this._x=n,this._y=i,this._z=r,this;var s=1-a*a;if(s<=Number.EPSILON){var c=1-e;return this._w=c*o+e*this._w,this._x=c*n+e*this._x,this._y=c*i+e*this._y,this._z=c*r+e*this._z,this.normalize(),this._onChangeCallback(),this}var l=Math.sqrt(s),u=Math.atan2(l,a),d=Math.sin((1-e)*u)/l,p=Math.sin(e*u)/l;return this._w=o*d+this._w*p,this._x=n*d+this._x*p,this._y=i*d+this._y*p,this._z=r*d+this._z*p,this._onChangeCallback(),this},equals:function(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._w===this._w},fromArray:function(t,e){return void 0===e&&(e=0),this._x=t[e],this._y=t[e+1],this._z=t[e+2],this._w=t[e+3],this._onChangeCallback(),this},toArray:function(t,e){return void 0===t&&(t=[]),void 0===e&&(e=0),t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._w,t},fromBufferAttribute:function(t,e){return this._x=t.getX(e),this._y=t.getY(e),this._z=t.getZ(e),this._w=t.getW(e),this},_onChange:function(t){return this._onChangeCallback=t,this},_onChangeCallback:function(){}});var ii=new oi,ri=new ni;function oi(t,e,n){this.x=t||0,this.y=e||0,this.z=n||0}Object.assign(oi.prototype,{isVector3:!0,set:function(t,e,n){return this.x=t,this.y=e,this.z=n,this},setScalar:function(t){return this.x=t,this.y=t,this.z=t,this},setX:function(t){return this.x=t,this},setY:function(t){return this.y=t,this},setZ:function(t){return this.z=t,this},setComponent:function(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;default:throw new Error("index is out of range: "+t)}return this},getComponent:function(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error("index is out of range: "+t)}},clone:function(){return new this.constructor(this.x,this.y,this.z)},copy:function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this},add:function(t,e){return void 0!==e?(console.warn("THREE.Vector3: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(t,e)):(this.x+=t.x,this.y+=t.y,this.z+=t.z,this)},addScalar:function(t){return this.x+=t,this.y+=t,this.z+=t,this},addVectors:function(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this},addScaledVector:function(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this},sub:function(t,e){return void 0!==e?(console.warn("THREE.Vector3: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this.z-=t.z,this)},subScalar:function(t){return this.x-=t,this.y-=t,this.z-=t,this},subVectors:function(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this},multiply:function(t,e){return void 0!==e?(console.warn("THREE.Vector3: .multiply() now only accepts one argument. Use .multiplyVectors( a, b ) instead."),this.multiplyVectors(t,e)):(this.x*=t.x,this.y*=t.y,this.z*=t.z,this)},multiplyScalar:function(t){return this.x*=t,this.y*=t,this.z*=t,this},multiplyVectors:function(t,e){return this.x=t.x*e.x,this.y=t.y*e.y,this.z=t.z*e.z,this},applyEuler:function(t){return t&&t.isEuler||console.error("THREE.Vector3: .applyEuler() now expects an Euler rotation rather than a Vector3 and order."),this.applyQuaternion(ri.setFromEuler(t))},applyAxisAngle:function(t,e){return this.applyQuaternion(ri.setFromAxisAngle(t,e))},applyMatrix3:function(t){var e=this.x,n=this.y,i=this.z,r=t.elements;return this.x=r[0]*e+r[3]*n+r[6]*i,this.y=r[1]*e+r[4]*n+r[7]*i,this.z=r[2]*e+r[5]*n+r[8]*i,this},applyNormalMatrix:function(t){return this.applyMatrix3(t).normalize()},applyMatrix4:function(t){var e=this.x,n=this.y,i=this.z,r=t.elements,o=1/(r[3]*e+r[7]*n+r[11]*i+r[15]);return this.x=(r[0]*e+r[4]*n+r[8]*i+r[12])*o,this.y=(r[1]*e+r[5]*n+r[9]*i+r[13])*o,this.z=(r[2]*e+r[6]*n+r[10]*i+r[14])*o,this},applyQuaternion:function(t){var e=this.x,n=this.y,i=this.z,r=t.x,o=t.y,a=t.z,s=t.w,c=s*e+o*i-a*n,l=s*n+a*e-r*i,u=s*i+r*n-o*e,d=-r*e-o*n-a*i;return this.x=c*s+d*-r+l*-a-u*-o,this.y=l*s+d*-o+u*-r-c*-a,this.z=u*s+d*-a+c*-o-l*-r,this},project:function(t){return this.applyMatrix4(t.matrixWorldInverse).applyMatrix4(t.projectionMatrix)},unproject:function(t){return this.applyMatrix4(t.projectionMatrixInverse).applyMatrix4(t.matrixWorld)},transformDirection:function(t){var e=this.x,n=this.y,i=this.z,r=t.elements;return this.x=r[0]*e+r[4]*n+r[8]*i,this.y=r[1]*e+r[5]*n+r[9]*i,this.z=r[2]*e+r[6]*n+r[10]*i,this.normalize()},divide:function(t){return this.x/=t.x,this.y/=t.y,this.z/=t.z,this},divideScalar:function(t){return this.multiplyScalar(1/t)},min:function(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this},max:function(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this},clamp:function(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this},clampScalar:function(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this},clampLength:function(t,e){var n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))},floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this},ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this},round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this},roundToZero:function(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z),this},negate:function(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this},dot:function(t){return this.x*t.x+this.y*t.y+this.z*t.z},lengthSq:function(){return this.x*this.x+this.y*this.y+this.z*this.z},length:function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},manhattanLength:function(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)},normalize:function(){return this.divideScalar(this.length()||1)},setLength:function(t){return this.normalize().multiplyScalar(t)},lerp:function(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this},lerpVectors:function(t,e,n){return this.subVectors(e,t).multiplyScalar(n).add(t)},cross:function(t,e){return void 0!==e?(console.warn("THREE.Vector3: .cross() now only accepts one argument. Use .crossVectors( a, b ) instead."),this.crossVectors(t,e)):this.crossVectors(this,t)},crossVectors:function(t,e){var n=t.x,i=t.y,r=t.z,o=e.x,a=e.y,s=e.z;return this.x=i*s-r*a,this.y=r*o-n*s,this.z=n*a-i*o,this},projectOnVector:function(t){var e=t.lengthSq();if(0===e)return this.set(0,0,0);var n=t.dot(this)/e;return this.copy(t).multiplyScalar(n)},projectOnPlane:function(t){return ii.copy(this).projectOnVector(t),this.sub(ii)},reflect:function(t){return this.sub(ii.copy(t).multiplyScalar(2*this.dot(t)))},angleTo:function(t){var e=Math.sqrt(this.lengthSq()*t.lengthSq());if(0===e)return Math.PI/2;var n=this.dot(t)/e;return Math.acos(Kn.clamp(n,-1,1))},distanceTo:function(t){return Math.sqrt(this.distanceToSquared(t))},distanceToSquared:function(t){var e=this.x-t.x,n=this.y-t.y,i=this.z-t.z;return e*e+n*n+i*i},manhattanDistanceTo:function(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)+Math.abs(this.z-t.z)},setFromSpherical:function(t){return this.setFromSphericalCoords(t.radius,t.phi,t.theta)},setFromSphericalCoords:function(t,e,n){var i=Math.sin(e)*t;return this.x=i*Math.sin(n),this.y=Math.cos(e)*t,this.z=i*Math.cos(n),this},setFromCylindrical:function(t){return this.setFromCylindricalCoords(t.radius,t.theta,t.y)},setFromCylindricalCoords:function(t,e,n){return this.x=t*Math.sin(e),this.y=n,this.z=t*Math.cos(e),this},setFromMatrixPosition:function(t){var e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this},setFromMatrixScale:function(t){var e=this.setFromMatrixColumn(t,0).length(),n=this.setFromMatrixColumn(t,1).length(),i=this.setFromMatrixColumn(t,2).length();return this.x=e,this.y=n,this.z=i,this},setFromMatrixColumn:function(t,e){return this.fromArray(t.elements,4*e)},setFromMatrix3Column:function(t,e){return this.fromArray(t.elements,3*e)},equals:function(t){return t.x===this.x&&t.y===this.y&&t.z===this.z},fromArray:function(t,e){return void 0===e&&(e=0),this.x=t[e],this.y=t[e+1],this.z=t[e+2],this},toArray:function(t,e){return void 0===t&&(t=[]),void 0===e&&(e=0),t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t},fromBufferAttribute:function(t,e,n){return void 0!==n&&console.warn("THREE.Vector3: offset has been removed from .fromBufferAttribute()."),this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this}});var ai=new oi,si=new hi,ci=new oi(0,0,0),li=new oi(1,1,1),ui=new oi,di=new oi,pi=new oi;function hi(){this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],arguments.length>0&&console.error("THREE.Matrix4: the constructor no longer reads arguments. use .set() instead.")}Object.assign(hi.prototype,{isMatrix4:!0,set:function(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g){var m=this.elements;return m[0]=t,m[4]=e,m[8]=n,m[12]=i,m[1]=r,m[5]=o,m[9]=a,m[13]=s,m[2]=c,m[6]=l,m[10]=u,m[14]=d,m[3]=p,m[7]=h,m[11]=f,m[15]=g,this},identity:function(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this},clone:function(){return(new hi).fromArray(this.elements)},copy:function(t){var e=this.elements,n=t.elements;return e[0]=n[0],e[1]=n[1],e[2]=n[2],e[3]=n[3],e[4]=n[4],e[5]=n[5],e[6]=n[6],e[7]=n[7],e[8]=n[8],e[9]=n[9],e[10]=n[10],e[11]=n[11],e[12]=n[12],e[13]=n[13],e[14]=n[14],e[15]=n[15],this},copyPosition:function(t){var e=this.elements,n=t.elements;return e[12]=n[12],e[13]=n[13],e[14]=n[14],this},extractBasis:function(t,e,n){return t.setFromMatrixColumn(this,0),e.setFromMatrixColumn(this,1),n.setFromMatrixColumn(this,2),this},makeBasis:function(t,e,n){return this.set(t.x,e.x,n.x,0,t.y,e.y,n.y,0,t.z,e.z,n.z,0,0,0,0,1),this},extractRotation:function(t){var e=this.elements,n=t.elements,i=1/ai.setFromMatrixColumn(t,0).length(),r=1/ai.setFromMatrixColumn(t,1).length(),o=1/ai.setFromMatrixColumn(t,2).length();return e[0]=n[0]*i,e[1]=n[1]*i,e[2]=n[2]*i,e[3]=0,e[4]=n[4]*r,e[5]=n[5]*r,e[6]=n[6]*r,e[7]=0,e[8]=n[8]*o,e[9]=n[9]*o,e[10]=n[10]*o,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this},makeRotationFromEuler:function(t){t&&t.isEuler||console.error("THREE.Matrix4: .makeRotationFromEuler() now expects a Euler rotation rather than a Vector3 and order.");var e=this.elements,n=t.x,i=t.y,r=t.z,o=Math.cos(n),a=Math.sin(n),s=Math.cos(i),c=Math.sin(i),l=Math.cos(r),u=Math.sin(r);if("XYZ"===t.order){var d=o*l,p=o*u,h=a*l,f=a*u;e[0]=s*l,e[4]=-s*u,e[8]=c,e[1]=p+h*c,e[5]=d-f*c,e[9]=-a*s,e[2]=f-d*c,e[6]=h+p*c,e[10]=o*s}else if("YXZ"===t.order){var g=s*l,m=s*u,v=c*l,y=c*u;e[0]=g+y*a,e[4]=v*a-m,e[8]=o*c,e[1]=o*u,e[5]=o*l,e[9]=-a,e[2]=m*a-v,e[6]=y+g*a,e[10]=o*s}else if("ZXY"===t.order)g=s*l,m=s*u,v=c*l,y=c*u,e[0]=g-y*a,e[4]=-o*u,e[8]=v+m*a,e[1]=m+v*a,e[5]=o*l,e[9]=y-g*a,e[2]=-o*c,e[6]=a,e[10]=o*s;else if("ZYX"===t.order)d=o*l,p=o*u,h=a*l,f=a*u,e[0]=s*l,e[4]=h*c-p,e[8]=d*c+f,e[1]=s*u,e[5]=f*c+d,e[9]=p*c-h,e[2]=-c,e[6]=a*s,e[10]=o*s;else if("YZX"===t.order){var b=o*s,w=o*c,S=a*s,x=a*c;e[0]=s*l,e[4]=x-b*u,e[8]=S*u+w,e[1]=u,e[5]=o*l,e[9]=-a*l,e[2]=-c*l,e[6]=w*u+S,e[10]=b-x*u}else"XZY"===t.order&&(b=o*s,w=o*c,S=a*s,x=a*c,e[0]=s*l,e[4]=-u,e[8]=c*l,e[1]=b*u+x,e[5]=o*l,e[9]=w*u-S,e[2]=S*u-w,e[6]=a*l,e[10]=x*u+b);return e[3]=0,e[7]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this},makeRotationFromQuaternion:function(t){return this.compose(ci,t,li)},lookAt:function(t,e,n){var i=this.elements;return pi.subVectors(t,e),0===pi.lengthSq()&&(pi.z=1),pi.normalize(),ui.crossVectors(n,pi),0===ui.lengthSq()&&(1===Math.abs(n.z)?pi.x+=1e-4:pi.z+=1e-4,pi.normalize(),ui.crossVectors(n,pi)),ui.normalize(),di.crossVectors(pi,ui),i[0]=ui.x,i[4]=di.x,i[8]=pi.x,i[1]=ui.y,i[5]=di.y,i[9]=pi.y,i[2]=ui.z,i[6]=di.z,i[10]=pi.z,this},multiply:function(t,e){return void 0!==e?(console.warn("THREE.Matrix4: .multiply() now only accepts one argument. Use .multiplyMatrices( a, b ) instead."),this.multiplyMatrices(t,e)):this.multiplyMatrices(this,t)},premultiply:function(t){return this.multiplyMatrices(t,this)},multiplyMatrices:function(t,e){var n=t.elements,i=e.elements,r=this.elements,o=n[0],a=n[4],s=n[8],c=n[12],l=n[1],u=n[5],d=n[9],p=n[13],h=n[2],f=n[6],g=n[10],m=n[14],v=n[3],y=n[7],b=n[11],w=n[15],S=i[0],x=i[4],M=i[8],E=i[12],C=i[1],A=i[5],T=i[9],O=i[13],_=i[2],P=i[6],I=i[10],k=i[14],D=i[3],R=i[7],L=i[11],N=i[15];return r[0]=o*S+a*C+s*_+c*D,r[4]=o*x+a*A+s*P+c*R,r[8]=o*M+a*T+s*I+c*L,r[12]=o*E+a*O+s*k+c*N,r[1]=l*S+u*C+d*_+p*D,r[5]=l*x+u*A+d*P+p*R,r[9]=l*M+u*T+d*I+p*L,r[13]=l*E+u*O+d*k+p*N,r[2]=h*S+f*C+g*_+m*D,r[6]=h*x+f*A+g*P+m*R,r[10]=h*M+f*T+g*I+m*L,r[14]=h*E+f*O+g*k+m*N,r[3]=v*S+y*C+b*_+w*D,r[7]=v*x+y*A+b*P+w*R,r[11]=v*M+y*T+b*I+w*L,r[15]=v*E+y*O+b*k+w*N,this},multiplyScalar:function(t){var e=this.elements;return e[0]*=t,e[4]*=t,e[8]*=t,e[12]*=t,e[1]*=t,e[5]*=t,e[9]*=t,e[13]*=t,e[2]*=t,e[6]*=t,e[10]*=t,e[14]*=t,e[3]*=t,e[7]*=t,e[11]*=t,e[15]*=t,this},determinant:function(){var t=this.elements,e=t[0],n=t[4],i=t[8],r=t[12],o=t[1],a=t[5],s=t[9],c=t[13],l=t[2],u=t[6],d=t[10],p=t[14];return t[3]*(+r*s*u-i*c*u-r*a*d+n*c*d+i*a*p-n*s*p)+t[7]*(+e*s*p-e*c*d+r*o*d-i*o*p+i*c*l-r*s*l)+t[11]*(+e*c*u-e*a*p-r*o*u+n*o*p+r*a*l-n*c*l)+t[15]*(-i*a*l-e*s*u+e*a*d+i*o*u-n*o*d+n*s*l)},transpose:function(){var t,e=this.elements;return t=e[1],e[1]=e[4],e[4]=t,t=e[2],e[2]=e[8],e[8]=t,t=e[6],e[6]=e[9],e[9]=t,t=e[3],e[3]=e[12],e[12]=t,t=e[7],e[7]=e[13],e[13]=t,t=e[11],e[11]=e[14],e[14]=t,this},setPosition:function(t,e,n){var i=this.elements;return t.isVector3?(i[12]=t.x,i[13]=t.y,i[14]=t.z):(i[12]=t,i[13]=e,i[14]=n),this},getInverse:function(t,e){void 0!==e&&console.warn("THREE.Matrix4: .getInverse() can no longer be configured to throw on degenerate.");var n=this.elements,i=t.elements,r=i[0],o=i[1],a=i[2],s=i[3],c=i[4],l=i[5],u=i[6],d=i[7],p=i[8],h=i[9],f=i[10],g=i[11],m=i[12],v=i[13],y=i[14],b=i[15],w=h*y*d-v*f*d+v*u*g-l*y*g-h*u*b+l*f*b,S=m*f*d-p*y*d-m*u*g+c*y*g+p*u*b-c*f*b,x=p*v*d-m*h*d+m*l*g-c*v*g-p*l*b+c*h*b,M=m*h*u-p*v*u-m*l*f+c*v*f+p*l*y-c*h*y,E=r*w+o*S+a*x+s*M;if(0===E)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);var C=1/E;return n[0]=w*C,n[1]=(v*f*s-h*y*s-v*a*g+o*y*g+h*a*b-o*f*b)*C,n[2]=(l*y*s-v*u*s+v*a*d-o*y*d-l*a*b+o*u*b)*C,n[3]=(h*u*s-l*f*s-h*a*d+o*f*d+l*a*g-o*u*g)*C,n[4]=S*C,n[5]=(p*y*s-m*f*s+m*a*g-r*y*g-p*a*b+r*f*b)*C,n[6]=(m*u*s-c*y*s-m*a*d+r*y*d+c*a*b-r*u*b)*C,n[7]=(c*f*s-p*u*s+p*a*d-r*f*d-c*a*g+r*u*g)*C,n[8]=x*C,n[9]=(m*h*s-p*v*s-m*o*g+r*v*g+p*o*b-r*h*b)*C,n[10]=(c*v*s-m*l*s+m*o*d-r*v*d-c*o*b+r*l*b)*C,n[11]=(p*l*s-c*h*s-p*o*d+r*h*d+c*o*g-r*l*g)*C,n[12]=M*C,n[13]=(p*v*a-m*h*a+m*o*f-r*v*f-p*o*y+r*h*y)*C,n[14]=(m*l*a-c*v*a-m*o*u+r*v*u+c*o*y-r*l*y)*C,n[15]=(c*h*a-p*l*a+p*o*u-r*h*u-c*o*f+r*l*f)*C,this},scale:function(t){var e=this.elements,n=t.x,i=t.y,r=t.z;return e[0]*=n,e[4]*=i,e[8]*=r,e[1]*=n,e[5]*=i,e[9]*=r,e[2]*=n,e[6]*=i,e[10]*=r,e[3]*=n,e[7]*=i,e[11]*=r,this},getMaxScaleOnAxis:function(){var t=this.elements,e=t[0]*t[0]+t[1]*t[1]+t[2]*t[2],n=t[4]*t[4]+t[5]*t[5]+t[6]*t[6],i=t[8]*t[8]+t[9]*t[9]+t[10]*t[10];return Math.sqrt(Math.max(e,n,i))},makeTranslation:function(t,e,n){return this.set(1,0,0,t,0,1,0,e,0,0,1,n,0,0,0,1),this},makeRotationX:function(t){var e=Math.cos(t),n=Math.sin(t);return this.set(1,0,0,0,0,e,-n,0,0,n,e,0,0,0,0,1),this},makeRotationY:function(t){var e=Math.cos(t),n=Math.sin(t);return this.set(e,0,n,0,0,1,0,0,-n,0,e,0,0,0,0,1),this},makeRotationZ:function(t){var e=Math.cos(t),n=Math.sin(t);return this.set(e,-n,0,0,n,e,0,0,0,0,1,0,0,0,0,1),this},makeRotationAxis:function(t,e){var n=Math.cos(e),i=Math.sin(e),r=1-n,o=t.x,a=t.y,s=t.z,c=r*o,l=r*a;return this.set(c*o+n,c*a-i*s,c*s+i*a,0,c*a+i*s,l*a+n,l*s-i*o,0,c*s-i*a,l*s+i*o,r*s*s+n,0,0,0,0,1),this},makeScale:function(t,e,n){return this.set(t,0,0,0,0,e,0,0,0,0,n,0,0,0,0,1),this},makeShear:function(t,e,n){return this.set(1,e,n,0,t,1,n,0,t,e,1,0,0,0,0,1),this},compose:function(t,e,n){var i=this.elements,r=e._x,o=e._y,a=e._z,s=e._w,c=r+r,l=o+o,u=a+a,d=r*c,p=r*l,h=r*u,f=o*l,g=o*u,m=a*u,v=s*c,y=s*l,b=s*u,w=n.x,S=n.y,x=n.z;return i[0]=(1-(f+m))*w,i[1]=(p+b)*w,i[2]=(h-y)*w,i[3]=0,i[4]=(p-b)*S,i[5]=(1-(d+m))*S,i[6]=(g+v)*S,i[7]=0,i[8]=(h+y)*x,i[9]=(g-v)*x,i[10]=(1-(d+f))*x,i[11]=0,i[12]=t.x,i[13]=t.y,i[14]=t.z,i[15]=1,this},decompose:function(t,e,n){var i=this.elements,r=ai.set(i[0],i[1],i[2]).length(),o=ai.set(i[4],i[5],i[6]).length(),a=ai.set(i[8],i[9],i[10]).length();this.determinant()<0&&(r=-r),t.x=i[12],t.y=i[13],t.z=i[14],si.copy(this);var s=1/r,c=1/o,l=1/a;return si.elements[0]*=s,si.elements[1]*=s,si.elements[2]*=s,si.elements[4]*=c,si.elements[5]*=c,si.elements[6]*=c,si.elements[8]*=l,si.elements[9]*=l,si.elements[10]*=l,e.setFromRotationMatrix(si),n.x=r,n.y=o,n.z=a,this},makePerspective:function(t,e,n,i,r,o){void 0===o&&console.warn("THREE.Matrix4: .makePerspective() has been redefined and has a new signature. Please check the docs.");var a=this.elements,s=2*r/(e-t),c=2*r/(n-i),l=(e+t)/(e-t),u=(n+i)/(n-i),d=-(o+r)/(o-r),p=-2*o*r/(o-r);return a[0]=s,a[4]=0,a[8]=l,a[12]=0,a[1]=0,a[5]=c,a[9]=u,a[13]=0,a[2]=0,a[6]=0,a[10]=d,a[14]=p,a[3]=0,a[7]=0,a[11]=-1,a[15]=0,this},makeOrthographic:function(t,e,n,i,r,o){var a=this.elements,s=1/(e-t),c=1/(n-i),l=1/(o-r),u=(e+t)*s,d=(n+i)*c,p=(o+r)*l;return a[0]=2*s,a[4]=0,a[8]=0,a[12]=-u,a[1]=0,a[5]=2*c,a[9]=0,a[13]=-d,a[2]=0,a[6]=0,a[10]=-2*l,a[14]=-p,a[3]=0,a[7]=0,a[11]=0,a[15]=1,this},equals:function(t){for(var e=this.elements,n=t.elements,i=0;i<16;i++)if(e[i]!==n[i])return!1;return!0},fromArray:function(t,e){void 0===e&&(e=0);for(var n=0;n<16;n++)this.elements[n]=t[n+e];return this},toArray:function(t,e){void 0===t&&(t=[]),void 0===e&&(e=0);var n=this.elements;return t[e]=n[0],t[e+1]=n[1],t[e+2]=n[2],t[e+3]=n[3],t[e+4]=n[4],t[e+5]=n[5],t[e+6]=n[6],t[e+7]=n[7],t[e+8]=n[8],t[e+9]=n[9],t[e+10]=n[10],t[e+11]=n[11],t[e+12]=n[12],t[e+13]=n[13],t[e+14]=n[14],t[e+15]=n[15],t}});var fi=new hi,gi=new ni;function mi(t,e,n,i){this._x=t||0,this._y=e||0,this._z=n||0,this._order=i||mi.DefaultOrder}function vi(){this.mask=1}mi.RotationOrders=["XYZ","YZX","ZXY","XZY","YXZ","ZYX"],mi.DefaultOrder="XYZ",Object.defineProperties(mi.prototype,{x:{get:function(){return this._x},set:function(t){this._x=t,this._onChangeCallback()}},y:{get:function(){return this._y},set:function(t){this._y=t,this._onChangeCallback()}},z:{get:function(){return this._z},set:function(t){this._z=t,this._onChangeCallback()}},order:{get:function(){return this._order},set:function(t){this._order=t,this._onChangeCallback()}}}),Object.assign(mi.prototype,{isEuler:!0,set:function(t,e,n,i){return this._x=t,this._y=e,this._z=n,this._order=i||this._order,this._onChangeCallback(),this},clone:function(){return new this.constructor(this._x,this._y,this._z,this._order)},copy:function(t){return this._x=t._x,this._y=t._y,this._z=t._z,this._order=t._order,this._onChangeCallback(),this},setFromRotationMatrix:function(t,e,n){var i=Kn.clamp,r=t.elements,o=r[0],a=r[4],s=r[8],c=r[1],l=r[5],u=r[9],d=r[2],p=r[6],h=r[10];return"XYZ"===(e=e||this._order)?(this._y=Math.asin(i(s,-1,1)),Math.abs(s)<.9999999?(this._x=Math.atan2(-u,h),this._z=Math.atan2(-a,o)):(this._x=Math.atan2(p,l),this._z=0)):"YXZ"===e?(this._x=Math.asin(-i(u,-1,1)),Math.abs(u)<.9999999?(this._y=Math.atan2(s,h),this._z=Math.atan2(c,l)):(this._y=Math.atan2(-d,o),this._z=0)):"ZXY"===e?(this._x=Math.asin(i(p,-1,1)),Math.abs(p)<.9999999?(this._y=Math.atan2(-d,h),this._z=Math.atan2(-a,l)):(this._y=0,this._z=Math.atan2(c,o))):"ZYX"===e?(this._y=Math.asin(-i(d,-1,1)),Math.abs(d)<.9999999?(this._x=Math.atan2(p,h),this._z=Math.atan2(c,o)):(this._x=0,this._z=Math.atan2(-a,l))):"YZX"===e?(this._z=Math.asin(i(c,-1,1)),Math.abs(c)<.9999999?(this._x=Math.atan2(-u,l),this._y=Math.atan2(-d,o)):(this._x=0,this._y=Math.atan2(s,h))):"XZY"===e?(this._z=Math.asin(-i(a,-1,1)),Math.abs(a)<.9999999?(this._x=Math.atan2(p,l),this._y=Math.atan2(s,o)):(this._x=Math.atan2(-u,h),this._y=0)):console.warn("THREE.Euler: .setFromRotationMatrix() given unsupported order: "+e),this._order=e,!1!==n&&this._onChangeCallback(),this},setFromQuaternion:function(t,e,n){return fi.makeRotationFromQuaternion(t),this.setFromRotationMatrix(fi,e,n)},setFromVector3:function(t,e){return this.set(t.x,t.y,t.z,e||this._order)},reorder:function(t){return gi.setFromEuler(this),this.setFromQuaternion(gi,t)},equals:function(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._order===this._order},fromArray:function(t){return this._x=t[0],this._y=t[1],this._z=t[2],void 0!==t[3]&&(this._order=t[3]),this._onChangeCallback(),this},toArray:function(t,e){return void 0===t&&(t=[]),void 0===e&&(e=0),t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._order,t},toVector3:function(t){return t?t.set(this._x,this._y,this._z):new oi(this._x,this._y,this._z)},_onChange:function(t){return this._onChangeCallback=t,this},_onChangeCallback:function(){}}),Object.assign(vi.prototype,{set:function(t){this.mask=1<<t|0},enable:function(t){this.mask|=1<<t|0},enableAll:function(){this.mask=-1},toggle:function(t){this.mask^=1<<t|0},disable:function(t){this.mask&=~(1<<t|0)},disableAll:function(){this.mask=0},test:function(t){return 0!=(this.mask&t.mask)}});var yi=0,bi=new oi,wi=new ni,Si=new hi,xi=new oi,Mi=new oi,Ei=new oi,Ci=new ni,Ai=new oi(1,0,0),Ti=new oi(0,1,0),Oi=new oi(0,0,1),_i={type:"added"},Pi={type:"removed"};function Ii(){Object.defineProperty(this,"id",{value:yi++}),this.uuid=Kn.generateUUID(),this.name="",this.type="Object3D",this.parent=null,this.children=[],this.up=Ii.DefaultUp.clone();var t=new oi,e=new mi,n=new ni,i=new oi(1,1,1);e._onChange(function(){n.setFromEuler(e,!1)}),n._onChange(function(){e.setFromQuaternion(n,void 0,!1)}),Object.defineProperties(this,{position:{configurable:!0,enumerable:!0,value:t},rotation:{configurable:!0,enumerable:!0,value:e},quaternion:{configurable:!0,enumerable:!0,value:n},scale:{configurable:!0,enumerable:!0,value:i},modelViewMatrix:{value:new hi},normalMatrix:{value:new Yn}}),this.matrix=new hi,this.matrixWorld=new hi,this.matrixAutoUpdate=Ii.DefaultMatrixAutoUpdate,this.matrixWorldNeedsUpdate=!1,this.layers=new vi,this.visible=!0,this.castShadow=!1,this.receiveShadow=!1,this.frustumCulled=!0,this.renderOrder=0,this.userData={}}function ki(){Ii.call(this),this.type="Scene",this.background=null,this.environment=null,this.fog=null,this.overrideMaterial=null,this.autoUpdate=!0,"undefined"!=typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}Ii.DefaultUp=new oi(0,1,0),Ii.DefaultMatrixAutoUpdate=!0,Ii.prototype=Object.assign(Object.create(Gn.prototype),{constructor:Ii,isObject3D:!0,onBeforeRender:function(){},onAfterRender:function(){},applyMatrix4:function(t){this.matrixAutoUpdate&&this.updateMatrix(),this.matrix.premultiply(t),this.matrix.decompose(this.position,this.quaternion,this.scale)},applyQuaternion:function(t){return this.quaternion.premultiply(t),this},setRotationFromAxisAngle:function(t,e){this.quaternion.setFromAxisAngle(t,e)},setRotationFromEuler:function(t){this.quaternion.setFromEuler(t,!0)},setRotationFromMatrix:function(t){this.quaternion.setFromRotationMatrix(t)},setRotationFromQuaternion:function(t){this.quaternion.copy(t)},rotateOnAxis:function(t,e){return wi.setFromAxisAngle(t,e),this.quaternion.multiply(wi),this},rotateOnWorldAxis:function(t,e){return wi.setFromAxisAngle(t,e),this.quaternion.premultiply(wi),this},rotateX:function(t){return this.rotateOnAxis(Ai,t)},rotateY:function(t){return this.rotateOnAxis(Ti,t)},rotateZ:function(t){return this.rotateOnAxis(Oi,t)},translateOnAxis:function(t,e){return bi.copy(t).applyQuaternion(this.quaternion),this.position.add(bi.multiplyScalar(e)),this},translateX:function(t){return this.translateOnAxis(Ai,t)},translateY:function(t){return this.translateOnAxis(Ti,t)},translateZ:function(t){return this.translateOnAxis(Oi,t)},localToWorld:function(t){return t.applyMatrix4(this.matrixWorld)},worldToLocal:function(t){return t.applyMatrix4(Si.getInverse(this.matrixWorld))},lookAt:function(t,e,n){t.isVector3?xi.copy(t):xi.set(t,e,n);var i=this.parent;this.updateWorldMatrix(!0,!1),Mi.setFromMatrixPosition(this.matrixWorld),this.isCamera||this.isLight?Si.lookAt(Mi,xi,this.up):Si.lookAt(xi,Mi,this.up),this.quaternion.setFromRotationMatrix(Si),i&&(Si.extractRotation(i.matrixWorld),wi.setFromRotationMatrix(Si),this.quaternion.premultiply(wi.inverse()))},add:function(t){if(arguments.length>1){for(var e=0;e<arguments.length;e++)this.add(arguments[e]);return this}return t===this?(console.error("THREE.Object3D.add: object can't be added as a child of itself.",t),this):(t&&t.isObject3D?(null!==t.parent&&t.parent.remove(t),t.parent=this,this.children.push(t),t.dispatchEvent(_i)):console.error("THREE.Object3D.add: object not an instance of THREE.Object3D.",t),this)},remove:function(t){if(arguments.length>1){for(var e=0;e<arguments.length;e++)this.remove(arguments[e]);return this}var n=this.children.indexOf(t);return-1!==n&&(t.parent=null,this.children.splice(n,1),t.dispatchEvent(Pi)),this},attach:function(t){return this.updateWorldMatrix(!0,!1),Si.getInverse(this.matrixWorld),null!==t.parent&&(t.parent.updateWorldMatrix(!0,!1),Si.multiply(t.parent.matrixWorld)),t.applyMatrix4(Si),t.updateWorldMatrix(!1,!1),this.add(t),this},getObjectById:function(t){return this.getObjectByProperty("id",t)},getObjectByName:function(t){return this.getObjectByProperty("name",t)},getObjectByProperty:function(t,e){if(this[t]===e)return this;for(var n=0,i=this.children.length;n<i;n++){var r=this.children[n].getObjectByProperty(t,e);if(void 0!==r)return r}},getWorldPosition:function(t){return void 0===t&&(console.warn("THREE.Object3D: .getWorldPosition() target is now required"),t=new oi),this.updateMatrixWorld(!0),t.setFromMatrixPosition(this.matrixWorld)},getWorldQuaternion:function(t){return void 0===t&&(console.warn("THREE.Object3D: .getWorldQuaternion() target is now required"),t=new ni),this.updateMatrixWorld(!0),this.matrixWorld.decompose(Mi,t,Ei),t},getWorldScale:function(t){return void 0===t&&(console.warn("THREE.Object3D: .getWorldScale() target is now required"),t=new oi),this.updateMatrixWorld(!0),this.matrixWorld.decompose(Mi,Ci,t),t},getWorldDirection:function(t){void 0===t&&(console.warn("THREE.Object3D: .getWorldDirection() target is now required"),t=new oi),this.updateMatrixWorld(!0);var e=this.matrixWorld.elements;return t.set(e[8],e[9],e[10]).normalize()},raycast:function(){},traverse:function(t){t(this);for(var e=this.children,n=0,i=e.length;n<i;n++)e[n].traverse(t)},traverseVisible:function(t){if(!1!==this.visible){t(this);for(var e=this.children,n=0,i=e.length;n<i;n++)e[n].traverseVisible(t)}},traverseAncestors:function(t){var e=this.parent;null!==e&&(t(e),e.traverseAncestors(t))},updateMatrix:function(){this.matrix.compose(this.position,this.quaternion,this.scale),this.matrixWorldNeedsUpdate=!0},updateMatrixWorld:function(t){this.matrixAutoUpdate&&this.updateMatrix(),(this.matrixWorldNeedsUpdate||t)&&(null===this.parent?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),this.matrixWorldNeedsUpdate=!1,t=!0);for(var e=this.children,n=0,i=e.length;n<i;n++)e[n].updateMatrixWorld(t)},updateWorldMatrix:function(t,e){var n=this.parent;if(!0===t&&null!==n&&n.updateWorldMatrix(!0,!1),this.matrixAutoUpdate&&this.updateMatrix(),null===this.parent?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),!0===e)for(var i=this.children,r=0,o=i.length;r<o;r++)i[r].updateWorldMatrix(!1,!0)},toJSON:function(t){var e=void 0===t||"string"==typeof t,n={};e&&(t={geometries:{},materials:{},textures:{},images:{},shapes:{}},n.metadata={version:4.5,type:"Object",generator:"Object3D.toJSON"});var i={};function r(e,n){return void 0===e[n.uuid]&&(e[n.uuid]=n.toJSON(t)),n.uuid}if(i.uuid=this.uuid,i.type=this.type,""!==this.name&&(i.name=this.name),!0===this.castShadow&&(i.castShadow=!0),!0===this.receiveShadow&&(i.receiveShadow=!0),!1===this.visible&&(i.visible=!1),!1===this.frustumCulled&&(i.frustumCulled=!1),0!==this.renderOrder&&(i.renderOrder=this.renderOrder),"{}"!==JSON.stringify(this.userData)&&(i.userData=this.userData),i.layers=this.layers.mask,i.matrix=this.matrix.toArray(),!1===this.matrixAutoUpdate&&(i.matrixAutoUpdate=!1),this.isInstancedMesh&&(i.type="InstancedMesh",i.count=this.count,i.instanceMatrix=this.instanceMatrix.toJSON()),this.isMesh||this.isLine||this.isPoints){i.geometry=r(t.geometries,this.geometry);var o=this.geometry.parameters;if(void 0!==o&&void 0!==o.shapes){var a=o.shapes;if(Array.isArray(a))for(var s=0,c=a.length;s<c;s++){var l=a[s];r(t.shapes,l)}else r(t.shapes,a)}}if(void 0!==this.material)if(Array.isArray(this.material)){var u=[];for(s=0,c=this.material.length;s<c;s++)u.push(r(t.materials,this.material[s]));i.material=u}else i.material=r(t.materials,this.material);if(this.children.length>0)for(i.children=[],s=0;s<this.children.length;s++)i.children.push(this.children[s].toJSON(t).object);if(e){var d=g(t.geometries),p=g(t.materials),h=g(t.textures),f=g(t.images);a=g(t.shapes),d.length>0&&(n.geometries=d),p.length>0&&(n.materials=p),h.length>0&&(n.textures=h),f.length>0&&(n.images=f),a.length>0&&(n.shapes=a)}return n.object=i,n;function g(t){var e=[];for(var n in t){var i=t[n];delete i.metadata,e.push(i)}return e}},clone:function(t){return(new this.constructor).copy(this,t)},copy:function(t,e){if(void 0===e&&(e=!0),this.name=t.name,this.up.copy(t.up),this.position.copy(t.position),this.quaternion.copy(t.quaternion),this.scale.copy(t.scale),this.matrix.copy(t.matrix),this.matrixWorld.copy(t.matrixWorld),this.matrixAutoUpdate=t.matrixAutoUpdate,this.matrixWorldNeedsUpdate=t.matrixWorldNeedsUpdate,this.layers.mask=t.layers.mask,this.visible=t.visible,this.castShadow=t.castShadow,this.receiveShadow=t.receiveShadow,this.frustumCulled=t.frustumCulled,this.renderOrder=t.renderOrder,this.userData=JSON.parse(JSON.stringify(t.userData)),!0===e)for(var n=0;n<t.children.length;n++){var i=t.children[n];this.add(i.clone())}return this}}),ki.prototype=Object.assign(Object.create(Ii.prototype),{constructor:ki,isScene:!0,copy:function(t,e){return Ii.prototype.copy.call(this,t,e),null!==t.background&&(this.background=t.background.clone()),null!==t.environment&&(this.environment=t.environment.clone()),null!==t.fog&&(this.fog=t.fog.clone()),null!==t.overrideMaterial&&(this.overrideMaterial=t.overrideMaterial.clone()),this.autoUpdate=t.autoUpdate,this.matrixAutoUpdate=t.matrixAutoUpdate,this},toJSON:function(t){var e=Ii.prototype.toJSON.call(this,t);return null!==this.background&&(e.object.background=this.background.toJSON(t)),null!==this.environment&&(e.object.environment=this.environment.toJSON(t)),null!==this.fog&&(e.object.fog=this.fog.toJSON()),e},dispose:function(){this.dispatchEvent({type:"dispose"})}});var Di=[new oi,new oi,new oi,new oi,new oi,new oi,new oi,new oi],Ri=new oi,Li=new qi,Ni=new oi,ji=new oi,Vi=new oi,Fi=new oi,Ui=new oi,Bi=new oi,zi=new oi,Gi=new oi,Hi=new oi,Wi=new oi;function qi(t,e){this.min=void 0!==t?t:new oi(1/0,1/0,1/0),this.max=void 0!==e?e:new oi(-1/0,-1/0,-1/0)}function Ki(t,e,n,i,r){var o,a;for(o=0,a=t.length-3;o<=a;o+=3){Wi.fromArray(t,o);var s=r.x*Math.abs(Wi.x)+r.y*Math.abs(Wi.y)+r.z*Math.abs(Wi.z),c=e.dot(Wi),l=n.dot(Wi),u=i.dot(Wi);if(Math.max(-Math.max(c,l,u),Math.min(c,l,u))>s)return!1}return!0}Object.assign(qi.prototype,{isBox3:!0,set:function(t,e){return this.min.copy(t),this.max.copy(e),this},setFromArray:function(t){for(var e=1/0,n=1/0,i=1/0,r=-1/0,o=-1/0,a=-1/0,s=0,c=t.length;s<c;s+=3){var l=t[s],u=t[s+1],d=t[s+2];l<e&&(e=l),u<n&&(n=u),d<i&&(i=d),l>r&&(r=l),u>o&&(o=u),d>a&&(a=d)}return this.min.set(e,n,i),this.max.set(r,o,a),this},setFromBufferAttribute:function(t){for(var e=1/0,n=1/0,i=1/0,r=-1/0,o=-1/0,a=-1/0,s=0,c=t.count;s<c;s++){var l=t.getX(s),u=t.getY(s),d=t.getZ(s);l<e&&(e=l),u<n&&(n=u),d<i&&(i=d),l>r&&(r=l),u>o&&(o=u),d>a&&(a=d)}return this.min.set(e,n,i),this.max.set(r,o,a),this},setFromPoints:function(t){this.makeEmpty();for(var e=0,n=t.length;e<n;e++)this.expandByPoint(t[e]);return this},setFromCenterAndSize:function(t,e){var n=Ri.copy(e).multiplyScalar(.5);return this.min.copy(t).sub(n),this.max.copy(t).add(n),this},setFromObject:function(t){return this.makeEmpty(),this.expandByObject(t)},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.min.copy(t.min),this.max.copy(t.max),this},makeEmpty:function(){return this.min.x=this.min.y=this.min.z=1/0,this.max.x=this.max.y=this.max.z=-1/0,this},isEmpty:function(){return this.max.x<this.min.x||this.max.y<this.min.y||this.max.z<this.min.z},getCenter:function(t){return void 0===t&&(console.warn("THREE.Box3: .getCenter() target is now required"),t=new oi),this.isEmpty()?t.set(0,0,0):t.addVectors(this.min,this.max).multiplyScalar(.5)},getSize:function(t){return void 0===t&&(console.warn("THREE.Box3: .getSize() target is now required"),t=new oi),this.isEmpty()?t.set(0,0,0):t.subVectors(this.max,this.min)},expandByPoint:function(t){return this.min.min(t),this.max.max(t),this},expandByVector:function(t){return this.min.sub(t),this.max.add(t),this},expandByScalar:function(t){return this.min.addScalar(-t),this.max.addScalar(t),this},expandByObject:function(t){t.updateWorldMatrix(!1,!1);var e=t.geometry;void 0!==e&&(null===e.boundingBox&&e.computeBoundingBox(),Li.copy(e.boundingBox),Li.applyMatrix4(t.matrixWorld),this.union(Li));for(var n=t.children,i=0,r=n.length;i<r;i++)this.expandByObject(n[i]);return this},containsPoint:function(t){return!(t.x<this.min.x||t.x>this.max.x||t.y<this.min.y||t.y>this.max.y||t.z<this.min.z||t.z>this.max.z)},containsBox:function(t){return this.min.x<=t.min.x&&t.max.x<=this.max.x&&this.min.y<=t.min.y&&t.max.y<=this.max.y&&this.min.z<=t.min.z&&t.max.z<=this.max.z},getParameter:function(t,e){return void 0===e&&(console.warn("THREE.Box3: .getParameter() target is now required"),e=new oi),e.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y),(t.z-this.min.z)/(this.max.z-this.min.z))},intersectsBox:function(t){return!(t.max.x<this.min.x||t.min.x>this.max.x||t.max.y<this.min.y||t.min.y>this.max.y||t.max.z<this.min.z||t.min.z>this.max.z)},intersectsSphere:function(t){return this.clampPoint(t.center,Ri),Ri.distanceToSquared(t.center)<=t.radius*t.radius},intersectsPlane:function(t){var e,n;return t.normal.x>0?(e=t.normal.x*this.min.x,n=t.normal.x*this.max.x):(e=t.normal.x*this.max.x,n=t.normal.x*this.min.x),t.normal.y>0?(e+=t.normal.y*this.min.y,n+=t.normal.y*this.max.y):(e+=t.normal.y*this.max.y,n+=t.normal.y*this.min.y),t.normal.z>0?(e+=t.normal.z*this.min.z,n+=t.normal.z*this.max.z):(e+=t.normal.z*this.max.z,n+=t.normal.z*this.min.z),e<=-t.constant&&n>=-t.constant},intersectsTriangle:function(t){if(this.isEmpty())return!1;this.getCenter(zi),Gi.subVectors(this.max,zi),Ni.subVectors(t.a,zi),ji.subVectors(t.b,zi),Vi.subVectors(t.c,zi),Fi.subVectors(ji,Ni),Ui.subVectors(Vi,ji),Bi.subVectors(Ni,Vi);var e=[0,-Fi.z,Fi.y,0,-Ui.z,Ui.y,0,-Bi.z,Bi.y,Fi.z,0,-Fi.x,Ui.z,0,-Ui.x,Bi.z,0,-Bi.x,-Fi.y,Fi.x,0,-Ui.y,Ui.x,0,-Bi.y,Bi.x,0];return!!Ki(e,Ni,ji,Vi,Gi)&&!!Ki(e=[1,0,0,0,1,0,0,0,1],Ni,ji,Vi,Gi)&&(Hi.crossVectors(Fi,Ui),Ki(e=[Hi.x,Hi.y,Hi.z],Ni,ji,Vi,Gi))},clampPoint:function(t,e){return void 0===e&&(console.warn("THREE.Box3: .clampPoint() target is now required"),e=new oi),e.copy(t).clamp(this.min,this.max)},distanceToPoint:function(t){return Ri.copy(t).clamp(this.min,this.max).sub(t).length()},getBoundingSphere:function(t){return void 0===t&&console.error("THREE.Box3: .getBoundingSphere() target is now required"),this.getCenter(t.center),t.radius=.5*this.getSize(Ri).length(),t},intersect:function(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this},union:function(t){return this.min.min(t.min),this.max.max(t.max),this},applyMatrix4:function(t){return this.isEmpty()||(Di[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(t),Di[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(t),Di[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(t),Di[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(t),Di[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(t),Di[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(t),Di[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(t),Di[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(t),this.setFromPoints(Di)),this},translate:function(t){return this.min.add(t),this.max.add(t),this},equals:function(t){return t.min.equals(this.min)&&t.max.equals(this.max)}});var Xi=new qi;function Yi(t,e){this.center=void 0!==t?t:new oi,this.radius=void 0!==e?e:0}Object.assign(Yi.prototype,{set:function(t,e){return this.center.copy(t),this.radius=e,this},setFromPoints:function(t,e){var n=this.center;void 0!==e?n.copy(e):Xi.setFromPoints(t).getCenter(n);for(var i=0,r=0,o=t.length;r<o;r++)i=Math.max(i,n.distanceToSquared(t[r]));return this.radius=Math.sqrt(i),this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.center.copy(t.center),this.radius=t.radius,this},empty:function(){return this.radius<=0},containsPoint:function(t){return t.distanceToSquared(this.center)<=this.radius*this.radius},distanceToPoint:function(t){return t.distanceTo(this.center)-this.radius},intersectsSphere:function(t){var e=this.radius+t.radius;return t.center.distanceToSquared(this.center)<=e*e},intersectsBox:function(t){return t.intersectsSphere(this)},intersectsPlane:function(t){return Math.abs(t.distanceToPoint(this.center))<=this.radius},clampPoint:function(t,e){var n=this.center.distanceToSquared(t);return void 0===e&&(console.warn("THREE.Sphere: .clampPoint() target is now required"),e=new oi),e.copy(t),n>this.radius*this.radius&&(e.sub(this.center).normalize(),e.multiplyScalar(this.radius).add(this.center)),e},getBoundingBox:function(t){return void 0===t&&(console.warn("THREE.Sphere: .getBoundingBox() target is now required"),t=new qi),t.set(this.center,this.center),t.expandByScalar(this.radius),t},applyMatrix4:function(t){return this.center.applyMatrix4(t),this.radius=this.radius*t.getMaxScaleOnAxis(),this},translate:function(t){return this.center.add(t),this},equals:function(t){return t.center.equals(this.center)&&t.radius===this.radius}});var Zi=new oi,Ji=new oi,Qi=new oi,$i=new oi,tr=new oi,er=new oi,nr=new oi;function ir(t,e){this.origin=void 0!==t?t:new oi,this.direction=void 0!==e?e:new oi(0,0,-1)}Object.assign(ir.prototype,{set:function(t,e){return this.origin.copy(t),this.direction.copy(e),this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.origin.copy(t.origin),this.direction.copy(t.direction),this},at:function(t,e){return void 0===e&&(console.warn("THREE.Ray: .at() target is now required"),e=new oi),e.copy(this.direction).multiplyScalar(t).add(this.origin)},lookAt:function(t){return this.direction.copy(t).sub(this.origin).normalize(),this},recast:function(t){return this.origin.copy(this.at(t,Zi)),this},closestPointToPoint:function(t,e){void 0===e&&(console.warn("THREE.Ray: .closestPointToPoint() target is now required"),e=new oi),e.subVectors(t,this.origin);var n=e.dot(this.direction);return n<0?e.copy(this.origin):e.copy(this.direction).multiplyScalar(n).add(this.origin)},distanceToPoint:function(t){return Math.sqrt(this.distanceSqToPoint(t))},distanceSqToPoint:function(t){var e=Zi.subVectors(t,this.origin).dot(this.direction);return e<0?this.origin.distanceToSquared(t):(Zi.copy(this.direction).multiplyScalar(e).add(this.origin),Zi.distanceToSquared(t))},distanceSqToSegment:function(t,e,n,i){Ji.copy(t).add(e).multiplyScalar(.5),Qi.copy(e).sub(t).normalize(),$i.copy(this.origin).sub(Ji);var r,o,a,s,c=.5*t.distanceTo(e),l=-this.direction.dot(Qi),u=$i.dot(this.direction),d=-$i.dot(Qi),p=$i.lengthSq(),h=Math.abs(1-l*l);if(h>0)if(o=l*u-d,s=c*h,(r=l*d-u)>=0)if(o>=-s)if(o<=s){var f=1/h;a=(r*=f)*(r+l*(o*=f)+2*u)+o*(l*r+o+2*d)+p}else o=c,a=-(r=Math.max(0,-(l*o+u)))*r+o*(o+2*d)+p;else o=-c,a=-(r=Math.max(0,-(l*o+u)))*r+o*(o+2*d)+p;else o<=-s?a=-(r=Math.max(0,-(-l*c+u)))*r+(o=r>0?-c:Math.min(Math.max(-c,-d),c))*(o+2*d)+p:o<=s?(r=0,a=(o=Math.min(Math.max(-c,-d),c))*(o+2*d)+p):a=-(r=Math.max(0,-(l*c+u)))*r+(o=r>0?c:Math.min(Math.max(-c,-d),c))*(o+2*d)+p;else o=l>0?-c:c,a=-(r=Math.max(0,-(l*o+u)))*r+o*(o+2*d)+p;return n&&n.copy(this.direction).multiplyScalar(r).add(this.origin),i&&i.copy(Qi).multiplyScalar(o).add(Ji),a},intersectSphere:function(t,e){Zi.subVectors(t.center,this.origin);var n=Zi.dot(this.direction),i=Zi.dot(Zi)-n*n,r=t.radius*t.radius;if(i>r)return null;var o=Math.sqrt(r-i),a=n-o,s=n+o;return a<0&&s<0?null:a<0?this.at(s,e):this.at(a,e)},intersectsSphere:function(t){return this.distanceSqToPoint(t.center)<=t.radius*t.radius},distanceToPlane:function(t){var e=t.normal.dot(this.direction);if(0===e)return 0===t.distanceToPoint(this.origin)?0:null;var n=-(this.origin.dot(t.normal)+t.constant)/e;return n>=0?n:null},intersectPlane:function(t,e){var n=this.distanceToPlane(t);return null===n?null:this.at(n,e)},intersectsPlane:function(t){var e=t.distanceToPoint(this.origin);return 0===e||t.normal.dot(this.direction)*e<0},intersectBox:function(t,e){var n,i,r,o,a,s,c=1/this.direction.x,l=1/this.direction.y,u=1/this.direction.z,d=this.origin;return c>=0?(n=(t.min.x-d.x)*c,i=(t.max.x-d.x)*c):(n=(t.max.x-d.x)*c,i=(t.min.x-d.x)*c),l>=0?(r=(t.min.y-d.y)*l,o=(t.max.y-d.y)*l):(r=(t.max.y-d.y)*l,o=(t.min.y-d.y)*l),n>o||r>i?null:((r>n||n!=n)&&(n=r),(o<i||i!=i)&&(i=o),u>=0?(a=(t.min.z-d.z)*u,s=(t.max.z-d.z)*u):(a=(t.max.z-d.z)*u,s=(t.min.z-d.z)*u),n>s||a>i?null:((a>n||n!=n)&&(n=a),(s<i||i!=i)&&(i=s),i<0?null:this.at(n>=0?n:i,e)))},intersectsBox:function(t){return null!==this.intersectBox(t,Zi)},intersectTriangle:function(t,e,n,i,r){tr.subVectors(e,t),er.subVectors(n,t),nr.crossVectors(tr,er);var o,a=this.direction.dot(nr);if(a>0){if(i)return null;o=1}else{if(!(a<0))return null;o=-1,a=-a}$i.subVectors(this.origin,t);var s=o*this.direction.dot(er.crossVectors($i,er));if(s<0)return null;var c=o*this.direction.dot(tr.cross($i));if(c<0)return null;if(s+c>a)return null;var l=-o*$i.dot(nr);return l<0?null:this.at(l/a,r)},applyMatrix4:function(t){return this.origin.applyMatrix4(t),this.direction.transformDirection(t),this},equals:function(t){return t.origin.equals(this.origin)&&t.direction.equals(this.direction)}});var rr=new oi,or=new oi,ar=new Yn;function sr(t,e){this.normal=void 0!==t?t:new oi(1,0,0),this.constant=void 0!==e?e:0}Object.assign(sr.prototype,{isPlane:!0,set:function(t,e){return this.normal.copy(t),this.constant=e,this},setComponents:function(t,e,n,i){return this.normal.set(t,e,n),this.constant=i,this},setFromNormalAndCoplanarPoint:function(t,e){return this.normal.copy(t),this.constant=-e.dot(this.normal),this},setFromCoplanarPoints:function(t,e,n){var i=rr.subVectors(n,e).cross(or.subVectors(t,e)).normalize();return this.setFromNormalAndCoplanarPoint(i,t),this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.normal.copy(t.normal),this.constant=t.constant,this},normalize:function(){var t=1/this.normal.length();return this.normal.multiplyScalar(t),this.constant*=t,this},negate:function(){return this.constant*=-1,this.normal.negate(),this},distanceToPoint:function(t){return this.normal.dot(t)+this.constant},distanceToSphere:function(t){return this.distanceToPoint(t.center)-t.radius},projectPoint:function(t,e){return void 0===e&&(console.warn("THREE.Plane: .projectPoint() target is now required"),e=new oi),e.copy(this.normal).multiplyScalar(-this.distanceToPoint(t)).add(t)},intersectLine:function(t,e){void 0===e&&(console.warn("THREE.Plane: .intersectLine() target is now required"),e=new oi);var n=t.delta(rr),i=this.normal.dot(n);if(0===i)return 0===this.distanceToPoint(t.start)?e.copy(t.start):void 0;var r=-(t.start.dot(this.normal)+this.constant)/i;return r<0||r>1?void 0:e.copy(n).multiplyScalar(r).add(t.start)},intersectsLine:function(t){var e=this.distanceToPoint(t.start),n=this.distanceToPoint(t.end);return e<0&&n>0||n<0&&e>0},intersectsBox:function(t){return t.intersectsPlane(this)},intersectsSphere:function(t){return t.intersectsPlane(this)},coplanarPoint:function(t){return void 0===t&&(console.warn("THREE.Plane: .coplanarPoint() target is now required"),t=new oi),t.copy(this.normal).multiplyScalar(-this.constant)},applyMatrix4:function(t,e){var n=e||ar.getNormalMatrix(t),i=this.coplanarPoint(rr).applyMatrix4(t),r=this.normal.applyMatrix3(n).normalize();return this.constant=-i.dot(r),this},translate:function(t){return this.constant-=t.dot(this.normal),this},equals:function(t){return t.normal.equals(this.normal)&&t.constant===this.constant}});var cr=new oi,lr=new oi,ur=new oi,dr=new oi,pr=new oi,hr=new oi,fr=new oi,gr=new oi,mr=new oi,vr=new oi;function yr(t,e,n){this.a=void 0!==t?t:new oi,this.b=void 0!==e?e:new oi,this.c=void 0!==n?n:new oi}Object.assign(yr,{getNormal:function(t,e,n,i){void 0===i&&(console.warn("THREE.Triangle: .getNormal() target is now required"),i=new oi),i.subVectors(n,e),cr.subVectors(t,e),i.cross(cr);var r=i.lengthSq();return r>0?i.multiplyScalar(1/Math.sqrt(r)):i.set(0,0,0)},getBarycoord:function(t,e,n,i,r){cr.subVectors(i,e),lr.subVectors(n,e),ur.subVectors(t,e);var o=cr.dot(cr),a=cr.dot(lr),s=cr.dot(ur),c=lr.dot(lr),l=lr.dot(ur),u=o*c-a*a;if(void 0===r&&(console.warn("THREE.Triangle: .getBarycoord() target is now required"),r=new oi),0===u)return r.set(-2,-1,-1);var d=1/u,p=(c*s-a*l)*d,h=(o*l-a*s)*d;return r.set(1-p-h,h,p)},containsPoint:function(t,e,n,i){return yr.getBarycoord(t,e,n,i,dr),dr.x>=0&&dr.y>=0&&dr.x+dr.y<=1},getUV:function(t,e,n,i,r,o,a,s){return this.getBarycoord(t,e,n,i,dr),s.set(0,0),s.addScaledVector(r,dr.x),s.addScaledVector(o,dr.y),s.addScaledVector(a,dr.z),s},isFrontFacing:function(t,e,n,i){return cr.subVectors(n,e),lr.subVectors(t,e),cr.cross(lr).dot(i)<0}}),Object.assign(yr.prototype,{set:function(t,e,n){return this.a.copy(t),this.b.copy(e),this.c.copy(n),this},setFromPointsAndIndices:function(t,e,n,i){return this.a.copy(t[e]),this.b.copy(t[n]),this.c.copy(t[i]),this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.a.copy(t.a),this.b.copy(t.b),this.c.copy(t.c),this},getArea:function(){return cr.subVectors(this.c,this.b),lr.subVectors(this.a,this.b),.5*cr.cross(lr).length()},getMidpoint:function(t){return void 0===t&&(console.warn("THREE.Triangle: .getMidpoint() target is now required"),t=new oi),t.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)},getNormal:function(t){return yr.getNormal(this.a,this.b,this.c,t)},getPlane:function(t){return void 0===t&&(console.warn("THREE.Triangle: .getPlane() target is now required"),t=new sr),t.setFromCoplanarPoints(this.a,this.b,this.c)},getBarycoord:function(t,e){return yr.getBarycoord(t,this.a,this.b,this.c,e)},getUV:function(t,e,n,i,r){return yr.getUV(t,this.a,this.b,this.c,e,n,i,r)},containsPoint:function(t){return yr.containsPoint(t,this.a,this.b,this.c)},isFrontFacing:function(t){return yr.isFrontFacing(this.a,this.b,this.c,t)},intersectsBox:function(t){return t.intersectsTriangle(this)},closestPointToPoint:function(t,e){void 0===e&&(console.warn("THREE.Triangle: .closestPointToPoint() target is now required"),e=new oi);var n,i,r=this.a,o=this.b,a=this.c;pr.subVectors(o,r),hr.subVectors(a,r),gr.subVectors(t,r);var s=pr.dot(gr),c=hr.dot(gr);if(s<=0&&c<=0)return e.copy(r);mr.subVectors(t,o);var l=pr.dot(mr),u=hr.dot(mr);if(l>=0&&u<=l)return e.copy(o);var d=s*u-l*c;if(d<=0&&s>=0&&l<=0)return n=s/(s-l),e.copy(r).addScaledVector(pr,n);vr.subVectors(t,a);var p=pr.dot(vr),h=hr.dot(vr);if(h>=0&&p<=h)return e.copy(a);var f=p*c-s*h;if(f<=0&&c>=0&&h<=0)return i=c/(c-h),e.copy(r).addScaledVector(hr,i);var g=l*h-p*u;if(g<=0&&u-l>=0&&p-h>=0)return fr.subVectors(a,o),i=(u-l)/(u-l+(p-h)),e.copy(o).addScaledVector(fr,i);var m=1/(g+f+d);return n=f*m,i=d*m,e.copy(r).addScaledVector(pr,n).addScaledVector(hr,i)},equals:function(t){return t.a.equals(this.a)&&t.b.equals(this.b)&&t.c.equals(this.c)}});var br={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},wr={h:0,s:0,l:0},Sr={h:0,s:0,l:0};function xr(t,e,n){return void 0===e&&void 0===n?this.set(t):this.setRGB(t,e,n)}function Mr(t,e,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+6*(e-t)*n:n<.5?e:n<2/3?t+6*(e-t)*(2/3-n):t}function Er(t){return t<.04045?.0773993808*t:Math.pow(.9478672986*t+.0521327014,2.4)}function Cr(t){return t<.0031308?12.92*t:1.055*Math.pow(t,.41666)-.055}function Ar(t,e,n,i,r,o){this.a=t,this.b=e,this.c=n,this.normal=i&&i.isVector3?i:new oi,this.vertexNormals=Array.isArray(i)?i:[],this.color=r&&r.isColor?r:new xr,this.vertexColors=Array.isArray(r)?r:[],this.materialIndex=void 0!==o?o:0}Object.assign(xr.prototype,{isColor:!0,r:1,g:1,b:1,set:function(t){return t&&t.isColor?this.copy(t):"number"==typeof t?this.setHex(t):"string"==typeof t&&this.setStyle(t),this},setScalar:function(t){return this.r=t,this.g=t,this.b=t,this},setHex:function(t){return t=Math.floor(t),this.r=(t>>16&255)/255,this.g=(t>>8&255)/255,this.b=(255&t)/255,this},setRGB:function(t,e,n){return this.r=t,this.g=e,this.b=n,this},setHSL:function(t,e,n){if(t=Kn.euclideanModulo(t,1),e=Kn.clamp(e,0,1),n=Kn.clamp(n,0,1),0===e)this.r=this.g=this.b=n;else{var i=n<=.5?n*(1+e):n+e-n*e,r=2*n-i;this.r=Mr(r,i,t+1/3),this.g=Mr(r,i,t),this.b=Mr(r,i,t-1/3)}return this},setStyle:function(t){function e(e){void 0!==e&&parseFloat(e)<1&&console.warn("THREE.Color: Alpha component of "+t+" will be ignored.")}var n;if(n=/^((?:rgb|hsl)a?)\(\s*([^\)]*)\)/.exec(t)){var i,r=n[1],o=n[2];switch(r){case"rgb":case"rgba":if(i=/^(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(,\s*([0-9]*\.?[0-9]+)\s*)?$/.exec(o))return this.r=Math.min(255,parseInt(i[1],10))/255,this.g=Math.min(255,parseInt(i[2],10))/255,this.b=Math.min(255,parseInt(i[3],10))/255,e(i[5]),this;if(i=/^(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(,\s*([0-9]*\.?[0-9]+)\s*)?$/.exec(o))return this.r=Math.min(100,parseInt(i[1],10))/100,this.g=Math.min(100,parseInt(i[2],10))/100,this.b=Math.min(100,parseInt(i[3],10))/100,e(i[5]),this;break;case"hsl":case"hsla":if(i=/^([0-9]*\.?[0-9]+)\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(,\s*([0-9]*\.?[0-9]+)\s*)?$/.exec(o)){var a=parseFloat(i[1])/360,s=parseInt(i[2],10)/100,c=parseInt(i[3],10)/100;return e(i[5]),this.setHSL(a,s,c)}}}else if(n=/^\#([A-Fa-f0-9]+)$/.exec(t)){var l=n[1],u=l.length;if(3===u)return this.r=parseInt(l.charAt(0)+l.charAt(0),16)/255,this.g=parseInt(l.charAt(1)+l.charAt(1),16)/255,this.b=parseInt(l.charAt(2)+l.charAt(2),16)/255,this;if(6===u)return this.r=parseInt(l.charAt(0)+l.charAt(1),16)/255,this.g=parseInt(l.charAt(2)+l.charAt(3),16)/255,this.b=parseInt(l.charAt(4)+l.charAt(5),16)/255,this}return t&&t.length>0?this.setColorName(t):this},setColorName:function(t){var e=br[t];return void 0!==e?this.setHex(e):console.warn("THREE.Color: Unknown color "+t),this},clone:function(){return new this.constructor(this.r,this.g,this.b)},copy:function(t){return this.r=t.r,this.g=t.g,this.b=t.b,this},copyGammaToLinear:function(t,e){return void 0===e&&(e=2),this.r=Math.pow(t.r,e),this.g=Math.pow(t.g,e),this.b=Math.pow(t.b,e),this},copyLinearToGamma:function(t,e){void 0===e&&(e=2);var n=e>0?1/e:1;return this.r=Math.pow(t.r,n),this.g=Math.pow(t.g,n),this.b=Math.pow(t.b,n),this},convertGammaToLinear:function(t){return this.copyGammaToLinear(this,t),this},convertLinearToGamma:function(t){return this.copyLinearToGamma(this,t),this},copySRGBToLinear:function(t){return this.r=Er(t.r),this.g=Er(t.g),this.b=Er(t.b),this},copyLinearToSRGB:function(t){return this.r=Cr(t.r),this.g=Cr(t.g),this.b=Cr(t.b),this},convertSRGBToLinear:function(){return this.copySRGBToLinear(this),this},convertLinearToSRGB:function(){return this.copyLinearToSRGB(this),this},getHex:function(){return 255*this.r<<16^255*this.g<<8^255*this.b<<0},getHexString:function(){return("000000"+this.getHex().toString(16)).slice(-6)},getHSL:function(t){void 0===t&&(console.warn("THREE.Color: .getHSL() target is now required"),t={h:0,s:0,l:0});var e,n,i=this.r,r=this.g,o=this.b,a=Math.max(i,r,o),s=Math.min(i,r,o),c=(s+a)/2;if(s===a)e=0,n=0;else{var l=a-s;switch(n=c<=.5?l/(a+s):l/(2-a-s),a){case i:e=(r-o)/l+(r<o?6:0);break;case r:e=(o-i)/l+2;break;case o:e=(i-r)/l+4}e/=6}return t.h=e,t.s=n,t.l=c,t},getStyle:function(){return"rgb("+(255*this.r|0)+","+(255*this.g|0)+","+(255*this.b|0)+")"},offsetHSL:function(t,e,n){return this.getHSL(wr),wr.h+=t,wr.s+=e,wr.l+=n,this.setHSL(wr.h,wr.s,wr.l),this},add:function(t){return this.r+=t.r,this.g+=t.g,this.b+=t.b,this},addColors:function(t,e){return this.r=t.r+e.r,this.g=t.g+e.g,this.b=t.b+e.b,this},addScalar:function(t){return this.r+=t,this.g+=t,this.b+=t,this},sub:function(t){return this.r=Math.max(0,this.r-t.r),this.g=Math.max(0,this.g-t.g),this.b=Math.max(0,this.b-t.b),this},multiply:function(t){return this.r*=t.r,this.g*=t.g,this.b*=t.b,this},multiplyScalar:function(t){return this.r*=t,this.g*=t,this.b*=t,this},lerp:function(t,e){return this.r+=(t.r-this.r)*e,this.g+=(t.g-this.g)*e,this.b+=(t.b-this.b)*e,this},lerpHSL:function(t,e){this.getHSL(wr),t.getHSL(Sr);var n=Kn.lerp(wr.h,Sr.h,e),i=Kn.lerp(wr.s,Sr.s,e),r=Kn.lerp(wr.l,Sr.l,e);return this.setHSL(n,i,r),this},equals:function(t){return t.r===this.r&&t.g===this.g&&t.b===this.b},fromArray:function(t,e){return void 0===e&&(e=0),this.r=t[e],this.g=t[e+1],this.b=t[e+2],this},toArray:function(t,e){return void 0===t&&(t=[]),void 0===e&&(e=0),t[e]=this.r,t[e+1]=this.g,t[e+2]=this.b,t},toJSON:function(){return this.getHex()}}),xr.NAMES=br,Object.assign(Ar.prototype,{clone:function(){return(new this.constructor).copy(this)},copy:function(t){this.a=t.a,this.b=t.b,this.c=t.c,this.normal.copy(t.normal),this.color.copy(t.color),this.materialIndex=t.materialIndex;for(var e=0,n=t.vertexNormals.length;e<n;e++)this.vertexNormals[e]=t.vertexNormals[e].clone();for(e=0,n=t.vertexColors.length;e<n;e++)this.vertexColors[e]=t.vertexColors[e].clone();return this}});var Tr=0;function Or(){Object.defineProperty(this,"id",{value:Tr++}),this.uuid=Kn.generateUUID(),this.name="",this.type="Material",this.fog=!0,this.blending=P,this.side=E,this.flatShading=!1,this.vertexColors=!1,this.opacity=1,this.transparent=!1,this.blendSrc=H,this.blendDst=W,this.blendEquation=L,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.depthFunc=tt,this.depthTest=!0,this.depthWrite=!0,this.stencilWriteMask=255,this.stencilFunc=Dn,this.stencilRef=0,this.stencilFuncMask=255,this.stencilFail=bn,this.stencilZFail=bn,this.stencilZPass=bn,this.stencilWrite=!1,this.clippingPlanes=null,this.clipIntersection=!1,this.clipShadows=!1,this.shadowSide=null,this.colorWrite=!0,this.precision=null,this.polygonOffset=!1,this.polygonOffsetFactor=0,this.polygonOffsetUnits=0,this.dithering=!1,this.alphaTest=0,this.premultipliedAlpha=!1,this.visible=!0,this.toneMapped=!0,this.userData={},this.version=0}function _r(t){Or.call(this),this.type="MeshBasicMaterial",this.color=new xr(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=ot,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.skinning=!1,this.morphTargets=!1,this.setValues(t)}Or.prototype=Object.assign(Object.create(Gn.prototype),{constructor:Or,isMaterial:!0,onBeforeCompile:function(){},setValues:function(t){if(void 0!==t)for(var e in t){var n=t[e];if(void 0!==n)if("shading"!==e){var i=this[e];void 0!==i?i&&i.isColor?i.set(n):i&&i.isVector3&&n&&n.isVector3?i.copy(n):this[e]=n:console.warn("THREE."+this.type+": '"+e+"' is not a property of this material.")}else console.warn("THREE."+this.type+": .shading has been removed. Use the boolean .flatShading instead."),this.flatShading=n===T;else console.warn("THREE.Material: '"+e+"' parameter is undefined.")}},toJSON:function(t){var e=void 0===t||"string"==typeof t;e&&(t={textures:{},images:{}});var n={metadata:{version:4.5,type:"Material",generator:"Material.toJSON"}};function i(t){var e=[];for(var n in t){var i=t[n];delete i.metadata,e.push(i)}return e}if(n.uuid=this.uuid,n.type=this.type,""!==this.name&&(n.name=this.name),this.color&&this.color.isColor&&(n.color=this.color.getHex()),void 0!==this.roughness&&(n.roughness=this.roughness),void 0!==this.metalness&&(n.metalness=this.metalness),this.sheen&&this.sheen.isColor&&(n.sheen=this.sheen.getHex()),this.emissive&&this.emissive.isColor&&(n.emissive=this.emissive.getHex()),this.emissiveIntensity&&1!==this.emissiveIntensity&&(n.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(n.specular=this.specular.getHex()),void 0!==this.shininess&&(n.shininess=this.shininess),void 0!==this.clearcoat&&(n.clearcoat=this.clearcoat),void 0!==this.clearcoatRoughness&&(n.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(n.clearcoatMap=this.clearcoatMap.toJSON(t).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(n.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(t).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(n.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(t).uuid,n.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),this.map&&this.map.isTexture&&(n.map=this.map.toJSON(t).uuid),this.matcap&&this.matcap.isTexture&&(n.matcap=this.matcap.toJSON(t).uuid),this.alphaMap&&this.alphaMap.isTexture&&(n.alphaMap=this.alphaMap.toJSON(t).uuid),this.lightMap&&this.lightMap.isTexture&&(n.lightMap=this.lightMap.toJSON(t).uuid),this.aoMap&&this.aoMap.isTexture&&(n.aoMap=this.aoMap.toJSON(t).uuid,n.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(n.bumpMap=this.bumpMap.toJSON(t).uuid,n.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(n.normalMap=this.normalMap.toJSON(t).uuid,n.normalMapType=this.normalMapType,n.normalScale=this.normalScale.toArray()),this.displacementMap&&this.displacementMap.isTexture&&(n.displacementMap=this.displacementMap.toJSON(t).uuid,n.displacementScale=this.displacementScale,n.displacementBias=this.displacementBias),this.roughnessMap&&this.roughnessMap.isTexture&&(n.roughnessMap=this.roughnessMap.toJSON(t).uuid),this.metalnessMap&&this.metalnessMap.isTexture&&(n.metalnessMap=this.metalnessMap.toJSON(t).uuid),this.emissiveMap&&this.emissiveMap.isTexture&&(n.emissiveMap=this.emissiveMap.toJSON(t).uuid),this.specularMap&&this.specularMap.isTexture&&(n.specularMap=this.specularMap.toJSON(t).uuid),this.envMap&&this.envMap.isTexture&&(n.envMap=this.envMap.toJSON(t).uuid,n.reflectivity=this.reflectivity,n.refractionRatio=this.refractionRatio,void 0!==this.combine&&(n.combine=this.combine),void 0!==this.envMapIntensity&&(n.envMapIntensity=this.envMapIntensity)),this.gradientMap&&this.gradientMap.isTexture&&(n.gradientMap=this.gradientMap.toJSON(t).uuid),void 0!==this.size&&(n.size=this.size),void 0!==this.sizeAttenuation&&(n.sizeAttenuation=this.sizeAttenuation),this.blending!==P&&(n.blending=this.blending),!0===this.flatShading&&(n.flatShading=this.flatShading),this.side!==E&&(n.side=this.side),this.vertexColors&&(n.vertexColors=!0),this.opacity<1&&(n.opacity=this.opacity),!0===this.transparent&&(n.transparent=this.transparent),n.depthFunc=this.depthFunc,n.depthTest=this.depthTest,n.depthWrite=this.depthWrite,n.stencilWrite=this.stencilWrite,n.stencilWriteMask=this.stencilWriteMask,n.stencilFunc=this.stencilFunc,n.stencilRef=this.stencilRef,n.stencilFuncMask=this.stencilFuncMask,n.stencilFail=this.stencilFail,n.stencilZFail=this.stencilZFail,n.stencilZPass=this.stencilZPass,this.rotation&&0!==this.rotation&&(n.rotation=this.rotation),!0===this.polygonOffset&&(n.polygonOffset=!0),0!==this.polygonOffsetFactor&&(n.polygonOffsetFactor=this.polygonOffsetFactor),0!==this.polygonOffsetUnits&&(n.polygonOffsetUnits=this.polygonOffsetUnits),this.linewidth&&1!==this.linewidth&&(n.linewidth=this.linewidth),void 0!==this.dashSize&&(n.dashSize=this.dashSize),void 0!==this.gapSize&&(n.gapSize=this.gapSize),void 0!==this.scale&&(n.scale=this.scale),!0===this.dithering&&(n.dithering=!0),this.alphaTest>0&&(n.alphaTest=this.alphaTest),!0===this.premultipliedAlpha&&(n.premultipliedAlpha=this.premultipliedAlpha),!0===this.wireframe&&(n.wireframe=this.wireframe),this.wireframeLinewidth>1&&(n.wireframeLinewidth=this.wireframeLinewidth),"round"!==this.wireframeLinecap&&(n.wireframeLinecap=this.wireframeLinecap),"round"!==this.wireframeLinejoin&&(n.wireframeLinejoin=this.wireframeLinejoin),!0===this.morphTargets&&(n.morphTargets=!0),!0===this.morphNormals&&(n.morphNormals=!0),!0===this.skinning&&(n.skinning=!0),!1===this.visible&&(n.visible=!1),!1===this.toneMapped&&(n.toneMapped=!1),"{}"!==JSON.stringify(this.userData)&&(n.userData=this.userData),e){var r=i(t.textures),o=i(t.images);r.length>0&&(n.textures=r),o.length>0&&(n.images=o)}return n},clone:function(){return(new this.constructor).copy(this)},copy:function(t){this.name=t.name,this.fog=t.fog,this.blending=t.blending,this.side=t.side,this.flatShading=t.flatShading,this.vertexColors=t.vertexColors,this.opacity=t.opacity,this.transparent=t.transparent,this.blendSrc=t.blendSrc,this.blendDst=t.blendDst,this.blendEquation=t.blendEquation,this.blendSrcAlpha=t.blendSrcAlpha,this.blendDstAlpha=t.blendDstAlpha,this.blendEquationAlpha=t.blendEquationAlpha,this.depthFunc=t.depthFunc,this.depthTest=t.depthTest,this.depthWrite=t.depthWrite,this.stencilWriteMask=t.stencilWriteMask,this.stencilFunc=t.stencilFunc,this.stencilRef=t.stencilRef,this.stencilFuncMask=t.stencilFuncMask,this.stencilFail=t.stencilFail,this.stencilZFail=t.stencilZFail,this.stencilZPass=t.stencilZPass,this.stencilWrite=t.stencilWrite;var e=t.clippingPlanes,n=null;if(null!==e){var i=e.length;n=new Array(i);for(var r=0;r!==i;++r)n[r]=e[r].clone()}return this.clippingPlanes=n,this.clipIntersection=t.clipIntersection,this.clipShadows=t.clipShadows,this.shadowSide=t.shadowSide,this.colorWrite=t.colorWrite,this.precision=t.precision,this.polygonOffset=t.polygonOffset,this.polygonOffsetFactor=t.polygonOffsetFactor,this.polygonOffsetUnits=t.polygonOffsetUnits,this.dithering=t.dithering,this.alphaTest=t.alphaTest,this.premultipliedAlpha=t.premultipliedAlpha,this.visible=t.visible,this.toneMapped=t.toneMapped,this.userData=JSON.parse(JSON.stringify(t.userData)),this},dispose:function(){this.dispatchEvent({type:"dispose"})}}),Object.defineProperty(Or.prototype,"needsUpdate",{set:function(t){!0===t&&this.version++}}),_r.prototype=Object.create(Or.prototype),_r.prototype.constructor=_r,_r.prototype.isMeshBasicMaterial=!0,_r.prototype.copy=function(t){return Or.prototype.copy.call(this,t),this.color.copy(t.color),this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.combine=t.combine,this.reflectivity=t.reflectivity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this};var Pr=new oi;function Ir(t,e,n){if(Array.isArray(t))throw new TypeError("THREE.BufferAttribute: array should be a Typed Array.");this.name="",this.array=t,this.itemSize=e,this.count=void 0!==t?t.length/e:0,this.normalized=!0===n,this.usage=Rn,this.updateRange={offset:0,count:-1},this.version=0}function kr(t,e,n){Ir.call(this,new Int8Array(t),e,n)}function Dr(t,e,n){Ir.call(this,new Uint8Array(t),e,n)}function Rr(t,e,n){Ir.call(this,new Uint8ClampedArray(t),e,n)}function Lr(t,e,n){Ir.call(this,new Int16Array(t),e,n)}function Nr(t,e,n){Ir.call(this,new Uint16Array(t),e,n)}function jr(t,e,n){Ir.call(this,new Int32Array(t),e,n)}function Vr(t,e,n){Ir.call(this,new Uint32Array(t),e,n)}function Fr(t,e,n){Ir.call(this,new Float32Array(t),e,n)}function Ur(t,e,n){Ir.call(this,new Float64Array(t),e,n)}function Br(){this.vertices=[],this.normals=[],this.colors=[],this.uvs=[],this.uvs2=[],this.groups=[],this.morphTargets={},this.skinWeights=[],this.skinIndices=[],this.boundingBox=null,this.boundingSphere=null,this.verticesNeedUpdate=!1,this.normalsNeedUpdate=!1,this.colorsNeedUpdate=!1,this.uvsNeedUpdate=!1,this.groupsNeedUpdate=!1}function zr(t){if(0===t.length)return-1/0;for(var e=t[0],n=1,i=t.length;n<i;++n)t[n]>e&&(e=t[n]);return e}Object.defineProperty(Ir.prototype,"needsUpdate",{set:function(t){!0===t&&this.version++}}),Object.assign(Ir.prototype,{isBufferAttribute:!0,onUploadCallback:function(){},setUsage:function(t){return this.usage=t,this},copy:function(t){return this.name=t.name,this.array=new t.array.constructor(t.array),this.itemSize=t.itemSize,this.count=t.count,this.normalized=t.normalized,this.usage=t.usage,this},copyAt:function(t,e,n){t*=this.itemSize,n*=e.itemSize;for(var i=0,r=this.itemSize;i<r;i++)this.array[t+i]=e.array[n+i];return this},copyArray:function(t){return this.array.set(t),this},copyColorsArray:function(t){for(var e=this.array,n=0,i=0,r=t.length;i<r;i++){var o=t[i];void 0===o&&(console.warn("THREE.BufferAttribute.copyColorsArray(): color is undefined",i),o=new xr),e[n++]=o.r,e[n++]=o.g,e[n++]=o.b}return this},copyVector2sArray:function(t){for(var e=this.array,n=0,i=0,r=t.length;i<r;i++){var o=t[i];void 0===o&&(console.warn("THREE.BufferAttribute.copyVector2sArray(): vector is undefined",i),o=new Xn),e[n++]=o.x,e[n++]=o.y}return this},copyVector3sArray:function(t){for(var e=this.array,n=0,i=0,r=t.length;i<r;i++){var o=t[i];void 0===o&&(console.warn("THREE.BufferAttribute.copyVector3sArray(): vector is undefined",i),o=new oi),e[n++]=o.x,e[n++]=o.y,e[n++]=o.z}return this},copyVector4sArray:function(t){for(var e=this.array,n=0,i=0,r=t.length;i<r;i++){var o=t[i];void 0===o&&(console.warn("THREE.BufferAttribute.copyVector4sArray(): vector is undefined",i),o=new $n),e[n++]=o.x,e[n++]=o.y,e[n++]=o.z,e[n++]=o.w}return this},applyMatrix3:function(t){for(var e=0,n=this.count;e<n;e++)Pr.x=this.getX(e),Pr.y=this.getY(e),Pr.z=this.getZ(e),Pr.applyMatrix3(t),this.setXYZ(e,Pr.x,Pr.y,Pr.z);return this},applyMatrix4:function(t){for(var e=0,n=this.count;e<n;e++)Pr.x=this.getX(e),Pr.y=this.getY(e),Pr.z=this.getZ(e),Pr.applyMatrix4(t),this.setXYZ(e,Pr.x,Pr.y,Pr.z);return this},applyNormalMatrix:function(t){for(var e=0,n=this.count;e<n;e++)Pr.x=this.getX(e),Pr.y=this.getY(e),Pr.z=this.getZ(e),Pr.applyNormalMatrix(t),this.setXYZ(e,Pr.x,Pr.y,Pr.z);return this},transformDirection:function(t){for(var e=0,n=this.count;e<n;e++)Pr.x=this.getX(e),Pr.y=this.getY(e),Pr.z=this.getZ(e),Pr.transformDirection(t),this.setXYZ(e,Pr.x,Pr.y,Pr.z);return this},set:function(t,e){return void 0===e&&(e=0),this.array.set(t,e),this},getX:function(t){return this.array[t*this.itemSize]},setX:function(t,e){return this.array[t*this.itemSize]=e,this},getY:function(t){return this.array[t*this.itemSize+1]},setY:function(t,e){return this.array[t*this.itemSize+1]=e,this},getZ:function(t){return this.array[t*this.itemSize+2]},setZ:function(t,e){return this.array[t*this.itemSize+2]=e,this},getW:function(t){return this.array[t*this.itemSize+3]},setW:function(t,e){return this.array[t*this.itemSize+3]=e,this},setXY:function(t,e,n){return t*=this.itemSize,this.array[t+0]=e,this.array[t+1]=n,this},setXYZ:function(t,e,n,i){return t*=this.itemSize,this.array[t+0]=e,this.array[t+1]=n,this.array[t+2]=i,this},setXYZW:function(t,e,n,i,r){return t*=this.itemSize,this.array[t+0]=e,this.array[t+1]=n,this.array[t+2]=i,this.array[t+3]=r,this},onUpload:function(t){return this.onUploadCallback=t,this},clone:function(){return new this.constructor(this.array,this.itemSize).copy(this)},toJSON:function(){return{itemSize:this.itemSize,type:this.array.constructor.name,array:Array.prototype.slice.call(this.array),normalized:this.normalized}}}),kr.prototype=Object.create(Ir.prototype),kr.prototype.constructor=kr,Dr.prototype=Object.create(Ir.prototype),Dr.prototype.constructor=Dr,Rr.prototype=Object.create(Ir.prototype),Rr.prototype.constructor=Rr,Lr.prototype=Object.create(Ir.prototype),Lr.prototype.constructor=Lr,Nr.prototype=Object.create(Ir.prototype),Nr.prototype.constructor=Nr,jr.prototype=Object.create(Ir.prototype),jr.prototype.constructor=jr,Vr.prototype=Object.create(Ir.prototype),Vr.prototype.constructor=Vr,Fr.prototype=Object.create(Ir.prototype),Fr.prototype.constructor=Fr,Ur.prototype=Object.create(Ir.prototype),Ur.prototype.constructor=Ur,Object.assign(Br.prototype,{computeGroups:function(t){for(var e,n=[],i=void 0,r=t.faces,o=0;o<r.length;o++){var a=r[o];a.materialIndex!==i&&(i=a.materialIndex,void 0!==e&&(e.count=3*o-e.start,n.push(e)),e={start:3*o,materialIndex:i})}void 0!==e&&(e.count=3*o-e.start,n.push(e)),this.groups=n},fromGeometry:function(t){var e,n=t.faces,i=t.vertices,r=t.faceVertexUvs,o=r[0]&&r[0].length>0,a=r[1]&&r[1].length>0,s=t.morphTargets,c=s.length;if(c>0){e=[];for(var l=0;l<c;l++)e[l]={name:s[l].name,data:[]};this.morphTargets.position=e}var u,d=t.morphNormals,p=d.length;if(p>0){for(u=[],l=0;l<p;l++)u[l]={name:d[l].name,data:[]};this.morphTargets.normal=u}var h=t.skinIndices,f=t.skinWeights,g=h.length===i.length,m=f.length===i.length;for(i.length>0&&0===n.length&&console.error("THREE.DirectGeometry: Faceless geometries are not supported."),l=0;l<n.length;l++){var v=n[l];this.vertices.push(i[v.a],i[v.b],i[v.c]);var y=v.vertexNormals;if(3===y.length)this.normals.push(y[0],y[1],y[2]);else{var b=v.normal;this.normals.push(b,b,b)}var w,S=v.vertexColors;if(3===S.length)this.colors.push(S[0],S[1],S[2]);else{var x=v.color;this.colors.push(x,x,x)}!0===o&&(void 0!==(w=r[0][l])?this.uvs.push(w[0],w[1],w[2]):(console.warn("THREE.DirectGeometry.fromGeometry(): Undefined vertexUv ",l),this.uvs.push(new Xn,new Xn,new Xn))),!0===a&&(void 0!==(w=r[1][l])?this.uvs2.push(w[0],w[1],w[2]):(console.warn("THREE.DirectGeometry.fromGeometry(): Undefined vertexUv2 ",l),this.uvs2.push(new Xn,new Xn,new Xn)));for(var M=0;M<c;M++){var E=s[M].vertices;e[M].data.push(E[v.a],E[v.b],E[v.c])}for(M=0;M<p;M++){var C=d[M].vertexNormals[l];u[M].data.push(C.a,C.b,C.c)}g&&this.skinIndices.push(h[v.a],h[v.b],h[v.c]),m&&this.skinWeights.push(f[v.a],f[v.b],f[v.c])}return this.computeGroups(t),this.verticesNeedUpdate=t.verticesNeedUpdate,this.normalsNeedUpdate=t.normalsNeedUpdate,this.colorsNeedUpdate=t.colorsNeedUpdate,this.uvsNeedUpdate=t.uvsNeedUpdate,this.groupsNeedUpdate=t.groupsNeedUpdate,null!==t.boundingSphere&&(this.boundingSphere=t.boundingSphere.clone()),null!==t.boundingBox&&(this.boundingBox=t.boundingBox.clone()),this}});var Gr=1,Hr=new hi,Wr=new Ii,qr=new oi,Kr=new qi,Xr=new qi,Yr=new oi;function Zr(){Object.defineProperty(this,"id",{value:Gr+=2}),this.uuid=Kn.generateUUID(),this.name="",this.type="BufferGeometry",this.index=null,this.attributes={},this.morphAttributes={},this.morphTargetsRelative=!1,this.groups=[],this.boundingBox=null,this.boundingSphere=null,this.drawRange={start:0,count:1/0},this.userData={}}Zr.prototype=Object.assign(Object.create(Gn.prototype),{constructor:Zr,isBufferGeometry:!0,getIndex:function(){return this.index},setIndex:function(t){Array.isArray(t)?this.index=new(zr(t)>65535?Vr:Nr)(t,1):this.index=t},getAttribute:function(t){return this.attributes[t]},setAttribute:function(t,e){return this.attributes[t]=e,this},deleteAttribute:function(t){return delete this.attributes[t],this},addGroup:function(t,e,n){this.groups.push({start:t,count:e,materialIndex:void 0!==n?n:0})},clearGroups:function(){this.groups=[]},setDrawRange:function(t,e){this.drawRange.start=t,this.drawRange.count=e},applyMatrix4:function(t){var e=this.attributes.position;void 0!==e&&(e.applyMatrix4(t),e.needsUpdate=!0);var n=this.attributes.normal;if(void 0!==n){var i=(new Yn).getNormalMatrix(t);n.applyNormalMatrix(i),n.needsUpdate=!0}var r=this.attributes.tangent;return void 0!==r&&(r.transformDirection(t),r.needsUpdate=!0),null!==this.boundingBox&&this.computeBoundingBox(),null!==this.boundingSphere&&this.computeBoundingSphere(),this},rotateX:function(t){return Hr.makeRotationX(t),this.applyMatrix4(Hr),this},rotateY:function(t){return Hr.makeRotationY(t),this.applyMatrix4(Hr),this},rotateZ:function(t){return Hr.makeRotationZ(t),this.applyMatrix4(Hr),this},translate:function(t,e,n){return Hr.makeTranslation(t,e,n),this.applyMatrix4(Hr),this},scale:function(t,e,n){return Hr.makeScale(t,e,n),this.applyMatrix4(Hr),this},lookAt:function(t){return Wr.lookAt(t),Wr.updateMatrix(),this.applyMatrix4(Wr.matrix),this},center:function(){return this.computeBoundingBox(),this.boundingBox.getCenter(qr).negate(),this.translate(qr.x,qr.y,qr.z),this},setFromObject:function(t){var e=t.geometry;if(t.isPoints||t.isLine){var n=new Fr(3*e.vertices.length,3),i=new Fr(3*e.colors.length,3);if(this.setAttribute("position",n.copyVector3sArray(e.vertices)),this.setAttribute("color",i.copyColorsArray(e.colors)),e.lineDistances&&e.lineDistances.length===e.vertices.length){var r=new Fr(e.lineDistances.length,1);this.setAttribute("lineDistance",r.copyArray(e.lineDistances))}null!==e.boundingSphere&&(this.boundingSphere=e.boundingSphere.clone()),null!==e.boundingBox&&(this.boundingBox=e.boundingBox.clone())}else t.isMesh&&e&&e.isGeometry&&this.fromGeometry(e);return this},setFromPoints:function(t){for(var e=[],n=0,i=t.length;n<i;n++){var r=t[n];e.push(r.x,r.y,r.z||0)}return this.setAttribute("position",new Fr(e,3)),this},updateFromObject:function(t){var e,n=t.geometry;if(t.isMesh){var i=n.__directGeometry;if(!0===n.elementsNeedUpdate&&(i=void 0,n.elementsNeedUpdate=!1),void 0===i)return this.fromGeometry(n);i.verticesNeedUpdate=n.verticesNeedUpdate,i.normalsNeedUpdate=n.normalsNeedUpdate,i.colorsNeedUpdate=n.colorsNeedUpdate,i.uvsNeedUpdate=n.uvsNeedUpdate,i.groupsNeedUpdate=n.groupsNeedUpdate,n.verticesNeedUpdate=!1,n.normalsNeedUpdate=!1,n.colorsNeedUpdate=!1,n.uvsNeedUpdate=!1,n.groupsNeedUpdate=!1,n=i}return!0===n.verticesNeedUpdate&&(void 0!==(e=this.attributes.position)&&(e.copyVector3sArray(n.vertices),e.needsUpdate=!0),n.verticesNeedUpdate=!1),!0===n.normalsNeedUpdate&&(void 0!==(e=this.attributes.normal)&&(e.copyVector3sArray(n.normals),e.needsUpdate=!0),n.normalsNeedUpdate=!1),!0===n.colorsNeedUpdate&&(void 0!==(e=this.attributes.color)&&(e.copyColorsArray(n.colors),e.needsUpdate=!0),n.colorsNeedUpdate=!1),n.uvsNeedUpdate&&(void 0!==(e=this.attributes.uv)&&(e.copyVector2sArray(n.uvs),e.needsUpdate=!0),n.uvsNeedUpdate=!1),n.lineDistancesNeedUpdate&&(void 0!==(e=this.attributes.lineDistance)&&(e.copyArray(n.lineDistances),e.needsUpdate=!0),n.lineDistancesNeedUpdate=!1),n.groupsNeedUpdate&&(n.computeGroups(t.geometry),this.groups=n.groups,n.groupsNeedUpdate=!1),this},fromGeometry:function(t){return t.__directGeometry=(new Br).fromGeometry(t),this.fromDirectGeometry(t.__directGeometry)},fromDirectGeometry:function(t){var e=new Float32Array(3*t.vertices.length);if(this.setAttribute("position",new Ir(e,3).copyVector3sArray(t.vertices)),t.normals.length>0){var n=new Float32Array(3*t.normals.length);this.setAttribute("normal",new Ir(n,3).copyVector3sArray(t.normals))}if(t.colors.length>0){var i=new Float32Array(3*t.colors.length);this.setAttribute("color",new Ir(i,3).copyColorsArray(t.colors))}if(t.uvs.length>0){var r=new Float32Array(2*t.uvs.length);this.setAttribute("uv",new Ir(r,2).copyVector2sArray(t.uvs))}if(t.uvs2.length>0){var o=new Float32Array(2*t.uvs2.length);this.setAttribute("uv2",new Ir(o,2).copyVector2sArray(t.uvs2))}for(var a in this.groups=t.groups,t.morphTargets){for(var s=[],c=t.morphTargets[a],l=0,u=c.length;l<u;l++){var d=c[l],p=new Fr(3*d.data.length,3);p.name=d.name,s.push(p.copyVector3sArray(d.data))}this.morphAttributes[a]=s}if(t.skinIndices.length>0){var h=new Fr(4*t.skinIndices.length,4);this.setAttribute("skinIndex",h.copyVector4sArray(t.skinIndices))}if(t.skinWeights.length>0){var f=new Fr(4*t.skinWeights.length,4);this.setAttribute("skinWeight",f.copyVector4sArray(t.skinWeights))}return null!==t.boundingSphere&&(this.boundingSphere=t.boundingSphere.clone()),null!==t.boundingBox&&(this.boundingBox=t.boundingBox.clone()),this},computeBoundingBox:function(){null===this.boundingBox&&(this.boundingBox=new qi);var t=this.attributes.position,e=this.morphAttributes.position;if(void 0!==t){if(this.boundingBox.setFromBufferAttribute(t),e)for(var n=0,i=e.length;n<i;n++){var r=e[n];Kr.setFromBufferAttribute(r),this.morphTargetsRelative?(Yr.addVectors(this.boundingBox.min,Kr.min),this.boundingBox.expandByPoint(Yr),Yr.addVectors(this.boundingBox.max,Kr.max),this.boundingBox.expandByPoint(Yr)):(this.boundingBox.expandByPoint(Kr.min),this.boundingBox.expandByPoint(Kr.max))}}else this.boundingBox.makeEmpty();(isNaN(this.boundingBox.min.x)||isNaN(this.boundingBox.min.y)||isNaN(this.boundingBox.min.z))&&console.error('THREE.BufferGeometry.computeBoundingBox: Computed min/max have NaN values. The "position" attribute is likely to have NaN values.',this)},computeBoundingSphere:function(){null===this.boundingSphere&&(this.boundingSphere=new Yi);var t=this.attributes.position,e=this.morphAttributes.position;if(t){var n=this.boundingSphere.center;if(Kr.setFromBufferAttribute(t),e)for(var i=0,r=e.length;i<r;i++){var o=e[i];Xr.setFromBufferAttribute(o),this.morphTargetsRelative?(Yr.addVectors(Kr.min,Xr.min),Kr.expandByPoint(Yr),Yr.addVectors(Kr.max,Xr.max),Kr.expandByPoint(Yr)):(Kr.expandByPoint(Xr.min),Kr.expandByPoint(Xr.max))}Kr.getCenter(n);var a=0;for(i=0,r=t.count;i<r;i++)Yr.fromBufferAttribute(t,i),a=Math.max(a,n.distanceToSquared(Yr));if(e)for(i=0,r=e.length;i<r;i++){o=e[i];for(var s=this.morphTargetsRelative,c=0,l=o.count;c<l;c++)Yr.fromBufferAttribute(o,c),s&&(qr.fromBufferAttribute(t,c),Yr.add(qr)),a=Math.max(a,n.distanceToSquared(Yr))}this.boundingSphere.radius=Math.sqrt(a),isNaN(this.boundingSphere.radius)&&console.error('THREE.BufferGeometry.computeBoundingSphere(): Computed radius is NaN. The "position" attribute is likely to have NaN values.',this)}},computeFaceNormals:function(){},computeVertexNormals:function(){var t=this.index,e=this.attributes;if(e.position){var n=e.position.array;if(void 0===e.normal)this.setAttribute("normal",new Ir(new Float32Array(n.length),3));else for(var i=e.normal.array,r=0,o=i.length;r<o;r++)i[r]=0;var a,s,c,l=e.normal.array,u=new oi,d=new oi,p=new oi,h=new oi,f=new oi;if(t){var g=t.array;for(r=0,o=t.count;r<o;r+=3)a=3*g[r+0],s=3*g[r+1],c=3*g[r+2],u.fromArray(n,a),d.fromArray(n,s),p.fromArray(n,c),h.subVectors(p,d),f.subVectors(u,d),h.cross(f),l[a]+=h.x,l[a+1]+=h.y,l[a+2]+=h.z,l[s]+=h.x,l[s+1]+=h.y,l[s+2]+=h.z,l[c]+=h.x,l[c+1]+=h.y,l[c+2]+=h.z}else for(r=0,o=n.length;r<o;r+=9)u.fromArray(n,r),d.fromArray(n,r+3),p.fromArray(n,r+6),h.subVectors(p,d),f.subVectors(u,d),h.cross(f),l[r]=h.x,l[r+1]=h.y,l[r+2]=h.z,l[r+3]=h.x,l[r+4]=h.y,l[r+5]=h.z,l[r+6]=h.x,l[r+7]=h.y,l[r+8]=h.z;this.normalizeNormals(),e.normal.needsUpdate=!0}},merge:function(t,e){if(t&&t.isBufferGeometry){void 0===e&&(e=0,console.warn("THREE.BufferGeometry.merge(): Overwriting original geometry, starting at offset=0. Use BufferGeometryUtils.mergeBufferGeometries() for lossless merge."));var n=this.attributes;for(var i in n)if(void 0!==t.attributes[i])for(var r=n[i].array,o=t.attributes[i],a=o.array,s=o.itemSize*e,c=Math.min(a.length,r.length-s),l=0,u=s;l<c;l++,u++)r[u]=a[l];return this}console.error("THREE.BufferGeometry.merge(): geometry not an instance of THREE.BufferGeometry.",t)},normalizeNormals:function(){for(var t=this.attributes.normal,e=0,n=t.count;e<n;e++)Yr.x=t.getX(e),Yr.y=t.getY(e),Yr.z=t.getZ(e),Yr.normalize(),t.setXYZ(e,Yr.x,Yr.y,Yr.z)},toNonIndexed:function(){function t(t,e){for(var n=t.array,i=t.itemSize,r=new n.constructor(e.length*i),o=0,a=0,s=0,c=e.length;s<c;s++){o=e[s]*i;for(var l=0;l<i;l++)r[a++]=n[o++]}return new Ir(r,i)}if(null===this.index)return console.warn("THREE.BufferGeometry.toNonIndexed(): Geometry is already non-indexed."),this;var e=new Zr,n=this.index.array,i=this.attributes;for(var r in i){var o=t(i[r],n);e.setAttribute(r,o)}var a=this.morphAttributes;for(r in a){for(var s=[],c=a[r],l=0,u=c.length;l<u;l++)o=t(c[l],n),s.push(o);e.morphAttributes[r]=s}e.morphTargetsRelative=this.morphTargetsRelative;for(var d=this.groups,p=(l=0,d.length);l<p;l++){var h=d[l];e.addGroup(h.start,h.count,h.materialIndex)}return e},toJSON:function(){var t={metadata:{version:4.5,type:"BufferGeometry",generator:"BufferGeometry.toJSON"}};if(t.uuid=this.uuid,t.type=this.type,""!==this.name&&(t.name=this.name),Object.keys(this.userData).length>0&&(t.userData=this.userData),void 0!==this.parameters){var e=this.parameters;for(var n in e)void 0!==e[n]&&(t[n]=e[n]);return t}t.data={attributes:{}};var i=this.index;null!==i&&(t.data.index={type:i.array.constructor.name,array:Array.prototype.slice.call(i.array)});var r=this.attributes;for(var n in r){var o=(p=r[n]).toJSON();""!==p.name&&(o.name=p.name),t.data.attributes[n]=o}var a={},s=!1;for(var n in this.morphAttributes){for(var c=this.morphAttributes[n],l=[],u=0,d=c.length;u<d;u++){var p;o=(p=c[u]).toJSON(),""!==p.name&&(o.name=p.name),l.push(o)}l.length>0&&(a[n]=l,s=!0)}s&&(t.data.morphAttributes=a,t.data.morphTargetsRelative=this.morphTargetsRelative);var h=this.groups;h.length>0&&(t.data.groups=JSON.parse(JSON.stringify(h)));var f=this.boundingSphere;return null!==f&&(t.data.boundingSphere={center:f.center.toArray(),radius:f.radius}),t},clone:function(){return(new Zr).copy(this)},copy:function(t){var e,n,i;this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null,this.name=t.name;var r=t.index;null!==r&&this.setIndex(r.clone());var o=t.attributes;for(e in o){var a=o[e];this.setAttribute(e,a.clone())}var s=t.morphAttributes;for(e in s){var c=[],l=s[e];for(n=0,i=l.length;n<i;n++)c.push(l[n].clone());this.morphAttributes[e]=c}this.morphTargetsRelative=t.morphTargetsRelative;var u=t.groups;for(n=0,i=u.length;n<i;n++){var d=u[n];this.addGroup(d.start,d.count,d.materialIndex)}var p=t.boundingBox;null!==p&&(this.boundingBox=p.clone());var h=t.boundingSphere;return null!==h&&(this.boundingSphere=h.clone()),this.drawRange.start=t.drawRange.start,this.drawRange.count=t.drawRange.count,this.userData=t.userData,this},dispose:function(){this.dispatchEvent({type:"dispose"})}});var Jr=new hi,Qr=new ir,$r=new Yi,to=new oi,eo=new oi,no=new oi,io=new oi,ro=new oi,oo=new oi,ao=new oi,so=new oi,co=new oi,lo=new Xn,uo=new Xn,po=new Xn,ho=new oi,fo=new oi;function go(t,e){Ii.call(this),this.type="Mesh",this.geometry=void 0!==t?t:new Zr,this.material=void 0!==e?e:new _r,this.updateMorphTargets()}function mo(t,e,n,i,r,o,a,s){if(null===(e.side===C?i.intersectTriangle(a,o,r,!0,s):i.intersectTriangle(r,o,a,e.side!==A,s)))return null;fo.copy(s),fo.applyMatrix4(t.matrixWorld);var c=n.ray.origin.distanceTo(fo);return c<n.near||c>n.far?null:{distance:c,point:fo.clone(),object:t}}function vo(t,e,n,i,r,o,a,s,c,l,u,d){to.fromBufferAttribute(r,l),eo.fromBufferAttribute(r,u),no.fromBufferAttribute(r,d);var p=t.morphTargetInfluences;if(e.morphTargets&&o&&p){ao.set(0,0,0),so.set(0,0,0),co.set(0,0,0);for(var h=0,f=o.length;h<f;h++){var g=p[h],m=o[h];0!==g&&(io.fromBufferAttribute(m,l),ro.fromBufferAttribute(m,u),oo.fromBufferAttribute(m,d),a?(ao.addScaledVector(io,g),so.addScaledVector(ro,g),co.addScaledVector(oo,g)):(ao.addScaledVector(io.sub(to),g),so.addScaledVector(ro.sub(eo),g),co.addScaledVector(oo.sub(no),g)))}to.add(ao),eo.add(so),no.add(co)}var v=mo(t,e,n,i,to,eo,no,ho);if(v){s&&(lo.fromBufferAttribute(s,l),uo.fromBufferAttribute(s,u),po.fromBufferAttribute(s,d),v.uv=yr.getUV(ho,to,eo,no,lo,uo,po,new Xn)),c&&(lo.fromBufferAttribute(c,l),uo.fromBufferAttribute(c,u),po.fromBufferAttribute(c,d),v.uv2=yr.getUV(ho,to,eo,no,lo,uo,po,new Xn));var y=new Ar(l,u,d);yr.getNormal(to,eo,no,y.normal),v.face=y}return v}go.prototype=Object.assign(Object.create(Ii.prototype),{constructor:go,isMesh:!0,copy:function(t){return Ii.prototype.copy.call(this,t),void 0!==t.morphTargetInfluences&&(this.morphTargetInfluences=t.morphTargetInfluences.slice()),void 0!==t.morphTargetDictionary&&(this.morphTargetDictionary=Object.assign({},t.morphTargetDictionary)),this},updateMorphTargets:function(){var t,e,n,i=this.geometry;if(i.isBufferGeometry){var r=i.morphAttributes,o=Object.keys(r);if(o.length>0){var a=r[o[0]];if(void 0!==a)for(this.morphTargetInfluences=[],this.morphTargetDictionary={},t=0,e=a.length;t<e;t++)n=a[t].name||String(t),this.morphTargetInfluences.push(0),this.morphTargetDictionary[n]=t}}else{var s=i.morphTargets;void 0!==s&&s.length>0&&console.error("THREE.Mesh.updateMorphTargets() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.")}},raycast:function(t,e){var n,i=this.geometry,r=this.material,o=this.matrixWorld;if(void 0!==r&&(null===i.boundingSphere&&i.computeBoundingSphere(),$r.copy(i.boundingSphere),$r.applyMatrix4(o),!1!==t.ray.intersectsSphere($r)&&(Jr.getInverse(o),Qr.copy(t.ray).applyMatrix4(Jr),null===i.boundingBox||!1!==Qr.intersectsBox(i.boundingBox))))if(i.isBufferGeometry){var a,s,c,l,u,d,p,h,f,g=i.index,m=i.attributes.position,v=i.morphAttributes.position,y=i.morphTargetsRelative,b=i.attributes.uv,w=i.attributes.uv2,S=i.groups,x=i.drawRange;if(null!==g)if(Array.isArray(r))for(l=0,d=S.length;l<d;l++)for(f=r[(h=S[l]).materialIndex],u=Math.max(h.start,x.start),p=Math.min(h.start+h.count,x.start+x.count);u<p;u+=3)a=g.getX(u),s=g.getX(u+1),c=g.getX(u+2),(n=vo(this,f,t,Qr,m,v,y,b,w,a,s,c))&&(n.faceIndex=Math.floor(u/3),n.face.materialIndex=h.materialIndex,e.push(n));else for(l=Math.max(0,x.start),d=Math.min(g.count,x.start+x.count);l<d;l+=3)a=g.getX(l),s=g.getX(l+1),c=g.getX(l+2),(n=vo(this,r,t,Qr,m,v,y,b,w,a,s,c))&&(n.faceIndex=Math.floor(l/3),e.push(n));else if(void 0!==m)if(Array.isArray(r))for(l=0,d=S.length;l<d;l++)for(f=r[(h=S[l]).materialIndex],u=Math.max(h.start,x.start),p=Math.min(h.start+h.count,x.start+x.count);u<p;u+=3)(n=vo(this,f,t,Qr,m,v,y,b,w,a=u,s=u+1,c=u+2))&&(n.faceIndex=Math.floor(u/3),n.face.materialIndex=h.materialIndex,e.push(n));else for(l=Math.max(0,x.start),d=Math.min(m.count,x.start+x.count);l<d;l+=3)(n=vo(this,r,t,Qr,m,v,y,b,w,a=l,s=l+1,c=l+2))&&(n.faceIndex=Math.floor(l/3),e.push(n))}else if(i.isGeometry){var M,E,C,A,T=Array.isArray(r),O=i.vertices,_=i.faces,P=i.faceVertexUvs[0];P.length>0&&(A=P);for(var I=0,k=_.length;I<k;I++){var D=_[I],R=T?r[D.materialIndex]:r;if(void 0!==R&&(M=O[D.a],E=O[D.b],C=O[D.c],n=mo(this,R,t,Qr,M,E,C,ho))){if(A&&A[I]){var L=A[I];lo.copy(L[0]),uo.copy(L[1]),po.copy(L[2]),n.uv=yr.getUV(ho,M,E,C,lo,uo,po,new Xn)}n.face=D,n.faceIndex=I,e.push(n)}}}},clone:function(){return new this.constructor(this.geometry,this.material).copy(this)}});var yo=0,bo=new hi,wo=new Ii,So=new oi;function xo(){Object.defineProperty(this,"id",{value:yo+=2}),this.uuid=Kn.generateUUID(),this.name="",this.type="Geometry",this.vertices=[],this.colors=[],this.faces=[],this.faceVertexUvs=[[]],this.morphTargets=[],this.morphNormals=[],this.skinWeights=[],this.skinIndices=[],this.lineDistances=[],this.boundingBox=null,this.boundingSphere=null,this.elementsNeedUpdate=!1,this.verticesNeedUpdate=!1,this.uvsNeedUpdate=!1,this.normalsNeedUpdate=!1,this.colorsNeedUpdate=!1,this.lineDistancesNeedUpdate=!1,this.groupsNeedUpdate=!1}xo.prototype=Object.assign(Object.create(Gn.prototype),{constructor:xo,isGeometry:!0,applyMatrix4:function(t){for(var e=(new Yn).getNormalMatrix(t),n=0,i=this.vertices.length;n<i;n++)this.vertices[n].applyMatrix4(t);for(n=0,i=this.faces.length;n<i;n++){var r=this.faces[n];r.normal.applyMatrix3(e).normalize();for(var o=0,a=r.vertexNormals.length;o<a;o++)r.vertexNormals[o].applyMatrix3(e).normalize()}return null!==this.boundingBox&&this.computeBoundingBox(),null!==this.boundingSphere&&this.computeBoundingSphere(),this.verticesNeedUpdate=!0,this.normalsNeedUpdate=!0,this},rotateX:function(t){return bo.makeRotationX(t),this.applyMatrix4(bo),this},rotateY:function(t){return bo.makeRotationY(t),this.applyMatrix4(bo),this},rotateZ:function(t){return bo.makeRotationZ(t),this.applyMatrix4(bo),this},translate:function(t,e,n){return bo.makeTranslation(t,e,n),this.applyMatrix4(bo),this},scale:function(t,e,n){return bo.makeScale(t,e,n),this.applyMatrix4(bo),this},lookAt:function(t){return wo.lookAt(t),wo.updateMatrix(),this.applyMatrix4(wo.matrix),this},fromBufferGeometry:function(t){var e=this,n=null!==t.index?t.index.array:void 0,i=t.attributes;if(void 0===i.position)return console.error("THREE.Geometry.fromBufferGeometry(): Position attribute required for conversion."),this;var r=i.position.array,o=void 0!==i.normal?i.normal.array:void 0,a=void 0!==i.color?i.color.array:void 0,s=void 0!==i.uv?i.uv.array:void 0,c=void 0!==i.uv2?i.uv2.array:void 0;void 0!==c&&(this.faceVertexUvs[1]=[]);for(var l=0;l<r.length;l+=3)e.vertices.push((new oi).fromArray(r,l)),void 0!==a&&e.colors.push((new xr).fromArray(a,l));function u(t,n,i,r){var l=void 0===a?[]:[e.colors[t].clone(),e.colors[n].clone(),e.colors[i].clone()],u=new Ar(t,n,i,void 0===o?[]:[(new oi).fromArray(o,3*t),(new oi).fromArray(o,3*n),(new oi).fromArray(o,3*i)],l,r);e.faces.push(u),void 0!==s&&e.faceVertexUvs[0].push([(new Xn).fromArray(s,2*t),(new Xn).fromArray(s,2*n),(new Xn).fromArray(s,2*i)]),void 0!==c&&e.faceVertexUvs[1].push([(new Xn).fromArray(c,2*t),(new Xn).fromArray(c,2*n),(new Xn).fromArray(c,2*i)])}var d=t.groups;if(d.length>0)for(l=0;l<d.length;l++)for(var p=d[l],h=p.start,f=h,g=h+p.count;f<g;f+=3)void 0!==n?u(n[f],n[f+1],n[f+2],p.materialIndex):u(f,f+1,f+2,p.materialIndex);else if(void 0!==n)for(l=0;l<n.length;l+=3)u(n[l],n[l+1],n[l+2]);else for(l=0;l<r.length/3;l+=3)u(l,l+1,l+2);return this.computeFaceNormals(),null!==t.boundingBox&&(this.boundingBox=t.boundingBox.clone()),null!==t.boundingSphere&&(this.boundingSphere=t.boundingSphere.clone()),this},center:function(){return this.computeBoundingBox(),this.boundingBox.getCenter(So).negate(),this.translate(So.x,So.y,So.z),this},normalize:function(){this.computeBoundingSphere();var t=this.boundingSphere.center,e=this.boundingSphere.radius,n=0===e?1:1/e,i=new hi;return i.set(n,0,0,-n*t.x,0,n,0,-n*t.y,0,0,n,-n*t.z,0,0,0,1),this.applyMatrix4(i),this},computeFaceNormals:function(){for(var t=new oi,e=new oi,n=0,i=this.faces.length;n<i;n++){var r=this.faces[n],o=this.vertices[r.a],a=this.vertices[r.b],s=this.vertices[r.c];t.subVectors(s,a),e.subVectors(o,a),t.cross(e),t.normalize(),r.normal.copy(t)}},computeVertexNormals:function(t){var e,n,i,r,o,a;for(void 0===t&&(t=!0),a=new Array(this.vertices.length),e=0,n=this.vertices.length;e<n;e++)a[e]=new oi;if(t){var s,c,l,u=new oi,d=new oi;for(i=0,r=this.faces.length;i<r;i++)o=this.faces[i],s=this.vertices[o.a],c=this.vertices[o.b],l=this.vertices[o.c],u.subVectors(l,c),d.subVectors(s,c),u.cross(d),a[o.a].add(u),a[o.b].add(u),a[o.c].add(u)}else for(this.computeFaceNormals(),i=0,r=this.faces.length;i<r;i++)a[(o=this.faces[i]).a].add(o.normal),a[o.b].add(o.normal),a[o.c].add(o.normal);for(e=0,n=this.vertices.length;e<n;e++)a[e].normalize();for(i=0,r=this.faces.length;i<r;i++){var p=(o=this.faces[i]).vertexNormals;3===p.length?(p[0].copy(a[o.a]),p[1].copy(a[o.b]),p[2].copy(a[o.c])):(p[0]=a[o.a].clone(),p[1]=a[o.b].clone(),p[2]=a[o.c].clone())}this.faces.length>0&&(this.normalsNeedUpdate=!0)},computeFlatVertexNormals:function(){var t,e,n;for(this.computeFaceNormals(),t=0,e=this.faces.length;t<e;t++){var i=(n=this.faces[t]).vertexNormals;3===i.length?(i[0].copy(n.normal),i[1].copy(n.normal),i[2].copy(n.normal)):(i[0]=n.normal.clone(),i[1]=n.normal.clone(),i[2]=n.normal.clone())}this.faces.length>0&&(this.normalsNeedUpdate=!0)},computeMorphNormals:function(){var t,e,n,i,r;for(n=0,i=this.faces.length;n<i;n++)for((r=this.faces[n]).__originalFaceNormal?r.__originalFaceNormal.copy(r.normal):r.__originalFaceNormal=r.normal.clone(),r.__originalVertexNormals||(r.__originalVertexNormals=[]),t=0,e=r.vertexNormals.length;t<e;t++)r.__originalVertexNormals[t]?r.__originalVertexNormals[t].copy(r.vertexNormals[t]):r.__originalVertexNormals[t]=r.vertexNormals[t].clone();var o=new xo;for(o.faces=this.faces,t=0,e=this.morphTargets.length;t<e;t++){if(!this.morphNormals[t]){this.morphNormals[t]={},this.morphNormals[t].faceNormals=[],this.morphNormals[t].vertexNormals=[];var a=this.morphNormals[t].faceNormals,s=this.morphNormals[t].vertexNormals;for(n=0,i=this.faces.length;n<i;n++)c=new oi,l={a:new oi,b:new oi,c:new oi},a.push(c),s.push(l)}var c,l,u=this.morphNormals[t];for(o.vertices=this.morphTargets[t].vertices,o.computeFaceNormals(),o.computeVertexNormals(),n=0,i=this.faces.length;n<i;n++)r=this.faces[n],c=u.faceNormals[n],l=u.vertexNormals[n],c.copy(r.normal),l.a.copy(r.vertexNormals[0]),l.b.copy(r.vertexNormals[1]),l.c.copy(r.vertexNormals[2])}for(n=0,i=this.faces.length;n<i;n++)(r=this.faces[n]).normal=r.__originalFaceNormal,r.vertexNormals=r.__originalVertexNormals},computeBoundingBox:function(){null===this.boundingBox&&(this.boundingBox=new qi),this.boundingBox.setFromPoints(this.vertices)},computeBoundingSphere:function(){null===this.boundingSphere&&(this.boundingSphere=new Yi),this.boundingSphere.setFromPoints(this.vertices)},merge:function(t,e,n){if(t&&t.isGeometry){var i,r=this.vertices.length,o=this.vertices,a=t.vertices,s=this.faces,c=t.faces,l=this.colors,u=t.colors;void 0===n&&(n=0),void 0!==e&&(i=(new Yn).getNormalMatrix(e));for(var d=0,p=a.length;d<p;d++){var h=a[d].clone();void 0!==e&&h.applyMatrix4(e),o.push(h)}for(d=0,p=u.length;d<p;d++)l.push(u[d].clone());for(d=0,p=c.length;d<p;d++){var f,g,m,v=c[d],y=v.vertexNormals,b=v.vertexColors;(f=new Ar(v.a+r,v.b+r,v.c+r)).normal.copy(v.normal),void 0!==i&&f.normal.applyMatrix3(i).normalize();for(var w=0,S=y.length;w<S;w++)g=y[w].clone(),void 0!==i&&g.applyMatrix3(i).normalize(),f.vertexNormals.push(g);for(f.color.copy(v.color),w=0,S=b.length;w<S;w++)m=b[w],f.vertexColors.push(m.clone());f.materialIndex=v.materialIndex+n,s.push(f)}for(d=0,p=t.faceVertexUvs.length;d<p;d++){var x=t.faceVertexUvs[d];for(void 0===this.faceVertexUvs[d]&&(this.faceVertexUvs[d]=[]),w=0,S=x.length;w<S;w++){for(var M=x[w],E=[],C=0,A=M.length;C<A;C++)E.push(M[C].clone());this.faceVertexUvs[d].push(E)}}}else console.error("THREE.Geometry.merge(): geometry not an instance of THREE.Geometry.",t)},mergeMesh:function(t){t&&t.isMesh?(t.matrixAutoUpdate&&t.updateMatrix(),this.merge(t.geometry,t.matrix)):console.error("THREE.Geometry.mergeMesh(): mesh not an instance of THREE.Mesh.",t)},mergeVertices:function(){var t,e,n,i,r,o,a,s,c={},l=[],u=[],d=Math.pow(10,4);for(n=0,i=this.vertices.length;n<i;n++)t=this.vertices[n],void 0===c[e=Math.round(t.x*d)+"_"+Math.round(t.y*d)+"_"+Math.round(t.z*d)]?(c[e]=n,l.push(this.vertices[n]),u[n]=l.length-1):u[n]=u[c[e]];var p=[];for(n=0,i=this.faces.length;n<i;n++){(r=this.faces[n]).a=u[r.a],r.b=u[r.b],r.c=u[r.c],o=[r.a,r.b,r.c];for(var h=0;h<3;h++)if(o[h]===o[(h+1)%3]){p.push(n);break}}for(n=p.length-1;n>=0;n--){var f=p[n];for(this.faces.splice(f,1),a=0,s=this.faceVertexUvs.length;a<s;a++)this.faceVertexUvs[a].splice(f,1)}var g=this.vertices.length-l.length;return this.vertices=l,g},setFromPoints:function(t){this.vertices=[];for(var e=0,n=t.length;e<n;e++){var i=t[e];this.vertices.push(new oi(i.x,i.y,i.z||0))}return this},sortFacesByMaterialIndex:function(){for(var t=this.faces,e=t.length,n=0;n<e;n++)t[n]._id=n;t.sort(function(t,e){return t.materialIndex-e.materialIndex});var i,r,o=this.faceVertexUvs[0],a=this.faceVertexUvs[1];for(o&&o.length===e&&(i=[]),a&&a.length===e&&(r=[]),n=0;n<e;n++){var s=t[n]._id;i&&i.push(o[s]),r&&r.push(a[s])}i&&(this.faceVertexUvs[0]=i),r&&(this.faceVertexUvs[1]=r)},toJSON:function(){var t={metadata:{version:4.5,type:"Geometry",generator:"Geometry.toJSON"}};if(t.uuid=this.uuid,t.type=this.type,""!==this.name&&(t.name=this.name),void 0!==this.parameters){var e=this.parameters;for(var n in e)void 0!==e[n]&&(t[n]=e[n]);return t}for(var i=[],r=0;r<this.vertices.length;r++){var o=this.vertices[r];i.push(o.x,o.y,o.z)}var a=[],s=[],c={},l=[],u={},d=[],p={};for(r=0;r<this.faces.length;r++){var h=this.faces[r],f=void 0!==this.faceVertexUvs[0][r],g=h.normal.length()>0,m=h.vertexNormals.length>0,v=1!==h.color.r||1!==h.color.g||1!==h.color.b,y=h.vertexColors.length>0,b=0;if(b=M(b=M(b=M(b=M(b=M(b=M(b=M(b=M(b,0,0),1,!0),2,!1),3,f),4,g),5,m),6,v),7,y),a.push(b),a.push(h.a,h.b,h.c),a.push(h.materialIndex),f){var w=this.faceVertexUvs[0][r];a.push(A(w[0]),A(w[1]),A(w[2]))}if(g&&a.push(E(h.normal)),m){var S=h.vertexNormals;a.push(E(S[0]),E(S[1]),E(S[2]))}if(v&&a.push(C(h.color)),y){var x=h.vertexColors;a.push(C(x[0]),C(x[1]),C(x[2]))}}function M(t,e,n){return n?t|1<<e:t&~(1<<e)}function E(t){var e=t.x.toString()+t.y.toString()+t.z.toString();return void 0!==c[e]||(c[e]=s.length/3,s.push(t.x,t.y,t.z)),c[e]}function C(t){var e=t.r.toString()+t.g.toString()+t.b.toString();return void 0!==u[e]||(u[e]=l.length,l.push(t.getHex())),u[e]}function A(t){var e=t.x.toString()+t.y.toString();return void 0!==p[e]||(p[e]=d.length/2,d.push(t.x,t.y)),p[e]}return t.data={},t.data.vertices=i,t.data.normals=s,l.length>0&&(t.data.colors=l),d.length>0&&(t.data.uvs=[d]),t.data.faces=a,t},clone:function(){return(new xo).copy(this)},copy:function(t){var e,n,i,r,o,a;this.vertices=[],this.colors=[],this.faces=[],this.faceVertexUvs=[[]],this.morphTargets=[],this.morphNormals=[],this.skinWeights=[],this.skinIndices=[],this.lineDistances=[],this.boundingBox=null,this.boundingSphere=null,this.name=t.name;var s=t.vertices;for(e=0,n=s.length;e<n;e++)this.vertices.push(s[e].clone());var c=t.colors;for(e=0,n=c.length;e<n;e++)this.colors.push(c[e].clone());var l=t.faces;for(e=0,n=l.length;e<n;e++)this.faces.push(l[e].clone());for(e=0,n=t.faceVertexUvs.length;e<n;e++){var u=t.faceVertexUvs[e];for(void 0===this.faceVertexUvs[e]&&(this.faceVertexUvs[e]=[]),i=0,r=u.length;i<r;i++){var d=u[i],p=[];for(o=0,a=d.length;o<a;o++){var h=d[o];p.push(h.clone())}this.faceVertexUvs[e].push(p)}}var f=t.morphTargets;for(e=0,n=f.length;e<n;e++){var g={};if(g.name=f[e].name,void 0!==f[e].vertices)for(g.vertices=[],i=0,r=f[e].vertices.length;i<r;i++)g.vertices.push(f[e].vertices[i].clone());if(void 0!==f[e].normals)for(g.normals=[],i=0,r=f[e].normals.length;i<r;i++)g.normals.push(f[e].normals[i].clone());this.morphTargets.push(g)}var m=t.morphNormals;for(e=0,n=m.length;e<n;e++){var v={};if(void 0!==m[e].vertexNormals)for(v.vertexNormals=[],i=0,r=m[e].vertexNormals.length;i<r;i++){var y=m[e].vertexNormals[i],b={};b.a=y.a.clone(),b.b=y.b.clone(),b.c=y.c.clone(),v.vertexNormals.push(b)}if(void 0!==m[e].faceNormals)for(v.faceNormals=[],i=0,r=m[e].faceNormals.length;i<r;i++)v.faceNormals.push(m[e].faceNormals[i].clone());this.morphNormals.push(v)}var w=t.skinWeights;for(e=0,n=w.length;e<n;e++)this.skinWeights.push(w[e].clone());var S=t.skinIndices;for(e=0,n=S.length;e<n;e++)this.skinIndices.push(S[e].clone());var x=t.lineDistances;for(e=0,n=x.length;e<n;e++)this.lineDistances.push(x[e]);var M=t.boundingBox;null!==M&&(this.boundingBox=M.clone());var E=t.boundingSphere;return null!==E&&(this.boundingSphere=E.clone()),this.elementsNeedUpdate=t.elementsNeedUpdate,this.verticesNeedUpdate=t.verticesNeedUpdate,this.uvsNeedUpdate=t.uvsNeedUpdate,this.normalsNeedUpdate=t.normalsNeedUpdate,this.colorsNeedUpdate=t.colorsNeedUpdate,this.lineDistancesNeedUpdate=t.lineDistancesNeedUpdate,this.groupsNeedUpdate=t.groupsNeedUpdate,this},dispose:function(){this.dispatchEvent({type:"dispose"})}});var Mo=function(t){s(n,xo);var e=c(n);function n(t,i,r,o,s,c){var l;return a(this,n),(l=e.call(this)).type="BoxGeometry",l.parameters={width:t,height:i,depth:r,widthSegments:o,heightSegments:s,depthSegments:c},l.fromBufferGeometry(new Eo(t,i,r,o,s,c)),l.mergeVertices(),l}return n}(),Eo=function(t){s(n,Zr);var e=c(n);function n(t,i,r,o,s,c){var u;a(this,n),(u=e.call(this)).type="BoxBufferGeometry",u.parameters={width:t,height:i,depth:r,widthSegments:o,heightSegments:s,depthSegments:c};var d=l(u);t=t||1,i=i||1,r=r||1,o=Math.floor(o)||1,s=Math.floor(s)||1,c=Math.floor(c)||1;var p=[],h=[],f=[],g=[],m=0,v=0;function y(t,e,n,i,r,o,a,s,c,l,u){var y,b,w=o/c,S=a/l,x=o/2,M=a/2,E=s/2,C=c+1,A=l+1,T=0,O=0,_=new oi;for(b=0;b<A;b++){var P=b*S-M;for(y=0;y<C;y++){var I=y*w-x;_[t]=I*i,_[e]=P*r,_[n]=E,h.push(_.x,_.y,_.z),_[t]=0,_[e]=0,_[n]=s>0?1:-1,f.push(_.x,_.y,_.z),g.push(y/c),g.push(1-b/l),T+=1}}for(b=0;b<l;b++)for(y=0;y<c;y++){var k=m+y+C*b,D=m+y+C*(b+1),R=m+(y+1)+C*(b+1),L=m+(y+1)+C*b;p.push(k,D,L),p.push(D,R,L),O+=6}d.addGroup(v,O,u),v+=O,m+=T}return y("z","y","x",-1,-1,r,i,t,c,s,0),y("z","y","x",1,-1,r,i,-t,c,s,1),y("x","z","y",1,1,t,r,i,o,c,2),y("x","z","y",1,-1,t,r,-i,o,c,3),y("x","y","z",1,-1,t,i,r,o,s,4),y("x","y","z",-1,-1,t,i,-r,o,s,5),u.setIndex(p),u.setAttribute("position",new Fr(h,3)),u.setAttribute("normal",new Fr(f,3)),u.setAttribute("uv",new Fr(g,2)),u}return n}();function Co(t){var e={};for(var n in t)for(var i in e[n]={},t[n]){var r=t[n][i];r&&(r.isColor||r.isMatrix3||r.isMatrix4||r.isVector2||r.isVector3||r.isVector4||r.isTexture)?e[n][i]=r.clone():Array.isArray(r)?e[n][i]=r.slice():e[n][i]=r}return e}function Ao(t){for(var e={},n=0;n<t.length;n++){var i=Co(t[n]);for(var r in i)e[r]=i[r]}return e}var To={clone:Co,merge:Ao};function Oo(t){Or.call(this),this.type="ShaderMaterial",this.defines={},this.uniforms={},this.vertexShader="void main() {\n\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n}",this.fragmentShader="void main() {\n\tgl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 );\n}",this.linewidth=1,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!1,this.lights=!1,this.clipping=!1,this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.extensions={derivatives:!1,fragDepth:!1,drawBuffers:!1,shaderTextureLOD:!1},this.defaultAttributeValues={color:[1,1,1],uv:[0,0],uv2:[0,0]},this.index0AttributeName=void 0,this.uniformsNeedUpdate=!1,void 0!==t&&(void 0!==t.attributes&&console.error("THREE.ShaderMaterial: attributes should now be defined in THREE.BufferGeometry instead."),this.setValues(t))}function _o(){Ii.call(this),this.type="Camera",this.matrixWorldInverse=new hi,this.projectionMatrix=new hi,this.projectionMatrixInverse=new hi}function Po(t,e,n,i){_o.call(this),this.type="PerspectiveCamera",this.fov=void 0!==t?t:50,this.zoom=1,this.near=void 0!==n?n:.1,this.far=void 0!==i?i:2e3,this.focus=10,this.aspect=void 0!==e?e:1,this.view=null,this.filmGauge=35,this.filmOffset=0,this.updateProjectionMatrix()}function Io(t,e,n,i){Ii.call(this),this.type="CubeCamera";var r=new Po(90,1,t,e);r.up.set(0,-1,0),r.lookAt(new oi(1,0,0)),this.add(r);var o=new Po(90,1,t,e);o.up.set(0,-1,0),o.lookAt(new oi(-1,0,0)),this.add(o);var a=new Po(90,1,t,e);a.up.set(0,0,1),a.lookAt(new oi(0,1,0)),this.add(a);var s=new Po(90,1,t,e);s.up.set(0,0,-1),s.lookAt(new oi(0,-1,0)),this.add(s);var c=new Po(90,1,t,e);c.up.set(0,-1,0),c.lookAt(new oi(0,0,1)),this.add(c);var l=new Po(90,1,t,e);l.up.set(0,-1,0),l.lookAt(new oi(0,0,-1)),this.add(l),i=i||{format:Xt,magFilter:Pt,minFilter:Pt},this.renderTarget=new ko(n,i),this.renderTarget.texture.name="CubeCamera",this.update=function(t,e){null===this.parent&&this.updateMatrixWorld();var n=t.getRenderTarget(),i=this.renderTarget,u=i.texture.generateMipmaps;i.texture.generateMipmaps=!1,t.setRenderTarget(i,0),t.render(e,r),t.setRenderTarget(i,1),t.render(e,o),t.setRenderTarget(i,2),t.render(e,a),t.setRenderTarget(i,3),t.render(e,s),t.setRenderTarget(i,4),t.render(e,c),i.texture.generateMipmaps=u,t.setRenderTarget(i,5),t.render(e,l),t.setRenderTarget(n)},this.clear=function(t,e,n,i){for(var r=t.getRenderTarget(),o=this.renderTarget,a=0;a<6;a++)t.setRenderTarget(o,a),t.clear(e,n,i);t.setRenderTarget(r)}}function ko(t,e,n){Number.isInteger(e)&&(console.warn("THREE.WebGLCubeRenderTarget: constructor signature is now WebGLCubeRenderTarget( size, options )"),e=n),ti.call(this,t,t,e)}function Do(t,e,n,i,r,o,a,s,c,l,u,d){Qn.call(this,null,o,a,s,c,l,i,r,u,d),this.image={data:t||null,width:e||1,height:n||1},this.magFilter=void 0!==c?c:Ct,this.minFilter=void 0!==l?l:Ct,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1,this.needsUpdate=!0}Oo.prototype=Object.create(Or.prototype),Oo.prototype.constructor=Oo,Oo.prototype.isShaderMaterial=!0,Oo.prototype.copy=function(t){return Or.prototype.copy.call(this,t),this.fragmentShader=t.fragmentShader,this.vertexShader=t.vertexShader,this.uniforms=Co(t.uniforms),this.defines=Object.assign({},t.defines),this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.lights=t.lights,this.clipping=t.clipping,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this.extensions=t.extensions,this},Oo.prototype.toJSON=function(t){var e=Or.prototype.toJSON.call(this,t);for(var n in e.uniforms={},this.uniforms){var i=this.uniforms[n].value;i&&i.isTexture?e.uniforms[n]={type:"t",value:i.toJSON(t).uuid}:i&&i.isColor?e.uniforms[n]={type:"c",value:i.getHex()}:i&&i.isVector2?e.uniforms[n]={type:"v2",value:i.toArray()}:i&&i.isVector3?e.uniforms[n]={type:"v3",value:i.toArray()}:i&&i.isVector4?e.uniforms[n]={type:"v4",value:i.toArray()}:i&&i.isMatrix3?e.uniforms[n]={type:"m3",value:i.toArray()}:i&&i.isMatrix4?e.uniforms[n]={type:"m4",value:i.toArray()}:e.uniforms[n]={value:i}}Object.keys(this.defines).length>0&&(e.defines=this.defines),e.vertexShader=this.vertexShader,e.fragmentShader=this.fragmentShader;var r={};for(var o in this.extensions)!0===this.extensions[o]&&(r[o]=!0);return Object.keys(r).length>0&&(e.extensions=r),e},_o.prototype=Object.assign(Object.create(Ii.prototype),{constructor:_o,isCamera:!0,copy:function(t,e){return Ii.prototype.copy.call(this,t,e),this.matrixWorldInverse.copy(t.matrixWorldInverse),this.projectionMatrix.copy(t.projectionMatrix),this.projectionMatrixInverse.copy(t.projectionMatrixInverse),this},getWorldDirection:function(t){void 0===t&&(console.warn("THREE.Camera: .getWorldDirection() target is now required"),t=new oi),this.updateMatrixWorld(!0);var e=this.matrixWorld.elements;return t.set(-e[8],-e[9],-e[10]).normalize()},updateMatrixWorld:function(t){Ii.prototype.updateMatrixWorld.call(this,t),this.matrixWorldInverse.getInverse(this.matrixWorld)},updateWorldMatrix:function(t,e){Ii.prototype.updateWorldMatrix.call(this,t,e),this.matrixWorldInverse.getInverse(this.matrixWorld)},clone:function(){return(new this.constructor).copy(this)}}),Po.prototype=Object.assign(Object.create(_o.prototype),{constructor:Po,isPerspectiveCamera:!0,copy:function(t,e){return _o.prototype.copy.call(this,t,e),this.fov=t.fov,this.zoom=t.zoom,this.near=t.near,this.far=t.far,this.focus=t.focus,this.aspect=t.aspect,this.view=null===t.view?null:Object.assign({},t.view),this.filmGauge=t.filmGauge,this.filmOffset=t.filmOffset,this},setFocalLength:function(t){var e=.5*this.getFilmHeight()/t;this.fov=2*Kn.RAD2DEG*Math.atan(e),this.updateProjectionMatrix()},getFocalLength:function(){var t=Math.tan(.5*Kn.DEG2RAD*this.fov);return.5*this.getFilmHeight()/t},getEffectiveFOV:function(){return 2*Kn.RAD2DEG*Math.atan(Math.tan(.5*Kn.DEG2RAD*this.fov)/this.zoom)},getFilmWidth:function(){return this.filmGauge*Math.min(this.aspect,1)},getFilmHeight:function(){return this.filmGauge/Math.max(this.aspect,1)},setViewOffset:function(t,e,n,i,r,o){this.aspect=t/e,null===this.view&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=n,this.view.offsetY=i,this.view.width=r,this.view.height=o,this.updateProjectionMatrix()},clearViewOffset:function(){null!==this.view&&(this.view.enabled=!1),this.updateProjectionMatrix()},updateProjectionMatrix:function(){var t=this.near,e=t*Math.tan(.5*Kn.DEG2RAD*this.fov)/this.zoom,n=2*e,i=this.aspect*n,r=-.5*i,o=this.view;if(null!==this.view&&this.view.enabled){var a=o.fullWidth,s=o.fullHeight;r+=o.offsetX*i/a,e-=o.offsetY*n/s,i*=o.width/a,n*=o.height/s}var c=this.filmOffset;0!==c&&(r+=t*c/this.getFilmWidth()),this.projectionMatrix.makePerspective(r,r+i,e,e-n,t,this.far),this.projectionMatrixInverse.getInverse(this.projectionMatrix)},toJSON:function(t){var e=Ii.prototype.toJSON.call(this,t);return e.object.fov=this.fov,e.object.zoom=this.zoom,e.object.near=this.near,e.object.far=this.far,e.object.focus=this.focus,e.object.aspect=this.aspect,null!==this.view&&(e.object.view=Object.assign({},this.view)),e.object.filmGauge=this.filmGauge,e.object.filmOffset=this.filmOffset,e}}),Io.prototype=Object.create(Ii.prototype),Io.prototype.constructor=Io,ko.prototype=Object.create(ti.prototype),ko.prototype.constructor=ko,ko.prototype.isWebGLCubeRenderTarget=!0,ko.prototype.fromEquirectangularTexture=function(t,e){this.texture.type=e.type,this.texture.format=e.format,this.texture.encoding=e.encoding;var n=new ki,i={uniforms:{tEquirect:{value:null}},vertexShader:["varying vec3 vWorldDirection;","vec3 transformDirection( in vec3 dir, in mat4 matrix ) {","\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );","}","void main() {","\tvWorldDirection = transformDirection( position, modelMatrix );","\t#include <begin_vertex>","\t#include <project_vertex>","}"].join("\n"),fragmentShader:["uniform sampler2D tEquirect;","varying vec3 vWorldDirection;","#define RECIPROCAL_PI 0.31830988618","#define RECIPROCAL_PI2 0.15915494","void main() {","\tvec3 direction = normalize( vWorldDirection );","\tvec2 sampleUV;","\tsampleUV.y = asin( clamp( direction.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;","\tsampleUV.x = atan( direction.z, direction.x ) * RECIPROCAL_PI2 + 0.5;","\tgl_FragColor = texture2D( tEquirect, sampleUV );","}"].join("\n")},r=new Oo({type:"CubemapFromEquirect",uniforms:Co(i.uniforms),vertexShader:i.vertexShader,fragmentShader:i.fragmentShader,side:C,blending:_});r.uniforms.tEquirect.value=e;var o=new go(new Eo(5,5,5),r);n.add(o);var a=new Io(1,10,1);return a.renderTarget=this,a.renderTarget.texture.name="CubeCameraTexture",a.update(t,n),o.geometry.dispose(),o.material.dispose(),this},Do.prototype=Object.create(Qn.prototype),Do.prototype.constructor=Do,Do.prototype.isDataTexture=!0;var Ro=new Yi,Lo=new oi;function No(t,e,n,i,r,o){this.planes=[void 0!==t?t:new sr,void 0!==e?e:new sr,void 0!==n?n:new sr,void 0!==i?i:new sr,void 0!==r?r:new sr,void 0!==o?o:new sr]}Object.assign(No.prototype,{set:function(t,e,n,i,r,o){var a=this.planes;return a[0].copy(t),a[1].copy(e),a[2].copy(n),a[3].copy(i),a[4].copy(r),a[5].copy(o),this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){for(var e=this.planes,n=0;n<6;n++)e[n].copy(t.planes[n]);return this},setFromProjectionMatrix:function(t){var e=this.planes,n=t.elements,i=n[0],r=n[1],o=n[2],a=n[3],s=n[4],c=n[5],l=n[6],u=n[7],d=n[8],p=n[9],h=n[10],f=n[11],g=n[12],m=n[13],v=n[14],y=n[15];return e[0].setComponents(a-i,u-s,f-d,y-g).normalize(),e[1].setComponents(a+i,u+s,f+d,y+g).normalize(),e[2].setComponents(a+r,u+c,f+p,y+m).normalize(),e[3].setComponents(a-r,u-c,f-p,y-m).normalize(),e[4].setComponents(a-o,u-l,f-h,y-v).normalize(),e[5].setComponents(a+o,u+l,f+h,y+v).normalize(),this},intersectsObject:function(t){var e=t.geometry;return null===e.boundingSphere&&e.computeBoundingSphere(),Ro.copy(e.boundingSphere).applyMatrix4(t.matrixWorld),this.intersectsSphere(Ro)},intersectsSprite:function(t){return Ro.center.set(0,0,0),Ro.radius=.7071067811865476,Ro.applyMatrix4(t.matrixWorld),this.intersectsSphere(Ro)},intersectsSphere:function(t){for(var e=this.planes,n=t.center,i=-t.radius,r=0;r<6;r++)if(e[r].distanceToPoint(n)<i)return!1;return!0},intersectsBox:function(t){for(var e=this.planes,n=0;n<6;n++){var i=e[n];if(Lo.x=i.normal.x>0?t.max.x:t.min.x,Lo.y=i.normal.y>0?t.max.y:t.min.y,Lo.z=i.normal.z>0?t.max.z:t.min.z,i.distanceToPoint(Lo)<0)return!1}return!0},containsPoint:function(t){for(var e=this.planes,n=0;n<6;n++)if(e[n].distanceToPoint(t)<0)return!1;return!0}});var jo={common:{diffuse:{value:new xr(15658734)},opacity:{value:1},map:{value:null},uvTransform:{value:new Yn},uv2Transform:{value:new Yn},alphaMap:{value:null}},specularmap:{specularMap:{value:null}},envmap:{envMap:{value:null},flipEnvMap:{value:-1},reflectivity:{value:1},refractionRatio:{value:.98},maxMipLevel:{value:0}},aomap:{aoMap:{value:null},aoMapIntensity:{value:1}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1}},emissivemap:{emissiveMap:{value:null}},bumpmap:{bumpMap:{value:null},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalScale:{value:new Xn(1,1)}},displacementmap:{displacementMap:{value:null},displacementScale:{value:1},displacementBias:{value:0}},roughnessmap:{roughnessMap:{value:null}},metalnessmap:{metalnessMap:{value:null}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new xr(16777215)}},lights:{ambientLightColor:{value:[]},lightProbe:{value:[]},directionalLights:{value:[],properties:{direction:{},color:{}}},directionalLightShadows:{value:[],properties:{shadowBias:{},shadowRadius:{},shadowMapSize:{}}},directionalShadowMap:{value:[]},directionalShadowMatrix:{value:[]},spotLights:{value:[],properties:{color:{},position:{},direction:{},distance:{},coneCos:{},penumbraCos:{},decay:{}}},spotLightShadows:{value:[],properties:{shadowBias:{},shadowRadius:{},shadowMapSize:{}}},spotShadowMap:{value:[]},spotShadowMatrix:{value:[]},pointLights:{value:[],properties:{color:{},position:{},decay:{},distance:{}}},pointLightShadows:{value:[],properties:{shadowBias:{},shadowRadius:{},shadowMapSize:{},shadowCameraNear:{},shadowCameraFar:{}}},pointShadowMap:{value:[]},pointShadowMatrix:{value:[]},hemisphereLights:{value:[],properties:{direction:{},skyColor:{},groundColor:{}}},rectAreaLights:{value:[],properties:{color:{},position:{},width:{},height:{}}}},points:{diffuse:{value:new xr(15658734)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},uvTransform:{value:new Yn}},sprite:{diffuse:{value:new xr(15658734)},opacity:{value:1},center:{value:new Xn(.5,.5)},rotation:{value:0},map:{value:null},alphaMap:{value:null},uvTransform:{value:new Yn}}};function Vo(){var t=null,e=!1,n=null;function i(r,o){!1!==e&&(n(r,o),t.requestAnimationFrame(i))}return{start:function(){!0!==e&&null!==n&&(t.requestAnimationFrame(i),e=!0)},stop:function(){e=!1},setAnimationLoop:function(t){n=t},setContext:function(e){t=e}}}function Fo(t,e,n,i){xo.call(this),this.type="PlaneGeometry",this.parameters={width:t,height:e,widthSegments:n,heightSegments:i},this.fromBufferGeometry(new Uo(t,e,n,i)),this.mergeVertices()}function Uo(t,e,n,i){Zr.call(this),this.type="PlaneBufferGeometry",this.parameters={width:t,height:e,widthSegments:n,heightSegments:i};var r,o,a=(t=t||1)/2,s=(e=e||1)/2,c=Math.floor(n)||1,l=Math.floor(i)||1,u=c+1,d=l+1,p=t/c,h=e/l,f=[],g=[],m=[],v=[];for(o=0;o<d;o++){var y=o*h-s;for(r=0;r<u;r++){var b=r*p-a;g.push(b,-y,0),m.push(0,0,1),v.push(r/c),v.push(1-o/l)}}for(o=0;o<l;o++)for(r=0;r<c;r++){var w=r+u*o,S=r+u*(o+1),x=r+1+u*(o+1),M=r+1+u*o;f.push(w,S,M),f.push(S,x,M)}this.setIndex(f),this.setAttribute("position",new Fr(g,3)),this.setAttribute("normal",new Fr(m,3)),this.setAttribute("uv",new Fr(v,2))}Fo.prototype=Object.create(xo.prototype),Fo.prototype.constructor=Fo,Uo.prototype=Object.create(Zr.prototype),Uo.prototype.constructor=Uo;var Bo={alphamap_fragment:"#ifdef USE_ALPHAMAP\n\tdiffuseColor.a *= texture2D( alphaMap, vUv ).g;\n#endif",alphamap_pars_fragment:"#ifdef USE_ALPHAMAP\n\tuniform sampler2D alphaMap;\n#endif",alphatest_fragment:"#ifdef ALPHATEST\n\tif ( diffuseColor.a < ALPHATEST ) discard;\n#endif",aomap_fragment:"#ifdef USE_AOMAP\n\tfloat ambientOcclusion = ( texture2D( aoMap, vUv2 ).r - 1.0 ) * aoMapIntensity + 1.0;\n\treflectedLight.indirectDiffuse *= ambientOcclusion;\n\t#if defined( USE_ENVMAP ) && defined( STANDARD )\n\t\tfloat dotNV = saturate( dot( geometry.normal, geometry.viewDir ) );\n\t\treflectedLight.indirectSpecular *= computeSpecularOcclusion( dotNV, ambientOcclusion, material.specularRoughness );\n\t#endif\n#endif",aomap_pars_fragment:"#ifdef USE_AOMAP\n\tuniform sampler2D aoMap;\n\tuniform float aoMapIntensity;\n#endif",begin_vertex:"vec3 transformed = vec3( position );",beginnormal_vertex:"vec3 objectNormal = vec3( normal );\n#ifdef USE_TANGENT\n\tvec3 objectTangent = vec3( tangent.xyz );\n#endif",bsdfs:"vec2 integrateSpecularBRDF( const in float dotNV, const in float roughness ) {\n\tconst vec4 c0 = vec4( - 1, - 0.0275, - 0.572, 0.022 );\n\tconst vec4 c1 = vec4( 1, 0.0425, 1.04, - 0.04 );\n\tvec4 r = roughness * c0 + c1;\n\tfloat a004 = min( r.x * r.x, exp2( - 9.28 * dotNV ) ) * r.x + r.y;\n\treturn vec2( -1.04, 1.04 ) * a004 + r.zw;\n}\nfloat punctualLightIntensityToIrradianceFactor( const in float lightDistance, const in float cutoffDistance, const in float decayExponent ) {\n#if defined ( PHYSICALLY_CORRECT_LIGHTS )\n\tfloat distanceFalloff = 1.0 / max( pow( lightDistance, decayExponent ), 0.01 );\n\tif( cutoffDistance > 0.0 ) {\n\t\tdistanceFalloff *= pow2( saturate( 1.0 - pow4( lightDistance / cutoffDistance ) ) );\n\t}\n\treturn distanceFalloff;\n#else\n\tif( cutoffDistance > 0.0 && decayExponent > 0.0 ) {\n\t\treturn pow( saturate( -lightDistance / cutoffDistance + 1.0 ), decayExponent );\n\t}\n\treturn 1.0;\n#endif\n}\nvec3 BRDF_Diffuse_Lambert( const in vec3 diffuseColor ) {\n\treturn RECIPROCAL_PI * diffuseColor;\n}\nvec3 F_Schlick( const in vec3 specularColor, const in float dotLH ) {\n\tfloat fresnel = exp2( ( -5.55473 * dotLH - 6.98316 ) * dotLH );\n\treturn ( 1.0 - specularColor ) * fresnel + specularColor;\n}\nvec3 F_Schlick_RoughnessDependent( const in vec3 F0, const in float dotNV, const in float roughness ) {\n\tfloat fresnel = exp2( ( -5.55473 * dotNV - 6.98316 ) * dotNV );\n\tvec3 Fr = max( vec3( 1.0 - roughness ), F0 ) - F0;\n\treturn Fr * fresnel + F0;\n}\nfloat G_GGX_Smith( const in float alpha, const in float dotNL, const in float dotNV ) {\n\tfloat a2 = pow2( alpha );\n\tfloat gl = dotNL + sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );\n\tfloat gv = dotNV + sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );\n\treturn 1.0 / ( gl * gv );\n}\nfloat G_GGX_SmithCorrelated( const in float alpha, const in float dotNL, const in float dotNV ) {\n\tfloat a2 = pow2( alpha );\n\tfloat gv = dotNL * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );\n\tfloat gl = dotNV * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );\n\treturn 0.5 / max( gv + gl, EPSILON );\n}\nfloat D_GGX( const in float alpha, const in float dotNH ) {\n\tfloat a2 = pow2( alpha );\n\tfloat denom = pow2( dotNH ) * ( a2 - 1.0 ) + 1.0;\n\treturn RECIPROCAL_PI * a2 / pow2( denom );\n}\nvec3 BRDF_Specular_GGX( const in IncidentLight incidentLight, const in vec3 viewDir, const in vec3 normal, const in vec3 specularColor, const in float roughness ) {\n\tfloat alpha = pow2( roughness );\n\tvec3 halfDir = normalize( incidentLight.direction + viewDir );\n\tfloat dotNL = saturate( dot( normal, incidentLight.direction ) );\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tfloat dotNH = saturate( dot( normal, halfDir ) );\n\tfloat dotLH = saturate( dot( incidentLight.direction, halfDir ) );\n\tvec3 F = F_Schlick( specularColor, dotLH );\n\tfloat G = G_GGX_SmithCorrelated( alpha, dotNL, dotNV );\n\tfloat D = D_GGX( alpha, dotNH );\n\treturn F * ( G * D );\n}\nvec2 LTC_Uv( const in vec3 N, const in vec3 V, const in float roughness ) {\n\tconst float LUT_SIZE = 64.0;\n\tconst float LUT_SCALE = ( LUT_SIZE - 1.0 ) / LUT_SIZE;\n\tconst float LUT_BIAS = 0.5 / LUT_SIZE;\n\tfloat dotNV = saturate( dot( N, V ) );\n\tvec2 uv = vec2( roughness, sqrt( 1.0 - dotNV ) );\n\tuv = uv * LUT_SCALE + LUT_BIAS;\n\treturn uv;\n}\nfloat LTC_ClippedSphereFormFactor( const in vec3 f ) {\n\tfloat l = length( f );\n\treturn max( ( l * l + f.z ) / ( l + 1.0 ), 0.0 );\n}\nvec3 LTC_EdgeVectorFormFactor( const in vec3 v1, const in vec3 v2 ) {\n\tfloat x = dot( v1, v2 );\n\tfloat y = abs( x );\n\tfloat a = 0.8543985 + ( 0.4965155 + 0.0145206 * y ) * y;\n\tfloat b = 3.4175940 + ( 4.1616724 + y ) * y;\n\tfloat v = a / b;\n\tfloat theta_sintheta = ( x > 0.0 ) ? v : 0.5 * inversesqrt( max( 1.0 - x * x, 1e-7 ) ) - v;\n\treturn cross( v1, v2 ) * theta_sintheta;\n}\nvec3 LTC_Evaluate( const in vec3 N, const in vec3 V, const in vec3 P, const in mat3 mInv, const in vec3 rectCoords[ 4 ] ) {\n\tvec3 v1 = rectCoords[ 1 ] - rectCoords[ 0 ];\n\tvec3 v2 = rectCoords[ 3 ] - rectCoords[ 0 ];\n\tvec3 lightNormal = cross( v1, v2 );\n\tif( dot( lightNormal, P - rectCoords[ 0 ] ) < 0.0 ) return vec3( 0.0 );\n\tvec3 T1, T2;\n\tT1 = normalize( V - N * dot( V, N ) );\n\tT2 = - cross( N, T1 );\n\tmat3 mat = mInv * transposeMat3( mat3( T1, T2, N ) );\n\tvec3 coords[ 4 ];\n\tcoords[ 0 ] = mat * ( rectCoords[ 0 ] - P );\n\tcoords[ 1 ] = mat * ( rectCoords[ 1 ] - P );\n\tcoords[ 2 ] = mat * ( rectCoords[ 2 ] - P );\n\tcoords[ 3 ] = mat * ( rectCoords[ 3 ] - P );\n\tcoords[ 0 ] = normalize( coords[ 0 ] );\n\tcoords[ 1 ] = normalize( coords[ 1 ] );\n\tcoords[ 2 ] = normalize( coords[ 2 ] );\n\tcoords[ 3 ] = normalize( coords[ 3 ] );\n\tvec3 vectorFormFactor = vec3( 0.0 );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 0 ], coords[ 1 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 1 ], coords[ 2 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 2 ], coords[ 3 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 3 ], coords[ 0 ] );\n\tfloat result = LTC_ClippedSphereFormFactor( vectorFormFactor );\n\treturn vec3( result );\n}\nvec3 BRDF_Specular_GGX_Environment( const in vec3 viewDir, const in vec3 normal, const in vec3 specularColor, const in float roughness ) {\n\tfloat dotNV = saturate( dot( normal, viewDir ) );\n\tvec2 brdf = integrateSpecularBRDF( dotNV, roughness );\n\treturn specularColor * brdf.x + brdf.y;\n}\nvoid BRDF_Specular_Multiscattering_Environment( const in GeometricContext geometry, const in vec3 specularColor, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) {\n\tfloat dotNV = saturate( dot( geometry.normal, geometry.viewDir ) );\n\tvec3 F = F_Schlick_RoughnessDependent( specularColor, dotNV, roughness );\n\tvec2 brdf = integrateSpecularBRDF( dotNV, roughness );\n\tvec3 FssEss = F * brdf.x + brdf.y;\n\tfloat Ess = brdf.x + brdf.y;\n\tfloat Ems = 1.0 - Ess;\n\tvec3 Favg = specularColor + ( 1.0 - specularColor ) * 0.047619;\tvec3 Fms = FssEss * Favg / ( 1.0 - Ems * Favg );\n\tsingleScatter += FssEss;\n\tmultiScatter += Fms * Ems;\n}\nfloat G_BlinnPhong_Implicit( ) {\n\treturn 0.25;\n}\nfloat D_BlinnPhong( const in float shininess, const in float dotNH ) {\n\treturn RECIPROCAL_PI * ( shininess * 0.5 + 1.0 ) * pow( dotNH, shininess );\n}\nvec3 BRDF_Specular_BlinnPhong( const in IncidentLight incidentLight, const in GeometricContext geometry, const in vec3 specularColor, const in float shininess ) {\n\tvec3 halfDir = normalize( incidentLight.direction + geometry.viewDir );\n\tfloat dotNH = saturate( dot( geometry.normal, halfDir ) );\n\tfloat dotLH = saturate( dot( incidentLight.direction, halfDir ) );\n\tvec3 F = F_Schlick( specularColor, dotLH );\n\tfloat G = G_BlinnPhong_Implicit( );\n\tfloat D = D_BlinnPhong( shininess, dotNH );\n\treturn F * ( G * D );\n}\nfloat GGXRoughnessToBlinnExponent( const in float ggxRoughness ) {\n\treturn ( 2.0 / pow2( ggxRoughness + 0.0001 ) - 2.0 );\n}\nfloat BlinnExponentToGGXRoughness( const in float blinnExponent ) {\n\treturn sqrt( 2.0 / ( blinnExponent + 2.0 ) );\n}\n#if defined( USE_SHEEN )\nfloat D_Charlie(float roughness, float NoH) {\n\tfloat invAlpha = 1.0 / roughness;\n\tfloat cos2h = NoH * NoH;\n\tfloat sin2h = max(1.0 - cos2h, 0.0078125);\treturn (2.0 + invAlpha) * pow(sin2h, invAlpha * 0.5) / (2.0 * PI);\n}\nfloat V_Neubelt(float NoV, float NoL) {\n\treturn saturate(1.0 / (4.0 * (NoL + NoV - NoL * NoV)));\n}\nvec3 BRDF_Specular_Sheen( const in float roughness, const in vec3 L, const in GeometricContext geometry, vec3 specularColor ) {\n\tvec3 N = geometry.normal;\n\tvec3 V = geometry.viewDir;\n\tvec3 H = normalize( V + L );\n\tfloat dotNH = saturate( dot( N, H ) );\n\treturn specularColor * D_Charlie( roughness, dotNH ) * V_Neubelt( dot(N, V), dot(N, L) );\n}\n#endif",bumpmap_pars_fragment:"#ifdef USE_BUMPMAP\n\tuniform sampler2D bumpMap;\n\tuniform float bumpScale;\n\tvec2 dHdxy_fwd() {\n\t\tvec2 dSTdx = dFdx( vUv );\n\t\tvec2 dSTdy = dFdy( vUv );\n\t\tfloat Hll = bumpScale * texture2D( bumpMap, vUv ).x;\n\t\tfloat dBx = bumpScale * texture2D( bumpMap, vUv + dSTdx ).x - Hll;\n\t\tfloat dBy = bumpScale * texture2D( bumpMap, vUv + dSTdy ).x - Hll;\n\t\treturn vec2( dBx, dBy );\n\t}\n\tvec3 perturbNormalArb( vec3 surf_pos, vec3 surf_norm, vec2 dHdxy ) {\n\t\tvec3 vSigmaX = vec3( dFdx( surf_pos.x ), dFdx( surf_pos.y ), dFdx( surf_pos.z ) );\n\t\tvec3 vSigmaY = vec3( dFdy( surf_pos.x ), dFdy( surf_pos.y ), dFdy( surf_pos.z ) );\n\t\tvec3 vN = surf_norm;\n\t\tvec3 R1 = cross( vSigmaY, vN );\n\t\tvec3 R2 = cross( vN, vSigmaX );\n\t\tfloat fDet = dot( vSigmaX, R1 );\n\t\tfDet *= ( float( gl_FrontFacing ) * 2.0 - 1.0 );\n\t\tvec3 vGrad = sign( fDet ) * ( dHdxy.x * R1 + dHdxy.y * R2 );\n\t\treturn normalize( abs( fDet ) * surf_norm - vGrad );\n\t}\n#endif",clipping_planes_fragment:"#if NUM_CLIPPING_PLANES > 0\n\tvec4 plane;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {\n\t\tplane = clippingPlanes[ i ];\n\t\tif ( dot( vClipPosition, plane.xyz ) > plane.w ) discard;\n\t}\n\t#pragma unroll_loop_end\n\t#if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES\n\t\tbool clipped = true;\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {\n\t\t\tplane = clippingPlanes[ i ];\n\t\t\tclipped = ( dot( vClipPosition, plane.xyz ) > plane.w ) && clipped;\n\t\t}\n\t\t#pragma unroll_loop_end\n\t\tif ( clipped ) discard;\n\t#endif\n#endif",clipping_planes_pars_fragment:"#if NUM_CLIPPING_PLANES > 0\n\tvarying vec3 vClipPosition;\n\tuniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ];\n#endif",clipping_planes_pars_vertex:"#if NUM_CLIPPING_PLANES > 0\n\tvarying vec3 vClipPosition;\n#endif",clipping_planes_vertex:"#if NUM_CLIPPING_PLANES > 0\n\tvClipPosition = - mvPosition.xyz;\n#endif",color_fragment:"#ifdef USE_COLOR\n\tdiffuseColor.rgb *= vColor;\n#endif",color_pars_fragment:"#ifdef USE_COLOR\n\tvarying vec3 vColor;\n#endif",color_pars_vertex:"#ifdef USE_COLOR\n\tvarying vec3 vColor;\n#endif",color_vertex:"#ifdef USE_COLOR\n\tvColor.xyz = color.xyz;\n#endif",common:"#define PI 3.14159265359\n#define PI2 6.28318530718\n#define PI_HALF 1.5707963267949\n#define RECIPROCAL_PI 0.31830988618\n#define RECIPROCAL_PI2 0.15915494\n#define LOG2 1.442695\n#define EPSILON 1e-6\n#ifndef saturate\n#define saturate(a) clamp( a, 0.0, 1.0 )\n#endif\n#define whiteComplement(a) ( 1.0 - saturate( a ) )\nfloat pow2( const in float x ) { return x*x; }\nfloat pow3( const in float x ) { return x*x*x; }\nfloat pow4( const in float x ) { float x2 = x*x; return x2*x2; }\nfloat average( const in vec3 color ) { return dot( color, vec3( 0.3333 ) ); }\nhighp float rand( const in vec2 uv ) {\n\tconst highp float a = 12.9898, b = 78.233, c = 43758.5453;\n\thighp float dt = dot( uv.xy, vec2( a,b ) ), sn = mod( dt, PI );\n\treturn fract(sin(sn) * c);\n}\n#ifdef HIGH_PRECISION\n\tfloat precisionSafeLength( vec3 v ) { return length( v ); }\n#else\n\tfloat max3( vec3 v ) { return max( max( v.x, v.y ), v.z ); }\n\tfloat precisionSafeLength( vec3 v ) {\n\t\tfloat maxComponent = max3( abs( v ) );\n\t\treturn length( v / maxComponent ) * maxComponent;\n\t}\n#endif\nstruct IncidentLight {\n\tvec3 color;\n\tvec3 direction;\n\tbool visible;\n};\nstruct ReflectedLight {\n\tvec3 directDiffuse;\n\tvec3 directSpecular;\n\tvec3 indirectDiffuse;\n\tvec3 indirectSpecular;\n};\nstruct GeometricContext {\n\tvec3 position;\n\tvec3 normal;\n\tvec3 viewDir;\n#ifdef CLEARCOAT\n\tvec3 clearcoatNormal;\n#endif\n};\nvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\n\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\n}\nvec3 inverseTransformDirection( in vec3 dir, in mat4 matrix ) {\n\treturn normalize( ( vec4( dir, 0.0 ) * matrix ).xyz );\n}\nvec3 projectOnPlane(in vec3 point, in vec3 pointOnPlane, in vec3 planeNormal ) {\n\tfloat distance = dot( planeNormal, point - pointOnPlane );\n\treturn - distance * planeNormal + point;\n}\nfloat sideOfPlane( in vec3 point, in vec3 pointOnPlane, in vec3 planeNormal ) {\n\treturn sign( dot( point - pointOnPlane, planeNormal ) );\n}\nvec3 linePlaneIntersect( in vec3 pointOnLine, in vec3 lineDirection, in vec3 pointOnPlane, in vec3 planeNormal ) {\n\treturn lineDirection * ( dot( planeNormal, pointOnPlane - pointOnLine ) / dot( planeNormal, lineDirection ) ) + pointOnLine;\n}\nmat3 transposeMat3( const in mat3 m ) {\n\tmat3 tmp;\n\ttmp[ 0 ] = vec3( m[ 0 ].x, m[ 1 ].x, m[ 2 ].x );\n\ttmp[ 1 ] = vec3( m[ 0 ].y, m[ 1 ].y, m[ 2 ].y );\n\ttmp[ 2 ] = vec3( m[ 0 ].z, m[ 1 ].z, m[ 2 ].z );\n\treturn tmp;\n}\nfloat linearToRelativeLuminance( const in vec3 color ) {\n\tvec3 weights = vec3( 0.2126, 0.7152, 0.0722 );\n\treturn dot( weights, color.rgb );\n}\nbool isPerspectiveMatrix( mat4 m ) {\n return m[ 2 ][ 3 ] == - 1.0;\n}",cube_uv_reflection_fragment:"#ifdef ENVMAP_TYPE_CUBE_UV\n#define cubeUV_maxMipLevel 8.0\n#define cubeUV_minMipLevel 4.0\n#define cubeUV_maxTileSize 256.0\n#define cubeUV_minTileSize 16.0\nfloat getFace(vec3 direction) {\n vec3 absDirection = abs(direction);\n float face = -1.0;\n if (absDirection.x > absDirection.z) {\n if (absDirection.x > absDirection.y)\n face = direction.x > 0.0 ? 0.0 : 3.0;\n else\n face = direction.y > 0.0 ? 1.0 : 4.0;\n } else {\n if (absDirection.z > absDirection.y)\n face = direction.z > 0.0 ? 2.0 : 5.0;\n else\n face = direction.y > 0.0 ? 1.0 : 4.0;\n }\n return face;\n}\nvec2 getUV(vec3 direction, float face) {\n vec2 uv;\n if (face == 0.0) {\n uv = vec2(-direction.z, direction.y) / abs(direction.x);\n } else if (face == 1.0) {\n uv = vec2(direction.x, -direction.z) / abs(direction.y);\n } else if (face == 2.0) {\n uv = direction.xy / abs(direction.z);\n } else if (face == 3.0) {\n uv = vec2(direction.z, direction.y) / abs(direction.x);\n } else if (face == 4.0) {\n uv = direction.xz / abs(direction.y);\n } else {\n uv = vec2(-direction.x, direction.y) / abs(direction.z);\n }\n return 0.5 * (uv + 1.0);\n}\nvec3 bilinearCubeUV(sampler2D envMap, vec3 direction, float mipInt) {\n float face = getFace(direction);\n float filterInt = max(cubeUV_minMipLevel - mipInt, 0.0);\n mipInt = max(mipInt, cubeUV_minMipLevel);\n float faceSize = exp2(mipInt);\n float texelSize = 1.0 / (3.0 * cubeUV_maxTileSize);\n vec2 uv = getUV(direction, face) * (faceSize - 1.0);\n vec2 f = fract(uv);\n uv += 0.5 - f;\n if (face > 2.0) {\n uv.y += faceSize;\n face -= 3.0;\n }\n uv.x += face * faceSize;\n if(mipInt < cubeUV_maxMipLevel){\n uv.y += 2.0 * cubeUV_maxTileSize;\n }\n uv.y += filterInt * 2.0 * cubeUV_minTileSize;\n uv.x += 3.0 * max(0.0, cubeUV_maxTileSize - 2.0 * faceSize);\n uv *= texelSize;\n vec3 tl = envMapTexelToLinear(texture2D(envMap, uv)).rgb;\n uv.x += texelSize;\n vec3 tr = envMapTexelToLinear(texture2D(envMap, uv)).rgb;\n uv.y += texelSize;\n vec3 br = envMapTexelToLinear(texture2D(envMap, uv)).rgb;\n uv.x -= texelSize;\n vec3 bl = envMapTexelToLinear(texture2D(envMap, uv)).rgb;\n vec3 tm = mix(tl, tr, f.x);\n vec3 bm = mix(bl, br, f.x);\n return mix(tm, bm, f.y);\n}\n#define r0 1.0\n#define v0 0.339\n#define m0 -2.0\n#define r1 0.8\n#define v1 0.276\n#define m1 -1.0\n#define r4 0.4\n#define v4 0.046\n#define m4 2.0\n#define r5 0.305\n#define v5 0.016\n#define m5 3.0\n#define r6 0.21\n#define v6 0.0038\n#define m6 4.0\nfloat roughnessToMip(float roughness) {\n float mip = 0.0;\n if (roughness >= r1) {\n mip = (r0 - roughness) * (m1 - m0) / (r0 - r1) + m0;\n } else if (roughness >= r4) {\n mip = (r1 - roughness) * (m4 - m1) / (r1 - r4) + m1;\n } else if (roughness >= r5) {\n mip = (r4 - roughness) * (m5 - m4) / (r4 - r5) + m4;\n } else if (roughness >= r6) {\n mip = (r5 - roughness) * (m6 - m5) / (r5 - r6) + m5;\n } else {\n mip = -2.0 * log2(1.16 * roughness); }\n return mip;\n}\nvec4 textureCubeUV(sampler2D envMap, vec3 sampleDir, float roughness) {\n float mip = clamp(roughnessToMip(roughness), m0, cubeUV_maxMipLevel);\n float mipF = fract(mip);\n float mipInt = floor(mip);\n vec3 color0 = bilinearCubeUV(envMap, sampleDir, mipInt);\n if (mipF == 0.0) {\n return vec4(color0, 1.0);\n } else {\n vec3 color1 = bilinearCubeUV(envMap, sampleDir, mipInt + 1.0);\n return vec4(mix(color0, color1, mipF), 1.0);\n }\n}\n#endif",defaultnormal_vertex:"vec3 transformedNormal = objectNormal;\n#ifdef USE_INSTANCING\n\tmat3 m = mat3( instanceMatrix );\n\ttransformedNormal /= vec3( dot( m[ 0 ], m[ 0 ] ), dot( m[ 1 ], m[ 1 ] ), dot( m[ 2 ], m[ 2 ] ) );\n\ttransformedNormal = m * transformedNormal;\n#endif\ntransformedNormal = normalMatrix * transformedNormal;\n#ifdef FLIP_SIDED\n\ttransformedNormal = - transformedNormal;\n#endif\n#ifdef USE_TANGENT\n\tvec3 transformedTangent = ( modelViewMatrix * vec4( objectTangent, 0.0 ) ).xyz;\n\t#ifdef FLIP_SIDED\n\t\ttransformedTangent = - transformedTangent;\n\t#endif\n#endif",displacementmap_pars_vertex:"#ifdef USE_DISPLACEMENTMAP\n\tuniform sampler2D displacementMap;\n\tuniform float displacementScale;\n\tuniform float displacementBias;\n#endif",displacementmap_vertex:"#ifdef USE_DISPLACEMENTMAP\n\ttransformed += normalize( objectNormal ) * ( texture2D( displacementMap, vUv ).x * displacementScale + displacementBias );\n#endif",emissivemap_fragment:"#ifdef USE_EMISSIVEMAP\n\tvec4 emissiveColor = texture2D( emissiveMap, vUv );\n\temissiveColor.rgb = emissiveMapTexelToLinear( emissiveColor ).rgb;\n\ttotalEmissiveRadiance *= emissiveColor.rgb;\n#endif",emissivemap_pars_fragment:"#ifdef USE_EMISSIVEMAP\n\tuniform sampler2D emissiveMap;\n#endif",encodings_fragment:"gl_FragColor = linearToOutputTexel( gl_FragColor );",encodings_pars_fragment:"\nvec4 LinearToLinear( in vec4 value ) {\n\treturn value;\n}\nvec4 GammaToLinear( in vec4 value, in float gammaFactor ) {\n\treturn vec4( pow( value.rgb, vec3( gammaFactor ) ), value.a );\n}\nvec4 LinearToGamma( in vec4 value, in float gammaFactor ) {\n\treturn vec4( pow( value.rgb, vec3( 1.0 / gammaFactor ) ), value.a );\n}\nvec4 sRGBToLinear( in vec4 value ) {\n\treturn vec4( mix( pow( value.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), value.rgb * 0.0773993808, vec3( lessThanEqual( value.rgb, vec3( 0.04045 ) ) ) ), value.a );\n}\nvec4 LinearTosRGB( in vec4 value ) {\n\treturn vec4( mix( pow( value.rgb, vec3( 0.41666 ) ) * 1.055 - vec3( 0.055 ), value.rgb * 12.92, vec3( lessThanEqual( value.rgb, vec3( 0.0031308 ) ) ) ), value.a );\n}\nvec4 RGBEToLinear( in vec4 value ) {\n\treturn vec4( value.rgb * exp2( value.a * 255.0 - 128.0 ), 1.0 );\n}\nvec4 LinearToRGBE( in vec4 value ) {\n\tfloat maxComponent = max( max( value.r, value.g ), value.b );\n\tfloat fExp = clamp( ceil( log2( maxComponent ) ), -128.0, 127.0 );\n\treturn vec4( value.rgb / exp2( fExp ), ( fExp + 128.0 ) / 255.0 );\n}\nvec4 RGBMToLinear( in vec4 value, in float maxRange ) {\n\treturn vec4( value.rgb * value.a * maxRange, 1.0 );\n}\nvec4 LinearToRGBM( in vec4 value, in float maxRange ) {\n\tfloat maxRGB = max( value.r, max( value.g, value.b ) );\n\tfloat M = clamp( maxRGB / maxRange, 0.0, 1.0 );\n\tM = ceil( M * 255.0 ) / 255.0;\n\treturn vec4( value.rgb / ( M * maxRange ), M );\n}\nvec4 RGBDToLinear( in vec4 value, in float maxRange ) {\n\treturn vec4( value.rgb * ( ( maxRange / 255.0 ) / value.a ), 1.0 );\n}\nvec4 LinearToRGBD( in vec4 value, in float maxRange ) {\n\tfloat maxRGB = max( value.r, max( value.g, value.b ) );\n\tfloat D = max( maxRange / maxRGB, 1.0 );\n\tD = clamp( floor( D ) / 255.0, 0.0, 1.0 );\n\treturn vec4( value.rgb * ( D * ( 255.0 / maxRange ) ), D );\n}\nconst mat3 cLogLuvM = mat3( 0.2209, 0.3390, 0.4184, 0.1138, 0.6780, 0.7319, 0.0102, 0.1130, 0.2969 );\nvec4 LinearToLogLuv( in vec4 value ) {\n\tvec3 Xp_Y_XYZp = cLogLuvM * value.rgb;\n\tXp_Y_XYZp = max( Xp_Y_XYZp, vec3( 1e-6, 1e-6, 1e-6 ) );\n\tvec4 vResult;\n\tvResult.xy = Xp_Y_XYZp.xy / Xp_Y_XYZp.z;\n\tfloat Le = 2.0 * log2(Xp_Y_XYZp.y) + 127.0;\n\tvResult.w = fract( Le );\n\tvResult.z = ( Le - ( floor( vResult.w * 255.0 ) ) / 255.0 ) / 255.0;\n\treturn vResult;\n}\nconst mat3 cLogLuvInverseM = mat3( 6.0014, -2.7008, -1.7996, -1.3320, 3.1029, -5.7721, 0.3008, -1.0882, 5.6268 );\nvec4 LogLuvToLinear( in vec4 value ) {\n\tfloat Le = value.z * 255.0 + value.w;\n\tvec3 Xp_Y_XYZp;\n\tXp_Y_XYZp.y = exp2( ( Le - 127.0 ) / 2.0 );\n\tXp_Y_XYZp.z = Xp_Y_XYZp.y / value.y;\n\tXp_Y_XYZp.x = value.x * Xp_Y_XYZp.z;\n\tvec3 vRGB = cLogLuvInverseM * Xp_Y_XYZp.rgb;\n\treturn vec4( max( vRGB, 0.0 ), 1.0 );\n}",envmap_fragment:"#ifdef USE_ENVMAP\n\t#ifdef ENV_WORLDPOS\n\t\tvec3 cameraToFrag;\n\t\t\n\t\tif ( isOrthographic ) {\n\t\t\tcameraToFrag = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\n\t\t} else {\n\t\t\tcameraToFrag = normalize( vWorldPosition - cameraPosition );\n\t\t}\n\t\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n\t\t#ifdef ENVMAP_MODE_REFLECTION\n\t\t\tvec3 reflectVec = reflect( cameraToFrag, worldNormal );\n\t\t#else\n\t\t\tvec3 reflectVec = refract( cameraToFrag, worldNormal, refractionRatio );\n\t\t#endif\n\t#else\n\t\tvec3 reflectVec = vReflect;\n\t#endif\n\t#ifdef ENVMAP_TYPE_CUBE\n\t\tvec4 envColor = textureCube( envMap, vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) );\n\t#elif defined( ENVMAP_TYPE_CUBE_UV )\n\t\tvec4 envColor = textureCubeUV( envMap, reflectVec, 0.0 );\n\t#elif defined( ENVMAP_TYPE_EQUIREC )\n\t\tvec2 sampleUV;\n\t\treflectVec = normalize( reflectVec );\n\t\tsampleUV.y = asin( clamp( reflectVec.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;\n\t\tsampleUV.x = atan( reflectVec.z, reflectVec.x ) * RECIPROCAL_PI2 + 0.5;\n\t\tvec4 envColor = texture2D( envMap, sampleUV );\n\t#elif defined( ENVMAP_TYPE_SPHERE )\n\t\treflectVec = normalize( reflectVec );\n\t\tvec3 reflectView = normalize( ( viewMatrix * vec4( reflectVec, 0.0 ) ).xyz + vec3( 0.0, 0.0, 1.0 ) );\n\t\tvec4 envColor = texture2D( envMap, reflectView.xy * 0.5 + 0.5 );\n\t#else\n\t\tvec4 envColor = vec4( 0.0 );\n\t#endif\n\t#ifndef ENVMAP_TYPE_CUBE_UV\n\t\tenvColor = envMapTexelToLinear( envColor );\n\t#endif\n\t#ifdef ENVMAP_BLENDING_MULTIPLY\n\t\toutgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity );\n\t#elif defined( ENVMAP_BLENDING_MIX )\n\t\toutgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity );\n\t#elif defined( ENVMAP_BLENDING_ADD )\n\t\toutgoingLight += envColor.xyz * specularStrength * reflectivity;\n\t#endif\n#endif",envmap_common_pars_fragment:"#ifdef USE_ENVMAP\n\tuniform float envMapIntensity;\n\tuniform float flipEnvMap;\n\tuniform int maxMipLevel;\n\t#ifdef ENVMAP_TYPE_CUBE\n\t\tuniform samplerCube envMap;\n\t#else\n\t\tuniform sampler2D envMap;\n\t#endif\n\t\n#endif",envmap_pars_fragment:"#ifdef USE_ENVMAP\n\tuniform float reflectivity;\n\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG )\n\t\t#define ENV_WORLDPOS\n\t#endif\n\t#ifdef ENV_WORLDPOS\n\t\tvarying vec3 vWorldPosition;\n\t\tuniform float refractionRatio;\n\t#else\n\t\tvarying vec3 vReflect;\n\t#endif\n#endif",envmap_pars_vertex:"#ifdef USE_ENVMAP\n\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) ||defined( PHONG )\n\t\t#define ENV_WORLDPOS\n\t#endif\n\t#ifdef ENV_WORLDPOS\n\t\t\n\t\tvarying vec3 vWorldPosition;\n\t#else\n\t\tvarying vec3 vReflect;\n\t\tuniform float refractionRatio;\n\t#endif\n#endif",envmap_physical_pars_fragment:"#if defined( USE_ENVMAP )\n\t#ifdef ENVMAP_MODE_REFRACTION\n\t\tuniform float refractionRatio;\n\t#endif\n\tvec3 getLightProbeIndirectIrradiance( const in GeometricContext geometry, const in int maxMIPLevel ) {\n\t\tvec3 worldNormal = inverseTransformDirection( geometry.normal, viewMatrix );\n\t\t#ifdef ENVMAP_TYPE_CUBE\n\t\t\tvec3 queryVec = vec3( flipEnvMap * worldNormal.x, worldNormal.yz );\n\t\t\t#ifdef TEXTURE_LOD_EXT\n\t\t\t\tvec4 envMapColor = textureCubeLodEXT( envMap, queryVec, float( maxMIPLevel ) );\n\t\t\t#else\n\t\t\t\tvec4 envMapColor = textureCube( envMap, queryVec, float( maxMIPLevel ) );\n\t\t\t#endif\n\t\t\tenvMapColor.rgb = envMapTexelToLinear( envMapColor ).rgb;\n\t\t#elif defined( ENVMAP_TYPE_CUBE_UV )\n\t\t\tvec4 envMapColor = textureCubeUV( envMap, worldNormal, 1.0 );\n\t\t#else\n\t\t\tvec4 envMapColor = vec4( 0.0 );\n\t\t#endif\n\t\treturn PI * envMapColor.rgb * envMapIntensity;\n\t}\n\tfloat getSpecularMIPLevel( const in float roughness, const in int maxMIPLevel ) {\n\t\tfloat maxMIPLevelScalar = float( maxMIPLevel );\n\t\tfloat sigma = PI * roughness * roughness / ( 1.0 + roughness );\n\t\tfloat desiredMIPLevel = maxMIPLevelScalar + log2( sigma );\n\t\treturn clamp( desiredMIPLevel, 0.0, maxMIPLevelScalar );\n\t}\n\tvec3 getLightProbeIndirectRadiance( const in vec3 viewDir, const in vec3 normal, const in float roughness, const in int maxMIPLevel ) {\n\t\t#ifdef ENVMAP_MODE_REFLECTION\n\t\t vec3 reflectVec = reflect( -viewDir, normal );\n\t\t reflectVec = normalize( mix( reflectVec, normal, roughness * roughness) );\n\t\t#else\n\t\t vec3 reflectVec = refract( -viewDir, normal, refractionRatio );\n\t\t#endif\n\t\treflectVec = inverseTransformDirection( reflectVec, viewMatrix );\n\t\tfloat specularMIPLevel = getSpecularMIPLevel( roughness, maxMIPLevel );\n\t\t#ifdef ENVMAP_TYPE_CUBE\n\t\t\tvec3 queryReflectVec = vec3( flipEnvMap * reflectVec.x, reflectVec.yz );\n\t\t\t#ifdef TEXTURE_LOD_EXT\n\t\t\t\tvec4 envMapColor = textureCubeLodEXT( envMap, queryReflectVec, specularMIPLevel );\n\t\t\t#else\n\t\t\t\tvec4 envMapColor = textureCube( envMap, queryReflectVec, specularMIPLevel );\n\t\t\t#endif\n\t\t\tenvMapColor.rgb = envMapTexelToLinear( envMapColor ).rgb;\n\t\t#elif defined( ENVMAP_TYPE_CUBE_UV )\n\t\t\tvec4 envMapColor = textureCubeUV( envMap, reflectVec, roughness );\n\t\t#elif defined( ENVMAP_TYPE_EQUIREC )\n\t\t\tvec2 sampleUV;\n\t\t\tsampleUV.y = asin( clamp( reflectVec.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;\n\t\t\tsampleUV.x = atan( reflectVec.z, reflectVec.x ) * RECIPROCAL_PI2 + 0.5;\n\t\t\t#ifdef TEXTURE_LOD_EXT\n\t\t\t\tvec4 envMapColor = texture2DLodEXT( envMap, sampleUV, specularMIPLevel );\n\t\t\t#else\n\t\t\t\tvec4 envMapColor = texture2D( envMap, sampleUV, specularMIPLevel );\n\t\t\t#endif\n\t\t\tenvMapColor.rgb = envMapTexelToLinear( envMapColor ).rgb;\n\t\t#elif defined( ENVMAP_TYPE_SPHERE )\n\t\t\tvec3 reflectView = normalize( ( viewMatrix * vec4( reflectVec, 0.0 ) ).xyz + vec3( 0.0,0.0,1.0 ) );\n\t\t\t#ifdef TEXTURE_LOD_EXT\n\t\t\t\tvec4 envMapColor = texture2DLodEXT( envMap, reflectView.xy * 0.5 + 0.5, specularMIPLevel );\n\t\t\t#else\n\t\t\t\tvec4 envMapColor = texture2D( envMap, reflectView.xy * 0.5 + 0.5, specularMIPLevel );\n\t\t\t#endif\n\t\t\tenvMapColor.rgb = envMapTexelToLinear( envMapColor ).rgb;\n\t\t#endif\n\t\treturn envMapColor.rgb * envMapIntensity;\n\t}\n#endif",envmap_vertex:"#ifdef USE_ENVMAP\n\t#ifdef ENV_WORLDPOS\n\t\tvWorldPosition = worldPosition.xyz;\n\t#else\n\t\tvec3 cameraToVertex;\n\t\tif ( isOrthographic ) { \n\t\t\tcameraToVertex = normalize( vec3( - viewMatrix[ 0 ][ 2 ], - viewMatrix[ 1 ][ 2 ], - viewMatrix[ 2 ][ 2 ] ) );\n\t\t} else {\n\t\t\tcameraToVertex = normalize( worldPosition.xyz - cameraPosition );\n\t\t}\n\t\tvec3 worldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\n\t\t#ifdef ENVMAP_MODE_REFLECTION\n\t\t\tvReflect = reflect( cameraToVertex, worldNormal );\n\t\t#else\n\t\t\tvReflect = refract( cameraToVertex, worldNormal, refractionRatio );\n\t\t#endif\n\t#endif\n#endif",fog_vertex:"#ifdef USE_FOG\n\tfogDepth = -mvPosition.z;\n#endif",fog_pars_vertex:"#ifdef USE_FOG\n\tvarying float fogDepth;\n#endif",fog_fragment:"#ifdef USE_FOG\n\t#ifdef FOG_EXP2\n\t\tfloat fogFactor = 1.0 - exp( - fogDensity * fogDensity * fogDepth * fogDepth );\n\t#else\n\t\tfloat fogFactor = smoothstep( fogNear, fogFar, fogDepth );\n\t#endif\n\tgl_FragColor.rgb = mix( gl_FragColor.rgb, fogColor, fogFactor );\n#endif",fog_pars_fragment:"#ifdef USE_FOG\n\tuniform vec3 fogColor;\n\tvarying float fogDepth;\n\t#ifdef FOG_EXP2\n\t\tuniform float fogDensity;\n\t#else\n\t\tuniform float fogNear;\n\t\tuniform float fogFar;\n\t#endif\n#endif",gradientmap_pars_fragment:"#ifdef USE_GRADIENTMAP\n\tuniform sampler2D gradientMap;\n#endif\nvec3 getGradientIrradiance( vec3 normal, vec3 lightDirection ) {\n\tfloat dotNL = dot( normal, lightDirection );\n\tvec2 coord = vec2( dotNL * 0.5 + 0.5, 0.0 );\n\t#ifdef USE_GRADIENTMAP\n\t\treturn texture2D( gradientMap, coord ).rgb;\n\t#else\n\t\treturn ( coord.x < 0.7 ) ? vec3( 0.7 ) : vec3( 1.0 );\n\t#endif\n}",lightmap_fragment:"#ifdef USE_LIGHTMAP\n\tvec4 lightMapTexel= texture2D( lightMap, vUv2 );\n\treflectedLight.indirectDiffuse += PI * lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\n#endif",lightmap_pars_fragment:"#ifdef USE_LIGHTMAP\n\tuniform sampler2D lightMap;\n\tuniform float lightMapIntensity;\n#endif",lights_lambert_vertex:"vec3 diffuse = vec3( 1.0 );\nGeometricContext geometry;\ngeometry.position = mvPosition.xyz;\ngeometry.normal = normalize( transformedNormal );\ngeometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( -mvPosition.xyz );\nGeometricContext backGeometry;\nbackGeometry.position = geometry.position;\nbackGeometry.normal = -geometry.normal;\nbackGeometry.viewDir = geometry.viewDir;\nvLightFront = vec3( 0.0 );\nvIndirectFront = vec3( 0.0 );\n#ifdef DOUBLE_SIDED\n\tvLightBack = vec3( 0.0 );\n\tvIndirectBack = vec3( 0.0 );\n#endif\nIncidentLight directLight;\nfloat dotNL;\nvec3 directLightColor_Diffuse;\n#if NUM_POINT_LIGHTS > 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\n\t\tgetPointDirectLightIrradiance( pointLights[ i ], geometry, directLight );\n\t\tdotNL = dot( geometry.normal, directLight.direction );\n\t\tdirectLightColor_Diffuse = PI * directLight.color;\n\t\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\n\t\t#ifdef DOUBLE_SIDED\n\t\t\tvLightBack += saturate( -dotNL ) * directLightColor_Diffuse;\n\t\t#endif\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if NUM_SPOT_LIGHTS > 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\n\t\tgetSpotDirectLightIrradiance( spotLights[ i ], geometry, directLight );\n\t\tdotNL = dot( geometry.normal, directLight.direction );\n\t\tdirectLightColor_Diffuse = PI * directLight.color;\n\t\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\n\t\t#ifdef DOUBLE_SIDED\n\t\t\tvLightBack += saturate( -dotNL ) * directLightColor_Diffuse;\n\t\t#endif\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if NUM_DIR_LIGHTS > 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\n\t\tgetDirectionalDirectLightIrradiance( directionalLights[ i ], geometry, directLight );\n\t\tdotNL = dot( geometry.normal, directLight.direction );\n\t\tdirectLightColor_Diffuse = PI * directLight.color;\n\t\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\n\t\t#ifdef DOUBLE_SIDED\n\t\t\tvLightBack += saturate( -dotNL ) * directLightColor_Diffuse;\n\t\t#endif\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if NUM_HEMI_LIGHTS > 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\n\t\tvIndirectFront += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry );\n\t\t#ifdef DOUBLE_SIDED\n\t\t\tvIndirectBack += getHemisphereLightIrradiance( hemisphereLights[ i ], backGeometry );\n\t\t#endif\n\t}\n\t#pragma unroll_loop_end\n#endif",lights_pars_begin:"uniform bool receiveShadow;\nuniform vec3 ambientLightColor;\nuniform vec3 lightProbe[ 9 ];\nvec3 shGetIrradianceAt( in vec3 normal, in vec3 shCoefficients[ 9 ] ) {\n\tfloat x = normal.x, y = normal.y, z = normal.z;\n\tvec3 result = shCoefficients[ 0 ] * 0.886227;\n\tresult += shCoefficients[ 1 ] * 2.0 * 0.511664 * y;\n\tresult += shCoefficients[ 2 ] * 2.0 * 0.511664 * z;\n\tresult += shCoefficients[ 3 ] * 2.0 * 0.511664 * x;\n\tresult += shCoefficients[ 4 ] * 2.0 * 0.429043 * x * y;\n\tresult += shCoefficients[ 5 ] * 2.0 * 0.429043 * y * z;\n\tresult += shCoefficients[ 6 ] * ( 0.743125 * z * z - 0.247708 );\n\tresult += shCoefficients[ 7 ] * 2.0 * 0.429043 * x * z;\n\tresult += shCoefficients[ 8 ] * 0.429043 * ( x * x - y * y );\n\treturn result;\n}\nvec3 getLightProbeIrradiance( const in vec3 lightProbe[ 9 ], const in GeometricContext geometry ) {\n\tvec3 worldNormal = inverseTransformDirection( geometry.normal, viewMatrix );\n\tvec3 irradiance = shGetIrradianceAt( worldNormal, lightProbe );\n\treturn irradiance;\n}\nvec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {\n\tvec3 irradiance = ambientLightColor;\n\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\tirradiance *= PI;\n\t#endif\n\treturn irradiance;\n}\n#if NUM_DIR_LIGHTS > 0\n\tstruct DirectionalLight {\n\t\tvec3 direction;\n\t\tvec3 color;\n\t};\n\tuniform DirectionalLight directionalLights[ NUM_DIR_LIGHTS ];\n\t#if defined( USE_SHADOWMAP ) && NUM_DIR_LIGHT_SHADOWS > 0\n\t\tstruct DirectionalLightShadow {\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t};\n\t\tuniform DirectionalLightShadow directionalLightShadows[ NUM_DIR_LIGHT_SHADOWS ];\n\t#endif\n\tvoid getDirectionalDirectLightIrradiance( const in DirectionalLight directionalLight, const in GeometricContext geometry, out IncidentLight directLight ) {\n\t\tdirectLight.color = directionalLight.color;\n\t\tdirectLight.direction = directionalLight.direction;\n\t\tdirectLight.visible = true;\n\t}\n#endif\n#if NUM_POINT_LIGHTS > 0\n\tstruct PointLight {\n\t\tvec3 position;\n\t\tvec3 color;\n\t\tfloat distance;\n\t\tfloat decay;\n\t};\n\tuniform PointLight pointLights[ NUM_POINT_LIGHTS ];\n\t#if defined( USE_SHADOWMAP ) && NUM_POINT_LIGHT_SHADOWS > 0\n\t\tstruct PointLightShadow {\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t\tfloat shadowCameraNear;\n\t\t\tfloat shadowCameraFar;\n\t\t};\n\t\tuniform PointLightShadow pointLightShadows[ NUM_POINT_LIGHT_SHADOWS ];\n\t#endif\n\tvoid getPointDirectLightIrradiance( const in PointLight pointLight, const in GeometricContext geometry, out IncidentLight directLight ) {\n\t\tvec3 lVector = pointLight.position - geometry.position;\n\t\tdirectLight.direction = normalize( lVector );\n\t\tfloat lightDistance = length( lVector );\n\t\tdirectLight.color = pointLight.color;\n\t\tdirectLight.color *= punctualLightIntensityToIrradianceFactor( lightDistance, pointLight.distance, pointLight.decay );\n\t\tdirectLight.visible = ( directLight.color != vec3( 0.0 ) );\n\t}\n#endif\n#if NUM_SPOT_LIGHTS > 0\n\tstruct SpotLight {\n\t\tvec3 position;\n\t\tvec3 direction;\n\t\tvec3 color;\n\t\tfloat distance;\n\t\tfloat decay;\n\t\tfloat coneCos;\n\t\tfloat penumbraCos;\n\t};\n\tuniform SpotLight spotLights[ NUM_SPOT_LIGHTS ];\n\t#if defined( USE_SHADOWMAP ) && NUM_SPOT_LIGHT_SHADOWS > 0\n\t\tstruct SpotLightShadow {\n\t\t\tfloat shadowBias;\n\t\t\tfloat shadowRadius;\n\t\t\tvec2 shadowMapSize;\n\t\t};\n\t\tuniform SpotLightShadow spotLightShadows[ NUM_SPOT_LIGHT_SHADOWS ];\n\t#endif\n\tvoid getSpotDirectLightIrradiance( const in SpotLight spotLight, const in GeometricContext geometry, out IncidentLight directLight ) {\n\t\tvec3 lVector = spotLight.position - geometry.position;\n\t\tdirectLight.direction = normalize( lVector );\n\t\tfloat lightDistance = length( lVector );\n\t\tfloat angleCos = dot( directLight.direction, spotLight.direction );\n\t\tif ( angleCos > spotLight.coneCos ) {\n\t\t\tfloat spotEffect = smoothstep( spotLight.coneCos, spotLight.penumbraCos, angleCos );\n\t\t\tdirectLight.color = spotLight.color;\n\t\t\tdirectLight.color *= spotEffect * punctualLightIntensityToIrradianceFactor( lightDistance, spotLight.distance, spotLight.decay );\n\t\t\tdirectLight.visible = true;\n\t\t} else {\n\t\t\tdirectLight.color = vec3( 0.0 );\n\t\t\tdirectLight.visible = false;\n\t\t}\n\t}\n#endif\n#if NUM_RECT_AREA_LIGHTS > 0\n\tstruct RectAreaLight {\n\t\tvec3 color;\n\t\tvec3 position;\n\t\tvec3 halfWidth;\n\t\tvec3 halfHeight;\n\t};\n\tuniform sampler2D ltc_1;\tuniform sampler2D ltc_2;\n\tuniform RectAreaLight rectAreaLights[ NUM_RECT_AREA_LIGHTS ];\n#endif\n#if NUM_HEMI_LIGHTS > 0\n\tstruct HemisphereLight {\n\t\tvec3 direction;\n\t\tvec3 skyColor;\n\t\tvec3 groundColor;\n\t};\n\tuniform HemisphereLight hemisphereLights[ NUM_HEMI_LIGHTS ];\n\tvec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in GeometricContext geometry ) {\n\t\tfloat dotNL = dot( geometry.normal, hemiLight.direction );\n\t\tfloat hemiDiffuseWeight = 0.5 * dotNL + 0.5;\n\t\tvec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight );\n\t\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\t\tirradiance *= PI;\n\t\t#endif\n\t\treturn irradiance;\n\t}\n#endif",lights_toon_fragment:"ToonMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;\nmaterial.specularColor = specular;\nmaterial.specularShininess = shininess;\nmaterial.specularStrength = specularStrength;",lights_toon_pars_fragment:"varying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\nstruct ToonMaterial {\n\tvec3\tdiffuseColor;\n\tvec3\tspecularColor;\n\tfloat\tspecularShininess;\n\tfloat\tspecularStrength;\n};\nvoid RE_Direct_Toon( const in IncidentLight directLight, const in GeometricContext geometry, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\n\tvec3 irradiance = getGradientIrradiance( geometry.normal, directLight.direction ) * directLight.color;\n\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\tirradiance *= PI;\n\t#endif\n\treflectedLight.directDiffuse += irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\n\treflectedLight.directSpecular += irradiance * BRDF_Specular_BlinnPhong( directLight, geometry, material.specularColor, material.specularShininess ) * material.specularStrength;\n}\nvoid RE_IndirectDiffuse_Toon( const in vec3 irradiance, const in GeometricContext geometry, const in ToonMaterial material, inout ReflectedLight reflectedLight ) {\n\treflectedLight.indirectDiffuse += irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\n}\n#define RE_Direct\t\t\t\tRE_Direct_Toon\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_Toon\n#define Material_LightProbeLOD( material )\t(0)",lights_phong_fragment:"BlinnPhongMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;\nmaterial.specularColor = specular;\nmaterial.specularShininess = shininess;\nmaterial.specularStrength = specularStrength;",lights_phong_pars_fragment:"varying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\nstruct BlinnPhongMaterial {\n\tvec3\tdiffuseColor;\n\tvec3\tspecularColor;\n\tfloat\tspecularShininess;\n\tfloat\tspecularStrength;\n};\nvoid RE_Direct_BlinnPhong( const in IncidentLight directLight, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\n\tfloat dotNL = saturate( dot( geometry.normal, directLight.direction ) );\n\tvec3 irradiance = dotNL * directLight.color;\n\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\tirradiance *= PI;\n\t#endif\n\treflectedLight.directDiffuse += irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\n\treflectedLight.directSpecular += irradiance * BRDF_Specular_BlinnPhong( directLight, geometry, material.specularColor, material.specularShininess ) * material.specularStrength;\n}\nvoid RE_IndirectDiffuse_BlinnPhong( const in vec3 irradiance, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\n\treflectedLight.indirectDiffuse += irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\n}\n#define RE_Direct\t\t\t\tRE_Direct_BlinnPhong\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_BlinnPhong\n#define Material_LightProbeLOD( material )\t(0)",lights_physical_fragment:"PhysicalMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb * ( 1.0 - metalnessFactor );\nvec3 dxy = max( abs( dFdx( geometryNormal ) ), abs( dFdy( geometryNormal ) ) );\nfloat geometryRoughness = max( max( dxy.x, dxy.y ), dxy.z );\nmaterial.specularRoughness = max( roughnessFactor, 0.0525 );material.specularRoughness += geometryRoughness;\nmaterial.specularRoughness = min( material.specularRoughness, 1.0 );\n#ifdef REFLECTIVITY\n\tmaterial.specularColor = mix( vec3( MAXIMUM_SPECULAR_COEFFICIENT * pow2( reflectivity ) ), diffuseColor.rgb, metalnessFactor );\n#else\n\tmaterial.specularColor = mix( vec3( DEFAULT_SPECULAR_COEFFICIENT ), diffuseColor.rgb, metalnessFactor );\n#endif\n#ifdef CLEARCOAT\n\tmaterial.clearcoat = clearcoat;\n\tmaterial.clearcoatRoughness = clearcoatRoughness;\n\t#ifdef USE_CLEARCOATMAP\n\t\tmaterial.clearcoat *= texture2D( clearcoatMap, vUv ).x;\n\t#endif\n\t#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\t\tmaterial.clearcoatRoughness *= texture2D( clearcoatRoughnessMap, vUv ).y;\n\t#endif\n\tmaterial.clearcoat = saturate( material.clearcoat );\tmaterial.clearcoatRoughness = max( material.clearcoatRoughness, 0.0525 );\n\tmaterial.clearcoatRoughness += geometryRoughness;\n\tmaterial.clearcoatRoughness = min( material.clearcoatRoughness, 1.0 );\n#endif\n#ifdef USE_SHEEN\n\tmaterial.sheenColor = sheen;\n#endif",lights_physical_pars_fragment:"struct PhysicalMaterial {\n\tvec3\tdiffuseColor;\n\tfloat\tspecularRoughness;\n\tvec3\tspecularColor;\n#ifdef CLEARCOAT\n\tfloat clearcoat;\n\tfloat clearcoatRoughness;\n#endif\n#ifdef USE_SHEEN\n\tvec3 sheenColor;\n#endif\n};\n#define MAXIMUM_SPECULAR_COEFFICIENT 0.16\n#define DEFAULT_SPECULAR_COEFFICIENT 0.04\nfloat clearcoatDHRApprox( const in float roughness, const in float dotNL ) {\n\treturn DEFAULT_SPECULAR_COEFFICIENT + ( 1.0 - DEFAULT_SPECULAR_COEFFICIENT ) * ( pow( 1.0 - dotNL, 5.0 ) * pow( 1.0 - roughness, 2.0 ) );\n}\n#if NUM_RECT_AREA_LIGHTS > 0\n\tvoid RE_Direct_RectArea_Physical( const in RectAreaLight rectAreaLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\t\tvec3 normal = geometry.normal;\n\t\tvec3 viewDir = geometry.viewDir;\n\t\tvec3 position = geometry.position;\n\t\tvec3 lightPos = rectAreaLight.position;\n\t\tvec3 halfWidth = rectAreaLight.halfWidth;\n\t\tvec3 halfHeight = rectAreaLight.halfHeight;\n\t\tvec3 lightColor = rectAreaLight.color;\n\t\tfloat roughness = material.specularRoughness;\n\t\tvec3 rectCoords[ 4 ];\n\t\trectCoords[ 0 ] = lightPos + halfWidth - halfHeight;\t\trectCoords[ 1 ] = lightPos - halfWidth - halfHeight;\n\t\trectCoords[ 2 ] = lightPos - halfWidth + halfHeight;\n\t\trectCoords[ 3 ] = lightPos + halfWidth + halfHeight;\n\t\tvec2 uv = LTC_Uv( normal, viewDir, roughness );\n\t\tvec4 t1 = texture2D( ltc_1, uv );\n\t\tvec4 t2 = texture2D( ltc_2, uv );\n\t\tmat3 mInv = mat3(\n\t\t\tvec3( t1.x, 0, t1.y ),\n\t\t\tvec3( 0, 1, 0 ),\n\t\t\tvec3( t1.z, 0, t1.w )\n\t\t);\n\t\tvec3 fresnel = ( material.specularColor * t2.x + ( vec3( 1.0 ) - material.specularColor ) * t2.y );\n\t\treflectedLight.directSpecular += lightColor * fresnel * LTC_Evaluate( normal, viewDir, position, mInv, rectCoords );\n\t\treflectedLight.directDiffuse += lightColor * material.diffuseColor * LTC_Evaluate( normal, viewDir, position, mat3( 1.0 ), rectCoords );\n\t}\n#endif\nvoid RE_Direct_Physical( const in IncidentLight directLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\tfloat dotNL = saturate( dot( geometry.normal, directLight.direction ) );\n\tvec3 irradiance = dotNL * directLight.color;\n\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\tirradiance *= PI;\n\t#endif\n\t#ifdef CLEARCOAT\n\t\tfloat ccDotNL = saturate( dot( geometry.clearcoatNormal, directLight.direction ) );\n\t\tvec3 ccIrradiance = ccDotNL * directLight.color;\n\t\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\t\tccIrradiance *= PI;\n\t\t#endif\n\t\tfloat clearcoatDHR = material.clearcoat * clearcoatDHRApprox( material.clearcoatRoughness, ccDotNL );\n\t\treflectedLight.directSpecular += ccIrradiance * material.clearcoat * BRDF_Specular_GGX( directLight, geometry.viewDir, geometry.clearcoatNormal, vec3( DEFAULT_SPECULAR_COEFFICIENT ), material.clearcoatRoughness );\n\t#else\n\t\tfloat clearcoatDHR = 0.0;\n\t#endif\n\t#ifdef USE_SHEEN\n\t\treflectedLight.directSpecular += ( 1.0 - clearcoatDHR ) * irradiance * BRDF_Specular_Sheen(\n\t\t\tmaterial.specularRoughness,\n\t\t\tdirectLight.direction,\n\t\t\tgeometry,\n\t\t\tmaterial.sheenColor\n\t\t);\n\t#else\n\t\treflectedLight.directSpecular += ( 1.0 - clearcoatDHR ) * irradiance * BRDF_Specular_GGX( directLight, geometry.viewDir, geometry.normal, material.specularColor, material.specularRoughness);\n\t#endif\n\treflectedLight.directDiffuse += ( 1.0 - clearcoatDHR ) * irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectDiffuse_Physical( const in vec3 irradiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\treflectedLight.indirectDiffuse += irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 irradiance, const in vec3 clearcoatRadiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight) {\n\t#ifdef CLEARCOAT\n\t\tfloat ccDotNV = saturate( dot( geometry.clearcoatNormal, geometry.viewDir ) );\n\t\treflectedLight.indirectSpecular += clearcoatRadiance * material.clearcoat * BRDF_Specular_GGX_Environment( geometry.viewDir, geometry.clearcoatNormal, vec3( DEFAULT_SPECULAR_COEFFICIENT ), material.clearcoatRoughness );\n\t\tfloat ccDotNL = ccDotNV;\n\t\tfloat clearcoatDHR = material.clearcoat * clearcoatDHRApprox( material.clearcoatRoughness, ccDotNL );\n\t#else\n\t\tfloat clearcoatDHR = 0.0;\n\t#endif\n\tfloat clearcoatInv = 1.0 - clearcoatDHR;\n\tvec3 singleScattering = vec3( 0.0 );\n\tvec3 multiScattering = vec3( 0.0 );\n\tvec3 cosineWeightedIrradiance = irradiance * RECIPROCAL_PI;\n\tBRDF_Specular_Multiscattering_Environment( geometry, material.specularColor, material.specularRoughness, singleScattering, multiScattering );\n\tvec3 diffuse = material.diffuseColor * ( 1.0 - ( singleScattering + multiScattering ) );\n\treflectedLight.indirectSpecular += clearcoatInv * radiance * singleScattering;\n\treflectedLight.indirectSpecular += multiScattering * cosineWeightedIrradiance;\n\treflectedLight.indirectDiffuse += diffuse * cosineWeightedIrradiance;\n}\n#define RE_Direct\t\t\t\tRE_Direct_Physical\n#define RE_Direct_RectArea\t\tRE_Direct_RectArea_Physical\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_Physical\n#define RE_IndirectSpecular\t\tRE_IndirectSpecular_Physical\nfloat computeSpecularOcclusion( const in float dotNV, const in float ambientOcclusion, const in float roughness ) {\n\treturn saturate( pow( dotNV + ambientOcclusion, exp2( - 16.0 * roughness - 1.0 ) ) - 1.0 + ambientOcclusion );\n}",lights_fragment_begin:"\nGeometricContext geometry;\ngeometry.position = - vViewPosition;\ngeometry.normal = normal;\ngeometry.viewDir = ( isOrthographic ) ? vec3( 0, 0, 1 ) : normalize( vViewPosition );\n#ifdef CLEARCOAT\n\tgeometry.clearcoatNormal = clearcoatNormal;\n#endif\nIncidentLight directLight;\n#if ( NUM_POINT_LIGHTS > 0 ) && defined( RE_Direct )\n\tPointLight pointLight;\n\t#if defined( USE_SHADOWMAP ) && NUM_POINT_LIGHT_SHADOWS > 0\n\tPointLightShadow pointLightShadow;\n\t#endif\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\n\t\tpointLight = pointLights[ i ];\n\t\tgetPointDirectLightIrradiance( pointLight, geometry, directLight );\n\t\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_POINT_LIGHT_SHADOWS )\n\t\tpointLightShadow = pointLightShadows[ i ];\n\t\tdirectLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getPointShadow( pointShadowMap[ i ], pointLightShadow.shadowMapSize, pointLightShadow.shadowBias, pointLightShadow.shadowRadius, vPointShadowCoord[ i ], pointLightShadow.shadowCameraNear, pointLightShadow.shadowCameraFar ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometry, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if ( NUM_SPOT_LIGHTS > 0 ) && defined( RE_Direct )\n\tSpotLight spotLight;\n\t#if defined( USE_SHADOWMAP ) && NUM_SPOT_LIGHT_SHADOWS > 0\n\tSpotLightShadow spotLightShadow;\n\t#endif\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\n\t\tspotLight = spotLights[ i ];\n\t\tgetSpotDirectLightIrradiance( spotLight, geometry, directLight );\n\t\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_SPOT_LIGHT_SHADOWS )\n\t\tspotLightShadow = spotLightShadows[ i ];\n\t\tdirectLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( spotShadowMap[ i ], spotLightShadow.shadowMapSize, spotLightShadow.shadowBias, spotLightShadow.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometry, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if ( NUM_DIR_LIGHTS > 0 ) && defined( RE_Direct )\n\tDirectionalLight directionalLight;\n\t#if defined( USE_SHADOWMAP ) && NUM_DIR_LIGHT_SHADOWS > 0\n\tDirectionalLightShadow directionalLightShadow;\n\t#endif\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\n\t\tdirectionalLight = directionalLights[ i ];\n\t\tgetDirectionalDirectLightIrradiance( directionalLight, geometry, directLight );\n\t\t#if defined( USE_SHADOWMAP ) && ( UNROLLED_LOOP_INDEX < NUM_DIR_LIGHT_SHADOWS )\n\t\tdirectionalLightShadow = directionalLightShadows[ i ];\n\t\tdirectLight.color *= all( bvec2( directLight.visible, receiveShadow ) ) ? getShadow( directionalShadowMap[ i ], directionalLightShadow.shadowMapSize, directionalLightShadow.shadowBias, directionalLightShadow.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometry, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if ( NUM_RECT_AREA_LIGHTS > 0 ) && defined( RE_Direct_RectArea )\n\tRectAreaLight rectAreaLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_RECT_AREA_LIGHTS; i ++ ) {\n\t\trectAreaLight = rectAreaLights[ i ];\n\t\tRE_Direct_RectArea( rectAreaLight, geometry, material, reflectedLight );\n\t}\n\t#pragma unroll_loop_end\n#endif\n#if defined( RE_IndirectDiffuse )\n\tvec3 iblIrradiance = vec3( 0.0 );\n\tvec3 irradiance = getAmbientLightIrradiance( ambientLightColor );\n\tirradiance += getLightProbeIrradiance( lightProbe, geometry );\n\t#if ( NUM_HEMI_LIGHTS > 0 )\n\t\t#pragma unroll_loop_start\n\t\tfor ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\n\t\t\tirradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry );\n\t\t}\n\t\t#pragma unroll_loop_end\n\t#endif\n#endif\n#if defined( RE_IndirectSpecular )\n\tvec3 radiance = vec3( 0.0 );\n\tvec3 clearcoatRadiance = vec3( 0.0 );\n#endif",lights_fragment_maps:"#if defined( RE_IndirectDiffuse )\n\t#ifdef USE_LIGHTMAP\n\t\tvec4 lightMapTexel= texture2D( lightMap, vUv2 );\n\t\tvec3 lightMapIrradiance = lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\n\t\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\t\tlightMapIrradiance *= PI;\n\t\t#endif\n\t\tirradiance += lightMapIrradiance;\n\t#endif\n\t#if defined( USE_ENVMAP ) && defined( STANDARD ) && defined( ENVMAP_TYPE_CUBE_UV )\n\t\tiblIrradiance += getLightProbeIndirectIrradiance( geometry, maxMipLevel );\n\t#endif\n#endif\n#if defined( USE_ENVMAP ) && defined( RE_IndirectSpecular )\n\tradiance += getLightProbeIndirectRadiance( geometry.viewDir, geometry.normal, material.specularRoughness, maxMipLevel );\n\t#ifdef CLEARCOAT\n\t\tclearcoatRadiance += getLightProbeIndirectRadiance( geometry.viewDir, geometry.clearcoatNormal, material.clearcoatRoughness, maxMipLevel );\n\t#endif\n#endif",lights_fragment_end:"#if defined( RE_IndirectDiffuse )\n\tRE_IndirectDiffuse( irradiance, geometry, material, reflectedLight );\n#endif\n#if defined( RE_IndirectSpecular )\n\tRE_IndirectSpecular( radiance, iblIrradiance, clearcoatRadiance, geometry, material, reflectedLight );\n#endif",logdepthbuf_fragment:"#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT )\n\tgl_FragDepthEXT = vIsPerspective == 0.0 ? gl_FragCoord.z : log2( vFragDepth ) * logDepthBufFC * 0.5;\n#endif",logdepthbuf_pars_fragment:"#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT )\n\tuniform float logDepthBufFC;\n\tvarying float vFragDepth;\n\tvarying float vIsPerspective;\n#endif",logdepthbuf_pars_vertex:"#ifdef USE_LOGDEPTHBUF\n\t#ifdef USE_LOGDEPTHBUF_EXT\n\t\tvarying float vFragDepth;\n\t\tvarying float vIsPerspective;\n\t#else\n\t\tuniform float logDepthBufFC;\n\t#endif\n#endif",logdepthbuf_vertex:"#ifdef USE_LOGDEPTHBUF\n\t#ifdef USE_LOGDEPTHBUF_EXT\n\t\tvFragDepth = 1.0 + gl_Position.w;\n\t\tvIsPerspective = float( isPerspectiveMatrix( projectionMatrix ) );\n\t#else\n\t\tif ( isPerspectiveMatrix( projectionMatrix ) ) {\n\t\t\tgl_Position.z = log2( max( EPSILON, gl_Position.w + 1.0 ) ) * logDepthBufFC - 1.0;\n\t\t\tgl_Position.z *= gl_Position.w;\n\t\t}\n\t#endif\n#endif",map_fragment:"#ifdef USE_MAP\n\tvec4 texelColor = texture2D( map, vUv );\n\ttexelColor = mapTexelToLinear( texelColor );\n\tdiffuseColor *= texelColor;\n#endif",map_pars_fragment:"#ifdef USE_MAP\n\tuniform sampler2D map;\n#endif",map_particle_fragment:"#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\n\tvec2 uv = ( uvTransform * vec3( gl_PointCoord.x, 1.0 - gl_PointCoord.y, 1 ) ).xy;\n#endif\n#ifdef USE_MAP\n\tvec4 mapTexel = texture2D( map, uv );\n\tdiffuseColor *= mapTexelToLinear( mapTexel );\n#endif\n#ifdef USE_ALPHAMAP\n\tdiffuseColor.a *= texture2D( alphaMap, uv ).g;\n#endif",map_particle_pars_fragment:"#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\n\tuniform mat3 uvTransform;\n#endif\n#ifdef USE_MAP\n\tuniform sampler2D map;\n#endif\n#ifdef USE_ALPHAMAP\n\tuniform sampler2D alphaMap;\n#endif",metalnessmap_fragment:"float metalnessFactor = metalness;\n#ifdef USE_METALNESSMAP\n\tvec4 texelMetalness = texture2D( metalnessMap, vUv );\n\tmetalnessFactor *= texelMetalness.b;\n#endif",metalnessmap_pars_fragment:"#ifdef USE_METALNESSMAP\n\tuniform sampler2D metalnessMap;\n#endif",morphnormal_vertex:"#ifdef USE_MORPHNORMALS\n\tobjectNormal *= morphTargetBaseInfluence;\n\tobjectNormal += morphNormal0 * morphTargetInfluences[ 0 ];\n\tobjectNormal += morphNormal1 * morphTargetInfluences[ 1 ];\n\tobjectNormal += morphNormal2 * morphTargetInfluences[ 2 ];\n\tobjectNormal += morphNormal3 * morphTargetInfluences[ 3 ];\n#endif",morphtarget_pars_vertex:"#ifdef USE_MORPHTARGETS\n\tuniform float morphTargetBaseInfluence;\n\t#ifndef USE_MORPHNORMALS\n\tuniform float morphTargetInfluences[ 8 ];\n\t#else\n\tuniform float morphTargetInfluences[ 4 ];\n\t#endif\n#endif",morphtarget_vertex:"#ifdef USE_MORPHTARGETS\n\ttransformed *= morphTargetBaseInfluence;\n\ttransformed += morphTarget0 * morphTargetInfluences[ 0 ];\n\ttransformed += morphTarget1 * morphTargetInfluences[ 1 ];\n\ttransformed += morphTarget2 * morphTargetInfluences[ 2 ];\n\ttransformed += morphTarget3 * morphTargetInfluences[ 3 ];\n\t#ifndef USE_MORPHNORMALS\n\ttransformed += morphTarget4 * morphTargetInfluences[ 4 ];\n\ttransformed += morphTarget5 * morphTargetInfluences[ 5 ];\n\ttransformed += morphTarget6 * morphTargetInfluences[ 6 ];\n\ttransformed += morphTarget7 * morphTargetInfluences[ 7 ];\n\t#endif\n#endif",normal_fragment_begin:"#ifdef FLAT_SHADED\n\tvec3 fdx = vec3( dFdx( vViewPosition.x ), dFdx( vViewPosition.y ), dFdx( vViewPosition.z ) );\n\tvec3 fdy = vec3( dFdy( vViewPosition.x ), dFdy( vViewPosition.y ), dFdy( vViewPosition.z ) );\n\tvec3 normal = normalize( cross( fdx, fdy ) );\n#else\n\tvec3 normal = normalize( vNormal );\n\t#ifdef DOUBLE_SIDED\n\t\tnormal = normal * ( float( gl_FrontFacing ) * 2.0 - 1.0 );\n\t#endif\n\t#ifdef USE_TANGENT\n\t\tvec3 tangent = normalize( vTangent );\n\t\tvec3 bitangent = normalize( vBitangent );\n\t\t#ifdef DOUBLE_SIDED\n\t\t\ttangent = tangent * ( float( gl_FrontFacing ) * 2.0 - 1.0 );\n\t\t\tbitangent = bitangent * ( float( gl_FrontFacing ) * 2.0 - 1.0 );\n\t\t#endif\n\t\t#if defined( TANGENTSPACE_NORMALMAP ) || defined( USE_CLEARCOAT_NORMALMAP )\n\t\t\tmat3 vTBN = mat3( tangent, bitangent, normal );\n\t\t#endif\n\t#endif\n#endif\nvec3 geometryNormal = normal;",normal_fragment_maps:"#ifdef OBJECTSPACE_NORMALMAP\n\tnormal = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0;\n\t#ifdef FLIP_SIDED\n\t\tnormal = - normal;\n\t#endif\n\t#ifdef DOUBLE_SIDED\n\t\tnormal = normal * ( float( gl_FrontFacing ) * 2.0 - 1.0 );\n\t#endif\n\tnormal = normalize( normalMatrix * normal );\n#elif defined( TANGENTSPACE_NORMALMAP )\n\tvec3 mapN = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0;\n\tmapN.xy *= normalScale;\n\t#ifdef USE_TANGENT\n\t\tnormal = normalize( vTBN * mapN );\n\t#else\n\t\tnormal = perturbNormal2Arb( -vViewPosition, normal, mapN );\n\t#endif\n#elif defined( USE_BUMPMAP )\n\tnormal = perturbNormalArb( -vViewPosition, normal, dHdxy_fwd() );\n#endif",normalmap_pars_fragment:"#ifdef USE_NORMALMAP\n\tuniform sampler2D normalMap;\n\tuniform vec2 normalScale;\n#endif\n#ifdef OBJECTSPACE_NORMALMAP\n\tuniform mat3 normalMatrix;\n#endif\n#if ! defined ( USE_TANGENT ) && ( defined ( TANGENTSPACE_NORMALMAP ) || defined ( USE_CLEARCOAT_NORMALMAP ) )\n\tvec3 perturbNormal2Arb( vec3 eye_pos, vec3 surf_norm, vec3 mapN ) {\n\t\tvec3 q0 = vec3( dFdx( eye_pos.x ), dFdx( eye_pos.y ), dFdx( eye_pos.z ) );\n\t\tvec3 q1 = vec3( dFdy( eye_pos.x ), dFdy( eye_pos.y ), dFdy( eye_pos.z ) );\n\t\tvec2 st0 = dFdx( vUv.st );\n\t\tvec2 st1 = dFdy( vUv.st );\n\t\tfloat scale = sign( st1.t * st0.s - st0.t * st1.s );\n\t\tvec3 S = normalize( ( q0 * st1.t - q1 * st0.t ) * scale );\n\t\tvec3 T = normalize( ( - q0 * st1.s + q1 * st0.s ) * scale );\n\t\tvec3 N = normalize( surf_norm );\n\t\tmat3 tsn = mat3( S, T, N );\n\t\tmapN.xy *= ( float( gl_FrontFacing ) * 2.0 - 1.0 );\n\t\treturn normalize( tsn * mapN );\n\t}\n#endif",clearcoat_normal_fragment_begin:"#ifdef CLEARCOAT\n\tvec3 clearcoatNormal = geometryNormal;\n#endif",clearcoat_normal_fragment_maps:"#ifdef USE_CLEARCOAT_NORMALMAP\n\tvec3 clearcoatMapN = texture2D( clearcoatNormalMap, vUv ).xyz * 2.0 - 1.0;\n\tclearcoatMapN.xy *= clearcoatNormalScale;\n\t#ifdef USE_TANGENT\n\t\tclearcoatNormal = normalize( vTBN * clearcoatMapN );\n\t#else\n\t\tclearcoatNormal = perturbNormal2Arb( - vViewPosition, clearcoatNormal, clearcoatMapN );\n\t#endif\n#endif",clearcoat_pars_fragment:"#ifdef USE_CLEARCOATMAP\n\tuniform sampler2D clearcoatMap;\n#endif\n#ifdef USE_CLEARCOAT_ROUGHNESSMAP\n\tuniform sampler2D clearcoatRoughnessMap;\n#endif\n#ifdef USE_CLEARCOAT_NORMALMAP\n\tuniform sampler2D clearcoatNormalMap;\n\tuniform vec2 clearcoatNormalScale;\n#endif",packing:"vec3 packNormalToRGB( const in vec3 normal ) {\n\treturn normalize( normal ) * 0.5 + 0.5;\n}\nvec3 unpackRGBToNormal( const in vec3 rgb ) {\n\treturn 2.0 * rgb.xyz - 1.0;\n}\nconst float PackUpscale = 256. / 255.;const float UnpackDownscale = 255. / 256.;\nconst vec3 PackFactors = vec3( 256. * 256. * 256., 256. * 256., 256. );\nconst vec4 UnpackFactors = UnpackDownscale / vec4( PackFactors, 1. );\nconst float ShiftRight8 = 1. / 256.;\nvec4 packDepthToRGBA( const in float v ) {\n\tvec4 r = vec4( fract( v * PackFactors ), v );\n\tr.yzw -= r.xyz * ShiftRight8;\treturn r * PackUpscale;\n}\nfloat unpackRGBAToDepth( const in vec4 v ) {\n\treturn dot( v, UnpackFactors );\n}\nvec4 pack2HalfToRGBA( vec2 v ) {\n\tvec4 r = vec4( v.x, fract( v.x * 255.0 ), v.y, fract( v.y * 255.0 ));\n\treturn vec4( r.x - r.y / 255.0, r.y, r.z - r.w / 255.0, r.w);\n}\nvec2 unpackRGBATo2Half( vec4 v ) {\n\treturn vec2( v.x + ( v.y / 255.0 ), v.z + ( v.w / 255.0 ) );\n}\nfloat viewZToOrthographicDepth( const in float viewZ, const in float near, const in float far ) {\n\treturn ( viewZ + near ) / ( near - far );\n}\nfloat orthographicDepthToViewZ( const in float linearClipZ, const in float near, const in float far ) {\n\treturn linearClipZ * ( near - far ) - near;\n}\nfloat viewZToPerspectiveDepth( const in float viewZ, const in float near, const in float far ) {\n\treturn (( near + viewZ ) * far ) / (( far - near ) * viewZ );\n}\nfloat perspectiveDepthToViewZ( const in float invClipZ, const in float near, const in float far ) {\n\treturn ( near * far ) / ( ( far - near ) * invClipZ - far );\n}",premultiplied_alpha_fragment:"#ifdef PREMULTIPLIED_ALPHA\n\tgl_FragColor.rgb *= gl_FragColor.a;\n#endif",project_vertex:"vec4 mvPosition = vec4( transformed, 1.0 );\n#ifdef USE_INSTANCING\n\tmvPosition = instanceMatrix * mvPosition;\n#endif\nmvPosition = modelViewMatrix * mvPosition;\ngl_Position = projectionMatrix * mvPosition;",dithering_fragment:"#ifdef DITHERING\n\tgl_FragColor.rgb = dithering( gl_FragColor.rgb );\n#endif",dithering_pars_fragment:"#ifdef DITHERING\n\tvec3 dithering( vec3 color ) {\n\t\tfloat grid_position = rand( gl_FragCoord.xy );\n\t\tvec3 dither_shift_RGB = vec3( 0.25 / 255.0, -0.25 / 255.0, 0.25 / 255.0 );\n\t\tdither_shift_RGB = mix( 2.0 * dither_shift_RGB, -2.0 * dither_shift_RGB, grid_position );\n\t\treturn color + dither_shift_RGB;\n\t}\n#endif",roughnessmap_fragment:"float roughnessFactor = roughness;\n#ifdef USE_ROUGHNESSMAP\n\tvec4 texelRoughness = texture2D( roughnessMap, vUv );\n\troughnessFactor *= texelRoughness.g;\n#endif",roughnessmap_pars_fragment:"#ifdef USE_ROUGHNESSMAP\n\tuniform sampler2D roughnessMap;\n#endif",shadowmap_pars_fragment:"#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHT_SHADOWS > 0\n\t\tuniform sampler2D directionalShadowMap[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_SPOT_LIGHT_SHADOWS > 0\n\t\tuniform sampler2D spotShadowMap[ NUM_SPOT_LIGHT_SHADOWS ];\n\t\tvarying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS > 0\n\t\tuniform sampler2D pointShadowMap[ NUM_POINT_LIGHT_SHADOWS ];\n\t\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\n\t#endif\n\tfloat texture2DCompare( sampler2D depths, vec2 uv, float compare ) {\n\t\treturn step( compare, unpackRGBAToDepth( texture2D( depths, uv ) ) );\n\t}\n\tvec2 texture2DDistribution( sampler2D shadow, vec2 uv ) {\n\t\treturn unpackRGBATo2Half( texture2D( shadow, uv ) );\n\t}\n\tfloat VSMShadow (sampler2D shadow, vec2 uv, float compare ){\n\t\tfloat occlusion = 1.0;\n\t\tvec2 distribution = texture2DDistribution( shadow, uv );\n\t\tfloat hard_shadow = step( compare , distribution.x );\n\t\tif (hard_shadow != 1.0 ) {\n\t\t\tfloat distance = compare - distribution.x ;\n\t\t\tfloat variance = max( 0.00000, distribution.y * distribution.y );\n\t\t\tfloat softness_probability = variance / (variance + distance * distance );\t\t\tsoftness_probability = clamp( ( softness_probability - 0.3 ) / ( 0.95 - 0.3 ), 0.0, 1.0 );\t\t\tocclusion = clamp( max( hard_shadow, softness_probability ), 0.0, 1.0 );\n\t\t}\n\t\treturn occlusion;\n\t}\n\tfloat getShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord ) {\n\t\tfloat shadow = 1.0;\n\t\tshadowCoord.xyz /= shadowCoord.w;\n\t\tshadowCoord.z += shadowBias;\n\t\tbvec4 inFrustumVec = bvec4 ( shadowCoord.x >= 0.0, shadowCoord.x <= 1.0, shadowCoord.y >= 0.0, shadowCoord.y <= 1.0 );\n\t\tbool inFrustum = all( inFrustumVec );\n\t\tbvec2 frustumTestVec = bvec2( inFrustum, shadowCoord.z <= 1.0 );\n\t\tbool frustumTest = all( frustumTestVec );\n\t\tif ( frustumTest ) {\n\t\t#if defined( SHADOWMAP_TYPE_PCF )\n\t\t\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\n\t\t\tfloat dx0 = - texelSize.x * shadowRadius;\n\t\t\tfloat dy0 = - texelSize.y * shadowRadius;\n\t\t\tfloat dx1 = + texelSize.x * shadowRadius;\n\t\t\tfloat dy1 = + texelSize.y * shadowRadius;\n\t\t\tfloat dx2 = dx0 / 2.0;\n\t\t\tfloat dy2 = dy0 / 2.0;\n\t\t\tfloat dx3 = dx1 / 2.0;\n\t\t\tfloat dy3 = dy1 / 2.0;\n\t\t\tshadow = (\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy2 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy2 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy2 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx2, dy3 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy3 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx3, dy3 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy1 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy1 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy1 ), shadowCoord.z )\n\t\t\t) * ( 1.0 / 17.0 );\n\t\t#elif defined( SHADOWMAP_TYPE_PCF_SOFT )\n\t\t\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\n\t\t\tfloat dx = texelSize.x;\n\t\t\tfloat dy = texelSize.y;\n\t\t\tvec2 uv = shadowCoord.xy;\n\t\t\tvec2 f = fract( uv * shadowMapSize + 0.5 );\n\t\t\tuv -= f * texelSize;\n\t\t\tshadow = (\n\t\t\t\ttexture2DCompare( shadowMap, uv, shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, uv + vec2( dx, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, uv + vec2( 0.0, dy ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, uv + texelSize, shadowCoord.z ) +\n\t\t\t\tmix( texture2DCompare( shadowMap, uv + vec2( -dx, 0.0 ), shadowCoord.z ), \n\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 0.0 ), shadowCoord.z ),\n\t\t\t\t\t f.x ) +\n\t\t\t\tmix( texture2DCompare( shadowMap, uv + vec2( -dx, dy ), shadowCoord.z ), \n\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, dy ), shadowCoord.z ),\n\t\t\t\t\t f.x ) +\n\t\t\t\tmix( texture2DCompare( shadowMap, uv + vec2( 0.0, -dy ), shadowCoord.z ), \n\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 0.0, 2.0 * dy ), shadowCoord.z ),\n\t\t\t\t\t f.y ) +\n\t\t\t\tmix( texture2DCompare( shadowMap, uv + vec2( dx, -dy ), shadowCoord.z ), \n\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( dx, 2.0 * dy ), shadowCoord.z ),\n\t\t\t\t\t f.y ) +\n\t\t\t\tmix( mix( texture2DCompare( shadowMap, uv + vec2( -dx, -dy ), shadowCoord.z ), \n\t\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, -dy ), shadowCoord.z ),\n\t\t\t\t\t\t f.x ),\n\t\t\t\t\t mix( texture2DCompare( shadowMap, uv + vec2( -dx, 2.0 * dy ), shadowCoord.z ), \n\t\t\t\t\t\t texture2DCompare( shadowMap, uv + vec2( 2.0 * dx, 2.0 * dy ), shadowCoord.z ),\n\t\t\t\t\t\t f.x ),\n\t\t\t\t\t f.y )\n\t\t\t) * ( 1.0 / 9.0 );\n\t\t#elif defined( SHADOWMAP_TYPE_VSM )\n\t\t\tshadow = VSMShadow( shadowMap, shadowCoord.xy, shadowCoord.z );\n\t\t#else\n\t\t\tshadow = texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z );\n\t\t#endif\n\t\t}\n\t\treturn shadow;\n\t}\n\tvec2 cubeToUV( vec3 v, float texelSizeY ) {\n\t\tvec3 absV = abs( v );\n\t\tfloat scaleToCube = 1.0 / max( absV.x, max( absV.y, absV.z ) );\n\t\tabsV *= scaleToCube;\n\t\tv *= scaleToCube * ( 1.0 - 2.0 * texelSizeY );\n\t\tvec2 planar = v.xy;\n\t\tfloat almostATexel = 1.5 * texelSizeY;\n\t\tfloat almostOne = 1.0 - almostATexel;\n\t\tif ( absV.z >= almostOne ) {\n\t\t\tif ( v.z > 0.0 )\n\t\t\t\tplanar.x = 4.0 - v.x;\n\t\t} else if ( absV.x >= almostOne ) {\n\t\t\tfloat signX = sign( v.x );\n\t\t\tplanar.x = v.z * signX + 2.0 * signX;\n\t\t} else if ( absV.y >= almostOne ) {\n\t\t\tfloat signY = sign( v.y );\n\t\t\tplanar.x = v.x + 2.0 * signY + 2.0;\n\t\t\tplanar.y = v.z * signY - 2.0;\n\t\t}\n\t\treturn vec2( 0.125, 0.25 ) * planar + vec2( 0.375, 0.75 );\n\t}\n\tfloat getPointShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord, float shadowCameraNear, float shadowCameraFar ) {\n\t\tvec2 texelSize = vec2( 1.0 ) / ( shadowMapSize * vec2( 4.0, 2.0 ) );\n\t\tvec3 lightToPosition = shadowCoord.xyz;\n\t\tfloat dp = ( length( lightToPosition ) - shadowCameraNear ) / ( shadowCameraFar - shadowCameraNear );\t\tdp += shadowBias;\n\t\tvec3 bd3D = normalize( lightToPosition );\n\t\t#if defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_PCF_SOFT ) || defined( SHADOWMAP_TYPE_VSM )\n\t\t\tvec2 offset = vec2( - 1, 1 ) * shadowRadius * texelSize.y;\n\t\t\treturn (\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyy, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyy, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyx, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyx, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxy, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxy, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxx, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxx, texelSize.y ), dp )\n\t\t\t) * ( 1.0 / 9.0 );\n\t\t#else\n\t\t\treturn texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp );\n\t\t#endif\n\t}\n#endif",shadowmap_pars_vertex:"#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHT_SHADOWS > 0\n\t\tuniform mat4 directionalShadowMatrix[ NUM_DIR_LIGHT_SHADOWS ];\n\t\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_SPOT_LIGHT_SHADOWS > 0\n\t\tuniform mat4 spotShadowMatrix[ NUM_SPOT_LIGHT_SHADOWS ];\n\t\tvarying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHT_SHADOWS ];\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS > 0\n\t\tuniform mat4 pointShadowMatrix[ NUM_POINT_LIGHT_SHADOWS ];\n\t\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHT_SHADOWS ];\n\t#endif\n#endif",shadowmap_vertex:"#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHT_SHADOWS > 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\n\t\tvDirectionalShadowCoord[ i ] = directionalShadowMatrix[ i ] * worldPosition;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#if NUM_SPOT_LIGHT_SHADOWS > 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) {\n\t\tvSpotShadowCoord[ i ] = spotShadowMatrix[ i ] * worldPosition;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS > 0\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\n\t\tvPointShadowCoord[ i ] = pointShadowMatrix[ i ] * worldPosition;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n#endif",shadowmask_pars_fragment:"float getShadowMask() {\n\tfloat shadow = 1.0;\n\t#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHT_SHADOWS > 0\n\tDirectionalLightShadow directionalLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_DIR_LIGHT_SHADOWS; i ++ ) {\n\t\tdirectionalLight = directionalLightShadows[ i ];\n\t\tshadow *= receiveShadow ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#if NUM_SPOT_LIGHT_SHADOWS > 0\n\tSpotLightShadow spotLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_SPOT_LIGHT_SHADOWS; i ++ ) {\n\t\tspotLight = spotLightShadows[ i ];\n\t\tshadow *= receiveShadow ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowBias, spotLight.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#if NUM_POINT_LIGHT_SHADOWS > 0\n\tPointLightShadow pointLight;\n\t#pragma unroll_loop_start\n\tfor ( int i = 0; i < NUM_POINT_LIGHT_SHADOWS; i ++ ) {\n\t\tpointLight = pointLightShadows[ i ];\n\t\tshadow *= receiveShadow ? getPointShadow( pointShadowMap[ i ], pointLight.shadowMapSize, pointLight.shadowBias, pointLight.shadowRadius, vPointShadowCoord[ i ], pointLight.shadowCameraNear, pointLight.shadowCameraFar ) : 1.0;\n\t}\n\t#pragma unroll_loop_end\n\t#endif\n\t#endif\n\treturn shadow;\n}",skinbase_vertex:"#ifdef USE_SKINNING\n\tmat4 boneMatX = getBoneMatrix( skinIndex.x );\n\tmat4 boneMatY = getBoneMatrix( skinIndex.y );\n\tmat4 boneMatZ = getBoneMatrix( skinIndex.z );\n\tmat4 boneMatW = getBoneMatrix( skinIndex.w );\n#endif",skinning_pars_vertex:"#ifdef USE_SKINNING\n\tuniform mat4 bindMatrix;\n\tuniform mat4 bindMatrixInverse;\n\t#ifdef BONE_TEXTURE\n\t\tuniform highp sampler2D boneTexture;\n\t\tuniform int boneTextureSize;\n\t\tmat4 getBoneMatrix( const in float i ) {\n\t\t\tfloat j = i * 4.0;\n\t\t\tfloat x = mod( j, float( boneTextureSize ) );\n\t\t\tfloat y = floor( j / float( boneTextureSize ) );\n\t\t\tfloat dx = 1.0 / float( boneTextureSize );\n\t\t\tfloat dy = 1.0 / float( boneTextureSize );\n\t\t\ty = dy * ( y + 0.5 );\n\t\t\tvec4 v1 = texture2D( boneTexture, vec2( dx * ( x + 0.5 ), y ) );\n\t\t\tvec4 v2 = texture2D( boneTexture, vec2( dx * ( x + 1.5 ), y ) );\n\t\t\tvec4 v3 = texture2D( boneTexture, vec2( dx * ( x + 2.5 ), y ) );\n\t\t\tvec4 v4 = texture2D( boneTexture, vec2( dx * ( x + 3.5 ), y ) );\n\t\t\tmat4 bone = mat4( v1, v2, v3, v4 );\n\t\t\treturn bone;\n\t\t}\n\t#else\n\t\tuniform mat4 boneMatrices[ MAX_BONES ];\n\t\tmat4 getBoneMatrix( const in float i ) {\n\t\t\tmat4 bone = boneMatrices[ int(i) ];\n\t\t\treturn bone;\n\t\t}\n\t#endif\n#endif",skinning_vertex:"#ifdef USE_SKINNING\n\tvec4 skinVertex = bindMatrix * vec4( transformed, 1.0 );\n\tvec4 skinned = vec4( 0.0 );\n\tskinned += boneMatX * skinVertex * skinWeight.x;\n\tskinned += boneMatY * skinVertex * skinWeight.y;\n\tskinned += boneMatZ * skinVertex * skinWeight.z;\n\tskinned += boneMatW * skinVertex * skinWeight.w;\n\ttransformed = ( bindMatrixInverse * skinned ).xyz;\n#endif",skinnormal_vertex:"#ifdef USE_SKINNING\n\tmat4 skinMatrix = mat4( 0.0 );\n\tskinMatrix += skinWeight.x * boneMatX;\n\tskinMatrix += skinWeight.y * boneMatY;\n\tskinMatrix += skinWeight.z * boneMatZ;\n\tskinMatrix += skinWeight.w * boneMatW;\n\tskinMatrix = bindMatrixInverse * skinMatrix * bindMatrix;\n\tobjectNormal = vec4( skinMatrix * vec4( objectNormal, 0.0 ) ).xyz;\n\t#ifdef USE_TANGENT\n\t\tobjectTangent = vec4( skinMatrix * vec4( objectTangent, 0.0 ) ).xyz;\n\t#endif\n#endif",specularmap_fragment:"float specularStrength;\n#ifdef USE_SPECULARMAP\n\tvec4 texelSpecular = texture2D( specularMap, vUv );\n\tspecularStrength = texelSpecular.r;\n#else\n\tspecularStrength = 1.0;\n#endif",specularmap_pars_fragment:"#ifdef USE_SPECULARMAP\n\tuniform sampler2D specularMap;\n#endif",tonemapping_fragment:"#if defined( TONE_MAPPING )\n\tgl_FragColor.rgb = toneMapping( gl_FragColor.rgb );\n#endif",tonemapping_pars_fragment:"#ifndef saturate\n#define saturate(a) clamp( a, 0.0, 1.0 )\n#endif\nuniform float toneMappingExposure;\nuniform float toneMappingWhitePoint;\nvec3 LinearToneMapping( vec3 color ) {\n\treturn toneMappingExposure * color;\n}\nvec3 ReinhardToneMapping( vec3 color ) {\n\tcolor *= toneMappingExposure;\n\treturn saturate( color / ( vec3( 1.0 ) + color ) );\n}\n#define Uncharted2Helper( x ) max( ( ( x * ( 0.15 * x + 0.10 * 0.50 ) + 0.20 * 0.02 ) / ( x * ( 0.15 * x + 0.50 ) + 0.20 * 0.30 ) ) - 0.02 / 0.30, vec3( 0.0 ) )\nvec3 Uncharted2ToneMapping( vec3 color ) {\n\tcolor *= toneMappingExposure;\n\treturn saturate( Uncharted2Helper( color ) / Uncharted2Helper( vec3( toneMappingWhitePoint ) ) );\n}\nvec3 OptimizedCineonToneMapping( vec3 color ) {\n\tcolor *= toneMappingExposure;\n\tcolor = max( vec3( 0.0 ), color - 0.004 );\n\treturn pow( ( color * ( 6.2 * color + 0.5 ) ) / ( color * ( 6.2 * color + 1.7 ) + 0.06 ), vec3( 2.2 ) );\n}\nvec3 ACESFilmicToneMapping( vec3 color ) {\n\tcolor *= toneMappingExposure;\n\treturn saturate( ( color * ( 2.51 * color + 0.03 ) ) / ( color * ( 2.43 * color + 0.59 ) + 0.14 ) );\n}",uv_pars_fragment:"#if ( defined( USE_UV ) && ! defined( UVS_VERTEX_ONLY ) )\n\tvarying vec2 vUv;\n#endif",uv_pars_vertex:"#ifdef USE_UV\n\t#ifdef UVS_VERTEX_ONLY\n\t\tvec2 vUv;\n\t#else\n\t\tvarying vec2 vUv;\n\t#endif\n\tuniform mat3 uvTransform;\n#endif",uv_vertex:"#ifdef USE_UV\n\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\n#endif",uv2_pars_fragment:"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\n\tvarying vec2 vUv2;\n#endif",uv2_pars_vertex:"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\n\tattribute vec2 uv2;\n\tvarying vec2 vUv2;\n\tuniform mat3 uv2Transform;\n#endif",uv2_vertex:"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\n\tvUv2 = ( uv2Transform * vec3( uv2, 1 ) ).xy;\n#endif",worldpos_vertex:"#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP )\n\tvec4 worldPosition = vec4( transformed, 1.0 );\n\t#ifdef USE_INSTANCING\n\t\tworldPosition = instanceMatrix * worldPosition;\n\t#endif\n\tworldPosition = modelMatrix * worldPosition;\n#endif",background_frag:"uniform sampler2D t2D;\nvarying vec2 vUv;\nvoid main() {\n\tvec4 texColor = texture2D( t2D, vUv );\n\tgl_FragColor = mapTexelToLinear( texColor );\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n}",background_vert:"varying vec2 vUv;\nuniform mat3 uvTransform;\nvoid main() {\n\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\n\tgl_Position = vec4( position.xy, 1.0, 1.0 );\n}",cube_frag:"#include <envmap_common_pars_fragment>\nuniform float opacity;\nvarying vec3 vWorldDirection;\n#include <cube_uv_reflection_fragment>\nvoid main() {\n\tvec3 vReflect = vWorldDirection;\n\t#include <envmap_fragment>\n\tgl_FragColor = envColor;\n\tgl_FragColor.a *= opacity;\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n}",cube_vert:"varying vec3 vWorldDirection;\n#include <common>\nvoid main() {\n\tvWorldDirection = transformDirection( position, modelMatrix );\n\t#include <begin_vertex>\n\t#include <project_vertex>\n\tgl_Position.z = gl_Position.w;\n}",depth_frag:"#if DEPTH_PACKING == 3200\n\tuniform float opacity;\n#endif\n#include <common>\n#include <packing>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvarying vec2 vHighPrecisionZW;\nvoid main() {\n\t#include <clipping_planes_fragment>\n\tvec4 diffuseColor = vec4( 1.0 );\n\t#if DEPTH_PACKING == 3200\n\t\tdiffuseColor.a = opacity;\n\t#endif\n\t#include <map_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <logdepthbuf_fragment>\n\tfloat fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5;\n\t#if DEPTH_PACKING == 3200\n\t\tgl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity );\n\t#elif DEPTH_PACKING == 3201\n\t\tgl_FragColor = packDepthToRGBA( fragCoordZ );\n\t#endif\n}",depth_vert:"#include <common>\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvarying vec2 vHighPrecisionZW;\nvoid main() {\n\t#include <uv_vertex>\n\t#include <skinbase_vertex>\n\t#ifdef USE_DISPLACEMENTMAP\n\t\t#include <beginnormal_vertex>\n\t\t#include <morphnormal_vertex>\n\t\t#include <skinnormal_vertex>\n\t#endif\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\tvHighPrecisionZW = gl_Position.zw;\n}",distanceRGBA_frag:"#define DISTANCE\nuniform vec3 referencePosition;\nuniform float nearDistance;\nuniform float farDistance;\nvarying vec3 vWorldPosition;\n#include <common>\n#include <packing>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main () {\n\t#include <clipping_planes_fragment>\n\tvec4 diffuseColor = vec4( 1.0 );\n\t#include <map_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\tfloat dist = length( vWorldPosition - referencePosition );\n\tdist = ( dist - nearDistance ) / ( farDistance - nearDistance );\n\tdist = saturate( dist );\n\tgl_FragColor = packDepthToRGBA( dist );\n}",distanceRGBA_vert:"#define DISTANCE\nvarying vec3 vWorldPosition;\n#include <common>\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\t#include <skinbase_vertex>\n\t#ifdef USE_DISPLACEMENTMAP\n\t\t#include <beginnormal_vertex>\n\t\t#include <morphnormal_vertex>\n\t\t#include <skinnormal_vertex>\n\t#endif\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <worldpos_vertex>\n\t#include <clipping_planes_vertex>\n\tvWorldPosition = worldPosition.xyz;\n}",equirect_frag:"uniform sampler2D tEquirect;\nvarying vec3 vWorldDirection;\n#include <common>\nvoid main() {\n\tvec3 direction = normalize( vWorldDirection );\n\tvec2 sampleUV;\n\tsampleUV.y = asin( clamp( direction.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;\n\tsampleUV.x = atan( direction.z, direction.x ) * RECIPROCAL_PI2 + 0.5;\n\tvec4 texColor = texture2D( tEquirect, sampleUV );\n\tgl_FragColor = mapTexelToLinear( texColor );\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n}",equirect_vert:"varying vec3 vWorldDirection;\n#include <common>\nvoid main() {\n\tvWorldDirection = transformDirection( position, modelMatrix );\n\t#include <begin_vertex>\n\t#include <project_vertex>\n}",linedashed_frag:"uniform vec3 diffuse;\nuniform float opacity;\nuniform float dashSize;\nuniform float totalSize;\nvarying float vLineDistance;\n#include <common>\n#include <color_pars_fragment>\n#include <fog_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\t#include <clipping_planes_fragment>\n\tif ( mod( vLineDistance, totalSize ) > dashSize ) {\n\t\tdiscard;\n\t}\n\tvec3 outgoingLight = vec3( 0.0 );\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include <logdepthbuf_fragment>\n\t#include <color_fragment>\n\toutgoingLight = diffuseColor.rgb;\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n}",linedashed_vert:"uniform float scale;\nattribute float lineDistance;\nvarying float vLineDistance;\n#include <common>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\tvLineDistance = scale * lineDistance;\n\t#include <color_vertex>\n\t#include <begin_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\t#include <fog_vertex>\n}",meshbasic_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\n#include <common>\n#include <color_pars_fragment>\n#include <uv_pars_fragment>\n#include <uv2_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <aomap_pars_fragment>\n#include <lightmap_pars_fragment>\n#include <envmap_common_pars_fragment>\n#include <envmap_pars_fragment>\n#include <cube_uv_reflection_fragment>\n#include <fog_pars_fragment>\n#include <specularmap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\t#include <clipping_planes_fragment>\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <specularmap_fragment>\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\t#ifdef USE_LIGHTMAP\n\t\n\t\tvec4 lightMapTexel= texture2D( lightMap, vUv2 );\n\t\treflectedLight.indirectDiffuse += lightMapTexelToLinear( lightMapTexel ).rgb * lightMapIntensity;\n\t#else\n\t\treflectedLight.indirectDiffuse += vec3( 1.0 );\n\t#endif\n\t#include <aomap_fragment>\n\treflectedLight.indirectDiffuse *= diffuseColor.rgb;\n\tvec3 outgoingLight = reflectedLight.indirectDiffuse;\n\t#include <envmap_fragment>\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n}",meshbasic_vert:"#include <common>\n#include <uv_pars_vertex>\n#include <uv2_pars_vertex>\n#include <envmap_pars_vertex>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\t#include <uv2_vertex>\n\t#include <color_vertex>\n\t#include <skinbase_vertex>\n\t#ifdef USE_ENVMAP\n\t#include <beginnormal_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n\t#endif\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <worldpos_vertex>\n\t#include <clipping_planes_vertex>\n\t#include <envmap_vertex>\n\t#include <fog_vertex>\n}",meshlambert_frag:"uniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float opacity;\nvarying vec3 vLightFront;\nvarying vec3 vIndirectFront;\n#ifdef DOUBLE_SIDED\n\tvarying vec3 vLightBack;\n\tvarying vec3 vIndirectBack;\n#endif\n#include <common>\n#include <packing>\n#include <dithering_pars_fragment>\n#include <color_pars_fragment>\n#include <uv_pars_fragment>\n#include <uv2_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <aomap_pars_fragment>\n#include <lightmap_pars_fragment>\n#include <emissivemap_pars_fragment>\n#include <envmap_common_pars_fragment>\n#include <envmap_pars_fragment>\n#include <cube_uv_reflection_fragment>\n#include <bsdfs>\n#include <lights_pars_begin>\n#include <fog_pars_fragment>\n#include <shadowmap_pars_fragment>\n#include <shadowmask_pars_fragment>\n#include <specularmap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\t#include <clipping_planes_fragment>\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <specularmap_fragment>\n\t#include <emissivemap_fragment>\n\treflectedLight.indirectDiffuse = getAmbientLightIrradiance( ambientLightColor );\n\t#ifdef DOUBLE_SIDED\n\t\treflectedLight.indirectDiffuse += ( gl_FrontFacing ) ? vIndirectFront : vIndirectBack;\n\t#else\n\t\treflectedLight.indirectDiffuse += vIndirectFront;\n\t#endif\n\t#include <lightmap_fragment>\n\treflectedLight.indirectDiffuse *= BRDF_Diffuse_Lambert( diffuseColor.rgb );\n\t#ifdef DOUBLE_SIDED\n\t\treflectedLight.directDiffuse = ( gl_FrontFacing ) ? vLightFront : vLightBack;\n\t#else\n\t\treflectedLight.directDiffuse = vLightFront;\n\t#endif\n\treflectedLight.directDiffuse *= BRDF_Diffuse_Lambert( diffuseColor.rgb ) * getShadowMask();\n\t#include <aomap_fragment>\n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\n\t#include <envmap_fragment>\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n\t#include <dithering_fragment>\n}",meshlambert_vert:"#define LAMBERT\nvarying vec3 vLightFront;\nvarying vec3 vIndirectFront;\n#ifdef DOUBLE_SIDED\n\tvarying vec3 vLightBack;\n\tvarying vec3 vIndirectBack;\n#endif\n#include <common>\n#include <uv_pars_vertex>\n#include <uv2_pars_vertex>\n#include <envmap_pars_vertex>\n#include <bsdfs>\n#include <lights_pars_begin>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <shadowmap_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\t#include <uv2_vertex>\n\t#include <color_vertex>\n\t#include <beginnormal_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinbase_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\t#include <worldpos_vertex>\n\t#include <envmap_vertex>\n\t#include <lights_lambert_vertex>\n\t#include <shadowmap_vertex>\n\t#include <fog_vertex>\n}",meshmatcap_frag:"#define MATCAP\nuniform vec3 diffuse;\nuniform float opacity;\nuniform sampler2D matcap;\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\n#include <common>\n#include <color_pars_fragment>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <fog_pars_fragment>\n#include <bumpmap_pars_fragment>\n#include <normalmap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\t#include <clipping_planes_fragment>\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <normal_fragment_begin>\n\t#include <normal_fragment_maps>\n\tvec3 viewDir = normalize( vViewPosition );\n\tvec3 x = normalize( vec3( viewDir.z, 0.0, - viewDir.x ) );\n\tvec3 y = cross( viewDir, x );\n\tvec2 uv = vec2( dot( x, normal ), dot( y, normal ) ) * 0.495 + 0.5;\n\t#ifdef USE_MATCAP\n\t\tvec4 matcapColor = texture2D( matcap, uv );\n\t\tmatcapColor = matcapTexelToLinear( matcapColor );\n\t#else\n\t\tvec4 matcapColor = vec4( 1.0 );\n\t#endif\n\tvec3 outgoingLight = diffuseColor.rgb * matcapColor.rgb;\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n}",meshmatcap_vert:"#define MATCAP\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\n#include <common>\n#include <uv_pars_vertex>\n#include <color_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <fog_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\t#include <color_vertex>\n\t#include <beginnormal_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinbase_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n\t#ifndef FLAT_SHADED\n\t\tvNormal = normalize( transformedNormal );\n\t#endif\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\t#include <fog_vertex>\n\tvViewPosition = - mvPosition.xyz;\n}",meshtoon_frag:"#define TOON\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform vec3 specular;\nuniform float shininess;\nuniform float opacity;\n#include <common>\n#include <packing>\n#include <dithering_pars_fragment>\n#include <color_pars_fragment>\n#include <uv_pars_fragment>\n#include <uv2_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <aomap_pars_fragment>\n#include <lightmap_pars_fragment>\n#include <emissivemap_pars_fragment>\n#include <gradientmap_pars_fragment>\n#include <fog_pars_fragment>\n#include <bsdfs>\n#include <lights_pars_begin>\n#include <lights_toon_pars_fragment>\n#include <shadowmap_pars_fragment>\n#include <bumpmap_pars_fragment>\n#include <normalmap_pars_fragment>\n#include <specularmap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\t#include <clipping_planes_fragment>\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <specularmap_fragment>\n\t#include <normal_fragment_begin>\n\t#include <normal_fragment_maps>\n\t#include <emissivemap_fragment>\n\t#include <lights_toon_fragment>\n\t#include <lights_fragment_begin>\n\t#include <lights_fragment_maps>\n\t#include <lights_fragment_end>\n\t#include <aomap_fragment>\n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n\t#include <dithering_fragment>\n}",meshtoon_vert:"#define TOON\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\n#include <common>\n#include <uv_pars_vertex>\n#include <uv2_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <shadowmap_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\t#include <uv2_vertex>\n\t#include <color_vertex>\n\t#include <beginnormal_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinbase_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n#ifndef FLAT_SHADED\n\tvNormal = normalize( transformedNormal );\n#endif\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\tvViewPosition = - mvPosition.xyz;\n\t#include <worldpos_vertex>\n\t#include <shadowmap_vertex>\n\t#include <fog_vertex>\n}",meshphong_frag:"#define PHONG\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform vec3 specular;\nuniform float shininess;\nuniform float opacity;\n#include <common>\n#include <packing>\n#include <dithering_pars_fragment>\n#include <color_pars_fragment>\n#include <uv_pars_fragment>\n#include <uv2_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <aomap_pars_fragment>\n#include <lightmap_pars_fragment>\n#include <emissivemap_pars_fragment>\n#include <envmap_common_pars_fragment>\n#include <envmap_pars_fragment>\n#include <cube_uv_reflection_fragment>\n#include <fog_pars_fragment>\n#include <bsdfs>\n#include <lights_pars_begin>\n#include <lights_phong_pars_fragment>\n#include <shadowmap_pars_fragment>\n#include <bumpmap_pars_fragment>\n#include <normalmap_pars_fragment>\n#include <specularmap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\t#include <clipping_planes_fragment>\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <specularmap_fragment>\n\t#include <normal_fragment_begin>\n\t#include <normal_fragment_maps>\n\t#include <emissivemap_fragment>\n\t#include <lights_phong_fragment>\n\t#include <lights_fragment_begin>\n\t#include <lights_fragment_maps>\n\t#include <lights_fragment_end>\n\t#include <aomap_fragment>\n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\n\t#include <envmap_fragment>\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n\t#include <dithering_fragment>\n}",meshphong_vert:"#define PHONG\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\n#include <common>\n#include <uv_pars_vertex>\n#include <uv2_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <envmap_pars_vertex>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <shadowmap_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\t#include <uv2_vertex>\n\t#include <color_vertex>\n\t#include <beginnormal_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinbase_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n#ifndef FLAT_SHADED\n\tvNormal = normalize( transformedNormal );\n#endif\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\tvViewPosition = - mvPosition.xyz;\n\t#include <worldpos_vertex>\n\t#include <envmap_vertex>\n\t#include <shadowmap_vertex>\n\t#include <fog_vertex>\n}",meshphysical_frag:"#define STANDARD\n#ifdef PHYSICAL\n\t#define REFLECTIVITY\n\t#define CLEARCOAT\n\t#define TRANSPARENCY\n#endif\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float roughness;\nuniform float metalness;\nuniform float opacity;\n#ifdef TRANSPARENCY\n\tuniform float transparency;\n#endif\n#ifdef REFLECTIVITY\n\tuniform float reflectivity;\n#endif\n#ifdef CLEARCOAT\n\tuniform float clearcoat;\n\tuniform float clearcoatRoughness;\n#endif\n#ifdef USE_SHEEN\n\tuniform vec3 sheen;\n#endif\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n\t#ifdef USE_TANGENT\n\t\tvarying vec3 vTangent;\n\t\tvarying vec3 vBitangent;\n\t#endif\n#endif\n#include <common>\n#include <packing>\n#include <dithering_pars_fragment>\n#include <color_pars_fragment>\n#include <uv_pars_fragment>\n#include <uv2_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <aomap_pars_fragment>\n#include <lightmap_pars_fragment>\n#include <emissivemap_pars_fragment>\n#include <bsdfs>\n#include <cube_uv_reflection_fragment>\n#include <envmap_common_pars_fragment>\n#include <envmap_physical_pars_fragment>\n#include <fog_pars_fragment>\n#include <lights_pars_begin>\n#include <lights_physical_pars_fragment>\n#include <shadowmap_pars_fragment>\n#include <bumpmap_pars_fragment>\n#include <normalmap_pars_fragment>\n#include <clearcoat_pars_fragment>\n#include <roughnessmap_pars_fragment>\n#include <metalnessmap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\t#include <clipping_planes_fragment>\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <color_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\t#include <roughnessmap_fragment>\n\t#include <metalnessmap_fragment>\n\t#include <normal_fragment_begin>\n\t#include <normal_fragment_maps>\n\t#include <clearcoat_normal_fragment_begin>\n\t#include <clearcoat_normal_fragment_maps>\n\t#include <emissivemap_fragment>\n\t#include <lights_physical_fragment>\n\t#include <lights_fragment_begin>\n\t#include <lights_fragment_maps>\n\t#include <lights_fragment_end>\n\t#include <aomap_fragment>\n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\n\t#ifdef TRANSPARENCY\n\t\tdiffuseColor.a *= saturate( 1. - transparency + linearToRelativeLuminance( reflectedLight.directSpecular + reflectedLight.indirectSpecular ) );\n\t#endif\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n\t#include <dithering_fragment>\n}",meshphysical_vert:"#define STANDARD\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n\t#ifdef USE_TANGENT\n\t\tvarying vec3 vTangent;\n\t\tvarying vec3 vBitangent;\n\t#endif\n#endif\n#include <common>\n#include <uv_pars_vertex>\n#include <uv2_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <shadowmap_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\t#include <uv2_vertex>\n\t#include <color_vertex>\n\t#include <beginnormal_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinbase_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n#ifndef FLAT_SHADED\n\tvNormal = normalize( transformedNormal );\n\t#ifdef USE_TANGENT\n\t\tvTangent = normalize( transformedTangent );\n\t\tvBitangent = normalize( cross( vNormal, vTangent ) * tangent.w );\n\t#endif\n#endif\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\tvViewPosition = - mvPosition.xyz;\n\t#include <worldpos_vertex>\n\t#include <shadowmap_vertex>\n\t#include <fog_vertex>\n}",normal_frag:"#define NORMAL\nuniform float opacity;\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP )\n\tvarying vec3 vViewPosition;\n#endif\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n\t#ifdef USE_TANGENT\n\t\tvarying vec3 vTangent;\n\t\tvarying vec3 vBitangent;\n\t#endif\n#endif\n#include <packing>\n#include <uv_pars_fragment>\n#include <bumpmap_pars_fragment>\n#include <normalmap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\t#include <clipping_planes_fragment>\n\t#include <logdepthbuf_fragment>\n\t#include <normal_fragment_begin>\n\t#include <normal_fragment_maps>\n\tgl_FragColor = vec4( packNormalToRGB( normal ), opacity );\n}",normal_vert:"#define NORMAL\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP )\n\tvarying vec3 vViewPosition;\n#endif\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n\t#ifdef USE_TANGENT\n\t\tvarying vec3 vTangent;\n\t\tvarying vec3 vBitangent;\n\t#endif\n#endif\n#include <common>\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\t#include <beginnormal_vertex>\n\t#include <morphnormal_vertex>\n\t#include <skinbase_vertex>\n\t#include <skinnormal_vertex>\n\t#include <defaultnormal_vertex>\n#ifndef FLAT_SHADED\n\tvNormal = normalize( transformedNormal );\n\t#ifdef USE_TANGENT\n\t\tvTangent = normalize( transformedTangent );\n\t\tvBitangent = normalize( cross( vNormal, vTangent ) * tangent.w );\n\t#endif\n#endif\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <skinning_vertex>\n\t#include <displacementmap_vertex>\n\t#include <project_vertex>\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || defined( TANGENTSPACE_NORMALMAP )\n\tvViewPosition = - mvPosition.xyz;\n#endif\n}",points_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#include <common>\n#include <color_pars_fragment>\n#include <map_particle_pars_fragment>\n#include <fog_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\t#include <clipping_planes_fragment>\n\tvec3 outgoingLight = vec3( 0.0 );\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include <logdepthbuf_fragment>\n\t#include <map_particle_fragment>\n\t#include <color_fragment>\n\t#include <alphatest_fragment>\n\toutgoingLight = diffuseColor.rgb;\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n\t#include <premultiplied_alpha_fragment>\n}",points_vert:"uniform float size;\nuniform float scale;\n#include <common>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <color_vertex>\n\t#include <begin_vertex>\n\t#include <morphtarget_vertex>\n\t#include <project_vertex>\n\tgl_PointSize = size;\n\t#ifdef USE_SIZEATTENUATION\n\t\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\n\t\tif ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z );\n\t#endif\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\t#include <worldpos_vertex>\n\t#include <fog_vertex>\n}",shadow_frag:"uniform vec3 color;\nuniform float opacity;\n#include <common>\n#include <packing>\n#include <fog_pars_fragment>\n#include <bsdfs>\n#include <lights_pars_begin>\n#include <shadowmap_pars_fragment>\n#include <shadowmask_pars_fragment>\nvoid main() {\n\tgl_FragColor = vec4( color, opacity * ( 1.0 - getShadowMask() ) );\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n}",shadow_vert:"#include <fog_pars_vertex>\n#include <shadowmap_pars_vertex>\nvoid main() {\n\t#include <begin_vertex>\n\t#include <project_vertex>\n\t#include <worldpos_vertex>\n\t#include <shadowmap_vertex>\n\t#include <fog_vertex>\n}",sprite_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#include <common>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <fog_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n\t#include <clipping_planes_fragment>\n\tvec3 outgoingLight = vec3( 0.0 );\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include <logdepthbuf_fragment>\n\t#include <map_fragment>\n\t#include <alphamap_fragment>\n\t#include <alphatest_fragment>\n\toutgoingLight = diffuseColor.rgb;\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include <tonemapping_fragment>\n\t#include <encodings_fragment>\n\t#include <fog_fragment>\n}",sprite_vert:"uniform float rotation;\nuniform vec2 center;\n#include <common>\n#include <uv_pars_vertex>\n#include <fog_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n\t#include <uv_vertex>\n\tvec4 mvPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 );\n\tvec2 scale;\n\tscale.x = length( vec3( modelMatrix[ 0 ].x, modelMatrix[ 0 ].y, modelMatrix[ 0 ].z ) );\n\tscale.y = length( vec3( modelMatrix[ 1 ].x, modelMatrix[ 1 ].y, modelMatrix[ 1 ].z ) );\n\t#ifndef USE_SIZEATTENUATION\n\t\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\n\t\tif ( isPerspective ) scale *= - mvPosition.z;\n\t#endif\n\tvec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale;\n\tvec2 rotatedPosition;\n\trotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y;\n\trotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y;\n\tmvPosition.xy += rotatedPosition;\n\tgl_Position = projectionMatrix * mvPosition;\n\t#include <logdepthbuf_vertex>\n\t#include <clipping_planes_vertex>\n\t#include <fog_vertex>\n}"},zo={basic:{uniforms:Ao([jo.common,jo.specularmap,jo.envmap,jo.aomap,jo.lightmap,jo.fog]),vertexShader:Bo.meshbasic_vert,fragmentShader:Bo.meshbasic_frag},lambert:{uniforms:Ao([jo.common,jo.specularmap,jo.envmap,jo.aomap,jo.lightmap,jo.emissivemap,jo.fog,jo.lights,{emissive:{value:new xr(0)}}]),vertexShader:Bo.meshlambert_vert,fragmentShader:Bo.meshlambert_frag},phong:{uniforms:Ao([jo.common,jo.specularmap,jo.envmap,jo.aomap,jo.lightmap,jo.emissivemap,jo.bumpmap,jo.normalmap,jo.displacementmap,jo.fog,jo.lights,{emissive:{value:new xr(0)},specular:{value:new xr(1118481)},shininess:{value:30}}]),vertexShader:Bo.meshphong_vert,fragmentShader:Bo.meshphong_frag},standard:{uniforms:Ao([jo.common,jo.envmap,jo.aomap,jo.lightmap,jo.emissivemap,jo.bumpmap,jo.normalmap,jo.displacementmap,jo.roughnessmap,jo.metalnessmap,jo.fog,jo.lights,{emissive:{value:new xr(0)},roughness:{value:.5},metalness:{value:.5},envMapIntensity:{value:1}}]),vertexShader:Bo.meshphysical_vert,fragmentShader:Bo.meshphysical_frag},toon:{uniforms:Ao([jo.common,jo.specularmap,jo.aomap,jo.lightmap,jo.emissivemap,jo.bumpmap,jo.normalmap,jo.displacementmap,jo.gradientmap,jo.fog,jo.lights,{emissive:{value:new xr(0)},specular:{value:new xr(1118481)},shininess:{value:30}}]),vertexShader:Bo.meshtoon_vert,fragmentShader:Bo.meshtoon_frag},matcap:{uniforms:Ao([jo.common,jo.bumpmap,jo.normalmap,jo.displacementmap,jo.fog,{matcap:{value:null}}]),vertexShader:Bo.meshmatcap_vert,fragmentShader:Bo.meshmatcap_frag},points:{uniforms:Ao([jo.points,jo.fog]),vertexShader:Bo.points_vert,fragmentShader:Bo.points_frag},dashed:{uniforms:Ao([jo.common,jo.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:Bo.linedashed_vert,fragmentShader:Bo.linedashed_frag},depth:{uniforms:Ao([jo.common,jo.displacementmap]),vertexShader:Bo.depth_vert,fragmentShader:Bo.depth_frag},normal:{uniforms:Ao([jo.common,jo.bumpmap,jo.normalmap,jo.displacementmap,{opacity:{value:1}}]),vertexShader:Bo.normal_vert,fragmentShader:Bo.normal_frag},sprite:{uniforms:Ao([jo.sprite,jo.fog]),vertexShader:Bo.sprite_vert,fragmentShader:Bo.sprite_frag},background:{uniforms:{uvTransform:{value:new Yn},t2D:{value:null}},vertexShader:Bo.background_vert,fragmentShader:Bo.background_frag},cube:{uniforms:Ao([jo.envmap,{opacity:{value:1}}]),vertexShader:Bo.cube_vert,fragmentShader:Bo.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:Bo.equirect_vert,fragmentShader:Bo.equirect_frag},distanceRGBA:{uniforms:Ao([jo.common,jo.displacementmap,{referencePosition:{value:new oi},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:Bo.distanceRGBA_vert,fragmentShader:Bo.distanceRGBA_frag},shadow:{uniforms:Ao([jo.lights,jo.fog,{color:{value:new xr(0)},opacity:{value:1}}]),vertexShader:Bo.shadow_vert,fragmentShader:Bo.shadow_frag}};function Go(t,e,n,i){var r,o,a=new xr(0),s=0,c=null,l=0,u=null;function d(t,n){e.buffers.color.setClear(t.r,t.g,t.b,n,i)}return{getClearColor:function(){return a},setClearColor:function(t,e){a.set(t),d(a,s=void 0!==e?e:1)},getClearAlpha:function(){return s},setClearAlpha:function(t){d(a,s=t)},render:function(e,i,p,h){var f=i.background,g=t.xr,m=g.getSession&&g.getSession();if(m&&"additive"===m.environmentBlendMode&&(f=null),null===f?d(a,s):f&&f.isColor&&(d(f,1),h=!0),(t.autoClear||h)&&t.clear(t.autoClearColor,t.autoClearDepth,t.autoClearStencil),f&&(f.isCubeTexture||f.isWebGLCubeRenderTarget||f.mapping===wt)){void 0===o&&((o=new go(new Eo(1,1,1),new Oo({type:"BackgroundCubeMaterial",uniforms:Co(zo.cube.uniforms),vertexShader:zo.cube.vertexShader,fragmentShader:zo.cube.fragmentShader,side:C,depthTest:!1,depthWrite:!1,fog:!1}))).geometry.deleteAttribute("normal"),o.geometry.deleteAttribute("uv"),o.onBeforeRender=function(t,e,n){this.matrixWorld.copyPosition(n.matrixWorld)},Object.defineProperty(o.material,"envMap",{get:function(){return this.uniforms.envMap.value}}),n.update(o));var v=f.isWebGLCubeRenderTarget?f.texture:f;o.material.uniforms.envMap.value=v,o.material.uniforms.flipEnvMap.value=v.isCubeTexture?-1:1,c===f&&l===v.version&&u===t.toneMapping||(o.material.needsUpdate=!0,c=f,l=v.version,u=t.toneMapping),e.unshift(o,o.geometry,o.material,0,0,null)}else f&&f.isTexture&&(void 0===r&&((r=new go(new Uo(2,2),new Oo({type:"BackgroundMaterial",uniforms:Co(zo.background.uniforms),vertexShader:zo.background.vertexShader,fragmentShader:zo.background.fragmentShader,side:E,depthTest:!1,depthWrite:!1,fog:!1}))).geometry.deleteAttribute("normal"),Object.defineProperty(r.material,"map",{get:function(){return this.uniforms.t2D.value}}),n.update(r)),r.material.uniforms.t2D.value=f,!0===f.matrixAutoUpdate&&f.updateMatrix(),r.material.uniforms.uvTransform.value.copy(f.matrix),c===f&&l===f.version&&u===t.toneMapping||(r.material.needsUpdate=!0,c=f,l=f.version,u=t.toneMapping),e.unshift(r,r.geometry,r.material,0,0,null))}}}function Ho(t,e){return Math.abs(e[1])-Math.abs(t[1])}function Wo(t,e,n,i,r,o,a,s,c,l){t=void 0!==t?t:[],e=void 0!==e?e:gt,a=void 0!==a?a:Xt,Qn.call(this,t,e,n,i,r,o,a,s,c,l),this.flipY=!1}function qo(t,e,n,i){Qn.call(this,null),this.image={data:t||null,width:e||1,height:n||1,depth:i||1},this.magFilter=Ct,this.minFilter=Ct,this.wrapR=Mt,this.generateMipmaps=!1,this.flipY=!1,this.needsUpdate=!0}function Ko(t,e,n,i){Qn.call(this,null),this.image={data:t||null,width:e||1,height:n||1,depth:i||1},this.magFilter=Ct,this.minFilter=Ct,this.wrapR=Mt,this.generateMipmaps=!1,this.flipY=!1,this.needsUpdate=!0}zo.physical={uniforms:Ao([zo.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatNormalScale:{value:new Xn(1,1)},clearcoatNormalMap:{value:null},sheen:{value:new xr(0)},transparency:{value:0}}]),vertexShader:Bo.meshphysical_vert,fragmentShader:Bo.meshphysical_frag},Wo.prototype=Object.create(Qn.prototype),Wo.prototype.constructor=Wo,Wo.prototype.isCubeTexture=!0,Object.defineProperty(Wo.prototype,"images",{get:function(){return this.image},set:function(t){this.image=t}}),qo.prototype=Object.create(Qn.prototype),qo.prototype.constructor=qo,qo.prototype.isDataTexture2DArray=!0,Ko.prototype=Object.create(Qn.prototype),Ko.prototype.constructor=Ko,Ko.prototype.isDataTexture3D=!0;var Xo=new Qn,Yo=new qo,Zo=new Ko,Jo=new Wo,Qo=[],$o=[],ta=new Float32Array(16),ea=new Float32Array(9),na=new Float32Array(4);function ia(t,e,n){var i=t[0];if(i<=0||i>0)return t;var r=e*n,o=Qo[r];if(void 0===o&&(o=new Float32Array(r),Qo[r]=o),0!==e){i.toArray(o,0);for(var a=1,s=0;a!==e;++a)s+=n,t[a].toArray(o,s)}return o}function ra(t,e){if(t.length!==e.length)return!1;for(var n=0,i=t.length;n<i;n++)if(t[n]!==e[n])return!1;return!0}function oa(t,e){for(var n=0,i=e.length;n<i;n++)t[n]=e[n]}function aa(t,e){var n=$o[e];void 0===n&&(n=new Int32Array(e),$o[e]=n);for(var i=0;i!==e;++i)n[i]=t.allocateTextureUnit();return n}function sa(t,e){var n=this.cache;n[0]!==e&&(t.uniform1f(this.addr,e),n[0]=e)}function ca(t,e){var n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y||(t.uniform2f(this.addr,e.x,e.y),n[0]=e.x,n[1]=e.y);else{if(ra(n,e))return;t.uniform2fv(this.addr,e),oa(n,e)}}function la(t,e){var n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y&&n[2]===e.z||(t.uniform3f(this.addr,e.x,e.y,e.z),n[0]=e.x,n[1]=e.y,n[2]=e.z);else if(void 0!==e.r)n[0]===e.r&&n[1]===e.g&&n[2]===e.b||(t.uniform3f(this.addr,e.r,e.g,e.b),n[0]=e.r,n[1]=e.g,n[2]=e.b);else{if(ra(n,e))return;t.uniform3fv(this.addr,e),oa(n,e)}}function ua(t,e){var n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y&&n[2]===e.z&&n[3]===e.w||(t.uniform4f(this.addr,e.x,e.y,e.z,e.w),n[0]=e.x,n[1]=e.y,n[2]=e.z,n[3]=e.w);else{if(ra(n,e))return;t.uniform4fv(this.addr,e),oa(n,e)}}function da(t,e){var n=this.cache,i=e.elements;if(void 0===i){if(ra(n,e))return;t.uniformMatrix2fv(this.addr,!1,e),oa(n,e)}else{if(ra(n,i))return;na.set(i),t.uniformMatrix2fv(this.addr,!1,na),oa(n,i)}}function pa(t,e){var n=this.cache,i=e.elements;if(void 0===i){if(ra(n,e))return;t.uniformMatrix3fv(this.addr,!1,e),oa(n,e)}else{if(ra(n,i))return;ea.set(i),t.uniformMatrix3fv(this.addr,!1,ea),oa(n,i)}}function ha(t,e){var n=this.cache,i=e.elements;if(void 0===i){if(ra(n,e))return;t.uniformMatrix4fv(this.addr,!1,e),oa(n,e)}else{if(ra(n,i))return;ta.set(i),t.uniformMatrix4fv(this.addr,!1,ta),oa(n,i)}}function fa(t,e,n){var i=this.cache,r=n.allocateTextureUnit();i[0]!==r&&(t.uniform1i(this.addr,r),i[0]=r),n.safeSetTexture2D(e||Xo,r)}function ga(t,e,n){var i=this.cache,r=n.allocateTextureUnit();i[0]!==r&&(t.uniform1i(this.addr,r),i[0]=r),n.setTexture2DArray(e||Yo,r)}function ma(t,e,n){var i=this.cache,r=n.allocateTextureUnit();i[0]!==r&&(t.uniform1i(this.addr,r),i[0]=r),n.setTexture3D(e||Zo,r)}function va(t,e,n){var i=this.cache,r=n.allocateTextureUnit();i[0]!==r&&(t.uniform1i(this.addr,r),i[0]=r),n.safeSetTextureCube(e||Jo,r)}function ya(t,e){var n=this.cache;n[0]!==e&&(t.uniform1i(this.addr,e),n[0]=e)}function ba(t,e){var n=this.cache;ra(n,e)||(t.uniform2iv(this.addr,e),oa(n,e))}function wa(t,e){var n=this.cache;ra(n,e)||(t.uniform3iv(this.addr,e),oa(n,e))}function Sa(t,e){var n=this.cache;ra(n,e)||(t.uniform4iv(this.addr,e),oa(n,e))}function xa(t,e){var n=this.cache;n[0]!==e&&(t.uniform1ui(this.addr,e),n[0]=e)}function Ma(t,e){t.uniform1fv(this.addr,e)}function Ea(t,e){t.uniform1iv(this.addr,e)}function Ca(t,e){t.uniform2iv(this.addr,e)}function Aa(t,e){t.uniform3iv(this.addr,e)}function Ta(t,e){t.uniform4iv(this.addr,e)}function Oa(t,e){var n=ia(e,this.size,2);t.uniform2fv(this.addr,n)}function _a(t,e){var n=ia(e,this.size,3);t.uniform3fv(this.addr,n)}function Pa(t,e){var n=ia(e,this.size,4);t.uniform4fv(this.addr,n)}function Ia(t,e){var n=ia(e,this.size,4);t.uniformMatrix2fv(this.addr,!1,n)}function ka(t,e){var n=ia(e,this.size,9);t.uniformMatrix3fv(this.addr,!1,n)}function Da(t,e){var n=ia(e,this.size,16);t.uniformMatrix4fv(this.addr,!1,n)}function Ra(t,e,n){var i=e.length,r=aa(n,i);t.uniform1iv(this.addr,r);for(var o=0;o!==i;++o)n.safeSetTexture2D(e[o]||Xo,r[o])}function La(t,e,n){var i=e.length,r=aa(n,i);t.uniform1iv(this.addr,r);for(var o=0;o!==i;++o)n.safeSetTextureCube(e[o]||Jo,r[o])}function Na(t,e,n){this.id=t,this.addr=n,this.cache=[],this.setValue=function(t){switch(e.type){case 5126:return sa;case 35664:return ca;case 35665:return la;case 35666:return ua;case 35674:return da;case 35675:return pa;case 35676:return ha;case 5124:case 35670:return ya;case 35667:case 35671:return ba;case 35668:case 35672:return wa;case 35669:case 35673:return Sa;case 5125:return xa;case 35678:case 36198:case 36298:case 36306:case 35682:return fa;case 35679:case 36299:case 36307:return ma;case 35680:case 36300:case 36308:case 36293:return va;case 36289:case 36303:case 36311:case 36292:return ga}}()}function ja(t,e,n){this.id=t,this.addr=n,this.cache=[],this.size=e.size,this.setValue=function(t){switch(e.type){case 5126:return Ma;case 35664:return Oa;case 35665:return _a;case 35666:return Pa;case 35674:return Ia;case 35675:return ka;case 35676:return Da;case 5124:case 35670:return Ea;case 35667:case 35671:return Ca;case 35668:case 35672:return Aa;case 35669:case 35673:return Ta;case 35678:case 36198:case 36298:case 36306:case 35682:return Ra;case 35680:case 36300:case 36308:case 36293:return La}}()}function Va(t){this.id=t,this.seq=[],this.map={}}ja.prototype.updateCache=function(t){var e=this.cache;t instanceof Float32Array&&e.length!==t.length&&(this.cache=new Float32Array(t.length)),oa(e,t)},Va.prototype.setValue=function(t,e,n){for(var i=this.seq,r=0,o=i.length;r!==o;++r){var a=i[r];a.setValue(t,e[a.id],n)}};var Fa=/([\w\d_]+)(\])?(\[|\.)?/g;function Ua(t,e){t.seq.push(e),t.map[e.id]=e}function Ba(t,e,n){var i=t.name,r=i.length;for(Fa.lastIndex=0;;){var o=Fa.exec(i),a=Fa.lastIndex,s=o[1],c="]"===o[2],l=o[3];if(c&&(s|=0),void 0===l||"["===l&&a+2===r){Ua(n,void 0===l?new Na(s,t,e):new ja(s,t,e));break}var u=n.map[s];void 0===u&&Ua(n,u=new Va(s)),n=u}}function za(t,e){this.seq=[],this.map={};for(var n=t.getProgramParameter(e,35718),i=0;i<n;++i){var r=t.getActiveUniform(e,i);Ba(r,t.getUniformLocation(e,r.name),this)}}function Ga(t,e,n){var i=t.createShader(e);return t.shaderSource(i,n),t.compileShader(i),i}za.prototype.setValue=function(t,e,n,i){var r=this.map[e];void 0!==r&&r.setValue(t,n,i)},za.prototype.setOptional=function(t,e,n){var i=e[n];void 0!==i&&this.setValue(t,n,i)},za.upload=function(t,e,n,i){for(var r=0,o=e.length;r!==o;++r){var a=e[r],s=n[a.id];!1!==s.needsUpdate&&a.setValue(t,s.value,i)}},za.seqWithValue=function(t,e){for(var n=[],i=0,r=t.length;i!==r;++i){var o=t[i];o.id in e&&n.push(o)}return n};var Ha=0;function Wa(t){switch(t){case an:return["Linear","( value )"];case sn:return["sRGB","( value )"];case ln:return["RGBE","( value )"];case dn:return["RGBM","( value, 7.0 )"];case pn:return["RGBM","( value, 16.0 )"];case hn:return["RGBD","( value, 256.0 )"];case cn:return["Gamma","( value, float( GAMMA_FACTOR ) )"];case un:return["LogLuv","( value )"];default:throw new Error("unsupported encoding: "+t)}}function qa(t,e,n){var i=t.getShaderParameter(e,35713),r=t.getShaderInfoLog(e).trim();return i&&""===r?"":"THREE.WebGLShader: gl.getShaderInfoLog() "+n+"\n"+r+function(t){for(var e=t.split("\n"),n=0;n<e.length;n++)e[n]=n+1+": "+e[n];return e.join("\n")}(t.getShaderSource(e))}function Ka(t,e){var n=Wa(e);return"vec4 "+t+"( vec4 value ) { return "+n[0]+"ToLinear"+n[1]+"; }"}function Xa(t){return""!==t}function Ya(t,e){return t.replace(/NUM_DIR_LIGHTS/g,e.numDirLights).replace(/NUM_SPOT_LIGHTS/g,e.numSpotLights).replace(/NUM_RECT_AREA_LIGHTS/g,e.numRectAreaLights).replace(/NUM_POINT_LIGHTS/g,e.numPointLights).replace(/NUM_HEMI_LIGHTS/g,e.numHemiLights).replace(/NUM_DIR_LIGHT_SHADOWS/g,e.numDirLightShadows).replace(/NUM_SPOT_LIGHT_SHADOWS/g,e.numSpotLightShadows).replace(/NUM_POINT_LIGHT_SHADOWS/g,e.numPointLightShadows)}function Za(t,e){return t.replace(/NUM_CLIPPING_PLANES/g,e.numClippingPlanes).replace(/UNION_CLIPPING_PLANES/g,e.numClippingPlanes-e.numClipIntersection)}var Ja=/^[ \t]*#include +<([\w\d./]+)>/gm;function Qa(t){return t.replace(Ja,$a)}function $a(t,e){var n=Bo[e];if(void 0===n)throw new Error("Can not resolve #include <"+e+">");return Qa(n)}var ts=/#pragma unroll_loop[\s]+?for \( int i \= (\d+)\; i < (\d+)\; i \+\+ \) \{([\s\S]+?)(?=\})\}/g,es=/#pragma unroll_loop_start[\s]+?for \( int i \= (\d+)\; i < (\d+)\; i \+\+ \) \{([\s\S]+?)(?=\})\}[\s]+?#pragma unroll_loop_end/g;function ns(t){return t.replace(es,rs).replace(ts,is)}function is(t,e,n,i){return console.warn("WebGLProgram: #pragma unroll_loop shader syntax is deprecated. Please use #pragma unroll_loop_start syntax instead."),rs(t,e,n,i)}function rs(t,e,n,i){for(var r="",o=parseInt(e);o<parseInt(n);o++)r+=i.replace(/\[ i \]/g,"[ "+o+" ]").replace(/UNROLLED_LOOP_INDEX/g,o);return r}function os(t){var e="precision "+t.precision+" float;\nprecision "+t.precision+" int;";return"highp"===t.precision?e+="\n#define HIGH_PRECISION":"mediump"===t.precision?e+="\n#define MEDIUM_PRECISION":"lowp"===t.precision&&(e+="\n#define LOW_PRECISION"),e}function as(t,e,n){var i,r,o,a,s=t.getContext(),c=n.defines,l=n.vertexShader,u=n.fragmentShader,d=function(t){var e="SHADOWMAP_TYPE_BASIC";return t.shadowMapType===S?e="SHADOWMAP_TYPE_PCF":t.shadowMapType===x?e="SHADOWMAP_TYPE_PCF_SOFT":t.shadowMapType===M&&(e="SHADOWMAP_TYPE_VSM"),e}(n),p=function(t){var e="ENVMAP_TYPE_CUBE";if(t.envMap)switch(t.envMapMode){case gt:case mt:e="ENVMAP_TYPE_CUBE";break;case wt:case St:e="ENVMAP_TYPE_CUBE_UV";break;case vt:case yt:e="ENVMAP_TYPE_EQUIREC";break;case bt:e="ENVMAP_TYPE_SPHERE"}return e}(n),h=function(t){var e="ENVMAP_MODE_REFLECTION";if(t.envMap)switch(t.envMapMode){case mt:case yt:e="ENVMAP_MODE_REFRACTION"}return e}(n),f=function(t){var e="ENVMAP_BLENDING_NONE";if(t.envMap)switch(t.combine){case ot:e="ENVMAP_BLENDING_MULTIPLY";break;case at:e="ENVMAP_BLENDING_MIX";break;case st:e="ENVMAP_BLENDING_ADD"}return e}(n),g=t.gammaFactor>0?t.gammaFactor:1,m=n.isWebGL2?"":function(t){return[t.extensionDerivatives||t.envMapCubeUV||t.bumpMap||t.tangentSpaceNormalMap||t.clearcoatNormalMap||t.flatShading||"physical"===t.shaderID?"#extension GL_OES_standard_derivatives : enable":"",(t.extensionFragDepth||t.logarithmicDepthBuffer)&&t.rendererExtensionFragDepth?"#extension GL_EXT_frag_depth : enable":"",t.extensionDrawBuffers&&t.rendererExtensionDrawBuffers?"#extension GL_EXT_draw_buffers : require":"",(t.extensionShaderTextureLOD||t.envMap)&&t.rendererExtensionShaderTextureLod?"#extension GL_EXT_shader_texture_lod : enable":""].filter(Xa).join("\n")}(n),v=function(t){var e=[];for(var n in t){var i=t[n];!1!==i&&e.push("#define "+n+" "+i)}return e.join("\n")}(c),y=s.createProgram();if(n.isRawShaderMaterial?((i=[v].filter(Xa).join("\n")).length>0&&(i+="\n"),(r=[m,v].filter(Xa).join("\n")).length>0&&(r+="\n")):(i=[os(n),"#define SHADER_NAME "+n.shaderName,v,n.instancing?"#define USE_INSTANCING":"",n.supportsVertexTextures?"#define VERTEX_TEXTURES":"","#define GAMMA_FACTOR "+g,"#define MAX_BONES "+n.maxBones,n.useFog&&n.fog?"#define USE_FOG":"",n.useFog&&n.fogExp2?"#define FOG_EXP2":"",n.map?"#define USE_MAP":"",n.envMap?"#define USE_ENVMAP":"",n.envMap?"#define "+h:"",n.lightMap?"#define USE_LIGHTMAP":"",n.aoMap?"#define USE_AOMAP":"",n.emissiveMap?"#define USE_EMISSIVEMAP":"",n.bumpMap?"#define USE_BUMPMAP":"",n.normalMap?"#define USE_NORMALMAP":"",n.normalMap&&n.objectSpaceNormalMap?"#define OBJECTSPACE_NORMALMAP":"",n.normalMap&&n.tangentSpaceNormalMap?"#define TANGENTSPACE_NORMALMAP":"",n.clearcoatMap?"#define USE_CLEARCOATMAP":"",n.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",n.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",n.displacementMap&&n.supportsVertexTextures?"#define USE_DISPLACEMENTMAP":"",n.specularMap?"#define USE_SPECULARMAP":"",n.roughnessMap?"#define USE_ROUGHNESSMAP":"",n.metalnessMap?"#define USE_METALNESSMAP":"",n.alphaMap?"#define USE_ALPHAMAP":"",n.vertexTangents?"#define USE_TANGENT":"",n.vertexColors?"#define USE_COLOR":"",n.vertexUvs?"#define USE_UV":"",n.uvsVertexOnly?"#define UVS_VERTEX_ONLY":"",n.flatShading?"#define FLAT_SHADED":"",n.skinning?"#define USE_SKINNING":"",n.useVertexTexture?"#define BONE_TEXTURE":"",n.morphTargets?"#define USE_MORPHTARGETS":"",n.morphNormals&&!1===n.flatShading?"#define USE_MORPHNORMALS":"",n.doubleSided?"#define DOUBLE_SIDED":"",n.flipSided?"#define FLIP_SIDED":"",n.shadowMapEnabled?"#define USE_SHADOWMAP":"",n.shadowMapEnabled?"#define "+d:"",n.sizeAttenuation?"#define USE_SIZEATTENUATION":"",n.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",n.logarithmicDepthBuffer&&n.rendererExtensionFragDepth?"#define USE_LOGDEPTHBUF_EXT":"","uniform mat4 modelMatrix;","uniform mat4 modelViewMatrix;","uniform mat4 projectionMatrix;","uniform mat4 viewMatrix;","uniform mat3 normalMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;","#ifdef USE_INSTANCING"," attribute mat4 instanceMatrix;","#endif","attribute vec3 position;","attribute vec3 normal;","attribute vec2 uv;","#ifdef USE_TANGENT","\tattribute vec4 tangent;","#endif","#ifdef USE_COLOR","\tattribute vec3 color;","#endif","#ifdef USE_MORPHTARGETS","\tattribute vec3 morphTarget0;","\tattribute vec3 morphTarget1;","\tattribute vec3 morphTarget2;","\tattribute vec3 morphTarget3;","\t#ifdef USE_MORPHNORMALS","\t\tattribute vec3 morphNormal0;","\t\tattribute vec3 morphNormal1;","\t\tattribute vec3 morphNormal2;","\t\tattribute vec3 morphNormal3;","\t#else","\t\tattribute vec3 morphTarget4;","\t\tattribute vec3 morphTarget5;","\t\tattribute vec3 morphTarget6;","\t\tattribute vec3 morphTarget7;","\t#endif","#endif","#ifdef USE_SKINNING","\tattribute vec4 skinIndex;","\tattribute vec4 skinWeight;","#endif","\n"].filter(Xa).join("\n"),r=[m,os(n),"#define SHADER_NAME "+n.shaderName,v,n.alphaTest?"#define ALPHATEST "+n.alphaTest+(n.alphaTest%1?"":".0"):"","#define GAMMA_FACTOR "+g,n.useFog&&n.fog?"#define USE_FOG":"",n.useFog&&n.fogExp2?"#define FOG_EXP2":"",n.map?"#define USE_MAP":"",n.matcap?"#define USE_MATCAP":"",n.envMap?"#define USE_ENVMAP":"",n.envMap?"#define "+p:"",n.envMap?"#define "+h:"",n.envMap?"#define "+f:"",n.lightMap?"#define USE_LIGHTMAP":"",n.aoMap?"#define USE_AOMAP":"",n.emissiveMap?"#define USE_EMISSIVEMAP":"",n.bumpMap?"#define USE_BUMPMAP":"",n.normalMap?"#define USE_NORMALMAP":"",n.normalMap&&n.objectSpaceNormalMap?"#define OBJECTSPACE_NORMALMAP":"",n.normalMap&&n.tangentSpaceNormalMap?"#define TANGENTSPACE_NORMALMAP":"",n.clearcoatMap?"#define USE_CLEARCOATMAP":"",n.clearcoatRoughnessMap?"#define USE_CLEARCOAT_ROUGHNESSMAP":"",n.clearcoatNormalMap?"#define USE_CLEARCOAT_NORMALMAP":"",n.specularMap?"#define USE_SPECULARMAP":"",n.roughnessMap?"#define USE_ROUGHNESSMAP":"",n.metalnessMap?"#define USE_METALNESSMAP":"",n.alphaMap?"#define USE_ALPHAMAP":"",n.sheen?"#define USE_SHEEN":"",n.vertexTangents?"#define USE_TANGENT":"",n.vertexColors?"#define USE_COLOR":"",n.vertexUvs?"#define USE_UV":"",n.uvsVertexOnly?"#define UVS_VERTEX_ONLY":"",n.gradientMap?"#define USE_GRADIENTMAP":"",n.flatShading?"#define FLAT_SHADED":"",n.doubleSided?"#define DOUBLE_SIDED":"",n.flipSided?"#define FLIP_SIDED":"",n.shadowMapEnabled?"#define USE_SHADOWMAP":"",n.shadowMapEnabled?"#define "+d:"",n.premultipliedAlpha?"#define PREMULTIPLIED_ALPHA":"",n.physicallyCorrectLights?"#define PHYSICALLY_CORRECT_LIGHTS":"",n.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",n.logarithmicDepthBuffer&&n.rendererExtensionFragDepth?"#define USE_LOGDEPTHBUF_EXT":"",(n.extensionShaderTextureLOD||n.envMap)&&n.rendererExtensionShaderTextureLod?"#define TEXTURE_LOD_EXT":"","uniform mat4 viewMatrix;","uniform vec3 cameraPosition;","uniform bool isOrthographic;",n.toneMapping!==ct?"#define TONE_MAPPING":"",n.toneMapping!==ct?Bo.tonemapping_pars_fragment:"",n.toneMapping!==ct?function(t,e){var n;switch(e){case lt:n="Linear";break;case ut:n="Reinhard";break;case dt:n="Uncharted2";break;case pt:n="OptimizedCineon";break;case ht:n="ACESFilmic";break;default:throw new Error("unsupported toneMapping: "+e)}return"vec3 "+t+"( vec3 color ) { return "+n+"ToneMapping( color ); }"}("toneMapping",n.toneMapping):"",n.dithering?"#define DITHERING":"",n.outputEncoding||n.mapEncoding||n.matcapEncoding||n.envMapEncoding||n.emissiveMapEncoding||n.lightMapEncoding?Bo.encodings_pars_fragment:"",n.mapEncoding?Ka("mapTexelToLinear",n.mapEncoding):"",n.matcapEncoding?Ka("matcapTexelToLinear",n.matcapEncoding):"",n.envMapEncoding?Ka("envMapTexelToLinear",n.envMapEncoding):"",n.emissiveMapEncoding?Ka("emissiveMapTexelToLinear",n.emissiveMapEncoding):"",n.lightMapEncoding?Ka("lightMapTexelToLinear",n.lightMapEncoding):"",n.outputEncoding?("linearToOutputTexel",o=n.outputEncoding,a=Wa(o),"vec4 linearToOutputTexel( vec4 value ) { return LinearTo"+a[0]+a[1]+"; }"):"",n.depthPacking?"#define DEPTH_PACKING "+n.depthPacking:"","\n"].filter(Xa).join("\n")),l=Za(l=Ya(l=Qa(l),n),n),u=Za(u=Ya(u=Qa(u),n),n),l=ns(l),u=ns(u),n.isWebGL2&&!n.isRawShaderMaterial){var b=!1,w=/^\s*#version\s+300\s+es\s*\n/;n.isShaderMaterial&&null!==l.match(w)&&null!==u.match(w)&&(b=!0,l=l.replace(w,""),u=u.replace(w,"")),i=["#version 300 es\n","#define attribute in","#define varying out","#define texture2D texture"].join("\n")+"\n"+i,r=["#version 300 es\n","#define varying in",b?"":"out highp vec4 pc_fragColor;",b?"":"#define gl_FragColor pc_fragColor","#define gl_FragDepthEXT gl_FragDepth","#define texture2D texture","#define textureCube texture","#define texture2DProj textureProj","#define texture2DLodEXT textureLod","#define texture2DProjLodEXT textureProjLod","#define textureCubeLodEXT textureLod","#define texture2DGradEXT textureGrad","#define texture2DProjGradEXT textureProjGrad","#define textureCubeGradEXT textureGrad"].join("\n")+"\n"+r}var E,C,A=r+u,T=Ga(s,35633,i+l),O=Ga(s,35632,A);if(s.attachShader(y,T),s.attachShader(y,O),void 0!==n.index0AttributeName?s.bindAttribLocation(y,0,n.index0AttributeName):!0===n.morphTargets&&s.bindAttribLocation(y,0,"position"),s.linkProgram(y),t.debug.checkShaderErrors){var _=s.getProgramInfoLog(y).trim(),P=s.getShaderInfoLog(T).trim(),I=s.getShaderInfoLog(O).trim(),k=!0,D=!0;if(!1===s.getProgramParameter(y,35714)){k=!1;var R=qa(s,T,"vertex"),L=qa(s,O,"fragment");console.error("THREE.WebGLProgram: shader error: ",s.getError(),"35715",s.getProgramParameter(y,35715),"gl.getProgramInfoLog",_,R,L)}else""!==_?console.warn("THREE.WebGLProgram: gl.getProgramInfoLog()",_):""!==P&&""!==I||(D=!1);D&&(this.diagnostics={runnable:k,programLog:_,vertexShader:{log:P,prefix:i},fragmentShader:{log:I,prefix:r}})}return s.detachShader(y,T),s.detachShader(y,O),s.deleteShader(T),s.deleteShader(O),this.getUniforms=function(){return void 0===E&&(E=new za(s,y)),E},this.getAttributes=function(){return void 0===C&&(C=function(t,e){for(var n={},i=t.getProgramParameter(e,35721),r=0;r<i;r++){var o=t.getActiveAttrib(e,r).name;n[o]=t.getAttribLocation(e,o)}return n}(s,y)),C},this.destroy=function(){s.deleteProgram(y),this.program=void 0},this.name=n.shaderName,this.id=Ha++,this.cacheKey=e,this.usedTimes=1,this.program=y,this.vertexShader=T,this.fragmentShader=O,this}function ss(t,e,n){var i=[],r=n.isWebGL2,o=n.logarithmicDepthBuffer,a=n.floatVertexTextures,s=n.precision,c=n.maxVertexUniforms,l=n.vertexTextures,u={MeshDepthMaterial:"depth",MeshDistanceMaterial:"distanceRGBA",MeshNormalMaterial:"normal",MeshBasicMaterial:"basic",MeshLambertMaterial:"lambert",MeshPhongMaterial:"phong",MeshToonMaterial:"toon",MeshStandardMaterial:"physical",MeshPhysicalMaterial:"physical",MeshMatcapMaterial:"matcap",LineBasicMaterial:"basic",LineDashedMaterial:"dashed",PointsMaterial:"points",ShadowMaterial:"shadow",SpriteMaterial:"sprite"},d=["precision","isWebGL2","supportsVertexTextures","outputEncoding","instancing","map","mapEncoding","matcap","matcapEncoding","envMap","envMapMode","envMapEncoding","envMapCubeUV","lightMap","lightMapEncoding","aoMap","emissiveMap","emissiveMapEncoding","bumpMap","normalMap","objectSpaceNormalMap","tangentSpaceNormalMap","clearcoatMap","clearcoatRoughnessMap","clearcoatNormalMap","displacementMap","specularMap","roughnessMap","metalnessMap","gradientMap","alphaMap","combine","vertexColors","vertexTangents","vertexUvs","uvsVertexOnly","fog","useFog","fogExp2","flatShading","sizeAttenuation","logarithmicDepthBuffer","skinning","maxBones","useVertexTexture","morphTargets","morphNormals","maxMorphTargets","maxMorphNormals","premultipliedAlpha","numDirLights","numPointLights","numSpotLights","numHemiLights","numRectAreaLights","numDirLightShadows","numPointLightShadows","numSpotLightShadows","shadowMapEnabled","shadowMapType","toneMapping","physicallyCorrectLights","alphaTest","doubleSided","flipSided","numClippingPlanes","numClipIntersection","depthPacking","dithering","sheen"];function p(t){var e;return t?t.isTexture?e=t.encoding:t.isWebGLRenderTarget&&(console.warn("THREE.WebGLPrograms.getTextureEncodingFromMap: don't use render targets as textures. Use their .texture property instead."),e=t.texture.encoding):e=an,e}this.getParameters=function(i,d,h,f,g,m,v){var y=f.fog,b=i.isMeshStandardMaterial?f.environment:null,w=i.envMap||b,S=u[i.type],x=v.isSkinnedMesh?function(t){var e=v.skeleton.bones;if(a)return 1024;var n=c,i=Math.floor((n-20)/4),r=Math.min(i,e.length);return r<e.length?(console.warn("THREE.WebGLRenderer: Skeleton has "+e.length+" bones. This GPU supports "+r+"."),0):r}():0;null!==i.precision&&(s=n.getMaxPrecision(i.precision))!==i.precision&&console.warn("THREE.WebGLProgram.getParameters:",i.precision,"not supported, using",s,"instead.");var M=function(t,e){var n;if(S){var i=zo[S];n={name:t.type,uniforms:To.clone(i.uniforms),vertexShader:i.vertexShader,fragmentShader:i.fragmentShader}}else n={name:t.type,uniforms:t.uniforms,vertexShader:t.vertexShader,fragmentShader:t.fragmentShader};return n}(i);i.onBeforeCompile(M,t);var E=t.getRenderTarget();return{isWebGL2:r,shaderID:S,shaderName:M.name,uniforms:M.uniforms,vertexShader:M.vertexShader,fragmentShader:M.fragmentShader,defines:i.defines,isRawShaderMaterial:i.isRawShaderMaterial,isShaderMaterial:i.isShaderMaterial,precision:s,instancing:!0===v.isInstancedMesh,supportsVertexTextures:l,outputEncoding:null!==E?p(E.texture):t.outputEncoding,map:!!i.map,mapEncoding:p(i.map),matcap:!!i.matcap,matcapEncoding:p(i.matcap),envMap:!!w,envMapMode:w&&w.mapping,envMapEncoding:p(w),envMapCubeUV:!!w&&(w.mapping===wt||w.mapping===St),lightMap:!!i.lightMap,lightMapEncoding:p(i.lightMap),aoMap:!!i.aoMap,emissiveMap:!!i.emissiveMap,emissiveMapEncoding:p(i.emissiveMap),bumpMap:!!i.bumpMap,normalMap:!!i.normalMap,objectSpaceNormalMap:i.normalMapType===vn,tangentSpaceNormalMap:i.normalMapType===mn,clearcoatMap:!!i.clearcoatMap,clearcoatRoughnessMap:!!i.clearcoatRoughnessMap,clearcoatNormalMap:!!i.clearcoatNormalMap,displacementMap:!!i.displacementMap,roughnessMap:!!i.roughnessMap,metalnessMap:!!i.metalnessMap,specularMap:!!i.specularMap,alphaMap:!!i.alphaMap,gradientMap:!!i.gradientMap,sheen:!!i.sheen,combine:i.combine,vertexTangents:i.normalMap&&i.vertexTangents,vertexColors:i.vertexColors,vertexUvs:!!(i.map||i.bumpMap||i.normalMap||i.specularMap||i.alphaMap||i.emissiveMap||i.roughnessMap||i.metalnessMap||i.clearcoatMap||i.clearcoatRoughnessMap||i.clearcoatNormalMap||i.displacementMap),uvsVertexOnly:!(i.map||i.bumpMap||i.normalMap||i.specularMap||i.alphaMap||i.emissiveMap||i.roughnessMap||i.metalnessMap||i.clearcoatNormalMap||!i.displacementMap),fog:!!y,useFog:i.fog,fogExp2:y&&y.isFogExp2,flatShading:i.flatShading,sizeAttenuation:i.sizeAttenuation,logarithmicDepthBuffer:o,skinning:i.skinning&&x>0,maxBones:x,useVertexTexture:a,morphTargets:i.morphTargets,morphNormals:i.morphNormals,maxMorphTargets:t.maxMorphTargets,maxMorphNormals:t.maxMorphNormals,numDirLights:d.directional.length,numPointLights:d.point.length,numSpotLights:d.spot.length,numRectAreaLights:d.rectArea.length,numHemiLights:d.hemi.length,numDirLightShadows:d.directionalShadowMap.length,numPointLightShadows:d.pointShadowMap.length,numSpotLightShadows:d.spotShadowMap.length,numClippingPlanes:g,numClipIntersection:m,dithering:i.dithering,shadowMapEnabled:t.shadowMap.enabled&&h.length>0,shadowMapType:t.shadowMap.type,toneMapping:i.toneMapped?t.toneMapping:ct,physicallyCorrectLights:t.physicallyCorrectLights,premultipliedAlpha:i.premultipliedAlpha,alphaTest:i.alphaTest,doubleSided:i.side===A,flipSided:i.side===C,depthPacking:void 0!==i.depthPacking&&i.depthPacking,index0AttributeName:i.index0AttributeName,extensionDerivatives:i.extensions&&i.extensions.derivatives,extensionFragDepth:i.extensions&&i.extensions.fragDepth,extensionDrawBuffers:i.extensions&&i.extensions.drawBuffers,extensionShaderTextureLOD:i.extensions&&i.extensions.shaderTextureLOD,rendererExtensionFragDepth:r||null!==e.get("EXT_frag_depth"),rendererExtensionDrawBuffers:r||null!==e.get("WEBGL_draw_buffers"),rendererExtensionShaderTextureLod:r||null!==e.get("EXT_shader_texture_lod"),onBeforeCompile:i.onBeforeCompile}},this.getProgramCacheKey=function(e){var n=[];if(e.shaderID?n.push(e.shaderID):(n.push(e.fragmentShader),n.push(e.vertexShader)),void 0!==e.defines)for(var i in e.defines)n.push(i),n.push(e.defines[i]);if(void 0===e.isRawShaderMaterial){for(var r=0;r<d.length;r++)n.push(e[d[r]]);n.push(t.outputEncoding),n.push(t.gammaFactor)}return n.push(e.onBeforeCompile.toString()),n.join()},this.acquireProgram=function(e,n){for(var r,o=0,a=i.length;o<a;o++){var s=i[o];if(s.cacheKey===n){++(r=s).usedTimes;break}}return void 0===r&&(r=new as(t,n,e),i.push(r)),r},this.releaseProgram=function(t){if(0==--t.usedTimes){var e=i.indexOf(t);i[e]=i[i.length-1],i.pop(),t.destroy()}},this.programs=i}function cs(t,e){return t.groupOrder!==e.groupOrder?t.groupOrder-e.groupOrder:t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.program!==e.program?t.program.id-e.program.id:t.material.id!==e.material.id?t.material.id-e.material.id:t.z!==e.z?t.z-e.z:t.id-e.id}function ls(t,e){return t.groupOrder!==e.groupOrder?t.groupOrder-e.groupOrder:t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.z!==e.z?e.z-t.z:t.id-e.id}function us(){var t=[],e=0,n=[],i=[],r={id:-1};function o(n,i,o,a,s,c){var l=t[e];return void 0===l?(l={id:n.id,object:n,geometry:i,material:o,program:o.program||r,groupOrder:a,renderOrder:n.renderOrder,z:s,group:c},t[e]=l):(l.id=n.id,l.object=n,l.geometry=i,l.material=o,l.program=o.program||r,l.groupOrder=a,l.renderOrder=n.renderOrder,l.z=s,l.group=c),e++,l}return{opaque:n,transparent:i,init:function(){e=0,n.length=0,i.length=0},push:function(t,e,r,a,s,c){var l=o(t,e,r,a,s,c);(!0===r.transparent?i:n).push(l)},unshift:function(t,e,r,a,s,c){var l=o(t,e,r,a,s,c);(!0===r.transparent?i:n).unshift(l)},finish:function(){for(var n=e,i=t.length;n<i;n++){var r=t[n];if(null===r.id)break;r.id=null,r.object=null,r.geometry=null,r.material=null,r.program=null,r.group=null}},sort:function(t,e){n.length>1&&n.sort(t||cs),i.length>1&&i.sort(e||ls)}}}var ds=0;function ps(t,e){return(e.castShadow?1:0)-(t.castShadow?1:0)}function hs(){for(var t,e=new function(){var t={};return{get:function(e){if(void 0!==t[e.id])return t[e.id];var n;switch(e.type){case"DirectionalLight":n={direction:new oi,color:new xr};break;case"SpotLight":n={position:new oi,direction:new oi,color:new xr,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case"PointLight":n={position:new oi,color:new xr,distance:0,decay:0};break;case"HemisphereLight":n={direction:new oi,skyColor:new xr,groundColor:new xr};break;case"RectAreaLight":n={color:new xr,position:new oi,halfWidth:new oi,halfHeight:new oi}}return t[e.id]=n,n}}},n=(t={},{get:function(e){if(void 0!==t[e.id])return t[e.id];var n;switch(e.type){case"DirectionalLight":case"SpotLight":n={shadowBias:0,shadowRadius:1,shadowMapSize:new Xn};break;case"PointLight":n={shadowBias:0,shadowRadius:1,shadowMapSize:new Xn,shadowCameraNear:1,shadowCameraFar:1e3}}return t[e.id]=n,n}}),i={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotShadow:[],spotShadowMap:[],spotShadowMatrix:[],rectArea:[],point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[]},r=0;r<9;r++)i.probe.push(new oi);var o=new oi,a=new hi,s=new hi;return{setup:function(t,r,c){for(var l=0,u=0,d=0,p=0;p<9;p++)i.probe[p].set(0,0,0);var h=0,f=0,g=0,m=0,v=0,y=0,b=0,w=0,S=c.matrixWorldInverse;t.sort(ps),p=0;for(var x=t.length;p<x;p++){var M=t[p],E=M.color,C=M.intensity,A=M.distance,T=M.shadow&&M.shadow.map?M.shadow.map.texture:null;if(M.isAmbientLight)l+=E.r*C,u+=E.g*C,d+=E.b*C;else if(M.isLightProbe)for(var O=0;O<9;O++)i.probe[O].addScaledVector(M.sh.coefficients[O],C);else if(M.isDirectionalLight){if((I=e.get(M)).color.copy(M.color).multiplyScalar(M.intensity),I.direction.setFromMatrixPosition(M.matrixWorld),o.setFromMatrixPosition(M.target.matrixWorld),I.direction.sub(o),I.direction.transformDirection(S),M.castShadow){var _=M.shadow;(P=n.get(M)).shadowBias=_.bias,P.shadowRadius=_.radius,P.shadowMapSize=_.mapSize,i.directionalShadow[h]=P,i.directionalShadowMap[h]=T,i.directionalShadowMatrix[h]=M.shadow.matrix,y++}i.directional[h]=I,h++}else if(M.isSpotLight)(I=e.get(M)).position.setFromMatrixPosition(M.matrixWorld),I.position.applyMatrix4(S),I.color.copy(E).multiplyScalar(C),I.distance=A,I.direction.setFromMatrixPosition(M.matrixWorld),o.setFromMatrixPosition(M.target.matrixWorld),I.direction.sub(o),I.direction.transformDirection(S),I.coneCos=Math.cos(M.angle),I.penumbraCos=Math.cos(M.angle*(1-M.penumbra)),I.decay=M.decay,M.castShadow&&(_=M.shadow,(P=n.get(M)).shadowBias=_.bias,P.shadowRadius=_.radius,P.shadowMapSize=_.mapSize,i.spotShadow[g]=P,i.spotShadowMap[g]=T,i.spotShadowMatrix[g]=M.shadow.matrix,w++),i.spot[g]=I,g++;else if(M.isRectAreaLight)(I=e.get(M)).color.copy(E).multiplyScalar(C),I.position.setFromMatrixPosition(M.matrixWorld),I.position.applyMatrix4(S),s.identity(),a.copy(M.matrixWorld),a.premultiply(S),s.extractRotation(a),I.halfWidth.set(.5*M.width,0,0),I.halfHeight.set(0,.5*M.height,0),I.halfWidth.applyMatrix4(s),I.halfHeight.applyMatrix4(s),i.rectArea[m]=I,m++;else if(M.isPointLight){var P;if((I=e.get(M)).position.setFromMatrixPosition(M.matrixWorld),I.position.applyMatrix4(S),I.color.copy(M.color).multiplyScalar(M.intensity),I.distance=M.distance,I.decay=M.decay,M.castShadow)_=M.shadow,(P=n.get(M)).shadowBias=_.bias,P.shadowRadius=_.radius,P.shadowMapSize=_.mapSize,P.shadowCameraNear=_.camera.near,P.shadowCameraFar=_.camera.far,i.pointShadow[f]=P,i.pointShadowMap[f]=T,i.pointShadowMatrix[f]=M.shadow.matrix,b++;i.point[f]=I,f++}else if(M.isHemisphereLight){var I;(I=e.get(M)).direction.setFromMatrixPosition(M.matrixWorld),I.direction.transformDirection(S),I.direction.normalize(),I.skyColor.copy(M.color).multiplyScalar(C),I.groundColor.copy(M.groundColor).multiplyScalar(C),i.hemi[v]=I,v++}}i.ambient[0]=l,i.ambient[1]=u,i.ambient[2]=d;var k=i.hash;k.directionalLength===h&&k.pointLength===f&&k.spotLength===g&&k.rectAreaLength===m&&k.hemiLength===v&&k.numDirectionalShadows===y&&k.numPointShadows===b&&k.numSpotShadows===w||(i.directional.length=h,i.spot.length=g,i.rectArea.length=m,i.point.length=f,i.hemi.length=v,i.directionalShadow.length=y,i.directionalShadowMap.length=y,i.pointShadow.length=b,i.pointShadowMap.length=b,i.spotShadow.length=w,i.spotShadowMap.length=w,i.directionalShadowMatrix.length=y,i.pointShadowMatrix.length=b,i.spotShadowMatrix.length=w,k.directionalLength=h,k.pointLength=f,k.spotLength=g,k.rectAreaLength=m,k.hemiLength=v,k.numDirectionalShadows=y,k.numPointShadows=b,k.numSpotShadows=w,i.version=ds++)},state:i}}function fs(){var t=new hs,e=[],n=[];return{init:function(){e.length=0,n.length=0},state:{lightsArray:e,shadowsArray:n,lights:t},setupLights:function(i){t.setup(e,n,i)},pushLight:function(t){e.push(t)},pushShadow:function(t){n.push(t)}}}function gs(t){Or.call(this),this.type="MeshDepthMaterial",this.depthPacking=fn,this.skinning=!1,this.morphTargets=!1,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!1,this.setValues(t)}function ms(t){Or.call(this),this.type="MeshDistanceMaterial",this.referencePosition=new oi,this.nearDistance=1,this.farDistance=1e3,this.skinning=!1,this.morphTargets=!1,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.fog=!1,this.setValues(t)}function vs(t,e,n){var i=new No,r=new Xn,o=new Xn,a=new $n,s=[],c=[],l={},u={0:C,1:E,2:A},d=new Oo({defines:{SAMPLE_RATE:.25,HALF_SAMPLE_RATE:1/8},uniforms:{shadow_pass:{value:null},resolution:{value:new Xn},radius:{value:4}},vertexShader:"void main() {\n\tgl_Position = vec4( position, 1.0 );\n}",fragmentShader:"uniform sampler2D shadow_pass;\nuniform vec2 resolution;\nuniform float radius;\n#include <packing>\nvoid main() {\n float mean = 0.0;\n float squared_mean = 0.0;\n\tfloat depth = unpackRGBAToDepth( texture2D( shadow_pass, ( gl_FragCoord.xy ) / resolution ) );\n for ( float i = -1.0; i < 1.0 ; i += SAMPLE_RATE) {\n #ifdef HORIZONAL_PASS\n vec2 distribution = unpackRGBATo2Half( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( i, 0.0 ) * radius ) / resolution ) );\n mean += distribution.x;\n squared_mean += distribution.y * distribution.y + distribution.x * distribution.x;\n #else\n float depth = unpackRGBAToDepth( texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( 0.0, i ) * radius ) / resolution ) );\n mean += depth;\n squared_mean += depth * depth;\n #endif\n }\n mean = mean * HALF_SAMPLE_RATE;\n squared_mean = squared_mean * HALF_SAMPLE_RATE;\n float std_dev = sqrt( squared_mean - mean * mean );\n gl_FragColor = pack2HalfToRGBA( vec2( mean, std_dev ) );\n}"}),p=d.clone();p.defines.HORIZONAL_PASS=1;var h=new Zr;h.setAttribute("position",new Ir(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));var f=new go(h,d),g=this;function m(n,i){var r=e.update(f);d.uniforms.shadow_pass.value=n.map.texture,d.uniforms.resolution.value=n.mapSize,d.uniforms.radius.value=n.radius,t.setRenderTarget(n.mapPass),t.clear(),t.renderBufferDirect(i,null,r,d,f,null),p.uniforms.shadow_pass.value=n.mapPass.texture,p.uniforms.resolution.value=n.mapSize,p.uniforms.radius.value=n.radius,t.setRenderTarget(n.map),t.clear(),t.renderBufferDirect(i,null,r,p,f,null)}function v(t,e,n){var i=t<<0|e<<1|n<<2,r=s[i];return void 0===r&&(r=new gs({depthPacking:gn,morphTargets:t,skinning:e}),s[i]=r),r}function y(t,e,n){var i=t<<0|e<<1|n<<2,r=c[i];return void 0===r&&(r=new ms({morphTargets:t,skinning:e}),c[i]=r),r}function b(e,n,i,r,o,a){var s=e.geometry,c=null,d=v,p=e.customDepthMaterial;if(!0===i.isPointLight&&(d=y,p=e.customDistanceMaterial),void 0===p){var h=!1;!0===n.morphTargets&&(!0===s.isBufferGeometry?h=s.morphAttributes&&s.morphAttributes.position&&s.morphAttributes.position.length>0:!0===s.isGeometry&&(h=s.morphTargets&&s.morphTargets.length>0));var f=!1;!0===e.isSkinnedMesh&&(!0===n.skinning?f=!0:console.warn("THREE.WebGLShadowMap: THREE.SkinnedMesh with material.skinning set to false:",e)),c=d(h,f,!0===e.isInstancedMesh)}else c=p;if(t.localClippingEnabled&&!0===n.clipShadows&&0!==n.clippingPlanes.length){var g=c.uuid,m=n.uuid,b=l[g];void 0===b&&(b={},l[g]=b);var w=b[m];void 0===w&&(w=c.clone(),b[m]=w),c=w}return c.visible=n.visible,c.wireframe=n.wireframe,c.side=a===M?null!==n.shadowSide?n.shadowSide:n.side:null!==n.shadowSide?n.shadowSide:u[n.side],c.clipShadows=n.clipShadows,c.clippingPlanes=n.clippingPlanes,c.clipIntersection=n.clipIntersection,c.wireframeLinewidth=n.wireframeLinewidth,c.linewidth=n.linewidth,!0===i.isPointLight&&!0===c.isMeshDistanceMaterial&&(c.referencePosition.setFromMatrixPosition(i.matrixWorld),c.nearDistance=r,c.farDistance=o),c}function w(n,r,o,a,s){if(!1!==n.visible){if(n.layers.test(r.layers)&&(n.isMesh||n.isLine||n.isPoints)&&(n.castShadow||n.receiveShadow&&s===M)&&(!n.frustumCulled||i.intersectsObject(n))){n.modelViewMatrix.multiplyMatrices(o.matrixWorldInverse,n.matrixWorld);var c=e.update(n),l=n.material;if(Array.isArray(l))for(var u=c.groups,d=0,p=u.length;d<p;d++){var h=u[d],f=l[h.materialIndex];if(f&&f.visible){var g=b(n,f,a,o.near,o.far,s);t.renderBufferDirect(o,null,c,g,n,h)}}else l.visible&&(g=b(n,l,a,o.near,o.far,s),t.renderBufferDirect(o,null,c,g,n,null))}for(var m=n.children,v=0,y=m.length;v<y;v++)w(m[v],r,o,a,s)}}this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=S,this.render=function(e,s,c){if(!1!==g.enabled&&(!1!==g.autoUpdate||!1!==g.needsUpdate)&&0!==e.length){var l=t.getRenderTarget(),u=t.getActiveCubeFace(),d=t.getActiveMipmapLevel(),p=t.state;p.setBlending(_),p.buffers.color.setClear(1,1,1,1),p.buffers.depth.setTest(!0),p.setScissorTest(!1);for(var h=0,f=e.length;h<f;h++){var v=e[h],y=v.shadow;if(void 0!==y){r.copy(y.mapSize);var b=y.getFrameExtents();if(r.multiply(b),o.copy(y.mapSize),(r.x>n||r.y>n)&&(console.warn("THREE.WebGLShadowMap:",v,"has shadow exceeding max texture size, reducing"),r.x>n&&(o.x=Math.floor(n/b.x),r.x=o.x*b.x,y.mapSize.x=o.x),r.y>n&&(o.y=Math.floor(n/b.y),r.y=o.y*b.y,y.mapSize.y=o.y)),null===y.map&&!y.isPointLightShadow&&this.type===M){var S={minFilter:Pt,magFilter:Pt,format:Yt};y.map=new ti(r.x,r.y,S),y.map.texture.name=v.name+".shadowMap",y.mapPass=new ti(r.x,r.y,S),y.camera.updateProjectionMatrix()}null===y.map&&(S={minFilter:Ct,magFilter:Ct,format:Yt},y.map=new ti(r.x,r.y,S),y.map.texture.name=v.name+".shadowMap",y.camera.updateProjectionMatrix()),t.setRenderTarget(y.map),t.clear();for(var x=y.getViewportCount(),E=0;E<x;E++){var C=y.getViewport(E);a.set(o.x*C.x,o.y*C.y,o.x*C.z,o.y*C.w),p.viewport(a),y.updateMatrices(v,E),i=y.getFrustum(),w(s,c,y.camera,v,this.type)}y.isPointLightShadow||this.type!==M||m(y,c)}else console.warn("THREE.WebGLShadowMap:",v,"has no shadow.")}g.needsUpdate=!1,t.setRenderTarget(l,u,d)}}}function ys(t,e,n){var i,o,a=n.isWebGL2,s=new function(){var e=!1,n=new $n,i=null,r=new $n(0,0,0,0);return{setMask:function(n){i===n||e||(t.colorMask(n,n,n,n),i=n)},setLocked:function(t){e=t},setClear:function(e,i,o,a,s){!0===s&&(e*=a,i*=a,o*=a),n.set(e,i,o,a),!1===r.equals(n)&&(t.clearColor(e,i,o,a),r.copy(n))},reset:function(){e=!1,i=null,r.set(-1,0,0,0)}}},c=new function(){var e=!1,n=null,i=null,r=null;return{setTest:function(t){t?xt(2929):Mt(2929)},setMask:function(i){n===i||e||(t.depthMask(i),n=i)},setFunc:function(e){if(i!==e){if(e)switch(e){case J:t.depthFunc(512);break;case Q:t.depthFunc(519);break;case $:t.depthFunc(513);break;case tt:t.depthFunc(515);break;case et:t.depthFunc(514);break;case nt:t.depthFunc(518);break;case it:t.depthFunc(516);break;case rt:t.depthFunc(517);break;default:t.depthFunc(515)}else t.depthFunc(515);i=e}},setLocked:function(t){e=t},setClear:function(e){r!==e&&(t.clearDepth(e),r=e)},reset:function(){e=!1,n=null,i=null,r=null}}},l=new function(){var e=!1,n=null,i=null,r=null,o=null,a=null,s=null,c=null,l=null;return{setTest:function(t){e||(t?xt(2960):Mt(2960))},setMask:function(i){n===i||e||(t.stencilMask(i),n=i)},setFunc:function(e,n,a){i===e&&r===n&&o===a||(t.stencilFunc(e,n,a),i=e,r=n,o=a)},setOp:function(e,n,i){a===e&&s===n&&c===i||(t.stencilOp(e,n,i),a=e,s=n,c=i)},setLocked:function(t){e=t},setClear:function(e){l!==e&&(t.clearStencil(e),l=e)},reset:function(){e=!1,n=null,i=null,r=null,o=null,a=null,s=null,c=null,l=null}}},u=t.getParameter(34921),d=new Uint8Array(u),p=new Uint8Array(u),h=new Uint8Array(u),v={},y=null,b=null,w=null,S=null,x=null,M=null,E=null,T=null,O=null,ot=!1,at=null,st=null,ct=null,lt=null,ut=null,dt=t.getParameter(35661),pt=!1,ht=0,ft=t.getParameter(7938);-1!==ft.indexOf("WebGL")?(ht=parseFloat(/^WebGL\ ([0-9])/.exec(ft)[1]),pt=ht>=1):-1!==ft.indexOf("OpenGL ES")&&(ht=parseFloat(/^OpenGL\ ES\ ([0-9])/.exec(ft)[1]),pt=ht>=2);var gt=null,mt={},vt=new $n,yt=new $n;function bt(e,n,i){var r=new Uint8Array(4),o=t.createTexture();t.bindTexture(e,o),t.texParameteri(e,10241,9728),t.texParameteri(e,10240,9728);for(var a=0;a<i;a++)t.texImage2D(n+a,0,6408,1,1,0,6408,5121,r);return o}var wt={};function St(n,i){d[n]=1,0===p[n]&&(t.enableVertexAttribArray(n),p[n]=1),h[n]!==i&&((a?t:e.get("ANGLE_instanced_arrays"))[a?"vertexAttribDivisor":"vertexAttribDivisorANGLE"](n,i),h[n]=i)}function xt(e){!0!==v[e]&&(t.enable(e),v[e]=!0)}function Mt(e){!1!==v[e]&&(t.disable(e),v[e]=!1)}wt[3553]=bt(3553,3553,1),wt[34067]=bt(34067,34069,6),s.setClear(0,0,0,1),c.setClear(1),l.setClear(0),xt(2929),c.setFunc(tt),Ot(!1),_t(g),xt(2884),Tt(_);var Et=(r(i={},L,32774),r(i,N,32778),r(i,j,32779),i);if(a)Et[V]=32775,Et[F]=32776;else{var Ct=e.get("EXT_blend_minmax");null!==Ct&&(Et[V]=Ct.MIN_EXT,Et[F]=Ct.MAX_EXT)}var At=(r(o={},U,0),r(o,B,1),r(o,z,768),r(o,H,770),r(o,Z,776),r(o,X,774),r(o,q,772),r(o,G,769),r(o,W,771),r(o,Y,775),r(o,K,773),o);function Tt(e,n,i,r,o,a,s,c){if(e!==_){if(b||(xt(3042),b=!0),e===R)o=o||n,a=a||i,s=s||r,n===S&&o===E||(t.blendEquationSeparate(Et[n],Et[o]),S=n,E=o),i===x&&r===M&&a===T&&s===O||(t.blendFuncSeparate(At[i],At[r],At[a],At[s]),x=i,M=r,T=a,O=s),w=e,ot=null;else if(e!==w||c!==ot){if(S===L&&E===L||(t.blendEquation(32774),S=L,E=L),c)switch(e){case P:t.blendFuncSeparate(1,771,1,771);break;case I:t.blendFunc(1,1);break;case k:t.blendFuncSeparate(0,0,769,771);break;case D:t.blendFuncSeparate(0,768,0,770);break;default:console.error("THREE.WebGLState: Invalid blending: ",e)}else switch(e){case P:t.blendFuncSeparate(770,771,1,771);break;case I:t.blendFunc(770,1);break;case k:t.blendFunc(0,769);break;case D:t.blendFunc(0,768);break;default:console.error("THREE.WebGLState: Invalid blending: ",e)}x=null,M=null,T=null,O=null,w=e,ot=c}}else b&&(Mt(3042),b=!1)}function Ot(e){at!==e&&(e?t.frontFace(2304):t.frontFace(2305),at=e)}function _t(e){e!==f?(xt(2884),e!==st&&(e===g?t.cullFace(1029):e===m?t.cullFace(1028):t.cullFace(1032))):Mt(2884),st=e}function Pt(e,n,i){e?(xt(32823),lt===n&&ut===i||(t.polygonOffset(n,i),lt=n,ut=i)):Mt(32823)}function It(e){void 0===e&&(e=33984+dt-1),gt!==e&&(t.activeTexture(e),gt=e)}return{buffers:{color:s,depth:c,stencil:l},initAttributes:function(){for(var t=0,e=d.length;t<e;t++)d[t]=0},enableAttribute:function(t){St(t,0)},enableAttributeAndDivisor:St,disableUnusedAttributes:function(){for(var e=0,n=p.length;e!==n;++e)p[e]!==d[e]&&(t.disableVertexAttribArray(e),p[e]=0)},enable:xt,disable:Mt,useProgram:function(e){return y!==e&&(t.useProgram(e),y=e,!0)},setBlending:Tt,setMaterial:function(t,e){t.side===A?Mt(2884):xt(2884);var n=t.side===C;e&&(n=!n),Ot(n),t.blending===P&&!1===t.transparent?Tt(_):Tt(t.blending,t.blendEquation,t.blendSrc,t.blendDst,t.blendEquationAlpha,t.blendSrcAlpha,t.blendDstAlpha,t.premultipliedAlpha),c.setFunc(t.depthFunc),c.setTest(t.depthTest),c.setMask(t.depthWrite),s.setMask(t.colorWrite);var i=t.stencilWrite;l.setTest(i),i&&(l.setMask(t.stencilWriteMask),l.setFunc(t.stencilFunc,t.stencilRef,t.stencilFuncMask),l.setOp(t.stencilFail,t.stencilZFail,t.stencilZPass)),Pt(t.polygonOffset,t.polygonOffsetFactor,t.polygonOffsetUnits)},setFlipSided:Ot,setCullFace:_t,setLineWidth:function(e){e!==ct&&(pt&&t.lineWidth(e),ct=e)},setPolygonOffset:Pt,setScissorTest:function(t){t?xt(3089):Mt(3089)},activeTexture:It,bindTexture:function(e,n){null===gt&&It();var i=mt[gt];void 0===i&&(i={type:void 0,texture:void 0},mt[gt]=i),i.type===e&&i.texture===n||(t.bindTexture(e,n||wt[e]),i.type=e,i.texture=n)},unbindTexture:function(){var e=mt[gt];void 0!==e&&void 0!==e.type&&(t.bindTexture(e.type,null),e.type=void 0,e.texture=void 0)},compressedTexImage2D:function(){try{t.compressedTexImage2D.apply(t,arguments)}catch(t){console.error("THREE.WebGLState:",t)}},texImage2D:function(){try{t.texImage2D.apply(t,arguments)}catch(t){console.error("THREE.WebGLState:",t)}},texImage3D:function(){try{t.texImage3D.apply(t,arguments)}catch(t){console.error("THREE.WebGLState:",t)}},scissor:function(e){!1===vt.equals(e)&&(t.scissor(e.x,e.y,e.z,e.w),vt.copy(e))},viewport:function(e){!1===yt.equals(e)&&(t.viewport(e.x,e.y,e.z,e.w),yt.copy(e))},reset:function(){for(var e=0;e<p.length;e++)1===p[e]&&(t.disableVertexAttribArray(e),p[e]=0);v={},gt=null,mt={},y=null,w=null,at=null,st=null,s.reset(),c.reset(),l.reset()}}}function bs(t,e,n,i,o,a,s){var c,l,u,d=o.isWebGL2,p=o.maxTextures,h=o.maxCubemapSize,f=o.maxTextureSize,g=o.maxSamples,m=new WeakMap,v=!1;try{v="undefined"!=typeof OffscreenCanvas&&null!==new OffscreenCanvas(1,1).getContext("2d")}catch(t){}function y(t,e){return v?new OffscreenCanvas(t,e):document.createElementNS("http://www.w3.org/1999/xhtml","canvas")}function b(t,e,n,i){var r=1;if((t.width>i||t.height>i)&&(r=i/Math.max(t.width,t.height)),r<1||!0===e){if("undefined"!=typeof HTMLImageElement&&t instanceof HTMLImageElement||"undefined"!=typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||"undefined"!=typeof ImageBitmap&&t instanceof ImageBitmap){var o=e?Kn.floorPowerOfTwo:Math.floor,a=o(r*t.width),s=o(r*t.height);void 0===u&&(u=y(a,s));var c=n?y(a,s):u;return c.width=a,c.height=s,c.getContext("2d").drawImage(t,0,0,a,s),console.warn("THREE.WebGLRenderer: Texture has been resized from ("+t.width+"x"+t.height+") to ("+a+"x"+s+")."),c}return"data"in t&&console.warn("THREE.WebGLRenderer: Image in DataTexture is too big ("+t.width+"x"+t.height+")."),t}return t}function w(t){return Kn.isPowerOfTwo(t.width)&&Kn.isPowerOfTwo(t.height)}function S(t,e){return t.generateMipmaps&&e&&t.minFilter!==Ct&&t.minFilter!==Pt}function x(e,n,r,o){t.generateMipmap(e),i.get(n).__maxMipLevel=Math.log(Math.max(r,o))*Math.LOG2E}function M(n,i,r){if(!1===d)return i;if(null!==n){if(void 0!==t[n])return t[n];console.warn("THREE.WebGLRenderer: Attempt to use non-existing WebGL internal format '"+n+"'")}var o=i;return 6403===i&&(5126===r&&(o=33326),5131===r&&(o=33325),5121===r&&(o=33321)),6407===i&&(5126===r&&(o=34837),5131===r&&(o=34843),5121===r&&(o=32849)),6408===i&&(5126===r&&(o=34836),5131===r&&(o=34842),5121===r&&(o=32856)),33325!==o&&33326!==o&&34842!==o&&34836!==o||e.get("EXT_color_buffer_float"),o}function E(t){return t===Ct||t===At||t===Ot?9728:9729}function C(e){var n=e.target;n.removeEventListener("dispose",C),function(e){var n=i.get(e);void 0!==n.__webglInit&&(t.deleteTexture(n.__webglTexture),i.remove(e))}(n),n.isVideoTexture&&m.delete(n),s.memory.textures--}function A(e){var n=e.target;n.removeEventListener("dispose",A),function(e){var n=i.get(e),r=i.get(e.texture);if(e){if(void 0!==r.__webglTexture&&t.deleteTexture(r.__webglTexture),e.depthTexture&&e.depthTexture.dispose(),e.isWebGLCubeRenderTarget)for(var o=0;o<6;o++)t.deleteFramebuffer(n.__webglFramebuffer[o]),n.__webglDepthbuffer&&t.deleteRenderbuffer(n.__webglDepthbuffer[o]);else t.deleteFramebuffer(n.__webglFramebuffer),n.__webglDepthbuffer&&t.deleteRenderbuffer(n.__webglDepthbuffer),n.__webglMultisampledFramebuffer&&t.deleteFramebuffer(n.__webglMultisampledFramebuffer),n.__webglColorRenderbuffer&&t.deleteRenderbuffer(n.__webglColorRenderbuffer),n.__webglDepthRenderbuffer&&t.deleteRenderbuffer(n.__webglDepthRenderbuffer);i.remove(e.texture),i.remove(e)}}(n),s.memory.textures--}var T=0;function O(t,e){var r=i.get(t);if(t.isVideoTexture&&function(t){var e=s.render.frame;m.get(t)!==e&&(m.set(t,e),t.update())}(t),t.version>0&&r.__version!==t.version){var o=t.image;if(void 0===o)console.warn("THREE.WebGLRenderer: Texture marked for update but image is undefined");else{if(!1!==o.complete)return void L(r,t,e);console.warn("THREE.WebGLRenderer: Texture marked for update but image is incomplete")}}n.activeTexture(33984+e),n.bindTexture(3553,r.__webglTexture)}function _(e,r){if(6===e.image.length){var o=i.get(e);if(e.version>0&&o.__version!==e.version){R(o,e),n.activeTexture(33984+r),n.bindTexture(34067,o.__webglTexture),t.pixelStorei(37440,e.flipY);for(var s=e&&(e.isCompressedTexture||e.image[0].isCompressedTexture),c=e.image[0]&&e.image[0].isDataTexture,l=[],u=0;u<6;u++)l[u]=s||c?c?e.image[u].image:e.image[u]:b(e.image[u],!1,!0,h);var p,f=l[0],g=w(f)||d,m=a.convert(e.format),v=a.convert(e.type),y=M(e.internalFormat,m,v);if(D(34067,e,g),s){for(u=0;u<6;u++){p=l[u].mipmaps;for(var E=0;E<p.length;E++){var C=p[E];e.format!==Yt&&e.format!==Xt?null!==m?n.compressedTexImage2D(34069+u,E,y,C.width,C.height,0,C.data):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()"):n.texImage2D(34069+u,E,y,C.width,C.height,0,m,v,C.data)}}o.__maxMipLevel=p.length-1}else{for(p=e.mipmaps,u=0;u<6;u++)if(c)for(n.texImage2D(34069+u,0,y,l[u].width,l[u].height,0,m,v,l[u].data),E=0;E<p.length;E++){var A=(C=p[E]).image[u].image;n.texImage2D(34069+u,E+1,y,A.width,A.height,0,m,v,A.data)}else for(n.texImage2D(34069+u,0,y,m,v,l[u]),E=0;E<p.length;E++)C=p[E],n.texImage2D(34069+u,E+1,y,m,v,C.image[u]);o.__maxMipLevel=p.length}S(e,g)&&x(34067,e,f.width,f.height),o.__version=e.version,e.onUpdate&&e.onUpdate(e)}else n.activeTexture(33984+r),n.bindTexture(34067,o.__webglTexture)}}function P(t,e){n.activeTexture(33984+e),n.bindTexture(34067,i.get(t).__webglTexture)}var I=(r(c={},xt,10497),r(c,Mt,33071),r(c,Et,33648),c),k=(r(l={},Ct,9728),r(l,At,9984),r(l,Ot,9986),r(l,Pt,9729),r(l,It,9985),r(l,Dt,9987),l);function D(n,r,a){a?(t.texParameteri(n,10242,I[r.wrapS]),t.texParameteri(n,10243,I[r.wrapT]),32879!==n&&35866!==n||t.texParameteri(n,32882,I[r.wrapR]),t.texParameteri(n,10240,k[r.magFilter]),t.texParameteri(n,10241,k[r.minFilter])):(t.texParameteri(n,10242,33071),t.texParameteri(n,10243,33071),32879!==n&&35866!==n||t.texParameteri(n,32882,33071),r.wrapS===Mt&&r.wrapT===Mt||console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.wrapS and Texture.wrapT should be set to THREE.ClampToEdgeWrapping."),t.texParameteri(n,10240,E(r.magFilter)),t.texParameteri(n,10241,E(r.minFilter)),r.minFilter!==Ct&&r.minFilter!==Pt&&console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.minFilter should be set to THREE.NearestFilter or THREE.LinearFilter."));var s=e.get("EXT_texture_filter_anisotropic");if(s){if(r.type===Bt&&null===e.get("OES_texture_float_linear"))return;if(r.type===zt&&null===(d||e.get("OES_texture_half_float_linear")))return;(r.anisotropy>1||i.get(r).__currentAnisotropy)&&(t.texParameterf(n,s.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(r.anisotropy,o.getMaxAnisotropy())),i.get(r).__currentAnisotropy=r.anisotropy)}}function R(e,n){void 0===e.__webglInit&&(e.__webglInit=!0,n.addEventListener("dispose",C),e.__webglTexture=t.createTexture(),s.memory.textures++)}function L(e,i,r){var o=3553;i.isDataTexture2DArray&&(o=35866),i.isDataTexture3D&&(o=32879),R(e,i),n.activeTexture(33984+r),n.bindTexture(o,e.__webglTexture),t.pixelStorei(37440,i.flipY),t.pixelStorei(37441,i.premultiplyAlpha),t.pixelStorei(3317,i.unpackAlignment);var s=function(t){return!d&&(t.wrapS!==Mt||t.wrapT!==Mt||t.minFilter!==Ct&&t.minFilter!==Pt)}(i)&&!1===w(i.image),c=b(i.image,s,!1,f),l=w(c)||d,u=a.convert(i.format),p=a.convert(i.type),h=M(i.internalFormat,u,p);D(o,i,l);var g,m=i.mipmaps;if(i.isDepthTexture)h=6402,d?h=i.type===Bt?36012:i.type===Ut?33190:i.type===qt?35056:33189:i.type===Bt&&console.error("WebGLRenderer: Floating point depth texture requires WebGL2."),i.format===$t&&6402===h&&i.type!==Vt&&i.type!==Ut&&(console.warn("THREE.WebGLRenderer: Use UnsignedShortType or UnsignedIntType for DepthFormat DepthTexture."),i.type=Vt,p=a.convert(i.type)),i.format===te&&6402===h&&(h=34041,i.type!==qt&&(console.warn("THREE.WebGLRenderer: Use UnsignedInt248Type for DepthStencilFormat DepthTexture."),i.type=qt,p=a.convert(i.type))),n.texImage2D(3553,0,h,c.width,c.height,0,u,p,null);else if(i.isDataTexture)if(m.length>0&&l){for(var v=0,y=m.length;v<y;v++)g=m[v],n.texImage2D(3553,v,h,g.width,g.height,0,u,p,g.data);i.generateMipmaps=!1,e.__maxMipLevel=m.length-1}else n.texImage2D(3553,0,h,c.width,c.height,0,u,p,c.data),e.__maxMipLevel=0;else if(i.isCompressedTexture){for(v=0,y=m.length;v<y;v++)g=m[v],i.format!==Yt&&i.format!==Xt?null!==u?n.compressedTexImage2D(3553,v,h,g.width,g.height,0,g.data):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()"):n.texImage2D(3553,v,h,g.width,g.height,0,u,p,g.data);e.__maxMipLevel=m.length-1}else if(i.isDataTexture2DArray)n.texImage3D(35866,0,h,c.width,c.height,c.depth,0,u,p,c.data),e.__maxMipLevel=0;else if(i.isDataTexture3D)n.texImage3D(32879,0,h,c.width,c.height,c.depth,0,u,p,c.data),e.__maxMipLevel=0;else if(m.length>0&&l){for(v=0,y=m.length;v<y;v++)g=m[v],n.texImage2D(3553,v,h,u,p,g);i.generateMipmaps=!1,e.__maxMipLevel=m.length-1}else n.texImage2D(3553,0,h,u,p,c),e.__maxMipLevel=0;S(i,l)&&x(o,i,c.width,c.height),e.__version=i.version,i.onUpdate&&i.onUpdate(i)}function N(e,r,o,s){var c=a.convert(r.texture.format),l=a.convert(r.texture.type),u=M(r.texture.internalFormat,c,l);n.texImage2D(s,0,u,r.width,r.height,0,c,l,null),t.bindFramebuffer(36160,e),t.framebufferTexture2D(36160,o,s,i.get(r.texture).__webglTexture,0),t.bindFramebuffer(36160,null)}function j(e,n,i){if(t.bindRenderbuffer(36161,e),n.depthBuffer&&!n.stencilBuffer){var r=33189;if(i){var o=n.depthTexture;o&&o.isDepthTexture&&(o.type===Bt?r=36012:o.type===Ut&&(r=33190));var s=V(n);t.renderbufferStorageMultisample(36161,s,r,n.width,n.height)}else t.renderbufferStorage(36161,r,n.width,n.height);t.framebufferRenderbuffer(36160,36096,36161,e)}else if(n.depthBuffer&&n.stencilBuffer)i?(s=V(n),t.renderbufferStorageMultisample(36161,s,35056,n.width,n.height)):t.renderbufferStorage(36161,34041,n.width,n.height),t.framebufferRenderbuffer(36160,33306,36161,e);else{var c=a.convert(n.texture.format),l=a.convert(n.texture.type);r=M(n.texture.internalFormat,c,l),i?(s=V(n),t.renderbufferStorageMultisample(36161,s,r,n.width,n.height)):t.renderbufferStorage(36161,r,n.width,n.height)}t.bindRenderbuffer(36161,null)}function V(t){return d&&t.isWebGLMultisampleRenderTarget?Math.min(g,t.samples):0}var F=!1,U=!1;this.allocateTextureUnit=function(){var t=T;return t>=p&&console.warn("THREE.WebGLTextures: Trying to use "+t+" texture units while this GPU supports only "+p),T+=1,t},this.resetTextureUnits=function(){T=0},this.setTexture2D=O,this.setTexture2DArray=function(t,e){var r=i.get(t);t.version>0&&r.__version!==t.version?L(r,t,e):(n.activeTexture(33984+e),n.bindTexture(35866,r.__webglTexture))},this.setTexture3D=function(t,e){var r=i.get(t);t.version>0&&r.__version!==t.version?L(r,t,e):(n.activeTexture(33984+e),n.bindTexture(32879,r.__webglTexture))},this.setTextureCube=_,this.setTextureCubeDynamic=P,this.setupRenderTarget=function(e){var r=i.get(e),o=i.get(e.texture);e.addEventListener("dispose",A),o.__webglTexture=t.createTexture(),s.memory.textures++;var c=!0===e.isWebGLCubeRenderTarget,l=!0===e.isWebGLMultisampleRenderTarget,u=w(e)||d;if(!d||e.texture.format!==Xt||e.texture.type!==Bt&&e.texture.type!==zt||(e.texture.format=Yt,console.warn("THREE.WebGLRenderer: Rendering to textures with RGB format is not supported. Using RGBA format instead.")),c){r.__webglFramebuffer=[];for(var p=0;p<6;p++)r.__webglFramebuffer[p]=t.createFramebuffer()}else if(r.__webglFramebuffer=t.createFramebuffer(),l)if(d){r.__webglMultisampledFramebuffer=t.createFramebuffer(),r.__webglColorRenderbuffer=t.createRenderbuffer(),t.bindRenderbuffer(36161,r.__webglColorRenderbuffer);var h=a.convert(e.texture.format),f=a.convert(e.texture.type),g=M(e.texture.internalFormat,h,f),m=V(e);t.renderbufferStorageMultisample(36161,m,g,e.width,e.height),t.bindFramebuffer(36160,r.__webglMultisampledFramebuffer),t.framebufferRenderbuffer(36160,36064,36161,r.__webglColorRenderbuffer),t.bindRenderbuffer(36161,null),e.depthBuffer&&(r.__webglDepthRenderbuffer=t.createRenderbuffer(),j(r.__webglDepthRenderbuffer,e,!0)),t.bindFramebuffer(36160,null)}else console.warn("THREE.WebGLRenderer: WebGLMultisampleRenderTarget can only be used with WebGL2.");if(c){for(n.bindTexture(34067,o.__webglTexture),D(34067,e.texture,u),p=0;p<6;p++)N(r.__webglFramebuffer[p],e,36064,34069+p);S(e.texture,u)&&x(34067,e.texture,e.width,e.height),n.bindTexture(34067,null)}else n.bindTexture(3553,o.__webglTexture),D(3553,e.texture,u),N(r.__webglFramebuffer,e,36064,3553),S(e.texture,u)&&x(3553,e.texture,e.width,e.height),n.bindTexture(3553,null);e.depthBuffer&&function(e){var n=i.get(e),r=!0===e.isWebGLCubeRenderTarget;if(e.depthTexture){if(r)throw new Error("target.depthTexture not supported in Cube render targets");!function(e,n){if(n&&n.isWebGLCubeRenderTarget)throw new Error("Depth Texture with cube render targets is not supported");if(t.bindFramebuffer(36160,e),!n.depthTexture||!n.depthTexture.isDepthTexture)throw new Error("renderTarget.depthTexture must be an instance of THREE.DepthTexture");i.get(n.depthTexture).__webglTexture&&n.depthTexture.image.width===n.width&&n.depthTexture.image.height===n.height||(n.depthTexture.image.width=n.width,n.depthTexture.image.height=n.height,n.depthTexture.needsUpdate=!0),O(n.depthTexture,0);var r=i.get(n.depthTexture).__webglTexture;if(n.depthTexture.format===$t)t.framebufferTexture2D(36160,36096,3553,r,0);else{if(n.depthTexture.format!==te)throw new Error("Unknown depthTexture format");t.framebufferTexture2D(36160,33306,3553,r,0)}}(n.__webglFramebuffer,e)}else if(r){n.__webglDepthbuffer=[];for(var o=0;o<6;o++)t.bindFramebuffer(36160,n.__webglFramebuffer[o]),n.__webglDepthbuffer[o]=t.createRenderbuffer(),j(n.__webglDepthbuffer[o],e,!1)}else t.bindFramebuffer(36160,n.__webglFramebuffer),n.__webglDepthbuffer=t.createRenderbuffer(),j(n.__webglDepthbuffer,e,!1);t.bindFramebuffer(36160,null)}(e)},this.updateRenderTargetMipmap=function(t){var e=t.texture;if(S(e,w(t)||d)){var r=t.isWebGLCubeRenderTarget?34067:3553,o=i.get(e).__webglTexture;n.bindTexture(r,o),x(r,e,t.width,t.height),n.bindTexture(r,null)}},this.updateMultisampleRenderTarget=function(e){if(e.isWebGLMultisampleRenderTarget)if(d){var n=i.get(e);t.bindFramebuffer(36008,n.__webglMultisampledFramebuffer),t.bindFramebuffer(36009,n.__webglFramebuffer);var r=e.width,o=e.height,a=16384;e.depthBuffer&&(a|=256),e.stencilBuffer&&(a|=1024),t.blitFramebuffer(0,0,r,o,0,0,r,o,a,9728),t.bindFramebuffer(36160,n.__webglMultisampledFramebuffer)}else console.warn("THREE.WebGLRenderer: WebGLMultisampleRenderTarget can only be used with WebGL2.")},this.safeSetTexture2D=function(t,e){t&&t.isWebGLRenderTarget&&(!1===F&&(console.warn("THREE.WebGLTextures.safeSetTexture2D: don't use render targets as textures. Use their .texture property instead."),F=!0),t=t.texture),O(t,e)},this.safeSetTextureCube=function(t,e){t&&t.isWebGLCubeRenderTarget&&(!1===U&&(console.warn("THREE.WebGLTextures.safeSetTextureCube: don't use cube render targets as textures. Use their .texture property instead."),U=!0),t=t.texture),t&&t.isCubeTexture||Array.isArray(t.image)&&6===t.image.length?_(t,e):P(t,e)}}function ws(t,e,n){var i=n.isWebGL2;return{convert:function(t){var n;if(t===Lt)return 5121;if(t===Gt)return 32819;if(t===Ht)return 32820;if(t===Wt)return 33635;if(t===Nt)return 5120;if(t===jt)return 5122;if(t===Vt)return 5123;if(t===Ft)return 5124;if(t===Ut)return 5125;if(t===Bt)return 5126;if(t===zt)return i?5131:null!==(n=e.get("OES_texture_half_float"))?n.HALF_FLOAT_OES:null;if(t===Kt)return 6406;if(t===Xt)return 6407;if(t===Yt)return 6408;if(t===Zt)return 6409;if(t===Jt)return 6410;if(t===$t)return 6402;if(t===te)return 34041;if(t===ee)return 6403;if(t===ne)return 36244;if(t===ie)return 33319;if(t===re)return 33320;if(t===oe)return 36248;if(t===ae)return 36249;if(t===se||t===ce||t===le||t===ue){if(null===(n=e.get("WEBGL_compressed_texture_s3tc")))return null;if(t===se)return n.COMPRESSED_RGB_S3TC_DXT1_EXT;if(t===ce)return n.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(t===le)return n.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(t===ue)return n.COMPRESSED_RGBA_S3TC_DXT5_EXT}if(t===de||t===pe||t===he||t===fe){if(null===(n=e.get("WEBGL_compressed_texture_pvrtc")))return null;if(t===de)return n.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(t===pe)return n.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(t===he)return n.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(t===fe)return n.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}if(t===ge)return null!==(n=e.get("WEBGL_compressed_texture_etc1"))?n.COMPRESSED_RGB_ETC1_WEBGL:null;if((t===me||t===ve)&&null!==(n=e.get("WEBGL_compressed_texture_etc"))){if(t===me)return n.COMPRESSED_RGB8_ETC2;if(t===ve)return n.COMPRESSED_RGBA8_ETC2_EAC}return t===ye||t===be||t===we||t===Se||t===xe||t===Me||t===Ee||t===Ce||t===Ae||t===Te||t===Oe||t===_e||t===Pe||t===Ie||t===De||t===Re||t===Le||t===Ne||t===je||t===Ve||t===Fe||t===Ue||t===Be||t===ze||t===Ge||t===He||t===We||t===qe?null!==(n=e.get("WEBGL_compressed_texture_astc"))?t:null:t===ke?null!==(n=e.get("EXT_texture_compression_bptc"))?t:null:t===qt?i?34042:null!==(n=e.get("WEBGL_depth_texture"))?n.UNSIGNED_INT_24_8_WEBGL:null:void 0}}}function Ss(t){Po.call(this),this.cameras=t||[]}function xs(){Ii.call(this),this.type="Group"}function Ms(t,e){var n=this,i=null,r=1,o=null,a="local-floor",s=null,c=[],l=new Map,u=new Po;u.layers.enable(1),u.viewport=new $n;var d=new Po;d.layers.enable(2),d.viewport=new $n;var p=new Ss([u,d]);p.layers.enable(1),p.layers.enable(2);var h=null,f=null;function g(t){var e=l.get(t.inputSource);e&&(e.targetRay&&e.targetRay.dispatchEvent({type:t.type}),e.grip&&e.grip.dispatchEvent({type:t.type}))}function m(){l.forEach(function(t,e){t.targetRay&&(t.targetRay.dispatchEvent({type:"disconnected",data:e}),t.targetRay.visible=!1),t.grip&&(t.grip.dispatchEvent({type:"disconnected",data:e}),t.grip.visible=!1)}),l.clear(),t.setFramebuffer(null),t.setRenderTarget(t.getRenderTarget()),M.stop(),n.isPresenting=!1,n.dispatchEvent({type:"sessionend"})}function v(t){o=t,M.setContext(i),M.start(),n.isPresenting=!0,n.dispatchEvent({type:"sessionstart"})}function y(t){for(var e=i.inputSources,n=0;n<c.length;n++)l.set(e[n],c[n]);for(n=0;n<t.removed.length;n++){var r=t.removed[n];(o=l.get(r))&&(o.targetRay&&o.targetRay.dispatchEvent({type:"disconnected",data:r}),o.grip&&o.grip.dispatchEvent({type:"disconnected",data:r}),l.delete(r))}for(n=0;n<t.added.length;n++){var o;r=t.added[n],(o=l.get(r))&&(o.targetRay&&o.targetRay.dispatchEvent({type:"connected",data:r}),o.grip&&o.grip.dispatchEvent({type:"connected",data:r}))}}this.enabled=!1,this.isPresenting=!1,this.getController=function(t){var e=c[t];return void 0===e&&(e={},c[t]=e),void 0===e.targetRay&&(e.targetRay=new xs,e.targetRay.matrixAutoUpdate=!1,e.targetRay.visible=!1),e.targetRay},this.getControllerGrip=function(t){var e=c[t];return void 0===e&&(e={},c[t]=e),void 0===e.grip&&(e.grip=new xs,e.grip.matrixAutoUpdate=!1,e.grip.visible=!1),e.grip},this.setFramebufferScaleFactor=function(t){r=t,1==n.isPresenting&&console.warn("WebXRManager: Cannot change framebuffer scale while presenting VR content")},this.setReferenceSpaceType=function(t){a=t},this.getReferenceSpace=function(){return o},this.getSession=function(){return i},this.setSession=function(t){if(null!==(i=t)){i.addEventListener("select",g),i.addEventListener("selectstart",g),i.addEventListener("selectend",g),i.addEventListener("squeeze",g),i.addEventListener("squeezestart",g),i.addEventListener("squeezeend",g),i.addEventListener("end",m);var n=e.getContextAttributes(),o={antialias:n.antialias,alpha:n.alpha,depth:n.depth,stencil:n.stencil,framebufferScaleFactor:r},s=new XRWebGLLayer(i,e,o);i.updateRenderState({baseLayer:s}),i.requestReferenceSpace(a).then(v),i.addEventListener("inputsourceschange",y)}};var b=new oi,w=new oi;function S(t,e){null===e?t.matrixWorld.copy(t.matrix):t.matrixWorld.multiplyMatrices(e.matrixWorld,t.matrix),t.matrixWorldInverse.getInverse(t.matrixWorld)}this.getCamera=function(t){p.near=d.near=u.near=t.near,p.far=d.far=u.far=t.far,h===p.near&&f===p.far||(i.updateRenderState({depthNear:p.near,depthFar:p.far}),h=p.near,f=p.far);var e=t.parent,n=p.cameras;S(p,e);for(var r=0;r<n.length;r++)S(n[r],e);t.matrixWorld.copy(p.matrixWorld);for(var o=t.children,a=(r=0,o.length);r<a;r++)o[r].updateMatrixWorld(!0);return function(t,e,n){b.setFromMatrixPosition(e.matrixWorld),w.setFromMatrixPosition(n.matrixWorld);var i=b.distanceTo(w),r=e.projectionMatrix.elements,o=n.projectionMatrix.elements,a=r[14]/(r[10]-1),s=r[14]/(r[10]+1),c=(r[9]+1)/r[5],l=(r[9]-1)/r[5],u=(r[8]-1)/r[0],d=(o[8]+1)/o[0],p=a*u,h=a*d,f=i/(-u+d),g=f*-u;e.matrixWorld.decompose(t.position,t.quaternion,t.scale),t.translateX(g),t.translateZ(f),t.matrixWorld.compose(t.position,t.quaternion,t.scale),t.matrixWorldInverse.getInverse(t.matrixWorld);var m=a+f,v=s+f,y=p-g,S=h+(i-g),x=c*s/v*m,M=l*s/v*m;t.projectionMatrix.makePerspective(y,S,x,M,m,v)}(p,u,d),p};var x=null,M=new Vo;M.setAnimationLoop(function(e,n){if(null!==(s=n.getViewerPose(o))){var r=s.views,a=i.renderState.baseLayer;t.setFramebuffer(a.framebuffer);for(var l=0;l<r.length;l++){var u=r[l],d=a.getViewport(u),h=p.cameras[l];h.matrix.fromArray(u.transform.matrix),h.projectionMatrix.fromArray(u.projectionMatrix),h.viewport.set(d.x,d.y,d.width,d.height),0===l&&p.matrix.copy(h.matrix)}}var f=i.inputSources;for(l=0;l<c.length;l++){var g=c[l],m=f[l],v=null,y=null;m&&(g.targetRay&&null!==(v=n.getPose(m.targetRaySpace,o))&&(g.targetRay.matrix.fromArray(v.transform.matrix),g.targetRay.matrix.decompose(g.targetRay.position,g.targetRay.rotation,g.targetRay.scale)),g.grip&&m.gripSpace&&null!==(y=n.getPose(m.gripSpace,o))&&(g.grip.matrix.fromArray(y.transform.matrix),g.grip.matrix.decompose(g.grip.position,g.grip.rotation,g.grip.scale))),g.targetRay&&(g.targetRay.visible=null!==v),g.grip&&(g.grip.visible=null!==y)}x&&x(e,n)}),this.setAnimationLoop=function(t){x=t},this.dispose=function(){}}function Es(t){var e=void 0!==(t=t||{}).canvas?t.canvas:document.createElementNS("http://www.w3.org/1999/xhtml","canvas"),n=void 0!==t.context?t.context:null,i=void 0!==t.alpha&&t.alpha,r=void 0===t.depth||t.depth,o=void 0===t.stencil||t.stencil,a=void 0!==t.antialias&&t.antialias,s=void 0===t.premultipliedAlpha||t.premultipliedAlpha,c=void 0!==t.preserveDrawingBuffer&&t.preserveDrawingBuffer,l=void 0!==t.powerPreference?t.powerPreference:"default",u=void 0!==t.failIfMajorPerformanceCaveat&&t.failIfMajorPerformanceCaveat,d=null,p=null;this.domElement=e,this.debug={checkShaderErrors:!0},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this.gammaFactor=2,this.outputEncoding=an,this.physicallyCorrectLights=!1,this.toneMapping=lt,this.toneMappingExposure=1,this.toneMappingWhitePoint=1,this.maxMorphTargets=8,this.maxMorphNormals=4;var h,f,g,m,v,y,b,w,S,x,M,E,A,T,O,_,P,I,k=this,D=!1,R=null,L=0,N=0,j=null,V=null,F=-1,U={geometry:null,program:null,wireframe:!1},B=null,z=null,G=new $n,H=new $n,W=null,q=e.width,K=e.height,X=1,Y=null,Z=null,J=new $n(0,0,q,K),Q=new $n(0,0,q,K),$=!1,tt=new No,et=new function(){var t=this,e=null,n=0,i=!1,r=!1,o=new sr,a=new Yn,s={value:null,needsUpdate:!1};function c(){s.value!==e&&(s.value=e,s.needsUpdate=n>0),t.numPlanes=n,t.numIntersection=0}function l(e,n,i,r){var c=null!==e?e.length:0,l=null;if(0!==c){if(l=s.value,!0!==r||null===l){var u=i+4*c,d=n.matrixWorldInverse;a.getNormalMatrix(d),(null===l||l.length<u)&&(l=new Float32Array(u));for(var p=0,h=i;p!==c;++p,h+=4)o.copy(e[p]).applyMatrix4(d,a),o.normal.toArray(l,h),l[h+3]=o.constant}s.value=l,s.needsUpdate=!0}return t.numPlanes=c,t.numIntersection=0,l}this.uniform=s,this.numPlanes=0,this.numIntersection=0,this.init=function(t,r,o){var a=0!==t.length||r||0!==n||i;return i=r,e=l(t,o,0),n=t.length,a},this.beginShadows=function(){r=!0,l(null)},this.endShadows=function(){r=!1,c()},this.setState=function(t,o,a,u,d,p){if(!i||null===t||0===t.length||r&&!a)r?l(null):c();else{var h=r?0:n,f=4*h,g=d.clippingState||null;s.value=g,g=l(t,u,f,p);for(var m=0;m!==f;++m)g[m]=e[m];d.clippingState=g,this.numIntersection=o?this.numPlanes:0,this.numPlanes+=h}}},nt=!1,it=!1,rt=new hi,ot=new oi;function at(){return null===j?X:1}try{var st={alpha:i,depth:r,stencil:o,antialias:a,premultipliedAlpha:s,preserveDrawingBuffer:c,powerPreference:l,failIfMajorPerformanceCaveat:u,xrCompatible:!0};if(e.addEventListener("webglcontextlost",pt,!1),e.addEventListener("webglcontextrestored",ht,!1),null===(h=n||e.getContext("webgl",st)||e.getContext("experimental-webgl",st)))throw null!==e.getContext("webgl")?new Error("Error creating WebGL context with your selected attributes."):new Error("Error creating WebGL context.");void 0===h.getShaderPrecisionFormat&&(h.getShaderPrecisionFormat=function(){return{rangeMin:1,rangeMax:1,precision:1}})}catch(t){throw console.error("THREE.WebGLRenderer: "+t.message),t}function ct(){f=new function(t){var e={};return{get:function(n){if(void 0!==e[n])return e[n];var i;switch(n){case"WEBGL_depth_texture":i=t.getExtension("WEBGL_depth_texture")||t.getExtension("MOZ_WEBGL_depth_texture")||t.getExtension("WEBKIT_WEBGL_depth_texture");break;case"EXT_texture_filter_anisotropic":i=t.getExtension("EXT_texture_filter_anisotropic")||t.getExtension("MOZ_EXT_texture_filter_anisotropic")||t.getExtension("WEBKIT_EXT_texture_filter_anisotropic");break;case"WEBGL_compressed_texture_s3tc":i=t.getExtension("WEBGL_compressed_texture_s3tc")||t.getExtension("MOZ_WEBGL_compressed_texture_s3tc")||t.getExtension("WEBKIT_WEBGL_compressed_texture_s3tc");break;case"WEBGL_compressed_texture_pvrtc":i=t.getExtension("WEBGL_compressed_texture_pvrtc")||t.getExtension("WEBKIT_WEBGL_compressed_texture_pvrtc");break;default:i=t.getExtension(n)}return null===i&&console.warn("THREE.WebGLRenderer: "+n+" extension not supported."),e[n]=i,i}}}(h),!1===(g=new function(t,e,n){var i;function r(e){if("highp"===e){if(t.getShaderPrecisionFormat(35633,36338).precision>0&&t.getShaderPrecisionFormat(35632,36338).precision>0)return"highp";e="mediump"}return"mediump"===e&&t.getShaderPrecisionFormat(35633,36337).precision>0&&t.getShaderPrecisionFormat(35632,36337).precision>0?"mediump":"lowp"}var o="undefined"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext||"undefined"!=typeof WebGL2ComputeRenderingContext&&t instanceof WebGL2ComputeRenderingContext,a=void 0!==n.precision?n.precision:"highp",s=r(a);s!==a&&(console.warn("THREE.WebGLRenderer:",a,"not supported, using",s,"instead."),a=s);var c=!0===n.logarithmicDepthBuffer,l=t.getParameter(34930),u=t.getParameter(35660),d=t.getParameter(3379),p=t.getParameter(34076),h=t.getParameter(34921),f=t.getParameter(36347),g=t.getParameter(36348),m=t.getParameter(36349),v=u>0,y=o||!!e.get("OES_texture_float");return{isWebGL2:o,getMaxAnisotropy:function(){if(void 0!==i)return i;var n=e.get("EXT_texture_filter_anisotropic");return i=null!==n?t.getParameter(n.MAX_TEXTURE_MAX_ANISOTROPY_EXT):0},getMaxPrecision:r,precision:a,logarithmicDepthBuffer:c,maxTextures:l,maxVertexTextures:u,maxTextureSize:d,maxCubemapSize:p,maxAttributes:h,maxVertexUniforms:f,maxVaryings:g,maxFragmentUniforms:m,vertexTextures:v,floatFragmentTextures:y,floatVertexTextures:v&&y,maxSamples:o?t.getParameter(36183):0}}(h,f,t)).isWebGL2&&(f.get("WEBGL_depth_texture"),f.get("OES_texture_float"),f.get("OES_texture_half_float"),f.get("OES_texture_half_float_linear"),f.get("OES_standard_derivatives"),f.get("OES_element_index_uint"),f.get("ANGLE_instanced_arrays")),f.get("OES_texture_float_linear"),I=new ws(h,f,g),(m=new ys(h,f,g)).scissor(H.copy(Q).multiplyScalar(X).floor()),m.viewport(G.copy(J).multiplyScalar(X).floor()),v=new function(t){var e={frame:0,calls:0,triangles:0,points:0,lines:0};return{memory:{geometries:0,textures:0},render:e,programs:null,autoReset:!0,reset:function(){e.frame++,e.calls=0,e.triangles=0,e.points=0,e.lines=0},update:function(t,n,i){switch(i=i||1,e.calls++,n){case 4:e.triangles+=i*(t/3);break;case 1:e.lines+=i*(t/2);break;case 3:e.lines+=i*(t-1);break;case 2:e.lines+=i*t;break;case 0:e.points+=i*t;break;default:console.error("THREE.WebGLInfo: Unknown draw mode:",n)}}}}(h),y=new function(){var t=new WeakMap;return{get:function(e){var n=t.get(e);return void 0===n&&(n={},t.set(e,n)),n},remove:function(e){t.delete(e)},update:function(e,n,i){t.get(e)[n]=i},dispose:function(){t=new WeakMap}}},b=new bs(h,f,m,y,g,I,v),w=new function(t,e){var n=e.isWebGL2,i=new WeakMap;return{get:function(t){return t.isInterleavedBufferAttribute&&(t=t.data),i.get(t)},remove:function(e){e.isInterleavedBufferAttribute&&(e=e.data);var n=i.get(e);n&&(t.deleteBuffer(n.buffer),i.delete(e))},update:function(e,r){e.isInterleavedBufferAttribute&&(e=e.data);var o=i.get(e);void 0===o?i.set(e,function(e,n){var i=e.array,r=e.usage,o=t.createBuffer();t.bindBuffer(n,o),t.bufferData(n,i,r),e.onUploadCallback();var a=5126;return i instanceof Float32Array?a=5126:i instanceof Float64Array?console.warn("THREE.WebGLAttributes: Unsupported data buffer format: Float64Array."):i instanceof Uint16Array?a=5123:i instanceof Int16Array?a=5122:i instanceof Uint32Array?a=5125:i instanceof Int32Array?a=5124:i instanceof Int8Array?a=5120:i instanceof Uint8Array&&(a=5121),{buffer:o,type:a,bytesPerElement:i.BYTES_PER_ELEMENT,version:e.version}}(e,r)):o.version<e.version&&(function(e,i,r){var o=i.array,a=i.updateRange;t.bindBuffer(r,e),-1===a.count?t.bufferSubData(r,0,o):(n?t.bufferSubData(r,a.offset*o.BYTES_PER_ELEMENT,o,a.offset,a.count):t.bufferSubData(r,a.offset*o.BYTES_PER_ELEMENT,o.subarray(a.offset,a.offset+a.count)),a.count=-1)}(o.buffer,e,r),o.version=e.version)}}}(h,g),S=new function(t,e,n){var i=new WeakMap,r=new WeakMap;function o(t){var a=t.target,s=i.get(a);for(var c in null!==s.index&&e.remove(s.index),s.attributes)e.remove(s.attributes[c]);a.removeEventListener("dispose",o),i.delete(a);var l=r.get(s);l&&(e.remove(l),r.delete(s)),n.memory.geometries--}function a(t){var n=[],i=t.index,o=t.attributes.position,a=0;if(null!==i){var s=i.array;a=i.version;for(var c=0,l=s.length;c<l;c+=3){var u=s[c+0],d=s[c+1],p=s[c+2];n.push(u,d,d,p,p,u)}}else for(s=o.array,a=o.version,c=0,l=s.length/3-1;c<l;c+=3)u=c+0,d=c+1,p=c+2,n.push(u,d,d,p,p,u);var h=new(zr(n)>65535?Vr:Nr)(n,1);h.version=a,e.update(h,34963);var f=r.get(t);f&&e.remove(f),r.set(t,h)}return{get:function(t,e){var r=i.get(e);return r||(e.addEventListener("dispose",o),e.isBufferGeometry?r=e:e.isGeometry&&(void 0===e._bufferGeometry&&(e._bufferGeometry=(new Zr).setFromObject(t)),r=e._bufferGeometry),i.set(e,r),n.memory.geometries++,r)},update:function(t){var n=t.index,i=t.attributes;for(var r in null!==n&&e.update(n,34963),i)e.update(i[r],34962);var o=t.morphAttributes;for(var r in o)for(var a=o[r],s=0,c=a.length;s<c;s++)e.update(a[s],34962)},getWireframeAttribute:function(t){var e=r.get(t);if(e){var n=t.index;null!==n&&e.version<n.version&&a(t)}else a(t);return r.get(t)}}}(h,w,v),x=new function(t,e,n,i){var r=new WeakMap;return{update:function(t){var o=i.render.frame,a=t.geometry,s=e.get(t,a);return r.get(s)!==o&&(a.isGeometry&&s.updateFromObject(t),e.update(s),r.set(s,o)),t.isInstancedMesh&&n.update(t.instanceMatrix,34962),s},dispose:function(){r=new WeakMap}}}(h,S,w,v),O=new function(t){var e={},n=new Float32Array(8);return{update:function(i,r,o,a){var s=i.morphTargetInfluences,c=void 0===s?0:s.length,l=e[r.id];if(void 0===l){l=[];for(var u=0;u<c;u++)l[u]=[u,0];e[r.id]=l}var d=o.morphTargets&&r.morphAttributes.position,p=o.morphNormals&&r.morphAttributes.normal;for(u=0;u<c;u++)0!==(f=l[u])[1]&&(d&&r.deleteAttribute("morphTarget"+u),p&&r.deleteAttribute("morphNormal"+u));for(u=0;u<c;u++)(f=l[u])[0]=u,f[1]=s[u];l.sort(Ho);var h=0;for(u=0;u<8;u++){var f;if(f=l[u]){var g=f[0],m=f[1];if(m){d&&r.setAttribute("morphTarget"+u,d[g]),p&&r.setAttribute("morphNormal"+u,p[g]),n[u]=m,h+=m;continue}}n[u]=0}var v=r.morphTargetsRelative?1:1-h;a.getUniforms().setValue(t,"morphTargetBaseInfluence",v),a.getUniforms().setValue(t,"morphTargetInfluences",n)}}}(h),M=new ss(k,f,g),E=new function(){var t=new WeakMap;function e(n){var i=n.target;i.removeEventListener("dispose",e),t.delete(i)}return{get:function(n,i){var r,o=t.get(n);return void 0===o?(r=new us,t.set(n,new WeakMap),t.get(n).set(i,r),n.addEventListener("dispose",e)):void 0===(r=o.get(i))&&(r=new us,o.set(i,r)),r},dispose:function(){t=new WeakMap}}},A=new function(){var t=new WeakMap;function e(n){var i=n.target;i.removeEventListener("dispose",e),t.delete(i)}return{get:function(n,i){var r;return!1===t.has(n)?(r=new fs,t.set(n,new WeakMap),t.get(n).set(i,r),n.addEventListener("dispose",e)):!1===t.get(n).has(i)?(r=new fs,t.get(n).set(i,r)):r=t.get(n).get(i),r},dispose:function(){t=new WeakMap}}},T=new Go(k,m,x,s),_=new function(t,e,n,i){var r,o=i.isWebGL2;this.setMode=function(t){r=t},this.render=function(e,i){t.drawArrays(r,e,i),n.update(i,r)},this.renderInstances=function(i,a,s,c){if(0!==c){var l,u;if(o)l=t,u="drawArraysInstanced";else if(u="drawArraysInstancedANGLE",null===(l=e.get("ANGLE_instanced_arrays")))return void console.error("THREE.WebGLBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.");l[u](r,a,s,c),n.update(s,r,c)}}}(h,f,v,g),P=new function(t,e,n,i){var r,o,a,s=i.isWebGL2;this.setMode=function(t){r=t},this.setIndex=function(t){o=t.type,a=t.bytesPerElement},this.render=function(e,i){t.drawElements(r,i,o,e*a),n.update(i,r)},this.renderInstances=function(i,c,l,u){if(0!==u){var d,p;if(s)d=t,p="drawElementsInstanced";else if(p="drawElementsInstancedANGLE",null===(d=e.get("ANGLE_instanced_arrays")))return void console.error("THREE.WebGLIndexedBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.");d[p](r,l,o,c*a,u),n.update(l,r,u)}}}(h,f,v,g),v.programs=M.programs,k.capabilities=g,k.extensions=f,k.properties=y,k.renderLists=E,k.state=m,k.info=v}ct();var ut=new Ms(k,h);this.xr=ut;var dt=new vs(k,x,g.maxTextureSize);function pt(t){t.preventDefault(),console.log("THREE.WebGLRenderer: Context Lost."),D=!0}function ht(){console.log("THREE.WebGLRenderer: Context Restored."),D=!1,ct()}function ft(t){var e=t.target;e.removeEventListener("dispose",ft),function(t){gt(t),y.remove(t)}(e)}function gt(t){var e=y.get(t).program;t.program=void 0,void 0!==e&&M.releaseProgram(e)}this.shadowMap=dt,this.getContext=function(){return h},this.getContextAttributes=function(){return h.getContextAttributes()},this.forceContextLoss=function(){var t=f.get("WEBGL_lose_context");t&&t.loseContext()},this.forceContextRestore=function(){var t=f.get("WEBGL_lose_context");t&&t.restoreContext()},this.getPixelRatio=function(){return X},this.setPixelRatio=function(t){void 0!==t&&(X=t,this.setSize(q,K,!1))},this.getSize=function(t){return void 0===t&&(console.warn("WebGLRenderer: .getsize() now requires a Vector2 as an argument"),t=new Xn),t.set(q,K)},this.setSize=function(t,n,i){ut.isPresenting?console.warn("THREE.WebGLRenderer: Can't change size while VR device is presenting."):(q=t,K=n,e.width=Math.floor(t*X),e.height=Math.floor(n*X),!1!==i&&(e.style.width=t+"px",e.style.height=n+"px"),this.setViewport(0,0,t,n))},this.getDrawingBufferSize=function(t){return void 0===t&&(console.warn("WebGLRenderer: .getdrawingBufferSize() now requires a Vector2 as an argument"),t=new Xn),t.set(q*X,K*X).floor()},this.setDrawingBufferSize=function(t,n,i){q=t,K=n,X=i,e.width=Math.floor(t*i),e.height=Math.floor(n*i),this.setViewport(0,0,t,n)},this.getCurrentViewport=function(t){return void 0===t&&(console.warn("WebGLRenderer: .getCurrentViewport() now requires a Vector4 as an argument"),t=new $n),t.copy(G)},this.getViewport=function(t){return t.copy(J)},this.setViewport=function(t,e,n,i){t.isVector4?J.set(t.x,t.y,t.z,t.w):J.set(t,e,n,i),m.viewport(G.copy(J).multiplyScalar(X).floor())},this.getScissor=function(t){return t.copy(Q)},this.setScissor=function(t,e,n,i){t.isVector4?Q.set(t.x,t.y,t.z,t.w):Q.set(t,e,n,i),m.scissor(H.copy(Q).multiplyScalar(X).floor())},this.getScissorTest=function(){return $},this.setScissorTest=function(t){m.setScissorTest($=t)},this.setOpaqueSort=function(t){Y=t},this.setTransparentSort=function(t){Z=t},this.getClearColor=function(){return T.getClearColor()},this.setClearColor=function(){T.setClearColor.apply(T,arguments)},this.getClearAlpha=function(){return T.getClearAlpha()},this.setClearAlpha=function(){T.setClearAlpha.apply(T,arguments)},this.clear=function(t,e,n){var i=0;(void 0===t||t)&&(i|=16384),(void 0===e||e)&&(i|=256),(void 0===n||n)&&(i|=1024),h.clear(i)},this.clearColor=function(){this.clear(!0,!1,!1)},this.clearDepth=function(){this.clear(!1,!0,!1)},this.clearStencil=function(){this.clear(!1,!1,!0)},this.dispose=function(){e.removeEventListener("webglcontextlost",pt,!1),e.removeEventListener("webglcontextrestored",ht,!1),E.dispose(),A.dispose(),y.dispose(),x.dispose(),ut.dispose(),yt.stop(),this.forceContextLoss()},this.renderBufferImmediate=function(t,e){m.initAttributes();var n=y.get(t);t.hasPositions&&!n.position&&(n.position=h.createBuffer()),t.hasNormals&&!n.normal&&(n.normal=h.createBuffer()),t.hasUvs&&!n.uv&&(n.uv=h.createBuffer()),t.hasColors&&!n.color&&(n.color=h.createBuffer());var i=e.getAttributes();t.hasPositions&&(h.bindBuffer(34962,n.position),h.bufferData(34962,t.positionArray,35048),m.enableAttribute(i.position),h.vertexAttribPointer(i.position,3,5126,!1,0,0)),t.hasNormals&&(h.bindBuffer(34962,n.normal),h.bufferData(34962,t.normalArray,35048),m.enableAttribute(i.normal),h.vertexAttribPointer(i.normal,3,5126,!1,0,0)),t.hasUvs&&(h.bindBuffer(34962,n.uv),h.bufferData(34962,t.uvArray,35048),m.enableAttribute(i.uv),h.vertexAttribPointer(i.uv,2,5126,!1,0,0)),t.hasColors&&(h.bindBuffer(34962,n.color),h.bufferData(34962,t.colorArray,35048),m.enableAttribute(i.color),h.vertexAttribPointer(i.color,3,5126,!1,0,0)),m.disableUnusedAttributes(),h.drawArrays(4,0,t.count),t.count=0};var mt=new ki;this.renderBufferDirect=function(t,e,n,i,r,o){null===e&&(e=mt);var a=r.isMesh&&r.matrixWorld.determinant()<0,s=xt(t,e,i,r);m.setMaterial(i,a);var c=!1;U.geometry===n.id&&U.program===s.id&&U.wireframe===(!0===i.wireframe)||(U.geometry=n.id,U.program=s.id,U.wireframe=!0===i.wireframe,c=!0),(i.morphTargets||i.morphNormals)&&(O.update(r,n,i,s),c=!0);var l=n.index,u=n.attributes.position;if(null===l){if(void 0===u||0===u.count)return}else if(0===l.count)return;var d,p=1;!0===i.wireframe&&(l=S.getWireframeAttribute(n),p=2);var v=_;null!==l&&(d=w.get(l),(v=P).setIndex(d)),c&&(function(t,e,n,i){if(!1!==g.isWebGL2||!t.isInstancedMesh&&!e.isInstancedBufferGeometry||null!==f.get("ANGLE_instanced_arrays")){m.initAttributes();var r=e.attributes,o=i.getAttributes(),a=n.defaultAttributeValues;for(var s in o){var c=o[s];if(c>=0){var l=r[s];if(void 0!==l){var u=l.normalized,d=l.itemSize;if(void 0===(M=w.get(l)))continue;var p=M.buffer,v=M.type,y=M.bytesPerElement;if(l.isInterleavedBufferAttribute){var b=l.data,S=b.stride,x=l.offset;b&&b.isInstancedInterleavedBuffer?(m.enableAttributeAndDivisor(c,b.meshPerAttribute),void 0===e.maxInstancedCount&&(e.maxInstancedCount=b.meshPerAttribute*b.count)):m.enableAttribute(c),h.bindBuffer(34962,p),h.vertexAttribPointer(c,d,v,u,S*y,x*y)}else l.isInstancedBufferAttribute?(m.enableAttributeAndDivisor(c,l.meshPerAttribute),void 0===e.maxInstancedCount&&(e.maxInstancedCount=l.meshPerAttribute*l.count)):m.enableAttribute(c),h.bindBuffer(34962,p),h.vertexAttribPointer(c,d,v,u,0,0)}else if("instanceMatrix"===s){var M;if(void 0===(M=w.get(t.instanceMatrix)))continue;p=M.buffer,v=M.type,m.enableAttributeAndDivisor(c+0,1),m.enableAttributeAndDivisor(c+1,1),m.enableAttributeAndDivisor(c+2,1),m.enableAttributeAndDivisor(c+3,1),h.bindBuffer(34962,p),h.vertexAttribPointer(c+0,4,v,!1,64,0),h.vertexAttribPointer(c+1,4,v,!1,64,16),h.vertexAttribPointer(c+2,4,v,!1,64,32),h.vertexAttribPointer(c+3,4,v,!1,64,48)}else if(void 0!==a){var E=a[s];if(void 0!==E)switch(E.length){case 2:h.vertexAttrib2fv(c,E);break;case 3:h.vertexAttrib3fv(c,E);break;case 4:h.vertexAttrib4fv(c,E);break;default:h.vertexAttrib1fv(c,E)}}}}m.disableUnusedAttributes()}}(r,n,i,s),null!==l&&h.bindBuffer(34963,d.buffer));var y=null!==l?l.count:u.count,b=n.drawRange.start*p,x=n.drawRange.count*p,M=null!==o?o.start*p:0,E=null!==o?o.count*p:1/0,C=Math.max(b,M),A=Math.min(y,b+x,M+E)-1,T=Math.max(0,A-C+1);if(0!==T){if(r.isMesh)!0===i.wireframe?(m.setLineWidth(i.wireframeLinewidth*at()),v.setMode(1)):v.setMode(4);else if(r.isLine){var I=i.linewidth;void 0===I&&(I=1),m.setLineWidth(I*at()),r.isLineSegments?v.setMode(1):r.isLineLoop?v.setMode(2):v.setMode(3)}else r.isPoints?v.setMode(0):r.isSprite&&v.setMode(4);r.isInstancedMesh?v.renderInstances(n,C,T,r.count):n.isInstancedBufferGeometry?v.renderInstances(n,C,T,n.maxInstancedCount):v.render(C,T)}},this.compile=function(t,e){(p=A.get(t,e)).init(),t.traverse(function(t){t.isLight&&(p.pushLight(t),t.castShadow&&p.pushShadow(t))}),p.setupLights(e);var n={};t.traverse(function(e){if(e.material)if(Array.isArray(e.material))for(var i=0;i<e.material.length;i++)e.material[i].uuid in n==0&&(St(e.material[i],t,e),n[e.material[i].uuid]=!0);else e.material.uuid in n==0&&(St(e.material,t,e),n[e.material.uuid]=!0)})};var vt=null,yt=new Vo;function bt(t,e,n,i){for(var r=0,o=t.length;r<o;r++){var a=t[r],s=a.object,c=a.geometry,l=void 0===i?a.material:i,u=a.group;if(n.isArrayCamera){z=n;for(var d=n.cameras,h=0,f=d.length;h<f;h++){var g=d[h];s.layers.test(g.layers)&&(m.viewport(G.copy(g.viewport)),p.setupLights(g),wt(s,e,g,c,l,u))}}else z=null,wt(s,e,n,c,l,u)}}function wt(t,e,n,i,r,o){if(t.onBeforeRender(k,e,n,i,r,o),p=A.get(e,z||n),t.modelViewMatrix.multiplyMatrices(n.matrixWorldInverse,t.matrixWorld),t.normalMatrix.getNormalMatrix(t.modelViewMatrix),t.isImmediateRenderObject){var a=xt(n,e,r,t);m.setMaterial(r),U.geometry=null,U.program=null,U.wireframe=!1,function(t,e){t.render(function(t){k.renderBufferImmediate(t,e)})}(t,a)}else k.renderBufferDirect(n,e,i,r,t,o);t.onAfterRender(k,e,n,i,r,o),p=A.get(e,z||n)}function St(t,e,n){var i=y.get(t),r=p.state.lights,o=p.state.shadowsArray,a=r.state.version,s=M.getParameters(t,r.state,o,e,et.numPlanes,et.numIntersection,n),c=M.getProgramCacheKey(s),l=i.program,u=!0;if(void 0===l)t.addEventListener("dispose",ft);else if(l.cacheKey!==c)gt(t);else if(i.lightsStateVersion!==a)i.lightsStateVersion=a,u=!1;else{if(void 0!==s.shaderID)return;u=!1}u&&(l=M.acquireProgram(s,c),i.program=l,i.uniforms=s.uniforms,i.environment=t.isMeshStandardMaterial?e.environment:null,i.outputEncoding=k.outputEncoding,t.program=l);var d=l.getAttributes();if(t.morphTargets){t.numSupportedMorphTargets=0;for(var h=0;h<k.maxMorphTargets;h++)d["morphTarget"+h]>=0&&t.numSupportedMorphTargets++}if(t.morphNormals)for(t.numSupportedMorphNormals=0,h=0;h<k.maxMorphNormals;h++)d["morphNormal"+h]>=0&&t.numSupportedMorphNormals++;var f=i.uniforms;(t.isShaderMaterial||t.isRawShaderMaterial)&&!0!==t.clipping||(i.numClippingPlanes=et.numPlanes,i.numIntersection=et.numIntersection,f.clippingPlanes=et.uniform),i.fog=e.fog,i.needsLights=function(t){return t.isMeshLambertMaterial||t.isMeshToonMaterial||t.isMeshPhongMaterial||t.isMeshStandardMaterial||t.isShadowMaterial||t.isShaderMaterial&&!0===t.lights}(t),i.lightsStateVersion=a,i.needsLights&&(f.ambientLightColor.value=r.state.ambient,f.lightProbe.value=r.state.probe,f.directionalLights.value=r.state.directional,f.directionalLightShadows.value=r.state.directionalShadow,f.spotLights.value=r.state.spot,f.spotLightShadows.value=r.state.spotShadow,f.rectAreaLights.value=r.state.rectArea,f.pointLights.value=r.state.point,f.pointLightShadows.value=r.state.pointShadow,f.hemisphereLights.value=r.state.hemi,f.directionalShadowMap.value=r.state.directionalShadowMap,f.directionalShadowMatrix.value=r.state.directionalShadowMatrix,f.spotShadowMap.value=r.state.spotShadowMap,f.spotShadowMatrix.value=r.state.spotShadowMatrix,f.pointShadowMap.value=r.state.pointShadowMap,f.pointShadowMatrix.value=r.state.pointShadowMatrix);var g=i.program.getUniforms(),m=za.seqWithValue(g.seq,f);i.uniformsList=m}function xt(t,e,n,i){b.resetTextureUnits();var r=e.fog,o=n.isMeshStandardMaterial?e.environment:null,a=y.get(n),s=p.state.lights;if(nt&&(it||t!==B)){var c=t===B&&n.id===F;et.setState(n.clippingPlanes,n.clipIntersection,n.clipShadows,t,a,c)}n.version===a.__version?void 0===a.program||n.fog&&a.fog!==r||a.environment!==o||a.needsLights&&a.lightsStateVersion!==s.state.version?St(n,e,i):void 0===a.numClippingPlanes||a.numClippingPlanes===et.numPlanes&&a.numIntersection===et.numIntersection?a.outputEncoding!==k.outputEncoding&&St(n,e,i):St(n,e,i):(St(n,e,i),a.__version=n.version);var l,u,d=!1,f=!1,v=!1,w=a.program,S=w.getUniforms(),x=a.uniforms;if(m.useProgram(w.program)&&(d=!0,f=!0,v=!0),n.id!==F&&(F=n.id,f=!0),d||B!==t){if(S.setValue(h,"projectionMatrix",t.projectionMatrix),g.logarithmicDepthBuffer&&S.setValue(h,"logDepthBufFC",2/(Math.log(t.far+1)/Math.LN2)),B!==t&&(B=t,f=!0,v=!0),n.isShaderMaterial||n.isMeshPhongMaterial||n.isMeshToonMaterial||n.isMeshStandardMaterial||n.envMap){var M=S.map.cameraPosition;void 0!==M&&M.setValue(h,ot.setFromMatrixPosition(t.matrixWorld))}(n.isMeshPhongMaterial||n.isMeshToonMaterial||n.isMeshLambertMaterial||n.isMeshBasicMaterial||n.isMeshStandardMaterial||n.isShaderMaterial)&&S.setValue(h,"isOrthographic",!0===t.isOrthographicCamera),(n.isMeshPhongMaterial||n.isMeshToonMaterial||n.isMeshLambertMaterial||n.isMeshBasicMaterial||n.isMeshStandardMaterial||n.isShaderMaterial||n.skinning)&&S.setValue(h,"viewMatrix",t.matrixWorldInverse)}if(n.skinning){S.setOptional(h,i,"bindMatrix"),S.setOptional(h,i,"bindMatrixInverse");var E=i.skeleton;if(E){var A=E.bones;if(g.floatVertexTextures){if(void 0===E.boneTexture){var T=Math.sqrt(4*A.length);T=Kn.ceilPowerOfTwo(T),T=Math.max(T,4);var O=new Float32Array(T*T*4);O.set(E.boneMatrices);var _=new Do(O,T,T,Yt,Bt);E.boneMatrices=O,E.boneTexture=_,E.boneTextureSize=T}S.setValue(h,"boneTexture",E.boneTexture,b),S.setValue(h,"boneTextureSize",E.boneTextureSize)}else S.setOptional(h,E,"boneMatrices")}}return(f||a.receiveShadow!==i.receiveShadow)&&(a.receiveShadow=i.receiveShadow,S.setValue(h,"receiveShadow",i.receiveShadow)),f&&(S.setValue(h,"toneMappingExposure",k.toneMappingExposure),S.setValue(h,"toneMappingWhitePoint",k.toneMappingWhitePoint),a.needsLights&&(u=v,(l=x).ambientLightColor.needsUpdate=u,l.lightProbe.needsUpdate=u,l.directionalLights.needsUpdate=u,l.directionalLightShadows.needsUpdate=u,l.pointLights.needsUpdate=u,l.pointLightShadows.needsUpdate=u,l.spotLights.needsUpdate=u,l.spotLightShadows.needsUpdate=u,l.rectAreaLights.needsUpdate=u,l.hemisphereLights.needsUpdate=u),r&&n.fog&&function(t,e){t.fogColor.value.copy(e.color),e.isFog?(t.fogNear.value=e.near,t.fogFar.value=e.far):e.isFogExp2&&(t.fogDensity.value=e.density)}(x,r),n.isMeshBasicMaterial?Mt(x,n):n.isMeshLambertMaterial?(Mt(x,n),function(t,e){e.emissiveMap&&(t.emissiveMap.value=e.emissiveMap)}(x,n)):n.isMeshToonMaterial?(Mt(x,n),function(t,e){t.specular.value.copy(e.specular),t.shininess.value=Math.max(e.shininess,1e-4),e.gradientMap&&(t.gradientMap.value=e.gradientMap),e.emissiveMap&&(t.emissiveMap.value=e.emissiveMap),e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,e.side===C&&(t.bumpScale.value*=-1)),e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),e.side===C&&t.normalScale.value.negate()),e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(x,n)):n.isMeshPhongMaterial?(Mt(x,n),function(t,e){t.specular.value.copy(e.specular),t.shininess.value=Math.max(e.shininess,1e-4),e.emissiveMap&&(t.emissiveMap.value=e.emissiveMap),e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,e.side===C&&(t.bumpScale.value*=-1)),e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),e.side===C&&t.normalScale.value.negate()),e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(x,n)):n.isMeshStandardMaterial?(Mt(x,n,o),n.isMeshPhysicalMaterial?function(t,e,n){Et(t,e,o),t.reflectivity.value=e.reflectivity,t.clearcoat.value=e.clearcoat,t.clearcoatRoughness.value=e.clearcoatRoughness,e.sheen&&t.sheen.value.copy(e.sheen),e.clearcoatMap&&(t.clearcoatMap.value=e.clearcoatMap),e.clearcoatRoughnessMap&&(t.clearcoatRoughnessMap.value=e.clearcoatRoughnessMap),e.clearcoatNormalMap&&(t.clearcoatNormalScale.value.copy(e.clearcoatNormalScale),t.clearcoatNormalMap.value=e.clearcoatNormalMap,e.side===C&&t.clearcoatNormalScale.value.negate()),t.transparency.value=e.transparency}(x,n):Et(x,n,o)):n.isMeshMatcapMaterial?(Mt(x,n),function(t,e){e.matcap&&(t.matcap.value=e.matcap),e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,e.side===C&&(t.bumpScale.value*=-1)),e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),e.side===C&&t.normalScale.value.negate()),e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(x,n)):n.isMeshDepthMaterial?(Mt(x,n),function(t,e){e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(x,n)):n.isMeshDistanceMaterial?(Mt(x,n),function(t,e){e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias),t.referencePosition.value.copy(e.referencePosition),t.nearDistance.value=e.nearDistance,t.farDistance.value=e.farDistance}(x,n)):n.isMeshNormalMaterial?(Mt(x,n),function(t,e){e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,e.side===C&&(t.bumpScale.value*=-1)),e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),e.side===C&&t.normalScale.value.negate()),e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(x,n)):n.isLineBasicMaterial?(function(t,e){t.diffuse.value.copy(e.color),t.opacity.value=e.opacity}(x,n),n.isLineDashedMaterial&&function(t,e){t.dashSize.value=e.dashSize,t.totalSize.value=e.dashSize+e.gapSize,t.scale.value=e.scale}(x,n)):n.isPointsMaterial?function(t,e){var n;t.diffuse.value.copy(e.color),t.opacity.value=e.opacity,t.size.value=e.size*X,t.scale.value=.5*K,e.map&&(t.map.value=e.map),e.alphaMap&&(t.alphaMap.value=e.alphaMap),e.map?n=e.map:e.alphaMap&&(n=e.alphaMap),void 0!==n&&(!0===n.matrixAutoUpdate&&n.updateMatrix(),t.uvTransform.value.copy(n.matrix))}(x,n):n.isSpriteMaterial?function(t,e){var n;t.diffuse.value.copy(e.color),t.opacity.value=e.opacity,t.rotation.value=e.rotation,e.map&&(t.map.value=e.map),e.alphaMap&&(t.alphaMap.value=e.alphaMap),e.map?n=e.map:e.alphaMap&&(n=e.alphaMap),void 0!==n&&(!0===n.matrixAutoUpdate&&n.updateMatrix(),t.uvTransform.value.copy(n.matrix))}(x,n):n.isShadowMaterial&&(x.color.value.copy(n.color),x.opacity.value=n.opacity),void 0!==x.ltc_1&&(x.ltc_1.value=jo.LTC_1),void 0!==x.ltc_2&&(x.ltc_2.value=jo.LTC_2),za.upload(h,a.uniformsList,x,b),n.isShaderMaterial&&(n.uniformsNeedUpdate=!1)),n.isShaderMaterial&&!0===n.uniformsNeedUpdate&&(za.upload(h,a.uniformsList,x,b),n.uniformsNeedUpdate=!1),n.isSpriteMaterial&&S.setValue(h,"center",i.center),S.setValue(h,"modelViewMatrix",i.modelViewMatrix),S.setValue(h,"normalMatrix",i.normalMatrix),S.setValue(h,"modelMatrix",i.matrixWorld),w}function Mt(t,e,n){t.opacity.value=e.opacity,e.color&&t.diffuse.value.copy(e.color),e.emissive&&t.emissive.value.copy(e.emissive).multiplyScalar(e.emissiveIntensity),e.map&&(t.map.value=e.map),e.alphaMap&&(t.alphaMap.value=e.alphaMap),e.specularMap&&(t.specularMap.value=e.specularMap);var i,r,o=e.envMap||n;o&&(t.envMap.value=o,t.flipEnvMap.value=o.isCubeTexture?-1:1,t.reflectivity.value=e.reflectivity,t.refractionRatio.value=e.refractionRatio,t.maxMipLevel.value=y.get(o).__maxMipLevel),e.lightMap&&(t.lightMap.value=e.lightMap,t.lightMapIntensity.value=e.lightMapIntensity),e.aoMap&&(t.aoMap.value=e.aoMap,t.aoMapIntensity.value=e.aoMapIntensity),e.map?i=e.map:e.specularMap?i=e.specularMap:e.displacementMap?i=e.displacementMap:e.normalMap?i=e.normalMap:e.bumpMap?i=e.bumpMap:e.roughnessMap?i=e.roughnessMap:e.metalnessMap?i=e.metalnessMap:e.alphaMap?i=e.alphaMap:e.emissiveMap&&(i=e.emissiveMap),void 0!==i&&(i.isWebGLRenderTarget&&(i=i.texture),!0===i.matrixAutoUpdate&&i.updateMatrix(),t.uvTransform.value.copy(i.matrix)),e.aoMap?r=e.aoMap:e.lightMap&&(r=e.lightMap),void 0!==r&&(r.isWebGLRenderTarget&&(r=r.texture),!0===r.matrixAutoUpdate&&r.updateMatrix(),t.uv2Transform.value.copy(r.matrix))}function Et(t,e,n){t.roughness.value=e.roughness,t.metalness.value=e.metalness,e.roughnessMap&&(t.roughnessMap.value=e.roughnessMap),e.metalnessMap&&(t.metalnessMap.value=e.metalnessMap),e.emissiveMap&&(t.emissiveMap.value=e.emissiveMap),e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,e.side===C&&(t.bumpScale.value*=-1)),e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),e.side===C&&t.normalScale.value.negate()),e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias),(e.envMap||n)&&(t.envMapIntensity.value=e.envMapIntensity)}yt.setAnimationLoop(function(t){ut.isPresenting||vt&&vt(t)}),"undefined"!=typeof window&&yt.setContext(window),this.setAnimationLoop=function(t){vt=t,ut.setAnimationLoop(t),yt.start()},this.render=function(t,e){var n,i;if(void 0!==arguments[2]&&(console.warn("THREE.WebGLRenderer.render(): the renderTarget argument has been removed. Use .setRenderTarget() instead."),n=arguments[2]),void 0!==arguments[3]&&(console.warn("THREE.WebGLRenderer.render(): the forceClear argument has been removed. Use .clear() instead."),i=arguments[3]),e&&e.isCamera){if(!D){U.geometry=null,U.program=null,U.wireframe=!1,F=-1,B=null,!0===t.autoUpdate&&t.updateMatrixWorld(),null===e.parent&&e.updateMatrixWorld(),ut.enabled&&ut.isPresenting&&(e=ut.getCamera(e)),(p=A.get(t,e)).init(),t.onBeforeRender(k,t,e,n||j),rt.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),tt.setFromProjectionMatrix(rt),it=this.localClippingEnabled,nt=et.init(this.clippingPlanes,it,e),(d=E.get(t,e)).init(),function t(e,n,i,r){if(!1!==e.visible){if(e.layers.test(n.layers))if(e.isGroup)i=e.renderOrder;else if(e.isLOD)!0===e.autoUpdate&&e.update(n);else if(e.isLight)p.pushLight(e),e.castShadow&&p.pushShadow(e);else if(e.isSprite){if(!e.frustumCulled||tt.intersectsSprite(e)){r&&ot.setFromMatrixPosition(e.matrixWorld).applyMatrix4(rt);var o=x.update(e);(a=e.material).visible&&d.push(e,o,a,i,ot.z,null)}}else if(e.isImmediateRenderObject)r&&ot.setFromMatrixPosition(e.matrixWorld).applyMatrix4(rt),d.push(e,null,e.material,i,ot.z,null);else if((e.isMesh||e.isLine||e.isPoints)&&(e.isSkinnedMesh&&e.skeleton.frame!==v.render.frame&&(e.skeleton.update(),e.skeleton.frame=v.render.frame),!e.frustumCulled||tt.intersectsObject(e))){r&&ot.setFromMatrixPosition(e.matrixWorld).applyMatrix4(rt),o=x.update(e);var a=e.material;if(Array.isArray(a))for(var s=o.groups,c=0,l=s.length;c<l;c++){var u=s[c],h=a[u.materialIndex];h&&h.visible&&d.push(e,o,h,i,ot.z,u)}else a.visible&&d.push(e,o,a,i,ot.z,null)}var f=e.children;for(c=0,l=f.length;c<l;c++)t(f[c],n,i,r)}}(t,e,0,k.sortObjects),d.finish(),!0===k.sortObjects&&d.sort(Y,Z),nt&&et.beginShadows();var r=p.state.shadowsArray;dt.render(r,t,e),p.setupLights(e),nt&&et.endShadows(),this.info.autoReset&&this.info.reset(),void 0!==n&&this.setRenderTarget(n),T.render(d,t,e,i);var o=d.opaque,a=d.transparent;if(t.overrideMaterial){var s=t.overrideMaterial;o.length&&bt(o,t,e,s),a.length&&bt(a,t,e,s)}else o.length&&bt(o,t,e),a.length&&bt(a,t,e);t.onAfterRender(k,t,e),null!==j&&(b.updateRenderTargetMipmap(j),b.updateMultisampleRenderTarget(j)),m.buffers.depth.setTest(!0),m.buffers.depth.setMask(!0),m.buffers.color.setMask(!0),m.setPolygonOffset(!1),d=null,p=null}}else console.error("THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.")},this.setFramebuffer=function(t){R!==t&&null===j&&h.bindFramebuffer(36160,t),R=t},this.getActiveCubeFace=function(){return L},this.getActiveMipmapLevel=function(){return N},this.getRenderTarget=function(){return j},this.setRenderTarget=function(t,e,n){j=t,L=e,N=n,t&&void 0===y.get(t).__webglFramebuffer&&b.setupRenderTarget(t);var i=R,r=!1;if(t){var o=y.get(t).__webglFramebuffer;t.isWebGLCubeRenderTarget?(i=o[e||0],r=!0):i=t.isWebGLMultisampleRenderTarget?y.get(t).__webglMultisampledFramebuffer:o,G.copy(t.viewport),H.copy(t.scissor),W=t.scissorTest}else G.copy(J).multiplyScalar(X).floor(),H.copy(Q).multiplyScalar(X).floor(),W=$;if(V!==i&&(h.bindFramebuffer(36160,i),V=i),m.viewport(G),m.scissor(H),m.setScissorTest(W),r){var a=y.get(t.texture);h.framebufferTexture2D(36160,36064,34069+(e||0),a.__webglTexture,n||0)}},this.readRenderTargetPixels=function(t,e,n,i,r,o,a){if(t&&t.isWebGLRenderTarget){var s=y.get(t).__webglFramebuffer;if(t.isWebGLCubeRenderTarget&&void 0!==a&&(s=s[a]),s){var c=!1;s!==V&&(h.bindFramebuffer(36160,s),c=!0);try{var l=t.texture,u=l.format,d=l.type;if(u!==Yt&&I.convert(u)!==h.getParameter(35739))return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.");if(!(d===Lt||I.convert(d)===h.getParameter(35738)||d===Bt&&(g.isWebGL2||f.get("OES_texture_float")||f.get("WEBGL_color_buffer_float"))||d===zt&&(g.isWebGL2?f.get("EXT_color_buffer_float"):f.get("EXT_color_buffer_half_float"))))return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.");36053===h.checkFramebufferStatus(36160)?e>=0&&e<=t.width-i&&n>=0&&n<=t.height-r&&h.readPixels(e,n,i,r,I.convert(u),I.convert(d),o):console.error("THREE.WebGLRenderer.readRenderTargetPixels: readPixels from renderTarget failed. Framebuffer not complete.")}finally{c&&h.bindFramebuffer(36160,V)}}}else console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.")},this.copyFramebufferToTexture=function(t,e,n){void 0===n&&(n=0);var i=Math.pow(2,-n),r=Math.floor(e.image.width*i),o=Math.floor(e.image.height*i),a=I.convert(e.format);b.setTexture2D(e,0),h.copyTexImage2D(3553,n,a,t.x,t.y,r,o,0),m.unbindTexture()},this.copyTextureToTexture=function(t,e,n,i){var r=e.image.width,o=e.image.height,a=I.convert(n.format),s=I.convert(n.type);b.setTexture2D(n,0),e.isDataTexture?h.texSubImage2D(3553,i||0,t.x,t.y,r,o,a,s,e.image.data):h.texSubImage2D(3553,i||0,t.x,t.y,a,s,e.image),m.unbindTexture()},this.initTexture=function(t){b.setTexture2D(t,0),m.unbindTexture()},"undefined"!=typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe",{detail:this}))}function Cs(t,e){this.name="",this.color=new xr(t),this.density=void 0!==e?e:25e-5}function As(t,e,n){this.name="",this.color=new xr(t),this.near=void 0!==e?e:1,this.far=void 0!==n?n:1e3}function Ts(t,e){this.array=t,this.stride=e,this.count=void 0!==t?t.length/e:0,this.usage=Rn,this.updateRange={offset:0,count:-1},this.version=0}gs.prototype=Object.create(Or.prototype),gs.prototype.constructor=gs,gs.prototype.isMeshDepthMaterial=!0,gs.prototype.copy=function(t){return Or.prototype.copy.call(this,t),this.depthPacking=t.depthPacking,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this},ms.prototype=Object.create(Or.prototype),ms.prototype.constructor=ms,ms.prototype.isMeshDistanceMaterial=!0,ms.prototype.copy=function(t){return Or.prototype.copy.call(this,t),this.referencePosition.copy(t.referencePosition),this.nearDistance=t.nearDistance,this.farDistance=t.farDistance,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this},Ss.prototype=Object.assign(Object.create(Po.prototype),{constructor:Ss,isArrayCamera:!0}),xs.prototype=Object.assign(Object.create(Ii.prototype),{constructor:xs,isGroup:!0}),Object.assign(Ms.prototype,Gn.prototype),Object.assign(Cs.prototype,{isFogExp2:!0,clone:function(){return new Cs(this.color,this.density)},toJSON:function(){return{type:"FogExp2",color:this.color.getHex(),density:this.density}}}),Object.assign(As.prototype,{isFog:!0,clone:function(){return new As(this.color,this.near,this.far)},toJSON:function(){return{type:"Fog",color:this.color.getHex(),near:this.near,far:this.far}}}),Object.defineProperty(Ts.prototype,"needsUpdate",{set:function(t){!0===t&&this.version++}}),Object.assign(Ts.prototype,{isInterleavedBuffer:!0,onUploadCallback:function(){},setUsage:function(t){return this.usage=t,this},copy:function(t){return this.array=new t.array.constructor(t.array),this.count=t.count,this.stride=t.stride,this.usage=t.usage,this},copyAt:function(t,e,n){t*=this.stride,n*=e.stride;for(var i=0,r=this.stride;i<r;i++)this.array[t+i]=e.array[n+i];return this},set:function(t,e){return void 0===e&&(e=0),this.array.set(t,e),this},clone:function(){return(new this.constructor).copy(this)},onUpload:function(t){return this.onUploadCallback=t,this}});var Os,_s=new oi;function Ps(t,e,n,i){this.data=t,this.itemSize=e,this.offset=n,this.normalized=!0===i}function Is(t){Or.call(this),this.type="SpriteMaterial",this.color=new xr(16777215),this.map=null,this.alphaMap=null,this.rotation=0,this.sizeAttenuation=!0,this.transparent=!0,this.setValues(t)}Object.defineProperties(Ps.prototype,{count:{get:function(){return this.data.count}},array:{get:function(){return this.data.array}}}),Object.assign(Ps.prototype,{isInterleavedBufferAttribute:!0,applyMatrix4:function(t){for(var e=0,n=this.data.count;e<n;e++)_s.x=this.getX(e),_s.y=this.getY(e),_s.z=this.getZ(e),_s.applyMatrix4(t),this.setXYZ(e,_s.x,_s.y,_s.z);return this},setX:function(t,e){return this.data.array[t*this.data.stride+this.offset]=e,this},setY:function(t,e){return this.data.array[t*this.data.stride+this.offset+1]=e,this},setZ:function(t,e){return this.data.array[t*this.data.stride+this.offset+2]=e,this},setW:function(t,e){return this.data.array[t*this.data.stride+this.offset+3]=e,this},getX:function(t){return this.data.array[t*this.data.stride+this.offset]},getY:function(t){return this.data.array[t*this.data.stride+this.offset+1]},getZ:function(t){return this.data.array[t*this.data.stride+this.offset+2]},getW:function(t){return this.data.array[t*this.data.stride+this.offset+3]},setXY:function(t,e,n){return t=t*this.data.stride+this.offset,this.data.array[t+0]=e,this.data.array[t+1]=n,this},setXYZ:function(t,e,n,i){return t=t*this.data.stride+this.offset,this.data.array[t+0]=e,this.data.array[t+1]=n,this.data.array[t+2]=i,this},setXYZW:function(t,e,n,i,r){return t=t*this.data.stride+this.offset,this.data.array[t+0]=e,this.data.array[t+1]=n,this.data.array[t+2]=i,this.data.array[t+3]=r,this}}),Is.prototype=Object.create(Or.prototype),Is.prototype.constructor=Is,Is.prototype.isSpriteMaterial=!0,Is.prototype.copy=function(t){return Or.prototype.copy.call(this,t),this.color.copy(t.color),this.map=t.map,this.alphaMap=t.alphaMap,this.rotation=t.rotation,this.sizeAttenuation=t.sizeAttenuation,this};var ks=new oi,Ds=new oi,Rs=new oi,Ls=new Xn,Ns=new Xn,js=new hi,Vs=new oi,Fs=new oi,Us=new oi,Bs=new Xn,zs=new Xn,Gs=new Xn;function Hs(t){if(Ii.call(this),this.type="Sprite",void 0===Os){Os=new Zr;var e=new Ts(new Float32Array([-.5,-.5,0,0,0,.5,-.5,0,1,0,.5,.5,0,1,1,-.5,.5,0,0,1]),5);Os.setIndex([0,1,2,0,2,3]),Os.setAttribute("position",new Ps(e,3,0,!1)),Os.setAttribute("uv",new Ps(e,2,3,!1))}this.geometry=Os,this.material=void 0!==t?t:new Is,this.center=new Xn(.5,.5)}function Ws(t,e,n,i,r,o){Ls.subVectors(t,n).addScalar(.5).multiply(i),void 0!==r?(Ns.x=o*Ls.x-r*Ls.y,Ns.y=r*Ls.x+o*Ls.y):Ns.copy(Ls),t.copy(e),t.x+=Ns.x,t.y+=Ns.y,t.applyMatrix4(js)}Hs.prototype=Object.assign(Object.create(Ii.prototype),{constructor:Hs,isSprite:!0,raycast:function(t,e){null===t.camera&&console.error('THREE.Sprite: "Raycaster.camera" needs to be set in order to raycast against sprites.'),Ds.setFromMatrixScale(this.matrixWorld),js.copy(t.camera.matrixWorld),this.modelViewMatrix.multiplyMatrices(t.camera.matrixWorldInverse,this.matrixWorld),Rs.setFromMatrixPosition(this.modelViewMatrix),t.camera.isPerspectiveCamera&&!1===this.material.sizeAttenuation&&Ds.multiplyScalar(-Rs.z);var n,i,r=this.material.rotation;0!==r&&(i=Math.cos(r),n=Math.sin(r));var o=this.center;Ws(Vs.set(-.5,-.5,0),Rs,o,Ds,n,i),Ws(Fs.set(.5,-.5,0),Rs,o,Ds,n,i),Ws(Us.set(.5,.5,0),Rs,o,Ds,n,i),Bs.set(0,0),zs.set(1,0),Gs.set(1,1);var a=t.ray.intersectTriangle(Vs,Fs,Us,!1,ks);if(null!==a||(Ws(Fs.set(-.5,.5,0),Rs,o,Ds,n,i),zs.set(0,1),null!==(a=t.ray.intersectTriangle(Vs,Us,Fs,!1,ks)))){var s=t.ray.origin.distanceTo(ks);s<t.near||s>t.far||e.push({distance:s,point:ks.clone(),uv:yr.getUV(ks,Vs,Fs,Us,Bs,zs,Gs,new Xn),face:null,object:this})}},clone:function(){return new this.constructor(this.material).copy(this)},copy:function(t){return Ii.prototype.copy.call(this,t),void 0!==t.center&&this.center.copy(t.center),this}});var qs=new oi,Ks=new oi;function Xs(){Ii.call(this),this._currentLevel=0,this.type="LOD",Object.defineProperties(this,{levels:{enumerable:!0,value:[]}}),this.autoUpdate=!0}function Ys(t,e){t&&t.isGeometry&&console.error("THREE.SkinnedMesh no longer supports THREE.Geometry. Use THREE.BufferGeometry instead."),go.call(this,t,e),this.type="SkinnedMesh",this.bindMode="attached",this.bindMatrix=new hi,this.bindMatrixInverse=new hi}Xs.prototype=Object.assign(Object.create(Ii.prototype),{constructor:Xs,isLOD:!0,copy:function(t){Ii.prototype.copy.call(this,t,!1);for(var e=t.levels,n=0,i=e.length;n<i;n++){var r=e[n];this.addLevel(r.object.clone(),r.distance)}return this.autoUpdate=t.autoUpdate,this},addLevel:function(t,e){void 0===e&&(e=0),e=Math.abs(e);for(var n=this.levels,i=0;i<n.length&&!(e<n[i].distance);i++);return n.splice(i,0,{distance:e,object:t}),this.add(t),this},getCurrentLevel:function(){return this._currentLevel},getObjectForDistance:function(t){var e=this.levels;if(e.length>0){for(var n=1,i=e.length;n<i&&!(t<e[n].distance);n++);return e[n-1].object}return null},raycast:function(t,e){if(this.levels.length>0){qs.setFromMatrixPosition(this.matrixWorld);var n=t.ray.origin.distanceTo(qs);this.getObjectForDistance(n).raycast(t,e)}},update:function(t){var e=this.levels;if(e.length>1){qs.setFromMatrixPosition(t.matrixWorld),Ks.setFromMatrixPosition(this.matrixWorld);var n=qs.distanceTo(Ks)/t.zoom;e[0].object.visible=!0;for(var i=1,r=e.length;i<r&&n>=e[i].distance;i++)e[i-1].object.visible=!1,e[i].object.visible=!0;for(this._currentLevel=i-1;i<r;i++)e[i].object.visible=!1}},toJSON:function(t){var e=Ii.prototype.toJSON.call(this,t);!1===this.autoUpdate&&(e.object.autoUpdate=!1),e.object.levels=[];for(var n=this.levels,i=0,r=n.length;i<r;i++){var o=n[i];e.object.levels.push({object:o.object.uuid,distance:o.distance})}return e}}),Ys.prototype=Object.assign(Object.create(go.prototype),{constructor:Ys,isSkinnedMesh:!0,bind:function(t,e){this.skeleton=t,void 0===e&&(this.updateMatrixWorld(!0),this.skeleton.calculateInverses(),e=this.matrixWorld),this.bindMatrix.copy(e),this.bindMatrixInverse.getInverse(e)},pose:function(){this.skeleton.pose()},normalizeSkinWeights:function(){for(var t=new $n,e=this.geometry.attributes.skinWeight,n=0,i=e.count;n<i;n++){t.x=e.getX(n),t.y=e.getY(n),t.z=e.getZ(n),t.w=e.getW(n);var r=1/t.manhattanLength();r!==1/0?t.multiplyScalar(r):t.set(1,0,0,0),e.setXYZW(n,t.x,t.y,t.z,t.w)}},updateMatrixWorld:function(t){go.prototype.updateMatrixWorld.call(this,t),"attached"===this.bindMode?this.bindMatrixInverse.getInverse(this.matrixWorld):"detached"===this.bindMode?this.bindMatrixInverse.getInverse(this.bindMatrix):console.warn("THREE.SkinnedMesh: Unrecognized bindMode: "+this.bindMode)},clone:function(){return new this.constructor(this.geometry,this.material).copy(this)}});var Zs=new hi,Js=new hi;function Qs(t,e){if(t=t||[],this.bones=t.slice(0),this.boneMatrices=new Float32Array(16*this.bones.length),this.frame=-1,void 0===e)this.calculateInverses();else if(this.bones.length===e.length)this.boneInverses=e.slice(0);else{console.warn("THREE.Skeleton boneInverses is the wrong length."),this.boneInverses=[];for(var n=0,i=this.bones.length;n<i;n++)this.boneInverses.push(new hi)}}function $s(){Ii.call(this),this.type="Bone"}Object.assign(Qs.prototype,{calculateInverses:function(){this.boneInverses=[];for(var t=0,e=this.bones.length;t<e;t++){var n=new hi;this.bones[t]&&n.getInverse(this.bones[t].matrixWorld),this.boneInverses.push(n)}},pose:function(){var t,e,n;for(e=0,n=this.bones.length;e<n;e++)(t=this.bones[e])&&t.matrixWorld.getInverse(this.boneInverses[e]);for(e=0,n=this.bones.length;e<n;e++)(t=this.bones[e])&&(t.parent&&t.parent.isBone?(t.matrix.getInverse(t.parent.matrixWorld),t.matrix.multiply(t.matrixWorld)):t.matrix.copy(t.matrixWorld),t.matrix.decompose(t.position,t.quaternion,t.scale))},update:function(){for(var t=this.bones,e=this.boneInverses,n=this.boneMatrices,i=this.boneTexture,r=0,o=t.length;r<o;r++){var a=t[r]?t[r].matrixWorld:Js;Zs.multiplyMatrices(a,e[r]),Zs.toArray(n,16*r)}void 0!==i&&(i.needsUpdate=!0)},clone:function(){return new Qs(this.bones,this.boneInverses)},getBoneByName:function(t){for(var e=0,n=this.bones.length;e<n;e++){var i=this.bones[e];if(i.name===t)return i}},dispose:function(){this.boneTexture&&(this.boneTexture.dispose(),this.boneTexture=void 0)}}),$s.prototype=Object.assign(Object.create(Ii.prototype),{constructor:$s,isBone:!0});var tc=new hi,ec=new hi,nc=[],ic=new go;function rc(t,e,n){go.call(this,t,e),this.instanceMatrix=new Ir(new Float32Array(16*n),16),this.count=n,this.frustumCulled=!1}function oc(t){Or.call(this),this.type="LineBasicMaterial",this.color=new xr(16777215),this.linewidth=1,this.linecap="round",this.linejoin="round",this.setValues(t)}rc.prototype=Object.assign(Object.create(go.prototype),{constructor:rc,isInstancedMesh:!0,getMatrixAt:function(t,e){e.fromArray(this.instanceMatrix.array,16*t)},raycast:function(t,e){var n=this.matrixWorld,i=this.count;if(ic.geometry=this.geometry,ic.material=this.material,void 0!==ic.material)for(var r=0;r<i;r++)this.getMatrixAt(r,tc),ec.multiplyMatrices(n,tc),ic.matrixWorld=ec,ic.raycast(t,nc),nc.length>0&&(nc[0].instanceId=r,nc[0].object=this,e.push(nc[0]),nc.length=0)},setMatrixAt:function(t,e){e.toArray(this.instanceMatrix.array,16*t)},updateMorphTargets:function(){}}),oc.prototype=Object.create(Or.prototype),oc.prototype.constructor=oc,oc.prototype.isLineBasicMaterial=!0,oc.prototype.copy=function(t){return Or.prototype.copy.call(this,t),this.color.copy(t.color),this.linewidth=t.linewidth,this.linecap=t.linecap,this.linejoin=t.linejoin,this};var ac=new oi,sc=new oi,cc=new hi,lc=new ir,uc=new Yi;function dc(t,e,n){1===n&&console.error("THREE.Line: parameter THREE.LinePieces no longer supported. Use THREE.LineSegments instead."),Ii.call(this),this.type="Line",this.geometry=void 0!==t?t:new Zr,this.material=void 0!==e?e:new oc}dc.prototype=Object.assign(Object.create(Ii.prototype),{constructor:dc,isLine:!0,computeLineDistances:function(){var t=this.geometry;if(t.isBufferGeometry)if(null===t.index){for(var e=t.attributes.position,n=[0],i=1,r=e.count;i<r;i++)ac.fromBufferAttribute(e,i-1),sc.fromBufferAttribute(e,i),n[i]=n[i-1],n[i]+=ac.distanceTo(sc);t.setAttribute("lineDistance",new Fr(n,1))}else console.warn("THREE.Line.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.");else if(t.isGeometry){var o=t.vertices;for((n=t.lineDistances)[0]=0,i=1,r=o.length;i<r;i++)n[i]=n[i-1],n[i]+=o[i-1].distanceTo(o[i])}return this},raycast:function(t,e){var n=this.geometry,i=this.matrixWorld,r=t.params.Line.threshold;if(null===n.boundingSphere&&n.computeBoundingSphere(),uc.copy(n.boundingSphere),uc.applyMatrix4(i),uc.radius+=r,!1!==t.ray.intersectsSphere(uc)){cc.getInverse(i),lc.copy(t.ray).applyMatrix4(cc);var o=r/((this.scale.x+this.scale.y+this.scale.z)/3),a=o*o,s=new oi,c=new oi,l=new oi,u=new oi,d=this&&this.isLineSegments?2:1;if(n.isBufferGeometry){var p=n.index,h=n.attributes.position.array;if(null!==p)for(var f=p.array,g=0,m=f.length-1;g<m;g+=d){var v=f[g],y=f[g+1];s.fromArray(h,3*v),c.fromArray(h,3*y),lc.distanceSqToSegment(s,c,u,l)>a||(u.applyMatrix4(this.matrixWorld),(S=t.ray.origin.distanceTo(u))<t.near||S>t.far||e.push({distance:S,point:l.clone().applyMatrix4(this.matrixWorld),index:g,face:null,faceIndex:null,object:this}))}else for(g=0,m=h.length/3-1;g<m;g+=d)s.fromArray(h,3*g),c.fromArray(h,3*g+3),lc.distanceSqToSegment(s,c,u,l)>a||(u.applyMatrix4(this.matrixWorld),(S=t.ray.origin.distanceTo(u))<t.near||S>t.far||e.push({distance:S,point:l.clone().applyMatrix4(this.matrixWorld),index:g,face:null,faceIndex:null,object:this}))}else if(n.isGeometry){var b=n.vertices,w=b.length;for(g=0;g<w-1;g+=d){var S;lc.distanceSqToSegment(b[g],b[g+1],u,l)>a||(u.applyMatrix4(this.matrixWorld),(S=t.ray.origin.distanceTo(u))<t.near||S>t.far||e.push({distance:S,point:l.clone().applyMatrix4(this.matrixWorld),index:g,face:null,faceIndex:null,object:this}))}}}},clone:function(){return new this.constructor(this.geometry,this.material).copy(this)}});var pc=new oi,hc=new oi;function fc(t,e){dc.call(this,t,e),this.type="LineSegments"}function gc(t,e){dc.call(this,t,e),this.type="LineLoop"}function mc(t){Or.call(this),this.type="PointsMaterial",this.color=new xr(16777215),this.map=null,this.alphaMap=null,this.size=1,this.sizeAttenuation=!0,this.morphTargets=!1,this.setValues(t)}fc.prototype=Object.assign(Object.create(dc.prototype),{constructor:fc,isLineSegments:!0,computeLineDistances:function(){var t=this.geometry;if(t.isBufferGeometry)if(null===t.index){for(var e=t.attributes.position,n=[],i=0,r=e.count;i<r;i+=2)pc.fromBufferAttribute(e,i),hc.fromBufferAttribute(e,i+1),n[i]=0===i?0:n[i-1],n[i+1]=n[i]+pc.distanceTo(hc);t.setAttribute("lineDistance",new Fr(n,1))}else console.warn("THREE.LineSegments.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.");else if(t.isGeometry){var o=t.vertices;for(n=t.lineDistances,i=0,r=o.length;i<r;i+=2)pc.copy(o[i]),hc.copy(o[i+1]),n[i]=0===i?0:n[i-1],n[i+1]=n[i]+pc.distanceTo(hc)}return this}}),gc.prototype=Object.assign(Object.create(dc.prototype),{constructor:gc,isLineLoop:!0}),mc.prototype=Object.create(Or.prototype),mc.prototype.constructor=mc,mc.prototype.isPointsMaterial=!0,mc.prototype.copy=function(t){return Or.prototype.copy.call(this,t),this.color.copy(t.color),this.map=t.map,this.alphaMap=t.alphaMap,this.size=t.size,this.sizeAttenuation=t.sizeAttenuation,this.morphTargets=t.morphTargets,this};var vc=new hi,yc=new ir,bc=new Yi,wc=new oi;function Sc(t,e){Ii.call(this),this.type="Points",this.geometry=void 0!==t?t:new Zr,this.material=void 0!==e?e:new mc,this.updateMorphTargets()}function xc(t,e,n,i,r,o,a){var s=yc.distanceSqToPoint(t);if(s<n){var c=new oi;yc.closestPointToPoint(t,c),c.applyMatrix4(i);var l=r.ray.origin.distanceTo(c);if(l<r.near||l>r.far)return;o.push({distance:l,distanceToRay:Math.sqrt(s),point:c,index:e,face:null,object:a})}}function Mc(t,e,n,i,r,o,a,s,c){Qn.call(this,t,e,n,i,r,o,a,s,c),this.format=void 0!==a?a:Xt,this.minFilter=void 0!==o?o:Pt,this.magFilter=void 0!==r?r:Pt,this.generateMipmaps=!1}function Ec(t,e,n,i,r,o,a,s,c,l,u,d){Qn.call(this,null,o,a,s,c,l,i,r,u,d),this.image={width:e,height:n},this.mipmaps=t,this.flipY=!1,this.generateMipmaps=!1}function Cc(t,e,n,i,r,o,a,s,c){Qn.call(this,t,e,n,i,r,o,a,s,c),this.needsUpdate=!0}function Ac(t,e,n,i,r,o,a,s,c,l){if((l=void 0!==l?l:$t)!==$t&&l!==te)throw new Error("DepthTexture format must be either THREE.DepthFormat or THREE.DepthStencilFormat");void 0===n&&l===$t&&(n=Vt),void 0===n&&l===te&&(n=qt),Qn.call(this,null,i,r,o,a,s,l,n,c),this.image={width:t,height:e},this.magFilter=void 0!==a?a:Ct,this.minFilter=void 0!==s?s:Ct,this.flipY=!1,this.generateMipmaps=!1}function Tc(t){Zr.call(this),this.type="WireframeGeometry";var e,n,i,r,o,a,s,c,l,u,d=[],p=[0,0],h={},f=["a","b","c"];if(t&&t.isGeometry){var g=t.faces;for(e=0,i=g.length;e<i;e++){var m=g[e];for(n=0;n<3;n++)s=m[f[n]],c=m[f[(n+1)%3]],p[0]=Math.min(s,c),p[1]=Math.max(s,c),void 0===h[l=p[0]+","+p[1]]&&(h[l]={index1:p[0],index2:p[1]})}for(l in h)a=h[l],u=t.vertices[a.index1],d.push(u.x,u.y,u.z),u=t.vertices[a.index2],d.push(u.x,u.y,u.z)}else if(t&&t.isBufferGeometry){var v,y,b,w,S,x,M;if(u=new oi,null!==t.index){for(v=t.attributes.position,y=t.index,0===(b=t.groups).length&&(b=[{start:0,count:y.count,materialIndex:0}]),r=0,o=b.length;r<o;++r)for(e=S=(w=b[r]).start,i=S+w.count;e<i;e+=3)for(n=0;n<3;n++)s=y.getX(e+n),c=y.getX(e+(n+1)%3),p[0]=Math.min(s,c),p[1]=Math.max(s,c),void 0===h[l=p[0]+","+p[1]]&&(h[l]={index1:p[0],index2:p[1]});for(l in h)a=h[l],u.fromBufferAttribute(v,a.index1),d.push(u.x,u.y,u.z),u.fromBufferAttribute(v,a.index2),d.push(u.x,u.y,u.z)}else for(e=0,i=(v=t.attributes.position).count/3;e<i;e++)for(n=0;n<3;n++)x=3*e+n,u.fromBufferAttribute(v,x),d.push(u.x,u.y,u.z),M=3*e+(n+1)%3,u.fromBufferAttribute(v,M),d.push(u.x,u.y,u.z)}this.setAttribute("position",new Fr(d,3))}function Oc(t,e,n){xo.call(this),this.type="ParametricGeometry",this.parameters={func:t,slices:e,stacks:n},this.fromBufferGeometry(new _c(t,e,n)),this.mergeVertices()}function _c(t,e,n){Zr.call(this),this.type="ParametricBufferGeometry",this.parameters={func:t,slices:e,stacks:n};var i,r,o=[],a=[],s=[],c=[],l=1e-5,u=new oi,d=new oi,p=new oi,h=new oi,f=new oi;t.length<3&&console.error("THREE.ParametricGeometry: Function must now modify a Vector3 as third parameter.");var g=e+1;for(i=0;i<=n;i++){var m=i/n;for(r=0;r<=e;r++){var v=r/e;t(v,m,d),a.push(d.x,d.y,d.z),v-l>=0?(t(v-l,m,p),h.subVectors(d,p)):(t(v+l,m,p),h.subVectors(p,d)),m-l>=0?(t(v,m-l,p),f.subVectors(d,p)):(t(v,m+l,p),f.subVectors(p,d)),u.crossVectors(h,f).normalize(),s.push(u.x,u.y,u.z),c.push(v,m)}}for(i=0;i<n;i++)for(r=0;r<e;r++){var y=i*g+r,b=i*g+r+1,w=(i+1)*g+r+1,S=(i+1)*g+r;o.push(y,b,S),o.push(b,w,S)}this.setIndex(o),this.setAttribute("position",new Fr(a,3)),this.setAttribute("normal",new Fr(s,3)),this.setAttribute("uv",new Fr(c,2))}function Pc(t,e,n,i){xo.call(this),this.type="PolyhedronGeometry",this.parameters={vertices:t,indices:e,radius:n,detail:i},this.fromBufferGeometry(new Ic(t,e,n,i)),this.mergeVertices()}function Ic(t,e,n,i){Zr.call(this),this.type="PolyhedronBufferGeometry",this.parameters={vertices:t,indices:e,radius:n,detail:i},n=n||1;var r=[],o=[];function a(t,e,n,i){var r,o,a=Math.pow(2,i),c=[];for(r=0;r<=a;r++){c[r]=[];var l=t.clone().lerp(n,r/a),u=e.clone().lerp(n,r/a),d=a-r;for(o=0;o<=d;o++)c[r][o]=0===o&&r===a?l:l.clone().lerp(u,o/d)}for(r=0;r<a;r++)for(o=0;o<2*(a-r)-1;o++){var p=Math.floor(o/2);o%2==0?(s(c[r][p+1]),s(c[r+1][p]),s(c[r][p])):(s(c[r][p+1]),s(c[r+1][p+1]),s(c[r+1][p]))}}function s(t){r.push(t.x,t.y,t.z)}function c(e,n){var i=3*e;n.x=t[i+0],n.y=t[i+1],n.z=t[i+2]}function l(t,e,n,i){i<0&&1===t.x&&(o[e]=t.x-1),0===n.x&&0===n.z&&(o[e]=i/2/Math.PI+.5)}function u(t){return Math.atan2(t.z,-t.x)}!function(t){for(var n=new oi,i=new oi,r=new oi,o=0;o<e.length;o+=3)c(e[o+0],n),c(e[o+1],i),c(e[o+2],r),a(n,i,r,t)}(i=i||0),function(t){for(var e=new oi,n=0;n<r.length;n+=3)e.x=r[n+0],e.y=r[n+1],e.z=r[n+2],e.normalize().multiplyScalar(t),r[n+0]=e.x,r[n+1]=e.y,r[n+2]=e.z}(n),function(){for(var t=new oi,e=0;e<r.length;e+=3){t.x=r[e+0],t.y=r[e+1],t.z=r[e+2];var n=u(t)/2/Math.PI+.5,i=(a=t,Math.atan2(-a.y,Math.sqrt(a.x*a.x+a.z*a.z))/Math.PI+.5);o.push(n,1-i)}var a;(function(){for(var t=new oi,e=new oi,n=new oi,i=new oi,a=new Xn,s=new Xn,c=new Xn,d=0,p=0;d<r.length;d+=9,p+=6){t.set(r[d+0],r[d+1],r[d+2]),e.set(r[d+3],r[d+4],r[d+5]),n.set(r[d+6],r[d+7],r[d+8]),a.set(o[p+0],o[p+1]),s.set(o[p+2],o[p+3]),c.set(o[p+4],o[p+5]),i.copy(t).add(e).add(n).divideScalar(3);var h=u(i);l(a,p+0,t,h),l(s,p+2,e,h),l(c,p+4,n,h)}})(),function(){for(var t=0;t<o.length;t+=6){var e=o[t+0],n=o[t+2],i=o[t+4],r=Math.max(e,n,i),a=Math.min(e,n,i);r>.9&&a<.1&&(e<.2&&(o[t+0]+=1),n<.2&&(o[t+2]+=1),i<.2&&(o[t+4]+=1))}}()}(),this.setAttribute("position",new Fr(r,3)),this.setAttribute("normal",new Fr(r.slice(),3)),this.setAttribute("uv",new Fr(o,2)),0===i?this.computeVertexNormals():this.normalizeNormals()}function kc(t,e){xo.call(this),this.type="TetrahedronGeometry",this.parameters={radius:t,detail:e},this.fromBufferGeometry(new Dc(t,e)),this.mergeVertices()}function Dc(t,e){Ic.call(this,[1,1,1,-1,-1,1,-1,1,-1,1,-1,-1],[2,1,0,0,3,2,1,3,0,2,3,1],t,e),this.type="TetrahedronBufferGeometry",this.parameters={radius:t,detail:e}}function Rc(t,e){xo.call(this),this.type="OctahedronGeometry",this.parameters={radius:t,detail:e},this.fromBufferGeometry(new Lc(t,e)),this.mergeVertices()}function Lc(t,e){Ic.call(this,[1,0,0,-1,0,0,0,1,0,0,-1,0,0,0,1,0,0,-1],[0,2,4,0,4,3,0,3,5,0,5,2,1,2,5,1,5,3,1,3,4,1,4,2],t,e),this.type="OctahedronBufferGeometry",this.parameters={radius:t,detail:e}}function Nc(t,e){xo.call(this),this.type="IcosahedronGeometry",this.parameters={radius:t,detail:e},this.fromBufferGeometry(new jc(t,e)),this.mergeVertices()}function jc(t,e){var n=(1+Math.sqrt(5))/2,i=[-1,n,0,1,n,0,-1,-n,0,1,-n,0,0,-1,n,0,1,n,0,-1,-n,0,1,-n,n,0,-1,n,0,1,-n,0,-1,-n,0,1];Ic.call(this,i,[0,11,5,0,5,1,0,1,7,0,7,10,0,10,11,1,5,9,5,11,4,11,10,2,10,7,6,7,1,8,3,9,4,3,4,2,3,2,6,3,6,8,3,8,9,4,9,5,2,4,11,6,2,10,8,6,7,9,8,1],t,e),this.type="IcosahedronBufferGeometry",this.parameters={radius:t,detail:e}}function Vc(t,e){xo.call(this),this.type="DodecahedronGeometry",this.parameters={radius:t,detail:e},this.fromBufferGeometry(new Fc(t,e)),this.mergeVertices()}function Fc(t,e){var n=(1+Math.sqrt(5))/2,i=1/n,r=[-1,-1,-1,-1,-1,1,-1,1,-1,-1,1,1,1,-1,-1,1,-1,1,1,1,-1,1,1,1,0,-i,-n,0,-i,n,0,i,-n,0,i,n,-i,-n,0,-i,n,0,i,-n,0,i,n,0,-n,0,-i,n,0,-i,-n,0,i,n,0,i];Ic.call(this,r,[3,11,7,3,7,15,3,15,13,7,19,17,7,17,6,7,6,15,17,4,8,17,8,10,17,10,6,8,0,16,8,16,2,8,2,10,0,12,1,0,1,18,0,18,16,6,10,2,6,2,13,6,13,15,2,16,18,2,18,3,2,3,13,18,1,9,18,9,11,18,11,3,4,14,12,4,12,0,4,0,8,11,9,5,11,5,19,11,19,7,19,5,14,19,14,4,19,4,17,1,12,14,1,14,5,1,5,9],t,e),this.type="DodecahedronBufferGeometry",this.parameters={radius:t,detail:e}}function Uc(t,e,n,i,r,o){xo.call(this),this.type="TubeGeometry",this.parameters={path:t,tubularSegments:e,radius:n,radialSegments:i,closed:r},void 0!==o&&console.warn("THREE.TubeGeometry: taper has been removed.");var a=new Bc(t,e,n,i,r);this.tangents=a.tangents,this.normals=a.normals,this.binormals=a.binormals,this.fromBufferGeometry(a),this.mergeVertices()}function Bc(t,e,n,i,r){Zr.call(this),this.type="TubeBufferGeometry",this.parameters={path:t,tubularSegments:e,radius:n,radialSegments:i,closed:r},e=e||64,n=n||1,i=i||8,r=r||!1;var o=t.computeFrenetFrames(e,r);this.tangents=o.tangents,this.normals=o.normals,this.binormals=o.binormals;var a,s,c=new oi,l=new oi,u=new Xn,d=new oi,p=[],h=[],f=[],g=[];function m(r){d=t.getPointAt(r/e,d);var a=o.normals[r],u=o.binormals[r];for(s=0;s<=i;s++){var f=s/i*Math.PI*2,g=Math.sin(f),m=-Math.cos(f);l.x=m*a.x+g*u.x,l.y=m*a.y+g*u.y,l.z=m*a.z+g*u.z,l.normalize(),h.push(l.x,l.y,l.z),c.x=d.x+n*l.x,c.y=d.y+n*l.y,c.z=d.z+n*l.z,p.push(c.x,c.y,c.z)}}!function(){for(a=0;a<e;a++)m(a);m(!1===r?e:0),function(){for(a=0;a<=e;a++)for(s=0;s<=i;s++)u.x=a/e,u.y=s/i,f.push(u.x,u.y)}(),function(){for(s=1;s<=e;s++)for(a=1;a<=i;a++){var t=(i+1)*(s-1)+(a-1),n=(i+1)*s+(a-1),r=(i+1)*s+a,o=(i+1)*(s-1)+a;g.push(t,n,o),g.push(n,r,o)}}()}(),this.setIndex(g),this.setAttribute("position",new Fr(p,3)),this.setAttribute("normal",new Fr(h,3)),this.setAttribute("uv",new Fr(f,2))}function zc(t,e,n,i,r,o,a){xo.call(this),this.type="TorusKnotGeometry",this.parameters={radius:t,tube:e,tubularSegments:n,radialSegments:i,p:r,q:o},void 0!==a&&console.warn("THREE.TorusKnotGeometry: heightScale has been deprecated. Use .scale( x, y, z ) instead."),this.fromBufferGeometry(new Gc(t,e,n,i,r,o)),this.mergeVertices()}function Gc(t,e,n,i,r,o){Zr.call(this),this.type="TorusKnotBufferGeometry",this.parameters={radius:t,tube:e,tubularSegments:n,radialSegments:i,p:r,q:o},t=t||1,e=e||.4,n=Math.floor(n)||64,i=Math.floor(i)||8,r=r||2,o=o||3;var a,s,c=[],l=[],u=[],d=[],p=new oi,h=new oi,f=new oi,g=new oi,m=new oi,v=new oi,y=new oi;for(a=0;a<=n;++a){var b=a/n*r*Math.PI*2;for(T(b,r,o,t,f),T(b+.01,r,o,t,g),v.subVectors(g,f),y.addVectors(g,f),m.crossVectors(v,y),y.crossVectors(m,v),m.normalize(),y.normalize(),s=0;s<=i;++s){var w=s/i*Math.PI*2,S=-e*Math.cos(w),x=e*Math.sin(w);p.x=f.x+(S*y.x+x*m.x),p.y=f.y+(S*y.y+x*m.y),p.z=f.z+(S*y.z+x*m.z),l.push(p.x,p.y,p.z),h.subVectors(p,f).normalize(),u.push(h.x,h.y,h.z),d.push(a/n),d.push(s/i)}}for(s=1;s<=n;s++)for(a=1;a<=i;a++){var M=(i+1)*(s-1)+(a-1),E=(i+1)*s+(a-1),C=(i+1)*s+a,A=(i+1)*(s-1)+a;c.push(M,E,A),c.push(E,C,A)}function T(t,e,n,i,r){var o=Math.cos(t),a=Math.sin(t),s=n/e*t,c=Math.cos(s);r.x=i*(2+c)*.5*o,r.y=i*(2+c)*a*.5,r.z=i*Math.sin(s)*.5}this.setIndex(c),this.setAttribute("position",new Fr(l,3)),this.setAttribute("normal",new Fr(u,3)),this.setAttribute("uv",new Fr(d,2))}function Hc(t,e,n,i,r){xo.call(this),this.type="TorusGeometry",this.parameters={radius:t,tube:e,radialSegments:n,tubularSegments:i,arc:r},this.fromBufferGeometry(new Wc(t,e,n,i,r)),this.mergeVertices()}function Wc(t,e,n,i,r){Zr.call(this),this.type="TorusBufferGeometry",this.parameters={radius:t,tube:e,radialSegments:n,tubularSegments:i,arc:r},t=t||1,e=e||.4,n=Math.floor(n)||8,i=Math.floor(i)||6,r=r||2*Math.PI;var o,a,s=[],c=[],l=[],u=[],d=new oi,p=new oi,h=new oi;for(o=0;o<=n;o++)for(a=0;a<=i;a++){var f=a/i*r,g=o/n*Math.PI*2;p.x=(t+e*Math.cos(g))*Math.cos(f),p.y=(t+e*Math.cos(g))*Math.sin(f),p.z=e*Math.sin(g),c.push(p.x,p.y,p.z),d.x=t*Math.cos(f),d.y=t*Math.sin(f),h.subVectors(p,d).normalize(),l.push(h.x,h.y,h.z),u.push(a/i),u.push(o/n)}for(o=1;o<=n;o++)for(a=1;a<=i;a++){var m=(i+1)*o+a-1,v=(i+1)*(o-1)+a-1,y=(i+1)*(o-1)+a,b=(i+1)*o+a;s.push(m,v,b),s.push(v,y,b)}this.setIndex(s),this.setAttribute("position",new Fr(c,3)),this.setAttribute("normal",new Fr(l,3)),this.setAttribute("uv",new Fr(u,2))}Sc.prototype=Object.assign(Object.create(Ii.prototype),{constructor:Sc,isPoints:!0,raycast:function(t,e){var n=this.geometry,i=this.matrixWorld,r=t.params.Points.threshold;if(null===n.boundingSphere&&n.computeBoundingSphere(),bc.copy(n.boundingSphere),bc.applyMatrix4(i),bc.radius+=r,!1!==t.ray.intersectsSphere(bc)){vc.getInverse(i),yc.copy(t.ray).applyMatrix4(vc);var o=r/((this.scale.x+this.scale.y+this.scale.z)/3),a=o*o;if(n.isBufferGeometry){var s=n.index,c=n.attributes.position.array;if(null!==s)for(var l=s.array,u=0,d=l.length;u<d;u++){var p=l[u];wc.fromArray(c,3*p),xc(wc,p,a,i,t,e,this)}else{u=0;for(var h=c.length/3;u<h;u++)wc.fromArray(c,3*u),xc(wc,u,a,i,t,e,this)}}else{var f=n.vertices;for(u=0,h=f.length;u<h;u++)xc(f[u],u,a,i,t,e,this)}}},updateMorphTargets:function(){var t,e,n,i=this.geometry;if(i.isBufferGeometry){var r=i.morphAttributes,o=Object.keys(r);if(o.length>0){var a=r[o[0]];if(void 0!==a)for(this.morphTargetInfluences=[],this.morphTargetDictionary={},t=0,e=a.length;t<e;t++)n=a[t].name||String(t),this.morphTargetInfluences.push(0),this.morphTargetDictionary[n]=t}}else{var s=i.morphTargets;void 0!==s&&s.length>0&&console.error("THREE.Points.updateMorphTargets() does not support THREE.Geometry. Use THREE.BufferGeometry instead.")}},clone:function(){return new this.constructor(this.geometry,this.material).copy(this)}}),Mc.prototype=Object.assign(Object.create(Qn.prototype),{constructor:Mc,isVideoTexture:!0,update:function(){var t=this.image;t.readyState>=t.HAVE_CURRENT_DATA&&(this.needsUpdate=!0)}}),Ec.prototype=Object.create(Qn.prototype),Ec.prototype.constructor=Ec,Ec.prototype.isCompressedTexture=!0,Cc.prototype=Object.create(Qn.prototype),Cc.prototype.constructor=Cc,Cc.prototype.isCanvasTexture=!0,Ac.prototype=Object.create(Qn.prototype),Ac.prototype.constructor=Ac,Ac.prototype.isDepthTexture=!0,Tc.prototype=Object.create(Zr.prototype),Tc.prototype.constructor=Tc,Oc.prototype=Object.create(xo.prototype),Oc.prototype.constructor=Oc,_c.prototype=Object.create(Zr.prototype),_c.prototype.constructor=_c,Pc.prototype=Object.create(xo.prototype),Pc.prototype.constructor=Pc,Ic.prototype=Object.create(Zr.prototype),Ic.prototype.constructor=Ic,kc.prototype=Object.create(xo.prototype),kc.prototype.constructor=kc,Dc.prototype=Object.create(Ic.prototype),Dc.prototype.constructor=Dc,Rc.prototype=Object.create(xo.prototype),Rc.prototype.constructor=Rc,Lc.prototype=Object.create(Ic.prototype),Lc.prototype.constructor=Lc,Nc.prototype=Object.create(xo.prototype),Nc.prototype.constructor=Nc,jc.prototype=Object.create(Ic.prototype),jc.prototype.constructor=jc,Vc.prototype=Object.create(xo.prototype),Vc.prototype.constructor=Vc,Fc.prototype=Object.create(Ic.prototype),Fc.prototype.constructor=Fc,Uc.prototype=Object.create(xo.prototype),Uc.prototype.constructor=Uc,Bc.prototype=Object.create(Zr.prototype),Bc.prototype.constructor=Bc,Bc.prototype.toJSON=function(){var t=Zr.prototype.toJSON.call(this);return t.path=this.parameters.path.toJSON(),t},zc.prototype=Object.create(xo.prototype),zc.prototype.constructor=zc,Gc.prototype=Object.create(Zr.prototype),Gc.prototype.constructor=Gc,Hc.prototype=Object.create(xo.prototype),Hc.prototype.constructor=Hc,Wc.prototype=Object.create(Zr.prototype),Wc.prototype.constructor=Wc;function qc(t,e,n,i,r){var o,a;if(r===function(t,e,n,i){for(var r=0,o=e,a=n-i;o<n;o+=i)r+=(t[a]-t[o])*(t[o+1]+t[a+1]),a=o;return r}(t,e,n,i)>0)for(o=e;o<n;o+=i)a=ul(o,t[o],t[o+1],a);else for(o=n-i;o>=e;o-=i)a=ul(o,t[o],t[o+1],a);return a&&al(a,a.next)&&(dl(a),a=a.next),a}function Kc(t,e){if(!t)return t;e||(e=t);var n,i=t;do{if(n=!1,i.steiner||!al(i,i.next)&&0!==ol(i.prev,i,i.next))i=i.next;else{if(dl(i),(i=e=i.prev)===i.next)break;n=!0}}while(n||i!==e);return e}function Xc(t,e,n,i,r,o,a){if(t){!a&&o&&function(t,e,n,i){var r=t;do{null===r.z&&(r.z=el(r.x,r.y,e,n,i)),r.prevZ=r.prev,r.nextZ=r.next,r=r.next}while(r!==t);r.prevZ.nextZ=null,r.prevZ=null,function(t){var e,n,i,r,o,a,s,c,l=1;do{for(n=t,t=null,o=null,a=0;n;){for(a++,i=n,s=0,e=0;e<l&&(s++,i=i.nextZ);e++);for(c=l;s>0||c>0&&i;)0!==s&&(0===c||!i||n.z<=i.z)?(r=n,n=n.nextZ,s--):(r=i,i=i.nextZ,c--),o?o.nextZ=r:t=r,r.prevZ=o,o=r;n=i}o.nextZ=null,l*=2}while(a>1)}(r)}(t,i,r,o);for(var s,c,l=t;t.prev!==t.next;)if(s=t.prev,c=t.next,o?Zc(t,i,r,o):Yc(t))e.push(s.i/n),e.push(t.i/n),e.push(c.i/n),dl(t),t=c.next,l=c.next;else if((t=c)===l){a?1===a?Xc(t=Jc(t,e,n),e,n,i,r,o,2):2===a&&Qc(t,e,n,i,r,o):Xc(Kc(t),e,n,i,r,o,1);break}}}function Yc(t){var e=t.prev,n=t,i=t.next;if(ol(e,n,i)>=0)return!1;for(var r=t.next.next;r!==t.prev;){if(il(e.x,e.y,n.x,n.y,i.x,i.y,r.x,r.y)&&ol(r.prev,r,r.next)>=0)return!1;r=r.next}return!0}function Zc(t,e,n,i){var r=t.prev,o=t,a=t.next;if(ol(r,o,a)>=0)return!1;for(var s=r.x<o.x?r.x<a.x?r.x:a.x:o.x<a.x?o.x:a.x,c=r.y<o.y?r.y<a.y?r.y:a.y:o.y<a.y?o.y:a.y,l=r.x>o.x?r.x>a.x?r.x:a.x:o.x>a.x?o.x:a.x,u=r.y>o.y?r.y>a.y?r.y:a.y:o.y>a.y?o.y:a.y,d=el(s,c,e,n,i),p=el(l,u,e,n,i),h=t.prevZ,f=t.nextZ;h&&h.z>=d&&f&&f.z<=p;){if(h!==t.prev&&h!==t.next&&il(r.x,r.y,o.x,o.y,a.x,a.y,h.x,h.y)&&ol(h.prev,h,h.next)>=0)return!1;if(h=h.prevZ,f!==t.prev&&f!==t.next&&il(r.x,r.y,o.x,o.y,a.x,a.y,f.x,f.y)&&ol(f.prev,f,f.next)>=0)return!1;f=f.nextZ}for(;h&&h.z>=d;){if(h!==t.prev&&h!==t.next&&il(r.x,r.y,o.x,o.y,a.x,a.y,h.x,h.y)&&ol(h.prev,h,h.next)>=0)return!1;h=h.prevZ}for(;f&&f.z<=p;){if(f!==t.prev&&f!==t.next&&il(r.x,r.y,o.x,o.y,a.x,a.y,f.x,f.y)&&ol(f.prev,f,f.next)>=0)return!1;f=f.nextZ}return!0}function Jc(t,e,n){var i=t;do{var r=i.prev,o=i.next.next;!al(r,o)&&sl(r,i,i.next,o)&&cl(r,o)&&cl(o,r)&&(e.push(r.i/n),e.push(i.i/n),e.push(o.i/n),dl(i),dl(i.next),i=t=o),i=i.next}while(i!==t);return i}function Qc(t,e,n,i,r,o){var a=t;do{for(var s=a.next.next;s!==a.prev;){if(a.i!==s.i&&rl(a,s)){var c=ll(a,s);return a=Kc(a,a.next),c=Kc(c,c.next),Xc(a,e,n,i,r,o),void Xc(c,e,n,i,r,o)}s=s.next}a=a.next}while(a!==t)}function $c(t,e){return t.x-e.x}function tl(t,e){if(e=function(t,e){var n,i=e,r=t.x,o=t.y,a=-1/0;do{if(o<=i.y&&o>=i.next.y&&i.next.y!==i.y){var s=i.x+(o-i.y)*(i.next.x-i.x)/(i.next.y-i.y);if(s<=r&&s>a){if(a=s,s===r){if(o===i.y)return i;if(o===i.next.y)return i.next}n=i.x<i.next.x?i:i.next}}i=i.next}while(i!==e);if(!n)return null;if(r===a)return n.prev;var c,l=n,u=n.x,d=n.y,p=1/0;for(i=n.next;i!==l;)r>=i.x&&i.x>=u&&r!==i.x&&il(o<d?r:a,o,u,d,o<d?a:r,o,i.x,i.y)&&((c=Math.abs(o-i.y)/(r-i.x))<p||c===p&&i.x>n.x)&&cl(i,t)&&(n=i,p=c),i=i.next;return n}(t,e)){var n=ll(e,t);Kc(n,n.next)}}function el(t,e,n,i,r){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-n)*r)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-i)*r)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function nl(t){var e=t,n=t;do{(e.x<n.x||e.x===n.x&&e.y<n.y)&&(n=e),e=e.next}while(e!==t);return n}function il(t,e,n,i,r,o,a,s){return(r-a)*(e-s)-(t-a)*(o-s)>=0&&(t-a)*(i-s)-(n-a)*(e-s)>=0&&(n-a)*(o-s)-(r-a)*(i-s)>=0}function rl(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){var n=t;do{if(n.i!==t.i&&n.next.i!==t.i&&n.i!==e.i&&n.next.i!==e.i&&sl(n,n.next,t,e))return!0;n=n.next}while(n!==t);return!1}(t,e)&&cl(t,e)&&cl(e,t)&&function(t,e){var n=t,i=!1,r=(t.x+e.x)/2,o=(t.y+e.y)/2;do{n.y>o!=n.next.y>o&&n.next.y!==n.y&&r<(n.next.x-n.x)*(o-n.y)/(n.next.y-n.y)+n.x&&(i=!i),n=n.next}while(n!==t);return i}(t,e)}function ol(t,e,n){return(e.y-t.y)*(n.x-e.x)-(e.x-t.x)*(n.y-e.y)}function al(t,e){return t.x===e.x&&t.y===e.y}function sl(t,e,n,i){return!!(al(t,n)&&al(e,i)||al(t,i)&&al(n,e))||ol(t,e,n)>0!=ol(t,e,i)>0&&ol(n,i,t)>0!=ol(n,i,e)>0}function cl(t,e){return ol(t.prev,t,t.next)<0?ol(t,e,t.next)>=0&&ol(t,t.prev,e)>=0:ol(t,e,t.prev)<0||ol(t,t.next,e)<0}function ll(t,e){var n=new pl(t.i,t.x,t.y),i=new pl(e.i,e.x,e.y),r=t.next,o=e.prev;return t.next=e,e.prev=t,n.next=r,r.prev=n,i.next=n,n.prev=i,o.next=i,i.prev=o,i}function ul(t,e,n,i){var r=new pl(t,e,n);return i?(r.next=i.next,r.prev=i,i.next.prev=r,i.next=r):(r.prev=r,r.next=r),r}function dl(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function pl(t,e,n){this.i=t,this.x=e,this.y=n,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}var hl={area:function(t){for(var e=t.length,n=0,i=e-1,r=0;r<e;i=r++)n+=t[i].x*t[r].y-t[r].x*t[i].y;return.5*n},isClockWise:function(t){return hl.area(t)<0},triangulateShape:function(t,e){var n=[],i=[],r=[];fl(t),gl(n,t);var o=t.length;e.forEach(fl);for(var a=0;a<e.length;a++)i.push(o),o+=e[a].length,gl(n,e[a]);var s=function(t,e,n){n=n||2;var i,r,o,a,s,c,l,u=e&&e.length,d=u?e[0]*n:t.length,p=qc(t,0,d,n,!0),h=[];if(!p||p.next===p.prev)return h;if(u&&(p=function(t,e,n,i){var r,o,a,s=[];for(r=0,o=e.length;r<o;r++)(a=qc(t,e[r]*i,r<o-1?e[r+1]*i:t.length,i,!1))===a.next&&(a.steiner=!0),s.push(nl(a));for(s.sort($c),r=0;r<s.length;r++)tl(s[r],n),n=Kc(n,n.next);return n}(t,e,p,n)),t.length>80*n){i=o=t[0],r=a=t[1];for(var f=n;f<d;f+=n)(s=t[f])<i&&(i=s),(c=t[f+1])<r&&(r=c),s>o&&(o=s),c>a&&(a=c);l=0!==(l=Math.max(o-i,a-r))?1/l:0}return Xc(p,h,n,i,r,l),h}(n,i);for(a=0;a<s.length;a+=3)r.push(s.slice(a,a+3));return r}};function fl(t){var e=t.length;e>2&&t[e-1].equals(t[0])&&t.pop()}function gl(t,e){for(var n=0;n<e.length;n++)t.push(e[n].x),t.push(e[n].y)}function ml(t,e){xo.call(this),this.type="ExtrudeGeometry",this.parameters={shapes:t,options:e},this.fromBufferGeometry(new vl(t,e)),this.mergeVertices()}function vl(t,e){Zr.call(this),this.type="ExtrudeBufferGeometry",this.parameters={shapes:t,options:e},t=Array.isArray(t)?t:[t];for(var n=this,i=[],r=[],o=0,a=t.length;o<a;o++)s(t[o]);function s(t){var o=[],a=void 0!==e.curveSegments?e.curveSegments:12,s=void 0!==e.steps?e.steps:1,c=void 0!==e.depth?e.depth:100,l=void 0===e.bevelEnabled||e.bevelEnabled,u=void 0!==e.bevelThickness?e.bevelThickness:6,d=void 0!==e.bevelSize?e.bevelSize:u-2,p=void 0!==e.bevelOffset?e.bevelOffset:0,h=void 0!==e.bevelSegments?e.bevelSegments:3,f=e.extrudePath,g=void 0!==e.UVGenerator?e.UVGenerator:yl;void 0!==e.amount&&(console.warn("THREE.ExtrudeBufferGeometry: amount has been renamed to depth."),c=e.amount);var m,v,y,b,w,S,x,M,E=!1;f&&(m=f.getSpacedPoints(s),E=!0,l=!1,v=f.computeFrenetFrames(s,!1),y=new oi,b=new oi,w=new oi),l||(h=0,u=0,d=0,p=0);var C=t.extractPoints(a),A=C.shape,T=C.holes;if(!hl.isClockWise(A))for(A=A.reverse(),x=0,M=T.length;x<M;x++)S=T[x],hl.isClockWise(S)&&(T[x]=S.reverse());var O=hl.triangulateShape(A,T),_=A;for(x=0,M=T.length;x<M;x++)S=T[x],A=A.concat(S);function P(t,e,n){return e||console.error("THREE.ExtrudeGeometry: vec does not exist"),e.clone().multiplyScalar(n).add(t)}var I,k,D,R,L,N,j=A.length,V=O.length;function F(t,e,n){var i,r,o,a=t.x-e.x,s=t.y-e.y,c=n.x-t.x,l=n.y-t.y,u=a*a+s*s,d=a*l-s*c;if(Math.abs(d)>Number.EPSILON){var p=Math.sqrt(u),h=Math.sqrt(c*c+l*l),f=e.x-s/p,g=e.y+a/p,m=((n.x-l/h-f)*l-(n.y+c/h-g)*c)/(a*l-s*c),v=(i=f+a*m-t.x)*i+(r=g+s*m-t.y)*r;if(v<=2)return new Xn(i,r);o=Math.sqrt(v/2)}else{var y=!1;a>Number.EPSILON?c>Number.EPSILON&&(y=!0):a<-Number.EPSILON?c<-Number.EPSILON&&(y=!0):Math.sign(s)===Math.sign(l)&&(y=!0),y?(i=-s,r=a,o=Math.sqrt(u)):(i=a,r=s,o=Math.sqrt(u/2))}return new Xn(i/o,r/o)}for(var U=[],B=0,z=_.length,G=z-1,H=B+1;B<z;B++,G++,H++)G===z&&(G=0),H===z&&(H=0),U[B]=F(_[B],_[G],_[H]);var W,q,K=[],X=U.concat();for(x=0,M=T.length;x<M;x++){for(S=T[x],W=[],B=0,G=(z=S.length)-1,H=B+1;B<z;B++,G++,H++)G===z&&(G=0),H===z&&(H=0),W[B]=F(S[B],S[G],S[H]);K.push(W),X=X.concat(W)}for(I=0;I<h;I++){for(D=I/h,R=u*Math.cos(D*Math.PI/2),k=d*Math.sin(D*Math.PI/2)+p,B=0,z=_.length;B<z;B++)Z((L=P(_[B],U[B],k)).x,L.y,-R);for(x=0,M=T.length;x<M;x++)for(S=T[x],W=K[x],B=0,z=S.length;B<z;B++)Z((L=P(S[B],W[B],k)).x,L.y,-R)}for(k=d+p,B=0;B<j;B++)L=l?P(A[B],X[B],k):A[B],E?(b.copy(v.normals[0]).multiplyScalar(L.x),y.copy(v.binormals[0]).multiplyScalar(L.y),w.copy(m[0]).add(b).add(y),Z(w.x,w.y,w.z)):Z(L.x,L.y,0);for(q=1;q<=s;q++)for(B=0;B<j;B++)L=l?P(A[B],X[B],k):A[B],E?(b.copy(v.normals[q]).multiplyScalar(L.x),y.copy(v.binormals[q]).multiplyScalar(L.y),w.copy(m[q]).add(b).add(y),Z(w.x,w.y,w.z)):Z(L.x,L.y,c/s*q);for(I=h-1;I>=0;I--){for(D=I/h,R=u*Math.cos(D*Math.PI/2),k=d*Math.sin(D*Math.PI/2)+p,B=0,z=_.length;B<z;B++)Z((L=P(_[B],U[B],k)).x,L.y,c+R);for(x=0,M=T.length;x<M;x++)for(S=T[x],W=K[x],B=0,z=S.length;B<z;B++)L=P(S[B],W[B],k),E?Z(L.x,L.y+m[s-1].y,m[s-1].x+R):Z(L.x,L.y,c+R)}function Y(t,e){var n,i;for(B=t.length;--B>=0;){n=B,(i=B-1)<0&&(i=t.length-1);var r=0,o=s+2*h;for(r=0;r<o;r++){var a=j*r,c=j*(r+1);Q(e+n+a,e+i+a,e+i+c,e+n+c)}}}function Z(t,e,n){o.push(t),o.push(e),o.push(n)}function J(t,e,r){$(t),$(e),$(r);var o=i.length/3,a=g.generateTopUV(n,i,o-3,o-2,o-1);tt(a[0]),tt(a[1]),tt(a[2])}function Q(t,e,r,o){$(t),$(e),$(o),$(e),$(r),$(o);var a=i.length/3,s=g.generateSideWallUV(n,i,a-6,a-3,a-2,a-1);tt(s[0]),tt(s[1]),tt(s[3]),tt(s[1]),tt(s[2]),tt(s[3])}function $(t){i.push(o[3*t+0]),i.push(o[3*t+1]),i.push(o[3*t+2])}function tt(t){r.push(t.x),r.push(t.y)}!function(){var t=i.length/3;if(l){var e=0,r=j*e;for(B=0;B<V;B++)J((N=O[B])[2]+r,N[1]+r,N[0]+r);for(r=j*(e=s+2*h),B=0;B<V;B++)J((N=O[B])[0]+r,N[1]+r,N[2]+r)}else{for(B=0;B<V;B++)J((N=O[B])[2],N[1],N[0]);for(B=0;B<V;B++)J((N=O[B])[0]+j*s,N[1]+j*s,N[2]+j*s)}n.addGroup(t,i.length/3-t,0)}(),function(){var t=i.length/3,e=0;for(Y(_,e),e+=_.length,x=0,M=T.length;x<M;x++)Y(S=T[x],e),e+=S.length;n.addGroup(t,i.length/3-t,1)}()}this.setAttribute("position",new Fr(i,3)),this.setAttribute("uv",new Fr(r,2)),this.computeVertexNormals()}ml.prototype=Object.create(xo.prototype),ml.prototype.constructor=ml,ml.prototype.toJSON=function(){var t=xo.prototype.toJSON.call(this);return bl(this.parameters.shapes,this.parameters.options,t)},vl.prototype=Object.create(Zr.prototype),vl.prototype.constructor=vl,vl.prototype.toJSON=function(){var t=Zr.prototype.toJSON.call(this);return bl(this.parameters.shapes,this.parameters.options,t)};var yl={generateTopUV:function(t,e,n,i,r){var o=e[3*n],a=e[3*n+1],s=e[3*i],c=e[3*i+1],l=e[3*r],u=e[3*r+1];return[new Xn(o,a),new Xn(s,c),new Xn(l,u)]},generateSideWallUV:function(t,e,n,i,r,o){var a=e[3*n],s=e[3*n+1],c=e[3*n+2],l=e[3*i],u=e[3*i+1],d=e[3*i+2],p=e[3*r],h=e[3*r+1],f=e[3*r+2],g=e[3*o],m=e[3*o+1],v=e[3*o+2];return Math.abs(s-u)<.01?[new Xn(a,1-c),new Xn(l,1-d),new Xn(p,1-f),new Xn(g,1-v)]:[new Xn(s,1-c),new Xn(u,1-d),new Xn(h,1-f),new Xn(m,1-v)]}};function bl(t,e,n){if(n.shapes=[],Array.isArray(t))for(var i=0,r=t.length;i<r;i++){var o=t[i];n.shapes.push(o.uuid)}else n.shapes.push(t.uuid);return void 0!==e.extrudePath&&(n.options.extrudePath=e.extrudePath.toJSON()),n}function wl(t,e){xo.call(this),this.type="TextGeometry",this.parameters={text:t,parameters:e},this.fromBufferGeometry(new Sl(t,e)),this.mergeVertices()}function Sl(t,e){var n=(e=e||{}).font;if(!n||!n.isFont)return console.error("THREE.TextGeometry: font parameter is not an instance of THREE.Font."),new xo;var i=n.generateShapes(t,e.size);e.depth=void 0!==e.height?e.height:50,void 0===e.bevelThickness&&(e.bevelThickness=10),void 0===e.bevelSize&&(e.bevelSize=8),void 0===e.bevelEnabled&&(e.bevelEnabled=!1),vl.call(this,i,e),this.type="TextBufferGeometry"}function xl(t,e,n,i,r,o,a){xo.call(this),this.type="SphereGeometry",this.parameters={radius:t,widthSegments:e,heightSegments:n,phiStart:i,phiLength:r,thetaStart:o,thetaLength:a},this.fromBufferGeometry(new Ml(t,e,n,i,r,o,a)),this.mergeVertices()}function Ml(t,e,n,i,r,o,a){Zr.call(this),this.type="SphereBufferGeometry",this.parameters={radius:t,widthSegments:e,heightSegments:n,phiStart:i,phiLength:r,thetaStart:o,thetaLength:a},t=t||1,e=Math.max(3,Math.floor(e)||8),n=Math.max(2,Math.floor(n)||6),i=void 0!==i?i:0,r=void 0!==r?r:2*Math.PI,o=void 0!==o?o:0,a=void 0!==a?a:Math.PI;var s,c,l=Math.min(o+a,Math.PI),u=0,d=[],p=new oi,h=new oi,f=[],g=[],m=[],v=[];for(c=0;c<=n;c++){var y=[],b=c/n,w=0;for(0==c&&0==o?w=.5/e:c==n&&l==Math.PI&&(w=-.5/e),s=0;s<=e;s++){var S=s/e;p.x=-t*Math.cos(i+S*r)*Math.sin(o+b*a),p.y=t*Math.cos(o+b*a),p.z=t*Math.sin(i+S*r)*Math.sin(o+b*a),g.push(p.x,p.y,p.z),h.copy(p).normalize(),m.push(h.x,h.y,h.z),v.push(S+w,1-b),y.push(u++)}d.push(y)}for(c=0;c<n;c++)for(s=0;s<e;s++){var x=d[c][s+1],M=d[c][s],E=d[c+1][s],C=d[c+1][s+1];(0!==c||o>0)&&f.push(x,M,C),(c!==n-1||l<Math.PI)&&f.push(M,E,C)}this.setIndex(f),this.setAttribute("position",new Fr(g,3)),this.setAttribute("normal",new Fr(m,3)),this.setAttribute("uv",new Fr(v,2))}function El(t,e,n,i,r,o){xo.call(this),this.type="RingGeometry",this.parameters={innerRadius:t,outerRadius:e,thetaSegments:n,phiSegments:i,thetaStart:r,thetaLength:o},this.fromBufferGeometry(new Cl(t,e,n,i,r,o)),this.mergeVertices()}function Cl(t,e,n,i,r,o){Zr.call(this),this.type="RingBufferGeometry",this.parameters={innerRadius:t,outerRadius:e,thetaSegments:n,phiSegments:i,thetaStart:r,thetaLength:o},t=t||.5,e=e||1,r=void 0!==r?r:0,o=void 0!==o?o:2*Math.PI,n=void 0!==n?Math.max(3,n):8;var a,s,c,l=[],u=[],d=[],p=[],h=t,f=(e-t)/(i=void 0!==i?Math.max(1,i):1),g=new oi,m=new Xn;for(s=0;s<=i;s++){for(c=0;c<=n;c++)a=r+c/n*o,g.x=h*Math.cos(a),g.y=h*Math.sin(a),u.push(g.x,g.y,g.z),d.push(0,0,1),m.x=(g.x/e+1)/2,m.y=(g.y/e+1)/2,p.push(m.x,m.y);h+=f}for(s=0;s<i;s++){var v=s*(n+1);for(c=0;c<n;c++){var y=a=c+v,b=a+n+1,w=a+n+2,S=a+1;l.push(y,b,S),l.push(b,w,S)}}this.setIndex(l),this.setAttribute("position",new Fr(u,3)),this.setAttribute("normal",new Fr(d,3)),this.setAttribute("uv",new Fr(p,2))}function Al(t,e,n,i){xo.call(this),this.type="LatheGeometry",this.parameters={points:t,segments:e,phiStart:n,phiLength:i},this.fromBufferGeometry(new Tl(t,e,n,i)),this.mergeVertices()}function Tl(t,e,n,i){Zr.call(this),this.type="LatheBufferGeometry",this.parameters={points:t,segments:e,phiStart:n,phiLength:i},e=Math.floor(e)||12,n=n||0,i=i||2*Math.PI,i=Kn.clamp(i,0,2*Math.PI);var r,o,a,s=[],c=[],l=[],u=1/e,d=new oi,p=new Xn;for(o=0;o<=e;o++){var h=n+o*u*i,f=Math.sin(h),g=Math.cos(h);for(a=0;a<=t.length-1;a++)d.x=t[a].x*f,d.y=t[a].y,d.z=t[a].x*g,c.push(d.x,d.y,d.z),p.x=o/e,p.y=a/(t.length-1),l.push(p.x,p.y)}for(o=0;o<e;o++)for(a=0;a<t.length-1;a++){var m=r=a+o*t.length,v=r+t.length,y=r+t.length+1,b=r+1;s.push(m,v,b),s.push(v,y,b)}if(this.setIndex(s),this.setAttribute("position",new Fr(c,3)),this.setAttribute("uv",new Fr(l,2)),this.computeVertexNormals(),i===2*Math.PI){var w=this.attributes.normal.array,S=new oi,x=new oi,M=new oi;for(r=e*t.length*3,o=0,a=0;o<t.length;o++,a+=3)S.x=w[a+0],S.y=w[a+1],S.z=w[a+2],x.x=w[r+a+0],x.y=w[r+a+1],x.z=w[r+a+2],M.addVectors(S,x).normalize(),w[a+0]=w[r+a+0]=M.x,w[a+1]=w[r+a+1]=M.y,w[a+2]=w[r+a+2]=M.z}}function Ol(t,e){xo.call(this),this.type="ShapeGeometry","object"===o(e)&&(console.warn("THREE.ShapeGeometry: Options parameter has been removed."),e=e.curveSegments),this.parameters={shapes:t,curveSegments:e},this.fromBufferGeometry(new _l(t,e)),this.mergeVertices()}function _l(t,e){Zr.call(this),this.type="ShapeBufferGeometry",this.parameters={shapes:t,curveSegments:e},e=e||12;var n=[],i=[],r=[],o=[],a=0,s=0;if(!1===Array.isArray(t))l(t);else for(var c=0;c<t.length;c++)l(t[c]),this.addGroup(a,s,c),a+=s,s=0;function l(t){var a,c,l,u=i.length/3,d=t.extractPoints(e),p=d.shape,h=d.holes;for(!1===hl.isClockWise(p)&&(p=p.reverse()),a=0,c=h.length;a<c;a++)l=h[a],!0===hl.isClockWise(l)&&(h[a]=l.reverse());var f=hl.triangulateShape(p,h);for(a=0,c=h.length;a<c;a++)l=h[a],p=p.concat(l);for(a=0,c=p.length;a<c;a++){var g=p[a];i.push(g.x,g.y,0),r.push(0,0,1),o.push(g.x,g.y)}for(a=0,c=f.length;a<c;a++){var m=f[a],v=m[0]+u,y=m[1]+u,b=m[2]+u;n.push(v,y,b),s+=3}}this.setIndex(n),this.setAttribute("position",new Fr(i,3)),this.setAttribute("normal",new Fr(r,3)),this.setAttribute("uv",new Fr(o,2))}function Pl(t,e){if(e.shapes=[],Array.isArray(t))for(var n=0,i=t.length;n<i;n++){var r=t[n];e.shapes.push(r.uuid)}else e.shapes.push(t.uuid);return e}function Il(t,e){Zr.call(this),this.type="EdgesGeometry",this.parameters={thresholdAngle:e},e=void 0!==e?e:1;var n,i,r,o,a=[],s=Math.cos(Kn.DEG2RAD*e),c=[0,0],l={},u=["a","b","c"];t.isBufferGeometry?(o=new xo).fromBufferGeometry(t):o=t.clone(),o.mergeVertices(),o.computeFaceNormals();for(var d=o.vertices,p=o.faces,h=0,f=p.length;h<f;h++)for(var g=p[h],m=0;m<3;m++)n=g[u[m]],i=g[u[(m+1)%3]],c[0]=Math.min(n,i),c[1]=Math.max(n,i),void 0===l[r=c[0]+","+c[1]]?l[r]={index1:c[0],index2:c[1],face1:h,face2:void 0}:l[r].face2=h;for(r in l){var v=l[r];if(void 0===v.face2||p[v.face1].normal.dot(p[v.face2].normal)<=s){var y=d[v.index1];a.push(y.x,y.y,y.z),y=d[v.index2],a.push(y.x,y.y,y.z)}}this.setAttribute("position",new Fr(a,3))}function kl(t,e,n,i,r,o,a,s){xo.call(this),this.type="CylinderGeometry",this.parameters={radiusTop:t,radiusBottom:e,height:n,radialSegments:i,heightSegments:r,openEnded:o,thetaStart:a,thetaLength:s},this.fromBufferGeometry(new Dl(t,e,n,i,r,o,a,s)),this.mergeVertices()}function Dl(t,e,n,i,r,o,a,s){Zr.call(this),this.type="CylinderBufferGeometry",this.parameters={radiusTop:t,radiusBottom:e,height:n,radialSegments:i,heightSegments:r,openEnded:o,thetaStart:a,thetaLength:s};var c=this;t=void 0!==t?t:1,e=void 0!==e?e:1,n=n||1,i=Math.floor(i)||8,r=Math.floor(r)||1,o=void 0!==o&&o,a=void 0!==a?a:0,s=void 0!==s?s:2*Math.PI;var l=[],u=[],d=[],p=[],h=0,f=[],g=n/2,m=0;function v(n){var r,o,f,v=new Xn,y=new oi,b=0,w=!0===n?t:e,S=!0===n?1:-1;for(o=h,r=1;r<=i;r++)u.push(0,g*S,0),d.push(0,S,0),p.push(.5,.5),h++;for(f=h,r=0;r<=i;r++){var x=r/i*s+a,M=Math.cos(x),E=Math.sin(x);y.x=w*E,y.y=g*S,y.z=w*M,u.push(y.x,y.y,y.z),d.push(0,S,0),v.x=.5*M+.5,v.y=.5*E*S+.5,p.push(v.x,v.y),h++}for(r=0;r<i;r++){var C=o+r,A=f+r;!0===n?l.push(A,A+1,C):l.push(A+1,A,C),b+=3}c.addGroup(m,b,!0===n?1:2),m+=b}!function(){var o,v,y=new oi,b=new oi,w=0,S=(e-t)/n;for(v=0;v<=r;v++){var x=[],M=v/r,E=M*(e-t)+t;for(o=0;o<=i;o++){var C=o/i,A=C*s+a,T=Math.sin(A),O=Math.cos(A);b.x=E*T,b.y=-M*n+g,b.z=E*O,u.push(b.x,b.y,b.z),y.set(T,S,O).normalize(),d.push(y.x,y.y,y.z),p.push(C,1-M),x.push(h++)}f.push(x)}for(o=0;o<i;o++)for(v=0;v<r;v++){var _=f[v][o],P=f[v+1][o],I=f[v+1][o+1],k=f[v][o+1];l.push(_,P,k),l.push(P,I,k),w+=6}c.addGroup(m,w,0),m+=w}(),!1===o&&(t>0&&v(!0),e>0&&v(!1)),this.setIndex(l),this.setAttribute("position",new Fr(u,3)),this.setAttribute("normal",new Fr(d,3)),this.setAttribute("uv",new Fr(p,2))}function Rl(t,e,n,i,r,o,a){kl.call(this,0,t,e,n,i,r,o,a),this.type="ConeGeometry",this.parameters={radius:t,height:e,radialSegments:n,heightSegments:i,openEnded:r,thetaStart:o,thetaLength:a}}function Ll(t,e,n,i,r,o,a){Dl.call(this,0,t,e,n,i,r,o,a),this.type="ConeBufferGeometry",this.parameters={radius:t,height:e,radialSegments:n,heightSegments:i,openEnded:r,thetaStart:o,thetaLength:a}}function Nl(t,e,n,i){xo.call(this),this.type="CircleGeometry",this.parameters={radius:t,segments:e,thetaStart:n,thetaLength:i},this.fromBufferGeometry(new jl(t,e,n,i)),this.mergeVertices()}function jl(t,e,n,i){Zr.call(this),this.type="CircleBufferGeometry",this.parameters={radius:t,segments:e,thetaStart:n,thetaLength:i},t=t||1,e=void 0!==e?Math.max(3,e):8,n=void 0!==n?n:0,i=void 0!==i?i:2*Math.PI;var r,o,a=[],s=[],c=[],l=[],u=new oi,d=new Xn;for(s.push(0,0,0),c.push(0,0,1),l.push(.5,.5),o=0,r=3;o<=e;o++,r+=3){var p=n+o/e*i;u.x=t*Math.cos(p),u.y=t*Math.sin(p),s.push(u.x,u.y,u.z),c.push(0,0,1),d.x=(s[r]/t+1)/2,d.y=(s[r+1]/t+1)/2,l.push(d.x,d.y)}for(r=1;r<=e;r++)a.push(r,r+1,0);this.setIndex(a),this.setAttribute("position",new Fr(s,3)),this.setAttribute("normal",new Fr(c,3)),this.setAttribute("uv",new Fr(l,2))}wl.prototype=Object.create(xo.prototype),wl.prototype.constructor=wl,Sl.prototype=Object.create(vl.prototype),Sl.prototype.constructor=Sl,xl.prototype=Object.create(xo.prototype),xl.prototype.constructor=xl,Ml.prototype=Object.create(Zr.prototype),Ml.prototype.constructor=Ml,El.prototype=Object.create(xo.prototype),El.prototype.constructor=El,Cl.prototype=Object.create(Zr.prototype),Cl.prototype.constructor=Cl,Al.prototype=Object.create(xo.prototype),Al.prototype.constructor=Al,Tl.prototype=Object.create(Zr.prototype),Tl.prototype.constructor=Tl,Ol.prototype=Object.create(xo.prototype),Ol.prototype.constructor=Ol,Ol.prototype.toJSON=function(){var t=xo.prototype.toJSON.call(this);return Pl(this.parameters.shapes,t)},_l.prototype=Object.create(Zr.prototype),_l.prototype.constructor=_l,_l.prototype.toJSON=function(){var t=Zr.prototype.toJSON.call(this);return Pl(this.parameters.shapes,t)},Il.prototype=Object.create(Zr.prototype),Il.prototype.constructor=Il,kl.prototype=Object.create(xo.prototype),kl.prototype.constructor=kl,Dl.prototype=Object.create(Zr.prototype),Dl.prototype.constructor=Dl,Rl.prototype=Object.create(kl.prototype),Rl.prototype.constructor=Rl,Ll.prototype=Object.create(Dl.prototype),Ll.prototype.constructor=Ll,Nl.prototype=Object.create(xo.prototype),Nl.prototype.constructor=Nl,jl.prototype=Object.create(Zr.prototype),jl.prototype.constructor=jl;var Vl=Object.freeze({__proto__:null,WireframeGeometry:Tc,ParametricGeometry:Oc,ParametricBufferGeometry:_c,TetrahedronGeometry:kc,TetrahedronBufferGeometry:Dc,OctahedronGeometry:Rc,OctahedronBufferGeometry:Lc,IcosahedronGeometry:Nc,IcosahedronBufferGeometry:jc,DodecahedronGeometry:Vc,DodecahedronBufferGeometry:Fc,PolyhedronGeometry:Pc,PolyhedronBufferGeometry:Ic,TubeGeometry:Uc,TubeBufferGeometry:Bc,TorusKnotGeometry:zc,TorusKnotBufferGeometry:Gc,TorusGeometry:Hc,TorusBufferGeometry:Wc,TextGeometry:wl,TextBufferGeometry:Sl,SphereGeometry:xl,SphereBufferGeometry:Ml,RingGeometry:El,RingBufferGeometry:Cl,PlaneGeometry:Fo,PlaneBufferGeometry:Uo,LatheGeometry:Al,LatheBufferGeometry:Tl,ShapeGeometry:Ol,ShapeBufferGeometry:_l,ExtrudeGeometry:ml,ExtrudeBufferGeometry:vl,EdgesGeometry:Il,ConeGeometry:Rl,ConeBufferGeometry:Ll,CylinderGeometry:kl,CylinderBufferGeometry:Dl,CircleGeometry:Nl,CircleBufferGeometry:jl,BoxGeometry:Mo,BoxBufferGeometry:Eo});function Fl(t){Or.call(this),this.type="ShadowMaterial",this.color=new xr(0),this.transparent=!0,this.setValues(t)}function Ul(t){Oo.call(this,t),this.type="RawShaderMaterial"}function Bl(t){Or.call(this),this.defines={STANDARD:""},this.type="MeshStandardMaterial",this.color=new xr(16777215),this.roughness=1,this.metalness=0,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new xr(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=mn,this.normalScale=new Xn(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.roughnessMap=null,this.metalnessMap=null,this.alphaMap=null,this.envMap=null,this.envMapIntensity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.vertexTangents=!1,this.setValues(t)}function zl(t){Bl.call(this),this.defines={STANDARD:"",PHYSICAL:""},this.type="MeshPhysicalMaterial",this.clearcoat=0,this.clearcoatMap=null,this.clearcoatRoughness=0,this.clearcoatRoughnessMap=null,this.clearcoatNormalScale=new Xn(1,1),this.clearcoatNormalMap=null,this.reflectivity=.5,this.sheen=null,this.transparency=0,this.setValues(t)}function Gl(t){Or.call(this),this.type="MeshPhongMaterial",this.color=new xr(16777215),this.specular=new xr(1118481),this.shininess=30,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new xr(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=mn,this.normalScale=new Xn(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=ot,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.setValues(t)}function Hl(t){Or.call(this),this.defines={TOON:""},this.type="MeshToonMaterial",this.color=new xr(16777215),this.specular=new xr(1118481),this.shininess=30,this.map=null,this.gradientMap=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new xr(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=mn,this.normalScale=new Xn(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.setValues(t)}function Wl(t){Or.call(this),this.type="MeshNormalMaterial",this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=mn,this.normalScale=new Xn(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!1,this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.setValues(t)}function ql(t){Or.call(this),this.type="MeshLambertMaterial",this.color=new xr(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new xr(0),this.emissiveIntensity=1,this.emissiveMap=null,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=ot,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.setValues(t)}function Kl(t){Or.call(this),this.defines={MATCAP:""},this.type="MeshMatcapMaterial",this.color=new xr(16777215),this.matcap=null,this.map=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=mn,this.normalScale=new Xn(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.setValues(t)}function Xl(t){oc.call(this),this.type="LineDashedMaterial",this.scale=1,this.dashSize=3,this.gapSize=1,this.setValues(t)}Fl.prototype=Object.create(Or.prototype),Fl.prototype.constructor=Fl,Fl.prototype.isShadowMaterial=!0,Fl.prototype.copy=function(t){return Or.prototype.copy.call(this,t),this.color.copy(t.color),this},Ul.prototype=Object.create(Oo.prototype),Ul.prototype.constructor=Ul,Ul.prototype.isRawShaderMaterial=!0,Bl.prototype=Object.create(Or.prototype),Bl.prototype.constructor=Bl,Bl.prototype.isMeshStandardMaterial=!0,Bl.prototype.copy=function(t){return Or.prototype.copy.call(this,t),this.defines={STANDARD:""},this.color.copy(t.color),this.roughness=t.roughness,this.metalness=t.metalness,this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.roughnessMap=t.roughnessMap,this.metalnessMap=t.metalnessMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.envMapIntensity=t.envMapIntensity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this.vertexTangents=t.vertexTangents,this},zl.prototype=Object.create(Bl.prototype),zl.prototype.constructor=zl,zl.prototype.isMeshPhysicalMaterial=!0,zl.prototype.copy=function(t){return Bl.prototype.copy.call(this,t),this.defines={STANDARD:"",PHYSICAL:""},this.clearcoat=t.clearcoat,this.clearcoatMap=t.clearcoatMap,this.clearcoatRoughness=t.clearcoatRoughness,this.clearcoatRoughnessMap=t.clearcoatRoughnessMap,this.clearcoatNormalMap=t.clearcoatNormalMap,this.clearcoatNormalScale.copy(t.clearcoatNormalScale),this.reflectivity=t.reflectivity,t.sheen?this.sheen=(this.sheen||new xr).copy(t.sheen):this.sheen=null,this.transparency=t.transparency,this},Gl.prototype=Object.create(Or.prototype),Gl.prototype.constructor=Gl,Gl.prototype.isMeshPhongMaterial=!0,Gl.prototype.copy=function(t){return Or.prototype.copy.call(this,t),this.color.copy(t.color),this.specular.copy(t.specular),this.shininess=t.shininess,this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.combine=t.combine,this.reflectivity=t.reflectivity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this},Hl.prototype=Object.create(Or.prototype),Hl.prototype.constructor=Hl,Hl.prototype.isMeshToonMaterial=!0,Hl.prototype.copy=function(t){return Or.prototype.copy.call(this,t),this.color.copy(t.color),this.specular.copy(t.specular),this.shininess=t.shininess,this.map=t.map,this.gradientMap=t.gradientMap,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this},Wl.prototype=Object.create(Or.prototype),Wl.prototype.constructor=Wl,Wl.prototype.isMeshNormalMaterial=!0,Wl.prototype.copy=function(t){return Or.prototype.copy.call(this,t),this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this},ql.prototype=Object.create(Or.prototype),ql.prototype.constructor=ql,ql.prototype.isMeshLambertMaterial=!0,ql.prototype.copy=function(t){return Or.prototype.copy.call(this,t),this.color.copy(t.color),this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.combine=t.combine,this.reflectivity=t.reflectivity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this},Kl.prototype=Object.create(Or.prototype),Kl.prototype.constructor=Kl,Kl.prototype.isMeshMatcapMaterial=!0,Kl.prototype.copy=function(t){return Or.prototype.copy.call(this,t),this.defines={MATCAP:""},this.color.copy(t.color),this.matcap=t.matcap,this.map=t.map,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.alphaMap=t.alphaMap,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this},Xl.prototype=Object.create(oc.prototype),Xl.prototype.constructor=Xl,Xl.prototype.isLineDashedMaterial=!0,Xl.prototype.copy=function(t){return oc.prototype.copy.call(this,t),this.scale=t.scale,this.dashSize=t.dashSize,this.gapSize=t.gapSize,this};var Yl=Object.freeze({__proto__:null,ShadowMaterial:Fl,SpriteMaterial:Is,RawShaderMaterial:Ul,ShaderMaterial:Oo,PointsMaterial:mc,MeshPhysicalMaterial:zl,MeshStandardMaterial:Bl,MeshPhongMaterial:Gl,MeshToonMaterial:Hl,MeshNormalMaterial:Wl,MeshLambertMaterial:ql,MeshDepthMaterial:gs,MeshDistanceMaterial:ms,MeshBasicMaterial:_r,MeshMatcapMaterial:Kl,LineDashedMaterial:Xl,LineBasicMaterial:oc,Material:Or}),Zl={arraySlice:function(t,e,n){return Zl.isTypedArray(t)?new t.constructor(t.subarray(e,void 0!==n?n:t.length)):t.slice(e,n)},convertArray:function(t,e,n){return!t||!n&&t.constructor===e?t:"number"==typeof e.BYTES_PER_ELEMENT?new e(t):Array.prototype.slice.call(t)},isTypedArray:function(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)},getKeyframeOrder:function(t){for(var e=t.length,n=new Array(e),i=0;i!==e;++i)n[i]=i;return n.sort(function(e,n){return t[e]-t[n]}),n},sortedArray:function(t,e,n){for(var i=t.length,r=new t.constructor(i),o=0,a=0;a!==i;++o)for(var s=n[o]*e,c=0;c!==e;++c)r[a++]=t[s+c];return r},flattenJSON:function(t,e,n,i){for(var r=1,o=t[0];void 0!==o&&void 0===o[i];)o=t[r++];if(void 0!==o){var a=o[i];if(void 0!==a)if(Array.isArray(a))do{void 0!==(a=o[i])&&(e.push(o.time),n.push.apply(n,a)),o=t[r++]}while(void 0!==o);else if(void 0!==a.toArray)do{void 0!==(a=o[i])&&(e.push(o.time),a.toArray(n,n.length)),o=t[r++]}while(void 0!==o);else do{void 0!==(a=o[i])&&(e.push(o.time),n.push(a)),o=t[r++]}while(void 0!==o)}},subclip:function(t,e,n,i,r){r=r||30;var o=t.clone();o.name=e;for(var a=[],s=0;s<o.tracks.length;++s){for(var c=o.tracks[s],l=c.getValueSize(),u=[],d=[],p=0;p<c.times.length;++p){var h=c.times[p]*r;if(!(h<n||h>=i)){u.push(c.times[p]);for(var f=0;f<l;++f)d.push(c.values[p*l+f])}}0!==u.length&&(c.times=Zl.convertArray(u,c.times.constructor),c.values=Zl.convertArray(d,c.values.constructor),a.push(c))}o.tracks=a;var g=1/0;for(s=0;s<o.tracks.length;++s)g>o.tracks[s].times[0]&&(g=o.tracks[s].times[0]);for(s=0;s<o.tracks.length;++s)o.tracks[s].shift(-1*g);return o.resetDuration(),o}};function Jl(t,e,n,i){this.parameterPositions=t,this._cachedIndex=0,this.resultBuffer=void 0!==i?i:new e.constructor(n),this.sampleValues=e,this.valueSize=n}function Ql(t,e,n,i){Jl.call(this,t,e,n,i),this._weightPrev=-0,this._offsetPrev=-0,this._weightNext=-0,this._offsetNext=-0}function $l(t,e,n,i){Jl.call(this,t,e,n,i)}function tu(t,e,n,i){Jl.call(this,t,e,n,i)}function eu(t,e,n,i){if(void 0===t)throw new Error("THREE.KeyframeTrack: track name is undefined");if(void 0===e||0===e.length)throw new Error("THREE.KeyframeTrack: no keyframes in track named "+t);this.name=t,this.times=Zl.convertArray(e,this.TimeBufferType),this.values=Zl.convertArray(n,this.ValueBufferType),this.setInterpolation(i||this.DefaultInterpolation)}function nu(t,e,n){eu.call(this,t,e,n)}function iu(t,e,n,i){eu.call(this,t,e,n,i)}function ru(t,e,n,i){eu.call(this,t,e,n,i)}function ou(t,e,n,i){Jl.call(this,t,e,n,i)}function au(t,e,n,i){eu.call(this,t,e,n,i)}function su(t,e,n,i){eu.call(this,t,e,n,i)}function cu(t,e,n,i){eu.call(this,t,e,n,i)}function lu(t,e,n){this.name=t,this.tracks=n,this.duration=void 0!==e?e:-1,this.uuid=Kn.generateUUID(),this.duration<0&&this.resetDuration()}function uu(t){if(void 0===t.type)throw new Error("THREE.KeyframeTrack: track type undefined, can not parse");var e=function(t){switch(t.toLowerCase()){case"scalar":case"double":case"float":case"number":case"integer":return ru;case"vector":case"vector2":case"vector3":case"vector4":return cu;case"color":return iu;case"quaternion":return au;case"bool":case"boolean":return nu;case"string":return su}throw new Error("THREE.KeyframeTrack: Unsupported typeName: "+t)}(t.type);if(void 0===t.times){var n=[],i=[];Zl.flattenJSON(t.keys,n,i,"value"),t.times=n,t.values=i}return void 0!==e.parse?e.parse(t):new e(t.name,t.times,t.values,t.interpolation)}Object.assign(Jl.prototype,{evaluate:function(t){var e=this.parameterPositions,n=this._cachedIndex,i=e[n],r=e[n-1];t:{e:{var o;n:{i:if(!(t<i)){for(var a=n+2;;){if(void 0===i){if(t<r)break i;return n=e.length,this._cachedIndex=n,this.afterEnd_(n-1,t,r)}if(n===a)break;if(r=i,t<(i=e[++n]))break e}o=e.length;break n}if(t>=r)break t;var s=e[1];for(t<s&&(n=2,r=s),a=n-2;;){if(void 0===r)return this._cachedIndex=0,this.beforeStart_(0,t,i);if(n===a)break;if(i=r,t>=(r=e[--n-1]))break e}o=n,n=0}for(;n<o;){var c=n+o>>>1;t<e[c]?o=c:n=c+1}if(i=e[n],void 0===(r=e[n-1]))return this._cachedIndex=0,this.beforeStart_(0,t,i);if(void 0===i)return n=e.length,this._cachedIndex=n,this.afterEnd_(n-1,r,t)}this._cachedIndex=n,this.intervalChanged_(n,r,i)}return this.interpolate_(n,r,t,i)},settings:null,DefaultSettings_:{},getSettings_:function(){return this.settings||this.DefaultSettings_},copySampleValue_:function(t){for(var e=this.resultBuffer,n=this.sampleValues,i=this.valueSize,r=t*i,o=0;o!==i;++o)e[o]=n[r+o];return e},interpolate_:function(){throw new Error("call to abstract method")},intervalChanged_:function(){}}),Object.assign(Jl.prototype,{beforeStart_:Jl.prototype.copySampleValue_,afterEnd_:Jl.prototype.copySampleValue_}),Ql.prototype=Object.assign(Object.create(Jl.prototype),{constructor:Ql,DefaultSettings_:{endingStart:$e,endingEnd:$e},intervalChanged_:function(t,e,n){var i=this.parameterPositions,r=t-2,o=t+1,a=i[r],s=i[o];if(void 0===a)switch(this.getSettings_().endingStart){case tn:r=t,a=2*e-n;break;case en:a=e+i[r=i.length-2]-i[r+1];break;default:r=t,a=n}if(void 0===s)switch(this.getSettings_().endingEnd){case tn:o=t,s=2*n-e;break;case en:o=1,s=n+i[1]-i[0];break;default:o=t-1,s=e}var c=.5*(n-e),l=this.valueSize;this._weightPrev=c/(e-a),this._weightNext=c/(s-n),this._offsetPrev=r*l,this._offsetNext=o*l},interpolate_:function(t,e,n,i){for(var r=this.resultBuffer,o=this.sampleValues,a=this.valueSize,s=t*a,c=s-a,l=this._offsetPrev,u=this._offsetNext,d=this._weightPrev,p=this._weightNext,h=(n-e)/(i-e),f=h*h,g=f*h,m=-d*g+2*d*f-d*h,v=(1+d)*g+(-1.5-2*d)*f+(-.5+d)*h+1,y=(-1-p)*g+(1.5+p)*f+.5*h,b=p*g-p*f,w=0;w!==a;++w)r[w]=m*o[l+w]+v*o[c+w]+y*o[s+w]+b*o[u+w];return r}}),$l.prototype=Object.assign(Object.create(Jl.prototype),{constructor:$l,interpolate_:function(t,e,n,i){for(var r=this.resultBuffer,o=this.sampleValues,a=this.valueSize,s=t*a,c=s-a,l=(n-e)/(i-e),u=1-l,d=0;d!==a;++d)r[d]=o[c+d]*u+o[s+d]*l;return r}}),tu.prototype=Object.assign(Object.create(Jl.prototype),{constructor:tu,interpolate_:function(t){return this.copySampleValue_(t-1)}}),Object.assign(eu,{toJSON:function(t){var e,n=t.constructor;if(void 0!==n.toJSON)e=n.toJSON(t);else{e={name:t.name,times:Zl.convertArray(t.times,Array),values:Zl.convertArray(t.values,Array)};var i=t.getInterpolation();i!==t.DefaultInterpolation&&(e.interpolation=i)}return e.type=t.ValueTypeName,e}}),Object.assign(eu.prototype,{constructor:eu,TimeBufferType:Float32Array,ValueBufferType:Float32Array,DefaultInterpolation:Je,InterpolantFactoryMethodDiscrete:function(t){return new tu(this.times,this.values,this.getValueSize(),t)},InterpolantFactoryMethodLinear:function(t){return new $l(this.times,this.values,this.getValueSize(),t)},InterpolantFactoryMethodSmooth:function(t){return new Ql(this.times,this.values,this.getValueSize(),t)},setInterpolation:function(t){var e;switch(t){case Ze:e=this.InterpolantFactoryMethodDiscrete;break;case Je:e=this.InterpolantFactoryMethodLinear;break;case Qe:e=this.InterpolantFactoryMethodSmooth}if(void 0===e){var n="unsupported interpolation for "+this.ValueTypeName+" keyframe track named "+this.name;if(void 0===this.createInterpolant){if(t===this.DefaultInterpolation)throw new Error(n);this.setInterpolation(this.DefaultInterpolation)}return console.warn("THREE.KeyframeTrack:",n),this}return this.createInterpolant=e,this},getInterpolation:function(){switch(this.createInterpolant){case this.InterpolantFactoryMethodDiscrete:return Ze;case this.InterpolantFactoryMethodLinear:return Je;case this.InterpolantFactoryMethodSmooth:return Qe}},getValueSize:function(){return this.values.length/this.times.length},shift:function(t){if(0!==t)for(var e=this.times,n=0,i=e.length;n!==i;++n)e[n]+=t;return this},scale:function(t){if(1!==t)for(var e=this.times,n=0,i=e.length;n!==i;++n)e[n]*=t;return this},trim:function(t,e){for(var n=this.times,i=n.length,r=0,o=i-1;r!==i&&n[r]<t;)++r;for(;-1!==o&&n[o]>e;)--o;if(++o,0!==r||o!==i){r>=o&&(r=(o=Math.max(o,1))-1);var a=this.getValueSize();this.times=Zl.arraySlice(n,r,o),this.values=Zl.arraySlice(this.values,r*a,o*a)}return this},validate:function(){var t=!0,e=this.getValueSize();e-Math.floor(e)!=0&&(console.error("THREE.KeyframeTrack: Invalid value size in track.",this),t=!1);var n=this.times,i=this.values,r=n.length;0===r&&(console.error("THREE.KeyframeTrack: Track is empty.",this),t=!1);for(var o=null,a=0;a!==r;a++){var s=n[a];if("number"==typeof s&&isNaN(s)){console.error("THREE.KeyframeTrack: Time is not a valid number.",this,a,s),t=!1;break}if(null!==o&&o>s){console.error("THREE.KeyframeTrack: Out of order keys.",this,a,s,o),t=!1;break}o=s}if(void 0!==i&&Zl.isTypedArray(i)){a=0;for(var c=i.length;a!==c;++a){var l=i[a];if(isNaN(l)){console.error("THREE.KeyframeTrack: Value is not a valid number.",this,a,l),t=!1;break}}}return t},optimize:function(){for(var t=Zl.arraySlice(this.times),e=Zl.arraySlice(this.values),n=this.getValueSize(),i=this.getInterpolation()===Qe,r=1,o=t.length-1,a=1;a<o;++a){var s=!1,c=t[a];if(c!==t[a+1]&&(1!==a||c!==c[0]))if(i)s=!0;else for(var l=a*n,u=l-n,d=l+n,p=0;p!==n;++p){var h=e[l+p];if(h!==e[u+p]||h!==e[d+p]){s=!0;break}}if(s){if(a!==r){t[r]=t[a];var f=a*n,g=r*n;for(p=0;p!==n;++p)e[g+p]=e[f+p]}++r}}if(o>0){for(t[r]=t[o],f=o*n,g=r*n,p=0;p!==n;++p)e[g+p]=e[f+p];++r}return r!==t.length?(this.times=Zl.arraySlice(t,0,r),this.values=Zl.arraySlice(e,0,r*n)):(this.times=t,this.values=e),this},clone:function(){var t=Zl.arraySlice(this.times,0),e=Zl.arraySlice(this.values,0),n=new(0,this.constructor)(this.name,t,e);return n.createInterpolant=this.createInterpolant,n}}),nu.prototype=Object.assign(Object.create(eu.prototype),{constructor:nu,ValueTypeName:"bool",ValueBufferType:Array,DefaultInterpolation:Ze,InterpolantFactoryMethodLinear:void 0,InterpolantFactoryMethodSmooth:void 0}),iu.prototype=Object.assign(Object.create(eu.prototype),{constructor:iu,ValueTypeName:"color"}),ru.prototype=Object.assign(Object.create(eu.prototype),{constructor:ru,ValueTypeName:"number"}),ou.prototype=Object.assign(Object.create(Jl.prototype),{constructor:ou,interpolate_:function(t,e,n,i){for(var r=this.resultBuffer,o=this.sampleValues,a=this.valueSize,s=t*a,c=(n-e)/(i-e),l=s+a;s!==l;s+=4)ni.slerpFlat(r,0,o,s-a,o,s,c);return r}}),au.prototype=Object.assign(Object.create(eu.prototype),{constructor:au,ValueTypeName:"quaternion",DefaultInterpolation:Je,InterpolantFactoryMethodLinear:function(t){return new ou(this.times,this.values,this.getValueSize(),t)},InterpolantFactoryMethodSmooth:void 0}),su.prototype=Object.assign(Object.create(eu.prototype),{constructor:su,ValueTypeName:"string",ValueBufferType:Array,DefaultInterpolation:Ze,InterpolantFactoryMethodLinear:void 0,InterpolantFactoryMethodSmooth:void 0}),cu.prototype=Object.assign(Object.create(eu.prototype),{constructor:cu,ValueTypeName:"vector"}),Object.assign(lu,{parse:function(t){for(var e=[],n=t.tracks,i=1/(t.fps||1),r=0,o=n.length;r!==o;++r)e.push(uu(n[r]).scale(i));return new lu(t.name,t.duration,e)},toJSON:function(t){for(var e=[],n=t.tracks,i={name:t.name,duration:t.duration,tracks:e,uuid:t.uuid},r=0,o=n.length;r!==o;++r)e.push(eu.toJSON(n[r]));return i},CreateFromMorphTargetSequence:function(t,e,n,i){for(var r=e.length,o=[],a=0;a<r;a++){var s=[],c=[];s.push((a+r-1)%r,a,(a+1)%r),c.push(0,1,0);var l=Zl.getKeyframeOrder(s);s=Zl.sortedArray(s,1,l),c=Zl.sortedArray(c,1,l),i||0!==s[0]||(s.push(r),c.push(c[0])),o.push(new ru(".morphTargetInfluences["+e[a].name+"]",s,c).scale(1/n))}return new lu(t,-1,o)},findByName:function(t,e){var n=t;if(!Array.isArray(t)){var i=t;n=i.geometry&&i.geometry.animations||i.animations}for(var r=0;r<n.length;r++)if(n[r].name===e)return n[r];return null},CreateClipsFromMorphTargetSequences:function(t,e,n){for(var i={},r=/^([\w-]*?)([\d]+)$/,o=0,a=t.length;o<a;o++){var s=t[o],c=s.name.match(r);if(c&&c.length>1){var l=i[d=c[1]];l||(i[d]=l=[]),l.push(s)}}var u=[];for(var d in i)u.push(lu.CreateFromMorphTargetSequence(d,i[d],e,n));return u},parseAnimation:function(t,e){if(!t)return console.error("THREE.AnimationClip: No animation in JSONLoader data."),null;for(var n=function(t,e,n,i,r){if(0!==n.length){var o=[],a=[];Zl.flattenJSON(n,o,a,i),0!==o.length&&r.push(new t(e,o,a))}},i=[],r=t.name||"default",o=t.length||-1,a=t.fps||30,s=t.hierarchy||[],c=0;c<s.length;c++){var l=s[c].keys;if(l&&0!==l.length)if(l[0].morphTargets){for(var u={},d=0;d<l.length;d++)if(l[d].morphTargets)for(var p=0;p<l[d].morphTargets.length;p++)u[l[d].morphTargets[p]]=-1;for(var h in u){var f=[],g=[];for(p=0;p!==l[d].morphTargets.length;++p){var m=l[d];f.push(m.time),g.push(m.morphTarget===h?1:0)}i.push(new ru(".morphTargetInfluence["+h+"]",f,g))}o=u.length*(a||1)}else{var v=".bones["+e[c].name+"]";n(cu,v+".position",l,"pos",i),n(au,v+".quaternion",l,"rot",i),n(cu,v+".scale",l,"scl",i)}}return 0===i.length?null:new lu(r,o,i)}}),Object.assign(lu.prototype,{resetDuration:function(){for(var t=0,e=0,n=this.tracks.length;e!==n;++e){var i=this.tracks[e];t=Math.max(t,i.times[i.times.length-1])}return this.duration=t,this},trim:function(){for(var t=0;t<this.tracks.length;t++)this.tracks[t].trim(0,this.duration);return this},validate:function(){for(var t=!0,e=0;e<this.tracks.length;e++)t=t&&this.tracks[e].validate();return t},optimize:function(){for(var t=0;t<this.tracks.length;t++)this.tracks[t].optimize();return this},clone:function(){for(var t=[],e=0;e<this.tracks.length;e++)t.push(this.tracks[e].clone());return new lu(this.name,this.duration,t)}});var du={enabled:!1,files:{},add:function(t,e){!1!==this.enabled&&(this.files[t]=e)},get:function(t){if(!1!==this.enabled)return this.files[t]},remove:function(t){delete this.files[t]},clear:function(){this.files={}}};function pu(t,e,n){var i=this,r=!1,o=0,a=0,s=void 0,c=[];this.onStart=void 0,this.onLoad=t,this.onProgress=e,this.onError=n,this.itemStart=function(t){a++,!1===r&&void 0!==i.onStart&&i.onStart(t,o,a),r=!0},this.itemEnd=function(t){o++,void 0!==i.onProgress&&i.onProgress(t,o,a),o===a&&(r=!1,void 0!==i.onLoad&&i.onLoad())},this.itemError=function(t){void 0!==i.onError&&i.onError(t)},this.resolveURL=function(t){return s?s(t):t},this.setURLModifier=function(t){return s=t,this},this.addHandler=function(t,e){return c.push(t,e),this},this.removeHandler=function(t){var e=c.indexOf(t);return-1!==e&&c.splice(e,2),this},this.getHandler=function(t){for(var e=0,n=c.length;e<n;e+=2){var i=c[e],r=c[e+1];if(i.global&&(i.lastIndex=0),i.test(t))return r}return null}}var hu=new pu;function fu(t){this.manager=void 0!==t?t:hu,this.crossOrigin="anonymous",this.path="",this.resourcePath=""}Object.assign(fu.prototype,{load:function(){},parse:function(){},setCrossOrigin:function(t){return this.crossOrigin=t,this},setPath:function(t){return this.path=t,this},setResourcePath:function(t){return this.resourcePath=t,this}});var gu={};function mu(t){fu.call(this,t)}function vu(t){fu.call(this,t)}function yu(t){fu.call(this,t)}function bu(t){fu.call(this,t)}function wu(t){fu.call(this,t)}function Su(t){fu.call(this,t)}function xu(t){fu.call(this,t)}function Mu(){this.type="Curve",this.arcLengthDivisions=200}function Eu(t,e,n,i,r,o,a,s){Mu.call(this),this.type="EllipseCurve",this.aX=t||0,this.aY=e||0,this.xRadius=n||1,this.yRadius=i||1,this.aStartAngle=r||0,this.aEndAngle=o||2*Math.PI,this.aClockwise=a||!1,this.aRotation=s||0}function Cu(t,e,n,i,r,o){Eu.call(this,t,e,n,n,i,r,o),this.type="ArcCurve"}function Au(){var t=0,e=0,n=0,i=0;function r(r,o,a,s){t=r,e=a,n=-3*r+3*o-2*a-s,i=2*r-2*o+a+s}return{initCatmullRom:function(t,e,n,i,o){r(e,n,o*(n-t),o*(i-e))},initNonuniformCatmullRom:function(t,e,n,i,o,a,s){var c=(e-t)/o-(n-t)/(o+a)+(n-e)/a,l=(n-e)/a-(i-e)/(a+s)+(i-n)/s;r(e,n,c*=a,l*=a)},calc:function(r){var o=r*r;return t+e*r+n*o+i*(o*r)}}}mu.prototype=Object.assign(Object.create(fu.prototype),{constructor:mu,load:function(t,e,n,i){void 0===t&&(t=""),void 0!==this.path&&(t=this.path+t),t=this.manager.resolveURL(t);var r=this,o=du.get(t);if(void 0!==o)return r.manager.itemStart(t),setTimeout(function(){e&&e(o),r.manager.itemEnd(t)},0),o;if(void 0===gu[t]){var a=t.match(/^data:(.*?)(;base64)?,(.*)$/);if(a){var s=a[1],c=!!a[2],l=a[3];l=decodeURIComponent(l),c&&(l=atob(l));try{var u,d=(this.responseType||"").toLowerCase();switch(d){case"arraybuffer":case"blob":for(var p=new Uint8Array(l.length),h=0;h<l.length;h++)p[h]=l.charCodeAt(h);u="blob"===d?new Blob([p.buffer],{type:s}):p.buffer;break;case"document":var f=new DOMParser;u=f.parseFromString(l,s);break;case"json":u=JSON.parse(l);break;default:u=l}setTimeout(function(){e&&e(u),r.manager.itemEnd(t)},0)}catch(e){setTimeout(function(){i&&i(e),r.manager.itemError(t),r.manager.itemEnd(t)},0)}}else{gu[t]=[],gu[t].push({onLoad:e,onProgress:n,onError:i});var g=new XMLHttpRequest;for(var m in g.open("GET",t,!0),g.addEventListener("load",function(e){var n=this.response,i=gu[t];if(delete gu[t],200===this.status||0===this.status){0===this.status&&console.warn("THREE.FileLoader: HTTP Status 0 received."),du.add(t,n);for(var o=0,a=i.length;o<a;o++)(s=i[o]).onLoad&&s.onLoad(n);r.manager.itemEnd(t)}else{for(o=0,a=i.length;o<a;o++){var s;(s=i[o]).onError&&s.onError(e)}r.manager.itemError(t),r.manager.itemEnd(t)}},!1),g.addEventListener("progress",function(e){for(var n=gu[t],i=0,r=n.length;i<r;i++){var o=n[i];o.onProgress&&o.onProgress(e)}},!1),g.addEventListener("error",function(e){var n=gu[t];delete gu[t];for(var i=0,o=n.length;i<o;i++){var a=n[i];a.onError&&a.onError(e)}r.manager.itemError(t),r.manager.itemEnd(t)},!1),g.addEventListener("abort",function(e){var n=gu[t];delete gu[t];for(var i=0,o=n.length;i<o;i++){var a=n[i];a.onError&&a.onError(e)}r.manager.itemError(t),r.manager.itemEnd(t)},!1),void 0!==this.responseType&&(g.responseType=this.responseType),void 0!==this.withCredentials&&(g.withCredentials=this.withCredentials),g.overrideMimeType&&g.overrideMimeType(void 0!==this.mimeType?this.mimeType:"text/plain"),this.requestHeader)g.setRequestHeader(m,this.requestHeader[m]);g.send(null)}return r.manager.itemStart(t),g}gu[t].push({onLoad:e,onProgress:n,onError:i})},setResponseType:function(t){return this.responseType=t,this},setWithCredentials:function(t){return this.withCredentials=t,this},setMimeType:function(t){return this.mimeType=t,this},setRequestHeader:function(t){return this.requestHeader=t,this}}),vu.prototype=Object.assign(Object.create(fu.prototype),{constructor:vu,load:function(t,e,n,i){var r=this,o=new mu(r.manager);o.setPath(r.path),o.load(t,function(t){e(r.parse(JSON.parse(t)))},n,i)},parse:function(t){for(var e=[],n=0;n<t.length;n++){var i=lu.parse(t[n]);e.push(i)}return e}}),yu.prototype=Object.assign(Object.create(fu.prototype),{constructor:yu,load:function(t,e,n,i){var r=this,o=[],a=new Ec;a.image=o;var s=new mu(this.manager);function c(c){s.load(t[c],function(t){var n=r.parse(t,!0);o[c]={width:n.width,height:n.height,format:n.format,mipmaps:n.mipmaps},6===(l+=1)&&(1===n.mipmapCount&&(a.minFilter=Pt),a.format=n.format,a.needsUpdate=!0,e&&e(a))},n,i)}if(s.setPath(this.path),s.setResponseType("arraybuffer"),Array.isArray(t))for(var l=0,u=0,d=t.length;u<d;++u)c(u);else s.load(t,function(t){var n=r.parse(t,!0);if(n.isCubemap)for(var i=n.mipmaps.length/n.mipmapCount,s=0;s<i;s++){o[s]={mipmaps:[]};for(var c=0;c<n.mipmapCount;c++)o[s].mipmaps.push(n.mipmaps[s*n.mipmapCount+c]),o[s].format=n.format,o[s].width=n.width,o[s].height=n.height}else a.image.width=n.width,a.image.height=n.height,a.mipmaps=n.mipmaps;1===n.mipmapCount&&(a.minFilter=Pt),a.format=n.format,a.needsUpdate=!0,e&&e(a)},n,i);return a}}),bu.prototype=Object.assign(Object.create(fu.prototype),{constructor:bu,load:function(t,e,n,i){var r=this,o=new Do,a=new mu(this.manager);return a.setResponseType("arraybuffer"),a.setPath(this.path),a.load(t,function(t){var n=r.parse(t);n&&(void 0!==n.image?o.image=n.image:void 0!==n.data&&(o.image.width=n.width,o.image.height=n.height,o.image.data=n.data),o.wrapS=void 0!==n.wrapS?n.wrapS:Mt,o.wrapT=void 0!==n.wrapT?n.wrapT:Mt,o.magFilter=void 0!==n.magFilter?n.magFilter:Pt,o.minFilter=void 0!==n.minFilter?n.minFilter:Pt,o.anisotropy=void 0!==n.anisotropy?n.anisotropy:1,void 0!==n.format&&(o.format=n.format),void 0!==n.type&&(o.type=n.type),void 0!==n.mipmaps&&(o.mipmaps=n.mipmaps,o.minFilter=Dt),1===n.mipmapCount&&(o.minFilter=Pt),o.needsUpdate=!0,e&&e(o,n))},n,i),o}}),wu.prototype=Object.assign(Object.create(fu.prototype),{constructor:wu,load:function(t,e,n,i){void 0!==this.path&&(t=this.path+t),t=this.manager.resolveURL(t);var r=this,o=du.get(t);if(void 0!==o)return r.manager.itemStart(t),setTimeout(function(){e&&e(o),r.manager.itemEnd(t)},0),o;var a=document.createElementNS("http://www.w3.org/1999/xhtml","img");function s(){a.removeEventListener("load",s,!1),a.removeEventListener("error",c,!1),du.add(t,this),e&&e(this),r.manager.itemEnd(t)}function c(e){a.removeEventListener("load",s,!1),a.removeEventListener("error",c,!1),i&&i(e),r.manager.itemError(t),r.manager.itemEnd(t)}return a.addEventListener("load",s,!1),a.addEventListener("error",c,!1),"data:"!==t.substr(0,5)&&void 0!==this.crossOrigin&&(a.crossOrigin=this.crossOrigin),r.manager.itemStart(t),a.src=t,a}}),Su.prototype=Object.assign(Object.create(fu.prototype),{constructor:Su,load:function(t,e,n,i){var r=new Wo,o=new wu(this.manager);o.setCrossOrigin(this.crossOrigin),o.setPath(this.path);var a=0;function s(n){o.load(t[n],function(t){r.images[n]=t,6==++a&&(r.needsUpdate=!0,e&&e(r))},void 0,i)}for(var c=0;c<t.length;++c)s(c);return r}}),xu.prototype=Object.assign(Object.create(fu.prototype),{constructor:xu,load:function(t,e,n,i){var r=new Qn,o=new wu(this.manager);return o.setCrossOrigin(this.crossOrigin),o.setPath(this.path),o.load(t,function(n){r.image=n;var i=t.search(/\.jpe?g($|\?)/i)>0||0===t.search(/^data\:image\/jpeg/);r.format=i?Xt:Yt,r.needsUpdate=!0,void 0!==e&&e(r)},n,i),r}}),Object.assign(Mu.prototype,{getPoint:function(){return console.warn("THREE.Curve: .getPoint() not implemented."),null},getPointAt:function(t,e){var n=this.getUtoTmapping(t);return this.getPoint(n,e)},getPoints:function(t){void 0===t&&(t=5);for(var e=[],n=0;n<=t;n++)e.push(this.getPoint(n/t));return e},getSpacedPoints:function(t){void 0===t&&(t=5);for(var e=[],n=0;n<=t;n++)e.push(this.getPointAt(n/t));return e},getLength:function(){var t=this.getLengths();return t[t.length-1]},getLengths:function(t){if(void 0===t&&(t=this.arcLengthDivisions),this.cacheArcLengths&&this.cacheArcLengths.length===t+1&&!this.needsUpdate)return this.cacheArcLengths;this.needsUpdate=!1;var e,n,i=[],r=this.getPoint(0),o=0;for(i.push(0),n=1;n<=t;n++)o+=(e=this.getPoint(n/t)).distanceTo(r),i.push(o),r=e;return this.cacheArcLengths=i,i},updateArcLengths:function(){this.needsUpdate=!0,this.getLengths()},getUtoTmapping:function(t,e){var n,i=this.getLengths(),r=0,o=i.length;n=e||t*i[o-1];for(var a,s=0,c=o-1;s<=c;)if((a=i[r=Math.floor(s+(c-s)/2)]-n)<0)s=r+1;else{if(!(a>0)){c=r;break}c=r-1}if(i[r=c]===n)return r/(o-1);var l=i[r];return(r+(n-l)/(i[r+1]-l))/(o-1)},getTangent:function(t){var e=t-1e-4,n=t+1e-4;e<0&&(e=0),n>1&&(n=1);var i=this.getPoint(e);return this.getPoint(n).clone().sub(i).normalize()},getTangentAt:function(t){var e=this.getUtoTmapping(t);return this.getTangent(e)},computeFrenetFrames:function(t,e){var n,i,r,o=new oi,a=[],s=[],c=[],l=new oi,u=new hi;for(n=0;n<=t;n++)i=n/t,a[n]=this.getTangentAt(i),a[n].normalize();s[0]=new oi,c[0]=new oi;var d=Number.MAX_VALUE,p=Math.abs(a[0].x),h=Math.abs(a[0].y),f=Math.abs(a[0].z);for(p<=d&&(d=p,o.set(1,0,0)),h<=d&&(d=h,o.set(0,1,0)),f<=d&&o.set(0,0,1),l.crossVectors(a[0],o).normalize(),s[0].crossVectors(a[0],l),c[0].crossVectors(a[0],s[0]),n=1;n<=t;n++)s[n]=s[n-1].clone(),c[n]=c[n-1].clone(),l.crossVectors(a[n-1],a[n]),l.length()>Number.EPSILON&&(l.normalize(),r=Math.acos(Kn.clamp(a[n-1].dot(a[n]),-1,1)),s[n].applyMatrix4(u.makeRotationAxis(l,r))),c[n].crossVectors(a[n],s[n]);if(!0===e)for(r=Math.acos(Kn.clamp(s[0].dot(s[t]),-1,1)),r/=t,a[0].dot(l.crossVectors(s[0],s[t]))>0&&(r=-r),n=1;n<=t;n++)s[n].applyMatrix4(u.makeRotationAxis(a[n],r*n)),c[n].crossVectors(a[n],s[n]);return{tangents:a,normals:s,binormals:c}},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.arcLengthDivisions=t.arcLengthDivisions,this},toJSON:function(){var t={metadata:{version:4.5,type:"Curve",generator:"Curve.toJSON"}};return t.arcLengthDivisions=this.arcLengthDivisions,t.type=this.type,t},fromJSON:function(t){return this.arcLengthDivisions=t.arcLengthDivisions,this}}),Eu.prototype=Object.create(Mu.prototype),Eu.prototype.constructor=Eu,Eu.prototype.isEllipseCurve=!0,Eu.prototype.getPoint=function(t,e){for(var n=e||new Xn,i=2*Math.PI,r=this.aEndAngle-this.aStartAngle,o=Math.abs(r)<Number.EPSILON;r<0;)r+=i;for(;r>i;)r-=i;r<Number.EPSILON&&(r=o?0:i),!0!==this.aClockwise||o||(r===i?r=-i:r-=i);var a=this.aStartAngle+t*r,s=this.aX+this.xRadius*Math.cos(a),c=this.aY+this.yRadius*Math.sin(a);if(0!==this.aRotation){var l=Math.cos(this.aRotation),u=Math.sin(this.aRotation),d=s-this.aX,p=c-this.aY;s=d*l-p*u+this.aX,c=d*u+p*l+this.aY}return n.set(s,c)},Eu.prototype.copy=function(t){return Mu.prototype.copy.call(this,t),this.aX=t.aX,this.aY=t.aY,this.xRadius=t.xRadius,this.yRadius=t.yRadius,this.aStartAngle=t.aStartAngle,this.aEndAngle=t.aEndAngle,this.aClockwise=t.aClockwise,this.aRotation=t.aRotation,this},Eu.prototype.toJSON=function(){var t=Mu.prototype.toJSON.call(this);return t.aX=this.aX,t.aY=this.aY,t.xRadius=this.xRadius,t.yRadius=this.yRadius,t.aStartAngle=this.aStartAngle,t.aEndAngle=this.aEndAngle,t.aClockwise=this.aClockwise,t.aRotation=this.aRotation,t},Eu.prototype.fromJSON=function(t){return Mu.prototype.fromJSON.call(this,t),this.aX=t.aX,this.aY=t.aY,this.xRadius=t.xRadius,this.yRadius=t.yRadius,this.aStartAngle=t.aStartAngle,this.aEndAngle=t.aEndAngle,this.aClockwise=t.aClockwise,this.aRotation=t.aRotation,this},Cu.prototype=Object.create(Eu.prototype),Cu.prototype.constructor=Cu,Cu.prototype.isArcCurve=!0;var Tu=new oi,Ou=new Au,_u=new Au,Pu=new Au;function Iu(t,e,n,i){Mu.call(this),this.type="CatmullRomCurve3",this.points=t||[],this.closed=e||!1,this.curveType=n||"centripetal",this.tension=i||.5}function ku(t,e,n,i,r){var o=.5*(i-e),a=.5*(r-n),s=t*t;return(2*n-2*i+o+a)*(t*s)+(-3*n+3*i-2*o-a)*s+o*t+n}function Du(t,e,n,i){return function(t,e){var n=1-t;return n*n*e}(t,e)+function(t,e){return 2*(1-t)*t*n}(t)+function(t,e){return t*t*i}(t)}function Ru(t,e,n,i,r){return function(t,e){var n=1-t;return n*n*n*e}(t,e)+function(t,e){var n=1-t;return 3*n*n*t*e}(t,n)+function(t,e){return 3*(1-t)*t*t*i}(t)+function(t,e){return t*t*t*r}(t)}function Lu(t,e,n,i){Mu.call(this),this.type="CubicBezierCurve",this.v0=t||new Xn,this.v1=e||new Xn,this.v2=n||new Xn,this.v3=i||new Xn}function Nu(t,e,n,i){Mu.call(this),this.type="CubicBezierCurve3",this.v0=t||new oi,this.v1=e||new oi,this.v2=n||new oi,this.v3=i||new oi}function ju(t,e){Mu.call(this),this.type="LineCurve",this.v1=t||new Xn,this.v2=e||new Xn}function Vu(t,e){Mu.call(this),this.type="LineCurve3",this.v1=t||new oi,this.v2=e||new oi}function Fu(t,e,n){Mu.call(this),this.type="QuadraticBezierCurve",this.v0=t||new Xn,this.v1=e||new Xn,this.v2=n||new Xn}function Uu(t,e,n){Mu.call(this),this.type="QuadraticBezierCurve3",this.v0=t||new oi,this.v1=e||new oi,this.v2=n||new oi}function Bu(t){Mu.call(this),this.type="SplineCurve",this.points=t||[]}Iu.prototype=Object.create(Mu.prototype),Iu.prototype.constructor=Iu,Iu.prototype.isCatmullRomCurve3=!0,Iu.prototype.getPoint=function(t,e){var n,i,r,o,a=e||new oi,s=this.points,c=s.length,l=(c-(this.closed?0:1))*t,u=Math.floor(l),d=l-u;if(this.closed?u+=u>0?0:(Math.floor(Math.abs(u)/c)+1)*c:0===d&&u===c-1&&(u=c-2,d=1),this.closed||u>0?n=s[(u-1)%c]:(Tu.subVectors(s[0],s[1]).add(s[0]),n=Tu),i=s[u%c],r=s[(u+1)%c],this.closed||u+2<c?o=s[(u+2)%c]:(Tu.subVectors(s[c-1],s[c-2]).add(s[c-1]),o=Tu),"centripetal"===this.curveType||"chordal"===this.curveType){var p="chordal"===this.curveType?.5:.25,h=Math.pow(n.distanceToSquared(i),p),f=Math.pow(i.distanceToSquared(r),p),g=Math.pow(r.distanceToSquared(o),p);f<1e-4&&(f=1),h<1e-4&&(h=f),g<1e-4&&(g=f),Ou.initNonuniformCatmullRom(n.x,i.x,r.x,o.x,h,f,g),_u.initNonuniformCatmullRom(n.y,i.y,r.y,o.y,h,f,g),Pu.initNonuniformCatmullRom(n.z,i.z,r.z,o.z,h,f,g)}else"catmullrom"===this.curveType&&(Ou.initCatmullRom(n.x,i.x,r.x,o.x,this.tension),_u.initCatmullRom(n.y,i.y,r.y,o.y,this.tension),Pu.initCatmullRom(n.z,i.z,r.z,o.z,this.tension));return a.set(Ou.calc(d),_u.calc(d),Pu.calc(d)),a},Iu.prototype.copy=function(t){Mu.prototype.copy.call(this,t),this.points=[];for(var e=0,n=t.points.length;e<n;e++){var i=t.points[e];this.points.push(i.clone())}return this.closed=t.closed,this.curveType=t.curveType,this.tension=t.tension,this},Iu.prototype.toJSON=function(){var t=Mu.prototype.toJSON.call(this);t.points=[];for(var e=0,n=this.points.length;e<n;e++){var i=this.points[e];t.points.push(i.toArray())}return t.closed=this.closed,t.curveType=this.curveType,t.tension=this.tension,t},Iu.prototype.fromJSON=function(t){Mu.prototype.fromJSON.call(this,t),this.points=[];for(var e=0,n=t.points.length;e<n;e++){var i=t.points[e];this.points.push((new oi).fromArray(i))}return this.closed=t.closed,this.curveType=t.curveType,this.tension=t.tension,this},Lu.prototype=Object.create(Mu.prototype),Lu.prototype.constructor=Lu,Lu.prototype.isCubicBezierCurve=!0,Lu.prototype.getPoint=function(t,e){var n=e||new Xn,i=this.v0,r=this.v1,o=this.v2,a=this.v3;return n.set(Ru(t,i.x,r.x,o.x,a.x),Ru(t,i.y,r.y,o.y,a.y)),n},Lu.prototype.copy=function(t){return Mu.prototype.copy.call(this,t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this.v3.copy(t.v3),this},Lu.prototype.toJSON=function(){var t=Mu.prototype.toJSON.call(this);return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t.v3=this.v3.toArray(),t},Lu.prototype.fromJSON=function(t){return Mu.prototype.fromJSON.call(this,t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this.v3.fromArray(t.v3),this},Nu.prototype=Object.create(Mu.prototype),Nu.prototype.constructor=Nu,Nu.prototype.isCubicBezierCurve3=!0,Nu.prototype.getPoint=function(t,e){var n=e||new oi,i=this.v0,r=this.v1,o=this.v2,a=this.v3;return n.set(Ru(t,i.x,r.x,o.x,a.x),Ru(t,i.y,r.y,o.y,a.y),Ru(t,i.z,r.z,o.z,a.z)),n},Nu.prototype.copy=function(t){return Mu.prototype.copy.call(this,t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this.v3.copy(t.v3),this},Nu.prototype.toJSON=function(){var t=Mu.prototype.toJSON.call(this);return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t.v3=this.v3.toArray(),t},Nu.prototype.fromJSON=function(t){return Mu.prototype.fromJSON.call(this,t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this.v3.fromArray(t.v3),this},ju.prototype=Object.create(Mu.prototype),ju.prototype.constructor=ju,ju.prototype.isLineCurve=!0,ju.prototype.getPoint=function(t,e){var n=e||new Xn;return 1===t?n.copy(this.v2):(n.copy(this.v2).sub(this.v1),n.multiplyScalar(t).add(this.v1)),n},ju.prototype.getPointAt=function(t,e){return this.getPoint(t,e)},ju.prototype.getTangent=function(){return this.v2.clone().sub(this.v1).normalize()},ju.prototype.copy=function(t){return Mu.prototype.copy.call(this,t),this.v1.copy(t.v1),this.v2.copy(t.v2),this},ju.prototype.toJSON=function(){var t=Mu.prototype.toJSON.call(this);return t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t},ju.prototype.fromJSON=function(t){return Mu.prototype.fromJSON.call(this,t),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this},Vu.prototype=Object.create(Mu.prototype),Vu.prototype.constructor=Vu,Vu.prototype.isLineCurve3=!0,Vu.prototype.getPoint=function(t,e){var n=e||new oi;return 1===t?n.copy(this.v2):(n.copy(this.v2).sub(this.v1),n.multiplyScalar(t).add(this.v1)),n},Vu.prototype.getPointAt=function(t,e){return this.getPoint(t,e)},Vu.prototype.copy=function(t){return Mu.prototype.copy.call(this,t),this.v1.copy(t.v1),this.v2.copy(t.v2),this},Vu.prototype.toJSON=function(){var t=Mu.prototype.toJSON.call(this);return t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t},Vu.prototype.fromJSON=function(t){return Mu.prototype.fromJSON.call(this,t),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this},Fu.prototype=Object.create(Mu.prototype),Fu.prototype.constructor=Fu,Fu.prototype.isQuadraticBezierCurve=!0,Fu.prototype.getPoint=function(t,e){var n=e||new Xn,i=this.v0,r=this.v1,o=this.v2;return n.set(Du(t,i.x,r.x,o.x),Du(t,i.y,r.y,o.y)),n},Fu.prototype.copy=function(t){return Mu.prototype.copy.call(this,t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this},Fu.prototype.toJSON=function(){var t=Mu.prototype.toJSON.call(this);return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t},Fu.prototype.fromJSON=function(t){return Mu.prototype.fromJSON.call(this,t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this},Uu.prototype=Object.create(Mu.prototype),Uu.prototype.constructor=Uu,Uu.prototype.isQuadraticBezierCurve3=!0,Uu.prototype.getPoint=function(t,e){var n=e||new oi,i=this.v0,r=this.v1,o=this.v2;return n.set(Du(t,i.x,r.x,o.x),Du(t,i.y,r.y,o.y),Du(t,i.z,r.z,o.z)),n},Uu.prototype.copy=function(t){return Mu.prototype.copy.call(this,t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this},Uu.prototype.toJSON=function(){var t=Mu.prototype.toJSON.call(this);return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t},Uu.prototype.fromJSON=function(t){return Mu.prototype.fromJSON.call(this,t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this},Bu.prototype=Object.create(Mu.prototype),Bu.prototype.constructor=Bu,Bu.prototype.isSplineCurve=!0,Bu.prototype.getPoint=function(t,e){var n=e||new Xn,i=this.points,r=(i.length-1)*t,o=Math.floor(r),a=r-o,s=i[0===o?o:o-1],c=i[o],l=i[o>i.length-2?i.length-1:o+1],u=i[o>i.length-3?i.length-1:o+2];return n.set(ku(a,s.x,c.x,l.x,u.x),ku(a,s.y,c.y,l.y,u.y)),n},Bu.prototype.copy=function(t){Mu.prototype.copy.call(this,t),this.points=[];for(var e=0,n=t.points.length;e<n;e++){var i=t.points[e];this.points.push(i.clone())}return this},Bu.prototype.toJSON=function(){var t=Mu.prototype.toJSON.call(this);t.points=[];for(var e=0,n=this.points.length;e<n;e++){var i=this.points[e];t.points.push(i.toArray())}return t},Bu.prototype.fromJSON=function(t){Mu.prototype.fromJSON.call(this,t),this.points=[];for(var e=0,n=t.points.length;e<n;e++){var i=t.points[e];this.points.push((new Xn).fromArray(i))}return this};var zu=Object.freeze({__proto__:null,ArcCurve:Cu,CatmullRomCurve3:Iu,CubicBezierCurve:Lu,CubicBezierCurve3:Nu,EllipseCurve:Eu,LineCurve:ju,LineCurve3:Vu,QuadraticBezierCurve:Fu,QuadraticBezierCurve3:Uu,SplineCurve:Bu});function Gu(){Mu.call(this),this.type="CurvePath",this.curves=[],this.autoClose=!1}function Hu(t){Gu.call(this),this.type="Path",this.currentPoint=new Xn,t&&this.setFromPoints(t)}function Wu(t){Hu.call(this,t),this.uuid=Kn.generateUUID(),this.type="Shape",this.holes=[]}function qu(t,e){Ii.call(this),this.type="Light",this.color=new xr(t),this.intensity=void 0!==e?e:1,this.receiveShadow=void 0}function Ku(t,e,n){qu.call(this,t,n),this.type="HemisphereLight",this.castShadow=void 0,this.position.copy(Ii.DefaultUp),this.updateMatrix(),this.groundColor=new xr(e)}function Xu(t){this.camera=t,this.bias=0,this.radius=1,this.mapSize=new Xn(512,512),this.map=null,this.mapPass=null,this.matrix=new hi,this._frustum=new No,this._frameExtents=new Xn(1,1),this._viewportCount=1,this._viewports=[new $n(0,0,1,1)]}function Yu(){Xu.call(this,new Po(50,1,.5,500))}function Zu(t,e,n,i,r,o){qu.call(this,t,e),this.type="SpotLight",this.position.copy(Ii.DefaultUp),this.updateMatrix(),this.target=new Ii,Object.defineProperty(this,"power",{get:function(){return this.intensity*Math.PI},set:function(t){this.intensity=t/Math.PI}}),this.distance=void 0!==n?n:0,this.angle=void 0!==i?i:Math.PI/3,this.penumbra=void 0!==r?r:0,this.decay=void 0!==o?o:1,this.shadow=new Yu}function Ju(){Xu.call(this,new Po(90,1,.5,500)),this._frameExtents=new Xn(4,2),this._viewportCount=6,this._viewports=[new $n(2,1,1,1),new $n(0,1,1,1),new $n(3,1,1,1),new $n(1,1,1,1),new $n(3,0,1,1),new $n(1,0,1,1)],this._cubeDirections=[new oi(1,0,0),new oi(-1,0,0),new oi(0,0,1),new oi(0,0,-1),new oi(0,1,0),new oi(0,-1,0)],this._cubeUps=[new oi(0,1,0),new oi(0,1,0),new oi(0,1,0),new oi(0,1,0),new oi(0,0,1),new oi(0,0,-1)]}function Qu(t,e,n,i){qu.call(this,t,e),this.type="PointLight",Object.defineProperty(this,"power",{get:function(){return 4*this.intensity*Math.PI},set:function(t){this.intensity=t/(4*Math.PI)}}),this.distance=void 0!==n?n:0,this.decay=void 0!==i?i:1,this.shadow=new Ju}function $u(t,e,n,i,r,o){_o.call(this),this.type="OrthographicCamera",this.zoom=1,this.view=null,this.left=void 0!==t?t:-1,this.right=void 0!==e?e:1,this.top=void 0!==n?n:1,this.bottom=void 0!==i?i:-1,this.near=void 0!==r?r:.1,this.far=void 0!==o?o:2e3,this.updateProjectionMatrix()}function td(){Xu.call(this,new $u(-5,5,5,-5,.5,500))}function ed(t,e){qu.call(this,t,e),this.type="DirectionalLight",this.position.copy(Ii.DefaultUp),this.updateMatrix(),this.target=new Ii,this.shadow=new td}function nd(t,e){qu.call(this,t,e),this.type="AmbientLight",this.castShadow=void 0}function id(t,e,n,i){qu.call(this,t,e),this.type="RectAreaLight",this.width=void 0!==n?n:10,this.height=void 0!==i?i:10}function rd(t){fu.call(this,t),this.textures={}}Gu.prototype=Object.assign(Object.create(Mu.prototype),{constructor:Gu,add:function(t){this.curves.push(t)},closePath:function(){var t=this.curves[0].getPoint(0),e=this.curves[this.curves.length-1].getPoint(1);t.equals(e)||this.curves.push(new ju(e,t))},getPoint:function(t){for(var e=t*this.getLength(),n=this.getCurveLengths(),i=0;i<n.length;){if(n[i]>=e){var r=n[i]-e,o=this.curves[i],a=o.getLength(),s=0===a?0:1-r/a;return o.getPointAt(s)}i++}return null},getLength:function(){var t=this.getCurveLengths();return t[t.length-1]},updateArcLengths:function(){this.needsUpdate=!0,this.cacheLengths=null,this.getCurveLengths()},getCurveLengths:function(){if(this.cacheLengths&&this.cacheLengths.length===this.curves.length)return this.cacheLengths;for(var t=[],e=0,n=0,i=this.curves.length;n<i;n++)e+=this.curves[n].getLength(),t.push(e);return this.cacheLengths=t,t},getSpacedPoints:function(t){void 0===t&&(t=40);for(var e=[],n=0;n<=t;n++)e.push(this.getPoint(n/t));return this.autoClose&&e.push(e[0]),e},getPoints:function(t){t=t||12;for(var e,n=[],i=0,r=this.curves;i<r.length;i++)for(var o=r[i],a=o&&o.isEllipseCurve?2*t:o&&(o.isLineCurve||o.isLineCurve3)?1:o&&o.isSplineCurve?t*o.points.length:t,s=o.getPoints(a),c=0;c<s.length;c++){var l=s[c];e&&e.equals(l)||(n.push(l),e=l)}return this.autoClose&&n.length>1&&!n[n.length-1].equals(n[0])&&n.push(n[0]),n},copy:function(t){Mu.prototype.copy.call(this,t),this.curves=[];for(var e=0,n=t.curves.length;e<n;e++){var i=t.curves[e];this.curves.push(i.clone())}return this.autoClose=t.autoClose,this},toJSON:function(){var t=Mu.prototype.toJSON.call(this);t.autoClose=this.autoClose,t.curves=[];for(var e=0,n=this.curves.length;e<n;e++){var i=this.curves[e];t.curves.push(i.toJSON())}return t},fromJSON:function(t){Mu.prototype.fromJSON.call(this,t),this.autoClose=t.autoClose,this.curves=[];for(var e=0,n=t.curves.length;e<n;e++){var i=t.curves[e];this.curves.push((new zu[i.type]).fromJSON(i))}return this}}),Hu.prototype=Object.assign(Object.create(Gu.prototype),{constructor:Hu,setFromPoints:function(t){this.moveTo(t[0].x,t[0].y);for(var e=1,n=t.length;e<n;e++)this.lineTo(t[e].x,t[e].y);return this},moveTo:function(t,e){return this.currentPoint.set(t,e),this},lineTo:function(t,e){var n=new ju(this.currentPoint.clone(),new Xn(t,e));return this.curves.push(n),this.currentPoint.set(t,e),this},quadraticCurveTo:function(t,e,n,i){var r=new Fu(this.currentPoint.clone(),new Xn(t,e),new Xn(n,i));return this.curves.push(r),this.currentPoint.set(n,i),this},bezierCurveTo:function(t,e,n,i,r,o){var a=new Lu(this.currentPoint.clone(),new Xn(t,e),new Xn(n,i),new Xn(r,o));return this.curves.push(a),this.currentPoint.set(r,o),this},splineThru:function(t){var e=new Bu([this.currentPoint.clone()].concat(t));return this.curves.push(e),this.currentPoint.copy(t[t.length-1]),this},arc:function(t,e,n,i,r,o){var a=this.currentPoint.x,s=this.currentPoint.y;return this.absarc(t+a,e+s,n,i,r,o),this},absarc:function(t,e,n,i,r,o){return this.absellipse(t,e,n,n,i,r,o),this},ellipse:function(t,e,n,i,r,o,a,s){var c=this.currentPoint.x,l=this.currentPoint.y;return this.absellipse(t+c,e+l,n,i,r,o,a,s),this},absellipse:function(t,e,n,i,r,o,a,s){var c=new Eu(t,e,n,i,r,o,a,s);if(this.curves.length>0){var l=c.getPoint(0);l.equals(this.currentPoint)||this.lineTo(l.x,l.y)}this.curves.push(c);var u=c.getPoint(1);return this.currentPoint.copy(u),this},copy:function(t){return Gu.prototype.copy.call(this,t),this.currentPoint.copy(t.currentPoint),this},toJSON:function(){var t=Gu.prototype.toJSON.call(this);return t.currentPoint=this.currentPoint.toArray(),t},fromJSON:function(t){return Gu.prototype.fromJSON.call(this,t),this.currentPoint.fromArray(t.currentPoint),this}}),Wu.prototype=Object.assign(Object.create(Hu.prototype),{constructor:Wu,getPointsHoles:function(t){for(var e=[],n=0,i=this.holes.length;n<i;n++)e[n]=this.holes[n].getPoints(t);return e},extractPoints:function(t){return{shape:this.getPoints(t),holes:this.getPointsHoles(t)}},copy:function(t){Hu.prototype.copy.call(this,t),this.holes=[];for(var e=0,n=t.holes.length;e<n;e++){var i=t.holes[e];this.holes.push(i.clone())}return this},toJSON:function(){var t=Hu.prototype.toJSON.call(this);t.uuid=this.uuid,t.holes=[];for(var e=0,n=this.holes.length;e<n;e++){var i=this.holes[e];t.holes.push(i.toJSON())}return t},fromJSON:function(t){Hu.prototype.fromJSON.call(this,t),this.uuid=t.uuid,this.holes=[];for(var e=0,n=t.holes.length;e<n;e++){var i=t.holes[e];this.holes.push((new Hu).fromJSON(i))}return this}}),qu.prototype=Object.assign(Object.create(Ii.prototype),{constructor:qu,isLight:!0,copy:function(t){return Ii.prototype.copy.call(this,t),this.color.copy(t.color),this.intensity=t.intensity,this},toJSON:function(t){var e=Ii.prototype.toJSON.call(this,t);return e.object.color=this.color.getHex(),e.object.intensity=this.intensity,void 0!==this.groundColor&&(e.object.groundColor=this.groundColor.getHex()),void 0!==this.distance&&(e.object.distance=this.distance),void 0!==this.angle&&(e.object.angle=this.angle),void 0!==this.decay&&(e.object.decay=this.decay),void 0!==this.penumbra&&(e.object.penumbra=this.penumbra),void 0!==this.shadow&&(e.object.shadow=this.shadow.toJSON()),e}}),Ku.prototype=Object.assign(Object.create(qu.prototype),{constructor:Ku,isHemisphereLight:!0,copy:function(t){return qu.prototype.copy.call(this,t),this.groundColor.copy(t.groundColor),this}}),Object.assign(Xu.prototype,{_projScreenMatrix:new hi,_lightPositionWorld:new oi,_lookTarget:new oi,getViewportCount:function(){return this._viewportCount},getFrustum:function(){return this._frustum},updateMatrices:function(t){var e=this.camera,n=this.matrix,i=this._projScreenMatrix,r=this._lookTarget,o=this._lightPositionWorld;o.setFromMatrixPosition(t.matrixWorld),e.position.copy(o),r.setFromMatrixPosition(t.target.matrixWorld),e.lookAt(r),e.updateMatrixWorld(),i.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),this._frustum.setFromProjectionMatrix(i),n.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),n.multiply(e.projectionMatrix),n.multiply(e.matrixWorldInverse)},getViewport:function(t){return this._viewports[t]},getFrameExtents:function(){return this._frameExtents},copy:function(t){return this.camera=t.camera.clone(),this.bias=t.bias,this.radius=t.radius,this.mapSize.copy(t.mapSize),this},clone:function(){return(new this.constructor).copy(this)},toJSON:function(){var t={};return 0!==this.bias&&(t.bias=this.bias),1!==this.radius&&(t.radius=this.radius),512===this.mapSize.x&&512===this.mapSize.y||(t.mapSize=this.mapSize.toArray()),t.camera=this.camera.toJSON(!1).object,delete t.camera.matrix,t}}),Yu.prototype=Object.assign(Object.create(Xu.prototype),{constructor:Yu,isSpotLightShadow:!0,updateMatrices:function(t){var e=this.camera,n=2*Kn.RAD2DEG*t.angle,i=this.mapSize.width/this.mapSize.height,r=t.distance||e.far;n===e.fov&&i===e.aspect&&r===e.far||(e.fov=n,e.aspect=i,e.far=r,e.updateProjectionMatrix()),Xu.prototype.updateMatrices.call(this,t)}}),Zu.prototype=Object.assign(Object.create(qu.prototype),{constructor:Zu,isSpotLight:!0,copy:function(t){return qu.prototype.copy.call(this,t),this.distance=t.distance,this.angle=t.angle,this.penumbra=t.penumbra,this.decay=t.decay,this.target=t.target.clone(),this.shadow=t.shadow.clone(),this}}),Ju.prototype=Object.assign(Object.create(Xu.prototype),{constructor:Ju,isPointLightShadow:!0,updateMatrices:function(t,e){void 0===e&&(e=0);var n=this.camera,i=this.matrix,r=this._lightPositionWorld,o=this._lookTarget,a=this._projScreenMatrix;r.setFromMatrixPosition(t.matrixWorld),n.position.copy(r),o.copy(n.position),o.add(this._cubeDirections[e]),n.up.copy(this._cubeUps[e]),n.lookAt(o),n.updateMatrixWorld(),i.makeTranslation(-r.x,-r.y,-r.z),a.multiplyMatrices(n.projectionMatrix,n.matrixWorldInverse),this._frustum.setFromProjectionMatrix(a)}}),Qu.prototype=Object.assign(Object.create(qu.prototype),{constructor:Qu,isPointLight:!0,copy:function(t){return qu.prototype.copy.call(this,t),this.distance=t.distance,this.decay=t.decay,this.shadow=t.shadow.clone(),this}}),$u.prototype=Object.assign(Object.create(_o.prototype),{constructor:$u,isOrthographicCamera:!0,copy:function(t,e){return _o.prototype.copy.call(this,t,e),this.left=t.left,this.right=t.right,this.top=t.top,this.bottom=t.bottom,this.near=t.near,this.far=t.far,this.zoom=t.zoom,this.view=null===t.view?null:Object.assign({},t.view),this},setViewOffset:function(t,e,n,i,r,o){null===this.view&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=n,this.view.offsetY=i,this.view.width=r,this.view.height=o,this.updateProjectionMatrix()},clearViewOffset:function(){null!==this.view&&(this.view.enabled=!1),this.updateProjectionMatrix()},updateProjectionMatrix:function(){var t=(this.right-this.left)/(2*this.zoom),e=(this.top-this.bottom)/(2*this.zoom),n=(this.right+this.left)/2,i=(this.top+this.bottom)/2,r=n-t,o=n+t,a=i+e,s=i-e;if(null!==this.view&&this.view.enabled){var c=(this.right-this.left)/this.view.fullWidth/this.zoom,l=(this.top-this.bottom)/this.view.fullHeight/this.zoom;o=(r+=c*this.view.offsetX)+c*this.view.width,s=(a-=l*this.view.offsetY)-l*this.view.height}this.projectionMatrix.makeOrthographic(r,o,a,s,this.near,this.far),this.projectionMatrixInverse.getInverse(this.projectionMatrix)},toJSON:function(t){var e=Ii.prototype.toJSON.call(this,t);return e.object.zoom=this.zoom,e.object.left=this.left,e.object.right=this.right,e.object.top=this.top,e.object.bottom=this.bottom,e.object.near=this.near,e.object.far=this.far,null!==this.view&&(e.object.view=Object.assign({},this.view)),e}}),td.prototype=Object.assign(Object.create(Xu.prototype),{constructor:td,isDirectionalLightShadow:!0,updateMatrices:function(t){Xu.prototype.updateMatrices.call(this,t)}}),ed.prototype=Object.assign(Object.create(qu.prototype),{constructor:ed,isDirectionalLight:!0,copy:function(t){return qu.prototype.copy.call(this,t),this.target=t.target.clone(),this.shadow=t.shadow.clone(),this}}),nd.prototype=Object.assign(Object.create(qu.prototype),{constructor:nd,isAmbientLight:!0}),id.prototype=Object.assign(Object.create(qu.prototype),{constructor:id,isRectAreaLight:!0,copy:function(t){return qu.prototype.copy.call(this,t),this.width=t.width,this.height=t.height,this},toJSON:function(t){var e=qu.prototype.toJSON.call(this,t);return e.object.width=this.width,e.object.height=this.height,e}}),rd.prototype=Object.assign(Object.create(fu.prototype),{constructor:rd,load:function(t,e,n,i){var r=this,o=new mu(r.manager);o.setPath(r.path),o.load(t,function(t){e(r.parse(JSON.parse(t)))},n,i)},parse:function(t){var e=this.textures;function n(t){return void 0===e[t]&&console.warn("THREE.MaterialLoader: Undefined texture",t),e[t]}var i=new Yl[t.type];if(void 0!==t.uuid&&(i.uuid=t.uuid),void 0!==t.name&&(i.name=t.name),void 0!==t.color&&i.color.setHex(t.color),void 0!==t.roughness&&(i.roughness=t.roughness),void 0!==t.metalness&&(i.metalness=t.metalness),void 0!==t.sheen&&(i.sheen=(new xr).setHex(t.sheen)),void 0!==t.emissive&&i.emissive.setHex(t.emissive),void 0!==t.specular&&i.specular.setHex(t.specular),void 0!==t.shininess&&(i.shininess=t.shininess),void 0!==t.clearcoat&&(i.clearcoat=t.clearcoat),void 0!==t.clearcoatRoughness&&(i.clearcoatRoughness=t.clearcoatRoughness),void 0!==t.fog&&(i.fog=t.fog),void 0!==t.flatShading&&(i.flatShading=t.flatShading),void 0!==t.blending&&(i.blending=t.blending),void 0!==t.combine&&(i.combine=t.combine),void 0!==t.side&&(i.side=t.side),void 0!==t.opacity&&(i.opacity=t.opacity),void 0!==t.transparent&&(i.transparent=t.transparent),void 0!==t.alphaTest&&(i.alphaTest=t.alphaTest),void 0!==t.depthTest&&(i.depthTest=t.depthTest),void 0!==t.depthWrite&&(i.depthWrite=t.depthWrite),void 0!==t.colorWrite&&(i.colorWrite=t.colorWrite),void 0!==t.stencilWrite&&(i.stencilWrite=t.stencilWrite),void 0!==t.stencilWriteMask&&(i.stencilWriteMask=t.stencilWriteMask),void 0!==t.stencilFunc&&(i.stencilFunc=t.stencilFunc),void 0!==t.stencilRef&&(i.stencilRef=t.stencilRef),void 0!==t.stencilFuncMask&&(i.stencilFuncMask=t.stencilFuncMask),void 0!==t.stencilFail&&(i.stencilFail=t.stencilFail),void 0!==t.stencilZFail&&(i.stencilZFail=t.stencilZFail),void 0!==t.stencilZPass&&(i.stencilZPass=t.stencilZPass),void 0!==t.wireframe&&(i.wireframe=t.wireframe),void 0!==t.wireframeLinewidth&&(i.wireframeLinewidth=t.wireframeLinewidth),void 0!==t.wireframeLinecap&&(i.wireframeLinecap=t.wireframeLinecap),void 0!==t.wireframeLinejoin&&(i.wireframeLinejoin=t.wireframeLinejoin),void 0!==t.rotation&&(i.rotation=t.rotation),1!==t.linewidth&&(i.linewidth=t.linewidth),void 0!==t.dashSize&&(i.dashSize=t.dashSize),void 0!==t.gapSize&&(i.gapSize=t.gapSize),void 0!==t.scale&&(i.scale=t.scale),void 0!==t.polygonOffset&&(i.polygonOffset=t.polygonOffset),void 0!==t.polygonOffsetFactor&&(i.polygonOffsetFactor=t.polygonOffsetFactor),void 0!==t.polygonOffsetUnits&&(i.polygonOffsetUnits=t.polygonOffsetUnits),void 0!==t.skinning&&(i.skinning=t.skinning),void 0!==t.morphTargets&&(i.morphTargets=t.morphTargets),void 0!==t.morphNormals&&(i.morphNormals=t.morphNormals),void 0!==t.dithering&&(i.dithering=t.dithering),void 0!==t.vertexTangents&&(i.vertexTangents=t.vertexTangents),void 0!==t.visible&&(i.visible=t.visible),void 0!==t.toneMapped&&(i.toneMapped=t.toneMapped),void 0!==t.userData&&(i.userData=t.userData),void 0!==t.vertexColors&&("number"==typeof t.vertexColors?i.vertexColors=t.vertexColors>0:i.vertexColors=t.vertexColors),void 0!==t.uniforms)for(var r in t.uniforms){var o=t.uniforms[r];switch(i.uniforms[r]={},o.type){case"t":i.uniforms[r].value=n(o.value);break;case"c":i.uniforms[r].value=(new xr).setHex(o.value);break;case"v2":i.uniforms[r].value=(new Xn).fromArray(o.value);break;case"v3":i.uniforms[r].value=(new oi).fromArray(o.value);break;case"v4":i.uniforms[r].value=(new $n).fromArray(o.value);break;case"m3":i.uniforms[r].value=(new Yn).fromArray(o.value);case"m4":i.uniforms[r].value=(new hi).fromArray(o.value);break;default:i.uniforms[r].value=o.value}}if(void 0!==t.defines&&(i.defines=t.defines),void 0!==t.vertexShader&&(i.vertexShader=t.vertexShader),void 0!==t.fragmentShader&&(i.fragmentShader=t.fragmentShader),void 0!==t.extensions)for(var a in t.extensions)i.extensions[a]=t.extensions[a];if(void 0!==t.shading&&(i.flatShading=1===t.shading),void 0!==t.size&&(i.size=t.size),void 0!==t.sizeAttenuation&&(i.sizeAttenuation=t.sizeAttenuation),void 0!==t.map&&(i.map=n(t.map)),void 0!==t.matcap&&(i.matcap=n(t.matcap)),void 0!==t.alphaMap&&(i.alphaMap=n(t.alphaMap)),void 0!==t.bumpMap&&(i.bumpMap=n(t.bumpMap)),void 0!==t.bumpScale&&(i.bumpScale=t.bumpScale),void 0!==t.normalMap&&(i.normalMap=n(t.normalMap)),void 0!==t.normalMapType&&(i.normalMapType=t.normalMapType),void 0!==t.normalScale){var s=t.normalScale;!1===Array.isArray(s)&&(s=[s,s]),i.normalScale=(new Xn).fromArray(s)}return void 0!==t.displacementMap&&(i.displacementMap=n(t.displacementMap)),void 0!==t.displacementScale&&(i.displacementScale=t.displacementScale),void 0!==t.displacementBias&&(i.displacementBias=t.displacementBias),void 0!==t.roughnessMap&&(i.roughnessMap=n(t.roughnessMap)),void 0!==t.metalnessMap&&(i.metalnessMap=n(t.metalnessMap)),void 0!==t.emissiveMap&&(i.emissiveMap=n(t.emissiveMap)),void 0!==t.emissiveIntensity&&(i.emissiveIntensity=t.emissiveIntensity),void 0!==t.specularMap&&(i.specularMap=n(t.specularMap)),void 0!==t.envMap&&(i.envMap=n(t.envMap)),void 0!==t.envMapIntensity&&(i.envMapIntensity=t.envMapIntensity),void 0!==t.reflectivity&&(i.reflectivity=t.reflectivity),void 0!==t.refractionRatio&&(i.refractionRatio=t.refractionRatio),void 0!==t.lightMap&&(i.lightMap=n(t.lightMap)),void 0!==t.lightMapIntensity&&(i.lightMapIntensity=t.lightMapIntensity),void 0!==t.aoMap&&(i.aoMap=n(t.aoMap)),void 0!==t.aoMapIntensity&&(i.aoMapIntensity=t.aoMapIntensity),void 0!==t.gradientMap&&(i.gradientMap=n(t.gradientMap)),void 0!==t.clearcoatMap&&(i.clearcoatMap=n(t.clearcoatMap)),void 0!==t.clearcoatRoughnessMap&&(i.clearcoatRoughnessMap=n(t.clearcoatRoughnessMap)),void 0!==t.clearcoatNormalMap&&(i.clearcoatNormalMap=n(t.clearcoatNormalMap)),void 0!==t.clearcoatNormalScale&&(i.clearcoatNormalScale=(new Xn).fromArray(t.clearcoatNormalScale)),i},setTextures:function(t){return this.textures=t,this}});var od={decodeText:function(t){if("undefined"!=typeof TextDecoder)return(new TextDecoder).decode(t);for(var e="",n=0,i=t.length;n<i;n++)e+=String.fromCharCode(t[n]);try{return decodeURIComponent(escape(e))}catch(t){return e}},extractUrlBase:function(t){var e=t.lastIndexOf("/");return-1===e?"./":t.substr(0,e+1)}};function ad(){Zr.call(this),this.type="InstancedBufferGeometry",this.maxInstancedCount=void 0}function sd(t,e,n,i){"number"==typeof n&&(i=n,n=!1,console.error("THREE.InstancedBufferAttribute: The constructor now expects normalized as the third argument.")),Ir.call(this,t,e,n),this.meshPerAttribute=i||1}function cd(t){fu.call(this,t)}ad.prototype=Object.assign(Object.create(Zr.prototype),{constructor:ad,isInstancedBufferGeometry:!0,copy:function(t){return Zr.prototype.copy.call(this,t),this.maxInstancedCount=t.maxInstancedCount,this},clone:function(){return(new this.constructor).copy(this)},toJSON:function(){var t=Zr.prototype.toJSON.call(this);return t.maxInstancedCount=this.maxInstancedCount,t.isInstancedBufferGeometry=!0,t}}),sd.prototype=Object.assign(Object.create(Ir.prototype),{constructor:sd,isInstancedBufferAttribute:!0,copy:function(t){return Ir.prototype.copy.call(this,t),this.meshPerAttribute=t.meshPerAttribute,this},toJSON:function(){var t=Ir.prototype.toJSON.call(this);return t.meshPerAttribute=this.meshPerAttribute,t.isInstancedBufferAttribute=!0,t}}),cd.prototype=Object.assign(Object.create(fu.prototype),{constructor:cd,load:function(t,e,n,i){var r=this,o=new mu(r.manager);o.setPath(r.path),o.load(t,function(t){e(r.parse(JSON.parse(t)))},n,i)},parse:function(t){var e=t.isInstancedBufferGeometry?new ad:new Zr,n=t.data.index;if(void 0!==n){var i=new ld[n.type](n.array);e.setIndex(new Ir(i,1))}var r=t.data.attributes;for(var o in r){var a=r[o],s=(i=new ld[a.type](a.array),new(a.isInstancedBufferAttribute?sd:Ir)(i,a.itemSize,a.normalized));void 0!==a.name&&(s.name=a.name),e.setAttribute(o,s)}var c=t.data.morphAttributes;if(c)for(var o in c){for(var l=c[o],u=[],d=0,p=l.length;d<p;d++)a=l[d],s=new Ir(i=new ld[a.type](a.array),a.itemSize,a.normalized),void 0!==a.name&&(s.name=a.name),u.push(s);e.morphAttributes[o]=u}t.data.morphTargetsRelative&&(e.morphTargetsRelative=!0);var h=t.data.groups||t.data.drawcalls||t.data.offsets;if(void 0!==h){d=0;for(var f=h.length;d!==f;++d){var g=h[d];e.addGroup(g.start,g.count,g.materialIndex)}}var m=t.data.boundingSphere;if(void 0!==m){var v=new oi;void 0!==m.center&&v.fromArray(m.center),e.boundingSphere=new Yi(v,m.radius)}return t.name&&(e.name=t.name),t.userData&&(e.userData=t.userData),e}});var ld={Int8Array:Int8Array,Uint8Array:Uint8Array,Uint8ClampedArray:"undefined"!=typeof Uint8ClampedArray?Uint8ClampedArray:Uint8Array,Int16Array:Int16Array,Uint16Array:Uint16Array,Int32Array:Int32Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array};function ud(t){fu.call(this,t)}ud.prototype=Object.assign(Object.create(fu.prototype),{constructor:ud,load:function(t,e,n,i){var r=this,o=""===this.path?od.extractUrlBase(t):this.path;this.resourcePath=this.resourcePath||o;var a=new mu(r.manager);a.setPath(this.path),a.load(t,function(n){var o=null;try{o=JSON.parse(n)}catch(e){return void 0!==i&&i(e),void console.error("THREE:ObjectLoader: Can't parse "+t+".",e.message)}var a=o.metadata;void 0!==a&&void 0!==a.type&&"geometry"!==a.type.toLowerCase()?r.parse(o,e):console.error("THREE.ObjectLoader: Can't load "+t)},n,i)},parse:function(t,e){var n=this.parseShape(t.shapes),i=this.parseGeometries(t.geometries,n),r=this.parseImages(t.images,function(){void 0!==e&&e(s)}),o=this.parseTextures(t.textures,r),a=this.parseMaterials(t.materials,o),s=this.parseObject(t.object,i,a);return t.animations&&(s.animations=this.parseAnimations(t.animations)),void 0!==t.images&&0!==t.images.length||void 0!==e&&e(s),s},parseShape:function(t){var e={};if(void 0!==t)for(var n=0,i=t.length;n<i;n++){var r=(new Wu).fromJSON(t[n]);e[r.uuid]=r}return e},parseGeometries:function(t,e){var n={};if(void 0!==t)for(var i=new cd,r=0,o=t.length;r<o;r++){var a,s=t[r];switch(s.type){case"PlaneGeometry":case"PlaneBufferGeometry":a=new Vl[s.type](s.width,s.height,s.widthSegments,s.heightSegments);break;case"BoxGeometry":case"BoxBufferGeometry":case"CubeGeometry":a=new Vl[s.type](s.width,s.height,s.depth,s.widthSegments,s.heightSegments,s.depthSegments);break;case"CircleGeometry":case"CircleBufferGeometry":a=new Vl[s.type](s.radius,s.segments,s.thetaStart,s.thetaLength);break;case"CylinderGeometry":case"CylinderBufferGeometry":a=new Vl[s.type](s.radiusTop,s.radiusBottom,s.height,s.radialSegments,s.heightSegments,s.openEnded,s.thetaStart,s.thetaLength);break;case"ConeGeometry":case"ConeBufferGeometry":a=new Vl[s.type](s.radius,s.height,s.radialSegments,s.heightSegments,s.openEnded,s.thetaStart,s.thetaLength);break;case"SphereGeometry":case"SphereBufferGeometry":a=new Vl[s.type](s.radius,s.widthSegments,s.heightSegments,s.phiStart,s.phiLength,s.thetaStart,s.thetaLength);break;case"DodecahedronGeometry":case"DodecahedronBufferGeometry":case"IcosahedronGeometry":case"IcosahedronBufferGeometry":case"OctahedronGeometry":case"OctahedronBufferGeometry":case"TetrahedronGeometry":case"TetrahedronBufferGeometry":a=new Vl[s.type](s.radius,s.detail);break;case"RingGeometry":case"RingBufferGeometry":a=new Vl[s.type](s.innerRadius,s.outerRadius,s.thetaSegments,s.phiSegments,s.thetaStart,s.thetaLength);break;case"TorusGeometry":case"TorusBufferGeometry":a=new Vl[s.type](s.radius,s.tube,s.radialSegments,s.tubularSegments,s.arc);break;case"TorusKnotGeometry":case"TorusKnotBufferGeometry":a=new Vl[s.type](s.radius,s.tube,s.tubularSegments,s.radialSegments,s.p,s.q);break;case"TubeGeometry":case"TubeBufferGeometry":a=new Vl[s.type]((new zu[s.path.type]).fromJSON(s.path),s.tubularSegments,s.radius,s.radialSegments,s.closed);break;case"LatheGeometry":case"LatheBufferGeometry":a=new Vl[s.type](s.points,s.segments,s.phiStart,s.phiLength);break;case"PolyhedronGeometry":case"PolyhedronBufferGeometry":a=new Vl[s.type](s.vertices,s.indices,s.radius,s.details);break;case"ShapeGeometry":case"ShapeBufferGeometry":for(var c=[],l=0,u=s.shapes.length;l<u;l++){var d=e[s.shapes[l]];c.push(d)}a=new Vl[s.type](c,s.curveSegments);break;case"ExtrudeGeometry":case"ExtrudeBufferGeometry":for(c=[],l=0,u=s.shapes.length;l<u;l++)d=e[s.shapes[l]],c.push(d);var p=s.options.extrudePath;void 0!==p&&(s.options.extrudePath=(new zu[p.type]).fromJSON(p)),a=new Vl[s.type](c,s.options);break;case"BufferGeometry":case"InstancedBufferGeometry":a=i.parse(s);break;case"Geometry":console.error('THREE.ObjectLoader: Loading "Geometry" is not supported anymore.');break;default:console.warn('THREE.ObjectLoader: Unsupported geometry type "'+s.type+'"');continue}a.uuid=s.uuid,void 0!==s.name&&(a.name=s.name),!0===a.isBufferGeometry&&void 0!==s.userData&&(a.userData=s.userData),n[s.uuid]=a}return n},parseMaterials:function(t,e){var n={},i={};if(void 0!==t){var r=new rd;r.setTextures(e);for(var o=0,a=t.length;o<a;o++){var s=t[o];if("MultiMaterial"===s.type){for(var c=[],l=0;l<s.materials.length;l++){var u=s.materials[l];void 0===n[u.uuid]&&(n[u.uuid]=r.parse(u)),c.push(n[u.uuid])}i[s.uuid]=c}else void 0===n[s.uuid]&&(n[s.uuid]=r.parse(s)),i[s.uuid]=n[s.uuid]}}return i},parseAnimations:function(t){for(var e=[],n=0;n<t.length;n++){var i=t[n],r=lu.parse(i);void 0!==i.uuid&&(r.uuid=i.uuid),e.push(r)}return e},parseImages:function(t,e){var n=this,i={};function r(t){return n.manager.itemStart(t),o.load(t,function(){n.manager.itemEnd(t)},void 0,function(){n.manager.itemError(t),n.manager.itemEnd(t)})}if(void 0!==t&&t.length>0){var o=new wu(new pu(e));o.setCrossOrigin(this.crossOrigin);for(var a=0,s=t.length;a<s;a++){var c=t[a],l=c.url;if(Array.isArray(l)){i[c.uuid]=[];for(var u=0,d=l.length;u<d;u++){var p=l[u],h=/^(\/\/)|([a-z]+:(\/\/)?)/i.test(p)?p:n.resourcePath+p;i[c.uuid].push(r(h))}}else h=/^(\/\/)|([a-z]+:(\/\/)?)/i.test(c.url)?c.url:n.resourcePath+c.url,i[c.uuid]=r(h)}}return i},parseTextures:function(t,e){function n(t,e){return"number"==typeof t?t:(console.warn("THREE.ObjectLoader.parseTexture: Constant should be in numeric form.",t),e[t])}var i={};if(void 0!==t)for(var r=0,o=t.length;r<o;r++){var a,s=t[r];void 0===s.image&&console.warn('THREE.ObjectLoader: No "image" specified for',s.uuid),void 0===e[s.image]&&console.warn("THREE.ObjectLoader: Undefined image",s.image),(a=Array.isArray(e[s.image])?new Wo(e[s.image]):new Qn(e[s.image])).needsUpdate=!0,a.uuid=s.uuid,void 0!==s.name&&(a.name=s.name),void 0!==s.mapping&&(a.mapping=n(s.mapping,pd)),void 0!==s.offset&&a.offset.fromArray(s.offset),void 0!==s.repeat&&a.repeat.fromArray(s.repeat),void 0!==s.center&&a.center.fromArray(s.center),void 0!==s.rotation&&(a.rotation=s.rotation),void 0!==s.wrap&&(a.wrapS=n(s.wrap[0],hd),a.wrapT=n(s.wrap[1],hd)),void 0!==s.format&&(a.format=s.format),void 0!==s.type&&(a.type=s.type),void 0!==s.encoding&&(a.encoding=s.encoding),void 0!==s.minFilter&&(a.minFilter=n(s.minFilter,fd)),void 0!==s.magFilter&&(a.magFilter=n(s.magFilter,fd)),void 0!==s.anisotropy&&(a.anisotropy=s.anisotropy),void 0!==s.flipY&&(a.flipY=s.flipY),void 0!==s.premultiplyAlpha&&(a.premultiplyAlpha=s.premultiplyAlpha),void 0!==s.unpackAlignment&&(a.unpackAlignment=s.unpackAlignment),i[s.uuid]=a}return i},parseObject:function(t,e,n){var i;function r(t){return void 0===e[t]&&console.warn("THREE.ObjectLoader: Undefined geometry",t),e[t]}function o(t){if(void 0!==t){if(Array.isArray(t)){for(var e=[],i=0,r=t.length;i<r;i++){var o=t[i];void 0===n[o]&&console.warn("THREE.ObjectLoader: Undefined material",o),e.push(n[o])}return e}return void 0===n[t]&&console.warn("THREE.ObjectLoader: Undefined material",t),n[t]}}switch(t.type){case"Scene":i=new ki,void 0!==t.background&&Number.isInteger(t.background)&&(i.background=new xr(t.background)),void 0!==t.fog&&("Fog"===t.fog.type?i.fog=new As(t.fog.color,t.fog.near,t.fog.far):"FogExp2"===t.fog.type&&(i.fog=new Cs(t.fog.color,t.fog.density)));break;case"PerspectiveCamera":i=new Po(t.fov,t.aspect,t.near,t.far),void 0!==t.focus&&(i.focus=t.focus),void 0!==t.zoom&&(i.zoom=t.zoom),void 0!==t.filmGauge&&(i.filmGauge=t.filmGauge),void 0!==t.filmOffset&&(i.filmOffset=t.filmOffset),void 0!==t.view&&(i.view=Object.assign({},t.view));break;case"OrthographicCamera":i=new $u(t.left,t.right,t.top,t.bottom,t.near,t.far),void 0!==t.zoom&&(i.zoom=t.zoom),void 0!==t.view&&(i.view=Object.assign({},t.view));break;case"AmbientLight":i=new nd(t.color,t.intensity);break;case"DirectionalLight":i=new ed(t.color,t.intensity);break;case"PointLight":i=new Qu(t.color,t.intensity,t.distance,t.decay);break;case"RectAreaLight":i=new id(t.color,t.intensity,t.width,t.height);break;case"SpotLight":i=new Zu(t.color,t.intensity,t.distance,t.angle,t.penumbra,t.decay);break;case"HemisphereLight":i=new Ku(t.color,t.groundColor,t.intensity);break;case"SkinnedMesh":console.warn("THREE.ObjectLoader.parseObject() does not support SkinnedMesh yet.");case"Mesh":i=new go(a=r(t.geometry),s=o(t.material));break;case"InstancedMesh":var a=r(t.geometry),s=o(t.material),c=t.count,l=t.instanceMatrix;(i=new rc(a,s,c)).instanceMatrix=new Ir(new Float32Array(l.array),16);break;case"LOD":i=new Xs;break;case"Line":i=new dc(r(t.geometry),o(t.material),t.mode);break;case"LineLoop":i=new gc(r(t.geometry),o(t.material));break;case"LineSegments":i=new fc(r(t.geometry),o(t.material));break;case"PointCloud":case"Points":i=new Sc(r(t.geometry),o(t.material));break;case"Sprite":i=new Hs(o(t.material));break;case"Group":i=new xs;break;default:i=new Ii}if(i.uuid=t.uuid,void 0!==t.name&&(i.name=t.name),void 0!==t.matrix?(i.matrix.fromArray(t.matrix),void 0!==t.matrixAutoUpdate&&(i.matrixAutoUpdate=t.matrixAutoUpdate),i.matrixAutoUpdate&&i.matrix.decompose(i.position,i.quaternion,i.scale)):(void 0!==t.position&&i.position.fromArray(t.position),void 0!==t.rotation&&i.rotation.fromArray(t.rotation),void 0!==t.quaternion&&i.quaternion.fromArray(t.quaternion),void 0!==t.scale&&i.scale.fromArray(t.scale)),void 0!==t.castShadow&&(i.castShadow=t.castShadow),void 0!==t.receiveShadow&&(i.receiveShadow=t.receiveShadow),t.shadow&&(void 0!==t.shadow.bias&&(i.shadow.bias=t.shadow.bias),void 0!==t.shadow.radius&&(i.shadow.radius=t.shadow.radius),void 0!==t.shadow.mapSize&&i.shadow.mapSize.fromArray(t.shadow.mapSize),void 0!==t.shadow.camera&&(i.shadow.camera=this.parseObject(t.shadow.camera))),void 0!==t.visible&&(i.visible=t.visible),void 0!==t.frustumCulled&&(i.frustumCulled=t.frustumCulled),void 0!==t.renderOrder&&(i.renderOrder=t.renderOrder),void 0!==t.userData&&(i.userData=t.userData),void 0!==t.layers&&(i.layers.mask=t.layers),void 0!==t.children)for(var u=t.children,d=0;d<u.length;d++)i.add(this.parseObject(u[d],e,n));if("LOD"===t.type){void 0!==t.autoUpdate&&(i.autoUpdate=t.autoUpdate);for(var p=t.levels,h=0;h<p.length;h++){var f=p[h],g=i.getObjectByProperty("uuid",f.object);void 0!==g&&i.addLevel(g,f.distance)}}return i}});var dd,pd={UVMapping:ft,CubeReflectionMapping:gt,CubeRefractionMapping:mt,EquirectangularReflectionMapping:vt,EquirectangularRefractionMapping:yt,SphericalReflectionMapping:bt,CubeUVReflectionMapping:wt,CubeUVRefractionMapping:St},hd={RepeatWrapping:xt,ClampToEdgeWrapping:Mt,MirroredRepeatWrapping:Et},fd={NearestFilter:Ct,NearestMipmapNearestFilter:At,NearestMipmapLinearFilter:Ot,LinearFilter:Pt,LinearMipmapNearestFilter:It,LinearMipmapLinearFilter:Dt};function gd(t){"undefined"==typeof createImageBitmap&&console.warn("THREE.ImageBitmapLoader: createImageBitmap() not supported."),"undefined"==typeof fetch&&console.warn("THREE.ImageBitmapLoader: fetch() not supported."),fu.call(this,t),this.options=void 0}function md(){this.type="ShapePath",this.color=new xr,this.subPaths=[],this.currentPath=null}function vd(t){this.type="Font",this.data=t}function yd(t,e,n,i,r){var o=r.glyphs[t]||r.glyphs["?"];if(o){var a,s,c,l,u,d,p,h,f=new md;if(o.o)for(var g=o._cachedOutline||(o._cachedOutline=o.o.split(" ")),m=0,v=g.length;m<v;)switch(g[m++]){case"m":a=g[m++]*e+n,s=g[m++]*e+i,f.moveTo(a,s);break;case"l":a=g[m++]*e+n,s=g[m++]*e+i,f.lineTo(a,s);break;case"q":c=g[m++]*e+n,l=g[m++]*e+i,u=g[m++]*e+n,d=g[m++]*e+i,f.quadraticCurveTo(u,d,c,l);break;case"b":c=g[m++]*e+n,l=g[m++]*e+i,u=g[m++]*e+n,d=g[m++]*e+i,p=g[m++]*e+n,h=g[m++]*e+i,f.bezierCurveTo(u,d,p,h,c,l)}return{offsetX:o.ha*e,path:f}}console.error('THREE.Font: character "'+t+'" does not exists in font family '+r.familyName+".")}function bd(t){fu.call(this,t)}gd.prototype=Object.assign(Object.create(fu.prototype),{constructor:gd,setOptions:function(t){return this.options=t,this},load:function(t,e,n,i){void 0===t&&(t=""),void 0!==this.path&&(t=this.path+t),t=this.manager.resolveURL(t);var r=this,o=du.get(t);if(void 0!==o)return r.manager.itemStart(t),setTimeout(function(){e&&e(o),r.manager.itemEnd(t)},0),o;fetch(t).then(function(t){return t.blob()}).then(function(t){return void 0===r.options?createImageBitmap(t):createImageBitmap(t,r.options)}).then(function(n){du.add(t,n),e&&e(n),r.manager.itemEnd(t)}).catch(function(e){i&&i(e),r.manager.itemError(t),r.manager.itemEnd(t)}),r.manager.itemStart(t)}}),Object.assign(md.prototype,{moveTo:function(t,e){return this.currentPath=new Hu,this.subPaths.push(this.currentPath),this.currentPath.moveTo(t,e),this},lineTo:function(t,e){return this.currentPath.lineTo(t,e),this},quadraticCurveTo:function(t,e,n,i){return this.currentPath.quadraticCurveTo(t,e,n,i),this},bezierCurveTo:function(t,e,n,i,r,o){return this.currentPath.bezierCurveTo(t,e,n,i,r,o),this},splineThru:function(t){return this.currentPath.splineThru(t),this},toShapes:function(t,e){function n(t){for(var e=[],n=0,i=t.length;n<i;n++){var r=t[n],o=new Wu;o.curves=r.curves,e.push(o)}return e}function i(t,e){for(var n=e.length,i=!1,r=n-1,o=0;o<n;r=o++){var a=e[r],s=e[o],c=s.x-a.x,l=s.y-a.y;if(Math.abs(l)>Number.EPSILON){if(l<0&&(a=e[o],c=-c,s=e[r],l=-l),t.y<a.y||t.y>s.y)continue;if(t.y===a.y){if(t.x===a.x)return!0}else{var u=l*(t.x-a.x)-c*(t.y-a.y);if(0===u)return!0;if(u<0)continue;i=!i}}else{if(t.y!==a.y)continue;if(s.x<=t.x&&t.x<=a.x||a.x<=t.x&&t.x<=s.x)return!0}}return i}var r=hl.isClockWise,o=this.subPaths;if(0===o.length)return[];if(!0===e)return n(o);var a,s,c,l=[];if(1===o.length)return s=o[0],(c=new Wu).curves=s.curves,l.push(c),l;var u=!r(o[0].getPoints());u=t?!u:u;var d,p,h=[],f=[],g=[],m=0;f[m]=void 0,g[m]=[];for(var v=0,y=o.length;v<y;v++)a=r(d=(s=o[v]).getPoints()),(a=t?!a:a)?(!u&&f[m]&&m++,f[m]={s:new Wu,p:d},f[m].s.curves=s.curves,u&&m++,g[m]=[]):g[m].push({h:s,p:d[0]});if(!f[0])return n(o);if(f.length>1){for(var b=!1,w=[],S=0,x=f.length;S<x;S++)h[S]=[];for(S=0,x=f.length;S<x;S++)for(var M=g[S],E=0;E<M.length;E++){for(var C=M[E],A=!0,T=0;T<f.length;T++)i(C.p,f[T].p)&&(S!==T&&w.push({froms:S,tos:T,hole:E}),A?(A=!1,h[T].push(C)):b=!0);A&&h[S].push(C)}w.length>0&&(b||(g=h))}v=0;for(var O=f.length;v<O;v++){c=f[v].s,l.push(c);for(var _=0,P=(p=g[v]).length;_<P;_++)c.holes.push(p[_].h)}return l}}),Object.assign(vd.prototype,{isFont:!0,generateShapes:function(t,e){void 0===e&&(e=100);for(var n=[],i=function(t,e,n){for(var i=Array.from?Array.from(t):String(t).split(""),r=e/n.resolution,o=(n.boundingBox.yMax-n.boundingBox.yMin+n.underlineThickness)*r,a=[],s=0,c=0,l=0;l<i.length;l++){var u=i[l];if("\n"===u)s=0,c-=o;else{var d=yd(u,r,s,c,n);s+=d.offsetX,a.push(d.path)}}return a}(t,e,this.data),r=0,o=i.length;r<o;r++)Array.prototype.push.apply(n,i[r].toShapes());return n}}),bd.prototype=Object.assign(Object.create(fu.prototype),{constructor:bd,load:function(t,e,n,i){var r=this,o=new mu(this.manager);o.setPath(this.path),o.load(t,function(t){var n;try{n=JSON.parse(t)}catch(e){console.warn("THREE.FontLoader: typeface.js support is being deprecated. Use typeface.json instead."),n=JSON.parse(t.substring(65,t.length-2))}var i=r.parse(n);e&&e(i)},n,i)},parse:function(t){return new vd(t)}});var wd={getContext:function(){return void 0===dd&&(dd=new(window.AudioContext||window.webkitAudioContext)),dd},setContext:function(t){dd=t}};function Sd(t){fu.call(this,t)}function xd(){this.coefficients=[];for(var t=0;t<9;t++)this.coefficients.push(new oi)}function Md(t,e){qu.call(this,void 0,e),this.sh=void 0!==t?t:new xd}function Ed(t,e,n){Md.call(this,void 0,n);var i=(new xr).set(t),r=(new xr).set(e),o=new oi(i.r,i.g,i.b),a=new oi(r.r,r.g,r.b),s=Math.sqrt(Math.PI),c=s*Math.sqrt(.75);this.sh.coefficients[0].copy(o).add(a).multiplyScalar(s),this.sh.coefficients[1].copy(o).sub(a).multiplyScalar(c)}function Cd(t,e){Md.call(this,void 0,e);var n=(new xr).set(t);this.sh.coefficients[0].set(n.r,n.g,n.b).multiplyScalar(2*Math.sqrt(Math.PI))}Sd.prototype=Object.assign(Object.create(fu.prototype),{constructor:Sd,load:function(t,e,n,i){var r=new mu(this.manager);r.setResponseType("arraybuffer"),r.setPath(this.path),r.load(t,function(t){var n=t.slice(0);wd.getContext().decodeAudioData(n,function(t){e(t)})},n,i)}}),Object.assign(xd.prototype,{isSphericalHarmonics3:!0,set:function(t){for(var e=0;e<9;e++)this.coefficients[e].copy(t[e]);return this},zero:function(){for(var t=0;t<9;t++)this.coefficients[t].set(0,0,0);return this},getAt:function(t,e){var n=t.x,i=t.y,r=t.z,o=this.coefficients;return e.copy(o[0]).multiplyScalar(.282095),e.addScaledVector(o[1],.488603*i),e.addScaledVector(o[2],.488603*r),e.addScaledVector(o[3],.488603*n),e.addScaledVector(o[4],n*i*1.092548),e.addScaledVector(o[5],i*r*1.092548),e.addScaledVector(o[6],.315392*(3*r*r-1)),e.addScaledVector(o[7],n*r*1.092548),e.addScaledVector(o[8],.546274*(n*n-i*i)),e},getIrradianceAt:function(t,e){var n=t.x,i=t.y,r=t.z,o=this.coefficients;return e.copy(o[0]).multiplyScalar(.886227),e.addScaledVector(o[1],1.023328*i),e.addScaledVector(o[2],1.023328*r),e.addScaledVector(o[3],1.023328*n),e.addScaledVector(o[4],.858086*n*i),e.addScaledVector(o[5],.858086*i*r),e.addScaledVector(o[6],.743125*r*r-.247708),e.addScaledVector(o[7],.858086*n*r),e.addScaledVector(o[8],.429043*(n*n-i*i)),e},add:function(t){for(var e=0;e<9;e++)this.coefficients[e].add(t.coefficients[e]);return this},addScaledSH:function(t,e){for(var n=0;n<9;n++)this.coefficients[n].addScaledVector(t.coefficients[n],e);return this},scale:function(t){for(var e=0;e<9;e++)this.coefficients[e].multiplyScalar(t);return this},lerp:function(t,e){for(var n=0;n<9;n++)this.coefficients[n].lerp(t.coefficients[n],e);return this},equals:function(t){for(var e=0;e<9;e++)if(!this.coefficients[e].equals(t.coefficients[e]))return!1;return!0},copy:function(t){return this.set(t.coefficients)},clone:function(){return(new this.constructor).copy(this)},fromArray:function(t,e){void 0===e&&(e=0);for(var n=this.coefficients,i=0;i<9;i++)n[i].fromArray(t,e+3*i);return this},toArray:function(t,e){void 0===t&&(t=[]),void 0===e&&(e=0);for(var n=this.coefficients,i=0;i<9;i++)n[i].toArray(t,e+3*i);return t}}),Object.assign(xd,{getBasisAt:function(t,e){var n=t.x,i=t.y,r=t.z;e[0]=.282095,e[1]=.488603*i,e[2]=.488603*r,e[3]=.488603*n,e[4]=1.092548*n*i,e[5]=1.092548*i*r,e[6]=.315392*(3*r*r-1),e[7]=1.092548*n*r,e[8]=.546274*(n*n-i*i)}}),Md.prototype=Object.assign(Object.create(qu.prototype),{constructor:Md,isLightProbe:!0,copy:function(t){return qu.prototype.copy.call(this,t),this.sh.copy(t.sh),this.intensity=t.intensity,this},toJSON:function(t){return qu.prototype.toJSON.call(this,t)}}),Ed.prototype=Object.assign(Object.create(Md.prototype),{constructor:Ed,isHemisphereLightProbe:!0,copy:function(t){return Md.prototype.copy.call(this,t),this},toJSON:function(t){return Md.prototype.toJSON.call(this,t)}}),Cd.prototype=Object.assign(Object.create(Md.prototype),{constructor:Cd,isAmbientLightProbe:!0,copy:function(t){return Md.prototype.copy.call(this,t),this},toJSON:function(t){return Md.prototype.toJSON.call(this,t)}});var Ad=new hi,Td=new hi;function Od(){this.type="StereoCamera",this.aspect=1,this.eyeSep=.064,this.cameraL=new Po,this.cameraL.layers.enable(1),this.cameraL.matrixAutoUpdate=!1,this.cameraR=new Po,this.cameraR.layers.enable(2),this.cameraR.matrixAutoUpdate=!1,this._cache={focus:null,fov:null,aspect:null,near:null,far:null,zoom:null,eyeSep:null}}function _d(t){this.autoStart=void 0===t||t,this.startTime=0,this.oldTime=0,this.elapsedTime=0,this.running=!1}Object.assign(Od.prototype,{update:function(t){var e=this._cache;if(e.focus!==t.focus||e.fov!==t.fov||e.aspect!==t.aspect*this.aspect||e.near!==t.near||e.far!==t.far||e.zoom!==t.zoom||e.eyeSep!==this.eyeSep){e.focus=t.focus,e.fov=t.fov,e.aspect=t.aspect*this.aspect,e.near=t.near,e.far=t.far,e.zoom=t.zoom,e.eyeSep=this.eyeSep;var n,i,r=t.projectionMatrix.clone(),o=e.eyeSep/2,a=o*e.near/e.focus,s=e.near*Math.tan(Kn.DEG2RAD*e.fov*.5)/e.zoom;Td.elements[12]=-o,Ad.elements[12]=o,n=-s*e.aspect+a,i=s*e.aspect+a,r.elements[0]=2*e.near/(i-n),r.elements[8]=(i+n)/(i-n),this.cameraL.projectionMatrix.copy(r),n=-s*e.aspect-a,i=s*e.aspect-a,r.elements[0]=2*e.near/(i-n),r.elements[8]=(i+n)/(i-n),this.cameraR.projectionMatrix.copy(r)}this.cameraL.matrixWorld.copy(t.matrixWorld).multiply(Td),this.cameraR.matrixWorld.copy(t.matrixWorld).multiply(Ad)}}),Object.assign(_d.prototype,{start:function(){this.startTime=("undefined"==typeof performance?Date:performance).now(),this.oldTime=this.startTime,this.elapsedTime=0,this.running=!0},stop:function(){this.getElapsedTime(),this.running=!1,this.autoStart=!1},getElapsedTime:function(){return this.getDelta(),this.elapsedTime},getDelta:function(){var t=0;if(this.autoStart&&!this.running)return this.start(),0;if(this.running){var e=("undefined"==typeof performance?Date:performance).now();t=(e-this.oldTime)/1e3,this.oldTime=e,this.elapsedTime+=t}return t}});var Pd=new oi,Id=new ni,kd=new oi,Dd=new oi;function Rd(){Ii.call(this),this.type="AudioListener",this.context=wd.getContext(),this.gain=this.context.createGain(),this.gain.connect(this.context.destination),this.filter=null,this.timeDelta=0,this._clock=new _d}function Ld(t){Ii.call(this),this.type="Audio",this.listener=t,this.context=t.context,this.gain=this.context.createGain(),this.gain.connect(t.getInput()),this.autoplay=!1,this.buffer=null,this.detune=0,this.loop=!1,this.loopStart=0,this.loopEnd=0,this.offset=0,this.duration=void 0,this.playbackRate=1,this.isPlaying=!1,this.hasPlaybackControl=!0,this.sourceType="empty",this._startedAt=0,this._pausedAt=0,this.filters=[]}Rd.prototype=Object.assign(Object.create(Ii.prototype),{constructor:Rd,getInput:function(){return this.gain},removeFilter:function(){return null!==this.filter&&(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination),this.gain.connect(this.context.destination),this.filter=null),this},getFilter:function(){return this.filter},setFilter:function(t){return null!==this.filter?(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination)):this.gain.disconnect(this.context.destination),this.filter=t,this.gain.connect(this.filter),this.filter.connect(this.context.destination),this},getMasterVolume:function(){return this.gain.gain.value},setMasterVolume:function(t){return this.gain.gain.setTargetAtTime(t,this.context.currentTime,.01),this},updateMatrixWorld:function(t){Ii.prototype.updateMatrixWorld.call(this,t);var e=this.context.listener,n=this.up;if(this.timeDelta=this._clock.getDelta(),this.matrixWorld.decompose(Pd,Id,kd),Dd.set(0,0,-1).applyQuaternion(Id),e.positionX){var i=this.context.currentTime+this.timeDelta;e.positionX.linearRampToValueAtTime(Pd.x,i),e.positionY.linearRampToValueAtTime(Pd.y,i),e.positionZ.linearRampToValueAtTime(Pd.z,i),e.forwardX.linearRampToValueAtTime(Dd.x,i),e.forwardY.linearRampToValueAtTime(Dd.y,i),e.forwardZ.linearRampToValueAtTime(Dd.z,i),e.upX.linearRampToValueAtTime(n.x,i),e.upY.linearRampToValueAtTime(n.y,i),e.upZ.linearRampToValueAtTime(n.z,i)}else e.setPosition(Pd.x,Pd.y,Pd.z),e.setOrientation(Dd.x,Dd.y,Dd.z,n.x,n.y,n.z)}}),Ld.prototype=Object.assign(Object.create(Ii.prototype),{constructor:Ld,getOutput:function(){return this.gain},setNodeSource:function(t){return this.hasPlaybackControl=!1,this.sourceType="audioNode",this.source=t,this.connect(),this},setMediaElementSource:function(t){return this.hasPlaybackControl=!1,this.sourceType="mediaNode",this.source=this.context.createMediaElementSource(t),this.connect(),this},setMediaStreamSource:function(t){return this.hasPlaybackControl=!1,this.sourceType="mediaStreamNode",this.source=this.context.createMediaStreamSource(t),this.connect(),this},setBuffer:function(t){return this.buffer=t,this.sourceType="buffer",this.autoplay&&this.play(),this},play:function(t){if(void 0===t&&(t=0),!0!==this.isPlaying){if(!1!==this.hasPlaybackControl){this._startedAt=this.context.currentTime+t;var e=this.context.createBufferSource();return e.buffer=this.buffer,e.loop=this.loop,e.loopStart=this.loopStart,e.loopEnd=this.loopEnd,e.onended=this.onEnded.bind(this),e.start(this._startedAt,this._pausedAt+this.offset,this.duration),this.isPlaying=!0,this.source=e,this.setDetune(this.detune),this.setPlaybackRate(this.playbackRate),this.connect()}console.warn("THREE.Audio: this Audio has no playback control.")}else console.warn("THREE.Audio: Audio is already playing.")},pause:function(){if(!1!==this.hasPlaybackControl)return!0===this.isPlaying&&(this._pausedAt+=Math.max(this.context.currentTime-this._startedAt,0)*this.playbackRate,this.source.stop(),this.source.onended=null,this.isPlaying=!1),this;console.warn("THREE.Audio: this Audio has no playback control.")},stop:function(){if(!1!==this.hasPlaybackControl)return this._pausedAt=0,this.source.stop(),this.source.onended=null,this.isPlaying=!1,this;console.warn("THREE.Audio: this Audio has no playback control.")},connect:function(){if(this.filters.length>0){this.source.connect(this.filters[0]);for(var t=1,e=this.filters.length;t<e;t++)this.filters[t-1].connect(this.filters[t]);this.filters[this.filters.length-1].connect(this.getOutput())}else this.source.connect(this.getOutput());return this},disconnect:function(){if(this.filters.length>0){this.source.disconnect(this.filters[0]);for(var t=1,e=this.filters.length;t<e;t++)this.filters[t-1].disconnect(this.filters[t]);this.filters[this.filters.length-1].disconnect(this.getOutput())}else this.source.disconnect(this.getOutput());return this},getFilters:function(){return this.filters},setFilters:function(t){return t||(t=[]),!0===this.isPlaying?(this.disconnect(),this.filters=t,this.connect()):this.filters=t,this},setDetune:function(t){if(this.detune=t,void 0!==this.source.detune)return!0===this.isPlaying&&this.source.detune.setTargetAtTime(this.detune,this.context.currentTime,.01),this},getDetune:function(){return this.detune},getFilter:function(){return this.getFilters()[0]},setFilter:function(t){return this.setFilters(t?[t]:[])},setPlaybackRate:function(t){if(!1!==this.hasPlaybackControl)return this.playbackRate=t,!0===this.isPlaying&&this.source.playbackRate.setTargetAtTime(this.playbackRate,this.context.currentTime,.01),this;console.warn("THREE.Audio: this Audio has no playback control.")},getPlaybackRate:function(){return this.playbackRate},onEnded:function(){this.isPlaying=!1},getLoop:function(){return!1===this.hasPlaybackControl?(console.warn("THREE.Audio: this Audio has no playback control."),!1):this.loop},setLoop:function(t){if(!1!==this.hasPlaybackControl)return this.loop=t,!0===this.isPlaying&&(this.source.loop=this.loop),this;console.warn("THREE.Audio: this Audio has no playback control.")},setLoopStart:function(t){return this.loopStart=t,this},setLoopEnd:function(t){return this.loopEnd=t,this},getVolume:function(){return this.gain.gain.value},setVolume:function(t){return this.gain.gain.setTargetAtTime(t,this.context.currentTime,.01),this}});var Nd=new oi,jd=new ni,Vd=new oi,Fd=new oi;function Ud(t){Ld.call(this,t),this.panner=this.context.createPanner(),this.panner.panningModel="HRTF",this.panner.connect(this.gain)}function Bd(t,e){this.analyser=t.context.createAnalyser(),this.analyser.fftSize=void 0!==e?e:2048,this.data=new Uint8Array(this.analyser.frequencyBinCount),t.getOutput().connect(this.analyser)}function zd(t,e,n){this.binding=t,this.valueSize=n;var i,r=Float64Array;switch(e){case"quaternion":i=this._slerp;break;case"string":case"bool":r=Array,i=this._select;break;default:i=this._lerp}this.buffer=new r(4*n),this._mixBufferRegion=i,this.cumulativeWeight=0,this.useCount=0,this.referenceCount=0}Ud.prototype=Object.assign(Object.create(Ld.prototype),{constructor:Ud,getOutput:function(){return this.panner},getRefDistance:function(){return this.panner.refDistance},setRefDistance:function(t){return this.panner.refDistance=t,this},getRolloffFactor:function(){return this.panner.rolloffFactor},setRolloffFactor:function(t){return this.panner.rolloffFactor=t,this},getDistanceModel:function(){return this.panner.distanceModel},setDistanceModel:function(t){return this.panner.distanceModel=t,this},getMaxDistance:function(){return this.panner.maxDistance},setMaxDistance:function(t){return this.panner.maxDistance=t,this},setDirectionalCone:function(t,e,n){return this.panner.coneInnerAngle=t,this.panner.coneOuterAngle=e,this.panner.coneOuterGain=n,this},updateMatrixWorld:function(t){if(Ii.prototype.updateMatrixWorld.call(this,t),!0!==this.hasPlaybackControl||!1!==this.isPlaying){this.matrixWorld.decompose(Nd,jd,Vd),Fd.set(0,0,1).applyQuaternion(jd);var e=this.panner;if(e.positionX){var n=this.context.currentTime+this.listener.timeDelta;e.positionX.linearRampToValueAtTime(Nd.x,n),e.positionY.linearRampToValueAtTime(Nd.y,n),e.positionZ.linearRampToValueAtTime(Nd.z,n),e.orientationX.linearRampToValueAtTime(Fd.x,n),e.orientationY.linearRampToValueAtTime(Fd.y,n),e.orientationZ.linearRampToValueAtTime(Fd.z,n)}else e.setPosition(Nd.x,Nd.y,Nd.z),e.setOrientation(Fd.x,Fd.y,Fd.z)}}}),Object.assign(Bd.prototype,{getFrequencyData:function(){return this.analyser.getByteFrequencyData(this.data),this.data},getAverageFrequency:function(){for(var t=0,e=this.getFrequencyData(),n=0;n<e.length;n++)t+=e[n];return t/e.length}}),Object.assign(zd.prototype,{accumulate:function(t,e){var n=this.buffer,i=this.valueSize,r=t*i+i,o=this.cumulativeWeight;if(0===o){for(var a=0;a!==i;++a)n[r+a]=n[a];o=e}else{var s=e/(o+=e);this._mixBufferRegion(n,r,0,s,i)}this.cumulativeWeight=o},apply:function(t){var e=this.valueSize,n=this.buffer,i=t*e+e,r=this.cumulativeWeight,o=this.binding;if(this.cumulativeWeight=0,r<1){var a=3*e;this._mixBufferRegion(n,i,a,1-r,e)}for(var s=e,c=e+e;s!==c;++s)if(n[s]!==n[s+e]){o.setValue(n,i);break}},saveOriginalState:function(){var t=this.binding,e=this.buffer,n=this.valueSize,i=3*n;t.getValue(e,i);for(var r=n,o=i;r!==o;++r)e[r]=e[i+r%n];this.cumulativeWeight=0},restoreOriginalState:function(){var t=3*this.valueSize;this.binding.setValue(this.buffer,t)},_select:function(t,e,n,i,r){if(i>=.5)for(var o=0;o!==r;++o)t[e+o]=t[n+o]},_slerp:function(t,e,n,i){ni.slerpFlat(t,e,t,e,t,n,i)},_lerp:function(t,e,n,i,r){for(var o=1-i,a=0;a!==r;++a){var s=e+a;t[s]=t[s]*o+t[n+a]*i}}});var Gd=new RegExp("[\\[\\]\\.:\\/]","g"),Hd="[^"+"\\[\\]\\.:\\/".replace("\\.","")+"]",Wd=/((?:WC+[\/:])*)/.source.replace("WC","[^\\[\\]\\.:\\/]"),qd=/(WCOD+)?/.source.replace("WCOD",Hd),Kd=/(?:\.(WC+)(?:\[(.+)\])?)?/.source.replace("WC","[^\\[\\]\\.:\\/]"),Xd=/\.(WC+)(?:\[(.+)\])?/.source.replace("WC","[^\\[\\]\\.:\\/]"),Yd=new RegExp("^"+Wd+qd+Kd+Xd+"$"),Zd=["material","materials","bones"];function Jd(t,e,n){var i=n||Qd.parseTrackName(e);this._targetGroup=t,this._bindings=t.subscribe_(e,i)}function Qd(t,e,n){this.path=e,this.parsedPath=n||Qd.parseTrackName(e),this.node=Qd.findNode(t,this.parsedPath.nodeName)||t,this.rootNode=t}function $d(){this.uuid=Kn.generateUUID(),this._objects=Array.prototype.slice.call(arguments),this.nCachedObjects_=0;var t={};this._indicesByUUID=t;for(var e=0,n=arguments.length;e!==n;++e)t[arguments[e].uuid]=e;this._paths=[],this._parsedPaths=[],this._bindings=[],this._bindingsIndicesByPath={};var i=this;this.stats={objects:{get total(){return i._objects.length},get inUse(){return this.total-i.nCachedObjects_}},get bindingsPerObject(){return i._bindings.length}}}function tp(t,e,n){this._mixer=t,this._clip=e,this._localRoot=n||null;for(var i=e.tracks,r=i.length,o=new Array(r),a={endingStart:$e,endingEnd:$e},s=0;s!==r;++s){var c=i[s].createInterpolant(null);o[s]=c,c.settings=a}this._interpolantSettings=a,this._interpolants=o,this._propertyBindings=new Array(r),this._cacheIndex=null,this._byClipCacheIndex=null,this._timeScaleInterpolant=null,this._weightInterpolant=null,this.loop=Xe,this._loopCount=-1,this._startTime=null,this.time=0,this.timeScale=1,this._effectiveTimeScale=1,this.weight=1,this._effectiveWeight=1,this.repetitions=1/0,this.paused=!1,this.enabled=!0,this.clampWhenFinished=!1,this.zeroSlopeAtStart=!0,this.zeroSlopeAtEnd=!0}function ep(t){this._root=t,this._initMemoryManager(),this._accuIndex=0,this.time=0,this.timeScale=1}function np(t){"string"==typeof t&&(console.warn("THREE.Uniform: Type parameter is no longer needed."),t=arguments[1]),this.value=t}function ip(t,e,n){Ts.call(this,t,e),this.meshPerAttribute=n||1}function rp(t,e,n,i){this.ray=new ir(t,e),this.near=n||0,this.far=i||1/0,this.camera=null,this.layers=new vi,this.params={Mesh:{},Line:{threshold:1},LOD:{},Points:{threshold:1},Sprite:{}},Object.defineProperties(this.params,{PointCloud:{get:function(){return console.warn("THREE.Raycaster: params.PointCloud has been renamed to params.Points."),this.Points}}})}function op(t,e){return t.distance-e.distance}function ap(t,e,n,i){if(t.layers.test(e.layers)&&t.raycast(e,n),!0===i)for(var r=t.children,o=0,a=r.length;o<a;o++)ap(r[o],e,n,!0)}function sp(t,e,n){return this.radius=void 0!==t?t:1,this.phi=void 0!==e?e:0,this.theta=void 0!==n?n:0,this}function cp(t,e,n){return this.radius=void 0!==t?t:1,this.theta=void 0!==e?e:0,this.y=void 0!==n?n:0,this}Object.assign(Jd.prototype,{getValue:function(t,e){this.bind();var n=this._targetGroup.nCachedObjects_,i=this._bindings[n];void 0!==i&&i.getValue(t,e)},setValue:function(t,e){for(var n=this._bindings,i=this._targetGroup.nCachedObjects_,r=n.length;i!==r;++i)n[i].setValue(t,e)},bind:function(){for(var t=this._bindings,e=this._targetGroup.nCachedObjects_,n=t.length;e!==n;++e)t[e].bind()},unbind:function(){for(var t=this._bindings,e=this._targetGroup.nCachedObjects_,n=t.length;e!==n;++e)t[e].unbind()}}),Object.assign(Qd,{Composite:Jd,create:function(t,e,n){return t&&t.isAnimationObjectGroup?new Qd.Composite(t,e,n):new Qd(t,e,n)},sanitizeNodeName:function(t){return t.replace(/\s/g,"_").replace(Gd,"")},parseTrackName:function(t){var e=Yd.exec(t);if(!e)throw new Error("PropertyBinding: Cannot parse trackName: "+t);var n={nodeName:e[2],objectName:e[3],objectIndex:e[4],propertyName:e[5],propertyIndex:e[6]},i=n.nodeName&&n.nodeName.lastIndexOf(".");if(void 0!==i&&-1!==i){var r=n.nodeName.substring(i+1);-1!==Zd.indexOf(r)&&(n.nodeName=n.nodeName.substring(0,i),n.objectName=r)}if(null===n.propertyName||0===n.propertyName.length)throw new Error("PropertyBinding: can not parse propertyName from trackName: "+t);return n},findNode:function(t,e){if(!e||""===e||"."===e||-1===e||e===t.name||e===t.uuid)return t;if(t.skeleton){var n=t.skeleton.getBoneByName(e);if(void 0!==n)return n}if(t.children){var i=function t(n){for(var i=0;i<n.length;i++){var r=n[i];if(r.name===e||r.uuid===e)return r;var o=t(r.children);if(o)return o}return null}(t.children);if(i)return i}return null}}),Object.assign(Qd.prototype,{_getValue_unavailable:function(){},_setValue_unavailable:function(){},BindingType:{Direct:0,EntireArray:1,ArrayElement:2,HasFromToArray:3},Versioning:{None:0,NeedsUpdate:1,MatrixWorldNeedsUpdate:2},GetterByBindingType:[function(t,e){t[e]=this.node[this.propertyName]},function(t,e){for(var n=this.resolvedProperty,i=0,r=n.length;i!==r;++i)t[e++]=n[i]},function(t,e){t[e]=this.resolvedProperty[this.propertyIndex]},function(t,e){this.resolvedProperty.toArray(t,e)}],SetterByBindingTypeAndVersioning:[[function(t,e){this.targetObject[this.propertyName]=t[e]},function(t,e){this.targetObject[this.propertyName]=t[e],this.targetObject.needsUpdate=!0},function(t,e){this.targetObject[this.propertyName]=t[e],this.targetObject.matrixWorldNeedsUpdate=!0}],[function(t,e){for(var n=this.resolvedProperty,i=0,r=n.length;i!==r;++i)n[i]=t[e++]},function(t,e){for(var n=this.resolvedProperty,i=0,r=n.length;i!==r;++i)n[i]=t[e++];this.targetObject.needsUpdate=!0},function(t,e){for(var n=this.resolvedProperty,i=0,r=n.length;i!==r;++i)n[i]=t[e++];this.targetObject.matrixWorldNeedsUpdate=!0}],[function(t,e){this.resolvedProperty[this.propertyIndex]=t[e]},function(t,e){this.resolvedProperty[this.propertyIndex]=t[e],this.targetObject.needsUpdate=!0},function(t,e){this.resolvedProperty[this.propertyIndex]=t[e],this.targetObject.matrixWorldNeedsUpdate=!0}],[function(t,e){this.resolvedProperty.fromArray(t,e)},function(t,e){this.resolvedProperty.fromArray(t,e),this.targetObject.needsUpdate=!0},function(t,e){this.resolvedProperty.fromArray(t,e),this.targetObject.matrixWorldNeedsUpdate=!0}]],getValue:function(t,e){this.bind(),this.getValue(t,e)},setValue:function(t,e){this.bind(),this.setValue(t,e)},bind:function(){var t=this.node,e=this.parsedPath,n=e.objectName,i=e.propertyName,r=e.propertyIndex;if(t||(t=Qd.findNode(this.rootNode,e.nodeName)||this.rootNode,this.node=t),this.getValue=this._getValue_unavailable,this.setValue=this._setValue_unavailable,t){if(n){var o=e.objectIndex;switch(n){case"materials":if(!t.material)return void console.error("THREE.PropertyBinding: Can not bind to material as node does not have a material.",this);if(!t.material.materials)return void console.error("THREE.PropertyBinding: Can not bind to material.materials as node.material does not have a materials array.",this);t=t.material.materials;break;case"bones":if(!t.skeleton)return void console.error("THREE.PropertyBinding: Can not bind to bones as node does not have a skeleton.",this);t=t.skeleton.bones;for(var a=0;a<t.length;a++)if(t[a].name===o){o=a;break}break;default:if(void 0===t[n])return void console.error("THREE.PropertyBinding: Can not bind to objectName of node undefined.",this);t=t[n]}if(void 0!==o){if(void 0===t[o])return void console.error("THREE.PropertyBinding: Trying to bind to objectIndex of objectName, but is undefined.",this,t);t=t[o]}}var s=t[i];if(void 0!==s){var c=this.Versioning.None;this.targetObject=t,void 0!==t.needsUpdate?c=this.Versioning.NeedsUpdate:void 0!==t.matrixWorldNeedsUpdate&&(c=this.Versioning.MatrixWorldNeedsUpdate);var l=this.BindingType.Direct;if(void 0!==r){if("morphTargetInfluences"===i){if(!t.geometry)return void console.error("THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.",this);if(t.geometry.isBufferGeometry){if(!t.geometry.morphAttributes)return void console.error("THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.morphAttributes.",this);for(a=0;a<this.node.geometry.morphAttributes.position.length;a++)if(t.geometry.morphAttributes.position[a].name===r){r=a;break}}else{if(!t.geometry.morphTargets)return void console.error("THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.morphTargets.",this);for(a=0;a<this.node.geometry.morphTargets.length;a++)if(t.geometry.morphTargets[a].name===r){r=a;break}}}l=this.BindingType.ArrayElement,this.resolvedProperty=s,this.propertyIndex=r}else void 0!==s.fromArray&&void 0!==s.toArray?(l=this.BindingType.HasFromToArray,this.resolvedProperty=s):Array.isArray(s)?(l=this.BindingType.EntireArray,this.resolvedProperty=s):this.propertyName=i;this.getValue=this.GetterByBindingType[l],this.setValue=this.SetterByBindingTypeAndVersioning[l][c]}else{var u=e.nodeName;console.error("THREE.PropertyBinding: Trying to update property for track: "+u+"."+i+" but it wasn't found.",t)}}else console.error("THREE.PropertyBinding: Trying to update node for track: "+this.path+" but it wasn't found.")},unbind:function(){this.node=null,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}}),Object.assign(Qd.prototype,{_getValue_unbound:Qd.prototype.getValue,_setValue_unbound:Qd.prototype.setValue}),Object.assign($d.prototype,{isAnimationObjectGroup:!0,add:function(){for(var t=this._objects,e=t.length,n=this.nCachedObjects_,i=this._indicesByUUID,r=this._paths,o=this._parsedPaths,a=this._bindings,s=a.length,c=void 0,l=0,u=arguments.length;l!==u;++l){var d=arguments[l],p=d.uuid,h=i[p];if(void 0===h){h=e++,i[p]=h,t.push(d);for(var f=0,g=s;f!==g;++f)a[f].push(new Qd(d,r[f],o[f]))}else if(h<n){c=t[h];var m=--n,v=t[m];for(i[v.uuid]=h,t[h]=v,i[p]=m,t[m]=d,f=0,g=s;f!==g;++f){var y=a[f],b=y[m],w=y[h];y[h]=b,void 0===w&&(w=new Qd(d,r[f],o[f])),y[m]=w}}else t[h]!==c&&console.error("THREE.AnimationObjectGroup: Different objects with the same UUID detected. Clean the caches or recreate your infrastructure when reloading scenes.")}this.nCachedObjects_=n},remove:function(){for(var t=this._objects,e=this.nCachedObjects_,n=this._indicesByUUID,i=this._bindings,r=i.length,o=0,a=arguments.length;o!==a;++o){var s=arguments[o],c=s.uuid,l=n[c];if(void 0!==l&&l>=e){var u=e++,d=t[u];n[d.uuid]=l,t[l]=d,n[c]=u,t[u]=s;for(var p=0,h=r;p!==h;++p){var f=i[p],g=f[u],m=f[l];f[l]=g,f[u]=m}}}this.nCachedObjects_=e},uncache:function(){for(var t=this._objects,e=t.length,n=this.nCachedObjects_,i=this._indicesByUUID,r=this._bindings,o=r.length,a=0,s=arguments.length;a!==s;++a){var c=arguments[a].uuid,l=i[c];if(void 0!==l)if(delete i[c],l<n){var u=--n,d=t[u],p=t[v=--e];i[d.uuid]=l,t[l]=d,i[p.uuid]=u,t[u]=p,t.pop();for(var h=0,f=o;h!==f;++h){var g=(y=r[h])[u],m=y[v];y[l]=g,y[u]=m,y.pop()}}else{var v;for(i[(p=t[v=--e]).uuid]=l,t[l]=p,t.pop(),h=0,f=o;h!==f;++h){var y;(y=r[h])[l]=y[v],y.pop()}}}this.nCachedObjects_=n},subscribe_:function(t,e){var n=this._bindingsIndicesByPath,i=n[t],r=this._bindings;if(void 0!==i)return r[i];var o=this._paths,a=this._parsedPaths,s=this._objects,c=s.length,l=this.nCachedObjects_,u=new Array(c);i=r.length,n[t]=i,o.push(t),a.push(e),r.push(u);for(var d=l,p=s.length;d!==p;++d){var h=s[d];u[d]=new Qd(h,t,e)}return u},unsubscribe_:function(t){var e=this._bindingsIndicesByPath,n=e[t];if(void 0!==n){var i=this._paths,r=this._parsedPaths,o=this._bindings,a=o.length-1,s=o[a];e[t[a]]=n,o[n]=s,o.pop(),r[n]=r[a],r.pop(),i[n]=i[a],i.pop()}}}),Object.assign(tp.prototype,{play:function(){return this._mixer._activateAction(this),this},stop:function(){return this._mixer._deactivateAction(this),this.reset()},reset:function(){return this.paused=!1,this.enabled=!0,this.time=0,this._loopCount=-1,this._startTime=null,this.stopFading().stopWarping()},isRunning:function(){return this.enabled&&!this.paused&&0!==this.timeScale&&null===this._startTime&&this._mixer._isActiveAction(this)},isScheduled:function(){return this._mixer._isActiveAction(this)},startAt:function(t){return this._startTime=t,this},setLoop:function(t,e){return this.loop=t,this.repetitions=e,this},setEffectiveWeight:function(t){return this.weight=t,this._effectiveWeight=this.enabled?t:0,this.stopFading()},getEffectiveWeight:function(){return this._effectiveWeight},fadeIn:function(t){return this._scheduleFading(t,0,1)},fadeOut:function(t){return this._scheduleFading(t,1,0)},crossFadeFrom:function(t,e,n){if(t.fadeOut(e),this.fadeIn(e),n){var i=this._clip.duration,r=t._clip.duration,o=r/i,a=i/r;t.warp(1,o,e),this.warp(a,1,e)}return this},crossFadeTo:function(t,e,n){return t.crossFadeFrom(this,e,n)},stopFading:function(){var t=this._weightInterpolant;return null!==t&&(this._weightInterpolant=null,this._mixer._takeBackControlInterpolant(t)),this},setEffectiveTimeScale:function(t){return this.timeScale=t,this._effectiveTimeScale=this.paused?0:t,this.stopWarping()},getEffectiveTimeScale:function(){return this._effectiveTimeScale},setDuration:function(t){return this.timeScale=this._clip.duration/t,this.stopWarping()},syncWith:function(t){return this.time=t.time,this.timeScale=t.timeScale,this.stopWarping()},halt:function(t){return this.warp(this._effectiveTimeScale,0,t)},warp:function(t,e,n){var i=this._mixer,r=i.time,o=this._timeScaleInterpolant,a=this.timeScale;null===o&&(o=i._lendControlInterpolant(),this._timeScaleInterpolant=o);var s=o.parameterPositions,c=o.sampleValues;return s[0]=r,s[1]=r+n,c[0]=t/a,c[1]=e/a,this},stopWarping:function(){var t=this._timeScaleInterpolant;return null!==t&&(this._timeScaleInterpolant=null,this._mixer._takeBackControlInterpolant(t)),this},getMixer:function(){return this._mixer},getClip:function(){return this._clip},getRoot:function(){return this._localRoot||this._mixer._root},_update:function(t,e,n,i){if(this.enabled){var r=this._startTime;if(null!==r){var o=(t-r)*n;if(o<0||0===n)return;this._startTime=null,e=n*o}e*=this._updateTimeScale(t);var a=this._updateTime(e),s=this._updateWeight(t);if(s>0)for(var c=this._interpolants,l=this._propertyBindings,u=0,d=c.length;u!==d;++u)c[u].evaluate(a),l[u].accumulate(i,s)}else this._updateWeight(t)},_updateWeight:function(t){var e=0;if(this.enabled){e=this.weight;var n=this._weightInterpolant;if(null!==n){var i=n.evaluate(t)[0];e*=i,t>n.parameterPositions[1]&&(this.stopFading(),0===i&&(this.enabled=!1))}}return this._effectiveWeight=e,e},_updateTimeScale:function(t){var e=0;if(!this.paused){e=this.timeScale;var n=this._timeScaleInterpolant;null!==n&&(e*=n.evaluate(t)[0],t>n.parameterPositions[1]&&(this.stopWarping(),0===e?this.paused=!0:this.timeScale=e))}return this._effectiveTimeScale=e,e},_updateTime:function(t){var e=this.time+t,n=this._clip.duration,i=this.loop,r=this._loopCount,o=i===Ye;if(0===t)return-1===r?e:o&&1==(1&r)?n-e:e;if(i===Ke){-1===r&&(this._loopCount=0,this._setEndings(!0,!0,!1));t:{if(e>=n)e=n;else{if(!(e<0)){this.time=e;break t}e=0}this.clampWhenFinished?this.paused=!0:this.enabled=!1,this.time=e,this._mixer.dispatchEvent({type:"finished",action:this,direction:t<0?-1:1})}}else{if(-1===r&&(t>=0?(r=0,this._setEndings(!0,0===this.repetitions,o)):this._setEndings(0===this.repetitions,!0,o)),e>=n||e<0){var a=Math.floor(e/n);e-=n*a,r+=Math.abs(a);var s=this.repetitions-r;if(s<=0)this.clampWhenFinished?this.paused=!0:this.enabled=!1,e=t>0?n:0,this.time=e,this._mixer.dispatchEvent({type:"finished",action:this,direction:t>0?1:-1});else{if(1===s){var c=t<0;this._setEndings(c,!c,o)}else this._setEndings(!1,!1,o);this._loopCount=r,this.time=e,this._mixer.dispatchEvent({type:"loop",action:this,loopDelta:a})}}else this.time=e;if(o&&1==(1&r))return n-e}return e},_setEndings:function(t,e,n){var i=this._interpolantSettings;n?(i.endingStart=tn,i.endingEnd=tn):(i.endingStart=t?this.zeroSlopeAtStart?tn:$e:en,i.endingEnd=e?this.zeroSlopeAtEnd?tn:$e:en)},_scheduleFading:function(t,e,n){var i=this._mixer,r=i.time,o=this._weightInterpolant;null===o&&(o=i._lendControlInterpolant(),this._weightInterpolant=o);var a=o.parameterPositions,s=o.sampleValues;return a[0]=r,s[0]=e,a[1]=r+t,s[1]=n,this}}),ep.prototype=Object.assign(Object.create(Gn.prototype),{constructor:ep,_bindAction:function(t,e){var n=t._localRoot||this._root,i=t._clip.tracks,r=i.length,o=t._propertyBindings,a=t._interpolants,s=n.uuid,c=this._bindingsByRootAndName,l=c[s];void 0===l&&(l={},c[s]=l);for(var u=0;u!==r;++u){var d=i[u],p=d.name,h=l[p];if(void 0!==h)o[u]=h;else{if(void 0!==(h=o[u])){null===h._cacheIndex&&(++h.referenceCount,this._addInactiveBinding(h,s,p));continue}var f=e&&e._propertyBindings[u].binding.parsedPath;++(h=new zd(Qd.create(n,p,f),d.ValueTypeName,d.getValueSize())).referenceCount,this._addInactiveBinding(h,s,p),o[u]=h}a[u].resultBuffer=h.buffer}},_activateAction:function(t){if(!this._isActiveAction(t)){if(null===t._cacheIndex){var e=(t._localRoot||this._root).uuid,n=t._clip.uuid,i=this._actionsByClip[n];this._bindAction(t,i&&i.knownActions[0]),this._addInactiveAction(t,n,e)}for(var r=t._propertyBindings,o=0,a=r.length;o!==a;++o){var s=r[o];0==s.useCount++&&(this._lendBinding(s),s.saveOriginalState())}this._lendAction(t)}},_deactivateAction:function(t){if(this._isActiveAction(t)){for(var e=t._propertyBindings,n=0,i=e.length;n!==i;++n){var r=e[n];0==--r.useCount&&(r.restoreOriginalState(),this._takeBackBinding(r))}this._takeBackAction(t)}},_initMemoryManager:function(){this._actions=[],this._nActiveActions=0,this._actionsByClip={},this._bindings=[],this._nActiveBindings=0,this._bindingsByRootAndName={},this._controlInterpolants=[],this._nActiveControlInterpolants=0;var t=this;this.stats={actions:{get total(){return t._actions.length},get inUse(){return t._nActiveActions}},bindings:{get total(){return t._bindings.length},get inUse(){return t._nActiveBindings}},controlInterpolants:{get total(){return t._controlInterpolants.length},get inUse(){return t._nActiveControlInterpolants}}}},_isActiveAction:function(t){var e=t._cacheIndex;return null!==e&&e<this._nActiveActions},_addInactiveAction:function(t,e,n){var i=this._actions,r=this._actionsByClip,o=r[e];if(void 0===o)o={knownActions:[t],actionByRoot:{}},t._byClipCacheIndex=0,r[e]=o;else{var a=o.knownActions;t._byClipCacheIndex=a.length,a.push(t)}t._cacheIndex=i.length,i.push(t),o.actionByRoot[n]=t},_removeInactiveAction:function(t){var e=this._actions,n=e[e.length-1],i=t._cacheIndex;n._cacheIndex=i,e[i]=n,e.pop(),t._cacheIndex=null;var r=t._clip.uuid,o=this._actionsByClip,a=o[r],s=a.knownActions,c=s[s.length-1],l=t._byClipCacheIndex;c._byClipCacheIndex=l,s[l]=c,s.pop(),t._byClipCacheIndex=null,delete a.actionByRoot[(t._localRoot||this._root).uuid],0===s.length&&delete o[r],this._removeInactiveBindingsForAction(t)},_removeInactiveBindingsForAction:function(t){for(var e=t._propertyBindings,n=0,i=e.length;n!==i;++n){var r=e[n];0==--r.referenceCount&&this._removeInactiveBinding(r)}},_lendAction:function(t){var e=this._actions,n=t._cacheIndex,i=this._nActiveActions++,r=e[i];t._cacheIndex=i,e[i]=t,r._cacheIndex=n,e[n]=r},_takeBackAction:function(t){var e=this._actions,n=t._cacheIndex,i=--this._nActiveActions,r=e[i];t._cacheIndex=i,e[i]=t,r._cacheIndex=n,e[n]=r},_addInactiveBinding:function(t,e,n){var i=this._bindingsByRootAndName,r=i[e],o=this._bindings;void 0===r&&(r={},i[e]=r),r[n]=t,t._cacheIndex=o.length,o.push(t)},_removeInactiveBinding:function(t){var e=this._bindings,n=t.binding,i=n.rootNode.uuid,r=n.path,o=this._bindingsByRootAndName,a=o[i],s=e[e.length-1],c=t._cacheIndex;s._cacheIndex=c,e[c]=s,e.pop(),delete a[r],0===Object.keys(a).length&&delete o[i]},_lendBinding:function(t){var e=this._bindings,n=t._cacheIndex,i=this._nActiveBindings++,r=e[i];t._cacheIndex=i,e[i]=t,r._cacheIndex=n,e[n]=r},_takeBackBinding:function(t){var e=this._bindings,n=t._cacheIndex,i=--this._nActiveBindings,r=e[i];t._cacheIndex=i,e[i]=t,r._cacheIndex=n,e[n]=r},_lendControlInterpolant:function(){var t=this._controlInterpolants,e=this._nActiveControlInterpolants++,n=t[e];return void 0===n&&((n=new $l(new Float32Array(2),new Float32Array(2),1,this._controlInterpolantsResultBuffer)).__cacheIndex=e,t[e]=n),n},_takeBackControlInterpolant:function(t){var e=this._controlInterpolants,n=t.__cacheIndex,i=--this._nActiveControlInterpolants,r=e[i];t.__cacheIndex=i,e[i]=t,r.__cacheIndex=n,e[n]=r},_controlInterpolantsResultBuffer:new Float32Array(1),clipAction:function(t,e){var n=e||this._root,i=n.uuid,r="string"==typeof t?lu.findByName(n,t):t,o=null!==r?r.uuid:t,a=this._actionsByClip[o],s=null;if(void 0!==a){var c=a.actionByRoot[i];if(void 0!==c)return c;s=a.knownActions[0],null===r&&(r=s._clip)}if(null===r)return null;var l=new tp(this,r,e);return this._bindAction(l,s),this._addInactiveAction(l,o,i),l},existingAction:function(t,e){var n=e||this._root,i=n.uuid,r="string"==typeof t?lu.findByName(n,t):t,o=r?r.uuid:t,a=this._actionsByClip[o];return void 0!==a&&a.actionByRoot[i]||null},stopAllAction:function(){var t=this._actions,e=this._nActiveActions,n=this._bindings,i=this._nActiveBindings;this._nActiveActions=0,this._nActiveBindings=0;for(var r=0;r!==e;++r)t[r].reset();for(r=0;r!==i;++r)n[r].useCount=0;return this},update:function(t){t*=this.timeScale;for(var e=this._actions,n=this._nActiveActions,i=this.time+=t,r=Math.sign(t),o=this._accuIndex^=1,a=0;a!==n;++a)e[a]._update(i,t,r,o);var s=this._bindings,c=this._nActiveBindings;for(a=0;a!==c;++a)s[a].apply(o);return this},setTime:function(t){this.time=0;for(var e=0;e<this._actions.length;e++)this._actions[e].time=0;return this.update(t)},getRoot:function(){return this._root},uncacheClip:function(t){var e=this._actions,n=t.uuid,i=this._actionsByClip,r=i[n];if(void 0!==r){for(var o=r.knownActions,a=0,s=o.length;a!==s;++a){var c=o[a];this._deactivateAction(c);var l=c._cacheIndex,u=e[e.length-1];c._cacheIndex=null,c._byClipCacheIndex=null,u._cacheIndex=l,e[l]=u,e.pop(),this._removeInactiveBindingsForAction(c)}delete i[n]}},uncacheRoot:function(t){var e=t.uuid,n=this._actionsByClip;for(var i in n){var r=n[i].actionByRoot[e];void 0!==r&&(this._deactivateAction(r),this._removeInactiveAction(r))}var o=this._bindingsByRootAndName[e];if(void 0!==o)for(var a in o){var s=o[a];s.restoreOriginalState(),this._removeInactiveBinding(s)}},uncacheAction:function(t,e){var n=this.existingAction(t,e);null!==n&&(this._deactivateAction(n),this._removeInactiveAction(n))}}),np.prototype.clone=function(){return new np(void 0===this.value.clone?this.value:this.value.clone())},ip.prototype=Object.assign(Object.create(Ts.prototype),{constructor:ip,isInstancedInterleavedBuffer:!0,copy:function(t){return Ts.prototype.copy.call(this,t),this.meshPerAttribute=t.meshPerAttribute,this}}),Object.assign(rp.prototype,{set:function(t,e){this.ray.set(t,e)},setFromCamera:function(t,e){e&&e.isPerspectiveCamera?(this.ray.origin.setFromMatrixPosition(e.matrixWorld),this.ray.direction.set(t.x,t.y,.5).unproject(e).sub(this.ray.origin).normalize(),this.camera=e):e&&e.isOrthographicCamera?(this.ray.origin.set(t.x,t.y,(e.near+e.far)/(e.near-e.far)).unproject(e),this.ray.direction.set(0,0,-1).transformDirection(e.matrixWorld),this.camera=e):console.error("THREE.Raycaster: Unsupported camera type.")},intersectObject:function(t,e,n){var i=n||[];return ap(t,this,i,e),i.sort(op),i},intersectObjects:function(t,e,n){var i=n||[];if(!1===Array.isArray(t))return console.warn("THREE.Raycaster.intersectObjects: objects is not an Array."),i;for(var r=0,o=t.length;r<o;r++)ap(t[r],this,i,e);return i.sort(op),i}}),Object.assign(sp.prototype,{set:function(t,e,n){return this.radius=t,this.phi=e,this.theta=n,this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.radius=t.radius,this.phi=t.phi,this.theta=t.theta,this},makeSafe:function(){return this.phi=Math.max(1e-6,Math.min(Math.PI-1e-6,this.phi)),this},setFromVector3:function(t){return this.setFromCartesianCoords(t.x,t.y,t.z)},setFromCartesianCoords:function(t,e,n){return this.radius=Math.sqrt(t*t+e*e+n*n),0===this.radius?(this.theta=0,this.phi=0):(this.theta=Math.atan2(t,n),this.phi=Math.acos(Kn.clamp(e/this.radius,-1,1))),this}}),Object.assign(cp.prototype,{set:function(t,e,n){return this.radius=t,this.theta=e,this.y=n,this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.radius=t.radius,this.theta=t.theta,this.y=t.y,this},setFromVector3:function(t){return this.setFromCartesianCoords(t.x,t.y,t.z)},setFromCartesianCoords:function(t,e,n){return this.radius=Math.sqrt(t*t+n*n),this.theta=Math.atan2(t,n),this.y=e,this}});var lp=new Xn;function up(t,e){this.min=void 0!==t?t:new Xn(1/0,1/0),this.max=void 0!==e?e:new Xn(-1/0,-1/0)}Object.assign(up.prototype,{set:function(t,e){return this.min.copy(t),this.max.copy(e),this},setFromPoints:function(t){this.makeEmpty();for(var e=0,n=t.length;e<n;e++)this.expandByPoint(t[e]);return this},setFromCenterAndSize:function(t,e){var n=lp.copy(e).multiplyScalar(.5);return this.min.copy(t).sub(n),this.max.copy(t).add(n),this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.min.copy(t.min),this.max.copy(t.max),this},makeEmpty:function(){return this.min.x=this.min.y=1/0,this.max.x=this.max.y=-1/0,this},isEmpty:function(){return this.max.x<this.min.x||this.max.y<this.min.y},getCenter:function(t){return void 0===t&&(console.warn("THREE.Box2: .getCenter() target is now required"),t=new Xn),this.isEmpty()?t.set(0,0):t.addVectors(this.min,this.max).multiplyScalar(.5)},getSize:function(t){return void 0===t&&(console.warn("THREE.Box2: .getSize() target is now required"),t=new Xn),this.isEmpty()?t.set(0,0):t.subVectors(this.max,this.min)},expandByPoint:function(t){return this.min.min(t),this.max.max(t),this},expandByVector:function(t){return this.min.sub(t),this.max.add(t),this},expandByScalar:function(t){return this.min.addScalar(-t),this.max.addScalar(t),this},containsPoint:function(t){return!(t.x<this.min.x||t.x>this.max.x||t.y<this.min.y||t.y>this.max.y)},containsBox:function(t){return this.min.x<=t.min.x&&t.max.x<=this.max.x&&this.min.y<=t.min.y&&t.max.y<=this.max.y},getParameter:function(t,e){return void 0===e&&(console.warn("THREE.Box2: .getParameter() target is now required"),e=new Xn),e.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y))},intersectsBox:function(t){return!(t.max.x<this.min.x||t.min.x>this.max.x||t.max.y<this.min.y||t.min.y>this.max.y)},clampPoint:function(t,e){return void 0===e&&(console.warn("THREE.Box2: .clampPoint() target is now required"),e=new Xn),e.copy(t).clamp(this.min,this.max)},distanceToPoint:function(t){return lp.copy(t).clamp(this.min,this.max).sub(t).length()},intersect:function(t){return this.min.max(t.min),this.max.min(t.max),this},union:function(t){return this.min.min(t.min),this.max.max(t.max),this},translate:function(t){return this.min.add(t),this.max.add(t),this},equals:function(t){return t.min.equals(this.min)&&t.max.equals(this.max)}});var dp=new oi,pp=new oi;function hp(t,e){this.start=void 0!==t?t:new oi,this.end=void 0!==e?e:new oi}function fp(t){Ii.call(this),this.material=t,this.render=function(){}}Object.assign(hp.prototype,{set:function(t,e){return this.start.copy(t),this.end.copy(e),this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.start.copy(t.start),this.end.copy(t.end),this},getCenter:function(t){return void 0===t&&(console.warn("THREE.Line3: .getCenter() target is now required"),t=new oi),t.addVectors(this.start,this.end).multiplyScalar(.5)},delta:function(t){return void 0===t&&(console.warn("THREE.Line3: .delta() target is now required"),t=new oi),t.subVectors(this.end,this.start)},distanceSq:function(){return this.start.distanceToSquared(this.end)},distance:function(){return this.start.distanceTo(this.end)},at:function(t,e){return void 0===e&&(console.warn("THREE.Line3: .at() target is now required"),e=new oi),this.delta(e).multiplyScalar(t).add(this.start)},closestPointToPointParameter:function(t,e){dp.subVectors(t,this.start),pp.subVectors(this.end,this.start);var n=pp.dot(pp),i=pp.dot(dp)/n;return e&&(i=Kn.clamp(i,0,1)),i},closestPointToPoint:function(t,e,n){var i=this.closestPointToPointParameter(t,e);return void 0===n&&(console.warn("THREE.Line3: .closestPointToPoint() target is now required"),n=new oi),this.delta(n).multiplyScalar(i).add(this.start)},applyMatrix4:function(t){return this.start.applyMatrix4(t),this.end.applyMatrix4(t),this},equals:function(t){return t.start.equals(this.start)&&t.end.equals(this.end)}}),fp.prototype=Object.create(Ii.prototype),fp.prototype.constructor=fp,fp.prototype.isImmediateRenderObject=!0;var gp=new oi;function mp(t,e){Ii.call(this),this.light=t,this.light.updateMatrixWorld(),this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.color=e;for(var n=new Zr,i=[0,0,0,0,0,1,0,0,0,1,0,1,0,0,0,-1,0,1,0,0,0,0,1,1,0,0,0,0,-1,1],r=0,o=1;r<32;r++,o++){var a=r/32*Math.PI*2,s=o/32*Math.PI*2;i.push(Math.cos(a),Math.sin(a),1,Math.cos(s),Math.sin(s),1)}n.setAttribute("position",new Fr(i,3));var c=new oc({fog:!1,toneMapped:!1});this.cone=new fc(n,c),this.add(this.cone),this.update()}mp.prototype=Object.create(Ii.prototype),mp.prototype.constructor=mp,mp.prototype.dispose=function(){this.cone.geometry.dispose(),this.cone.material.dispose()},mp.prototype.update=function(){this.light.updateMatrixWorld();var t=this.light.distance?this.light.distance:1e3,e=t*Math.tan(this.light.angle);this.cone.scale.set(e,e,t),gp.setFromMatrixPosition(this.light.target.matrixWorld),this.cone.lookAt(gp),void 0!==this.color?this.cone.material.color.set(this.color):this.cone.material.color.copy(this.light.color)};var vp=new oi,yp=new hi,bp=new hi;function wp(t){for(var e=function t(e){var n=[];e&&e.isBone&&n.push(e);for(var i=0;i<e.children.length;i++)n.push.apply(n,t(e.children[i]));return n}(t),n=new Zr,i=[],r=[],o=new xr(0,0,1),a=new xr(0,1,0),s=0;s<e.length;s++){var c=e[s];c.parent&&c.parent.isBone&&(i.push(0,0,0),i.push(0,0,0),r.push(o.r,o.g,o.b),r.push(a.r,a.g,a.b))}n.setAttribute("position",new Fr(i,3)),n.setAttribute("color",new Fr(r,3));var l=new oc({vertexColors:!0,depthTest:!1,depthWrite:!1,toneMapped:!1,transparent:!0});fc.call(this,n,l),this.root=t,this.bones=e,this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1}function Sp(t,e,n){this.light=t,this.light.updateMatrixWorld(),this.color=n;var i=new Ml(e,4,2),r=new _r({wireframe:!0,fog:!1,toneMapped:!1});go.call(this,i,r),this.matrix=this.light.matrixWorld,this.matrixAutoUpdate=!1,this.update()}wp.prototype=Object.create(fc.prototype),wp.prototype.constructor=wp,wp.prototype.isSkeletonHelper=!0,wp.prototype.updateMatrixWorld=function(t){var e=this.bones,n=this.geometry,i=n.getAttribute("position");bp.getInverse(this.root.matrixWorld);for(var r=0,o=0;r<e.length;r++){var a=e[r];a.parent&&a.parent.isBone&&(yp.multiplyMatrices(bp,a.matrixWorld),vp.setFromMatrixPosition(yp),i.setXYZ(o,vp.x,vp.y,vp.z),yp.multiplyMatrices(bp,a.parent.matrixWorld),vp.setFromMatrixPosition(yp),i.setXYZ(o+1,vp.x,vp.y,vp.z),o+=2)}n.getAttribute("position").needsUpdate=!0,Ii.prototype.updateMatrixWorld.call(this,t)},Sp.prototype=Object.create(go.prototype),Sp.prototype.constructor=Sp,Sp.prototype.dispose=function(){this.geometry.dispose(),this.material.dispose()},Sp.prototype.update=function(){void 0!==this.color?this.material.color.set(this.color):this.material.color.copy(this.light.color)};var xp=new oi,Mp=new xr,Ep=new xr;function Cp(t,e,n){Ii.call(this),this.light=t,this.light.updateMatrixWorld(),this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.color=n;var i=new Lc(e);i.rotateY(.5*Math.PI),this.material=new _r({wireframe:!0,fog:!1,toneMapped:!1}),void 0===this.color&&(this.material.vertexColors=!0);var r=i.getAttribute("position"),o=new Float32Array(3*r.count);i.setAttribute("color",new Ir(o,3)),this.add(new go(i,this.material)),this.update()}function Ap(t,e,n,i){t=t||10,e=e||10,n=new xr(void 0!==n?n:4473924),i=new xr(void 0!==i?i:8947848);for(var r=e/2,o=t/e,a=t/2,s=[],c=[],l=0,u=0,d=-a;l<=e;l++,d+=o){s.push(-a,0,d,a,0,d),s.push(d,0,-a,d,0,a);var p=l===r?n:i;p.toArray(c,u),u+=3,p.toArray(c,u),u+=3,p.toArray(c,u),u+=3,p.toArray(c,u),u+=3}var h=new Zr;h.setAttribute("position",new Fr(s,3)),h.setAttribute("color",new Fr(c,3));var f=new oc({vertexColors:!0,toneMapped:!1});fc.call(this,h,f)}function Tp(t,e,n,i,r,o){t=t||10,e=e||16,n=n||8,i=i||64,r=new xr(void 0!==r?r:4473924),o=new xr(void 0!==o?o:8947848);var a,s,c,l,u,d,p,h=[],f=[];for(l=0;l<=e;l++)c=l/e*(2*Math.PI),a=Math.sin(c)*t,s=Math.cos(c)*t,h.push(0,0,0),h.push(a,0,s),p=1&l?r:o,f.push(p.r,p.g,p.b),f.push(p.r,p.g,p.b);for(l=0;l<=n;l++)for(p=1&l?r:o,d=t-t/n*l,u=0;u<i;u++)c=u/i*(2*Math.PI),a=Math.sin(c)*d,s=Math.cos(c)*d,h.push(a,0,s),f.push(p.r,p.g,p.b),c=(u+1)/i*(2*Math.PI),a=Math.sin(c)*d,s=Math.cos(c)*d,h.push(a,0,s),f.push(p.r,p.g,p.b);var g=new Zr;g.setAttribute("position",new Fr(h,3)),g.setAttribute("color",new Fr(f,3));var m=new oc({vertexColors:!0,toneMapped:!1});fc.call(this,g,m)}Cp.prototype=Object.create(Ii.prototype),Cp.prototype.constructor=Cp,Cp.prototype.dispose=function(){this.children[0].geometry.dispose(),this.children[0].material.dispose()},Cp.prototype.update=function(){var t=this.children[0];if(void 0!==this.color)this.material.color.set(this.color);else{var e=t.geometry.getAttribute("color");Mp.copy(this.light.color),Ep.copy(this.light.groundColor);for(var n=0,i=e.count;n<i;n++){var r=n<i/2?Mp:Ep;e.setXYZ(n,r.r,r.g,r.b)}e.needsUpdate=!0}t.lookAt(xp.setFromMatrixPosition(this.light.matrixWorld).negate())},Ap.prototype=Object.assign(Object.create(fc.prototype),{constructor:Ap,copy:function(t){return fc.prototype.copy.call(this,t),this.geometry.copy(t.geometry),this.material.copy(t.material),this},clone:function(){return(new this.constructor).copy(this)}}),Tp.prototype=Object.create(fc.prototype),Tp.prototype.constructor=Tp;var Op=new oi,_p=new oi,Pp=new oi;function Ip(t,e,n){Ii.call(this),this.light=t,this.light.updateMatrixWorld(),this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.color=n,void 0===e&&(e=1);var i=new Zr;i.setAttribute("position",new Fr([-e,e,0,e,e,0,e,-e,0,-e,-e,0,-e,e,0],3));var r=new oc({fog:!1,toneMapped:!1});this.lightPlane=new dc(i,r),this.add(this.lightPlane),(i=new Zr).setAttribute("position",new Fr([0,0,0,0,0,1],3)),this.targetLine=new dc(i,r),this.add(this.targetLine),this.update()}Ip.prototype=Object.create(Ii.prototype),Ip.prototype.constructor=Ip,Ip.prototype.dispose=function(){this.lightPlane.geometry.dispose(),this.lightPlane.material.dispose(),this.targetLine.geometry.dispose(),this.targetLine.material.dispose()},Ip.prototype.update=function(){Op.setFromMatrixPosition(this.light.matrixWorld),_p.setFromMatrixPosition(this.light.target.matrixWorld),Pp.subVectors(_p,Op),this.lightPlane.lookAt(_p),void 0!==this.color?(this.lightPlane.material.color.set(this.color),this.targetLine.material.color.set(this.color)):(this.lightPlane.material.color.copy(this.light.color),this.targetLine.material.color.copy(this.light.color)),this.targetLine.lookAt(_p),this.targetLine.scale.z=Pp.length()};var kp=new oi,Dp=new _o;function Rp(t){var e=new Zr,n=new oc({color:16777215,vertexColors:!0,toneMapped:!1}),i=[],r=[],o={},a=new xr(16755200),s=new xr(16711680),c=new xr(43775),l=new xr(16777215),u=new xr(3355443);function d(t,e,n){p(t,n),p(e,n)}function p(t,e){i.push(0,0,0),r.push(e.r,e.g,e.b),void 0===o[t]&&(o[t]=[]),o[t].push(i.length/3-1)}d("n1","n2",a),d("n2","n4",a),d("n4","n3",a),d("n3","n1",a),d("f1","f2",a),d("f2","f4",a),d("f4","f3",a),d("f3","f1",a),d("n1","f1",a),d("n2","f2",a),d("n3","f3",a),d("n4","f4",a),d("p","n1",s),d("p","n2",s),d("p","n3",s),d("p","n4",s),d("u1","u2",c),d("u2","u3",c),d("u3","u1",c),d("c","t",l),d("p","c",u),d("cn1","cn2",u),d("cn3","cn4",u),d("cf1","cf2",u),d("cf3","cf4",u),e.setAttribute("position",new Fr(i,3)),e.setAttribute("color",new Fr(r,3)),fc.call(this,e,n),this.camera=t,this.camera.updateProjectionMatrix&&this.camera.updateProjectionMatrix(),this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.pointMap=o,this.update()}function Lp(t,e,n,i,r,o,a){kp.set(r,o,a).unproject(i);var s=e[t];if(void 0!==s)for(var c=n.getAttribute("position"),l=0,u=s.length;l<u;l++)c.setXYZ(s[l],kp.x,kp.y,kp.z)}Rp.prototype=Object.create(fc.prototype),Rp.prototype.constructor=Rp,Rp.prototype.update=function(){var t=this.geometry,e=this.pointMap;Dp.projectionMatrixInverse.copy(this.camera.projectionMatrixInverse),Lp("c",e,t,Dp,0,0,-1),Lp("t",e,t,Dp,0,0,1),Lp("n1",e,t,Dp,-1,-1,-1),Lp("n2",e,t,Dp,1,-1,-1),Lp("n3",e,t,Dp,-1,1,-1),Lp("n4",e,t,Dp,1,1,-1),Lp("f1",e,t,Dp,-1,-1,1),Lp("f2",e,t,Dp,1,-1,1),Lp("f3",e,t,Dp,-1,1,1),Lp("f4",e,t,Dp,1,1,1),Lp("u1",e,t,Dp,.7,1.1,-1),Lp("u2",e,t,Dp,-.7,1.1,-1),Lp("u3",e,t,Dp,0,2,-1),Lp("cf1",e,t,Dp,-1,0,1),Lp("cf2",e,t,Dp,1,0,1),Lp("cf3",e,t,Dp,0,-1,1),Lp("cf4",e,t,Dp,0,1,1),Lp("cn1",e,t,Dp,-1,0,-1),Lp("cn2",e,t,Dp,1,0,-1),Lp("cn3",e,t,Dp,0,-1,-1),Lp("cn4",e,t,Dp,0,1,-1),t.getAttribute("position").needsUpdate=!0};var Np=new qi;function jp(t,e){this.object=t,void 0===e&&(e=16776960);var n=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),i=new Float32Array(24),r=new Zr;r.setIndex(new Ir(n,1)),r.setAttribute("position",new Ir(i,3)),fc.call(this,r,new oc({color:e,toneMapped:!1})),this.matrixAutoUpdate=!1,this.update()}function Vp(t,e){this.type="Box3Helper",this.box=t,e=e||16776960;var n=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),i=new Zr;i.setIndex(new Ir(n,1)),i.setAttribute("position",new Fr([1,1,1,-1,1,1,-1,-1,1,1,-1,1,1,1,-1,-1,1,-1,-1,-1,-1,1,-1,-1],3)),fc.call(this,i,new oc({color:e,toneMapped:!1})),this.geometry.computeBoundingSphere()}function Fp(t,e,n){this.type="PlaneHelper",this.plane=t,this.size=void 0===e?1:e;var i=void 0!==n?n:16776960,r=new Zr;r.setAttribute("position",new Fr([1,-1,1,-1,1,1,-1,-1,1,1,1,1,-1,1,1,-1,-1,1,1,-1,1,1,1,1,0,0,1,0,0,0],3)),r.computeBoundingSphere(),dc.call(this,r,new oc({color:i,toneMapped:!1}));var o=new Zr;o.setAttribute("position",new Fr([1,1,1,-1,1,1,-1,-1,1,1,1,1,-1,-1,1,1,-1,1],3)),o.computeBoundingSphere(),this.add(new go(o,new _r({color:i,opacity:.2,transparent:!0,depthWrite:!1,toneMapped:!1})))}jp.prototype=Object.create(fc.prototype),jp.prototype.constructor=jp,jp.prototype.update=function(t){if(void 0!==t&&console.warn("THREE.BoxHelper: .update() has no longer arguments."),void 0!==this.object&&Np.setFromObject(this.object),!Np.isEmpty()){var e=Np.min,n=Np.max,i=this.geometry.attributes.position,r=i.array;r[0]=n.x,r[1]=n.y,r[2]=n.z,r[3]=e.x,r[4]=n.y,r[5]=n.z,r[6]=e.x,r[7]=e.y,r[8]=n.z,r[9]=n.x,r[10]=e.y,r[11]=n.z,r[12]=n.x,r[13]=n.y,r[14]=e.z,r[15]=e.x,r[16]=n.y,r[17]=e.z,r[18]=e.x,r[19]=e.y,r[20]=e.z,r[21]=n.x,r[22]=e.y,r[23]=e.z,i.needsUpdate=!0,this.geometry.computeBoundingSphere()}},jp.prototype.setFromObject=function(t){return this.object=t,this.update(),this},jp.prototype.copy=function(t){return fc.prototype.copy.call(this,t),this.object=t.object,this},jp.prototype.clone=function(){return(new this.constructor).copy(this)},Vp.prototype=Object.create(fc.prototype),Vp.prototype.constructor=Vp,Vp.prototype.updateMatrixWorld=function(t){var e=this.box;e.isEmpty()||(e.getCenter(this.position),e.getSize(this.scale),this.scale.multiplyScalar(.5),Ii.prototype.updateMatrixWorld.call(this,t))},Fp.prototype=Object.create(dc.prototype),Fp.prototype.constructor=Fp,Fp.prototype.updateMatrixWorld=function(t){var e=-this.plane.constant;Math.abs(e)<1e-8&&(e=1e-8),this.scale.set(.5*this.size,.5*this.size,e),this.children[0].material.side=e<0?C:E,this.lookAt(this.plane.normal),Ii.prototype.updateMatrixWorld.call(this,t)};var Up,Bp,zp=new oi;function Gp(t,e,n,i,r,o){Ii.call(this),void 0===t&&(t=new oi(0,0,1)),void 0===e&&(e=new oi(0,0,0)),void 0===n&&(n=1),void 0===i&&(i=16776960),void 0===r&&(r=.2*n),void 0===o&&(o=.2*r),void 0===Up&&((Up=new Zr).setAttribute("position",new Fr([0,0,0,0,1,0],3)),(Bp=new Dl(0,.5,1,5,1)).translate(0,-.5,0)),this.position.copy(e),this.line=new dc(Up,new oc({color:i,toneMapped:!1})),this.line.matrixAutoUpdate=!1,this.add(this.line),this.cone=new go(Bp,new _r({color:i,toneMapped:!1})),this.cone.matrixAutoUpdate=!1,this.add(this.cone),this.setDirection(t),this.setLength(n,r,o)}function Hp(t){var e=[0,0,0,t=t||1,0,0,0,0,0,0,t,0,0,0,0,0,0,t],n=new Zr;n.setAttribute("position",new Fr(e,3)),n.setAttribute("color",new Fr([1,0,0,1,.6,0,0,1,0,.6,1,0,0,0,1,0,.6,1],3));var i=new oc({vertexColors:!0,toneMapped:!1});fc.call(this,n,i)}Gp.prototype=Object.create(Ii.prototype),Gp.prototype.constructor=Gp,Gp.prototype.setDirection=function(t){if(t.y>.99999)this.quaternion.set(0,0,0,1);else if(t.y<-.99999)this.quaternion.set(1,0,0,0);else{zp.set(t.z,0,-t.x).normalize();var e=Math.acos(t.y);this.quaternion.setFromAxisAngle(zp,e)}},Gp.prototype.setLength=function(t,e,n){void 0===e&&(e=.2*t),void 0===n&&(n=.2*e),this.line.scale.set(1,Math.max(1e-4,t-e),1),this.line.updateMatrix(),this.cone.scale.set(n,e,n),this.cone.position.y=t,this.cone.updateMatrix()},Gp.prototype.setColor=function(t){this.line.material.color.set(t),this.cone.material.color.set(t)},Gp.prototype.copy=function(t){return Ii.prototype.copy.call(this,t,!1),this.line.copy(t.line),this.cone.copy(t.cone),this},Gp.prototype.clone=function(){return(new this.constructor).copy(this)},Hp.prototype=Object.create(fc.prototype),Hp.prototype.constructor=Hp;var Wp,qp=Math.pow(2,8),Kp=[.125,.215,.35,.446,.526,.582],Xp=5+Kp.length,Yp=(r(i={},an,0),r(i,sn,1),r(i,ln,2),r(i,dn,3),r(i,pn,4),r(i,hn,5),r(i,cn,6),i),Zp=new $u,Jp=(20,(Wp=new Ul({defines:{n:20},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:new Float32Array(20)},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:new oi(0,1,0)},inputEncoding:{value:Yp[an]},outputEncoding:{value:Yp[an]}},vertexShader:"\nprecision mediump float;\nprecision mediump int;\nattribute vec3 position;\nattribute vec2 uv;\nattribute float faceIndex;\nvarying vec3 vOutputDirection;\nvec3 getDirection(vec2 uv, float face) {\n\tuv = 2.0 * uv - 1.0;\n\tvec3 direction = vec3(uv, 1.0);\n\tif (face == 0.0) {\n\t\tdirection = direction.zyx;\n\t\tdirection.z *= -1.0;\n\t} else if (face == 1.0) {\n\t\tdirection = direction.xzy;\n\t\tdirection.z *= -1.0;\n\t} else if (face == 3.0) {\n\t\tdirection = direction.zyx;\n\t\tdirection.x *= -1.0;\n\t} else if (face == 4.0) {\n\t\tdirection = direction.xzy;\n\t\tdirection.y *= -1.0;\n\t} else if (face == 5.0) {\n\t\tdirection.xz *= -1.0;\n\t}\n\treturn direction;\n}\nvoid main() {\n\tvOutputDirection = getDirection(uv, faceIndex);\n\tgl_Position = vec4( position, 1.0 );\n}\n\t",fragmentShader:"\nprecision mediump float;\nprecision mediump int;\nvarying vec3 vOutputDirection;\nuniform sampler2D envMap;\nuniform int samples;\nuniform float weights[n];\nuniform bool latitudinal;\nuniform float dTheta;\nuniform float mipInt;\nuniform vec3 poleAxis;\n\n".concat("\nuniform int inputEncoding;\nuniform int outputEncoding;\n\n#include <encodings_pars_fragment>\n\nvec4 inputTexelToLinear(vec4 value){\n\tif(inputEncoding == 0){\n\t\treturn value;\n\t}else if(inputEncoding == 1){\n\t\treturn sRGBToLinear(value);\n\t}else if(inputEncoding == 2){\n\t\treturn RGBEToLinear(value);\n\t}else if(inputEncoding == 3){\n\t\treturn RGBMToLinear(value, 7.0);\n\t}else if(inputEncoding == 4){\n\t\treturn RGBMToLinear(value, 16.0);\n\t}else if(inputEncoding == 5){\n\t\treturn RGBDToLinear(value, 256.0);\n\t}else{\n\t\treturn GammaToLinear(value, 2.2);\n\t}\n}\n\nvec4 linearToOutputTexel(vec4 value){\n\tif(outputEncoding == 0){\n\t\treturn value;\n\t}else if(outputEncoding == 1){\n\t\treturn LinearTosRGB(value);\n\t}else if(outputEncoding == 2){\n\t\treturn LinearToRGBE(value);\n\t}else if(outputEncoding == 3){\n\t\treturn LinearToRGBM(value, 7.0);\n\t}else if(outputEncoding == 4){\n\t\treturn LinearToRGBM(value, 16.0);\n\t}else if(outputEncoding == 5){\n\t\treturn LinearToRGBD(value, 256.0);\n\t}else{\n\t\treturn LinearToGamma(value, 2.2);\n\t}\n}\n\nvec4 envMapTexelToLinear(vec4 color) {\n\treturn inputTexelToLinear(color);\n}\n\t","\n\n#define ENVMAP_TYPE_CUBE_UV\n#include <cube_uv_reflection_fragment>\n\nvec3 getSample(float theta, vec3 axis) {\n\tfloat cosTheta = cos(theta);\n\t// Rodrigues' axis-angle rotation\n\tvec3 sampleDirection = vOutputDirection * cosTheta\n\t\t+ cross(axis, vOutputDirection) * sin(theta)\n\t\t+ axis * dot(axis, vOutputDirection) * (1.0 - cosTheta);\n\treturn bilinearCubeUV(envMap, sampleDirection, mipInt);\n}\n\nvoid main() {\n\tvec3 axis = latitudinal ? poleAxis : cross(poleAxis, vOutputDirection);\n\tif (all(equal(axis, vec3(0.0))))\n\t\taxis = vec3(vOutputDirection.z, 0.0, - vOutputDirection.x);\n\taxis = normalize(axis);\n\tgl_FragColor = vec4(0.0);\n\tgl_FragColor.rgb += weights[0] * getSample(0.0, axis);\n\tfor (int i = 1; i < n; i++) {\n\t\tif (i >= samples)\n\t\t\tbreak;\n\t\tfloat theta = dTheta * float(i);\n\t\tgl_FragColor.rgb += weights[i] * getSample(-1.0 * theta, axis);\n\t\tgl_FragColor.rgb += weights[i] * getSample(theta, axis);\n\t}\n\tgl_FragColor = linearToOutputTexel(gl_FragColor);\n}\n\t\t"),blending:_,depthTest:!1,depthWrite:!1})).type="SphericalGaussianBlur",Wp),Qp=null,$p=null,th=function(){for(var t=[],e=[],n=[],i=8,r=0;r<Xp;r++){var o=Math.pow(2,i);e.push(o);var a=1/o;r>4?a=Kp[r-8+4-1]:0==r&&(a=0),n.push(a);for(var s=1/(o-1),c=-s/2,l=1+s/2,u=[c,c,l,c,l,l,c,c,l,l,c,l],d=new Float32Array(108),p=new Float32Array(72),h=new Float32Array(36),f=0;f<6;f++){var g=f%3*2/3-1,m=f>2?0:-1,v=[g,m,0,g+2/3,m,0,g+2/3,m+1,0,g,m,0,g+2/3,m+1,0,g,m+1,0];d.set(v,18*f),p.set(u,12*f);var y=[f,f,f,f,f,f];h.set(y,6*f)}var b=new Zr;b.setAttribute("position",new Ir(d,3)),b.setAttribute("uv",new Ir(p,2)),b.setAttribute("faceIndex",new Ir(h,1)),t.push(b),i>4&&i--}return{_lodPlanes:t,_sizeLods:e,_sigmas:n}}(),eh=th._lodPlanes,nh=th._sizeLods,ih=th._sigmas,rh=null,oh=null,ah=null,sh=(1+Math.sqrt(5))/2,ch=1/sh,lh=[new oi(1,1,1),new oi(-1,1,1),new oi(1,1,-1),new oi(-1,1,-1),new oi(0,sh,ch),new oi(0,sh,-ch),new oi(ch,0,sh),new oi(-ch,0,sh),new oi(sh,ch,0),new oi(-sh,ch,0)];function uh(t){oh=t,hh(Jp)}function dh(t){var e={magFilter:Ct,minFilter:Ct,generateMipmaps:!1,type:t?t.type:Lt,format:t?t.format:Qt,encoding:t?t.encoding:ln,depthBuffer:!1,stencilBuffer:!1},n=fh(e);return n.depthBuffer=!t,rh=fh(e),n}function ph(t){rh.dispose(),oh.setRenderTarget(ah),t.scissorTest=!1,t.setSize(t.width,t.height)}function hh(t){var e=new ki;e.add(new go(eh[0],t)),oh.compile(e,Zp)}function fh(t){var e=new ti(3*qp,3*qp,t);return e.texture.mapping=wt,e.texture.name="PMREM.cubeUv",e.scissorTest=!0,e}function gh(t,e,n,i,r){t.viewport.set(e,n,i,r),t.scissor.set(e,n,i,r)}function mh(t){var e=oh.autoClear;oh.autoClear=!1;for(var n=1;n<Xp;n++)vh(t,n-1,n,Math.sqrt(ih[n]*ih[n]-ih[n-1]*ih[n-1]),lh[(n-1)%lh.length]);oh.autoClear=e}function vh(t,e,n,i,r){yh(t,rh,e,n,i,"latitudinal",r),yh(rh,t,n,n,i,"longitudinal",r)}function yh(t,e,n,i,r,o,a){"latitudinal"!==o&&"longitudinal"!==o&&console.error("blur direction must be either latitudinal or longitudinal!");var s=new ki;s.add(new go(eh[i],Jp));var c=Jp.uniforms,l=nh[n]-1,u=isFinite(r)?Math.PI/(2*l):2*Math.PI/39,d=r/u,p=isFinite(r)?1+Math.floor(3*d):20;p>20&&console.warn("sigmaRadians, ".concat(r,", is too large and will clip, as it requested ").concat(p," samples when the maximum is set to ").concat(20));for(var h=[],f=0,g=0;g<20;++g){var m=g/d,v=Math.exp(-m*m/2);h.push(v),0==g?f+=v:g<p&&(f+=2*v)}for(g=0;g<h.length;g++)h[g]=h[g]/f;c.envMap.value=t.texture,c.samples.value=p,c.weights.value=h,c.latitudinal.value="latitudinal"===o,a&&(c.poleAxis.value=a),c.dTheta.value=u,c.mipInt.value=8-n,c.inputEncoding.value=Yp[t.texture.encoding],c.outputEncoding.value=Yp[t.texture.encoding];var y=nh[i];gh(e,m=3*Math.max(0,qp-2*y),(0===i?0:2*qp)+2*y*(i>4?i-8+4:0),3*y,2*y),oh.setRenderTarget(e),oh.render(s,Zp)}function bh(){var t=new Ul({uniforms:{envMap:{value:null},texelSize:{value:new Xn(1,1)},inputEncoding:{value:Yp[an]},outputEncoding:{value:Yp[an]}},vertexShader:"\nprecision mediump float;\nprecision mediump int;\nattribute vec3 position;\nattribute vec2 uv;\nattribute float faceIndex;\nvarying vec3 vOutputDirection;\nvec3 getDirection(vec2 uv, float face) {\n\tuv = 2.0 * uv - 1.0;\n\tvec3 direction = vec3(uv, 1.0);\n\tif (face == 0.0) {\n\t\tdirection = direction.zyx;\n\t\tdirection.z *= -1.0;\n\t} else if (face == 1.0) {\n\t\tdirection = direction.xzy;\n\t\tdirection.z *= -1.0;\n\t} else if (face == 3.0) {\n\t\tdirection = direction.zyx;\n\t\tdirection.x *= -1.0;\n\t} else if (face == 4.0) {\n\t\tdirection = direction.xzy;\n\t\tdirection.y *= -1.0;\n\t} else if (face == 5.0) {\n\t\tdirection.xz *= -1.0;\n\t}\n\treturn direction;\n}\nvoid main() {\n\tvOutputDirection = getDirection(uv, faceIndex);\n\tgl_Position = vec4( position, 1.0 );\n}\n\t",fragmentShader:"\nprecision mediump float;\nprecision mediump int;\nvarying vec3 vOutputDirection;\nuniform sampler2D envMap;\nuniform vec2 texelSize;\n\n".concat("\nuniform int inputEncoding;\nuniform int outputEncoding;\n\n#include <encodings_pars_fragment>\n\nvec4 inputTexelToLinear(vec4 value){\n\tif(inputEncoding == 0){\n\t\treturn value;\n\t}else if(inputEncoding == 1){\n\t\treturn sRGBToLinear(value);\n\t}else if(inputEncoding == 2){\n\t\treturn RGBEToLinear(value);\n\t}else if(inputEncoding == 3){\n\t\treturn RGBMToLinear(value, 7.0);\n\t}else if(inputEncoding == 4){\n\t\treturn RGBMToLinear(value, 16.0);\n\t}else if(inputEncoding == 5){\n\t\treturn RGBDToLinear(value, 256.0);\n\t}else{\n\t\treturn GammaToLinear(value, 2.2);\n\t}\n}\n\nvec4 linearToOutputTexel(vec4 value){\n\tif(outputEncoding == 0){\n\t\treturn value;\n\t}else if(outputEncoding == 1){\n\t\treturn LinearTosRGB(value);\n\t}else if(outputEncoding == 2){\n\t\treturn LinearToRGBE(value);\n\t}else if(outputEncoding == 3){\n\t\treturn LinearToRGBM(value, 7.0);\n\t}else if(outputEncoding == 4){\n\t\treturn LinearToRGBM(value, 16.0);\n\t}else if(outputEncoding == 5){\n\t\treturn LinearToRGBD(value, 256.0);\n\t}else{\n\t\treturn LinearToGamma(value, 2.2);\n\t}\n}\n\nvec4 envMapTexelToLinear(vec4 color) {\n\treturn inputTexelToLinear(color);\n}\n\t","\n\n#define RECIPROCAL_PI 0.31830988618\n#define RECIPROCAL_PI2 0.15915494\n\nvoid main() {\n\tgl_FragColor = vec4(0.0);\n\tvec3 outputDirection = normalize(vOutputDirection);\n\tvec2 uv;\n\tuv.y = asin(clamp(outputDirection.y, -1.0, 1.0)) * RECIPROCAL_PI + 0.5;\n\tuv.x = atan(outputDirection.z, outputDirection.x) * RECIPROCAL_PI2 + 0.5;\n\tvec2 f = fract(uv / texelSize - 0.5);\n\tuv -= f * texelSize;\n\tvec3 tl = envMapTexelToLinear(texture2D(envMap, uv)).rgb;\n\tuv.x += texelSize.x;\n\tvec3 tr = envMapTexelToLinear(texture2D(envMap, uv)).rgb;\n\tuv.y += texelSize.y;\n\tvec3 br = envMapTexelToLinear(texture2D(envMap, uv)).rgb;\n\tuv.x -= texelSize.x;\n\tvec3 bl = envMapTexelToLinear(texture2D(envMap, uv)).rgb;\n\tvec3 tm = mix(tl, tr, f.x);\n\tvec3 bm = mix(bl, br, f.x);\n\tgl_FragColor.rgb = mix(tm, bm, f.y);\n\tgl_FragColor = linearToOutputTexel(gl_FragColor);\n}\n\t\t"),blending:_,depthTest:!1,depthWrite:!1});return t.type="EquirectangularToCubeUV",t}function wh(){var t=new Ul({uniforms:{envMap:{value:null},inputEncoding:{value:Yp[an]},outputEncoding:{value:Yp[an]}},vertexShader:"\nprecision mediump float;\nprecision mediump int;\nattribute vec3 position;\nattribute vec2 uv;\nattribute float faceIndex;\nvarying vec3 vOutputDirection;\nvec3 getDirection(vec2 uv, float face) {\n\tuv = 2.0 * uv - 1.0;\n\tvec3 direction = vec3(uv, 1.0);\n\tif (face == 0.0) {\n\t\tdirection = direction.zyx;\n\t\tdirection.z *= -1.0;\n\t} else if (face == 1.0) {\n\t\tdirection = direction.xzy;\n\t\tdirection.z *= -1.0;\n\t} else if (face == 3.0) {\n\t\tdirection = direction.zyx;\n\t\tdirection.x *= -1.0;\n\t} else if (face == 4.0) {\n\t\tdirection = direction.xzy;\n\t\tdirection.y *= -1.0;\n\t} else if (face == 5.0) {\n\t\tdirection.xz *= -1.0;\n\t}\n\treturn direction;\n}\nvoid main() {\n\tvOutputDirection = getDirection(uv, faceIndex);\n\tgl_Position = vec4( position, 1.0 );\n}\n\t",fragmentShader:"\nprecision mediump float;\nprecision mediump int;\nvarying vec3 vOutputDirection;\nuniform samplerCube envMap;\n\n".concat("\nuniform int inputEncoding;\nuniform int outputEncoding;\n\n#include <encodings_pars_fragment>\n\nvec4 inputTexelToLinear(vec4 value){\n\tif(inputEncoding == 0){\n\t\treturn value;\n\t}else if(inputEncoding == 1){\n\t\treturn sRGBToLinear(value);\n\t}else if(inputEncoding == 2){\n\t\treturn RGBEToLinear(value);\n\t}else if(inputEncoding == 3){\n\t\treturn RGBMToLinear(value, 7.0);\n\t}else if(inputEncoding == 4){\n\t\treturn RGBMToLinear(value, 16.0);\n\t}else if(inputEncoding == 5){\n\t\treturn RGBDToLinear(value, 256.0);\n\t}else{\n\t\treturn GammaToLinear(value, 2.2);\n\t}\n}\n\nvec4 linearToOutputTexel(vec4 value){\n\tif(outputEncoding == 0){\n\t\treturn value;\n\t}else if(outputEncoding == 1){\n\t\treturn LinearTosRGB(value);\n\t}else if(outputEncoding == 2){\n\t\treturn LinearToRGBE(value);\n\t}else if(outputEncoding == 3){\n\t\treturn LinearToRGBM(value, 7.0);\n\t}else if(outputEncoding == 4){\n\t\treturn LinearToRGBM(value, 16.0);\n\t}else if(outputEncoding == 5){\n\t\treturn LinearToRGBD(value, 256.0);\n\t}else{\n\t\treturn LinearToGamma(value, 2.2);\n\t}\n}\n\nvec4 envMapTexelToLinear(vec4 color) {\n\treturn inputTexelToLinear(color);\n}\n\t","\n\nvoid main() {\n\tgl_FragColor = vec4(0.0);\n\tgl_FragColor.rgb = envMapTexelToLinear(textureCube(envMap, vec3( - vOutputDirection.x, vOutputDirection.yz ))).rgb;\n\tgl_FragColor = linearToOutputTexel(gl_FragColor);\n}\n\t\t"),blending:_,depthTest:!1,depthWrite:!1});return t.type="CubemapToCubeUV",t}function Sh(t,e,n,i,r,o,a){return console.warn("THREE.Face4 has been removed. A THREE.Face3 will be created instead."),new Ar(t,e,n,r,o,a)}uh.prototype={constructor:uh,fromScene:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:.1,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:100;ah=oh.getRenderTarget();var r=dh();return function(t,e,n,i){var r=new Po(90,1,e,n),o=[1,1,1,1,-1,1],a=[1,1,-1,-1,-1,1],s=oh.outputEncoding,c=oh.toneMapping,l=oh.toneMappingExposure,u=oh.getClearColor(),d=oh.getClearAlpha();oh.toneMapping=lt,oh.toneMappingExposure=1,oh.outputEncoding=an,t.scale.z*=-1;var p=t.background;if(p&&p.isColor){p.convertSRGBToLinear();var h=Math.max(p.r,p.g,p.b),f=Math.min(Math.max(Math.ceil(Math.log2(h)),-128),127);p=p.multiplyScalar(Math.pow(2,-f));var g=(f+128)/255;oh.setClearColor(p,g),t.background=null}for(var m=0;m<6;m++){var v=m%3;0==v?(r.up.set(0,o[m],0),r.lookAt(a[m],0,0)):1==v?(r.up.set(0,0,o[m]),r.lookAt(0,a[m],0)):(r.up.set(0,o[m],0),r.lookAt(0,0,a[m])),gh(i,v*qp,m>2?qp:0,qp,qp),oh.setRenderTarget(i),oh.render(t,r)}oh.toneMapping=c,oh.toneMappingExposure=l,oh.outputEncoding=s,oh.setClearColor(u,d),t.scale.z*=-1}(t,n,i,r),e>0&&vh(r,0,0,e),mh(r),ph(r),r},fromEquirectangular:function(t){return t.magFilter=Ct,t.minFilter=Ct,t.generateMipmaps=!1,this.fromCubemap(t)},fromCubemap:function(t){ah=oh.getRenderTarget();var e=dh(t);return function(t,e){var n=new ki;t.isCubeTexture?null==$p&&($p=wh()):null==Qp&&(Qp=bh());var i=t.isCubeTexture?$p:Qp;n.add(new go(eh[0],i));var r=i.uniforms;r.envMap.value=t,t.isCubeTexture||r.texelSize.value.set(1/t.image.width,1/t.image.height),r.inputEncoding.value=Yp[t.encoding],r.outputEncoding.value=Yp[t.encoding],gh(e,0,0,3*qp,2*qp),oh.setRenderTarget(e),oh.render(n,Zp)}(t,e),mh(e),ph(e),e},compileCubemapShader:function(){null==$p&&hh($p=wh())},compileEquirectangularShader:function(){null==Qp&&hh(Qp=bh())},dispose:function(){Jp.dispose(),null!=$p&&$p.dispose(),null!=Qp&&Qp.dispose();for(var t=0;t<eh.length;t++)eh[t].dispose()}};var xh=0,Mh=1,Eh=0,Ch=1,Ah=2;function Th(t){return console.warn("THREE.MeshFaceMaterial has been removed. Use an Array instead."),t}function Oh(t){return void 0===t&&(t=[]),console.warn("THREE.MultiMaterial has been removed. Use an Array instead."),t.isMultiMaterial=!0,t.materials=t,t.clone=function(){return t.slice()},t}function _h(t,e){return console.warn("THREE.PointCloud has been renamed to THREE.Points."),new Sc(t,e)}function Ph(t){return console.warn("THREE.Particle has been renamed to THREE.Sprite."),new Hs(t)}function Ih(t,e){return console.warn("THREE.ParticleSystem has been renamed to THREE.Points."),new Sc(t,e)}function kh(t){return console.warn("THREE.PointCloudMaterial has been renamed to THREE.PointsMaterial."),new mc(t)}function Dh(t){return console.warn("THREE.ParticleBasicMaterial has been renamed to THREE.PointsMaterial."),new mc(t)}function Rh(t){return console.warn("THREE.ParticleSystemMaterial has been renamed to THREE.PointsMaterial."),new mc(t)}function Lh(t,e,n){return console.warn("THREE.Vertex has been removed. Use THREE.Vector3 instead."),new oi(t,e,n)}function Nh(t,e){return console.warn("THREE.DynamicBufferAttribute has been removed. Use new THREE.BufferAttribute().setUsage( THREE.DynamicDrawUsage ) instead."),new Ir(t,e).setUsage(Ln)}function jh(t,e){return console.warn("THREE.Int8Attribute has been removed. Use new THREE.Int8BufferAttribute() instead."),new kr(t,e)}function Vh(t,e){return console.warn("THREE.Uint8Attribute has been removed. Use new THREE.Uint8BufferAttribute() instead."),new Dr(t,e)}function Fh(t,e){return console.warn("THREE.Uint8ClampedAttribute has been removed. Use new THREE.Uint8ClampedBufferAttribute() instead."),new Rr(t,e)}function Uh(t,e){return console.warn("THREE.Int16Attribute has been removed. Use new THREE.Int16BufferAttribute() instead."),new Lr(t,e)}function Bh(t,e){return console.warn("THREE.Uint16Attribute has been removed. Use new THREE.Uint16BufferAttribute() instead."),new Nr(t,e)}function zh(t,e){return console.warn("THREE.Int32Attribute has been removed. Use new THREE.Int32BufferAttribute() instead."),new jr(t,e)}function Gh(t,e){return console.warn("THREE.Uint32Attribute has been removed. Use new THREE.Uint32BufferAttribute() instead."),new Vr(t,e)}function Hh(t,e){return console.warn("THREE.Float32Attribute has been removed. Use new THREE.Float32BufferAttribute() instead."),new Fr(t,e)}function Wh(t,e){return console.warn("THREE.Float64Attribute has been removed. Use new THREE.Float64BufferAttribute() instead."),new Ur(t,e)}function qh(t){console.warn("THREE.ClosedSplineCurve3 has been deprecated. Use THREE.CatmullRomCurve3 instead."),Iu.call(this,t),this.type="catmullrom",this.closed=!0}function Kh(t){console.warn("THREE.SplineCurve3 has been deprecated. Use THREE.CatmullRomCurve3 instead."),Iu.call(this,t),this.type="catmullrom"}function Xh(t){console.warn("THREE.Spline has been removed. Use THREE.CatmullRomCurve3 instead."),Iu.call(this,t),this.type="catmullrom"}function Yh(t){return console.warn("THREE.AxisHelper has been renamed to THREE.AxesHelper."),new Hp(t)}function Zh(t,e){return console.warn("THREE.BoundingBoxHelper has been deprecated. Creating a THREE.BoxHelper instead."),new jp(t,e)}function Jh(t,e){return console.warn("THREE.EdgesHelper has been removed. Use THREE.EdgesGeometry instead."),new fc(new Il(t.geometry),new oc({color:void 0!==e?e:16777215}))}function Qh(t,e){return console.warn("THREE.WireframeHelper has been removed. Use THREE.WireframeGeometry instead."),new fc(new Tc(t.geometry),new oc({color:void 0!==e?e:16777215}))}function $h(t){return console.warn("THREE.XHRLoader has been renamed to THREE.FileLoader."),new mu(t)}function tf(t){return console.warn("THREE.BinaryTextureLoader has been renamed to THREE.DataTextureLoader."),new bu(t)}function ef(t,e,n){return console.warn("THREE.WebGLRenderTargetCube( width, height, options ) is now WebGLCubeRenderTarget( size, options )."),new ko(t,n)}Mu.create=function(t,e){return console.log("THREE.Curve.create() has been deprecated"),t.prototype=Object.create(Mu.prototype),t.prototype.constructor=t,t.prototype.getPoint=e,t},Object.assign(Gu.prototype,{createPointsGeometry:function(t){console.warn("THREE.CurvePath: .createPointsGeometry() has been removed. Use new THREE.Geometry().setFromPoints( points ) instead.");var e=this.getPoints(t);return this.createGeometry(e)},createSpacedPointsGeometry:function(t){console.warn("THREE.CurvePath: .createSpacedPointsGeometry() has been removed. Use new THREE.Geometry().setFromPoints( points ) instead.");var e=this.getSpacedPoints(t);return this.createGeometry(e)},createGeometry:function(t){console.warn("THREE.CurvePath: .createGeometry() has been removed. Use new THREE.Geometry().setFromPoints( points ) instead.");for(var e=new xo,n=0,i=t.length;n<i;n++){var r=t[n];e.vertices.push(new oi(r.x,r.y,r.z||0))}return e}}),Object.assign(Hu.prototype,{fromPoints:function(t){return console.warn("THREE.Path: .fromPoints() has been renamed to .setFromPoints()."),this.setFromPoints(t)}}),qh.prototype=Object.create(Iu.prototype),Kh.prototype=Object.create(Iu.prototype),Xh.prototype=Object.create(Iu.prototype),Object.assign(Xh.prototype,{initFromArray:function(){console.error("THREE.Spline: .initFromArray() has been removed.")},getControlPointsArray:function(){console.error("THREE.Spline: .getControlPointsArray() has been removed.")},reparametrizeByArcLength:function(){console.error("THREE.Spline: .reparametrizeByArcLength() has been removed.")}}),Ap.prototype.setColors=function(){console.error("THREE.GridHelper: setColors() has been deprecated, pass them in the constructor instead.")},wp.prototype.update=function(){console.error("THREE.SkeletonHelper: update() no longer needs to be called.")},Object.assign(fu.prototype,{extractUrlBase:function(t){return console.warn("THREE.Loader: .extractUrlBase() has been deprecated. Use THREE.LoaderUtils.extractUrlBase() instead."),od.extractUrlBase(t)}}),fu.Handlers={add:function(){console.error("THREE.Loader: Handlers.add() has been removed. Use LoadingManager.addHandler() instead.")},get:function(){console.error("THREE.Loader: Handlers.get() has been removed. Use LoadingManager.getHandler() instead.")}},Object.assign(ud.prototype,{setTexturePath:function(t){return console.warn("THREE.ObjectLoader: .setTexturePath() has been renamed to .setResourcePath()."),this.setResourcePath(t)}}),Object.assign(up.prototype,{center:function(t){return console.warn("THREE.Box2: .center() has been renamed to .getCenter()."),this.getCenter(t)},empty:function(){return console.warn("THREE.Box2: .empty() has been renamed to .isEmpty()."),this.isEmpty()},isIntersectionBox:function(t){return console.warn("THREE.Box2: .isIntersectionBox() has been renamed to .intersectsBox()."),this.intersectsBox(t)},size:function(t){return console.warn("THREE.Box2: .size() has been renamed to .getSize()."),this.getSize(t)}}),Object.assign(qi.prototype,{center:function(t){return console.warn("THREE.Box3: .center() has been renamed to .getCenter()."),this.getCenter(t)},empty:function(){return console.warn("THREE.Box3: .empty() has been renamed to .isEmpty()."),this.isEmpty()},isIntersectionBox:function(t){return console.warn("THREE.Box3: .isIntersectionBox() has been renamed to .intersectsBox()."),this.intersectsBox(t)},isIntersectionSphere:function(t){return console.warn("THREE.Box3: .isIntersectionSphere() has been renamed to .intersectsSphere()."),this.intersectsSphere(t)},size:function(t){return console.warn("THREE.Box3: .size() has been renamed to .getSize()."),this.getSize(t)}}),No.prototype.setFromMatrix=function(t){return console.warn("THREE.Frustum: .setFromMatrix() has been renamed to .setFromProjectionMatrix()."),this.setFromProjectionMatrix(t)},hp.prototype.center=function(t){return console.warn("THREE.Line3: .center() has been renamed to .getCenter()."),this.getCenter(t)},Object.assign(Kn,{random16:function(){return console.warn("THREE.Math: .random16() has been deprecated. Use Math.random() instead."),Math.random()},nearestPowerOfTwo:function(t){return console.warn("THREE.Math: .nearestPowerOfTwo() has been renamed to .floorPowerOfTwo()."),Kn.floorPowerOfTwo(t)},nextPowerOfTwo:function(t){return console.warn("THREE.Math: .nextPowerOfTwo() has been renamed to .ceilPowerOfTwo()."),Kn.ceilPowerOfTwo(t)}}),Object.assign(Yn.prototype,{flattenToArrayOffset:function(t,e){return console.warn("THREE.Matrix3: .flattenToArrayOffset() has been deprecated. Use .toArray() instead."),this.toArray(t,e)},multiplyVector3:function(t){return console.warn("THREE.Matrix3: .multiplyVector3() has been removed. Use vector.applyMatrix3( matrix ) instead."),t.applyMatrix3(this)},multiplyVector3Array:function(){console.error("THREE.Matrix3: .multiplyVector3Array() has been removed.")},applyToBufferAttribute:function(t){return console.warn("THREE.Matrix3: .applyToBufferAttribute() has been removed. Use attribute.applyMatrix3( matrix ) instead."),t.applyMatrix3(this)},applyToVector3Array:function(){console.error("THREE.Matrix3: .applyToVector3Array() has been removed.")}}),Object.assign(hi.prototype,{extractPosition:function(t){return console.warn("THREE.Matrix4: .extractPosition() has been renamed to .copyPosition()."),this.copyPosition(t)},flattenToArrayOffset:function(t,e){return console.warn("THREE.Matrix4: .flattenToArrayOffset() has been deprecated. Use .toArray() instead."),this.toArray(t,e)},getPosition:function(){return console.warn("THREE.Matrix4: .getPosition() has been removed. Use Vector3.setFromMatrixPosition( matrix ) instead."),(new oi).setFromMatrixColumn(this,3)},setRotationFromQuaternion:function(t){return console.warn("THREE.Matrix4: .setRotationFromQuaternion() has been renamed to .makeRotationFromQuaternion()."),this.makeRotationFromQuaternion(t)},multiplyToArray:function(){console.warn("THREE.Matrix4: .multiplyToArray() has been removed.")},multiplyVector3:function(t){return console.warn("THREE.Matrix4: .multiplyVector3() has been removed. Use vector.applyMatrix4( matrix ) instead."),t.applyMatrix4(this)},multiplyVector4:function(t){return console.warn("THREE.Matrix4: .multiplyVector4() has been removed. Use vector.applyMatrix4( matrix ) instead."),t.applyMatrix4(this)},multiplyVector3Array:function(){console.error("THREE.Matrix4: .multiplyVector3Array() has been removed.")},rotateAxis:function(t){console.warn("THREE.Matrix4: .rotateAxis() has been removed. Use Vector3.transformDirection( matrix ) instead."),t.transformDirection(this)},crossVector:function(t){return console.warn("THREE.Matrix4: .crossVector() has been removed. Use vector.applyMatrix4( matrix ) instead."),t.applyMatrix4(this)},translate:function(){console.error("THREE.Matrix4: .translate() has been removed.")},rotateX:function(){console.error("THREE.Matrix4: .rotateX() has been removed.")},rotateY:function(){console.error("THREE.Matrix4: .rotateY() has been removed.")},rotateZ:function(){console.error("THREE.Matrix4: .rotateZ() has been removed.")},rotateByAxis:function(){console.error("THREE.Matrix4: .rotateByAxis() has been removed.")},applyToBufferAttribute:function(t){return console.warn("THREE.Matrix4: .applyToBufferAttribute() has been removed. Use attribute.applyMatrix4( matrix ) instead."),t.applyMatrix4(this)},applyToVector3Array:function(){console.error("THREE.Matrix4: .applyToVector3Array() has been removed.")},makeFrustum:function(t,e,n,i,r,o){return console.warn("THREE.Matrix4: .makeFrustum() has been removed. Use .makePerspective( left, right, top, bottom, near, far ) instead."),this.makePerspective(t,e,i,n,r,o)}}),sr.prototype.isIntersectionLine=function(t){return console.warn("THREE.Plane: .isIntersectionLine() has been renamed to .intersectsLine()."),this.intersectsLine(t)},ni.prototype.multiplyVector3=function(t){return console.warn("THREE.Quaternion: .multiplyVector3() has been removed. Use is now vector.applyQuaternion( quaternion ) instead."),t.applyQuaternion(this)},Object.assign(ir.prototype,{isIntersectionBox:function(t){return console.warn("THREE.Ray: .isIntersectionBox() has been renamed to .intersectsBox()."),this.intersectsBox(t)},isIntersectionPlane:function(t){return console.warn("THREE.Ray: .isIntersectionPlane() has been renamed to .intersectsPlane()."),this.intersectsPlane(t)},isIntersectionSphere:function(t){return console.warn("THREE.Ray: .isIntersectionSphere() has been renamed to .intersectsSphere()."),this.intersectsSphere(t)}}),Object.assign(yr.prototype,{area:function(){return console.warn("THREE.Triangle: .area() has been renamed to .getArea()."),this.getArea()},barycoordFromPoint:function(t,e){return console.warn("THREE.Triangle: .barycoordFromPoint() has been renamed to .getBarycoord()."),this.getBarycoord(t,e)},midpoint:function(t){return console.warn("THREE.Triangle: .midpoint() has been renamed to .getMidpoint()."),this.getMidpoint(t)},normal:function(t){return console.warn("THREE.Triangle: .normal() has been renamed to .getNormal()."),this.getNormal(t)},plane:function(t){return console.warn("THREE.Triangle: .plane() has been renamed to .getPlane()."),this.getPlane(t)}}),Object.assign(yr,{barycoordFromPoint:function(t,e,n,i,r){return console.warn("THREE.Triangle: .barycoordFromPoint() has been renamed to .getBarycoord()."),yr.getBarycoord(t,e,n,i,r)},normal:function(t,e,n,i){return console.warn("THREE.Triangle: .normal() has been renamed to .getNormal()."),yr.getNormal(t,e,n,i)}}),Object.assign(Wu.prototype,{extractAllPoints:function(t){return console.warn("THREE.Shape: .extractAllPoints() has been removed. Use .extractPoints() instead."),this.extractPoints(t)},extrude:function(t){return console.warn("THREE.Shape: .extrude() has been removed. Use ExtrudeGeometry() instead."),new ml(this,t)},makeGeometry:function(t){return console.warn("THREE.Shape: .makeGeometry() has been removed. Use ShapeGeometry() instead."),new Ol(this,t)}}),Object.assign(Xn.prototype,{fromAttribute:function(t,e,n){return console.warn("THREE.Vector2: .fromAttribute() has been renamed to .fromBufferAttribute()."),this.fromBufferAttribute(t,e,n)},distanceToManhattan:function(t){return console.warn("THREE.Vector2: .distanceToManhattan() has been renamed to .manhattanDistanceTo()."),this.manhattanDistanceTo(t)},lengthManhattan:function(){return console.warn("THREE.Vector2: .lengthManhattan() has been renamed to .manhattanLength()."),this.manhattanLength()}}),Object.assign(oi.prototype,{setEulerFromRotationMatrix:function(){console.error("THREE.Vector3: .setEulerFromRotationMatrix() has been removed. Use Euler.setFromRotationMatrix() instead.")},setEulerFromQuaternion:function(){console.error("THREE.Vector3: .setEulerFromQuaternion() has been removed. Use Euler.setFromQuaternion() instead.")},getPositionFromMatrix:function(t){return console.warn("THREE.Vector3: .getPositionFromMatrix() has been renamed to .setFromMatrixPosition()."),this.setFromMatrixPosition(t)},getScaleFromMatrix:function(t){return console.warn("THREE.Vector3: .getScaleFromMatrix() has been renamed to .setFromMatrixScale()."),this.setFromMatrixScale(t)},getColumnFromMatrix:function(t,e){return console.warn("THREE.Vector3: .getColumnFromMatrix() has been renamed to .setFromMatrixColumn()."),this.setFromMatrixColumn(e,t)},applyProjection:function(t){return console.warn("THREE.Vector3: .applyProjection() has been removed. Use .applyMatrix4( m ) instead."),this.applyMatrix4(t)},fromAttribute:function(t,e,n){return console.warn("THREE.Vector3: .fromAttribute() has been renamed to .fromBufferAttribute()."),this.fromBufferAttribute(t,e,n)},distanceToManhattan:function(t){return console.warn("THREE.Vector3: .distanceToManhattan() has been renamed to .manhattanDistanceTo()."),this.manhattanDistanceTo(t)},lengthManhattan:function(){return console.warn("THREE.Vector3: .lengthManhattan() has been renamed to .manhattanLength()."),this.manhattanLength()}}),Object.assign($n.prototype,{fromAttribute:function(t,e,n){return console.warn("THREE.Vector4: .fromAttribute() has been renamed to .fromBufferAttribute()."),this.fromBufferAttribute(t,e,n)},lengthManhattan:function(){return console.warn("THREE.Vector4: .lengthManhattan() has been renamed to .manhattanLength()."),this.manhattanLength()}}),Object.assign(xo.prototype,{computeTangents:function(){console.error("THREE.Geometry: .computeTangents() has been removed.")},computeLineDistances:function(){console.error("THREE.Geometry: .computeLineDistances() has been removed. Use THREE.Line.computeLineDistances() instead.")},applyMatrix:function(t){return console.warn("THREE.Geometry: .applyMatrix() has been renamed to .applyMatrix4()."),this.applyMatrix4(t)}}),Object.assign(Ii.prototype,{getChildByName:function(t){return console.warn("THREE.Object3D: .getChildByName() has been renamed to .getObjectByName()."),this.getObjectByName(t)},renderDepth:function(){console.warn("THREE.Object3D: .renderDepth has been removed. Use .renderOrder, instead.")},translate:function(t,e){return console.warn("THREE.Object3D: .translate() has been removed. Use .translateOnAxis( axis, distance ) instead."),this.translateOnAxis(e,t)},getWorldRotation:function(){console.error("THREE.Object3D: .getWorldRotation() has been removed. Use THREE.Object3D.getWorldQuaternion( target ) instead.")},applyMatrix:function(t){return console.warn("THREE.Object3D: .applyMatrix() has been renamed to .applyMatrix4()."),this.applyMatrix4(t)}}),Object.defineProperties(Ii.prototype,{eulerOrder:{get:function(){return console.warn("THREE.Object3D: .eulerOrder is now .rotation.order."),this.rotation.order},set:function(t){console.warn("THREE.Object3D: .eulerOrder is now .rotation.order."),this.rotation.order=t}},useQuaternion:{get:function(){console.warn("THREE.Object3D: .useQuaternion has been removed. The library now uses quaternions by default.")},set:function(){console.warn("THREE.Object3D: .useQuaternion has been removed. The library now uses quaternions by default.")}}}),Object.assign(go.prototype,{setDrawMode:function(){console.error("THREE.Mesh: .setDrawMode() has been removed. The renderer now always assumes THREE.TrianglesDrawMode. Transform your geometry via BufferGeometryUtils.toTrianglesDrawMode() if necessary.")}}),Object.defineProperties(go.prototype,{drawMode:{get:function(){return console.error("THREE.Mesh: .drawMode has been removed. The renderer now always assumes THREE.TrianglesDrawMode."),nn},set:function(){console.error("THREE.Mesh: .drawMode has been removed. The renderer now always assumes THREE.TrianglesDrawMode. Transform your geometry via BufferGeometryUtils.toTrianglesDrawMode() if necessary.")}}}),Object.defineProperties(Xs.prototype,{objects:{get:function(){return console.warn("THREE.LOD: .objects has been renamed to .levels."),this.levels}}}),Object.defineProperty(Qs.prototype,"useVertexTexture",{get:function(){console.warn("THREE.Skeleton: useVertexTexture has been removed.")},set:function(){console.warn("THREE.Skeleton: useVertexTexture has been removed.")}}),Ys.prototype.initBones=function(){console.error("THREE.SkinnedMesh: initBones() has been removed.")},Object.defineProperty(Mu.prototype,"__arcLengthDivisions",{get:function(){return console.warn("THREE.Curve: .__arcLengthDivisions is now .arcLengthDivisions."),this.arcLengthDivisions},set:function(t){console.warn("THREE.Curve: .__arcLengthDivisions is now .arcLengthDivisions."),this.arcLengthDivisions=t}}),Po.prototype.setLens=function(t,e){console.warn("THREE.PerspectiveCamera.setLens is deprecated. Use .setFocalLength and .filmGauge for a photographic setup."),void 0!==e&&(this.filmGauge=e),this.setFocalLength(t)},Object.defineProperties(qu.prototype,{onlyShadow:{set:function(){console.warn("THREE.Light: .onlyShadow has been removed.")}},shadowCameraFov:{set:function(t){console.warn("THREE.Light: .shadowCameraFov is now .shadow.camera.fov."),this.shadow.camera.fov=t}},shadowCameraLeft:{set:function(t){console.warn("THREE.Light: .shadowCameraLeft is now .shadow.camera.left."),this.shadow.camera.left=t}},shadowCameraRight:{set:function(t){console.warn("THREE.Light: .shadowCameraRight is now .shadow.camera.right."),this.shadow.camera.right=t}},shadowCameraTop:{set:function(t){console.warn("THREE.Light: .shadowCameraTop is now .shadow.camera.top."),this.shadow.camera.top=t}},shadowCameraBottom:{set:function(t){console.warn("THREE.Light: .shadowCameraBottom is now .shadow.camera.bottom."),this.shadow.camera.bottom=t}},shadowCameraNear:{set:function(t){console.warn("THREE.Light: .shadowCameraNear is now .shadow.camera.near."),this.shadow.camera.near=t}},shadowCameraFar:{set:function(t){console.warn("THREE.Light: .shadowCameraFar is now .shadow.camera.far."),this.shadow.camera.far=t}},shadowCameraVisible:{set:function(){console.warn("THREE.Light: .shadowCameraVisible has been removed. Use new THREE.CameraHelper( light.shadow.camera ) instead.")}},shadowBias:{set:function(t){console.warn("THREE.Light: .shadowBias is now .shadow.bias."),this.shadow.bias=t}},shadowDarkness:{set:function(){console.warn("THREE.Light: .shadowDarkness has been removed.")}},shadowMapWidth:{set:function(t){console.warn("THREE.Light: .shadowMapWidth is now .shadow.mapSize.width."),this.shadow.mapSize.width=t}},shadowMapHeight:{set:function(t){console.warn("THREE.Light: .shadowMapHeight is now .shadow.mapSize.height."),this.shadow.mapSize.height=t}}}),Object.defineProperties(Ir.prototype,{length:{get:function(){return console.warn("THREE.BufferAttribute: .length has been deprecated. Use .count instead."),this.array.length}},dynamic:{get:function(){return console.warn("THREE.BufferAttribute: .dynamic has been deprecated. Use .usage instead."),this.usage===Ln},set:function(){console.warn("THREE.BufferAttribute: .dynamic has been deprecated. Use .usage instead."),this.setUsage(Ln)}}}),Object.assign(Ir.prototype,{setDynamic:function(t){return console.warn("THREE.BufferAttribute: .setDynamic() has been deprecated. Use .setUsage() instead."),this.setUsage(!0===t?Ln:Rn),this},copyIndicesArray:function(){console.error("THREE.BufferAttribute: .copyIndicesArray() has been removed.")},setArray:function(){console.error("THREE.BufferAttribute: .setArray has been removed. Use BufferGeometry .setAttribute to replace/resize attribute buffers")}}),Object.assign(Zr.prototype,{addIndex:function(t){console.warn("THREE.BufferGeometry: .addIndex() has been renamed to .setIndex()."),this.setIndex(t)},addAttribute:function(t,e){return console.warn("THREE.BufferGeometry: .addAttribute() has been renamed to .setAttribute()."),e&&e.isBufferAttribute||e&&e.isInterleavedBufferAttribute?"index"===t?(console.warn("THREE.BufferGeometry.addAttribute: Use .setIndex() for index attribute."),this.setIndex(e),this):this.setAttribute(t,e):(console.warn("THREE.BufferGeometry: .addAttribute() now expects ( name, attribute )."),this.setAttribute(t,new Ir(arguments[1],arguments[2])))},addDrawCall:function(t,e,n){void 0!==n&&console.warn("THREE.BufferGeometry: .addDrawCall() no longer supports indexOffset."),console.warn("THREE.BufferGeometry: .addDrawCall() is now .addGroup()."),this.addGroup(t,e)},clearDrawCalls:function(){console.warn("THREE.BufferGeometry: .clearDrawCalls() is now .clearGroups()."),this.clearGroups()},computeTangents:function(){console.warn("THREE.BufferGeometry: .computeTangents() has been removed.")},computeOffsets:function(){console.warn("THREE.BufferGeometry: .computeOffsets() has been removed.")},removeAttribute:function(t){return console.warn("THREE.BufferGeometry: .removeAttribute() has been renamed to .deleteAttribute()."),this.deleteAttribute(t)},applyMatrix:function(t){return console.warn("THREE.BufferGeometry: .applyMatrix() has been renamed to .applyMatrix4()."),this.applyMatrix4(t)}}),Object.defineProperties(Zr.prototype,{drawcalls:{get:function(){return console.error("THREE.BufferGeometry: .drawcalls has been renamed to .groups."),this.groups}},offsets:{get:function(){return console.warn("THREE.BufferGeometry: .offsets has been renamed to .groups."),this.groups}}}),Object.defineProperties(rp.prototype,{linePrecision:{get:function(){return console.warn("THREE.Raycaster: .linePrecision has been deprecated. Use .params.Line.threshold instead."),this.params.Line.threshold},set:function(t){console.warn("THREE.Raycaster: .linePrecision has been deprecated. Use .params.Line.threshold instead."),this.params.Line.threshold=t}}}),Object.defineProperties(Ts.prototype,{dynamic:{get:function(){return console.warn("THREE.InterleavedBuffer: .length has been deprecated. Use .usage instead."),this.usage===Ln},set:function(t){console.warn("THREE.InterleavedBuffer: .length has been deprecated. Use .usage instead."),this.setUsage(t)}}}),Object.assign(Ts.prototype,{setDynamic:function(t){return console.warn("THREE.InterleavedBuffer: .setDynamic() has been deprecated. Use .setUsage() instead."),this.setUsage(!0===t?Ln:Rn),this},setArray:function(){console.error("THREE.InterleavedBuffer: .setArray has been removed. Use BufferGeometry .setAttribute to replace/resize attribute buffers")}}),Object.assign(vl.prototype,{getArrays:function(){console.error("THREE.ExtrudeBufferGeometry: .getArrays() has been removed.")},addShapeList:function(){console.error("THREE.ExtrudeBufferGeometry: .addShapeList() has been removed.")},addShape:function(){console.error("THREE.ExtrudeBufferGeometry: .addShape() has been removed.")}}),Object.defineProperties(np.prototype,{dynamic:{set:function(){console.warn("THREE.Uniform: .dynamic has been removed. Use object.onBeforeRender() instead.")}},onUpdate:{value:function(){return console.warn("THREE.Uniform: .onUpdate() has been removed. Use object.onBeforeRender() instead."),this}}}),Object.defineProperties(Or.prototype,{wrapAround:{get:function(){console.warn("THREE.Material: .wrapAround has been removed.")},set:function(){console.warn("THREE.Material: .wrapAround has been removed.")}},overdraw:{get:function(){console.warn("THREE.Material: .overdraw has been removed.")},set:function(){console.warn("THREE.Material: .overdraw has been removed.")}},wrapRGB:{get:function(){return console.warn("THREE.Material: .wrapRGB has been removed."),new xr}},shading:{get:function(){console.error("THREE."+this.type+": .shading has been removed. Use the boolean .flatShading instead.")},set:function(t){console.warn("THREE."+this.type+": .shading has been removed. Use the boolean .flatShading instead."),this.flatShading=t===T}},stencilMask:{get:function(){return console.warn("THREE."+this.type+": .stencilMask has been removed. Use .stencilFuncMask instead."),this.stencilFuncMask},set:function(t){console.warn("THREE."+this.type+": .stencilMask has been removed. Use .stencilFuncMask instead."),this.stencilFuncMask=t}}}),Object.defineProperties(Gl.prototype,{metal:{get:function(){return console.warn("THREE.MeshPhongMaterial: .metal has been removed. Use THREE.MeshStandardMaterial instead."),!1},set:function(){console.warn("THREE.MeshPhongMaterial: .metal has been removed. Use THREE.MeshStandardMaterial instead")}}}),Object.defineProperties(Oo.prototype,{derivatives:{get:function(){return console.warn("THREE.ShaderMaterial: .derivatives has been moved to .extensions.derivatives."),this.extensions.derivatives},set:function(t){console.warn("THREE. ShaderMaterial: .derivatives has been moved to .extensions.derivatives."),this.extensions.derivatives=t}}}),Object.assign(Es.prototype,{clearTarget:function(t,e,n,i){console.warn("THREE.WebGLRenderer: .clearTarget() has been deprecated. Use .setRenderTarget() and .clear() instead."),this.setRenderTarget(t),this.clear(e,n,i)},animate:function(t){console.warn("THREE.WebGLRenderer: .animate() is now .setAnimationLoop()."),this.setAnimationLoop(t)},getCurrentRenderTarget:function(){return console.warn("THREE.WebGLRenderer: .getCurrentRenderTarget() is now .getRenderTarget()."),this.getRenderTarget()},getMaxAnisotropy:function(){return console.warn("THREE.WebGLRenderer: .getMaxAnisotropy() is now .capabilities.getMaxAnisotropy()."),this.capabilities.getMaxAnisotropy()},getPrecision:function(){return console.warn("THREE.WebGLRenderer: .getPrecision() is now .capabilities.precision."),this.capabilities.precision},resetGLState:function(){return console.warn("THREE.WebGLRenderer: .resetGLState() is now .state.reset()."),this.state.reset()},supportsFloatTextures:function(){return console.warn("THREE.WebGLRenderer: .supportsFloatTextures() is now .extensions.get( 'OES_texture_float' )."),this.extensions.get("OES_texture_float")},supportsHalfFloatTextures:function(){return console.warn("THREE.WebGLRenderer: .supportsHalfFloatTextures() is now .extensions.get( 'OES_texture_half_float' )."),this.extensions.get("OES_texture_half_float")},supportsStandardDerivatives:function(){return console.warn("THREE.WebGLRenderer: .supportsStandardDerivatives() is now .extensions.get( 'OES_standard_derivatives' )."),this.extensions.get("OES_standard_derivatives")},supportsCompressedTextureS3TC:function(){return console.warn("THREE.WebGLRenderer: .supportsCompressedTextureS3TC() is now .extensions.get( 'WEBGL_compressed_texture_s3tc' )."),this.extensions.get("WEBGL_compressed_texture_s3tc")},supportsCompressedTexturePVRTC:function(){return console.warn("THREE.WebGLRenderer: .supportsCompressedTexturePVRTC() is now .extensions.get( 'WEBGL_compressed_texture_pvrtc' )."),this.extensions.get("WEBGL_compressed_texture_pvrtc")},supportsBlendMinMax:function(){return console.warn("THREE.WebGLRenderer: .supportsBlendMinMax() is now .extensions.get( 'EXT_blend_minmax' )."),this.extensions.get("EXT_blend_minmax")},supportsVertexTextures:function(){return console.warn("THREE.WebGLRenderer: .supportsVertexTextures() is now .capabilities.vertexTextures."),this.capabilities.vertexTextures},supportsInstancedArrays:function(){return console.warn("THREE.WebGLRenderer: .supportsInstancedArrays() is now .extensions.get( 'ANGLE_instanced_arrays' )."),this.extensions.get("ANGLE_instanced_arrays")},enableScissorTest:function(t){console.warn("THREE.WebGLRenderer: .enableScissorTest() is now .setScissorTest()."),this.setScissorTest(t)},initMaterial:function(){console.warn("THREE.WebGLRenderer: .initMaterial() has been removed.")},addPrePlugin:function(){console.warn("THREE.WebGLRenderer: .addPrePlugin() has been removed.")},addPostPlugin:function(){console.warn("THREE.WebGLRenderer: .addPostPlugin() has been removed.")},updateShadowMap:function(){console.warn("THREE.WebGLRenderer: .updateShadowMap() has been removed.")},setFaceCulling:function(){console.warn("THREE.WebGLRenderer: .setFaceCulling() has been removed.")},allocTextureUnit:function(){console.warn("THREE.WebGLRenderer: .allocTextureUnit() has been removed.")},setTexture:function(){console.warn("THREE.WebGLRenderer: .setTexture() has been removed.")},setTexture2D:function(){console.warn("THREE.WebGLRenderer: .setTexture2D() has been removed.")},setTextureCube:function(){console.warn("THREE.WebGLRenderer: .setTextureCube() has been removed.")},getActiveMipMapLevel:function(){return console.warn("THREE.WebGLRenderer: .getActiveMipMapLevel() is now .getActiveMipmapLevel()."),this.getActiveMipmapLevel()}}),Object.defineProperties(Es.prototype,{shadowMapEnabled:{get:function(){return this.shadowMap.enabled},set:function(t){console.warn("THREE.WebGLRenderer: .shadowMapEnabled is now .shadowMap.enabled."),this.shadowMap.enabled=t}},shadowMapType:{get:function(){return this.shadowMap.type},set:function(t){console.warn("THREE.WebGLRenderer: .shadowMapType is now .shadowMap.type."),this.shadowMap.type=t}},shadowMapCullFace:{get:function(){console.warn("THREE.WebGLRenderer: .shadowMapCullFace has been removed. Set Material.shadowSide instead.")},set:function(){console.warn("THREE.WebGLRenderer: .shadowMapCullFace has been removed. Set Material.shadowSide instead.")}},context:{get:function(){return console.warn("THREE.WebGLRenderer: .context has been removed. Use .getContext() instead."),this.getContext()}},vr:{get:function(){return console.warn("THREE.WebGLRenderer: .vr has been renamed to .xr"),this.xr}},gammaInput:{get:function(){return console.warn("THREE.WebGLRenderer: .gammaInput has been removed. Set the encoding for textures via Texture.encoding instead."),!1},set:function(){console.warn("THREE.WebGLRenderer: .gammaInput has been removed. Set the encoding for textures via Texture.encoding instead.")}},gammaOutput:{get:function(){return console.warn("THREE.WebGLRenderer: .gammaOutput has been removed. Set WebGLRenderer.outputEncoding instead."),!1},set:function(t){console.warn("THREE.WebGLRenderer: .gammaOutput has been removed. Set WebGLRenderer.outputEncoding instead."),this.outputEncoding=!0===t?sn:an}}}),Object.defineProperties(vs.prototype,{cullFace:{get:function(){console.warn("THREE.WebGLRenderer: .shadowMap.cullFace has been removed. Set Material.shadowSide instead.")},set:function(){console.warn("THREE.WebGLRenderer: .shadowMap.cullFace has been removed. Set Material.shadowSide instead.")}},renderReverseSided:{get:function(){console.warn("THREE.WebGLRenderer: .shadowMap.renderReverseSided has been removed. Set Material.shadowSide instead.")},set:function(){console.warn("THREE.WebGLRenderer: .shadowMap.renderReverseSided has been removed. Set Material.shadowSide instead.")}},renderSingleSided:{get:function(){console.warn("THREE.WebGLRenderer: .shadowMap.renderSingleSided has been removed. Set Material.shadowSide instead.")},set:function(){console.warn("THREE.WebGLRenderer: .shadowMap.renderSingleSided has been removed. Set Material.shadowSide instead.")}}}),Object.defineProperties(ti.prototype,{wrapS:{get:function(){return console.warn("THREE.WebGLRenderTarget: .wrapS is now .texture.wrapS."),this.texture.wrapS},set:function(t){console.warn("THREE.WebGLRenderTarget: .wrapS is now .texture.wrapS."),this.texture.wrapS=t}},wrapT:{get:function(){return console.warn("THREE.WebGLRenderTarget: .wrapT is now .texture.wrapT."),this.texture.wrapT},set:function(t){console.warn("THREE.WebGLRenderTarget: .wrapT is now .texture.wrapT."),this.texture.wrapT=t}},magFilter:{get:function(){return console.warn("THREE.WebGLRenderTarget: .magFilter is now .texture.magFilter."),this.texture.magFilter},set:function(t){console.warn("THREE.WebGLRenderTarget: .magFilter is now .texture.magFilter."),this.texture.magFilter=t}},minFilter:{get:function(){return console.warn("THREE.WebGLRenderTarget: .minFilter is now .texture.minFilter."),this.texture.minFilter},set:function(t){console.warn("THREE.WebGLRenderTarget: .minFilter is now .texture.minFilter."),this.texture.minFilter=t}},anisotropy:{get:function(){return console.warn("THREE.WebGLRenderTarget: .anisotropy is now .texture.anisotropy."),this.texture.anisotropy},set:function(t){console.warn("THREE.WebGLRenderTarget: .anisotropy is now .texture.anisotropy."),this.texture.anisotropy=t}},offset:{get:function(){return console.warn("THREE.WebGLRenderTarget: .offset is now .texture.offset."),this.texture.offset},set:function(t){console.warn("THREE.WebGLRenderTarget: .offset is now .texture.offset."),this.texture.offset=t}},repeat:{get:function(){return console.warn("THREE.WebGLRenderTarget: .repeat is now .texture.repeat."),this.texture.repeat},set:function(t){console.warn("THREE.WebGLRenderTarget: .repeat is now .texture.repeat."),this.texture.repeat=t}},format:{get:function(){return console.warn("THREE.WebGLRenderTarget: .format is now .texture.format."),this.texture.format},set:function(t){console.warn("THREE.WebGLRenderTarget: .format is now .texture.format."),this.texture.format=t}},type:{get:function(){return console.warn("THREE.WebGLRenderTarget: .type is now .texture.type."),this.texture.type},set:function(t){console.warn("THREE.WebGLRenderTarget: .type is now .texture.type."),this.texture.type=t}},generateMipmaps:{get:function(){return console.warn("THREE.WebGLRenderTarget: .generateMipmaps is now .texture.generateMipmaps."),this.texture.generateMipmaps},set:function(t){console.warn("THREE.WebGLRenderTarget: .generateMipmaps is now .texture.generateMipmaps."),this.texture.generateMipmaps=t}}}),Object.defineProperties(Ld.prototype,{load:{value:function(t){console.warn("THREE.Audio: .load has been deprecated. Use THREE.AudioLoader instead.");var e=this;return(new Sd).load(t,function(t){e.setBuffer(t)}),this}},startTime:{set:function(){console.warn("THREE.Audio: .startTime is now .play( delay ).")}}}),Bd.prototype.getData=function(){return console.warn("THREE.AudioAnalyser: .getData() is now .getFrequencyData()."),this.getFrequencyData()},Io.prototype.updateCubeMap=function(t,e){return console.warn("THREE.CubeCamera: .updateCubeMap() is now .update()."),this.update(t,e)};var nf={merge:function(t,e,n){var i;console.warn("THREE.GeometryUtils: .merge() has been moved to Geometry. Use geometry.merge( geometry2, matrix, materialIndexOffset ) instead."),e.isMesh&&(e.matrixAutoUpdate&&e.updateMatrix(),i=e.matrix,e=e.geometry),t.merge(e,i,n)},center:function(t){return console.warn("THREE.GeometryUtils: .center() has been moved to Geometry. Use geometry.center() instead."),t.center()}};function rf(){console.error("THREE.CanvasRenderer has been removed")}function of(){console.error("THREE.JSONLoader has been removed.")}Zn.crossOrigin=void 0,Zn.loadTexture=function(t,e,n,i){console.warn("THREE.ImageUtils.loadTexture has been deprecated. Use THREE.TextureLoader() instead.");var r=new xu;r.setCrossOrigin(this.crossOrigin);var o=r.load(t,n,void 0,i);return e&&(o.mapping=e),o},Zn.loadTextureCube=function(t,e,n,i){console.warn("THREE.ImageUtils.loadTextureCube has been deprecated. Use THREE.CubeTextureLoader() instead.");var r=new Su;r.setCrossOrigin(this.crossOrigin);var o=r.load(t,n,void 0,i);return e&&(o.mapping=e),o},Zn.loadCompressedTexture=function(){console.error("THREE.ImageUtils.loadCompressedTexture has been removed. Use THREE.DDSLoader instead.")},Zn.loadCompressedTextureCube=function(){console.error("THREE.ImageUtils.loadCompressedTextureCube has been removed. Use THREE.DDSLoader instead.")};var af={createMultiMaterialObject:function(){console.error("THREE.SceneUtils has been moved to /examples/jsm/utils/SceneUtils.js")},detach:function(){console.error("THREE.SceneUtils has been moved to /examples/jsm/utils/SceneUtils.js")},attach:function(){console.error("THREE.SceneUtils has been moved to /examples/jsm/utils/SceneUtils.js")}};function sf(){console.error("THREE.LensFlare has been moved to /examples/jsm/objects/Lensflare.js")}"undefined"!=typeof __THREE_DEVTOOLS__&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("register",{detail:{revision:d}}))},function(t,e,n){var i=n(34),r=n(82).f,o=n(88),a=n(98),s=n(350),c=n(465),l=n(289);t.exports=function(t,e){var n,u,d,p,h,f=t.target,g=t.global,m=t.stat;if(n=g?i:m?i[f]||s(f,{}):(i[f]||{}).prototype)for(u in e){if(p=e[u],d=t.noTargetGet?(h=r(n,u))&&h.value:n[u],!l(g?u:f+(m?".":"#")+u,t.forced)&&void 0!==d){if(typeof p==typeof d)continue;c(p,d)}(t.sham||d&&d.sham)&&o(p,"sham",!0),a(n,u,p,t)}}},function(t,e,n){"use strict";n.r(e),n.d(e,"UpgradeComponent",function(){return Q}),n.d(e,"UpgradeModule",function(){return $}),n.d(e,"VERSION",function(){return R}),n.d(e,"downgradeComponent",function(){return I}),n.d(e,"downgradeInjectable",function(){return D}),n.d(e,"downgradeModule",function(){return H}),n.d(e,"getAngularJSGlobal",function(){return p}),n.d(e,"getAngularLib",function(){return u}),n.d(e,"setAngularJSGlobal",function(){return d}),n.d(e,"setAngularLib",function(){return l}),n.d(e,"ɵangular_packages_upgrade_static_static_a",function(){return j}),n.d(e,"ɵangular_packages_upgrade_static_static_b",function(){return V}),n.d(e,"ɵangular_packages_upgrade_static_static_c",function(){return F}),n.d(e,"ɵangular_packages_upgrade_static_static_d",function(){return U}),n.d(e,"ɵangular_packages_upgrade_static_static_e",function(){return B});var i=n(1),r=n(0),o=n(125);
  1355. /**
  1356. * @license Angular v9.1.9
  1357. * (c) 2010-2020 Google LLC. https://angular.io/
  1358. * License: MIT
  1359. */
  1360. /**
  1361. * @license
  1362. * Copyright Google Inc. All Rights Reserved.
  1363. *
  1364. * Use of this source code is governed by an MIT-style license that can be
  1365. * found in the LICENSE file at https://angular.io/license
  1366. */function a(){throw new Error("AngularJS v1.x is not loaded!")}var s=function(){return a()};s.cleanData=a;var c={bootstrap:a,module:a,element:s,injector:a,version:void 0,resumeBootstrap:a,getTestability:a};try{window.hasOwnProperty("angular")&&(c=window.angular)}catch(t){}function l(t){d(t)}function u(){return p()}function d(t){c=t}function p(){return c}var h=function(t,e){return c.module(t,e)},f=function(t){return c.element(t)};f.cleanData=function(t){return c.element.cleanData(t)};var g="$$angularInjector",m=function(){function t(t,e){this.prop=t,this.attr=e,this.parseBinding()}return t.prototype.parseBinding=function(){this.bracketAttr="["+this.attr+"]",this.parenAttr="("+this.attr+")",this.bracketParenAttr="[("+this.attr+")]";var t=this.attr.charAt(0).toUpperCase()+this.attr.substr(1);this.onAttr="on"+t,this.bindAttr="bind"+t,this.bindonAttr="bindon"+t},t}(),v=/^(?:x|data)[:\-_]/i,y=/[:\-_]+(.)/g;function b(t){return"$"+t+"Controller"}function w(t){return t.overriddenName||t.name||t.toString().split("\n")[0]}function S(t){return t.has("$$angularDowngradedModuleCount")?t.get("$$angularDowngradedModuleCount"):0}function x(t){return t.has("$$angularUpgradeAppType")?t.get("$$angularUpgradeAppType"):0}function M(t){return"function"==typeof t}function E(t,e,n,i){var r=x(t),o=S(t);switch(r){case 1:case 2:if(e)throw new Error("Error while "+i+": 'downgradedModule' unexpectedly specified.\nYou should not specify a value for 'downgradedModule', unless you are downgrading more than one Angular module (via 'downgradeModule()').");break;case 3:if(!e&&o>=2)throw new Error("Error while "+i+": 'downgradedModule' not specified.\nThis application contains more than one downgraded Angular module, thus you need to always specify 'downgradedModule' when downgrading components and injectables.");if(!t.has(n))throw new Error("Error while "+i+": Unable to find the specified downgraded module.\nDid you forget to downgrade an Angular module or include it in the AngularJS application?");break;default:throw new Error("Error while "+i+": Not a valid '@angular/upgrade' application.\nDid you forget to downgrade an Angular module or include it in the AngularJS application?")}}
  1367. /**
  1368. * @license
  1369. * Copyright Google Inc. All Rights Reserved.
  1370. *
  1371. * Use of this source code is governed by an MIT-style license that can be
  1372. * found in the LICENSE file at https://angular.io/license
  1373. */var C,A={__UNINITIALIZED__:!0},T=function(){function t(t,e,n,i,r,o,a,s,c,l){this.element=t,this.attrs=e,this.scope=n,this.ngModel=i,this.parentInjector=r,this.$injector=o,this.$compile=a,this.$parse=s,this.componentFactory=c,this.wrapCallback=l,this.implementsOnChanges=!1,this.inputChangeCount=0,this.inputChanges={},this.componentScope=n.$new()}return t.prototype.compileContents=function(){var t=this,e=[],n=this.groupProjectableNodes().map(function(e){return t.$compile(e)});return this.element.empty(),n.forEach(function(n){n(t.scope,function(n){e.push(n),t.element.append(n)})}),e},t.prototype.createComponent=function(t){var e=[{provide:"$scope",useValue:this.componentScope}],n=r.Injector.create({providers:e,parent:this.parentInjector,name:"DowngradeComponentAdapter"});this.componentRef=this.componentFactory.create(n,t,this.element[0]),this.viewChangeDetector=this.componentRef.injector.get(r.ChangeDetectorRef),this.changeDetector=this.componentRef.changeDetectorRef,this.component=this.componentRef.instance;var i,o,a=this.componentRef.injector.get(r.Testability,null);a&&this.componentRef.injector.get(r.TestabilityRegistry).registerApplication(this.componentRef.location.nativeElement,a),i=this.ngModel,o=this.component,i&&function(t){return"function"==typeof t.writeValue&&"function"==typeof t.registerOnChange}(o)&&(i.$render=function(){o.writeValue(i.$viewValue)},o.registerOnChange(i.$setViewValue.bind(i)),"function"==typeof o.registerOnTouched&&o.registerOnTouched(i.$setTouched.bind(i)))},t.prototype.setupInputs=function(t,e){var n=this;void 0===e&&(e=!0);for(var i=this.attrs,o=this.componentFactory.inputs||[],a=function(t){var e,r,a=new m(o[t].propName,o[t].templateName),c=null;if(i.hasOwnProperty(a.attr)){var l=(e=a.prop,r=A,function(t){var i,o;(i=r)===(o=t)||i!=i&&o!=o||(r===A&&(r=t),n.updateInput(e,r,t),r=t)});i.$observe(a.attr,l);var u=s.componentScope.$watch(function(){u(),u=null,l(i[a.attr])})}else i.hasOwnProperty(a.bindAttr)?c=i[a.bindAttr]:i.hasOwnProperty(a.bracketAttr)?c=i[a.bracketAttr]:i.hasOwnProperty(a.bindonAttr)?c=i[a.bindonAttr]:i.hasOwnProperty(a.bracketParenAttr)&&(c=i[a.bracketParenAttr]);if(null!=c){var d=function(t){return function(e,i){return n.updateInput(t,i,e)}}(a.prop);s.componentScope.$watch(c,d)}},s=this,c=0;c<o.length;c++)a(c);var l=function(){return n.changeDetector.detectChanges()},u=this.componentFactory.componentType.prototype;if(this.implementsOnChanges=!(!u||!u.ngOnChanges),this.componentScope.$watch(function(){return n.inputChangeCount},this.wrapCallback(function(){if(n.implementsOnChanges){var t=n.inputChanges;n.inputChanges={},n.component.ngOnChanges(t)}n.viewChangeDetector.markForCheck(),e||l()})),e&&this.componentScope.$watch(this.wrapCallback(l)),t||!e)var d=this.componentScope.$watch(function(){d(),d=null,n.parentInjector.get(r.ApplicationRef).attachView(n.componentRef.hostView)})},t.prototype.setupOutputs=function(){for(var t=this.attrs,e=this.componentFactory.outputs||[],n=0;n<e.length;n++){var i=new m(e[n].propName,e[n].templateName),r=i.bindonAttr.substring(0,i.bindonAttr.length-6),o="[("+i.bracketParenAttr.substring(2,i.bracketParenAttr.length-8)+")]";t.hasOwnProperty(r)&&this.subscribeToOutput(i,t[r],!0),t.hasOwnProperty(o)&&this.subscribeToOutput(i,t[o],!0),t.hasOwnProperty(i.onAttr)&&this.subscribeToOutput(i,t[i.onAttr]),t.hasOwnProperty(i.parenAttr)&&this.subscribeToOutput(i,t[i.parenAttr])}},t.prototype.subscribeToOutput=function(t,e,n){var i=this;void 0===n&&(n=!1);var r=this.$parse(e),o=r.assign;if(n&&!o)throw new Error("Expression '"+e+"' is not assignable!");var a=this.component[t.prop];if(!a)throw new Error("Missing emitter '"+t.prop+"' on component '"+w(this.componentFactory.componentType)+"'!");a.subscribe({next:n?function(t){return o(i.scope,t)}:function(t){return r(i.scope,{$event:t})}})},t.prototype.registerCleanup=function(){var t=this,e=this.componentRef.injector.get(r.TestabilityRegistry),n=this.wrapCallback(function(){return t.componentRef.destroy()}),i=!1;this.element.on("$destroy",function(){return t.componentScope.$destroy()}),this.componentScope.$on("$destroy",function(){i||(i=!0,e.unregisterApplication(t.componentRef.location.nativeElement),n())})},t.prototype.getInjector=function(){return this.componentRef.injector},t.prototype.updateInput=function(t,e,n){this.implementsOnChanges&&(this.inputChanges[t]=new r.SimpleChange(e,n,e===n)),this.inputChangeCount++,this.component[t]=n},t.prototype.groupProjectableNodes=function(){return function(t,e){for(var n=[],i=0,r=t.length;i<r;++i)n[i]=[];for(var o=0,a=e.length;o<a;++o){var s=e[o],c=O(s,t);null!=c&&n[c].push(s)}return n}(this.componentFactory.ngContentSelectors,this.element.contents())},t}();function O(t,e){for(var n=[],i=-1,r=0;r<e.length;r++){var o=e[r];"*"===o?i=r:_(t,o)&&n.push(r)}return n.sort(),-1!==i&&n.push(i),n.length?n[0]:null}function _(t,e){if(!C){var n=Element.prototype;C=n.matches||n.matchesSelector||n.mozMatchesSelector||n.msMatchesSelector||n.oMatchesSelector||n.webkitMatchesSelector}return t.nodeType===Node.ELEMENT_NODE&&C.call(t,e)}
  1374. /**
  1375. * @license
  1376. * Copyright Google Inc. All Rights Reserved.
  1377. *
  1378. * Use of this source code is governed by an MIT-style license that can be
  1379. * found in the LICENSE file at https://angular.io/license
  1380. */var P=function(){function t(){this.resolved=!1,this.callbacks=[]}return t.all=function(e){var n=new t,i=0,r=[],o=function(t,o){r[t]=o,++i===e.length&&n.resolve(r)};return e.forEach(function(t,e){var n;(n=t)&&M(n.then)?t.then(function(t){return o(e,t)}):o(e,t)}),n},t.prototype.resolve=function(t){this.resolved||(this.value=t,this.resolved=!0,this.callbacks.forEach(function(e){return e(t)}),this.callbacks.length=0)},t.prototype.then=function(t){this.resolved?t(this.value):this.callbacks.push(t)},t}();
  1381. /**
  1382. * @license
  1383. * Copyright Google Inc. All Rights Reserved.
  1384. *
  1385. * Use of this source code is governed by an MIT-style license that can be
  1386. * found in the LICENSE file at https://angular.io/license
  1387. */function I(t){var e=function(e,n,o){var a,s=3===x(n),c=s?function(t){return function(){return r.NgZone.isInAngularZone()?t():a.run(t)}}:function(t){return t},l=s&&S(n)>1;return{restrict:"E",terminal:!0,require:["?^^$$angularInjector","?ngModel"],link:function(u,d,p,h){var f=h[1],g=h[0],m=void 0,v=!1;if(!g||l){var y=t.downgradedModule||"",b="$$angularLazyModuleRef"+y,S="instantiating component '"+w(t.component)+"'";E(n,y,b,S);var x=n.get(b);m=x.injector||x.promise}var M=g||m,C=m||g,A=function(i,a){var l=a.get(r.ComponentFactoryResolver).resolveComponentFactory(t.component);if(!l)throw new Error("Expecting ComponentFactory for: "+w(t.component));var h=new k(d),g=new T(d,p,u,f,i,n,e,o,l,c),m=g.compileContents();g.createComponent(m),g.setupInputs(s,t.propagateDigest),g.setupOutputs(),g.registerCleanup(),h.resolve(g.getInjector()),v&&u.$evalAsync(function(){})},O=s?function(t,e){a||(a=t.get(r.NgZone)),c(function(){return A(t,e)})()}:A;P.all([M,C]).then(function(t){var e=Object(i.f)(t,2),n=e[0],r=e[1];return O(n,r)}),v=!0}}};return e.$inject=["$compile","$injector","$parse"],e}var k=function(t){function e(e){var n=t.call(this)||this;return n.element=e,n.injectorKey=b(g),e.data(n.injectorKey,n),n}return Object(i.c)(e,t),e.prototype.resolve=function(e){this.element.data(this.injectorKey,e),this.element=null,t.prototype.resolve.call(this,e)},e}(P);
  1388. /**
  1389. * @license
  1390. * Copyright Google Inc. All Rights Reserved.
  1391. *
  1392. * Use of this source code is governed by an MIT-style license that can be
  1393. * found in the LICENSE file at https://angular.io/license
  1394. */function D(t,e){void 0===e&&(e="");var n=function(n){var i=""+g+e,r=M(t)?w(t):String(t);return E(n,e,i,"instantiating injectable '"+r+"'"),n.get(i).get(t)};return n.$inject=["$injector"],n}
  1395. /**
  1396. * @license
  1397. * Copyright Google Inc. All Rights Reserved.
  1398. *
  1399. * Use of this source code is governed by an MIT-style license that can be
  1400. * found in the LICENSE file at https://angular.io/license
  1401. */var R=new r.Version("9.1.9"),L=null;
  1402. /**
  1403. * @license
  1404. * Copyright Google Inc. All Rights Reserved.
  1405. *
  1406. * Use of this source code is governed by an MIT-style license that can be
  1407. * found in the LICENSE file at https://angular.io/license
  1408. */function N(t){L=t}function j(){if(!L)throw new Error("Trying to get the AngularJS injector before it being set.");var t=L;return L=null,t}function V(t){return t.get("$rootScope")}function F(t){return t.get("$compile")}function U(t){return t.get("$parse")}var B=[{provide:"$injector",useFactory:j,deps:[]},{provide:"$rootScope",useFactory:V,deps:["$injector"]},{provide:"$compile",useFactory:F,deps:["$injector"]},{provide:"$parse",useFactory:U,deps:["$injector"]}],z=function(){function t(t){this.modInjector=t}return t.prototype.get=function(t,e){return e===r["ɵNOT_FOUND_CHECK_ONLY_ELEMENT_INJECTOR"]?e:this.modInjector.get(t,e)},t}(),G=0;
  1409. /**
  1410. * @license
  1411. * Copyright Google Inc. All Rights Reserved.
  1412. *
  1413. * Use of this source code is governed by an MIT-style license that can be
  1414. * found in the LICENSE file at https://angular.io/license
  1415. */function H(t){var e,n="$$UpgradeModule.lazy"+ ++G,i="$$angularLazyModuleRef"+n,r=""+g+n,a=M(t)?t:function(e){return Object(o.platformBrowser)(e).bootstrapModuleFactory(t)};return h(n,[]).constant("$$angularUpgradeAppType",3).factory(g,[r,W]).factory(r,function(){if(!e)throw new Error("Trying to get the Angular injector before bootstrapping the corresponding Angular module.");return e}).factory("$$angularLazyModuleRef",[i,W]).factory(i,["$injector",function(t){N(t);var n={promise:a(B).then(function(t){return(e=n.injector=new z(t.injector)).get("$injector"),e})};return n}]).config(["$injector","$provide",function(t,e){e.constant("$$angularDowngradedModuleCount",S(t)+1)}]),n}function W(t){return t}
  1416. /**
  1417. * @license
  1418. * Copyright Google Inc. All Rights Reserved.
  1419. *
  1420. * Use of this source code is governed by an MIT-style license that can be
  1421. * found in the LICENSE file at https://angular.io/license
  1422. */var q=/^(\^\^?)?(\?)?(\^\^?)?/,K=function(){function t(e,n,i,r){this.injector=e,this.name=n,this.$injector=e.get("$injector"),this.$compile=this.$injector.get("$compile"),this.$controller=this.$injector.get("$controller"),this.element=i.nativeElement,this.$element=f(this.element),this.directive=r||t.getDirective(this.$injector,n)}return t.getDirective=function(t,e){var n=t.get(e+"Directive");if(n.length>1)throw new Error("Only support single directive definition for: "+e);var i=n[0];return i.compile&&!i.link&&Z(e,"compile"),i.replace&&Z(e,"replace"),i.terminal&&Z(e,"terminal"),i},t.getTemplate=function(t,e,n,i){if(void 0===n&&(n=!1),void 0!==e.template)return X(e.template,i);if(e.templateUrl){var r=t.get("$templateCache"),o=X(e.templateUrl,i),a=r.get(o);if(void 0!==a)return a;if(!n)throw new Error("loading directive templates asynchronously is not supported");return new Promise(function(e,n){t.get("$httpBackend")("GET",o,null,function(t,i){200===t?e(r.put(o,i)):n("GET component template from '"+o+"' returned '"+t+": "+i+"'")})})}throw new Error("Directive '"+e.name+"' is not a component, it is missing template.")},t.prototype.buildController=function(t,e){var n={$scope:e,$element:this.$element},i=this.$controller(t,n,null,this.directive.controllerAs);return this.$element.data(b(this.directive.name),i),i},t.prototype.compileTemplate=function(e){return void 0===e&&(e=t.getTemplate(this.$injector,this.directive,!1,this.$element)),this.compileHtml(e)},t.prototype.onDestroy=function(t,e){e&&M(e.$onDestroy)&&e.$onDestroy(),t.$destroy(),f.cleanData([this.element]),f.cleanData(this.element.querySelectorAll("*"))},t.prototype.prepareTransclusion=function(){var t=this,e=this.directive.transclude,n=this.extractChildNodes(),i=function(t,e){return e(r,t=t||{$destroy:function(){}})},r=n;if(e){var o=Object.create(null);if("object"==typeof e){r=[];var a=Object.create(null),s=Object.create(null);Object.keys(e).forEach(function(t){var n=e[t],i="?"===n.charAt(0);n=i?n.substring(1):n,a[n]=t,o[t]=null,s[t]=i}),n.forEach(function(t){var e=a[function(t){return t.replace(v,"").replace(y,function(t,e){return e.toUpperCase()})}(t.nodeName.toLowerCase())];e?(s[e]=!0,o[e]=o[e]||[],o[e].push(t)):r.push(t)}),Object.keys(s).forEach(function(e){if(!s[e])throw new Error("Required transclusion slot '"+e+"' on directive: "+t.name)}),Object.keys(o).filter(function(t){return o[t]}).forEach(function(t){var e=o[t];o[t]=function(t,n){return n(e,t)}})}i.$$slots=o,r.forEach(function(t){t.nodeType!==Node.TEXT_NODE||t.nodeValue||(t.nodeValue="‌")})}return i},t.prototype.resolveAndBindRequiredControllers=function(t){var e=this.getDirectiveRequire(),n=this.resolveRequire(e);if(t&&this.directive.bindToController&&Y(e)){var i=n;Object.keys(i).forEach(function(e){t[e]=i[e]})}return n},t.prototype.compileHtml=function(t){return this.element.innerHTML=t,this.$compile(this.element.childNodes)},t.prototype.extractChildNodes=function(){for(var t,e=[];t=this.element.firstChild;)this.element.removeChild(t),e.push(t);return e},t.prototype.getDirectiveRequire=function(){var t=this.directive.require||this.directive.controller&&this.directive.name;return Y(t)&&Object.keys(t).forEach(function(e){var n=t[e],i=n.match(q);n.substring(i[0].length)||(t[e]=i[0]+e)}),t},t.prototype.resolveRequire=function(t,e){var n=this;if(t){if(Array.isArray(t))return t.map(function(t){return n.resolveRequire(t)});if("object"==typeof t){var i={};return Object.keys(t).forEach(function(e){return i[e]=n.resolveRequire(t[e])}),i}if("string"==typeof t){var r=t.match(q),o=r[1]||r[3],a=t.substring(r[0].length),s=!!r[2],c=!!o,l="^^"===o,u=b(a),d=l?this.$element.parent():this.$element,p=c?d.inheritedData(u):d.data(u);if(!p&&!s)throw new Error("Unable to find required '"+t+"' in upgraded directive '"+this.name+"'.");return p}throw new Error("Unrecognized 'require' syntax on upgraded directive '"+this.name+"': "+t)}return null},t}();function X(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];return M(t)?t.apply(void 0,Object(i.h)(e)):t}function Y(t){return t&&!Array.isArray(t)&&"object"==typeof t}function Z(t,e){throw new Error("Upgraded directive '"+t+"' contains unsupported feature: '"+e+"'.")}
  1423. /**
  1424. * @license
  1425. * Copyright Google Inc. All Rights Reserved.
  1426. *
  1427. * Use of this source code is governed by an MIT-style license that can be
  1428. * found in the LICENSE file at https://angular.io/license
  1429. */var J={__UNINITIALIZED__:!0},Q=function(){function t(t,e,n){this.name=t,this.elementRef=e,this.injector=n,this.helper=new K(n,t,e),this.$injector=this.helper.$injector,this.element=this.helper.element,this.$element=this.helper.$element,this.directive=this.helper.directive,this.bindings=this.initializeBindings(this.directive);var i=n.get("$scope");this.$componentScope=i.$new(!!this.directive.scope),this.initializeOutputs()}return t.prototype.ngOnInit=function(){var t=this,e=this.helper.prepareTransclusion(),n=this.helper.compileTemplate(),i=this.directive.controller,r=this.directive.bindToController;if(i)this.controllerInstance=this.helper.buildController(i,this.$componentScope);else if(r)throw new Error("Upgraded directive '"+this.directive.name+"' specifies 'bindToController' but no controller.");this.bindingDestination=r?this.controllerInstance:this.$componentScope,this.bindOutputs();var o=this.helper.resolveAndBindRequiredControllers(this.controllerInstance);if(this.pendingChanges&&(this.forwardChanges(this.pendingChanges),this.pendingChanges=null),this.controllerInstance&&M(this.controllerInstance.$onInit)&&this.controllerInstance.$onInit(),this.controllerInstance&&M(this.controllerInstance.$doCheck)){var a=function(){return t.controllerInstance.$doCheck()};this.unregisterDoCheckWatcher=this.$componentScope.$parent.$watch(a),a()}var s=this.directive.link,c="object"==typeof s&&s.pre,l="object"==typeof s?s.post:s;c&&c(this.$componentScope,this.$element,"NOT_SUPPORTED",o,"NOT_SUPPORTED"),n(this.$componentScope,null,{parentBoundTranscludeFn:e}),l&&l(this.$componentScope,this.$element,"NOT_SUPPORTED",o,"NOT_SUPPORTED"),this.controllerInstance&&M(this.controllerInstance.$postLink)&&this.controllerInstance.$postLink()},t.prototype.ngOnChanges=function(t){this.bindingDestination?this.forwardChanges(t):this.pendingChanges=t},t.prototype.ngDoCheck=function(){var t=this,e=this.bindings.twoWayBoundProperties,n=this.bindings.twoWayBoundLastValues,i=this.bindings.propertyToOutputMap;e.forEach(function(e,o){var a=t.bindingDestination[e],s=n[o];if(!Object(r["ɵlooseIdentical"])(a,s)){var c=i[e];t[c].emit(a),n[o]=a}})},t.prototype.ngOnDestroy=function(){M(this.unregisterDoCheckWatcher)&&this.unregisterDoCheckWatcher(),this.helper.onDestroy(this.$componentScope,this.controllerInstance)},t.prototype.initializeBindings=function(t){var e=this,n="object"==typeof t.bindToController;if(n&&Object.keys(t.scope).length)throw new Error("Binding definitions on scope and controller at the same time is not supported.");var i=n?t.bindToController:t.scope,r=new function(){this.twoWayBoundProperties=[],this.twoWayBoundLastValues=[],this.expressionBoundProperties=[],this.propertyToOutputMap={}};return"object"==typeof i&&Object.keys(i).forEach(function(t){var n=i[t].charAt(0);switch(n){case"@":case"<":break;case"=":r.twoWayBoundProperties.push(t),r.twoWayBoundLastValues.push(J),r.propertyToOutputMap[t]=t+"Change";break;case"&":r.expressionBoundProperties.push(t),r.propertyToOutputMap[t]=t;break;default:var o=JSON.stringify(i);throw new Error("Unexpected mapping '"+n+"' in '"+o+"' in '"+e.name+"' directive.")}}),r},t.prototype.initializeOutputs=function(){var t=this;this.bindings.twoWayBoundProperties.concat(this.bindings.expressionBoundProperties).forEach(function(e){var n=t.bindings.propertyToOutputMap[e];t[n]=new r.EventEmitter})},t.prototype.bindOutputs=function(){var t=this;this.bindings.expressionBoundProperties.forEach(function(e){var n=t.bindings.propertyToOutputMap[e],i=t[n];t.bindingDestination[e]=function(t){return i.emit(t)}})},t.prototype.forwardChanges=function(t){var e=this;Object.keys(t).forEach(function(n){return e.bindingDestination[n]=t[n].currentValue}),M(this.bindingDestination.$onChanges)&&this.bindingDestination.$onChanges(t)},t.ɵfac=function(t){r["ɵɵinvalidFactory"]()},t.ɵdir=r["ɵɵdefineDirective"]({type:t,features:[r["ɵɵNgOnChangesFeature"]]}),t}(),$=function(){function t(t,e){this.ngZone=e,this.injector=new z(t)}return t.prototype.bootstrap=function(t,e,n){var o=this;void 0===e&&(e=[]);var a="$$UpgradeModule.init",s=(h(a,[]).constant("$$angularUpgradeAppType",2).value(g,this.injector).factory("$$angularLazyModuleRef",[g,function(t){return{injector:t}}]).config(["$provide","$injector",function(t,e){e.has("$$testability")&&t.decorator("$$testability",["$delegate",function(t){var e=t.whenStable,n=o.injector,i=function(o){e.call(t,function(){var e=n.get(r.Testability);e.isStable()?o():e.whenStable(i.bind(t,o))})};return t.whenStable=i,t}]),e.has("$interval")&&t.decorator("$interval",["$delegate",function(t){var e=function(e,n,r,a){for(var s=[],c=4;c<arguments.length;c++)s[c-4]=arguments[c];return o.ngZone.runOutsideAngular(function(){return t.apply(void 0,Object(i.h)([function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];setTimeout(function(){o.ngZone.run(function(){return e.apply(void 0,Object(i.h)(t))})})},n,r,a],s))})};return e.cancel=t.cancel,e}])}]).run(["$injector",function(e){o.$injector=e,N(e),o.injector.get("$injector"),f(t).data(b(g),o.injector),setTimeout(function(){var t=e.get("$rootScope"),n=o.ngZone.onMicrotaskEmpty.subscribe(function(){return t.$$phase?(Object(r.isDevMode)()&&console.warn("A digest was triggered while one was already in progress. This may mean that something is triggering digests outside the Angular zone."),t.$evalAsync()):t.$digest()});t.$on("$destroy",function(){n.unsubscribe()})},0)}]),h("$$UpgradeModule",[a].concat(e))),l=window.angular;if(l.resumeBootstrap=void 0,this.ngZone.run(function(){!function(t,e,n){c.bootstrap(t,e,n)}(t,[s.name],n)}),l.resumeBootstrap){var u=l.resumeBootstrap,d=this.ngZone;l.resumeBootstrap=function(){var t=this,e=arguments;return l.resumeBootstrap=u,d.run(function(){return l.resumeBootstrap.apply(t,e)})}}},(t=Object(i.b)([Object(i.d)("design:paramtypes",[r.Injector,r.NgZone])],t)).ɵmod=r["ɵɵdefineNgModule"]({type:t}),t.ɵinj=r["ɵɵdefineInjector"]({factory:function(e){return new(e||t)(r["ɵɵinject"](r.Injector),r["ɵɵinject"](r.NgZone))},providers:[B]}),t}()},function(t,e,n){(function(t,i){var r;
  1430. /**
  1431. * @license
  1432. * Lodash <https://lodash.com/>
  1433. * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
  1434. * Released under MIT license <https://lodash.com/license>
  1435. * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
  1436. * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
  1437. */
  1438. /**
  1439. * @license
  1440. * Lodash <https://lodash.com/>
  1441. * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
  1442. * Released under MIT license <https://lodash.com/license>
  1443. * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
  1444. * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
  1445. */
  1446. (function(){var o="Expected a function",a="__lodash_placeholder__",s=[["ary",128],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",32],["partialRight",64],["rearg",256]],c="[object Arguments]",l="[object Array]",u="[object Boolean]",d="[object Date]",p="[object Error]",h="[object Function]",f="[object GeneratorFunction]",g="[object Map]",m="[object Number]",v="[object Object]",y="[object RegExp]",b="[object Set]",w="[object String]",S="[object Symbol]",x="[object WeakMap]",M="[object ArrayBuffer]",E="[object DataView]",C="[object Float32Array]",A="[object Float64Array]",T="[object Int8Array]",O="[object Int16Array]",_="[object Int32Array]",P="[object Uint8Array]",I="[object Uint16Array]",k="[object Uint32Array]",D=/\b__p \+= '';/g,R=/\b(__p \+=) '' \+/g,L=/(__e\(.*?\)|\b__t\)) \+\n'';/g,N=/&(?:amp|lt|gt|quot|#39);/g,j=/[&<>"']/g,V=RegExp(N.source),F=RegExp(j.source),U=/<%-([\s\S]+?)%>/g,B=/<%([\s\S]+?)%>/g,z=/<%=([\s\S]+?)%>/g,G=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,H=/^\w*$/,W=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,q=/[\\^$.*+?()[\]{}|]/g,K=RegExp(q.source),X=/^\s+|\s+$/g,Y=/^\s+/,Z=/\s+$/,J=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Q=/\{\n\/\* \[wrapped with (.+)\] \*/,$=/,? & /,tt=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,et=/\\(\\)?/g,nt=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,it=/\w*$/,rt=/^[-+]0x[0-9a-f]+$/i,ot=/^0b[01]+$/i,at=/^\[object .+?Constructor\]$/,st=/^0o[0-7]+$/i,ct=/^(?:0|[1-9]\d*)$/,lt=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,ut=/($^)/,dt=/['\n\r\u2028\u2029\\]/g,pt="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",ht="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",ft="["+ht+"]",gt="["+pt+"]",mt="\\d+",vt="[a-z\\xdf-\\xf6\\xf8-\\xff]",yt="[^\\ud800-\\udfff"+ht+mt+"\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",bt="\\ud83c[\\udffb-\\udfff]",wt="[^\\ud800-\\udfff]",St="(?:\\ud83c[\\udde6-\\uddff]){2}",xt="[\\ud800-\\udbff][\\udc00-\\udfff]",Mt="[A-Z\\xc0-\\xd6\\xd8-\\xde]",Et="(?:"+vt+"|"+yt+")",Ct="(?:"+Mt+"|"+yt+")",At="(?:"+gt+"|"+bt+")?",Tt="[\\ufe0e\\ufe0f]?"+At+"(?:\\u200d(?:"+[wt,St,xt].join("|")+")[\\ufe0e\\ufe0f]?"+At+")*",Ot="(?:"+["[\\u2700-\\u27bf]",St,xt].join("|")+")"+Tt,_t="(?:"+[wt+gt+"?",gt,St,xt,"[\\ud800-\\udfff]"].join("|")+")",Pt=RegExp("['’]","g"),It=RegExp(gt,"g"),kt=RegExp(bt+"(?="+bt+")|"+_t+Tt,"g"),Dt=RegExp([Mt+"?"+vt+"+(?:['’](?:d|ll|m|re|s|t|ve))?(?="+[ft,Mt,"$"].join("|")+")",Ct+"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?="+[ft,Mt+Et,"$"].join("|")+")",Mt+"?"+Et+"+(?:['’](?:d|ll|m|re|s|t|ve))?",Mt+"+(?:['’](?:D|LL|M|RE|S|T|VE))?","\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",mt,Ot].join("|"),"g"),Rt=RegExp("[\\u200d\\ud800-\\udfff"+pt+"\\ufe0e\\ufe0f]"),Lt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Nt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],jt=-1,Vt={};Vt[C]=Vt[A]=Vt[T]=Vt[O]=Vt[_]=Vt[P]=Vt["[object Uint8ClampedArray]"]=Vt[I]=Vt[k]=!0,Vt[c]=Vt[l]=Vt[M]=Vt[u]=Vt[E]=Vt[d]=Vt[p]=Vt[h]=Vt[g]=Vt[m]=Vt[v]=Vt[y]=Vt[b]=Vt[w]=Vt[x]=!1;var Ft={};Ft[c]=Ft[l]=Ft[M]=Ft[E]=Ft[u]=Ft[d]=Ft[C]=Ft[A]=Ft[T]=Ft[O]=Ft[_]=Ft[g]=Ft[m]=Ft[v]=Ft[y]=Ft[b]=Ft[w]=Ft[S]=Ft[P]=Ft["[object Uint8ClampedArray]"]=Ft[I]=Ft[k]=!0,Ft[p]=Ft[h]=Ft[x]=!1;var Ut={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Bt=parseFloat,zt=parseInt,Gt="object"==typeof t&&t&&t.Object===Object&&t,Ht="object"==typeof self&&self&&self.Object===Object&&self,Wt=Gt||Ht||Function("return this")(),qt=e&&!e.nodeType&&e,Kt=qt&&"object"==typeof i&&i&&!i.nodeType&&i,Xt=Kt&&Kt.exports===qt,Yt=Xt&&Gt.process,Zt=function(){try{return Kt&&Kt.require&&Kt.require("util").types||Yt&&Yt.binding&&Yt.binding("util")}catch(t){}}(),Jt=Zt&&Zt.isArrayBuffer,Qt=Zt&&Zt.isDate,$t=Zt&&Zt.isMap,te=Zt&&Zt.isRegExp,ee=Zt&&Zt.isSet,ne=Zt&&Zt.isTypedArray;function ie(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function re(t,e,n,i){for(var r=-1,o=null==t?0:t.length;++r<o;){var a=t[r];e(i,a,n(a),t)}return i}function oe(t,e){for(var n=-1,i=null==t?0:t.length;++n<i&&!1!==e(t[n],n,t););return t}function ae(t,e){for(var n=-1,i=null==t?0:t.length;++n<i;)if(!e(t[n],n,t))return!1;return!0}function se(t,e){for(var n=-1,i=null==t?0:t.length,r=0,o=[];++n<i;){var a=t[n];e(a,n,t)&&(o[r++]=a)}return o}function ce(t,e){return!(null==t||!t.length)&&ye(t,e,0)>-1}function le(t,e,n){for(var i=-1,r=null==t?0:t.length;++i<r;)if(n(e,t[i]))return!0;return!1}function ue(t,e){for(var n=-1,i=null==t?0:t.length,r=Array(i);++n<i;)r[n]=e(t[n],n,t);return r}function de(t,e){for(var n=-1,i=e.length,r=t.length;++n<i;)t[r+n]=e[n];return t}function pe(t,e,n,i){var r=-1,o=null==t?0:t.length;for(i&&o&&(n=t[++r]);++r<o;)n=e(n,t[r],r,t);return n}function he(t,e,n,i){var r=null==t?0:t.length;for(i&&r&&(n=t[--r]);r--;)n=e(n,t[r],r,t);return n}function fe(t,e){for(var n=-1,i=null==t?0:t.length;++n<i;)if(e(t[n],n,t))return!0;return!1}var ge=xe("length");function me(t,e,n){var i;return n(t,function(t,n,r){if(e(t,n,r))return i=n,!1}),i}function ve(t,e,n,i){for(var r=t.length,o=n+(i?1:-1);i?o--:++o<r;)if(e(t[o],o,t))return o;return-1}function ye(t,e,n){return e==e?function(t,e,n){for(var i=n-1,r=t.length;++i<r;)if(t[i]===e)return i;return-1}(t,e,n):ve(t,we,n)}function be(t,e,n,i){for(var r=n-1,o=t.length;++r<o;)if(i(t[r],e))return r;return-1}function we(t){return t!=t}function Se(t,e){var n=null==t?0:t.length;return n?Ce(t,e)/n:NaN}function xe(t){return function(e){return null==e?void 0:e[t]}}function Me(t){return function(e){return null==t?void 0:t[e]}}function Ee(t,e,n,i,r){return r(t,function(t,r,o){n=i?(i=!1,t):e(n,t,r,o)}),n}function Ce(t,e){for(var n,i=-1,r=t.length;++i<r;){var o=e(t[i]);void 0!==o&&(n=void 0===n?o:n+o)}return n}function Ae(t,e){for(var n=-1,i=Array(t);++n<t;)i[n]=e(n);return i}function Te(t){return function(e){return t(e)}}function Oe(t,e){return ue(e,function(e){return t[e]})}function _e(t,e){return t.has(e)}function Pe(t,e){for(var n=-1,i=t.length;++n<i&&ye(e,t[n],0)>-1;);return n}function Ie(t,e){for(var n=t.length;n--&&ye(e,t[n],0)>-1;);return n}var ke=Me({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),De=Me({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function Re(t){return"\\"+Ut[t]}function Le(t){return Rt.test(t)}function Ne(t){var e=-1,n=Array(t.size);return t.forEach(function(t,i){n[++e]=[i,t]}),n}function je(t,e){return function(n){return t(e(n))}}function Ve(t,e){for(var n=-1,i=t.length,r=0,o=[];++n<i;){var s=t[n];s!==e&&s!==a||(t[n]=a,o[r++]=n)}return o}function Fe(t){var e=-1,n=Array(t.size);return t.forEach(function(t){n[++e]=t}),n}function Ue(t){return Le(t)?function(t){for(var e=kt.lastIndex=0;kt.test(t);)++e;return e}(t):ge(t)}function Be(t){return Le(t)?function(t){return t.match(kt)||[]}(t):function(t){return t.split("")}(t)}var ze=Me({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"}),Ge=function t(e){var n,i=(e=null==e?Wt:Ge.defaults(Wt.Object(),e,Ge.pick(Wt,Nt))).Array,r=e.Date,pt=e.Error,ht=e.Function,ft=e.Math,gt=e.Object,mt=e.RegExp,vt=e.String,yt=e.TypeError,bt=i.prototype,wt=ht.prototype,St=gt.prototype,xt=e["__core-js_shared__"],Mt=wt.toString,Et=St.hasOwnProperty,Ct=0,At=(n=/[^.]+$/.exec(xt&&xt.keys&&xt.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",Tt=St.toString,Ot=Mt.call(gt),_t=Wt._,kt=mt("^"+Mt.call(Et).replace(q,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Rt=Xt?e.Buffer:void 0,Ut=e.Symbol,Gt=e.Uint8Array,Ht=Rt?Rt.allocUnsafe:void 0,qt=je(gt.getPrototypeOf,gt),Kt=gt.create,Yt=St.propertyIsEnumerable,Zt=bt.splice,ge=Ut?Ut.isConcatSpreadable:void 0,Me=Ut?Ut.iterator:void 0,He=Ut?Ut.toStringTag:void 0,We=function(){try{var t=Hr(gt,"defineProperty");return t({},"",{}),t}catch(t){}}(),qe=e.clearTimeout!==Wt.clearTimeout&&e.clearTimeout,Ke=r&&r.now!==Wt.Date.now&&r.now,Xe=e.setTimeout!==Wt.setTimeout&&e.setTimeout,Ye=ft.ceil,Ze=ft.floor,Je=gt.getOwnPropertySymbols,Qe=Rt?Rt.isBuffer:void 0,$e=e.isFinite,tn=bt.join,en=je(gt.keys,gt),nn=ft.max,rn=ft.min,on=r.now,an=e.parseInt,sn=ft.random,cn=bt.reverse,ln=Hr(e,"DataView"),un=Hr(e,"Map"),dn=Hr(e,"Promise"),pn=Hr(e,"Set"),hn=Hr(e,"WeakMap"),fn=Hr(gt,"create"),gn=hn&&new hn,mn={},vn=vo(ln),yn=vo(un),bn=vo(dn),wn=vo(pn),Sn=vo(hn),xn=Ut?Ut.prototype:void 0,Mn=xn?xn.valueOf:void 0,En=xn?xn.toString:void 0;function Cn(t){if(Ra(t)&&!Ma(t)&&!(t instanceof _n)){if(t instanceof On)return t;if(Et.call(t,"__wrapped__"))return yo(t)}return new On(t)}var An=function(){function t(){}return function(e){if(!Da(e))return{};if(Kt)return Kt(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();function Tn(){}function On(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=void 0}function _n(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=4294967295,this.__views__=[]}function Pn(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var i=t[e];this.set(i[0],i[1])}}function In(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var i=t[e];this.set(i[0],i[1])}}function kn(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var i=t[e];this.set(i[0],i[1])}}function Dn(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new kn;++e<n;)this.add(t[e])}function Rn(t){var e=this.__data__=new In(t);this.size=e.size}function Ln(t,e){var n=Ma(t),i=!n&&xa(t),r=!n&&!i&&Ta(t),o=!n&&!i&&!r&&za(t),a=n||i||r||o,s=a?Ae(t.length,vt):[],c=s.length;for(var l in t)!e&&!Et.call(t,l)||a&&("length"==l||r&&("offset"==l||"parent"==l)||o&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||Jr(l,c))||s.push(l);return s}function Nn(t){var e=t.length;return e?t[Pi(0,e-1)]:void 0}function jn(t,e,n){(void 0!==n&&!ba(t[e],n)||void 0===n&&!(e in t))&&zn(t,e,n)}function Vn(t,e,n){var i=t[e];Et.call(t,e)&&ba(i,n)&&(void 0!==n||e in t)||zn(t,e,n)}function Fn(t,e){for(var n=t.length;n--;)if(ba(t[n][0],e))return n;return-1}function Un(t,e,n,i){return Yn(t,function(t,r,o){e(i,t,n(t),o)}),i}function Bn(t,e){return t&&lr(e,us(e),t)}function zn(t,e,n){"__proto__"==e&&We?We(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}function Gn(t,e){for(var n=-1,r=e.length,o=i(r),a=null==t;++n<r;)o[n]=a?void 0:os(t,e[n]);return o}function Hn(t,e,n){return t==t&&(void 0!==n&&(t=t<=n?t:n),void 0!==e&&(t=t>=e?t:e)),t}function Wn(t,e,n,i,r,o){var a,s=1&e,l=2&e,p=4&e;if(n&&(a=r?n(t,i,r,o):n(t)),void 0!==a)return a;if(!Da(t))return t;var x=Ma(t);if(x){if(a=function(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&Et.call(t,"index")&&(n.index=t.index,n.input=t.input),n}(t),!s)return cr(t,a)}else{var D=Kr(t),R=D==h||D==f;if(Ta(t))return nr(t,s);if(D==v||D==c||R&&!r){if(a=l||R?{}:Yr(t),!s)return l?function(t,e){return lr(t,qr(t),e)}(t,function(t,e){return t&&lr(e,ds(e),t)}(a,t)):function(t,e){return lr(t,Wr(t),e)}(t,Bn(a,t))}else{if(!Ft[D])return r?t:{};a=function(t,e,n){var i,r=t.constructor;switch(e){case M:return ir(t);case u:case d:return new r(+t);case E:return function(t,e){var n=e?ir(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case C:case A:case T:case O:case _:case P:case"[object Uint8ClampedArray]":case I:case k:return rr(t,n);case g:return new r;case m:case w:return new r(t);case y:return function(t){var e=new t.constructor(t.source,it.exec(t));return e.lastIndex=t.lastIndex,e}(t);case b:return new r;case S:return i=t,Mn?gt(Mn.call(i)):{}}}(t,D,s)}}o||(o=new Rn);var L=o.get(t);if(L)return L;o.set(t,a),Fa(t)?t.forEach(function(i){a.add(Wn(i,e,n,i,t,o))}):La(t)&&t.forEach(function(i,r){a.set(r,Wn(i,e,n,r,t,o))});var N=x?void 0:(p?l?jr:Nr:l?ds:us)(t);return oe(N||t,function(i,r){N&&(i=t[r=i]),Vn(a,r,Wn(i,e,n,r,t,o))}),a}function qn(t,e,n){var i=n.length;if(null==t)return!i;for(t=gt(t);i--;){var r=n[i],o=e[r],a=t[r];if(void 0===a&&!(r in t)||!o(a))return!1}return!0}function Kn(t,e,n){if("function"!=typeof t)throw new yt(o);return lo(function(){t.apply(void 0,n)},e)}function Xn(t,e,n,i){var r=-1,o=ce,a=!0,s=t.length,c=[],l=e.length;if(!s)return c;n&&(e=ue(e,Te(n))),i?(o=le,a=!1):e.length>=200&&(o=_e,a=!1,e=new Dn(e));t:for(;++r<s;){var u=t[r],d=null==n?u:n(u);if(u=i||0!==u?u:0,a&&d==d){for(var p=l;p--;)if(e[p]===d)continue t;c.push(u)}else o(e,d,i)||c.push(u)}return c}Cn.templateSettings={escape:U,evaluate:B,interpolate:z,variable:"",imports:{_:Cn}},Cn.prototype=Tn.prototype,Cn.prototype.constructor=Cn,On.prototype=An(Tn.prototype),On.prototype.constructor=On,_n.prototype=An(Tn.prototype),_n.prototype.constructor=_n,Pn.prototype.clear=function(){this.__data__=fn?fn(null):{},this.size=0},Pn.prototype.delete=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e},Pn.prototype.get=function(t){var e=this.__data__;if(fn){var n=e[t];return"__lodash_hash_undefined__"===n?void 0:n}return Et.call(e,t)?e[t]:void 0},Pn.prototype.has=function(t){var e=this.__data__;return fn?void 0!==e[t]:Et.call(e,t)},Pn.prototype.set=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=fn&&void 0===e?"__lodash_hash_undefined__":e,this},In.prototype.clear=function(){this.__data__=[],this.size=0},In.prototype.delete=function(t){var e=this.__data__,n=Fn(e,t);return!(n<0||(n==e.length-1?e.pop():Zt.call(e,n,1),--this.size,0))},In.prototype.get=function(t){var e=this.__data__,n=Fn(e,t);return n<0?void 0:e[n][1]},In.prototype.has=function(t){return Fn(this.__data__,t)>-1},In.prototype.set=function(t,e){var n=this.__data__,i=Fn(n,t);return i<0?(++this.size,n.push([t,e])):n[i][1]=e,this},kn.prototype.clear=function(){this.size=0,this.__data__={hash:new Pn,map:new(un||In),string:new Pn}},kn.prototype.delete=function(t){var e=zr(this,t).delete(t);return this.size-=e?1:0,e},kn.prototype.get=function(t){return zr(this,t).get(t)},kn.prototype.has=function(t){return zr(this,t).has(t)},kn.prototype.set=function(t,e){var n=zr(this,t),i=n.size;return n.set(t,e),this.size+=n.size==i?0:1,this},Dn.prototype.add=Dn.prototype.push=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this},Dn.prototype.has=function(t){return this.__data__.has(t)},Rn.prototype.clear=function(){this.__data__=new In,this.size=0},Rn.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},Rn.prototype.get=function(t){return this.__data__.get(t)},Rn.prototype.has=function(t){return this.__data__.has(t)},Rn.prototype.set=function(t,e){var n=this.__data__;if(n instanceof In){var i=n.__data__;if(!un||i.length<199)return i.push([t,e]),this.size=++n.size,this;n=this.__data__=new kn(i)}return n.set(t,e),this.size=n.size,this};var Yn=pr(ii),Zn=pr(ri,!0);function Jn(t,e){var n=!0;return Yn(t,function(t,i,r){return n=!!e(t,i,r)}),n}function Qn(t,e,n){for(var i=-1,r=t.length;++i<r;){var o=t[i],a=e(o);if(null!=a&&(void 0===s?a==a&&!Ba(a):n(a,s)))var s=a,c=o}return c}function $n(t,e){var n=[];return Yn(t,function(t,i,r){e(t,i,r)&&n.push(t)}),n}function ti(t,e,n,i,r){var o=-1,a=t.length;for(n||(n=Zr),r||(r=[]);++o<a;){var s=t[o];e>0&&n(s)?e>1?ti(s,e-1,n,i,r):de(r,s):i||(r[r.length]=s)}return r}var ei=hr(),ni=hr(!0);function ii(t,e){return t&&ei(t,e,us)}function ri(t,e){return t&&ni(t,e,us)}function oi(t,e){return se(e,function(e){return Pa(t[e])})}function ai(t,e){for(var n=0,i=(e=Qi(e,t)).length;null!=t&&n<i;)t=t[mo(e[n++])];return n&&n==i?t:void 0}function si(t,e,n){var i=e(t);return Ma(t)?i:de(i,n(t))}function ci(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":He&&He in gt(t)?function(t){var e=Et.call(t,He),n=t[He];try{t[He]=void 0;var i=!0}catch(t){}var r=Tt.call(t);return i&&(e?t[He]=n:delete t[He]),r}(t):function(t){return Tt.call(t)}(t)}function li(t,e){return t>e}function ui(t,e){return null!=t&&Et.call(t,e)}function di(t,e){return null!=t&&e in gt(t)}function pi(t,e,n){for(var r=n?le:ce,o=t[0].length,a=t.length,s=a,c=i(a),l=1/0,u=[];s--;){var d=t[s];s&&e&&(d=ue(d,Te(e))),l=rn(d.length,l),c[s]=!n&&(e||o>=120&&d.length>=120)?new Dn(s&&d):void 0}d=t[0];var p=-1,h=c[0];t:for(;++p<o&&u.length<l;){var f=d[p],g=e?e(f):f;if(f=n||0!==f?f:0,!(h?_e(h,g):r(u,g,n))){for(s=a;--s;){var m=c[s];if(!(m?_e(m,g):r(t[s],g,n)))continue t}h&&h.push(g),u.push(f)}}return u}function hi(t,e,n){var i=null==(t=ao(t,e=Qi(e,t)))?t:t[mo(_o(e))];return null==i?void 0:ie(i,t,n)}function fi(t){return Ra(t)&&ci(t)==c}function gi(t,e,n,i,r){return t===e||(null==t||null==e||!Ra(t)&&!Ra(e)?t!=t&&e!=e:function(t,e,n,i,r,o){var a=Ma(t),s=Ma(e),h=a?l:Kr(t),f=s?l:Kr(e),x=(h=h==c?v:h)==v,C=(f=f==c?v:f)==v,A=h==f;if(A&&Ta(t)){if(!Ta(e))return!1;a=!0,x=!1}if(A&&!x)return o||(o=new Rn),a||za(t)?Rr(t,e,n,i,r,o):function(t,e,n,i,r,o,a){switch(n){case E:if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)return!1;t=t.buffer,e=e.buffer;case M:return!(t.byteLength!=e.byteLength||!o(new Gt(t),new Gt(e)));case u:case d:case m:return ba(+t,+e);case p:return t.name==e.name&&t.message==e.message;case y:case w:return t==e+"";case g:var s=Ne;case b:var c=1&i;if(s||(s=Fe),t.size!=e.size&&!c)return!1;var l=a.get(t);if(l)return l==e;i|=2,a.set(t,e);var h=Rr(s(t),s(e),i,r,o,a);return a.delete(t),h;case S:if(Mn)return Mn.call(t)==Mn.call(e)}return!1}(t,e,h,n,i,r,o);if(!(1&n)){var T=x&&Et.call(t,"__wrapped__"),O=C&&Et.call(e,"__wrapped__");if(T||O){var _=T?t.value():t,P=O?e.value():e;return o||(o=new Rn),r(_,P,n,i,o)}}return!!A&&(o||(o=new Rn),function(t,e,n,i,r,o){var a=1&n,s=Nr(t),c=s.length;if(c!=Nr(e).length&&!a)return!1;for(var l=c;l--;){var u=s[l];if(!(a?u in e:Et.call(e,u)))return!1}var d=o.get(t),p=o.get(e);if(d&&p)return d==e&&p==t;var h=!0;o.set(t,e),o.set(e,t);for(var f=a;++l<c;){var g=t[u=s[l]],m=e[u];if(i)var v=a?i(m,g,u,e,t,o):i(g,m,u,t,e,o);if(!(void 0===v?g===m||r(g,m,n,i,o):v)){h=!1;break}f||(f="constructor"==u)}if(h&&!f){var y=t.constructor,b=e.constructor;y==b||!("constructor"in t)||!("constructor"in e)||"function"==typeof y&&y instanceof y&&"function"==typeof b&&b instanceof b||(h=!1)}return o.delete(t),o.delete(e),h}(t,e,n,i,r,o))}(t,e,n,i,gi,r))}function mi(t,e,n,i){var r=n.length,o=r,a=!i;if(null==t)return!o;for(t=gt(t);r--;){var s=n[r];if(a&&s[2]?s[1]!==t[s[0]]:!(s[0]in t))return!1}for(;++r<o;){var c=(s=n[r])[0],l=t[c],u=s[1];if(a&&s[2]){if(void 0===l&&!(c in t))return!1}else{var d=new Rn;if(i)var p=i(l,u,c,t,e,d);if(!(void 0===p?gi(u,l,3,i,d):p))return!1}}return!0}function vi(t){return!(!Da(t)||(e=t,At&&At in e))&&(Pa(t)?kt:at).test(vo(t));var e}function yi(t){return"function"==typeof t?t:null==t?Ns:"object"==typeof t?Ma(t)?Mi(t[0],t[1]):xi(t):Ws(t)}function bi(t){if(!no(t))return en(t);var e=[];for(var n in gt(t))Et.call(t,n)&&"constructor"!=n&&e.push(n);return e}function wi(t,e){return t<e}function Si(t,e){var n=-1,r=Ca(t)?i(t.length):[];return Yn(t,function(t,i,o){r[++n]=e(t,i,o)}),r}function xi(t){var e=Gr(t);return 1==e.length&&e[0][2]?ro(e[0][0],e[0][1]):function(n){return n===t||mi(n,t,e)}}function Mi(t,e){return $r(t)&&io(e)?ro(mo(t),e):function(n){var i=os(n,t);return void 0===i&&i===e?as(n,t):gi(e,i,3)}}function Ei(t,e,n,i,r){t!==e&&ei(e,function(o,a){if(r||(r=new Rn),Da(o))!function(t,e,n,i,r,o,a){var s=so(t,n),c=so(e,n),l=a.get(c);if(l)jn(t,n,l);else{var u=o?o(s,c,n+"",t,e,a):void 0,d=void 0===u;if(d){var p=Ma(c),h=!p&&Ta(c),f=!p&&!h&&za(c);u=c,p||h||f?Ma(s)?u=s:Aa(s)?u=cr(s):h?(d=!1,u=nr(c,!0)):f?(d=!1,u=rr(c,!0)):u=[]:ja(c)||xa(c)?(u=s,xa(s)?u=Za(s):Da(s)&&!Pa(s)||(u=Yr(c))):d=!1}d&&(a.set(c,u),r(u,c,i,o,a),a.delete(c)),jn(t,n,u)}}(t,e,a,n,Ei,i,r);else{var s=i?i(so(t,a),o,a+"",t,e,r):void 0;void 0===s&&(s=o),jn(t,a,s)}},ds)}function Ci(t,e){var n=t.length;if(n)return Jr(e+=e<0?n:0,n)?t[e]:void 0}function Ai(t,e,n){e=e.length?ue(e,function(t){return Ma(t)?function(e){return ai(e,1===t.length?t[0]:t)}:t}):[Ns];var i=-1;return e=ue(e,Te(Br())),function(t,e){var n=t.length;for(t.sort(e);n--;)t[n]=t[n].value;return t}(Si(t,function(t,n,r){return{criteria:ue(e,function(e){return e(t)}),index:++i,value:t}}),function(t,e){return function(t,e,n){for(var i=-1,r=t.criteria,o=e.criteria,a=r.length,s=n.length;++i<a;){var c=or(r[i],o[i]);if(c)return i>=s?c:c*("desc"==n[i]?-1:1)}return t.index-e.index}(t,e,n)})}function Ti(t,e,n){for(var i=-1,r=e.length,o={};++i<r;){var a=e[i],s=ai(t,a);n(s,a)&&Di(o,Qi(a,t),s)}return o}function Oi(t,e,n,i){var r=i?be:ye,o=-1,a=e.length,s=t;for(t===e&&(e=cr(e)),n&&(s=ue(t,Te(n)));++o<a;)for(var c=0,l=e[o],u=n?n(l):l;(c=r(s,u,c,i))>-1;)s!==t&&Zt.call(s,c,1),Zt.call(t,c,1);return t}function _i(t,e){for(var n=t?e.length:0,i=n-1;n--;){var r=e[n];if(n==i||r!==o){var o=r;Jr(r)?Zt.call(t,r,1):Hi(t,r)}}return t}function Pi(t,e){return t+Ze(sn()*(e-t+1))}function Ii(t,e){var n="";if(!t||e<1||e>9007199254740991)return n;do{e%2&&(n+=t),(e=Ze(e/2))&&(t+=t)}while(e);return n}function ki(t,e){return uo(oo(t,e,Ns),t+"")}function Di(t,e,n,i){if(!Da(t))return t;for(var r=-1,o=(e=Qi(e,t)).length,a=o-1,s=t;null!=s&&++r<o;){var c=mo(e[r]),l=n;if("__proto__"===c||"constructor"===c||"prototype"===c)return t;if(r!=a){var u=s[c];void 0===(l=i?i(u,c,s):void 0)&&(l=Da(u)?u:Jr(e[r+1])?[]:{})}Vn(s,c,l),s=s[c]}return t}var Ri=gn?function(t,e){return gn.set(t,e),t}:Ns,Li=We?function(t,e){return We(t,"toString",{configurable:!0,enumerable:!1,value:Ds(e),writable:!0})}:Ns;function Ni(t,e,n){var r=-1,o=t.length;e<0&&(e=-e>o?0:o+e),(n=n>o?o:n)<0&&(n+=o),o=e>n?0:n-e>>>0,e>>>=0;for(var a=i(o);++r<o;)a[r]=t[r+e];return a}function ji(t,e){var n;return Yn(t,function(t,i,r){return!(n=e(t,i,r))}),!!n}function Vi(t,e,n){var i=0,r=null==t?i:t.length;if("number"==typeof e&&e==e&&r<=2147483647){for(;i<r;){var o=i+r>>>1,a=t[o];null!==a&&!Ba(a)&&(n?a<=e:a<e)?i=o+1:r=o}return r}return Fi(t,e,Ns,n)}function Fi(t,e,n,i){var r=0,o=null==t?0:t.length;if(0===o)return 0;for(var a=(e=n(e))!=e,s=null===e,c=Ba(e),l=void 0===e;r<o;){var u=Ze((r+o)/2),d=n(t[u]),p=void 0!==d,h=null===d,f=d==d,g=Ba(d);if(a)var m=i||f;else m=l?f&&(i||p):s?f&&p&&(i||!h):c?f&&p&&!h&&(i||!g):!h&&!g&&(i?d<=e:d<e);m?r=u+1:o=u}return rn(o,4294967294)}function Ui(t,e){for(var n=-1,i=t.length,r=0,o=[];++n<i;){var a=t[n],s=e?e(a):a;if(!n||!ba(s,c)){var c=s;o[r++]=0===a?0:a}}return o}function Bi(t){return"number"==typeof t?t:Ba(t)?NaN:+t}function zi(t){if("string"==typeof t)return t;if(Ma(t))return ue(t,zi)+"";if(Ba(t))return En?En.call(t):"";var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function Gi(t,e,n){var i=-1,r=ce,o=t.length,a=!0,s=[],c=s;if(n)a=!1,r=le;else if(o>=200){var l=e?null:Or(t);if(l)return Fe(l);a=!1,r=_e,c=new Dn}else c=e?[]:s;t:for(;++i<o;){var u=t[i],d=e?e(u):u;if(u=n||0!==u?u:0,a&&d==d){for(var p=c.length;p--;)if(c[p]===d)continue t;e&&c.push(d),s.push(u)}else r(c,d,n)||(c!==s&&c.push(d),s.push(u))}return s}function Hi(t,e){return null==(t=ao(t,e=Qi(e,t)))||delete t[mo(_o(e))]}function Wi(t,e,n,i){return Di(t,e,n(ai(t,e)),i)}function qi(t,e,n,i){for(var r=t.length,o=i?r:-1;(i?o--:++o<r)&&e(t[o],o,t););return n?Ni(t,i?0:o,i?o+1:r):Ni(t,i?o+1:0,i?r:o)}function Ki(t,e){var n=t;return n instanceof _n&&(n=n.value()),pe(e,function(t,e){return e.func.apply(e.thisArg,de([t],e.args))},n)}function Xi(t,e,n){var r=t.length;if(r<2)return r?Gi(t[0]):[];for(var o=-1,a=i(r);++o<r;)for(var s=t[o],c=-1;++c<r;)c!=o&&(a[o]=Xn(a[o]||s,t[c],e,n));return Gi(ti(a,1),e,n)}function Yi(t,e,n){for(var i=-1,r=t.length,o=e.length,a={};++i<r;){var s=i<o?e[i]:void 0;n(a,t[i],s)}return a}function Zi(t){return Aa(t)?t:[]}function Ji(t){return"function"==typeof t?t:Ns}function Qi(t,e){return Ma(t)?t:$r(t,e)?[t]:go(Ja(t))}var $i=ki;function tr(t,e,n){var i=t.length;return n=void 0===n?i:n,!e&&n>=i?t:Ni(t,e,n)}var er=qe||function(t){return Wt.clearTimeout(t)};function nr(t,e){if(e)return t.slice();var n=t.length,i=Ht?Ht(n):new t.constructor(n);return t.copy(i),i}function ir(t){var e=new t.constructor(t.byteLength);return new Gt(e).set(new Gt(t)),e}function rr(t,e){var n=e?ir(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function or(t,e){if(t!==e){var n=void 0!==t,i=null===t,r=t==t,o=Ba(t),a=void 0!==e,s=null===e,c=e==e,l=Ba(e);if(!s&&!l&&!o&&t>e||o&&a&&c&&!s&&!l||i&&a&&c||!n&&c||!r)return 1;if(!i&&!o&&!l&&t<e||l&&n&&r&&!i&&!o||s&&n&&r||!a&&r||!c)return-1}return 0}function ar(t,e,n,r){for(var o=-1,a=t.length,s=n.length,c=-1,l=e.length,u=nn(a-s,0),d=i(l+u),p=!r;++c<l;)d[c]=e[c];for(;++o<s;)(p||o<a)&&(d[n[o]]=t[o]);for(;u--;)d[c++]=t[o++];return d}function sr(t,e,n,r){for(var o=-1,a=t.length,s=-1,c=n.length,l=-1,u=e.length,d=nn(a-c,0),p=i(d+u),h=!r;++o<d;)p[o]=t[o];for(var f=o;++l<u;)p[f+l]=e[l];for(;++s<c;)(h||o<a)&&(p[f+n[s]]=t[o++]);return p}function cr(t,e){var n=-1,r=t.length;for(e||(e=i(r));++n<r;)e[n]=t[n];return e}function lr(t,e,n,i){var r=!n;n||(n={});for(var o=-1,a=e.length;++o<a;){var s=e[o],c=i?i(n[s],t[s],s,n,t):void 0;void 0===c&&(c=t[s]),r?zn(n,s,c):Vn(n,s,c)}return n}function ur(t,e){return function(n,i){var r=Ma(n)?re:Un,o=e?e():{};return r(n,t,Br(i,2),o)}}function dr(t){return ki(function(e,n){var i=-1,r=n.length,o=r>1?n[r-1]:void 0,a=r>2?n[2]:void 0;for(o=t.length>3&&"function"==typeof o?(r--,o):void 0,a&&Qr(n[0],n[1],a)&&(o=r<3?void 0:o,r=1),e=gt(e);++i<r;){var s=n[i];s&&t(e,s,i,o)}return e})}function pr(t,e){return function(n,i){if(null==n)return n;if(!Ca(n))return t(n,i);for(var r=n.length,o=e?r:-1,a=gt(n);(e?o--:++o<r)&&!1!==i(a[o],o,a););return n}}function hr(t){return function(e,n,i){for(var r=-1,o=gt(e),a=i(e),s=a.length;s--;){var c=a[t?s:++r];if(!1===n(o[c],c,o))break}return e}}function fr(t){return function(e){var n=Le(e=Ja(e))?Be(e):void 0,i=n?n[0]:e.charAt(0),r=n?tr(n,1).join(""):e.slice(1);return i[t]()+r}}function gr(t){return function(e){return pe(Ps(xs(e).replace(Pt,"")),t,"")}}function mr(t){return function(){var e=arguments;switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3]);case 5:return new t(e[0],e[1],e[2],e[3],e[4]);case 6:return new t(e[0],e[1],e[2],e[3],e[4],e[5]);case 7:return new t(e[0],e[1],e[2],e[3],e[4],e[5],e[6])}var n=An(t.prototype),i=t.apply(n,e);return Da(i)?i:n}}function vr(t){return function(e,n,i){var r=gt(e);if(!Ca(e)){var o=Br(n,3);e=us(e),n=function(t){return o(r[t],t,r)}}var a=t(e,n,i);return a>-1?r[o?e[a]:a]:void 0}}function yr(t){return Lr(function(e){var n=e.length,i=n,r=On.prototype.thru;for(t&&e.reverse();i--;){var a=e[i];if("function"!=typeof a)throw new yt(o);if(r&&!s&&"wrapper"==Fr(a))var s=new On([],!0)}for(i=s?i:n;++i<n;){var c=Fr(a=e[i]),l="wrapper"==c?Vr(a):void 0;s=l&&to(l[0])&&424==l[1]&&!l[4].length&&1==l[9]?s[Fr(l[0])].apply(s,l[3]):1==a.length&&to(a)?s[c]():s.thru(a)}return function(){var t=arguments,i=t[0];if(s&&1==t.length&&Ma(i))return s.plant(i).value();for(var r=0,o=n?e[r].apply(this,t):i;++r<n;)o=e[r].call(this,o);return o}})}function br(t,e,n,r,o,a,s,c,l,u){var d=128&e,p=1&e,h=2&e,f=24&e,g=512&e,m=h?void 0:mr(t);return function v(){for(var y=arguments.length,b=i(y),w=y;w--;)b[w]=arguments[w];if(f)var S=Ur(v),x=function(t,e){for(var n=t.length,i=0;n--;)t[n]===e&&++i;return i}(b,S);if(r&&(b=ar(b,r,o,f)),a&&(b=sr(b,a,s,f)),y-=x,f&&y<u){var M=Ve(b,S);return Ar(t,e,br,v.placeholder,n,b,M,c,l,u-y)}var E=p?n:this,C=h?E[t]:t;return y=b.length,c?b=function(t,e){for(var n=t.length,i=rn(e.length,n),r=cr(t);i--;){var o=e[i];t[i]=Jr(o,n)?r[o]:void 0}return t}(b,c):g&&y>1&&b.reverse(),d&&l<y&&(b.length=l),this&&this!==Wt&&this instanceof v&&(C=m||mr(C)),C.apply(E,b)}}function wr(t,e){return function(n,i){return function(t,e,n,i){return ii(t,function(t,r,o){e(i,n(t),r,o)}),i}(n,t,e(i),{})}}function Sr(t,e){return function(n,i){var r;if(void 0===n&&void 0===i)return e;if(void 0!==n&&(r=n),void 0!==i){if(void 0===r)return i;"string"==typeof n||"string"==typeof i?(n=zi(n),i=zi(i)):(n=Bi(n),i=Bi(i)),r=t(n,i)}return r}}function xr(t){return Lr(function(e){return e=ue(e,Te(Br())),ki(function(n){var i=this;return t(e,function(t){return ie(t,i,n)})})})}function Mr(t,e){var n=(e=void 0===e?" ":zi(e)).length;if(n<2)return n?Ii(e,t):e;var i=Ii(e,Ye(t/Ue(e)));return Le(e)?tr(Be(i),0,t).join(""):i.slice(0,t)}function Er(t){return function(e,n,r){return r&&"number"!=typeof r&&Qr(e,n,r)&&(n=r=void 0),e=qa(e),void 0===n?(n=e,e=0):n=qa(n),function(t,e,n,r){for(var o=-1,a=nn(Ye((e-t)/(n||1)),0),s=i(a);a--;)s[r?a:++o]=t,t+=n;return s}(e,n,r=void 0===r?e<n?1:-1:qa(r),t)}}function Cr(t){return function(e,n){return"string"==typeof e&&"string"==typeof n||(e=Ya(e),n=Ya(n)),t(e,n)}}function Ar(t,e,n,i,r,o,a,s,c,l){var u=8&e;e|=u?32:64,4&(e&=~(u?64:32))||(e&=-4);var d=[t,e,r,u?o:void 0,u?a:void 0,u?void 0:o,u?void 0:a,s,c,l],p=n.apply(void 0,d);return to(t)&&co(p,d),p.placeholder=i,po(p,t,e)}function Tr(t){var e=ft[t];return function(t,n){if(t=Ya(t),(n=null==n?0:rn(Ka(n),292))&&$e(t)){var i=(Ja(t)+"e").split("e");return+((i=(Ja(e(i[0]+"e"+(+i[1]+n)))+"e").split("e"))[0]+"e"+(+i[1]-n))}return e(t)}}var Or=pn&&1/Fe(new pn([,-0]))[1]==1/0?function(t){return new pn(t)}:Bs;function _r(t){return function(e){var n=Kr(e);return n==g?Ne(e):n==b?function(t){var e=-1,n=Array(t.size);return t.forEach(function(t){n[++e]=[t,t]}),n}(e):function(t,e){return ue(e,function(e){return[e,t[e]]})}(e,t(e))}}function Pr(t,e,n,r,s,c,l,u){var d=2&e;if(!d&&"function"!=typeof t)throw new yt(o);var p=r?r.length:0;if(p||(e&=-97,r=s=void 0),l=void 0===l?l:nn(Ka(l),0),u=void 0===u?u:Ka(u),p-=s?s.length:0,64&e){var h=r,f=s;r=s=void 0}var g=d?void 0:Vr(t),m=[t,e,n,r,s,h,f,c,l,u];if(g&&function(t,e){var n=t[1],i=e[1],r=n|i,o=r<131,s=128==i&&8==n||128==i&&256==n&&t[7].length<=e[8]||384==i&&e[7].length<=e[8]&&8==n;if(!o&&!s)return t;1&i&&(t[2]=e[2],r|=1&n?0:4);var c=e[3];if(c){var l=t[3];t[3]=l?ar(l,c,e[4]):c,t[4]=l?Ve(t[3],a):e[4]}(c=e[5])&&(l=t[5],t[5]=l?sr(l,c,e[6]):c,t[6]=l?Ve(t[5],a):e[6]),(c=e[7])&&(t[7]=c),128&i&&(t[8]=null==t[8]?e[8]:rn(t[8],e[8])),null==t[9]&&(t[9]=e[9]),t[0]=e[0],t[1]=r}(m,g),t=m[0],e=m[1],n=m[2],r=m[3],s=m[4],!(u=m[9]=void 0===m[9]?d?0:t.length:nn(m[9]-p,0))&&24&e&&(e&=-25),e&&1!=e)v=8==e||16==e?function(t,e,n){var r=mr(t);return function o(){for(var a=arguments.length,s=i(a),c=a,l=Ur(o);c--;)s[c]=arguments[c];var u=a<3&&s[0]!==l&&s[a-1]!==l?[]:Ve(s,l);return(a-=u.length)<n?Ar(t,e,br,o.placeholder,void 0,s,u,void 0,void 0,n-a):ie(this&&this!==Wt&&this instanceof o?r:t,this,s)}}(t,e,u):32!=e&&33!=e||s.length?br.apply(void 0,m):function(t,e,n,r){var o=1&e,a=mr(t);return function e(){for(var s=-1,c=arguments.length,l=-1,u=r.length,d=i(u+c),p=this&&this!==Wt&&this instanceof e?a:t;++l<u;)d[l]=r[l];for(;c--;)d[l++]=arguments[++s];return ie(p,o?n:this,d)}}(t,e,n,r);else var v=function(t,e,n){var i=1&e,r=mr(t);return function e(){return(this&&this!==Wt&&this instanceof e?r:t).apply(i?n:this,arguments)}}(t,e,n);return po((g?Ri:co)(v,m),t,e)}function Ir(t,e,n,i){return void 0===t||ba(t,St[n])&&!Et.call(i,n)?e:t}function kr(t,e,n,i,r,o){return Da(t)&&Da(e)&&(o.set(e,t),Ei(t,e,void 0,kr,o),o.delete(e)),t}function Dr(t){return ja(t)?void 0:t}function Rr(t,e,n,i,r,o){var a=1&n,s=t.length,c=e.length;if(s!=c&&!(a&&c>s))return!1;var l=o.get(t),u=o.get(e);if(l&&u)return l==e&&u==t;var d=-1,p=!0,h=2&n?new Dn:void 0;for(o.set(t,e),o.set(e,t);++d<s;){var f=t[d],g=e[d];if(i)var m=a?i(g,f,d,e,t,o):i(f,g,d,t,e,o);if(void 0!==m){if(m)continue;p=!1;break}if(h){if(!fe(e,function(t,e){if(!_e(h,e)&&(f===t||r(f,t,n,i,o)))return h.push(e)})){p=!1;break}}else if(f!==g&&!r(f,g,n,i,o)){p=!1;break}}return o.delete(t),o.delete(e),p}function Lr(t){return uo(oo(t,void 0,Eo),t+"")}function Nr(t){return si(t,us,Wr)}function jr(t){return si(t,ds,qr)}var Vr=gn?function(t){return gn.get(t)}:Bs;function Fr(t){for(var e=t.name+"",n=mn[e],i=Et.call(mn,e)?n.length:0;i--;){var r=n[i],o=r.func;if(null==o||o==t)return r.name}return e}function Ur(t){return(Et.call(Cn,"placeholder")?Cn:t).placeholder}function Br(){var t=Cn.iteratee||js;return t=t===js?yi:t,arguments.length?t(arguments[0],arguments[1]):t}function zr(t,e){var n,i,r=t.__data__;return("string"==(i=typeof(n=e))||"number"==i||"symbol"==i||"boolean"==i?"__proto__"!==n:null===n)?r["string"==typeof e?"string":"hash"]:r.map}function Gr(t){for(var e=us(t),n=e.length;n--;){var i=e[n],r=t[i];e[n]=[i,r,io(r)]}return e}function Hr(t,e){var n=function(t,e){return null==t?void 0:t[e]}(t,e);return vi(n)?n:void 0}var Wr=Je?function(t){return null==t?[]:(t=gt(t),se(Je(t),function(e){return Yt.call(t,e)}))}:Xs,qr=Je?function(t){for(var e=[];t;)de(e,Wr(t)),t=qt(t);return e}:Xs,Kr=ci;function Xr(t,e,n){for(var i=-1,r=(e=Qi(e,t)).length,o=!1;++i<r;){var a=mo(e[i]);if(!(o=null!=t&&n(t,a)))break;t=t[a]}return o||++i!=r?o:!!(r=null==t?0:t.length)&&ka(r)&&Jr(a,r)&&(Ma(t)||xa(t))}function Yr(t){return"function"!=typeof t.constructor||no(t)?{}:An(qt(t))}function Zr(t){return Ma(t)||xa(t)||!!(ge&&t&&t[ge])}function Jr(t,e){var n=typeof t;return!!(e=null==e?9007199254740991:e)&&("number"==n||"symbol"!=n&&ct.test(t))&&t>-1&&t%1==0&&t<e}function Qr(t,e,n){if(!Da(n))return!1;var i=typeof e;return!!("number"==i?Ca(n)&&Jr(e,n.length):"string"==i&&e in n)&&ba(n[e],t)}function $r(t,e){if(Ma(t))return!1;var n=typeof t;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=t&&!Ba(t))||H.test(t)||!G.test(t)||null!=e&&t in gt(e)}function to(t){var e=Fr(t),n=Cn[e];if("function"!=typeof n||!(e in _n.prototype))return!1;if(t===n)return!0;var i=Vr(n);return!!i&&t===i[0]}(ln&&Kr(new ln(new ArrayBuffer(1)))!=E||un&&Kr(new un)!=g||dn&&"[object Promise]"!=Kr(dn.resolve())||pn&&Kr(new pn)!=b||hn&&Kr(new hn)!=x)&&(Kr=function(t){var e=ci(t),n=e==v?t.constructor:void 0,i=n?vo(n):"";if(i)switch(i){case vn:return E;case yn:return g;case bn:return"[object Promise]";case wn:return b;case Sn:return x}return e});var eo=xt?Pa:Ys;function no(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||St)}function io(t){return t==t&&!Da(t)}function ro(t,e){return function(n){return null!=n&&n[t]===e&&(void 0!==e||t in gt(n))}}function oo(t,e,n){return e=nn(void 0===e?t.length-1:e,0),function(){for(var r=arguments,o=-1,a=nn(r.length-e,0),s=i(a);++o<a;)s[o]=r[e+o];o=-1;for(var c=i(e+1);++o<e;)c[o]=r[o];return c[e]=n(s),ie(t,this,c)}}function ao(t,e){return e.length<2?t:ai(t,Ni(e,0,-1))}function so(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}var co=ho(Ri),lo=Xe||function(t,e){return Wt.setTimeout(t,e)},uo=ho(Li);function po(t,e,n){var i=e+"";return uo(t,function(t,e){var n=e.length;if(!n)return t;var i=n-1;return e[i]=(n>1?"& ":"")+e[i],e=e.join(n>2?", ":" "),t.replace(J,"{\n/* [wrapped with "+e+"] */\n")}(i,function(t,e){return oe(s,function(n){var i="_."+n[0];e&n[1]&&!ce(t,i)&&t.push(i)}),t.sort()}(function(t){var e=i.match(Q);return e?e[1].split($):[]}(),n)))}function ho(t){var e=0,n=0;return function(){var i=on(),r=16-(i-n);if(n=i,r>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}function fo(t,e){var n=-1,i=t.length,r=i-1;for(e=void 0===e?i:e;++n<e;){var o=Pi(n,r),a=t[o];t[o]=t[n],t[n]=a}return t.length=e,t}var go=function(t){var e=ha(function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(W,function(t,n,i,r){e.push(i?r.replace(et,"$1"):n||t)}),e},function(t){return 500===n.size&&n.clear(),t}),n=e.cache;return e}();function mo(t){if("string"==typeof t||Ba(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function vo(t){if(null!=t){try{return Mt.call(t)}catch(t){}try{return t+""}catch(t){}}return""}function yo(t){if(t instanceof _n)return t.clone();var e=new On(t.__wrapped__,t.__chain__);return e.__actions__=cr(t.__actions__),e.__index__=t.__index__,e.__values__=t.__values__,e}var bo=ki(function(t,e){return Aa(t)?Xn(t,ti(e,1,Aa,!0)):[]}),wo=ki(function(t,e){var n=_o(e);return Aa(n)&&(n=void 0),Aa(t)?Xn(t,ti(e,1,Aa,!0),Br(n,2)):[]}),So=ki(function(t,e){var n=_o(e);return Aa(n)&&(n=void 0),Aa(t)?Xn(t,ti(e,1,Aa,!0),void 0,n):[]});function xo(t,e,n){var i=null==t?0:t.length;if(!i)return-1;var r=null==n?0:Ka(n);return r<0&&(r=nn(i+r,0)),ve(t,Br(e,3),r)}function Mo(t,e,n){var i=null==t?0:t.length;if(!i)return-1;var r=i-1;return void 0!==n&&(r=Ka(n),r=n<0?nn(i+r,0):rn(r,i-1)),ve(t,Br(e,3),r,!0)}function Eo(t){return null!=t&&t.length?ti(t,1):[]}function Co(t){return t&&t.length?t[0]:void 0}var Ao=ki(function(t){var e=ue(t,Zi);return e.length&&e[0]===t[0]?pi(e):[]}),To=ki(function(t){var e=_o(t),n=ue(t,Zi);return e===_o(n)?e=void 0:n.pop(),n.length&&n[0]===t[0]?pi(n,Br(e,2)):[]}),Oo=ki(function(t){var e=_o(t),n=ue(t,Zi);return(e="function"==typeof e?e:void 0)&&n.pop(),n.length&&n[0]===t[0]?pi(n,void 0,e):[]});function _o(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}var Po=ki(Io);function Io(t,e){return t&&t.length&&e&&e.length?Oi(t,e):t}var ko=Lr(function(t,e){var n=null==t?0:t.length,i=Gn(t,e);return _i(t,ue(e,function(t){return Jr(t,n)?+t:t}).sort(or)),i});function Do(t){return null==t?t:cn.call(t)}var Ro=ki(function(t){return Gi(ti(t,1,Aa,!0))}),Lo=ki(function(t){var e=_o(t);return Aa(e)&&(e=void 0),Gi(ti(t,1,Aa,!0),Br(e,2))}),No=ki(function(t){var e=_o(t);return e="function"==typeof e?e:void 0,Gi(ti(t,1,Aa,!0),void 0,e)});function jo(t){if(!t||!t.length)return[];var e=0;return t=se(t,function(t){if(Aa(t))return e=nn(t.length,e),!0}),Ae(e,function(e){return ue(t,xe(e))})}function Vo(t,e){if(!t||!t.length)return[];var n=jo(t);return null==e?n:ue(n,function(t){return ie(e,void 0,t)})}var Fo=ki(function(t,e){return Aa(t)?Xn(t,e):[]}),Uo=ki(function(t){return Xi(se(t,Aa))}),Bo=ki(function(t){var e=_o(t);return Aa(e)&&(e=void 0),Xi(se(t,Aa),Br(e,2))}),zo=ki(function(t){var e=_o(t);return e="function"==typeof e?e:void 0,Xi(se(t,Aa),void 0,e)}),Go=ki(jo),Ho=ki(function(t){var e=t.length,n=e>1?t[e-1]:void 0;return Vo(t,n="function"==typeof n?(t.pop(),n):void 0)});function Wo(t){var e=Cn(t);return e.__chain__=!0,e}function qo(t,e){return e(t)}var Ko=Lr(function(t){var e=t.length,n=e?t[0]:0,i=this.__wrapped__,r=function(e){return Gn(e,t)};return!(e>1||this.__actions__.length)&&i instanceof _n&&Jr(n)?((i=i.slice(n,+n+(e?1:0))).__actions__.push({func:qo,args:[r],thisArg:void 0}),new On(i,this.__chain__).thru(function(t){return e&&!t.length&&t.push(void 0),t})):this.thru(r)}),Xo=ur(function(t,e,n){Et.call(t,n)?++t[n]:zn(t,n,1)}),Yo=vr(xo),Zo=vr(Mo);function Jo(t,e){return(Ma(t)?oe:Yn)(t,Br(e,3))}function Qo(t,e){return(Ma(t)?function(t,e){for(var n=null==t?0:t.length;n--&&!1!==e(t[n],n,t););return t}:Zn)(t,Br(e,3))}var $o=ur(function(t,e,n){Et.call(t,n)?t[n].push(e):zn(t,n,[e])}),ta=ki(function(t,e,n){var r=-1,o="function"==typeof e,a=Ca(t)?i(t.length):[];return Yn(t,function(t){a[++r]=o?ie(e,t,n):hi(t,e,n)}),a}),ea=ur(function(t,e,n){zn(t,n,e)});function na(t,e){return(Ma(t)?ue:Si)(t,Br(e,3))}var ia=ur(function(t,e,n){t[n?0:1].push(e)},function(){return[[],[]]}),ra=ki(function(t,e){if(null==t)return[];var n=e.length;return n>1&&Qr(t,e[0],e[1])?e=[]:n>2&&Qr(e[0],e[1],e[2])&&(e=[e[0]]),Ai(t,ti(e,1),[])}),oa=Ke||function(){return Wt.Date.now()};function aa(t,e,n){return e=n?void 0:e,Pr(t,128,void 0,void 0,void 0,void 0,e=t&&null==e?t.length:e)}function sa(t,e){var n;if("function"!=typeof e)throw new yt(o);return t=Ka(t),function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=void 0),n}}var ca=ki(function(t,e,n){var i=1;if(n.length){var r=Ve(n,Ur(ca));i|=32}return Pr(t,i,e,n,r)}),la=ki(function(t,e,n){var i=3;if(n.length){var r=Ve(n,Ur(la));i|=32}return Pr(e,i,t,n,r)});function ua(t,e,n){var i,r,a,s,c,l,u=0,d=!1,p=!1,h=!0;if("function"!=typeof t)throw new yt(o);function f(e){var n=i,o=r;return i=r=void 0,u=e,s=t.apply(o,n)}function g(t){var n=t-l;return void 0===l||n>=e||n<0||p&&t-u>=a}function m(){var t=oa();if(g(t))return v(t);c=lo(m,function(t){var n=e-(t-l);return p?rn(n,a-(t-u)):n}(t))}function v(t){return c=void 0,h&&i?f(t):(i=r=void 0,s)}function y(){var t=oa(),n=g(t);if(i=arguments,r=this,l=t,n){if(void 0===c)return function(t){return u=t,c=lo(m,e),d?f(t):s}(l);if(p)return er(c),c=lo(m,e),f(l)}return void 0===c&&(c=lo(m,e)),s}return e=Ya(e)||0,Da(n)&&(d=!!n.leading,a=(p="maxWait"in n)?nn(Ya(n.maxWait)||0,e):a,h="trailing"in n?!!n.trailing:h),y.cancel=function(){void 0!==c&&er(c),u=0,i=l=r=c=void 0},y.flush=function(){return void 0===c?s:v(oa())},y}var da=ki(function(t,e){return Kn(t,1,e)}),pa=ki(function(t,e,n){return Kn(t,Ya(e)||0,n)});function ha(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new yt(o);var n=function(){var i=arguments,r=e?e.apply(this,i):i[0],o=n.cache;if(o.has(r))return o.get(r);var a=t.apply(this,i);return n.cache=o.set(r,a)||o,a};return n.cache=new(ha.Cache||kn),n}function fa(t){if("function"!=typeof t)throw new yt(o);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}ha.Cache=kn;var ga=$i(function(t,e){var n=(e=1==e.length&&Ma(e[0])?ue(e[0],Te(Br())):ue(ti(e,1),Te(Br()))).length;return ki(function(i){for(var r=-1,o=rn(i.length,n);++r<o;)i[r]=e[r].call(this,i[r]);return ie(t,this,i)})}),ma=ki(function(t,e){return Pr(t,32,void 0,e,Ve(e,Ur(ma)))}),va=ki(function(t,e){return Pr(t,64,void 0,e,Ve(e,Ur(va)))}),ya=Lr(function(t,e){return Pr(t,256,void 0,void 0,void 0,e)});function ba(t,e){return t===e||t!=t&&e!=e}var wa=Cr(li),Sa=Cr(function(t,e){return t>=e}),xa=fi(function(){return arguments}())?fi:function(t){return Ra(t)&&Et.call(t,"callee")&&!Yt.call(t,"callee")},Ma=i.isArray,Ea=Jt?Te(Jt):function(t){return Ra(t)&&ci(t)==M};function Ca(t){return null!=t&&ka(t.length)&&!Pa(t)}function Aa(t){return Ra(t)&&Ca(t)}var Ta=Qe||Ys,Oa=Qt?Te(Qt):function(t){return Ra(t)&&ci(t)==d};function _a(t){if(!Ra(t))return!1;var e=ci(t);return e==p||"[object DOMException]"==e||"string"==typeof t.message&&"string"==typeof t.name&&!ja(t)}function Pa(t){if(!Da(t))return!1;var e=ci(t);return e==h||e==f||"[object AsyncFunction]"==e||"[object Proxy]"==e}function Ia(t){return"number"==typeof t&&t==Ka(t)}function ka(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}function Da(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function Ra(t){return null!=t&&"object"==typeof t}var La=$t?Te($t):function(t){return Ra(t)&&Kr(t)==g};function Na(t){return"number"==typeof t||Ra(t)&&ci(t)==m}function ja(t){if(!Ra(t)||ci(t)!=v)return!1;var e=qt(t);if(null===e)return!0;var n=Et.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&Mt.call(n)==Ot}var Va=te?Te(te):function(t){return Ra(t)&&ci(t)==y},Fa=ee?Te(ee):function(t){return Ra(t)&&Kr(t)==b};function Ua(t){return"string"==typeof t||!Ma(t)&&Ra(t)&&ci(t)==w}function Ba(t){return"symbol"==typeof t||Ra(t)&&ci(t)==S}var za=ne?Te(ne):function(t){return Ra(t)&&ka(t.length)&&!!Vt[ci(t)]},Ga=Cr(wi),Ha=Cr(function(t,e){return t<=e});function Wa(t){if(!t)return[];if(Ca(t))return Ua(t)?Be(t):cr(t);if(Me&&t[Me])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[Me]());var e=Kr(t);return(e==g?Ne:e==b?Fe:bs)(t)}function qa(t){return t?(t=Ya(t))===1/0||t===-1/0?1.7976931348623157e308*(t<0?-1:1):t==t?t:0:0===t?t:0}function Ka(t){var e=qa(t),n=e%1;return e==e?n?e-n:e:0}function Xa(t){return t?Hn(Ka(t),0,4294967295):0}function Ya(t){if("number"==typeof t)return t;if(Ba(t))return NaN;if(Da(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=Da(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(X,"");var n=ot.test(t);return n||st.test(t)?zt(t.slice(2),n?2:8):rt.test(t)?NaN:+t}function Za(t){return lr(t,ds(t))}function Ja(t){return null==t?"":zi(t)}var Qa=dr(function(t,e){if(no(e)||Ca(e))lr(e,us(e),t);else for(var n in e)Et.call(e,n)&&Vn(t,n,e[n])}),$a=dr(function(t,e){lr(e,ds(e),t)}),ts=dr(function(t,e,n,i){lr(e,ds(e),t,i)}),es=dr(function(t,e,n,i){lr(e,us(e),t,i)}),ns=Lr(Gn),is=ki(function(t,e){t=gt(t);var n=-1,i=e.length,r=i>2?e[2]:void 0;for(r&&Qr(e[0],e[1],r)&&(i=1);++n<i;)for(var o=e[n],a=ds(o),s=-1,c=a.length;++s<c;){var l=a[s],u=t[l];(void 0===u||ba(u,St[l])&&!Et.call(t,l))&&(t[l]=o[l])}return t}),rs=ki(function(t){return t.push(void 0,kr),ie(hs,void 0,t)});function os(t,e,n){var i=null==t?void 0:ai(t,e);return void 0===i?n:i}function as(t,e){return null!=t&&Xr(t,e,di)}var ss=wr(function(t,e,n){null!=e&&"function"!=typeof e.toString&&(e=Tt.call(e)),t[e]=n},Ds(Ns)),cs=wr(function(t,e,n){null!=e&&"function"!=typeof e.toString&&(e=Tt.call(e)),Et.call(t,e)?t[e].push(n):t[e]=[n]},Br),ls=ki(hi);function us(t){return Ca(t)?Ln(t):bi(t)}function ds(t){return Ca(t)?Ln(t,!0):function(t){if(!Da(t))return function(t){var e=[];if(null!=t)for(var n in gt(t))e.push(n);return e}(t);var e=no(t),n=[];for(var i in t)("constructor"!=i||!e&&Et.call(t,i))&&n.push(i);return n}(t)}var ps=dr(function(t,e,n){Ei(t,e,n)}),hs=dr(function(t,e,n,i){Ei(t,e,n,i)}),fs=Lr(function(t,e){var n={};if(null==t)return n;var i=!1;e=ue(e,function(e){return e=Qi(e,t),i||(i=e.length>1),e}),lr(t,jr(t),n),i&&(n=Wn(n,7,Dr));for(var r=e.length;r--;)Hi(n,e[r]);return n}),gs=Lr(function(t,e){return null==t?{}:function(t,e){return Ti(t,e,function(e,n){return as(t,n)})}(t,e)});function ms(t,e){if(null==t)return{};var n=ue(jr(t),function(t){return[t]});return e=Br(e),Ti(t,n,function(t,n){return e(t,n[0])})}var vs=_r(us),ys=_r(ds);function bs(t){return null==t?[]:Oe(t,us(t))}var ws=gr(function(t,e,n){return e=e.toLowerCase(),t+(n?Ss(e):e)});function Ss(t){return _s(Ja(t).toLowerCase())}function xs(t){return(t=Ja(t))&&t.replace(lt,ke).replace(It,"")}var Ms=gr(function(t,e,n){return t+(n?"-":"")+e.toLowerCase()}),Es=gr(function(t,e,n){return t+(n?" ":"")+e.toLowerCase()}),Cs=fr("toLowerCase"),As=gr(function(t,e,n){return t+(n?"_":"")+e.toLowerCase()}),Ts=gr(function(t,e,n){return t+(n?" ":"")+_s(e)}),Os=gr(function(t,e,n){return t+(n?" ":"")+e.toUpperCase()}),_s=fr("toUpperCase");function Ps(t,e,n){return t=Ja(t),void 0===(e=n?void 0:e)?function(t){return Lt.test(t)}(t)?function(t){return t.match(Dt)||[]}(t):function(t){return t.match(tt)||[]}(t):t.match(e)||[]}var Is=ki(function(t,e){try{return ie(t,void 0,e)}catch(t){return _a(t)?t:new pt(t)}}),ks=Lr(function(t,e){return oe(e,function(e){e=mo(e),zn(t,e,ca(t[e],t))}),t});function Ds(t){return function(){return t}}var Rs=yr(),Ls=yr(!0);function Ns(t){return t}function js(t){return yi("function"==typeof t?t:Wn(t,1))}var Vs=ki(function(t,e){return function(n){return hi(n,t,e)}}),Fs=ki(function(t,e){return function(n){return hi(t,n,e)}});function Us(t,e,n){var i=us(e),r=oi(e,i);null!=n||Da(e)&&(r.length||!i.length)||(n=e,e=t,t=this,r=oi(e,us(e)));var o=!(Da(n)&&"chain"in n&&!n.chain),a=Pa(t);return oe(r,function(n){var i=e[n];t[n]=i,a&&(t.prototype[n]=function(){var e=this.__chain__;if(o||e){var n=t(this.__wrapped__);return(n.__actions__=cr(this.__actions__)).push({func:i,args:arguments,thisArg:t}),n.__chain__=e,n}return i.apply(t,de([this.value()],arguments))})}),t}function Bs(){}var zs=xr(ue),Gs=xr(ae),Hs=xr(fe);function Ws(t){return $r(t)?xe(mo(t)):function(t){return function(e){return ai(e,t)}}(t)}var qs=Er(),Ks=Er(!0);function Xs(){return[]}function Ys(){return!1}var Zs,Js=Sr(function(t,e){return t+e},0),Qs=Tr("ceil"),$s=Sr(function(t,e){return t/e},1),tc=Tr("floor"),ec=Sr(function(t,e){return t*e},1),nc=Tr("round"),ic=Sr(function(t,e){return t-e},0);return Cn.after=function(t,e){if("function"!=typeof e)throw new yt(o);return t=Ka(t),function(){if(--t<1)return e.apply(this,arguments)}},Cn.ary=aa,Cn.assign=Qa,Cn.assignIn=$a,Cn.assignInWith=ts,Cn.assignWith=es,Cn.at=ns,Cn.before=sa,Cn.bind=ca,Cn.bindAll=ks,Cn.bindKey=la,Cn.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return Ma(t)?t:[t]},Cn.chain=Wo,Cn.chunk=function(t,e,n){e=(n?Qr(t,e,n):void 0===e)?1:nn(Ka(e),0);var r=null==t?0:t.length;if(!r||e<1)return[];for(var o=0,a=0,s=i(Ye(r/e));o<r;)s[a++]=Ni(t,o,o+=e);return s},Cn.compact=function(t){for(var e=-1,n=null==t?0:t.length,i=0,r=[];++e<n;){var o=t[e];o&&(r[i++]=o)}return r},Cn.concat=function(){var t=arguments.length;if(!t)return[];for(var e=i(t-1),n=arguments[0],r=t;r--;)e[r-1]=arguments[r];return de(Ma(n)?cr(n):[n],ti(e,1))},Cn.cond=function(t){var e=null==t?0:t.length,n=Br();return t=e?ue(t,function(t){if("function"!=typeof t[1])throw new yt(o);return[n(t[0]),t[1]]}):[],ki(function(n){for(var i=-1;++i<e;){var r=t[i];if(ie(r[0],this,n))return ie(r[1],this,n)}})},Cn.conforms=function(t){return function(t){var e=us(t);return function(n){return qn(n,t,e)}}(Wn(t,1))},Cn.constant=Ds,Cn.countBy=Xo,Cn.create=function(t,e){var n=An(t);return null==e?n:Bn(n,e)},Cn.curry=function t(e,n,i){var r=Pr(e,8,void 0,void 0,void 0,void 0,void 0,n=i?void 0:n);return r.placeholder=t.placeholder,r},Cn.curryRight=function t(e,n,i){var r=Pr(e,16,void 0,void 0,void 0,void 0,void 0,n=i?void 0:n);return r.placeholder=t.placeholder,r},Cn.debounce=ua,Cn.defaults=is,Cn.defaultsDeep=rs,Cn.defer=da,Cn.delay=pa,Cn.difference=bo,Cn.differenceBy=wo,Cn.differenceWith=So,Cn.drop=function(t,e,n){var i=null==t?0:t.length;return i?Ni(t,(e=n||void 0===e?1:Ka(e))<0?0:e,i):[]},Cn.dropRight=function(t,e,n){var i=null==t?0:t.length;return i?Ni(t,0,(e=i-(e=n||void 0===e?1:Ka(e)))<0?0:e):[]},Cn.dropRightWhile=function(t,e){return t&&t.length?qi(t,Br(e,3),!0,!0):[]},Cn.dropWhile=function(t,e){return t&&t.length?qi(t,Br(e,3),!0):[]},Cn.fill=function(t,e,n,i){var r=null==t?0:t.length;return r?(n&&"number"!=typeof n&&Qr(t,e,n)&&(n=0,i=r),function(t,e,n,i){var r=t.length;for((n=Ka(n))<0&&(n=-n>r?0:r+n),(i=void 0===i||i>r?r:Ka(i))<0&&(i+=r),i=n>i?0:Xa(i);n<i;)t[n++]=e;return t}(t,e,n,i)):[]},Cn.filter=function(t,e){return(Ma(t)?se:$n)(t,Br(e,3))},Cn.flatMap=function(t,e){return ti(na(t,e),1)},Cn.flatMapDeep=function(t,e){return ti(na(t,e),1/0)},Cn.flatMapDepth=function(t,e,n){return n=void 0===n?1:Ka(n),ti(na(t,e),n)},Cn.flatten=Eo,Cn.flattenDeep=function(t){return null!=t&&t.length?ti(t,1/0):[]},Cn.flattenDepth=function(t,e){return null!=t&&t.length?ti(t,e=void 0===e?1:Ka(e)):[]},Cn.flip=function(t){return Pr(t,512)},Cn.flow=Rs,Cn.flowRight=Ls,Cn.fromPairs=function(t){for(var e=-1,n=null==t?0:t.length,i={};++e<n;){var r=t[e];i[r[0]]=r[1]}return i},Cn.functions=function(t){return null==t?[]:oi(t,us(t))},Cn.functionsIn=function(t){return null==t?[]:oi(t,ds(t))},Cn.groupBy=$o,Cn.initial=function(t){return null!=t&&t.length?Ni(t,0,-1):[]},Cn.intersection=Ao,Cn.intersectionBy=To,Cn.intersectionWith=Oo,Cn.invert=ss,Cn.invertBy=cs,Cn.invokeMap=ta,Cn.iteratee=js,Cn.keyBy=ea,Cn.keys=us,Cn.keysIn=ds,Cn.map=na,Cn.mapKeys=function(t,e){var n={};return e=Br(e,3),ii(t,function(t,i,r){zn(n,e(t,i,r),t)}),n},Cn.mapValues=function(t,e){var n={};return e=Br(e,3),ii(t,function(t,i,r){zn(n,i,e(t,i,r))}),n},Cn.matches=function(t){return xi(Wn(t,1))},Cn.matchesProperty=function(t,e){return Mi(t,Wn(e,1))},Cn.memoize=ha,Cn.merge=ps,Cn.mergeWith=hs,Cn.method=Vs,Cn.methodOf=Fs,Cn.mixin=Us,Cn.negate=fa,Cn.nthArg=function(t){return t=Ka(t),ki(function(e){return Ci(e,t)})},Cn.omit=fs,Cn.omitBy=function(t,e){return ms(t,fa(Br(e)))},Cn.once=function(t){return sa(2,t)},Cn.orderBy=function(t,e,n,i){return null==t?[]:(Ma(e)||(e=null==e?[]:[e]),Ma(n=i?void 0:n)||(n=null==n?[]:[n]),Ai(t,e,n))},Cn.over=zs,Cn.overArgs=ga,Cn.overEvery=Gs,Cn.overSome=Hs,Cn.partial=ma,Cn.partialRight=va,Cn.partition=ia,Cn.pick=gs,Cn.pickBy=ms,Cn.property=Ws,Cn.propertyOf=function(t){return function(e){return null==t?void 0:ai(t,e)}},Cn.pull=Po,Cn.pullAll=Io,Cn.pullAllBy=function(t,e,n){return t&&t.length&&e&&e.length?Oi(t,e,Br(n,2)):t},Cn.pullAllWith=function(t,e,n){return t&&t.length&&e&&e.length?Oi(t,e,void 0,n):t},Cn.pullAt=ko,Cn.range=qs,Cn.rangeRight=Ks,Cn.rearg=ya,Cn.reject=function(t,e){return(Ma(t)?se:$n)(t,fa(Br(e,3)))},Cn.remove=function(t,e){var n=[];if(!t||!t.length)return n;var i=-1,r=[],o=t.length;for(e=Br(e,3);++i<o;){var a=t[i];e(a,i,t)&&(n.push(a),r.push(i))}return _i(t,r),n},Cn.rest=function(t,e){if("function"!=typeof t)throw new yt(o);return ki(t,e=void 0===e?e:Ka(e))},Cn.reverse=Do,Cn.sampleSize=function(t,e,n){return e=(n?Qr(t,e,n):void 0===e)?1:Ka(e),(Ma(t)?function(t,e){return fo(cr(t),Hn(e,0,t.length))}:function(t,e){var n=bs(t);return fo(n,Hn(e,0,n.length))})(t,e)},Cn.set=function(t,e,n){return null==t?t:Di(t,e,n)},Cn.setWith=function(t,e,n,i){return i="function"==typeof i?i:void 0,null==t?t:Di(t,e,n,i)},Cn.shuffle=function(t){return(Ma(t)?function(t){return fo(cr(t))}:function(t){return fo(bs(t))})(t)},Cn.slice=function(t,e,n){var i=null==t?0:t.length;return i?(n&&"number"!=typeof n&&Qr(t,e,n)?(e=0,n=i):(e=null==e?0:Ka(e),n=void 0===n?i:Ka(n)),Ni(t,e,n)):[]},Cn.sortBy=ra,Cn.sortedUniq=function(t){return t&&t.length?Ui(t):[]},Cn.sortedUniqBy=function(t,e){return t&&t.length?Ui(t,Br(e,2)):[]},Cn.split=function(t,e,n){return n&&"number"!=typeof n&&Qr(t,e,n)&&(e=n=void 0),(n=void 0===n?4294967295:n>>>0)?(t=Ja(t))&&("string"==typeof e||null!=e&&!Va(e))&&!(e=zi(e))&&Le(t)?tr(Be(t),0,n):t.split(e,n):[]},Cn.spread=function(t,e){if("function"!=typeof t)throw new yt(o);return e=null==e?0:nn(Ka(e),0),ki(function(n){var i=n[e],r=tr(n,0,e);return i&&de(r,i),ie(t,this,r)})},Cn.tail=function(t){var e=null==t?0:t.length;return e?Ni(t,1,e):[]},Cn.take=function(t,e,n){return t&&t.length?Ni(t,0,(e=n||void 0===e?1:Ka(e))<0?0:e):[]},Cn.takeRight=function(t,e,n){var i=null==t?0:t.length;return i?Ni(t,(e=i-(e=n||void 0===e?1:Ka(e)))<0?0:e,i):[]},Cn.takeRightWhile=function(t,e){return t&&t.length?qi(t,Br(e,3),!1,!0):[]},Cn.takeWhile=function(t,e){return t&&t.length?qi(t,Br(e,3)):[]},Cn.tap=function(t,e){return e(t),t},Cn.throttle=function(t,e,n){var i=!0,r=!0;if("function"!=typeof t)throw new yt(o);return Da(n)&&(i="leading"in n?!!n.leading:i,r="trailing"in n?!!n.trailing:r),ua(t,e,{leading:i,maxWait:e,trailing:r})},Cn.thru=qo,Cn.toArray=Wa,Cn.toPairs=vs,Cn.toPairsIn=ys,Cn.toPath=function(t){return Ma(t)?ue(t,mo):Ba(t)?[t]:cr(go(Ja(t)))},Cn.toPlainObject=Za,Cn.transform=function(t,e,n){var i=Ma(t),r=i||Ta(t)||za(t);if(e=Br(e,4),null==n){var o=t&&t.constructor;n=r?i?new o:[]:Da(t)&&Pa(o)?An(qt(t)):{}}return(r?oe:ii)(t,function(t,i,r){return e(n,t,i,r)}),n},Cn.unary=function(t){return aa(t,1)},Cn.union=Ro,Cn.unionBy=Lo,Cn.unionWith=No,Cn.uniq=function(t){return t&&t.length?Gi(t):[]},Cn.uniqBy=function(t,e){return t&&t.length?Gi(t,Br(e,2)):[]},Cn.uniqWith=function(t,e){return e="function"==typeof e?e:void 0,t&&t.length?Gi(t,void 0,e):[]},Cn.unset=function(t,e){return null==t||Hi(t,e)},Cn.unzip=jo,Cn.unzipWith=Vo,Cn.update=function(t,e,n){return null==t?t:Wi(t,e,Ji(n))},Cn.updateWith=function(t,e,n,i){return i="function"==typeof i?i:void 0,null==t?t:Wi(t,e,Ji(n),i)},Cn.values=bs,Cn.valuesIn=function(t){return null==t?[]:Oe(t,ds(t))},Cn.without=Fo,Cn.words=Ps,Cn.wrap=function(t,e){return ma(Ji(e),t)},Cn.xor=Uo,Cn.xorBy=Bo,Cn.xorWith=zo,Cn.zip=Go,Cn.zipObject=function(t,e){return Yi(t||[],e||[],Vn)},Cn.zipObjectDeep=function(t,e){return Yi(t||[],e||[],Di)},Cn.zipWith=Ho,Cn.entries=vs,Cn.entriesIn=ys,Cn.extend=$a,Cn.extendWith=ts,Us(Cn,Cn),Cn.add=Js,Cn.attempt=Is,Cn.camelCase=ws,Cn.capitalize=Ss,Cn.ceil=Qs,Cn.clamp=function(t,e,n){return void 0===n&&(n=e,e=void 0),void 0!==n&&(n=(n=Ya(n))==n?n:0),void 0!==e&&(e=(e=Ya(e))==e?e:0),Hn(Ya(t),e,n)},Cn.clone=function(t){return Wn(t,4)},Cn.cloneDeep=function(t){return Wn(t,5)},Cn.cloneDeepWith=function(t,e){return Wn(t,5,e="function"==typeof e?e:void 0)},Cn.cloneWith=function(t,e){return Wn(t,4,e="function"==typeof e?e:void 0)},Cn.conformsTo=function(t,e){return null==e||qn(t,e,us(e))},Cn.deburr=xs,Cn.defaultTo=function(t,e){return null==t||t!=t?e:t},Cn.divide=$s,Cn.endsWith=function(t,e,n){t=Ja(t),e=zi(e);var i=t.length,r=n=void 0===n?i:Hn(Ka(n),0,i);return(n-=e.length)>=0&&t.slice(n,r)==e},Cn.eq=ba,Cn.escape=function(t){return(t=Ja(t))&&F.test(t)?t.replace(j,De):t},Cn.escapeRegExp=function(t){return(t=Ja(t))&&K.test(t)?t.replace(q,"\\$&"):t},Cn.every=function(t,e,n){var i=Ma(t)?ae:Jn;return n&&Qr(t,e,n)&&(e=void 0),i(t,Br(e,3))},Cn.find=Yo,Cn.findIndex=xo,Cn.findKey=function(t,e){return me(t,Br(e,3),ii)},Cn.findLast=Zo,Cn.findLastIndex=Mo,Cn.findLastKey=function(t,e){return me(t,Br(e,3),ri)},Cn.floor=tc,Cn.forEach=Jo,Cn.forEachRight=Qo,Cn.forIn=function(t,e){return null==t?t:ei(t,Br(e,3),ds)},Cn.forInRight=function(t,e){return null==t?t:ni(t,Br(e,3),ds)},Cn.forOwn=function(t,e){return t&&ii(t,Br(e,3))},Cn.forOwnRight=function(t,e){return t&&ri(t,Br(e,3))},Cn.get=os,Cn.gt=wa,Cn.gte=Sa,Cn.has=function(t,e){return null!=t&&Xr(t,e,ui)},Cn.hasIn=as,Cn.head=Co,Cn.identity=Ns,Cn.includes=function(t,e,n,i){t=Ca(t)?t:bs(t),n=n&&!i?Ka(n):0;var r=t.length;return n<0&&(n=nn(r+n,0)),Ua(t)?n<=r&&t.indexOf(e,n)>-1:!!r&&ye(t,e,n)>-1},Cn.indexOf=function(t,e,n){var i=null==t?0:t.length;if(!i)return-1;var r=null==n?0:Ka(n);return r<0&&(r=nn(i+r,0)),ye(t,e,r)},Cn.inRange=function(t,e,n){return e=qa(e),void 0===n?(n=e,e=0):n=qa(n),function(t,e,n){return t>=rn(e,n)&&t<nn(e,n)}(t=Ya(t),e,n)},Cn.invoke=ls,Cn.isArguments=xa,Cn.isArray=Ma,Cn.isArrayBuffer=Ea,Cn.isArrayLike=Ca,Cn.isArrayLikeObject=Aa,Cn.isBoolean=function(t){return!0===t||!1===t||Ra(t)&&ci(t)==u},Cn.isBuffer=Ta,Cn.isDate=Oa,Cn.isElement=function(t){return Ra(t)&&1===t.nodeType&&!ja(t)},Cn.isEmpty=function(t){if(null==t)return!0;if(Ca(t)&&(Ma(t)||"string"==typeof t||"function"==typeof t.splice||Ta(t)||za(t)||xa(t)))return!t.length;var e=Kr(t);if(e==g||e==b)return!t.size;if(no(t))return!bi(t).length;for(var n in t)if(Et.call(t,n))return!1;return!0},Cn.isEqual=function(t,e){return gi(t,e)},Cn.isEqualWith=function(t,e,n){var i=(n="function"==typeof n?n:void 0)?n(t,e):void 0;return void 0===i?gi(t,e,void 0,n):!!i},Cn.isError=_a,Cn.isFinite=function(t){return"number"==typeof t&&$e(t)},Cn.isFunction=Pa,Cn.isInteger=Ia,Cn.isLength=ka,Cn.isMap=La,Cn.isMatch=function(t,e){return t===e||mi(t,e,Gr(e))},Cn.isMatchWith=function(t,e,n){return n="function"==typeof n?n:void 0,mi(t,e,Gr(e),n)},Cn.isNaN=function(t){return Na(t)&&t!=+t},Cn.isNative=function(t){if(eo(t))throw new pt("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return vi(t)},Cn.isNil=function(t){return null==t},Cn.isNull=function(t){return null===t},Cn.isNumber=Na,Cn.isObject=Da,Cn.isObjectLike=Ra,Cn.isPlainObject=ja,Cn.isRegExp=Va,Cn.isSafeInteger=function(t){return Ia(t)&&t>=-9007199254740991&&t<=9007199254740991},Cn.isSet=Fa,Cn.isString=Ua,Cn.isSymbol=Ba,Cn.isTypedArray=za,Cn.isUndefined=function(t){return void 0===t},Cn.isWeakMap=function(t){return Ra(t)&&Kr(t)==x},Cn.isWeakSet=function(t){return Ra(t)&&"[object WeakSet]"==ci(t)},Cn.join=function(t,e){return null==t?"":tn.call(t,e)},Cn.kebabCase=Ms,Cn.last=_o,Cn.lastIndexOf=function(t,e,n){var i=null==t?0:t.length;if(!i)return-1;var r=i;return void 0!==n&&(r=(r=Ka(n))<0?nn(i+r,0):rn(r,i-1)),e==e?function(t,e,n){for(var i=r+1;i--;)if(t[i]===e)return i;return i}(t,e):ve(t,we,r,!0)},Cn.lowerCase=Es,Cn.lowerFirst=Cs,Cn.lt=Ga,Cn.lte=Ha,Cn.max=function(t){return t&&t.length?Qn(t,Ns,li):void 0},Cn.maxBy=function(t,e){return t&&t.length?Qn(t,Br(e,2),li):void 0},Cn.mean=function(t){return Se(t,Ns)},Cn.meanBy=function(t,e){return Se(t,Br(e,2))},Cn.min=function(t){return t&&t.length?Qn(t,Ns,wi):void 0},Cn.minBy=function(t,e){return t&&t.length?Qn(t,Br(e,2),wi):void 0},Cn.stubArray=Xs,Cn.stubFalse=Ys,Cn.stubObject=function(){return{}},Cn.stubString=function(){return""},Cn.stubTrue=function(){return!0},Cn.multiply=ec,Cn.nth=function(t,e){return t&&t.length?Ci(t,Ka(e)):void 0},Cn.noConflict=function(){return Wt._===this&&(Wt._=_t),this},Cn.noop=Bs,Cn.now=oa,Cn.pad=function(t,e,n){t=Ja(t);var i=(e=Ka(e))?Ue(t):0;if(!e||i>=e)return t;var r=(e-i)/2;return Mr(Ze(r),n)+t+Mr(Ye(r),n)},Cn.padEnd=function(t,e,n){t=Ja(t);var i=(e=Ka(e))?Ue(t):0;return e&&i<e?t+Mr(e-i,n):t},Cn.padStart=function(t,e,n){t=Ja(t);var i=(e=Ka(e))?Ue(t):0;return e&&i<e?Mr(e-i,n)+t:t},Cn.parseInt=function(t,e,n){return n||null==e?e=0:e&&(e=+e),an(Ja(t).replace(Y,""),e||0)},Cn.random=function(t,e,n){if(n&&"boolean"!=typeof n&&Qr(t,e,n)&&(e=n=void 0),void 0===n&&("boolean"==typeof e?(n=e,e=void 0):"boolean"==typeof t&&(n=t,t=void 0)),void 0===t&&void 0===e?(t=0,e=1):(t=qa(t),void 0===e?(e=t,t=0):e=qa(e)),t>e){var i=t;t=e,e=i}if(n||t%1||e%1){var r=sn();return rn(t+r*(e-t+Bt("1e-"+((r+"").length-1))),e)}return Pi(t,e)},Cn.reduce=function(t,e,n){var i=Ma(t)?pe:Ee,r=arguments.length<3;return i(t,Br(e,4),n,r,Yn)},Cn.reduceRight=function(t,e,n){var i=Ma(t)?he:Ee,r=arguments.length<3;return i(t,Br(e,4),n,r,Zn)},Cn.repeat=function(t,e,n){return e=(n?Qr(t,e,n):void 0===e)?1:Ka(e),Ii(Ja(t),e)},Cn.replace=function(){var t=arguments,e=Ja(t[0]);return t.length<3?e:e.replace(t[1],t[2])},Cn.result=function(t,e,n){var i=-1,r=(e=Qi(e,t)).length;for(r||(r=1,t=void 0);++i<r;){var o=null==t?void 0:t[mo(e[i])];void 0===o&&(i=r,o=n),t=Pa(o)?o.call(t):o}return t},Cn.round=nc,Cn.runInContext=t,Cn.sample=function(t){return(Ma(t)?Nn:function(t){return Nn(bs(t))})(t)},Cn.size=function(t){if(null==t)return 0;if(Ca(t))return Ua(t)?Ue(t):t.length;var e=Kr(t);return e==g||e==b?t.size:bi(t).length},Cn.snakeCase=As,Cn.some=function(t,e,n){var i=Ma(t)?fe:ji;return n&&Qr(t,e,n)&&(e=void 0),i(t,Br(e,3))},Cn.sortedIndex=function(t,e){return Vi(t,e)},Cn.sortedIndexBy=function(t,e,n){return Fi(t,e,Br(n,2))},Cn.sortedIndexOf=function(t,e){var n=null==t?0:t.length;if(n){var i=Vi(t,e);if(i<n&&ba(t[i],e))return i}return-1},Cn.sortedLastIndex=function(t,e){return Vi(t,e,!0)},Cn.sortedLastIndexBy=function(t,e,n){return Fi(t,e,Br(n,2),!0)},Cn.sortedLastIndexOf=function(t,e){if(null!=t&&t.length){var n=Vi(t,e,!0)-1;if(ba(t[n],e))return n}return-1},Cn.startCase=Ts,Cn.startsWith=function(t,e,n){return t=Ja(t),n=null==n?0:Hn(Ka(n),0,t.length),e=zi(e),t.slice(n,n+e.length)==e},Cn.subtract=ic,Cn.sum=function(t){return t&&t.length?Ce(t,Ns):0},Cn.sumBy=function(t,e){return t&&t.length?Ce(t,Br(e,2)):0},Cn.template=function(t,e,n){var i=Cn.templateSettings;n&&Qr(t,e,n)&&(e=void 0),t=Ja(t),e=ts({},e,i,Ir);var r,o,a=ts({},e.imports,i.imports,Ir),s=us(a),c=Oe(a,s),l=0,u=e.interpolate||ut,d="__p += '",p=mt((e.escape||ut).source+"|"+u.source+"|"+(u===z?nt:ut).source+"|"+(e.evaluate||ut).source+"|$","g"),h="//# sourceURL="+(Et.call(e,"sourceURL")?(e.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++jt+"]")+"\n";t.replace(p,function(e,n,i,a,s,c){return i||(i=a),d+=t.slice(l,c).replace(dt,Re),n&&(r=!0,d+="' +\n__e("+n+") +\n'"),s&&(o=!0,d+="';\n"+s+";\n__p += '"),i&&(d+="' +\n((__t = ("+i+")) == null ? '' : __t) +\n'"),l=c+e.length,e}),d+="';\n";var f=Et.call(e,"variable")&&e.variable;f||(d="with (obj) {\n"+d+"\n}\n"),d=(o?d.replace(D,""):d).replace(R,"$1").replace(L,"$1;"),d="function("+(f||"obj")+") {\n"+(f?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(r?", __e = _.escape":"")+(o?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+d+"return __p\n}";var g=Is(function(){return ht(s,h+"return "+d).apply(void 0,c)});if(g.source=d,_a(g))throw g;return g},Cn.times=function(t,e){if((t=Ka(t))<1||t>9007199254740991)return[];var n=4294967295,i=rn(t,4294967295);t-=4294967295;for(var r=Ae(i,e=Br(e));++n<t;)e(n);return r},Cn.toFinite=qa,Cn.toInteger=Ka,Cn.toLength=Xa,Cn.toLower=function(t){return Ja(t).toLowerCase()},Cn.toNumber=Ya,Cn.toSafeInteger=function(t){return t?Hn(Ka(t),-9007199254740991,9007199254740991):0===t?t:0},Cn.toString=Ja,Cn.toUpper=function(t){return Ja(t).toUpperCase()},Cn.trim=function(t,e,n){if((t=Ja(t))&&(n||void 0===e))return t.replace(X,"");if(!t||!(e=zi(e)))return t;var i=Be(t),r=Be(e);return tr(i,Pe(i,r),Ie(i,r)+1).join("")},Cn.trimEnd=function(t,e,n){if((t=Ja(t))&&(n||void 0===e))return t.replace(Z,"");if(!t||!(e=zi(e)))return t;var i=Be(t);return tr(i,0,Ie(i,Be(e))+1).join("")},Cn.trimStart=function(t,e,n){if((t=Ja(t))&&(n||void 0===e))return t.replace(Y,"");if(!t||!(e=zi(e)))return t;var i=Be(t);return tr(i,Pe(i,Be(e))).join("")},Cn.truncate=function(t,e){var n=30,i="...";if(Da(e)){var r="separator"in e?e.separator:r;n="length"in e?Ka(e.length):n,i="omission"in e?zi(e.omission):i}var o=(t=Ja(t)).length;if(Le(t)){var a=Be(t);o=a.length}if(n>=o)return t;var s=n-Ue(i);if(s<1)return i;var c=a?tr(a,0,s).join(""):t.slice(0,s);if(void 0===r)return c+i;if(a&&(s+=c.length-s),Va(r)){if(t.slice(s).search(r)){var l,u=c;for(r.global||(r=mt(r.source,Ja(it.exec(r))+"g")),r.lastIndex=0;l=r.exec(u);)var d=l.index;c=c.slice(0,void 0===d?s:d)}}else if(t.indexOf(zi(r),s)!=s){var p=c.lastIndexOf(r);p>-1&&(c=c.slice(0,p))}return c+i},Cn.unescape=function(t){return(t=Ja(t))&&V.test(t)?t.replace(N,ze):t},Cn.uniqueId=function(t){var e=++Ct;return Ja(t)+e},Cn.upperCase=Os,Cn.upperFirst=_s,Cn.each=Jo,Cn.eachRight=Qo,Cn.first=Co,Us(Cn,(Zs={},ii(Cn,function(t,e){Et.call(Cn.prototype,e)||(Zs[e]=t)}),Zs),{chain:!1}),Cn.VERSION="4.17.19",oe(["bind","bindKey","curry","curryRight","partial","partialRight"],function(t){Cn[t].placeholder=Cn}),oe(["drop","take"],function(t,e){_n.prototype[t]=function(n){n=void 0===n?1:nn(Ka(n),0);var i=this.__filtered__&&!e?new _n(this):this.clone();return i.__filtered__?i.__takeCount__=rn(n,i.__takeCount__):i.__views__.push({size:rn(n,4294967295),type:t+(i.__dir__<0?"Right":"")}),i},_n.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}}),oe(["filter","map","takeWhile"],function(t,e){var n=e+1,i=1==n||3==n;_n.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:Br(t,3),type:n}),e.__filtered__=e.__filtered__||i,e}}),oe(["head","last"],function(t,e){var n="take"+(e?"Right":"");_n.prototype[t]=function(){return this[n](1).value()[0]}}),oe(["initial","tail"],function(t,e){var n="drop"+(e?"":"Right");_n.prototype[t]=function(){return this.__filtered__?new _n(this):this[n](1)}}),_n.prototype.compact=function(){return this.filter(Ns)},_n.prototype.find=function(t){return this.filter(t).head()},_n.prototype.findLast=function(t){return this.reverse().find(t)},_n.prototype.invokeMap=ki(function(t,e){return"function"==typeof t?new _n(this):this.map(function(n){return hi(n,t,e)})}),_n.prototype.reject=function(t){return this.filter(fa(Br(t)))},_n.prototype.slice=function(t,e){t=Ka(t);var n=this;return n.__filtered__&&(t>0||e<0)?new _n(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),void 0!==e&&(n=(e=Ka(e))<0?n.dropRight(-e):n.take(e-t)),n)},_n.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},_n.prototype.toArray=function(){return this.take(4294967295)},ii(_n.prototype,function(t,e){var n=/^(?:filter|find|map|reject)|While$/.test(e),i=/^(?:head|last)$/.test(e),r=Cn[i?"take"+("last"==e?"Right":""):e],o=i||/^find/.test(e);r&&(Cn.prototype[e]=function(){var e=this.__wrapped__,a=i?[1]:arguments,s=e instanceof _n,c=a[0],l=s||Ma(e),u=function(t){var e=r.apply(Cn,de([t],a));return i&&d?e[0]:e};l&&n&&"function"==typeof c&&1!=c.length&&(s=l=!1);var d=this.__chain__,p=!!this.__actions__.length,h=o&&!d,f=s&&!p;if(!o&&l){e=f?e:new _n(this);var g=t.apply(e,a);return g.__actions__.push({func:qo,args:[u],thisArg:void 0}),new On(g,d)}return h&&f?t.apply(this,a):(g=this.thru(u),h?i?g.value()[0]:g.value():g)})}),oe(["pop","push","shift","sort","splice","unshift"],function(t){var e=bt[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",i=/^(?:pop|shift)$/.test(t);Cn.prototype[t]=function(){var t=arguments;if(i&&!this.__chain__){var r=this.value();return e.apply(Ma(r)?r:[],t)}return this[n](function(n){return e.apply(Ma(n)?n:[],t)})}}),ii(_n.prototype,function(t,e){var n=Cn[e];if(n){var i=n.name+"";Et.call(mn,i)||(mn[i]=[]),mn[i].push({name:e,func:n})}}),mn[br(void 0,2).name]=[{name:"wrapper",func:void 0}],_n.prototype.clone=function(){var t=new _n(this.__wrapped__);return t.__actions__=cr(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=cr(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=cr(this.__views__),t},_n.prototype.reverse=function(){if(this.__filtered__){var t=new _n(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},_n.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=Ma(t),i=e<0,r=n?t.length:0,o=function(t,e,n){for(var i=-1,r=n.length;++i<r;){var o=n[i],a=o.size;switch(o.type){case"drop":t+=a;break;case"dropRight":e-=a;break;case"take":e=rn(e,t+a);break;case"takeRight":t=nn(t,e-a)}}return{start:t,end:e}}(0,r,this.__views__),a=o.start,s=o.end,c=s-a,l=i?s:a-1,u=this.__iteratees__,d=u.length,p=0,h=rn(c,this.__takeCount__);if(!n||!i&&r==c&&h==c)return Ki(t,this.__actions__);var f=[];t:for(;c--&&p<h;){for(var g=-1,m=t[l+=e];++g<d;){var v=u[g],y=v.iteratee,b=v.type,w=y(m);if(2==b)m=w;else if(!w){if(1==b)continue t;break t}}f[p++]=m}return f},Cn.prototype.at=Ko,Cn.prototype.chain=function(){return Wo(this)},Cn.prototype.commit=function(){return new On(this.value(),this.__chain__)},Cn.prototype.next=function(){void 0===this.__values__&&(this.__values__=Wa(this.value()));var t=this.__index__>=this.__values__.length;return{done:t,value:t?void 0:this.__values__[this.__index__++]}},Cn.prototype.plant=function(t){for(var e,n=this;n instanceof Tn;){var i=yo(n);i.__index__=0,i.__values__=void 0,e?r.__wrapped__=i:e=i;var r=i;n=n.__wrapped__}return r.__wrapped__=t,e},Cn.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof _n){var e=t;return this.__actions__.length&&(e=new _n(this)),(e=e.reverse()).__actions__.push({func:qo,args:[Do],thisArg:void 0}),new On(e,this.__chain__)}return this.thru(Do)},Cn.prototype.toJSON=Cn.prototype.valueOf=Cn.prototype.value=function(){return Ki(this.__wrapped__,this.__actions__)},Cn.prototype.first=Cn.prototype.head,Me&&(Cn.prototype[Me]=function(){return this}),Cn}();Wt._=Ge,void 0===(r=function(){return Ge}.call(e,n,e,i))||(i.exports=r)}).call(this)}).call(this,n(213),n(452)(t))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.handleWarning=function(t){}},function(t,e,n){"use strict";var i=this&&this.__assign||function(){return(i=Object.assign||function(t){for(var e,n=1,i=arguments.length;n<i;n++)for(var r in e=arguments[n])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)},r=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},o=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var a=n(2);n(72),n(72);var s=n(40),c=n(197),l=n(20),u=n(152),d=(n(41),n(6)),p=n(0),h=n(0),f=n(72),g=n(41),m=function(){function t(t,e,n,i,r){this.$http=t,this.apiEndpoint=e,this.JWTTokenService=n,this.$httpParamSerializer=i,this.$http.defaults.headers.delete={"Content-Type":"application/json"},this.errorWrapper=r.createDefaultWrapper()}return t.prototype.getApi=function(t,e,n,i){var r=this;void 0===i&&(i=!0);var o={url:this.apiEndpoint+t,method:"GET",params:e,withCredentials:!0};let a=["api/images","api/site_model/within","api/site_model/within_polygon","api/search/site_model","api/search/poi","api/groups","api/license","api/user","api/users","api/route","api/configs","api/poi_type_groups","api/poi_types","api/site_model/closest"];for(let t=0;t<a.length;++t)o.url.indexOf(a[t])>-1&&(o.url="../../indoor/"+sceneNum+"/"+o.url);return console.log("url:"+o.url),n=this.fillConfig(o,n),this.request(n,i).then(function(t){return r.success(t)}).catch(function(t){return r.fail(t)})},t.prototype.httpRequest=function(t,e){var n=this;return void 0===e&&(e=!0),t.method||(t.method="GET"),this.request(t,e).then(function(t){return n.success(t)}).catch(function(t){return n.fail(t)})},t.prototype.authorizedHttpRequest=function(t,e){return void 0===e&&(e=!0),this.addAuthorizationHeader(t),this.httpRequest(t,e)},t.prototype.postApi=function(t,e,n,i){var r=this;void 0===i&&(i=!0);var o={url:this.apiEndpoint+t,method:"POST",data:e,withCredentials:!0};return n=this.fillConfig(o,n),this.request(n,i).then(function(t){return r.success(t)}).catch(function(t){return r.fail(t)})},t.prototype.putApi=function(t,e,n,i){var r=this;void 0===i&&(i=!0);var o={url:this.apiEndpoint+t,method:"PUT",data:e,withCredentials:!0};return n=this.fillConfig(o,n),this.request(n,i).then(function(t){return r.success(t)}).catch(function(t){return r.fail(t)})},t.prototype.deleteApi=function(t,e,n){var i=this;void 0===n&&(n=!0);var r={withCredentials:!0,url:this.apiEndpoint+t,method:"DELETE"};return e=this.fillConfig(r,e),this.request(e,n).then(function(t){return i.success(t)}).catch(function(t){return i.fail(t)})},t.prototype.directDownload=function(t,e,n,i){void 0===i&&(i=!0),e[this.JWTTokenService.getJwtUrlParamKey()]=this.JWTTokenService.getJwt();var r=this.$httpParamSerializer(e),o=i?this.apiEndpoint+t:t;n=o.substring(o.lastIndexOf("/")+1),c.clickHiddenURL(o+"?"+r,n)},t.prototype.request=function(t,e){return r(this,void 0,void 0,function(){return o(this,function(n){return e?[2,this.errorWrapper.wrap(l.wrapAngularJsPromise(this.$http(t)))]:[2,this.$http(t)]})})},t.prototype.success=function(t){return t&&200===t.status?t.data?t.data:t:Promise.reject(t)},t.prototype.fail=function(t){return 401===t.status&&this.JWTTokenService.eraseJwt(),Promise.reject(t)},t.prototype.fillConfig=function(t,e){return e=i(i({},e),t),this.addAuthorizationHeader(e),this.addCacheDisabler(e),this.addNullToUndefinedResponseTransformer(e),e},t.prototype.addAuthorizationHeader=function(t){this.JWTTokenService.getJwt()&&(this.JWTTokenService.isNotExpired()?(t.headers=t.headers||{},this.JWTTokenService.setJwtHeaderOnConfig(t.headers)):this.JWTTokenService.eraseJwt())},t.prototype.addCacheDisabler=function(t){if(s.isBrowserIE()){var e=t.params||{};e.browserCacheBuster=(new Date).getTime(),t.params=e}},t.prototype.addNullToUndefinedResponseTransformer=function(e){var n=this.$http.defaults.transformResponse,i=a.isArray(n)?n:[n];i.push(function(e){return l.mapValuesDeep(e,function(e){return t.nullTransformer(e)})}),e.transformResponse=i},t.nullTransformer=function(t){return null!==t?t:void 0},t.prototype.addAuthorizationQueryParameter=function(t){var e=new URL(t,u.getBaseUrl());this.JWTTokenService.setJwtOnUrl(e);var n=e.href.indexOf(t);return e.href.slice(n)},t.ɵfac=function(e){return new(e||t)(h.ɵɵinject("$http"),h.ɵɵinject("apiEndpoint"),h.ɵɵinject(f.JWTTokenService),h.ɵɵinject("$httpParamSerializer"),h.ɵɵinject(g.ErrorService))},t.ɵprov=h.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.RestService=m,h.ɵsetClassMetadata(m,[{type:p.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:p.Inject,args:["$http"]}]},{type:void 0,decorators:[{type:p.Inject,args:["apiEndpoint"]}]},{type:f.JWTTokenService},{type:void 0,decorators:[{type:p.Inject,args:["$httpParamSerializer"]}]},{type:g.ErrorService}]},null),a.module("IVWebApp").service("RestService",d.downgradeInjectable(m))},function(t,e,n){"use strict";t.exports=function(t){var e=[];return e.toString=function(){return this.map(function(e){var n=function(t,e){var n,i,r,o=t[1]||"",a=t[3];if(!a)return o;if(e&&"function"==typeof btoa){var s=(n=a,i=btoa(unescape(encodeURIComponent(JSON.stringify(n)))),r="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(i),"/*# ".concat(r," */")),c=a.sources.map(function(t){return"/*# sourceURL=".concat(a.sourceRoot||"").concat(t," */")});return[o].concat(c).concat([s]).join("\n")}return[o].join("\n")}(e,t);return e[2]?"@media ".concat(e[2]," {").concat(n,"}"):n}).join("")},e.i=function(t,n,i){"string"==typeof t&&(t=[[null,t,""]]);var r={};if(i)for(var o=0;o<this.length;o++){var a=this[o][0];null!=a&&(r[a]=!0)}for(var s=0;s<t.length;s++){var c=[].concat(t[s]);i&&r[c[0]]||(n&&(c[2]?c[2]="".concat(n," and ").concat(c[2]):c[2]=n),e.push(c))}},e}},function(t,e,n){"use strict";var i,r=function(){var t={};return function(e){if(void 0===t[e]){var n=document.querySelector(e);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(t){n=null}t[e]=n}return t[e]}}(),o=[];function a(t){for(var e=-1,n=0;n<o.length;n++)if(o[n].identifier===t){e=n;break}return e}function s(t,e){for(var n={},i=[],r=0;r<t.length;r++){var s=t[r],c=e.base?s[0]+e.base:s[0],l=n[c]||0,u="".concat(c," ").concat(l);n[c]=l+1;var d=a(u),p={css:s[1],media:s[2],sourceMap:s[3]};-1!==d?(o[d].references++,o[d].updater(p)):o.push({identifier:u,updater:f(p,e),references:1}),i.push(u)}return i}function c(t){var e=document.createElement("style"),i=t.attributes||{};if(void 0===i.nonce){var o=n.nc;o&&(i.nonce=o)}if(Object.keys(i).forEach(function(t){e.setAttribute(t,i[t])}),"function"==typeof t.insert)t.insert(e);else{var a=r(t.insert||"head");if(!a)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");a.appendChild(e)}return e}var l,u=(l=[],function(t,e){return l[t]=e,l.filter(Boolean).join("\n")});function d(t,e,n,i){var r=n?"":i.media?"@media ".concat(i.media," {").concat(i.css,"}"):i.css;if(t.styleSheet)t.styleSheet.cssText=u(e,r);else{var o=document.createTextNode(r),a=t.childNodes;a[e]&&t.removeChild(a[e]),a.length?t.insertBefore(o,a[e]):t.appendChild(o)}}var p=null,h=0;function f(t,e){var n,i,r;if(e.singleton){var o=h++;n=p||(p=c(e)),i=d.bind(null,n,o,!1),r=d.bind(null,n,o,!0)}else n=c(e),i=function(t,e,n){var i=n.css,r=n.media,o=n.sourceMap;if(r?t.setAttribute("media",r):t.removeAttribute("media"),o&&btoa&&(i+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(o))))," */")),t.styleSheet)t.styleSheet.cssText=i;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(i))}}.bind(null,n,e),r=function(){!function(t){if(null===t.parentNode)return!1;t.parentNode.removeChild(t)}(n)};return i(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap)return;i(t=e)}else r()}}t.exports=function(t,e){(e=e||{}).singleton||"boolean"==typeof e.singleton||(e.singleton=(void 0===i&&(i=Boolean(window&&document&&document.all&&!window.atob)),i));var n=s(t=t||[],e);return function(t){if(t=t||[],"[object Array]"===Object.prototype.toString.call(t)){for(var i=0;i<n.length;i++){var r=a(n[i]);o[r].references--}for(var c=s(t,e),l=0;l<n.length;l++){var u=a(n[l]);0===o[u].references&&(o[u].updater(),o.splice(u,1))}n=c}}}},function(t,e,n){"use strict";n.d(e,"a",function(){return u});var i=n(225),r=n(26),o=n(207),a=n(227),s=n(126),c=n(282),l=n(84),u=function(){function t(t){this._isScalar=!1,t&&(this._subscribe=t)}return t.prototype.lift=function(e){var n=new t;return n.source=this,n.operator=e,n},t.prototype.subscribe=function(t,e,n){var i=this.operator,s=function(t,e,n){if(t){if(t instanceof r.a)return t;if(t[o.a])return t[o.a]()}return t||e||n?new r.a(t,e,n):new r.a(a.a)}(t,e,n);if(i?s.add(i.call(s,this.source)):s.add(this.source||l.a.useDeprecatedSynchronousErrorHandling&&!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),l.a.useDeprecatedSynchronousErrorHandling&&s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s},t.prototype._trySubscribe=function(t){try{return this._subscribe(t)}catch(e){l.a.useDeprecatedSynchronousErrorHandling&&(t.syncErrorThrown=!0,t.syncErrorValue=e),Object(i.a)(t)?t.error(e):console.warn(e)}},t.prototype.forEach=function(t,e){var n=this;return new(e=d(e))(function(e,i){var r;r=n.subscribe(function(e){try{t(e)}catch(t){i(t),r&&r.unsubscribe()}},i,e)})},t.prototype._subscribe=function(t){var e=this.source;return e&&e.subscribe(t)},t.prototype[s.a]=function(){return this},t.prototype.pipe=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return 0===t.length?this:Object(c.b)(t)(this)},t.prototype.toPromise=function(t){var e=this;return new(t=d(t))(function(t,n){var i;e.subscribe(function(t){return i=t},function(t){return n(t)},function(){return t(i)})})},t.create=function(e){return new t(e)},t}();function d(t){if(t||(t=l.a.Promise||Promise),!t)throw new Error("no Promise impl found");return t}},function(t,e,n){"use strict";n.d(e,"a",function(){return u}),n.d(e,"b",function(){return d}),n.d(e,"c",function(){return v}),n.d(e,"d",function(){return m}),n.d(e,"e",function(){return h}),n.d(e,"f",function(){return f}),n.d(e,"g",function(){return g});var i,r=n(0),o=n(3);try{i="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(t){i=!1}var a,s,c,l,u=function(){function t(t){this._platformId=t,this.isBrowser=this._platformId?Object(o.isPlatformBrowser)(this._platformId):"object"==typeof document&&!!document,this.EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent),this.TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent),this.BLINK=this.isBrowser&&!(!window.chrome&&!i)&&"undefined"!=typeof CSS&&!this.EDGE&&!this.TRIDENT,this.WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT,this.IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window),this.FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent),this.ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT,this.SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT}return t.ctorParameters=function(){return[{type:Object,decorators:[{type:r.Optional},{type:r.Inject,args:[r.PLATFORM_ID]}]}]},t.ɵprov=Object(r["ɵɵdefineInjectable"])({factory:function(){return new t(Object(r["ɵɵinject"])(r.PLATFORM_ID,8))},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)(r["ɵɵinject"](r.PLATFORM_ID,8))},t}(),d=function(){function t(){}return t.ɵmod=r["ɵɵdefineNgModule"]({type:t}),t.ɵinj=r["ɵɵdefineInjector"]({factory:function(e){return new(e||t)}}),t}(),p=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];
  1447. /**
  1448. * @license
  1449. * Copyright Google LLC All Rights Reserved.
  1450. *
  1451. * Use of this source code is governed by an MIT-style license that can be
  1452. * found in the LICENSE file at https://angular.io/license
  1453. */function h(){if(a)return a;if("object"!=typeof document||!document)return a=new Set(p);var t=document.createElement("input");return a=new Set(p.filter(function(e){return t.setAttribute("type",e),t.type===e}))}
  1454. /**
  1455. * @license
  1456. * Copyright Google LLC All Rights Reserved.
  1457. *
  1458. * Use of this source code is governed by an MIT-style license that can be
  1459. * found in the LICENSE file at https://angular.io/license
  1460. */function f(t){return function(){if(null==s&&"undefined"!=typeof window)try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:function(){return s=!0}}))}finally{s=s||!1}return s}()?t:!!t.capture}
  1461. /**
  1462. * @license
  1463. * Copyright Google LLC All Rights Reserved.
  1464. *
  1465. * Use of this source code is governed by an MIT-style license that can be
  1466. * found in the LICENSE file at https://angular.io/license
  1467. */function g(){return!("object"!=typeof document||!("scrollBehavior"in document.documentElement.style))}function m(){if("object"!=typeof document||!document)return 0;if(null==c){var t=document.createElement("div"),e=t.style;t.dir="rtl",e.height="1px",e.width="1px",e.overflow="auto",e.visibility="hidden",e.pointerEvents="none",e.position="absolute";var n=document.createElement("div"),i=n.style;i.width="2px",i.height="1px",t.appendChild(n),document.body.appendChild(t),c=0,0===t.scrollLeft&&(t.scrollLeft=1,c=0===t.scrollLeft?1:2),t.parentNode.removeChild(t)}return c}
  1468. /**
  1469. * @license
  1470. * Copyright Google LLC All Rights Reserved.
  1471. *
  1472. * Use of this source code is governed by an MIT-style license that can be
  1473. * found in the LICENSE file at https://angular.io/license
  1474. */function v(t){if(function(){if(null==l){var t="undefined"!=typeof document?document.head:null;l=!(!t||!t.createShadowRoot&&!t.attachShadow)}return l}()){var e=t.getRootNode?t.getRootNode():null;if("undefined"!=typeof ShadowRoot&&ShadowRoot&&e instanceof ShadowRoot)return e}return null}
  1475. /**
  1476. * @license
  1477. * Copyright Google LLC All Rights Reserved.
  1478. *
  1479. * Use of this source code is governed by an MIT-style license that can be
  1480. * found in the LICENSE file at https://angular.io/license
  1481. */},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(7),r=n(2),o=n(378),a=n(4);n(66),n(66);var s=n(6),c=n(0),l=n(0),u=n(66),d=function(){function t(t){this.TransformService=t,this.onBeforeReferenceSystemChangedEvent=this.TransformService.onBeforeLocalReferenceSystemChange,this.offsetChanged=this.TransformService.onAfterLocalReferenceSystemChange}return Object.defineProperty(t.prototype,"initialized",{get:function(){return this.TransformService.localReferenceSystemReady},enumerable:!0,configurable:!0}),t.prototype.isInitialized=function(){return this.TransformService.haveLocalCoordinateSystem()},t.prototype.initCoordinatesSystem=function(t,e){if(t.length>0)this.TransformService.setLocalCoordinateSystem(t[0].globalLocation);else if(e.length>0){var n=e[0],i=n.vectorEntity instanceof o.Polygon?n.vectorEntity.boundary[0]:n.vectorEntity.coordinates[0];this.TransformService.setLocalCoordinateSystem(new a.Vector3(i.x,i.y,0))}else this.TransformService.unsetLocalCoordinateSystem()},t.prototype.toLocal=function(t,e,n){if(!this.TransformService.haveLocalCoordinateSystem())throw new Error("GeoTransformationService not initialized");return void 0===n?this.TransformService.globalToLocal.transform(new a.Vector2(t,e)):this.TransformService.globalToLocal.transform(new a.Vector3(t,e,n))},t.prototype.vectorToLocal=function(t){if(t){if(!this.TransformService.haveLocalCoordinateSystem())throw new Error("GeoTransformationService not initialized");return a.Vector2,this.TransformService.globalToLocal.transform(t.clone())}},t.prototype.vectorArrayToLocal=function(t){var e=this;return i.map(t,function(t){return e.vectorToLocal(t)})},t.prototype.toGlobal=function(t){if(console.warn('Deprecated usage of "toGlobal", use "vector2ToGlobal or vectorToGlobal" instead.'),!this.TransformService.haveLocalCoordinateSystem())throw new Error("GeoTransformationService not initialized");var e=this.TransformService.localToGlobal.transform(new a.Vector3(t.x,t.y,0));return void 0!==t.z?[e.x,e.y]:[e.x,e.y,e.z]},t.prototype.vector2ToGlobal=function(t){if(t){if(!this.TransformService.haveLocalCoordinateSystem())throw new Error("GeoTransformationService not initialized");return this.TransformService.localToGlobal.transform(t.clone())}},t.prototype.vectorToGlobal=function(t){if(t){if(!this.TransformService.haveLocalCoordinateSystem())throw new Error("GeoTransformationService not initialized");return this.TransformService.localToGlobal.transform(t.clone())}},t.prototype.toLocalHeight=function(t){return this.TransformService.globalToLocal.transform(new a.Vector3(0,0,t)).z},t.prototype.toGlobalHeight=function(t){return this.TransformService.localToGlobal.transform(new a.Vector3(0,0,t)).z},t.prototype.setOffsetFromGlobal=function(t){this.TransformService.setLocalCoordinateSystem(t)},t.prototype.updateLocalCoordinates=function(){this.offsetChanged.emit()},t.prototype.checkAndFixOffset=function(e){e.location.length()>t.RELOCATE_LOCAL_SYSTEM_THRESHOLD&&this.setOffsetFromGlobal(e.globalLocation)},t.RELOCATE_LOCAL_SYSTEM_THRESHOLD=1e4,t.ɵfac=function(e){return new(e||t)(l.ɵɵinject(u.TransformService))},t.ɵprov=l.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.GeoTransformationService=d,l.ɵsetClassMetadata(d,[{type:c.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:u.TransformService}]},null),r.module("IVWebApp").service("GeoTransformationService",s.downgradeInjectable(d))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(16),o=(n(251),n(61),n(1036));n(54),n(251);var a=n(25),s=n(144),c=n(92),l=n(375),u=(n(36),n(6)),d=n(0),p=n(0),h=n(251),f=n(61),g=n(36),m=function(){function t(t,e,n,i,l){var u,d;this.ConfigRepository=t,this.$location=e,this.MessageReportingService=n,this.gettextCatalog=i,this.AuthenticationService=l,this.updated=new r.Signal,this.groupedConfigs=[],this.changedConfigs={},this.configMap={},this.validators=((u={})[a.Configs.LAYERS_POLYGON_VECTOR_MAP_STYLE]=new o.VectorMapStyleSheetValidator(this.gettextCatalog.getString("Vector Map Style Sheet",void 0,"title"),this.gettextCatalog.getString("Failed to parse vector map style sheet:")),u),this.LICENSABLE_CONFIGS=((d={})[c.LicenseFeatureType.ROUTING]=[a.Configs.ROUTING_ENABLED],d[c.LicenseFeatureType.ANALYST]=[a.Configs.TRACKING_CODE,a.Configs.TRACKING_ENABLED],d[c.LicenseFeatureType.USER_MANAGEMENT]=[a.Configs.AUTH_LOCAL_ENABLED],d),this.CONFIG_ALIASES=[{original:a.Configs.LAYERS_POINTCLOUD_VISIBLE,alias:"pc"},{original:a.Configs.CORE_INIT_LAT,alias:"vlat"},{original:a.Configs.CORE_INIT_LON,alias:"vlon"}],this.configDeferred=new s.Deferred,this.fetch()}return t.prototype.getLicensableConfigFeature=function(t){for(var e in this.LICENSABLE_CONFIGS)if(this.LICENSABLE_CONFIGS[e].indexOf(t)>-1)return l.LicenseFeature.getFeatureTypeByCode(e)},t.prototype.fetch=function(t){var e=this;void 0===t&&(t=!1),this.configDeferred=new s.Deferred,this.initialized=this.configDeferred.promise,this.groupedConfigs=[],this.AuthenticationService.isDataAccessible().then(function(t){return t?Promise.resolve():(e.ConfigRepository.resetCache(),e.configArray=[],e.updateConfigMap(),e.buildGroupedConfig(),Promise.reject(void 0))}).then(function(){return e.ConfigRepository.findAll(t)}).then(function(){e.configArray=e.ConfigRepository.data,e.updateConfigMap(),e.buildGroupedConfig()}).catch(function(){e.configDeferred.reject()})},t.prototype.buildGroupedConfig=function(){var t=i.copy(this.configArray).filter(function(t){return t&&t.editInForm}).map(function(t){return"boolean"===t.type&&(t.value="true"===t.value),t});if(0!==t.length){var e=t.sort(function(t,e){return t.category.localeCompare(e.category)}),n=this.groupedConfigs[this.groupedConfigs.push([])-1];n.category=e[0].category;for(var r=0,o=e;r<o.length;r++){var a=o[r];0===n.category.localeCompare(a.category)||((n=this.groupedConfigs[this.groupedConfigs.push([])-1]).category=a.category),n.push(a)}this.groupedConfigs=this.groupedConfigs.sort(function(t,e){return-t.length+e.length})}},t.prototype.setLocalDefaults=function(t){this.overrides=t,this.updateConfigMap()},t.prototype.updateConfigMap=function(t){var e=this,n=t||this.configArray;if(n&&this.overrides){for(var r=0,o=n;r<o.length;r++){var a=o[r];this.configMap[a.name]=a.value}i.forEach(this.overrides,function(t,n){e.configMap[n]=t}),this.updateFromURL(),this.configDeferred.resolve()}},t.prototype.updateFromURL=function(){var t=this,e=this.$location.search();i.forEach(e,function(n,i){if(i!==a.Configs.TRACKING_CODE&&i!==a.Configs.TRACKING_ENABLED){for(var r=0,o=t.CONFIG_ALIASES;r<o.length;r++){var s=o[r];s.alias===i&&(i=s.original),s.original===i&&delete e[s.original]}t.configMap[i]=n}}),this.updated.emit()},t.prototype.saveConfig=function(t,e){var n=this,i=this.configArray.find(function(e){return e.name===t});if(!i)return Promise.reject(new Error("No such config exists"));var r=i.value;return i.value=e,this.ConfigRepository.save(i,!1).catch(function(){return i.value=r,n.MessageReportingService.showMessage(n.gettextCatalog.getString("Update Failed",void 0,"title"),n.gettextCatalog.getString("Updating changes to server over REST interface failed. Reverting local changes to match server.")),[i]})},t.prototype.saveConfigs=function(t){var e=this,n=Object.keys(t).map(function(n){var i;return t[n].hasOwnProperty("value")?i=t[n]:(i=e.getConfigResource(n)).value=t[n],i});return this.ConfigRepository.save(n).then(function(t){return e.updateConfigMap(),t})},t.prototype.validateConfigs=function(t){for(var e=0,n=Object.keys(t);e<n.length;e++){var i=n[e];if(this.validators.hasOwnProperty(i)){var r=this.validators[i],o=r.validate(t[i].value.toString());if(t[i].value=o.cleanedValue,!o.valid)return this.MessageReportingService.showMessage(r.title,o.reason),!1}}return!0},t.prototype.getBoolean=function(t,e){return this.isConfigDefined(t)?"true"===this.configMap[t]||!0===this.configMap[t]:e},t.prototype.getInteger=function(t,e){return this.parseToNumber(t,function(t){return parseInt(t,void 0)},e)},t.prototype.getFloat=function(t,e){return this.parseToNumber(t,parseFloat,e)},t.prototype.parseToNumber=function(t,e,n){if(this.isConfigDefined(t)){var i=e(this.configMap[t]);return isNaN(i)?n:i}return n},t.prototype.getString=function(t,e){return void 0!==this.configMap[t]?this.configMap[t]:e},t.prototype.getArray=function(t,e,n){return this.isConfigDefined(t)?e?this.configMap[t].split(",").map(function(t){return parseInt(t,10)}):this.configMap[t].split(","):n},t.prototype.isConfigDefined=function(t){return void 0!==this.configMap[t]&&""!==this.configMap[t]},t.prototype.getAliasByName=function(t){for(var e=0,n=this.CONFIG_ALIASES;e<n.length;e++){var i=n[e];if(i.original===t)return i.alias}},t.prototype.getConfigResource=function(t){return this.configArray.filter(function(e){return e.name===t})[0]},t.ɵfac=function(e){return new(e||t)(p.ɵɵinject(h.ConfigRepository),p.ɵɵinject("$location"),p.ɵɵinject(f.MessageReportingService),p.ɵɵinject("gettextCatalog"),p.ɵɵinject(g.AuthenticationService))},t.ɵprov=p.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.ConfigService=m,p.ɵsetClassMetadata(m,[{type:d.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:h.ConfigRepository},{type:void 0,decorators:[{type:d.Inject,args:["$location"]}]},{type:f.MessageReportingService},{type:void 0,decorators:[{type:d.Inject,args:["gettextCatalog"]}]},{type:g.AuthenticationService}]},null),i.module("IVWebApp").service("ConfigService",u.downgradeInjectable(m))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e,n){void 0===t&&(t=null),void 0===e&&(e=null),void 0===n&&(n=0),this.enabled=!0,this.newLink=!1,this.callback=null,this.prev=t||this,this.next=e||this,this.order=n}return t.prototype.isEnabled=function(){return this.enabled&&!this.newLink},t.prototype.setEnabled=function(t){this.enabled=t},t.prototype.unlink=function(){this.callback=null,this.next.prev=this.prev,this.prev.next=this.next},t.prototype.insert=function(e,n){for(var i=this.prev;i!==this&&!(i.order<=n);)i=i.prev;var r=new t(i,i.next,n);return r.callback=e,i.next=r,r.next.prev=r,r},t}(),a=function(){function t(t,e){this.link=e}return t.prototype.disconnect=function(){return null!==this.link&&(this.link.unlink(),this.link=null,!0)},Object.defineProperty(t.prototype,"enabled",{get:function(){return null!==this.link&&this.link.isEnabled()},set:function(t){this.link&&this.link.setEnabled(t)},enumerable:!0,configurable:!0}),t}(),s=function(){function t(){this.list=[]}return t.prototype.add=function(t){this.list.push(t)},t.prototype.disconnectAll=function(){for(var t=0,e=this.list;t<e.length;t++)e[t].disconnect();this.list=[]},t}();e.SignalConnections=s;var c=function(){function t(){this.head=new o,this.hasNewLinks=!1,this.emitDepth=0,this.emit=this.emitInternal.bind(this)}return t.prototype.connect=function(t,e){void 0===e&&(e=0);var n=this.head.insert(t,e);return this.emitDepth>0&&(this.hasNewLinks=!0,n.newLink=!0),new a(this.head,n)},t.prototype.disconnect=function(t){for(var e=this.head.next;e!==this.head;e=e.next)if(e.callback===t)return e.unlink(),!0;return!1},t.prototype.disconnectAll=function(){for(;this.head.next!==this.head;)this.head.next.unlink()},t.prototype.emitInternal=function(){this.emitDepth++;for(var t=this.head.next;t!==this.head;t=t.next)t.isEnabled()&&t.callback&&t.callback.apply(null,arguments);this.emitDepth--,this.unsetNewLink()},t.prototype.emitCollecting=function(t,e){this.emitDepth++;for(var n=this.head.next;n!==this.head;n=n.next)if(n.isEnabled()&&n.callback){var i=n.callback.apply(null,e);if(!t.handleResult(i))break}this.emitDepth--,this.unsetNewLink()},t.prototype.unsetNewLink=function(){if(this.hasNewLinks&&0==this.emitDepth){for(var t=this.head.next;t!==this.head;t=t.next)t.newLink=!1;this.hasNewLinks=!1}},t}();e.Signal=c;var l=function(t){var e=this;this.emit=function(){t.emitCollecting(e,arguments)}};e.Collector=l;var u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.handleResult=function(t){return this.result=t,!0},e.prototype.getResult=function(){return this.result},e.prototype.reset=function(){delete this.result},e}(l);e.CollectorLast=u;var d=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.result=!1,e}return r(e,t),e.prototype.handleResult=function(t){return this.result=t,!!this.result},e.prototype.getResult=function(){return this.result},e.prototype.reset=function(){this.result=!1},e}(l);e.CollectorUntil0=d;var p=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.result=!1,e}return r(e,t),e.prototype.handleResult=function(t){return this.result=t,!this.result},e.prototype.getResult=function(){return this.result},e.prototype.reset=function(){this.result=!1},e}(l);e.CollectorWhile0=p;var h=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.result=[],e}return r(e,t),e.prototype.handleResult=function(t){return this.result.push(t),!0},e.prototype.getResult=function(){return this.result},e.prototype.reset=function(){this.result.length=0},e}(l);e.CollectorArray=h},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(16),o=n(255),a=(n(15),n(25)),s=n(8),c=n(20),l=n(144),u=n(6),d=n(0),p=n(0),h=n(15),f=function(){function e(t){var e=this;this.ConfigService=t,this.onTransitionStart=new r.Signal,this.onTransitionEnd=new r.Signal,this.onViewSwap=new r.Signal,this.secondaryViewVisibilityChanged=new r.Signal,this.secondaryViewHovered=!1,this.mainViewDeferred=new l.Deferred,this.mapViewDeferred=new l.Deferred,this.viewSwapAllowed=!0,this.primaryView=o.ViewType.PANORAMA,this._showSecondaryView=!0,t.initialized.then(function(){e.showSecondaryView=t.getBoolean(a.Configs.LAYERS_MAP_VISIBLE,e.showSecondaryView)}).catch(s.handleWarning),this.mainViewDeferred.promise.then(function(t){return e.mainView=t}).catch(s.handleWarning),this.mapViewDeferred.promise.then(function(t){return e.mapView=t}).catch(s.handleWarning)}return Object.defineProperty(e.prototype,"showSecondaryView",{get:function(){return this._showSecondaryView},set:function(t){this._showSecondaryView=t,c.invalidateAngular(),this.secondaryViewVisibilityChanged.emit(t)},enumerable:!0,configurable:!0}),e.prototype.setPrimaryView=function(t){this.primaryView!==t&&this.swapViews()},e.prototype.swapViews=function(){var e=t(this.mainView.divContainer.container),n=t(this.mapView.divContainer.container),i=e.parent(),r=n.parent();e.prependTo(r),n.prependTo(i),this.mainView.divContainer.onResize(),this.mapView.divContainer.onResize(),this.primaryView=this.isMapPrimaryView()?o.ViewType.PANORAMA:o.ViewType.MAP,this.onViewSwap.emit(this.primaryView)},e.prototype.canSwapViews=function(){return this.showSecondaryView},e.prototype.isMapVisible=function(){return this.showSecondaryView||this.isMapPrimaryView()},e.prototype.getCurrentMainViewMode=function(){return this.mainView.viewMode},e.prototype.isPanoVisible=function(){return this.showSecondaryView||this.isPanoPrimaryView()},e.prototype.getPrimaryView=function(){return this.primaryView},e.prototype.isMapPrimaryView=function(){return this.primaryView===o.ViewType.MAP},e.prototype.isPanoPrimaryView=function(){return this.primaryView===o.ViewType.PANORAMA},e.ɵfac=function(t){return new(t||e)(p.ɵɵinject(h.ConfigService))},e.ɵprov=p.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}();e.ViewService=f,p.ɵsetClassMetadata(f,[{type:d.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:h.ConfigService}]},null),i.module("IVWebApp").service("ViewService",u.downgradeInjectable(f))}).call(this,n(19))},function(t,e){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,e,n){var i,r,o;
  1482. /*!
  1483. * jQuery JavaScript Library v2.2.4
  1484. * http://jquery.com/
  1485. *
  1486. * Includes Sizzle.js
  1487. * http://sizzlejs.com/
  1488. *
  1489. * Copyright jQuery Foundation and other contributors
  1490. * Released under the MIT license
  1491. * http://jquery.org/license
  1492. *
  1493. * Date: 2016-05-20T17:23Z
  1494. */r="undefined"!=typeof window?window:this,o=function(n,r){var o=[],a=n.document,s=o.slice,c=o.concat,l=o.push,u=o.indexOf,d={},p=d.toString,h=d.hasOwnProperty,f={},g=function(t,e){return new g.fn.init(t,e)},m=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,v=/^-ms-/,y=/-([\da-z])/gi,b=function(t,e){return e.toUpperCase()};function w(t){var e=!!t&&"length"in t&&t.length,n=g.type(t);return"function"!==n&&!g.isWindow(t)&&("array"===n||0===e||"number"==typeof e&&e>0&&e-1 in t)}g.fn=g.prototype={jquery:"2.2.4",constructor:g,selector:"",length:0,toArray:function(){return s.call(this)},get:function(t){return null!=t?t<0?this[t+this.length]:this[t]:s.call(this)},pushStack:function(t){var e=g.merge(this.constructor(),t);return e.prevObject=this,e.context=this.context,e},each:function(t){return g.each(this,t)},map:function(t){return this.pushStack(g.map(this,function(e,n){return t.call(e,n,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(t){var e=this.length,n=+t+(t<0?e:0);return this.pushStack(n>=0&&n<e?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:l,sort:o.sort,splice:o.splice},g.extend=g.fn.extend=function(){var t,e,n,i,r,o,a=arguments[0]||{},s=1,c=arguments.length,l=!1;for("boolean"==typeof a&&(l=a,a=arguments[s]||{},s++),"object"==typeof a||g.isFunction(a)||(a={}),s===c&&(a=this,s--);s<c;s++)if(null!=(t=arguments[s]))for(e in t)n=a[e],a!==(i=t[e])&&(l&&i&&(g.isPlainObject(i)||(r=g.isArray(i)))?(r?(r=!1,o=n&&g.isArray(n)?n:[]):o=n&&g.isPlainObject(n)?n:{},a[e]=g.extend(l,o,i)):void 0!==i&&(a[e]=i));return a},g.extend({expando:"jQuery"+("2.2.4"+Math.random()).replace(/\D/g,""),isReady:!0,error:function(t){throw new Error(t)},noop:function(){},isFunction:function(t){return"function"===g.type(t)},isArray:Array.isArray,isWindow:function(t){return null!=t&&t===t.window},isNumeric:function(t){var e=t&&t.toString();return!g.isArray(t)&&e-parseFloat(e)+1>=0},isPlainObject:function(t){var e;if("object"!==g.type(t)||t.nodeType||g.isWindow(t))return!1;if(t.constructor&&!h.call(t,"constructor")&&!h.call(t.constructor.prototype||{},"isPrototypeOf"))return!1;for(e in t);return void 0===e||h.call(t,e)},isEmptyObject:function(t){var e;for(e in t)return!1;return!0},type:function(t){return null==t?t+"":"object"==typeof t||"function"==typeof t?d[p.call(t)]||"object":typeof t},globalEval:function(t){var e,n=eval;(t=g.trim(t))&&(1===t.indexOf("use strict")?((e=a.createElement("script")).text=t,a.head.appendChild(e).parentNode.removeChild(e)):n(t))},camelCase:function(t){return t.replace(v,"ms-").replace(y,b)},nodeName:function(t,e){return t.nodeName&&t.nodeName.toLowerCase()===e.toLowerCase()},each:function(t,e){var n,i=0;if(w(t))for(n=t.length;i<n&&!1!==e.call(t[i],i,t[i]);i++);else for(i in t)if(!1===e.call(t[i],i,t[i]))break;return t},trim:function(t){return null==t?"":(t+"").replace(m,"")},makeArray:function(t,e){var n=e||[];return null!=t&&(w(Object(t))?g.merge(n,"string"==typeof t?[t]:t):l.call(n,t)),n},inArray:function(t,e,n){return null==e?-1:u.call(e,t,n)},merge:function(t,e){for(var n=+e.length,i=0,r=t.length;i<n;i++)t[r++]=e[i];return t.length=r,t},grep:function(t,e,n){for(var i=[],r=0,o=t.length,a=!n;r<o;r++)!e(t[r],r)!==a&&i.push(t[r]);return i},map:function(t,e,n){var i,r,o=0,a=[];if(w(t))for(i=t.length;o<i;o++)null!=(r=e(t[o],o,n))&&a.push(r);else for(o in t)null!=(r=e(t[o],o,n))&&a.push(r);return c.apply([],a)},guid:1,proxy:function(t,e){var n,i,r;if("string"==typeof e&&(n=t[e],e=t,t=n),g.isFunction(t))return i=s.call(arguments,2),(r=function(){return t.apply(e||this,i.concat(s.call(arguments)))}).guid=t.guid=t.guid||g.guid++,r},now:Date.now,support:f}),"function"==typeof Symbol&&(g.fn[Symbol.iterator]=o[Symbol.iterator]),g.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "),function(t,e){d["[object "+e+"]"]=e.toLowerCase()});var S=
  1495. /*!
  1496. * Sizzle CSS Selector Engine v2.2.1
  1497. * http://sizzlejs.com/
  1498. *
  1499. * Copyright jQuery Foundation and other contributors
  1500. * Released under the MIT license
  1501. * http://jquery.org/license
  1502. *
  1503. * Date: 2015-10-17
  1504. */
  1505. function(t){var e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m,v,y,b,w="sizzle"+1*new Date,S=t.document,x=0,M=0,E=rt(),C=rt(),A=rt(),T=function(t,e){return t===e&&(d=!0),0},O={}.hasOwnProperty,_=[],P=_.pop,I=_.push,k=_.push,D=_.slice,R=function(t,e){for(var n=0,i=t.length;n<i;n++)if(t[n]===e)return n;return-1},L="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",N="[\\x20\\t\\r\\n\\f]",j="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",V="\\["+N+"*("+j+")(?:"+N+"*([*^$|!~]?=)"+N+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+j+"))|)"+N+"*\\]",F=":("+j+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+V+")*)|.*)\\)|)",U=new RegExp(N+"+","g"),B=new RegExp("^"+N+"+|((?:^|[^\\\\])(?:\\\\.)*)"+N+"+$","g"),z=new RegExp("^"+N+"*,"+N+"*"),G=new RegExp("^"+N+"*([>+~]|"+N+")"+N+"*"),H=new RegExp("="+N+"*([^\\]'\"]*?)"+N+"*\\]","g"),W=new RegExp(F),q=new RegExp("^"+j+"$"),K={ID:new RegExp("^#("+j+")"),CLASS:new RegExp("^\\.("+j+")"),TAG:new RegExp("^("+j+"|[*])"),ATTR:new RegExp("^"+V),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+N+"*(even|odd|(([+-]|)(\\d*)n|)"+N+"*(?:([+-]|)"+N+"*(\\d+)|))"+N+"*\\)|)","i"),bool:new RegExp("^(?:"+L+")$","i"),needsContext:new RegExp("^"+N+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+N+"*((?:-\\d)?\\d*)"+N+"*\\)|)(?=[^-]|$)","i")},X=/^(?:input|select|textarea|button)$/i,Y=/^h\d$/i,Z=/^[^{]+\{\s*\[native \w/,J=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,Q=/[+~]/,$=/'|\\/g,tt=new RegExp("\\\\([\\da-f]{1,6}"+N+"?|("+N+")|.)","ig"),et=function(t,e,n){var i="0x"+e-65536;return i!=i||n?e:i<0?String.fromCharCode(i+65536):String.fromCharCode(i>>10|55296,1023&i|56320)},nt=function(){p()};try{k.apply(_=D.call(S.childNodes),S.childNodes),_[S.childNodes.length].nodeType}catch(t){k={apply:_.length?function(t,e){I.apply(t,D.call(e))}:function(t,e){for(var n=t.length,i=0;t[n++]=e[i++];);t.length=n-1}}}function it(t,e,i,r){var o,s,l,u,d,f,v,y,x=e&&e.ownerDocument,M=e?e.nodeType:9;if(i=i||[],"string"!=typeof t||!t||1!==M&&9!==M&&11!==M)return i;if(!r&&((e?e.ownerDocument||e:S)!==h&&p(e),e=e||h,g)){if(11!==M&&(f=J.exec(t)))if(o=f[1]){if(9===M){if(!(l=e.getElementById(o)))return i;if(l.id===o)return i.push(l),i}else if(x&&(l=x.getElementById(o))&&b(e,l)&&l.id===o)return i.push(l),i}else{if(f[2])return k.apply(i,e.getElementsByTagName(t)),i;if((o=f[3])&&n.getElementsByClassName&&e.getElementsByClassName)return k.apply(i,e.getElementsByClassName(o)),i}if(n.qsa&&!A[t+" "]&&(!m||!m.test(t))){if(1!==M)x=e,y=t;else if("object"!==e.nodeName.toLowerCase()){for((u=e.getAttribute("id"))?u=u.replace($,"\\$&"):e.setAttribute("id",u=w),s=(v=a(t)).length,d=q.test(u)?"#"+u:"[id='"+u+"']";s--;)v[s]=d+" "+ft(v[s]);y=v.join(","),x=Q.test(t)&&pt(e.parentNode)||e}if(y)try{return k.apply(i,x.querySelectorAll(y)),i}catch(t){}finally{u===w&&e.removeAttribute("id")}}}return c(t.replace(B,"$1"),e,i,r)}function rt(){var t=[];return function e(n,r){return t.push(n+" ")>i.cacheLength&&delete e[t.shift()],e[n+" "]=r}}function ot(t){return t[w]=!0,t}function at(t){var e=h.createElement("div");try{return!!t(e)}catch(t){return!1}finally{e.parentNode&&e.parentNode.removeChild(e),e=null}}function st(t,e){for(var n=t.split("|"),r=n.length;r--;)i.attrHandle[n[r]]=e}function ct(t,e){var n=e&&t,i=n&&1===t.nodeType&&1===e.nodeType&&(~e.sourceIndex||1<<31)-(~t.sourceIndex||1<<31);if(i)return i;if(n)for(;n=n.nextSibling;)if(n===e)return-1;return t?1:-1}function lt(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function ut(t){return function(e){var n=e.nodeName.toLowerCase();return("input"===n||"button"===n)&&e.type===t}}function dt(t){return ot(function(e){return e=+e,ot(function(n,i){for(var r,o=t([],n.length,e),a=o.length;a--;)n[r=o[a]]&&(n[r]=!(i[r]=n[r]))})})}function pt(t){return t&&void 0!==t.getElementsByTagName&&t}for(e in n=it.support={},o=it.isXML=function(t){var e=t&&(t.ownerDocument||t).documentElement;return!!e&&"HTML"!==e.nodeName},p=it.setDocument=function(t){var e,r,a=t?t.ownerDocument||t:S;return a!==h&&9===a.nodeType&&a.documentElement?(f=(h=a).documentElement,g=!o(h),(r=h.defaultView)&&r.top!==r&&(r.addEventListener?r.addEventListener("unload",nt,!1):r.attachEvent&&r.attachEvent("onunload",nt)),n.attributes=at(function(t){return t.className="i",!t.getAttribute("className")}),n.getElementsByTagName=at(function(t){return t.appendChild(h.createComment("")),!t.getElementsByTagName("*").length}),n.getElementsByClassName=Z.test(h.getElementsByClassName),n.getById=at(function(t){return f.appendChild(t).id=w,!h.getElementsByName||!h.getElementsByName(w).length}),n.getById?(i.find.ID=function(t,e){if(void 0!==e.getElementById&&g){var n=e.getElementById(t);return n?[n]:[]}},i.filter.ID=function(t){var e=t.replace(tt,et);return function(t){return t.getAttribute("id")===e}}):(delete i.find.ID,i.filter.ID=function(t){var e=t.replace(tt,et);return function(t){var n=void 0!==t.getAttributeNode&&t.getAttributeNode("id");return n&&n.value===e}}),i.find.TAG=n.getElementsByTagName?function(t,e){return void 0!==e.getElementsByTagName?e.getElementsByTagName(t):n.qsa?e.querySelectorAll(t):void 0}:function(t,e){var n,i=[],r=0,o=e.getElementsByTagName(t);if("*"===t){for(;n=o[r++];)1===n.nodeType&&i.push(n);return i}return o},i.find.CLASS=n.getElementsByClassName&&function(t,e){if(void 0!==e.getElementsByClassName&&g)return e.getElementsByClassName(t)},v=[],m=[],(n.qsa=Z.test(h.querySelectorAll))&&(at(function(t){f.appendChild(t).innerHTML="<a id='"+w+"'></a><select id='"+w+"-\r\\' msallowcapture=''><option selected=''></option></select>",t.querySelectorAll("[msallowcapture^='']").length&&m.push("[*^$]="+N+"*(?:''|\"\")"),t.querySelectorAll("[selected]").length||m.push("\\["+N+"*(?:value|"+L+")"),t.querySelectorAll("[id~="+w+"-]").length||m.push("~="),t.querySelectorAll(":checked").length||m.push(":checked"),t.querySelectorAll("a#"+w+"+*").length||m.push(".#.+[+~]")}),at(function(t){var e=h.createElement("input");e.setAttribute("type","hidden"),t.appendChild(e).setAttribute("name","D"),t.querySelectorAll("[name=d]").length&&m.push("name"+N+"*[*^$|!~]?="),t.querySelectorAll(":enabled").length||m.push(":enabled",":disabled"),t.querySelectorAll("*,:x"),m.push(",.*:")})),(n.matchesSelector=Z.test(y=f.matches||f.webkitMatchesSelector||f.mozMatchesSelector||f.oMatchesSelector||f.msMatchesSelector))&&at(function(t){n.disconnectedMatch=y.call(t,"div"),y.call(t,"[s!='']:x"),v.push("!=",F)}),m=m.length&&new RegExp(m.join("|")),v=v.length&&new RegExp(v.join("|")),e=Z.test(f.compareDocumentPosition),b=e||Z.test(f.contains)?function(t,e){var n=9===t.nodeType?t.documentElement:t,i=e&&e.parentNode;return t===i||!(!i||1!==i.nodeType||!(n.contains?n.contains(i):t.compareDocumentPosition&&16&t.compareDocumentPosition(i)))}:function(t,e){if(e)for(;e=e.parentNode;)if(e===t)return!0;return!1},T=e?function(t,e){if(t===e)return d=!0,0;var i=!t.compareDocumentPosition-!e.compareDocumentPosition;return i||(1&(i=(t.ownerDocument||t)===(e.ownerDocument||e)?t.compareDocumentPosition(e):1)||!n.sortDetached&&e.compareDocumentPosition(t)===i?t===h||t.ownerDocument===S&&b(S,t)?-1:e===h||e.ownerDocument===S&&b(S,e)?1:u?R(u,t)-R(u,e):0:4&i?-1:1)}:function(t,e){if(t===e)return d=!0,0;var n,i=0,r=t.parentNode,o=e.parentNode,a=[t],s=[e];if(!r||!o)return t===h?-1:e===h?1:r?-1:o?1:u?R(u,t)-R(u,e):0;if(r===o)return ct(t,e);for(n=t;n=n.parentNode;)a.unshift(n);for(n=e;n=n.parentNode;)s.unshift(n);for(;a[i]===s[i];)i++;return i?ct(a[i],s[i]):a[i]===S?-1:s[i]===S?1:0},h):h},it.matches=function(t,e){return it(t,null,null,e)},it.matchesSelector=function(t,e){if((t.ownerDocument||t)!==h&&p(t),e=e.replace(H,"='$1']"),n.matchesSelector&&g&&!A[e+" "]&&(!v||!v.test(e))&&(!m||!m.test(e)))try{var i=y.call(t,e);if(i||n.disconnectedMatch||t.document&&11!==t.document.nodeType)return i}catch(t){}return it(e,h,null,[t]).length>0},it.contains=function(t,e){return(t.ownerDocument||t)!==h&&p(t),b(t,e)},it.attr=function(t,e){(t.ownerDocument||t)!==h&&p(t);var r=i.attrHandle[e.toLowerCase()],o=r&&O.call(i.attrHandle,e.toLowerCase())?r(t,e,!g):void 0;return void 0!==o?o:n.attributes||!g?t.getAttribute(e):(o=t.getAttributeNode(e))&&o.specified?o.value:null},it.error=function(t){throw new Error("Syntax error, unrecognized expression: "+t)},it.uniqueSort=function(t){var e,i=[],r=0,o=0;if(d=!n.detectDuplicates,u=!n.sortStable&&t.slice(0),t.sort(T),d){for(;e=t[o++];)e===t[o]&&(r=i.push(o));for(;r--;)t.splice(i[r],1)}return u=null,t},r=it.getText=function(t){var e,n="",i=0,o=t.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof t.textContent)return t.textContent;for(t=t.firstChild;t;t=t.nextSibling)n+=r(t)}else if(3===o||4===o)return t.nodeValue}else for(;e=t[i++];)n+=r(e);return n},(i=it.selectors={cacheLength:50,createPseudo:ot,match:K,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(t){return t[1]=t[1].replace(tt,et),t[3]=(t[3]||t[4]||t[5]||"").replace(tt,et),"~="===t[2]&&(t[3]=" "+t[3]+" "),t.slice(0,4)},CHILD:function(t){return t[1]=t[1].toLowerCase(),"nth"===t[1].slice(0,3)?(t[3]||it.error(t[0]),t[4]=+(t[4]?t[5]+(t[6]||1):2*("even"===t[3]||"odd"===t[3])),t[5]=+(t[7]+t[8]||"odd"===t[3])):t[3]&&it.error(t[0]),t},PSEUDO:function(t){var e,n=!t[6]&&t[2];return K.CHILD.test(t[0])?null:(t[3]?t[2]=t[4]||t[5]||"":n&&W.test(n)&&(e=a(n,!0))&&(e=n.indexOf(")",n.length-e)-n.length)&&(t[0]=t[0].slice(0,e),t[2]=n.slice(0,e)),t.slice(0,3))}},filter:{TAG:function(t){var e=t.replace(tt,et).toLowerCase();return"*"===t?function(){return!0}:function(t){return t.nodeName&&t.nodeName.toLowerCase()===e}},CLASS:function(t){var e=E[t+" "];return e||(e=new RegExp("(^|"+N+")"+t+"("+N+"|$)"))&&E(t,function(t){return e.test("string"==typeof t.className&&t.className||void 0!==t.getAttribute&&t.getAttribute("class")||"")})},ATTR:function(t,e,n){return function(i){var r=it.attr(i,t);return null==r?"!="===e:!e||(r+="","="===e?r===n:"!="===e?r!==n:"^="===e?n&&0===r.indexOf(n):"*="===e?n&&r.indexOf(n)>-1:"$="===e?n&&r.slice(-n.length)===n:"~="===e?(" "+r.replace(U," ")+" ").indexOf(n)>-1:"|="===e&&(r===n||r.slice(0,n.length+1)===n+"-"))}},CHILD:function(t,e,n,i,r){var o="nth"!==t.slice(0,3),a="last"!==t.slice(-4),s="of-type"===e;return 1===i&&0===r?function(t){return!!t.parentNode}:function(e,n,c){var l,u,d,p,h,f,g=o!==a?"nextSibling":"previousSibling",m=e.parentNode,v=s&&e.nodeName.toLowerCase(),y=!c&&!s,b=!1;if(m){if(o){for(;g;){for(p=e;p=p[g];)if(s?p.nodeName.toLowerCase()===v:1===p.nodeType)return!1;f=g="only"===t&&!f&&"nextSibling"}return!0}if(f=[a?m.firstChild:m.lastChild],a&&y){for(b=(h=(l=(u=(d=(p=m)[w]||(p[w]={}))[p.uniqueID]||(d[p.uniqueID]={}))[t]||[])[0]===x&&l[1])&&l[2],p=h&&m.childNodes[h];p=++h&&p&&p[g]||(b=h=0)||f.pop();)if(1===p.nodeType&&++b&&p===e){u[t]=[x,h,b];break}}else if(y&&(b=h=(l=(u=(d=(p=e)[w]||(p[w]={}))[p.uniqueID]||(d[p.uniqueID]={}))[t]||[])[0]===x&&l[1]),!1===b)for(;(p=++h&&p&&p[g]||(b=h=0)||f.pop())&&((s?p.nodeName.toLowerCase()!==v:1!==p.nodeType)||!++b||(y&&((u=(d=p[w]||(p[w]={}))[p.uniqueID]||(d[p.uniqueID]={}))[t]=[x,b]),p!==e)););return(b-=r)===i||b%i==0&&b/i>=0}}},PSEUDO:function(t,e){var n,r=i.pseudos[t]||i.setFilters[t.toLowerCase()]||it.error("unsupported pseudo: "+t);return r[w]?r(e):r.length>1?(n=[t,t,"",e],i.setFilters.hasOwnProperty(t.toLowerCase())?ot(function(t,n){for(var i,o=r(t,e),a=o.length;a--;)t[i=R(t,o[a])]=!(n[i]=o[a])}):function(t){return r(t,0,n)}):r}},pseudos:{not:ot(function(t){var e=[],n=[],i=s(t.replace(B,"$1"));return i[w]?ot(function(t,e,n,r){for(var o,a=i(t,null,r,[]),s=t.length;s--;)(o=a[s])&&(t[s]=!(e[s]=o))}):function(t,r,o){return e[0]=t,i(e,null,o,n),e[0]=null,!n.pop()}}),has:ot(function(t){return function(e){return it(t,e).length>0}}),contains:ot(function(t){return t=t.replace(tt,et),function(e){return(e.textContent||e.innerText||r(e)).indexOf(t)>-1}}),lang:ot(function(t){return q.test(t||"")||it.error("unsupported lang: "+t),t=t.replace(tt,et).toLowerCase(),function(e){var n;do{if(n=g?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(n=n.toLowerCase())===t||0===n.indexOf(t+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var n=t.location&&t.location.hash;return n&&n.slice(1)===e.id},root:function(t){return t===f},focus:function(t){return t===h.activeElement&&(!h.hasFocus||h.hasFocus())&&!!(t.type||t.href||~t.tabIndex)},enabled:function(t){return!1===t.disabled},disabled:function(t){return!0===t.disabled},checked:function(t){var e=t.nodeName.toLowerCase();return"input"===e&&!!t.checked||"option"===e&&!!t.selected},selected:function(t){return t.parentNode&&t.parentNode.selectedIndex,!0===t.selected},empty:function(t){for(t=t.firstChild;t;t=t.nextSibling)if(t.nodeType<6)return!1;return!0},parent:function(t){return!i.pseudos.empty(t)},header:function(t){return Y.test(t.nodeName)},input:function(t){return X.test(t.nodeName)},button:function(t){var e=t.nodeName.toLowerCase();return"input"===e&&"button"===t.type||"button"===e},text:function(t){var e;return"input"===t.nodeName.toLowerCase()&&"text"===t.type&&(null==(e=t.getAttribute("type"))||"text"===e.toLowerCase())},first:dt(function(){return[0]}),last:dt(function(t,e){return[e-1]}),eq:dt(function(t,e,n){return[n<0?n+e:n]}),even:dt(function(t,e){for(var n=0;n<e;n+=2)t.push(n);return t}),odd:dt(function(t,e){for(var n=1;n<e;n+=2)t.push(n);return t}),lt:dt(function(t,e,n){for(var i=n<0?n+e:n;--i>=0;)t.push(i);return t}),gt:dt(function(t,e,n){for(var i=n<0?n+e:n;++i<e;)t.push(i);return t})}}).pseudos.nth=i.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})i.pseudos[e]=lt(e);for(e in{submit:!0,reset:!0})i.pseudos[e]=ut(e);function ht(){}function ft(t){for(var e=0,n=t.length,i="";e<n;e++)i+=t[e].value;return i}function gt(t,e,n){var i=e.dir,r=n&&"parentNode"===i,o=M++;return e.first?function(e,n,o){for(;e=e[i];)if(1===e.nodeType||r)return t(e,n,o)}:function(e,n,a){var s,c,l,u=[x,o];if(a){for(;e=e[i];)if((1===e.nodeType||r)&&t(e,n,a))return!0}else for(;e=e[i];)if(1===e.nodeType||r){if((s=(c=(l=e[w]||(e[w]={}))[e.uniqueID]||(l[e.uniqueID]={}))[i])&&s[0]===x&&s[1]===o)return u[2]=s[2];if(c[i]=u,u[2]=t(e,n,a))return!0}}}function mt(t){return t.length>1?function(e,n,i){for(var r=t.length;r--;)if(!t[r](e,n,i))return!1;return!0}:t[0]}function vt(t,e,n,i,r){for(var o,a=[],s=0,c=t.length,l=null!=e;s<c;s++)(o=t[s])&&(n&&!n(o,i,r)||(a.push(o),l&&e.push(s)));return a}function yt(t,e,n,i,r,o){return i&&!i[w]&&(i=yt(i)),r&&!r[w]&&(r=yt(r,o)),ot(function(o,a,s,c){var l,u,d,p=[],h=[],f=a.length,g=o||function(t,e,n){for(var i=0,r=e.length;i<r;i++)it(t,e[i],n);return n}(e||"*",s.nodeType?[s]:s,[]),m=!t||!o&&e?g:vt(g,p,t,s,c),v=n?r||(o?t:f||i)?[]:a:m;if(n&&n(m,v,s,c),i)for(l=vt(v,h),i(l,[],s,c),u=l.length;u--;)(d=l[u])&&(v[h[u]]=!(m[h[u]]=d));if(o){if(r||t){if(r){for(l=[],u=v.length;u--;)(d=v[u])&&l.push(m[u]=d);r(null,v=[],l,c)}for(u=v.length;u--;)(d=v[u])&&(l=r?R(o,d):p[u])>-1&&(o[l]=!(a[l]=d))}}else v=vt(v===a?v.splice(f,v.length):v),r?r(null,a,v,c):k.apply(a,v)})}function bt(t){for(var e,n,r,o=t.length,a=i.relative[t[0].type],s=a||i.relative[" "],c=a?1:0,u=gt(function(t){return t===e},s,!0),d=gt(function(t){return R(e,t)>-1},s,!0),p=[function(t,n,i){var r=!a&&(i||n!==l)||((e=n).nodeType?u(t,n,i):d(t,n,i));return e=null,r}];c<o;c++)if(n=i.relative[t[c].type])p=[gt(mt(p),n)];else{if((n=i.filter[t[c].type].apply(null,t[c].matches))[w]){for(r=++c;r<o&&!i.relative[t[r].type];r++);return yt(c>1&&mt(p),c>1&&ft(t.slice(0,c-1).concat({value:" "===t[c-2].type?"*":""})).replace(B,"$1"),n,c<r&&bt(t.slice(c,r)),r<o&&bt(t=t.slice(r)),r<o&&ft(t))}p.push(n)}return mt(p)}return ht.prototype=i.filters=i.pseudos,i.setFilters=new ht,a=it.tokenize=function(t,e){var n,r,o,a,s,c,l,u=C[t+" "];if(u)return e?0:u.slice(0);for(s=t,c=[],l=i.preFilter;s;){for(a in n&&!(r=z.exec(s))||(r&&(s=s.slice(r[0].length)||s),c.push(o=[])),n=!1,(r=G.exec(s))&&(n=r.shift(),o.push({value:n,type:r[0].replace(B," ")}),s=s.slice(n.length)),i.filter)!(r=K[a].exec(s))||l[a]&&!(r=l[a](r))||(n=r.shift(),o.push({value:n,type:a,matches:r}),s=s.slice(n.length));if(!n)break}return e?s.length:s?it.error(t):C(t,c).slice(0)},s=it.compile=function(t,e){var n,r=[],o=[],s=A[t+" "];if(!s){for(e||(e=a(t)),n=e.length;n--;)(s=bt(e[n]))[w]?r.push(s):o.push(s);(s=A(t,function(t,e){var n=e.length>0,r=t.length>0,o=function(o,a,s,c,u){var d,f,m,v=0,y="0",b=o&&[],w=[],S=l,M=o||r&&i.find.TAG("*",u),E=x+=null==S?1:Math.random()||.1,C=M.length;for(u&&(l=a===h||a||u);y!==C&&null!=(d=M[y]);y++){if(r&&d){for(f=0,a||d.ownerDocument===h||(p(d),s=!g);m=t[f++];)if(m(d,a||h,s)){c.push(d);break}u&&(x=E)}n&&((d=!m&&d)&&v--,o&&b.push(d))}if(v+=y,n&&y!==v){for(f=0;m=e[f++];)m(b,w,a,s);if(o){if(v>0)for(;y--;)b[y]||w[y]||(w[y]=P.call(c));w=vt(w)}k.apply(c,w),u&&!o&&w.length>0&&v+e.length>1&&it.uniqueSort(c)}return u&&(x=E,l=S),b};return n?ot(o):o}(o,r))).selector=t}return s},c=it.select=function(t,e,r,o){var c,l,u,d,p,h="function"==typeof t&&t,f=!o&&a(t=h.selector||t);if(r=r||[],1===f.length){if((l=f[0]=f[0].slice(0)).length>2&&"ID"===(u=l[0]).type&&n.getById&&9===e.nodeType&&g&&i.relative[l[1].type]){if(!(e=(i.find.ID(u.matches[0].replace(tt,et),e)||[])[0]))return r;h&&(e=e.parentNode),t=t.slice(l.shift().value.length)}for(c=K.needsContext.test(t)?0:l.length;c--&&(u=l[c],!i.relative[d=u.type]);)if((p=i.find[d])&&(o=p(u.matches[0].replace(tt,et),Q.test(l[0].type)&&pt(e.parentNode)||e))){if(l.splice(c,1),!(t=o.length&&ft(l)))return k.apply(r,o),r;break}}return(h||s(t,f))(o,e,!g,r,!e||Q.test(t)&&pt(e.parentNode)||e),r},n.sortStable=w.split("").sort(T).join("")===w,n.detectDuplicates=!!d,p(),n.sortDetached=at(function(t){return 1&t.compareDocumentPosition(h.createElement("div"))}),at(function(t){return t.innerHTML="<a href='#'></a>","#"===t.firstChild.getAttribute("href")})||st("type|href|height|width",function(t,e,n){if(!n)return t.getAttribute(e,"type"===e.toLowerCase()?1:2)}),n.attributes&&at(function(t){return t.innerHTML="<input/>",t.firstChild.setAttribute("value",""),""===t.firstChild.getAttribute("value")})||st("value",function(t,e,n){if(!n&&"input"===t.nodeName.toLowerCase())return t.defaultValue}),at(function(t){return null==t.getAttribute("disabled")})||st(L,function(t,e,n){var i;if(!n)return!0===t[e]?e.toLowerCase():(i=t.getAttributeNode(e))&&i.specified?i.value:null}),it}(n);g.find=S,g.expr=S.selectors,g.expr[":"]=g.expr.pseudos,g.uniqueSort=g.unique=S.uniqueSort,g.text=S.getText,g.isXMLDoc=S.isXML,g.contains=S.contains;var x=function(t,e,n){for(var i=[],r=void 0!==n;(t=t[e])&&9!==t.nodeType;)if(1===t.nodeType){if(r&&g(t).is(n))break;i.push(t)}return i},M=function(t,e){for(var n=[];t;t=t.nextSibling)1===t.nodeType&&t!==e&&n.push(t);return n},E=g.expr.match.needsContext,C=/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,A=/^.[^:#\[\.,]*$/;function T(t,e,n){if(g.isFunction(e))return g.grep(t,function(t,i){return!!e.call(t,i,t)!==n});if(e.nodeType)return g.grep(t,function(t){return t===e!==n});if("string"==typeof e){if(A.test(e))return g.filter(e,t,n);e=g.filter(e,t)}return g.grep(t,function(t){return u.call(e,t)>-1!==n})}g.filter=function(t,e,n){var i=e[0];return n&&(t=":not("+t+")"),1===e.length&&1===i.nodeType?g.find.matchesSelector(i,t)?[i]:[]:g.find.matches(t,g.grep(e,function(t){return 1===t.nodeType}))},g.fn.extend({find:function(t){var e,n=this.length,i=[],r=this;if("string"!=typeof t)return this.pushStack(g(t).filter(function(){for(e=0;e<n;e++)if(g.contains(r[e],this))return!0}));for(e=0;e<n;e++)g.find(t,r[e],i);return(i=this.pushStack(n>1?g.unique(i):i)).selector=this.selector?this.selector+" "+t:t,i},filter:function(t){return this.pushStack(T(this,t||[],!1))},not:function(t){return this.pushStack(T(this,t||[],!0))},is:function(t){return!!T(this,"string"==typeof t&&E.test(t)?g(t):t||[],!1).length}});var O,_=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/;(g.fn.init=function(t,e,n){var i,r;if(!t)return this;if(n=n||O,"string"==typeof t){if(!(i="<"===t[0]&&">"===t[t.length-1]&&t.length>=3?[null,t,null]:_.exec(t))||!i[1]&&e)return!e||e.jquery?(e||n).find(t):this.constructor(e).find(t);if(i[1]){if(e=e instanceof g?e[0]:e,g.merge(this,g.parseHTML(i[1],e&&e.nodeType?e.ownerDocument||e:a,!0)),C.test(i[1])&&g.isPlainObject(e))for(i in e)g.isFunction(this[i])?this[i](e[i]):this.attr(i,e[i]);return this}return(r=a.getElementById(i[2]))&&r.parentNode&&(this.length=1,this[0]=r),this.context=a,this.selector=t,this}return t.nodeType?(this.context=this[0]=t,this.length=1,this):g.isFunction(t)?void 0!==n.ready?n.ready(t):t(g):(void 0!==t.selector&&(this.selector=t.selector,this.context=t.context),g.makeArray(t,this))}).prototype=g.fn,O=g(a);var P=/^(?:parents|prev(?:Until|All))/,I={children:!0,contents:!0,next:!0,prev:!0};function k(t,e){for(;(t=t[e])&&1!==t.nodeType;);return t}g.fn.extend({has:function(t){var e=g(t,this),n=e.length;return this.filter(function(){for(var t=0;t<n;t++)if(g.contains(this,e[t]))return!0})},closest:function(t,e){for(var n,i=0,r=this.length,o=[],a=E.test(t)||"string"!=typeof t?g(t,e||this.context):0;i<r;i++)for(n=this[i];n&&n!==e;n=n.parentNode)if(n.nodeType<11&&(a?a.index(n)>-1:1===n.nodeType&&g.find.matchesSelector(n,t))){o.push(n);break}return this.pushStack(o.length>1?g.uniqueSort(o):o)},index:function(t){return t?"string"==typeof t?u.call(g(t),this[0]):u.call(this,t.jquery?t[0]:t):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(t,e){return this.pushStack(g.uniqueSort(g.merge(this.get(),g(t,e))))},addBack:function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}}),g.each({parent:function(t){var e=t.parentNode;return e&&11!==e.nodeType?e:null},parents:function(t){return x(t,"parentNode")},parentsUntil:function(t,e,n){return x(t,"parentNode",n)},next:function(t){return k(t,"nextSibling")},prev:function(t){return k(t,"previousSibling")},nextAll:function(t){return x(t,"nextSibling")},prevAll:function(t){return x(t,"previousSibling")},nextUntil:function(t,e,n){return x(t,"nextSibling",n)},prevUntil:function(t,e,n){return x(t,"previousSibling",n)},siblings:function(t){return M((t.parentNode||{}).firstChild,t)},children:function(t){return M(t.firstChild)},contents:function(t){return t.contentDocument||g.merge([],t.childNodes)}},function(t,e){g.fn[t]=function(n,i){var r=g.map(this,e,n);return"Until"!==t.slice(-5)&&(i=n),i&&"string"==typeof i&&(r=g.filter(i,r)),this.length>1&&(I[t]||g.uniqueSort(r),P.test(t)&&r.reverse()),this.pushStack(r)}});var D,R=/\S+/g;function L(){a.removeEventListener("DOMContentLoaded",L),n.removeEventListener("load",L),g.ready()}g.Callbacks=function(t){t="string"==typeof t?function(t){var e={};return g.each(t.match(R)||[],function(t,n){e[n]=!0}),e}(t):g.extend({},t);var e,n,i,r,o=[],a=[],s=-1,c=function(){for(r=t.once,i=e=!0;a.length;s=-1)for(n=a.shift();++s<o.length;)!1===o[s].apply(n[0],n[1])&&t.stopOnFalse&&(s=o.length,n=!1);t.memory||(n=!1),e=!1,r&&(o=n?[]:"")},l={add:function(){return o&&(n&&!e&&(s=o.length-1,a.push(n)),function e(n){g.each(n,function(n,i){g.isFunction(i)?t.unique&&l.has(i)||o.push(i):i&&i.length&&"string"!==g.type(i)&&e(i)})}(arguments),n&&!e&&c()),this},remove:function(){return g.each(arguments,function(t,e){for(var n;(n=g.inArray(e,o,n))>-1;)o.splice(n,1),n<=s&&s--}),this},has:function(t){return t?g.inArray(t,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return r=a=[],o=n="",this},disabled:function(){return!o},lock:function(){return r=a=[],n||(o=n=""),this},locked:function(){return!!r},fireWith:function(t,n){return r||(n=[t,(n=n||[]).slice?n.slice():n],a.push(n),e||c()),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!i}};return l},g.extend({Deferred:function(t){var e=[["resolve","done",g.Callbacks("once memory"),"resolved"],["reject","fail",g.Callbacks("once memory"),"rejected"],["notify","progress",g.Callbacks("memory")]],n="pending",i={state:function(){return n},always:function(){return r.done(arguments).fail(arguments),this},then:function(){var t=arguments;return g.Deferred(function(n){g.each(e,function(e,o){var a=g.isFunction(t[e])&&t[e];r[o[1]](function(){var t=a&&a.apply(this,arguments);t&&g.isFunction(t.promise)?t.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[o[0]+"With"](this===i?n.promise():this,a?[t]:arguments)})}),t=null}).promise()},promise:function(t){return null!=t?g.extend(t,i):i}},r={};return i.pipe=i.then,g.each(e,function(t,o){var a=o[2],s=o[3];i[o[1]]=a.add,s&&a.add(function(){n=s},e[1^t][2].disable,e[2][2].lock),r[o[0]]=function(){return r[o[0]+"With"](this===r?i:this,arguments),this},r[o[0]+"With"]=a.fireWith}),i.promise(r),t&&t.call(r,r),r},when:function(t){var e,n,i,r=0,o=s.call(arguments),a=o.length,c=1!==a||t&&g.isFunction(t.promise)?a:0,l=1===c?t:g.Deferred(),u=function(t,n,i){return function(r){n[t]=this,i[t]=arguments.length>1?s.call(arguments):r,i===e?l.notifyWith(n,i):--c||l.resolveWith(n,i)}};if(a>1)for(e=new Array(a),n=new Array(a),i=new Array(a);r<a;r++)o[r]&&g.isFunction(o[r].promise)?o[r].promise().progress(u(r,n,e)).done(u(r,i,o)).fail(l.reject):--c;return c||l.resolveWith(i,o),l.promise()}}),g.fn.ready=function(t){return g.ready.promise().done(t),this},g.extend({isReady:!1,readyWait:1,holdReady:function(t){t?g.readyWait++:g.ready(!0)},ready:function(t){(!0===t?--g.readyWait:g.isReady)||(g.isReady=!0,!0!==t&&--g.readyWait>0||(D.resolveWith(a,[g]),g.fn.triggerHandler&&(g(a).triggerHandler("ready"),g(a).off("ready"))))}}),g.ready.promise=function(t){return D||(D=g.Deferred(),"complete"===a.readyState||"loading"!==a.readyState&&!a.documentElement.doScroll?n.setTimeout(g.ready):(a.addEventListener("DOMContentLoaded",L),n.addEventListener("load",L))),D.promise(t)},g.ready.promise();var N=function(t,e,n,i,r,o,a){var s=0,c=t.length,l=null==n;if("object"===g.type(n))for(s in r=!0,n)N(t,e,s,n[s],!0,o,a);else if(void 0!==i&&(r=!0,g.isFunction(i)||(a=!0),l&&(a?(e.call(t,i),e=null):(l=e,e=function(t,e,n){return l.call(g(t),n)})),e))for(;s<c;s++)e(t[s],n,a?i:i.call(t[s],s,e(t[s],n)));return r?t:l?e.call(t):c?e(t[0],n):o},j=function(t){return 1===t.nodeType||9===t.nodeType||!+t.nodeType};function V(){this.expando=g.expando+V.uid++}V.uid=1,V.prototype={register:function(t,e){var n=e||{};return t.nodeType?t[this.expando]=n:Object.defineProperty(t,this.expando,{value:n,writable:!0,configurable:!0}),t[this.expando]},cache:function(t){if(!j(t))return{};var e=t[this.expando];return e||(e={},j(t)&&(t.nodeType?t[this.expando]=e:Object.defineProperty(t,this.expando,{value:e,configurable:!0}))),e},set:function(t,e,n){var i,r=this.cache(t);if("string"==typeof e)r[e]=n;else for(i in e)r[i]=e[i];return r},get:function(t,e){return void 0===e?this.cache(t):t[this.expando]&&t[this.expando][e]},access:function(t,e,n){var i;return void 0===e||e&&"string"==typeof e&&void 0===n?void 0!==(i=this.get(t,e))?i:this.get(t,g.camelCase(e)):(this.set(t,e,n),void 0!==n?n:e)},remove:function(t,e){var n,i,r,o=t[this.expando];if(void 0!==o){if(void 0===e)this.register(t);else{g.isArray(e)?i=e.concat(e.map(g.camelCase)):(r=g.camelCase(e),i=e in o?[e,r]:(i=r)in o?[i]:i.match(R)||[]),n=i.length;for(;n--;)delete o[i[n]]}(void 0===e||g.isEmptyObject(o))&&(t.nodeType?t[this.expando]=void 0:delete t[this.expando])}},hasData:function(t){var e=t[this.expando];return void 0!==e&&!g.isEmptyObject(e)}};var F=new V,U=new V,B=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,z=/[A-Z]/g;function G(t,e,n){var i;if(void 0===n&&1===t.nodeType)if(i="data-"+e.replace(z,"-$&").toLowerCase(),"string"==typeof(n=t.getAttribute(i))){try{n="true"===n||"false"!==n&&("null"===n?null:+n+""===n?+n:B.test(n)?g.parseJSON(n):n)}catch(t){}U.set(t,e,n)}else n=void 0;return n}g.extend({hasData:function(t){return U.hasData(t)||F.hasData(t)},data:function(t,e,n){return U.access(t,e,n)},removeData:function(t,e){U.remove(t,e)},_data:function(t,e,n){return F.access(t,e,n)},_removeData:function(t,e){F.remove(t,e)}}),g.fn.extend({data:function(t,e){var n,i,r,o=this[0],a=o&&o.attributes;if(void 0===t){if(this.length&&(r=U.get(o),1===o.nodeType&&!F.get(o,"hasDataAttrs"))){for(n=a.length;n--;)a[n]&&0===(i=a[n].name).indexOf("data-")&&(i=g.camelCase(i.slice(5)),G(o,i,r[i]));F.set(o,"hasDataAttrs",!0)}return r}return"object"==typeof t?this.each(function(){U.set(this,t)}):N(this,function(e){var n,i;if(o&&void 0===e)return void 0!==(n=U.get(o,t)||U.get(o,t.replace(z,"-$&").toLowerCase()))?n:(i=g.camelCase(t),void 0!==(n=U.get(o,i))||void 0!==(n=G(o,i,void 0))?n:void 0);i=g.camelCase(t),this.each(function(){var n=U.get(this,i);U.set(this,i,e),t.indexOf("-")>-1&&void 0!==n&&U.set(this,t,e)})},null,e,arguments.length>1,null,!0)},removeData:function(t){return this.each(function(){U.remove(this,t)})}}),g.extend({queue:function(t,e,n){var i;if(t)return e=(e||"fx")+"queue",i=F.get(t,e),n&&(!i||g.isArray(n)?i=F.access(t,e,g.makeArray(n)):i.push(n)),i||[]},dequeue:function(t,e){e=e||"fx";var n=g.queue(t,e),i=n.length,r=n.shift(),o=g._queueHooks(t,e);"inprogress"===r&&(r=n.shift(),i--),r&&("fx"===e&&n.unshift("inprogress"),delete o.stop,r.call(t,function(){g.dequeue(t,e)},o)),!i&&o&&o.empty.fire()},_queueHooks:function(t,e){var n=e+"queueHooks";return F.get(t,n)||F.access(t,n,{empty:g.Callbacks("once memory").add(function(){F.remove(t,[e+"queue",n])})})}}),g.fn.extend({queue:function(t,e){var n=2;return"string"!=typeof t&&(e=t,t="fx",n--),arguments.length<n?g.queue(this[0],t):void 0===e?this:this.each(function(){var n=g.queue(this,t,e);g._queueHooks(this,t),"fx"===t&&"inprogress"!==n[0]&&g.dequeue(this,t)})},dequeue:function(t){return this.each(function(){g.dequeue(this,t)})},clearQueue:function(t){return this.queue(t||"fx",[])},promise:function(t,e){var n,i=1,r=g.Deferred(),o=this,a=this.length,s=function(){--i||r.resolveWith(o,[o])};for("string"!=typeof t&&(e=t,t=void 0),t=t||"fx";a--;)(n=F.get(o[a],t+"queueHooks"))&&n.empty&&(i++,n.empty.add(s));return s(),r.promise(e)}});var H=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,W=new RegExp("^(?:([+-])=|)("+H+")([a-z%]*)$","i"),q=["Top","Right","Bottom","Left"],K=function(t,e){return t=e||t,"none"===g.css(t,"display")||!g.contains(t.ownerDocument,t)};function X(t,e,n,i){var r,o=1,a=20,s=i?function(){return i.cur()}:function(){return g.css(t,e,"")},c=s(),l=n&&n[3]||(g.cssNumber[e]?"":"px"),u=(g.cssNumber[e]||"px"!==l&&+c)&&W.exec(g.css(t,e));if(u&&u[3]!==l){l=l||u[3],n=n||[],u=+c||1;do{u/=o=o||".5",g.style(t,e,u+l)}while(o!==(o=s()/c)&&1!==o&&--a)}return n&&(u=+u||+c||0,r=n[1]?u+(n[1]+1)*n[2]:+n[2],i&&(i.unit=l,i.start=u,i.end=r)),r}var Y=/^(?:checkbox|radio)$/i,Z=/<([\w:-]+)/,J=/^$|\/(?:java|ecma)script/i,Q={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};function $(t,e){var n=void 0!==t.getElementsByTagName?t.getElementsByTagName(e||"*"):void 0!==t.querySelectorAll?t.querySelectorAll(e||"*"):[];return void 0===e||e&&g.nodeName(t,e)?g.merge([t],n):n}function tt(t,e){for(var n=0,i=t.length;n<i;n++)F.set(t[n],"globalEval",!e||F.get(e[n],"globalEval"))}Q.optgroup=Q.option,Q.tbody=Q.tfoot=Q.colgroup=Q.caption=Q.thead,Q.th=Q.td;var et,nt,it=/<|&#?\w+;/;function rt(t,e,n,i,r){for(var o,a,s,c,l,u,d=e.createDocumentFragment(),p=[],h=0,f=t.length;h<f;h++)if((o=t[h])||0===o)if("object"===g.type(o))g.merge(p,o.nodeType?[o]:o);else if(it.test(o)){for(a=a||d.appendChild(e.createElement("div")),s=(Z.exec(o)||["",""])[1].toLowerCase(),c=Q[s]||Q._default,a.innerHTML=c[1]+g.htmlPrefilter(o)+c[2],u=c[0];u--;)a=a.lastChild;g.merge(p,a.childNodes),(a=d.firstChild).textContent=""}else p.push(e.createTextNode(o));for(d.textContent="",h=0;o=p[h++];)if(i&&g.inArray(o,i)>-1)r&&r.push(o);else if(l=g.contains(o.ownerDocument,o),a=$(d.appendChild(o),"script"),l&&tt(a),n)for(u=0;o=a[u++];)J.test(o.type||"")&&n.push(o);return d}et=a.createDocumentFragment().appendChild(a.createElement("div")),(nt=a.createElement("input")).setAttribute("type","radio"),nt.setAttribute("checked","checked"),nt.setAttribute("name","t"),et.appendChild(nt),f.checkClone=et.cloneNode(!0).cloneNode(!0).lastChild.checked,et.innerHTML="<textarea>x</textarea>",f.noCloneChecked=!!et.cloneNode(!0).lastChild.defaultValue;var ot=/^key/,at=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,st=/^([^.]*)(?:\.(.+)|)/;function ct(){return!0}function lt(){return!1}function ut(){try{return a.activeElement}catch(t){}}function dt(t,e,n,i,r,o){var a,s;if("object"==typeof e){for(s in"string"!=typeof n&&(i=i||n,n=void 0),e)dt(t,s,n,i,e[s],o);return t}if(null==i&&null==r?(r=n,i=n=void 0):null==r&&("string"==typeof n?(r=i,i=void 0):(r=i,i=n,n=void 0)),!1===r)r=lt;else if(!r)return t;return 1===o&&(a=r,(r=function(t){return g().off(t),a.apply(this,arguments)}).guid=a.guid||(a.guid=g.guid++)),t.each(function(){g.event.add(this,e,r,i,n)})}g.event={global:{},add:function(t,e,n,i,r){var o,a,s,c,l,u,d,p,h,f,m,v=F.get(t);if(v)for(n.handler&&(n=(o=n).handler,r=o.selector),n.guid||(n.guid=g.guid++),(c=v.events)||(c=v.events={}),(a=v.handle)||(a=v.handle=function(e){return void 0!==g&&g.event.triggered!==e.type?g.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(R)||[""]).length;l--;)h=m=(s=st.exec(e[l])||[])[1],f=(s[2]||"").split(".").sort(),h&&(d=g.event.special[h]||{},h=(r?d.delegateType:d.bindType)||h,d=g.event.special[h]||{},u=g.extend({type:h,origType:m,data:i,handler:n,guid:n.guid,selector:r,needsContext:r&&g.expr.match.needsContext.test(r),namespace:f.join(".")},o),(p=c[h])||((p=c[h]=[]).delegateCount=0,d.setup&&!1!==d.setup.call(t,i,f,a)||t.addEventListener&&t.addEventListener(h,a)),d.add&&(d.add.call(t,u),u.handler.guid||(u.handler.guid=n.guid)),r?p.splice(p.delegateCount++,0,u):p.push(u),g.event.global[h]=!0)},remove:function(t,e,n,i,r){var o,a,s,c,l,u,d,p,h,f,m,v=F.hasData(t)&&F.get(t);if(v&&(c=v.events)){for(l=(e=(e||"").match(R)||[""]).length;l--;)if(h=m=(s=st.exec(e[l])||[])[1],f=(s[2]||"").split(".").sort(),h){for(d=g.event.special[h]||{},p=c[h=(i?d.delegateType:d.bindType)||h]||[],s=s[2]&&new RegExp("(^|\\.)"+f.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;o--;)u=p[o],!r&&m!==u.origType||n&&n.guid!==u.guid||s&&!s.test(u.namespace)||i&&i!==u.selector&&("**"!==i||!u.selector)||(p.splice(o,1),u.selector&&p.delegateCount--,d.remove&&d.remove.call(t,u));a&&!p.length&&(d.teardown&&!1!==d.teardown.call(t,f,v.handle)||g.removeEvent(t,h,v.handle),delete c[h])}else for(h in c)g.event.remove(t,h+e[l],n,i,!0);g.isEmptyObject(c)&&F.remove(t,"handle events")}},dispatch:function(t){t=g.event.fix(t);var e,n,i,r,o,a=[],c=s.call(arguments),l=(F.get(this,"events")||{})[t.type]||[],u=g.event.special[t.type]||{};if(c[0]=t,t.delegateTarget=this,!u.preDispatch||!1!==u.preDispatch.call(this,t)){for(a=g.event.handlers.call(this,t,l),e=0;(r=a[e++])&&!t.isPropagationStopped();)for(t.currentTarget=r.elem,n=0;(o=r.handlers[n++])&&!t.isImmediatePropagationStopped();)t.rnamespace&&!t.rnamespace.test(o.namespace)||(t.handleObj=o,t.data=o.data,void 0!==(i=((g.event.special[o.origType]||{}).handle||o.handler).apply(r.elem,c))&&!1===(t.result=i)&&(t.preventDefault(),t.stopPropagation()));return u.postDispatch&&u.postDispatch.call(this,t),t.result}},handlers:function(t,e){var n,i,r,o,a=[],s=e.delegateCount,c=t.target;if(s&&c.nodeType&&("click"!==t.type||isNaN(t.button)||t.button<1))for(;c!==this;c=c.parentNode||this)if(1===c.nodeType&&(!0!==c.disabled||"click"!==t.type)){for(i=[],n=0;n<s;n++)void 0===i[r=(o=e[n]).selector+" "]&&(i[r]=o.needsContext?g(r,this).index(c)>-1:g.find(r,this,null,[c]).length),i[r]&&i.push(o);i.length&&a.push({elem:c,handlers:i})}return s<e.length&&a.push({elem:this,handlers:e.slice(s)}),a},props:"altKey bubbles cancelable ctrlKey currentTarget detail eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(t,e){return null==t.which&&(t.which=null!=e.charCode?e.charCode:e.keyCode),t}},mouseHooks:{props:"button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(t,e){var n,i,r,o=e.button;return null==t.pageX&&null!=e.clientX&&(i=(n=t.target.ownerDocument||a).documentElement,r=n.body,t.pageX=e.clientX+(i&&i.scrollLeft||r&&r.scrollLeft||0)-(i&&i.clientLeft||r&&r.clientLeft||0),t.pageY=e.clientY+(i&&i.scrollTop||r&&r.scrollTop||0)-(i&&i.clientTop||r&&r.clientTop||0)),t.which||void 0===o||(t.which=1&o?1:2&o?3:4&o?2:0),t}},fix:function(t){if(t[g.expando])return t;var e,n,i,r=t.type,o=t,s=this.fixHooks[r];for(s||(this.fixHooks[r]=s=at.test(r)?this.mouseHooks:ot.test(r)?this.keyHooks:{}),i=s.props?this.props.concat(s.props):this.props,t=new g.Event(o),e=i.length;e--;)t[n=i[e]]=o[n];return t.target||(t.target=a),3===t.target.nodeType&&(t.target=t.target.parentNode),s.filter?s.filter(t,o):t},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==ut()&&this.focus)return this.focus(),!1},delegateType:"focusin"},blur:{trigger:function(){if(this===ut()&&this.blur)return this.blur(),!1},delegateType:"focusout"},click:{trigger:function(){if("checkbox"===this.type&&this.click&&g.nodeName(this,"input"))return this.click(),!1},_default:function(t){return g.nodeName(t.target,"a")}},beforeunload:{postDispatch:function(t){void 0!==t.result&&t.originalEvent&&(t.originalEvent.returnValue=t.result)}}}},g.removeEvent=function(t,e,n){t.removeEventListener&&t.removeEventListener(e,n)},g.Event=function(t,e){if(!(this instanceof g.Event))return new g.Event(t,e);t&&t.type?(this.originalEvent=t,this.type=t.type,this.isDefaultPrevented=t.defaultPrevented||void 0===t.defaultPrevented&&!1===t.returnValue?ct:lt):this.type=t,e&&g.extend(this,e),this.timeStamp=t&&t.timeStamp||g.now(),this[g.expando]=!0},g.Event.prototype={constructor:g.Event,isDefaultPrevented:lt,isPropagationStopped:lt,isImmediatePropagationStopped:lt,isSimulated:!1,preventDefault:function(){var t=this.originalEvent;this.isDefaultPrevented=ct,t&&!this.isSimulated&&t.preventDefault()},stopPropagation:function(){var t=this.originalEvent;this.isPropagationStopped=ct,t&&!this.isSimulated&&t.stopPropagation()},stopImmediatePropagation:function(){var t=this.originalEvent;this.isImmediatePropagationStopped=ct,t&&!this.isSimulated&&t.stopImmediatePropagation(),this.stopPropagation()}},g.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(t,e){g.event.special[t]={delegateType:e,bindType:e,handle:function(t){var n,i=t.relatedTarget,r=t.handleObj;return i&&(i===this||g.contains(this,i))||(t.type=r.origType,n=r.handler.apply(this,arguments),t.type=e),n}}}),g.fn.extend({on:function(t,e,n,i){return dt(this,t,e,n,i)},one:function(t,e,n,i){return dt(this,t,e,n,i,1)},off:function(t,e,n){var i,r;if(t&&t.preventDefault&&t.handleObj)return i=t.handleObj,g(t.delegateTarget).off(i.namespace?i.origType+"."+i.namespace:i.origType,i.selector,i.handler),this;if("object"==typeof t){for(r in t)this.off(r,e,t[r]);return this}return!1!==e&&"function"!=typeof e||(n=e,e=void 0),!1===n&&(n=lt),this.each(function(){g.event.remove(this,t,n,e)})}});var pt=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,ht=/<script|<style|<link/i,ft=/checked\s*(?:[^=]|=\s*.checked.)/i,gt=/^true\/(.*)/,mt=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;function vt(t,e){return g.nodeName(t,"table")&&g.nodeName(11!==e.nodeType?e:e.firstChild,"tr")?t.getElementsByTagName("tbody")[0]||t.appendChild(t.ownerDocument.createElement("tbody")):t}function yt(t){return t.type=(null!==t.getAttribute("type"))+"/"+t.type,t}function bt(t){var e=gt.exec(t.type);return e?t.type=e[1]:t.removeAttribute("type"),t}function wt(t,e){var n,i,r,o,a,s,c,l;if(1===e.nodeType){if(F.hasData(t)&&(o=F.access(t),a=F.set(e,o),l=o.events))for(r in delete a.handle,a.events={},l)for(n=0,i=l[r].length;n<i;n++)g.event.add(e,r,l[r][n]);U.hasData(t)&&(s=U.access(t),c=g.extend({},s),U.set(e,c))}}function St(t,e,n,i){e=c.apply([],e);var r,o,a,s,l,u,d=0,p=t.length,h=p-1,m=e[0],v=g.isFunction(m);if(v||p>1&&"string"==typeof m&&!f.checkClone&&ft.test(m))return t.each(function(r){var o=t.eq(r);v&&(e[0]=m.call(this,r,o.html())),St(o,e,n,i)});if(p&&(o=(r=rt(e,t[0].ownerDocument,!1,t,i)).firstChild,1===r.childNodes.length&&(r=o),o||i)){for(s=(a=g.map($(r,"script"),yt)).length;d<p;d++)l=r,d!==h&&(l=g.clone(l,!0,!0),s&&g.merge(a,$(l,"script"))),n.call(t[d],l,d);if(s)for(u=a[a.length-1].ownerDocument,g.map(a,bt),d=0;d<s;d++)l=a[d],J.test(l.type||"")&&!F.access(l,"globalEval")&&g.contains(u,l)&&(l.src?g._evalUrl&&g._evalUrl(l.src):g.globalEval(l.textContent.replace(mt,"")))}return t}function xt(t,e,n){for(var i,r=e?g.filter(e,t):t,o=0;null!=(i=r[o]);o++)n||1!==i.nodeType||g.cleanData($(i)),i.parentNode&&(n&&g.contains(i.ownerDocument,i)&&tt($(i,"script")),i.parentNode.removeChild(i));return t}g.extend({htmlPrefilter:function(t){return t.replace(pt,"<$1></$2>")},clone:function(t,e,n){var i,r,o,a,s,c,l,u=t.cloneNode(!0),d=g.contains(t.ownerDocument,t);if(!(f.noCloneChecked||1!==t.nodeType&&11!==t.nodeType||g.isXMLDoc(t)))for(a=$(u),i=0,r=(o=$(t)).length;i<r;i++)s=o[i],void 0,"input"===(l=(c=a[i]).nodeName.toLowerCase())&&Y.test(s.type)?c.checked=s.checked:"input"!==l&&"textarea"!==l||(c.defaultValue=s.defaultValue);if(e)if(n)for(o=o||$(t),a=a||$(u),i=0,r=o.length;i<r;i++)wt(o[i],a[i]);else wt(t,u);return(a=$(u,"script")).length>0&&tt(a,!d&&$(t,"script")),u},cleanData:function(t){for(var e,n,i,r=g.event.special,o=0;void 0!==(n=t[o]);o++)if(j(n)){if(e=n[F.expando]){if(e.events)for(i in e.events)r[i]?g.event.remove(n,i):g.removeEvent(n,i,e.handle);n[F.expando]=void 0}n[U.expando]&&(n[U.expando]=void 0)}}}),g.fn.extend({domManip:St,detach:function(t){return xt(this,t,!0)},remove:function(t){return xt(this,t)},text:function(t){return N(this,function(t){return void 0===t?g.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=t)})},null,t,arguments.length)},append:function(){return St(this,arguments,function(t){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||vt(this,t).appendChild(t)})},prepend:function(){return St(this,arguments,function(t){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var e=vt(this,t);e.insertBefore(t,e.firstChild)}})},before:function(){return St(this,arguments,function(t){this.parentNode&&this.parentNode.insertBefore(t,this)})},after:function(){return St(this,arguments,function(t){this.parentNode&&this.parentNode.insertBefore(t,this.nextSibling)})},empty:function(){for(var t,e=0;null!=(t=this[e]);e++)1===t.nodeType&&(g.cleanData($(t,!1)),t.textContent="");return this},clone:function(t,e){return t=null!=t&&t,e=null==e?t:e,this.map(function(){return g.clone(this,t,e)})},html:function(t){return N(this,function(t){var e=this[0]||{},n=0,i=this.length;if(void 0===t&&1===e.nodeType)return e.innerHTML;if("string"==typeof t&&!ht.test(t)&&!Q[(Z.exec(t)||["",""])[1].toLowerCase()]){t=g.htmlPrefilter(t);try{for(;n<i;n++)1===(e=this[n]||{}).nodeType&&(g.cleanData($(e,!1)),e.innerHTML=t);e=0}catch(t){}}e&&this.empty().append(t)},null,t,arguments.length)},replaceWith:function(){var t=[];return St(this,arguments,function(e){var n=this.parentNode;g.inArray(this,t)<0&&(g.cleanData($(this)),n&&n.replaceChild(e,this))},t)}}),g.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(t,e){g.fn[t]=function(t){for(var n,i=[],r=g(t),o=r.length-1,a=0;a<=o;a++)n=a===o?this:this.clone(!0),g(r[a])[e](n),l.apply(i,n.get());return this.pushStack(i)}});var Mt,Et={HTML:"block",BODY:"block"};function Ct(t,e){var n=g(e.createElement(t)).appendTo(e.body),i=g.css(n[0],"display");return n.detach(),i}function At(t){var e=a,n=Et[t];return n||("none"!==(n=Ct(t,e))&&n||((e=(Mt=(Mt||g("<iframe frameborder='0' width='0' height='0'/>")).appendTo(e.documentElement))[0].contentDocument).write(),e.close(),n=Ct(t,e),Mt.detach()),Et[t]=n),n}var Tt=/^margin/,Ot=new RegExp("^("+H+")(?!px)[a-z%]+$","i"),_t=function(t){var e=t.ownerDocument.defaultView;return e&&e.opener||(e=n),e.getComputedStyle(t)},Pt=function(t,e,n,i){var r,o,a={};for(o in e)a[o]=t.style[o],t.style[o]=e[o];for(o in r=n.apply(t,i||[]),e)t.style[o]=a[o];return r},It=a.documentElement;function kt(t,e,n){var i,r,o,a,s=t.style;return""!==(a=(n=n||_t(t))?n.getPropertyValue(e)||n[e]:void 0)&&void 0!==a||g.contains(t.ownerDocument,t)||(a=g.style(t,e)),n&&!f.pixelMarginRight()&&Ot.test(a)&&Tt.test(e)&&(i=s.width,r=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=i,s.minWidth=r,s.maxWidth=o),void 0!==a?a+"":a}function Dt(t,e){return{get:function(){if(!t())return(this.get=e).apply(this,arguments);delete this.get}}}!function(){var t,e,i,r,o=a.createElement("div"),s=a.createElement("div");function c(){s.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%",s.innerHTML="",It.appendChild(o);var a=n.getComputedStyle(s);t="1%"!==a.top,r="2px"===a.marginLeft,e="4px"===a.width,s.style.marginRight="50%",i="4px"===a.marginRight,It.removeChild(o)}s.style&&(s.style.backgroundClip="content-box",s.cloneNode(!0).style.backgroundClip="",f.clearCloneStyle="content-box"===s.style.backgroundClip,o.style.cssText="border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute",o.appendChild(s),g.extend(f,{pixelPosition:function(){return c(),t},boxSizingReliable:function(){return null==e&&c(),e},pixelMarginRight:function(){return null==e&&c(),i},reliableMarginLeft:function(){return null==e&&c(),r},reliableMarginRight:function(){var t,e=s.appendChild(a.createElement("div"));return e.style.cssText=s.style.cssText="-webkit-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",e.style.marginRight=e.style.width="0",s.style.width="1px",It.appendChild(o),t=!parseFloat(n.getComputedStyle(e).marginRight),It.removeChild(o),s.removeChild(e),t}}))}();var Rt=/^(none|table(?!-c[ea]).+)/,Lt={position:"absolute",visibility:"hidden",display:"block"},Nt={letterSpacing:"0",fontWeight:"400"},jt=["Webkit","O","Moz","ms"],Vt=a.createElement("div").style;function Ft(t){if(t in Vt)return t;for(var e=t[0].toUpperCase()+t.slice(1),n=jt.length;n--;)if((t=jt[n]+e)in Vt)return t}function Ut(t,e,n){var i=W.exec(e);return i?Math.max(0,i[2]-(n||0))+(i[3]||"px"):e}function Bt(t,e,n,i,r){for(var o=n===(i?"border":"content")?4:"width"===e?1:0,a=0;o<4;o+=2)"margin"===n&&(a+=g.css(t,n+q[o],!0,r)),i?("content"===n&&(a-=g.css(t,"padding"+q[o],!0,r)),"margin"!==n&&(a-=g.css(t,"border"+q[o]+"Width",!0,r))):(a+=g.css(t,"padding"+q[o],!0,r),"padding"!==n&&(a+=g.css(t,"border"+q[o]+"Width",!0,r)));return a}function zt(t,e,n){var i=!0,r="width"===e?t.offsetWidth:t.offsetHeight,o=_t(t),a="border-box"===g.css(t,"boxSizing",!1,o);if(r<=0||null==r){if(((r=kt(t,e,o))<0||null==r)&&(r=t.style[e]),Ot.test(r))return r;i=a&&(f.boxSizingReliable()||r===t.style[e]),r=parseFloat(r)||0}return r+Bt(t,e,n||(a?"border":"content"),i,o)+"px"}function Gt(t,e){for(var n,i,r,o=[],a=0,s=t.length;a<s;a++)(i=t[a]).style&&(o[a]=F.get(i,"olddisplay"),n=i.style.display,e?(o[a]||"none"!==n||(i.style.display=""),""===i.style.display&&K(i)&&(o[a]=F.access(i,"olddisplay",At(i.nodeName)))):(r=K(i),"none"===n&&r||F.set(i,"olddisplay",r?n:g.css(i,"display"))));for(a=0;a<s;a++)(i=t[a]).style&&(e&&"none"!==i.style.display&&""!==i.style.display||(i.style.display=e?o[a]||"":"none"));return t}function Ht(t,e,n,i,r){return new Ht.prototype.init(t,e,n,i,r)}g.extend({cssHooks:{opacity:{get:function(t,e){if(e){var n=kt(t,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{float:"cssFloat"},style:function(t,e,n,i){if(t&&3!==t.nodeType&&8!==t.nodeType&&t.style){var r,o,a,s=g.camelCase(e),c=t.style;if(e=g.cssProps[s]||(g.cssProps[s]=Ft(s)||s),a=g.cssHooks[e]||g.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(r=a.get(t,!1,i))?r:c[e];"string"==(o=typeof n)&&(r=W.exec(n))&&r[1]&&(n=X(t,e,r),o="number"),null!=n&&n==n&&("number"===o&&(n+=r&&r[3]||(g.cssNumber[s]?"":"px")),f.clearCloneStyle||""!==n||0!==e.indexOf("background")||(c[e]="inherit"),a&&"set"in a&&void 0===(n=a.set(t,n,i))||(c[e]=n))}},css:function(t,e,n,i){var r,o,a,s=g.camelCase(e);return e=g.cssProps[s]||(g.cssProps[s]=Ft(s)||s),(a=g.cssHooks[e]||g.cssHooks[s])&&"get"in a&&(r=a.get(t,!0,n)),void 0===r&&(r=kt(t,e,i)),"normal"===r&&e in Nt&&(r=Nt[e]),""===n||n?(o=parseFloat(r),!0===n||isFinite(o)?o||0:r):r}}),g.each(["height","width"],function(t,e){g.cssHooks[e]={get:function(t,n,i){if(n)return Rt.test(g.css(t,"display"))&&0===t.offsetWidth?Pt(t,Lt,function(){return zt(t,e,i)}):zt(t,e,i)},set:function(t,n,i){var r,o=i&&_t(t),a=i&&Bt(t,e,i,"border-box"===g.css(t,"boxSizing",!1,o),o);return a&&(r=W.exec(n))&&"px"!==(r[3]||"px")&&(t.style[e]=n,n=g.css(t,e)),Ut(0,n,a)}}}),g.cssHooks.marginLeft=Dt(f.reliableMarginLeft,function(t,e){if(e)return(parseFloat(kt(t,"marginLeft"))||t.getBoundingClientRect().left-Pt(t,{marginLeft:0},function(){return t.getBoundingClientRect().left}))+"px"}),g.cssHooks.marginRight=Dt(f.reliableMarginRight,function(t,e){if(e)return Pt(t,{display:"inline-block"},kt,[t,"marginRight"])}),g.each({margin:"",padding:"",border:"Width"},function(t,e){g.cssHooks[t+e]={expand:function(n){for(var i=0,r={},o="string"==typeof n?n.split(" "):[n];i<4;i++)r[t+q[i]+e]=o[i]||o[i-2]||o[0];return r}},Tt.test(t)||(g.cssHooks[t+e].set=Ut)}),g.fn.extend({css:function(t,e){return N(this,function(t,e,n){var i,r,o={},a=0;if(g.isArray(e)){for(i=_t(t),r=e.length;a<r;a++)o[e[a]]=g.css(t,e[a],!1,i);return o}return void 0!==n?g.style(t,e,n):g.css(t,e)},t,e,arguments.length>1)},show:function(){return Gt(this,!0)},hide:function(){return Gt(this)},toggle:function(t){return"boolean"==typeof t?t?this.show():this.hide():this.each(function(){K(this)?g(this).show():g(this).hide()})}}),g.Tween=Ht,Ht.prototype={constructor:Ht,init:function(t,e,n,i,r,o){this.elem=t,this.prop=n,this.easing=r||g.easing._default,this.options=e,this.start=this.now=this.cur(),this.end=i,this.unit=o||(g.cssNumber[n]?"":"px")},cur:function(){var t=Ht.propHooks[this.prop];return t&&t.get?t.get(this):Ht.propHooks._default.get(this)},run:function(t){var e,n=Ht.propHooks[this.prop];return this.options.duration?this.pos=e=g.easing[this.easing](t,this.options.duration*t,0,1,this.options.duration):this.pos=e=t,this.now=(this.end-this.start)*e+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):Ht.propHooks._default.set(this),this}},Ht.prototype.init.prototype=Ht.prototype,Ht.propHooks={_default:{get:function(t){var e;return 1!==t.elem.nodeType||null!=t.elem[t.prop]&&null==t.elem.style[t.prop]?t.elem[t.prop]:(e=g.css(t.elem,t.prop,""))&&"auto"!==e?e:0},set:function(t){g.fx.step[t.prop]?g.fx.step[t.prop](t):1!==t.elem.nodeType||null==t.elem.style[g.cssProps[t.prop]]&&!g.cssHooks[t.prop]?t.elem[t.prop]=t.now:g.style(t.elem,t.prop,t.now+t.unit)}}},Ht.propHooks.scrollTop=Ht.propHooks.scrollLeft={set:function(t){t.elem.nodeType&&t.elem.parentNode&&(t.elem[t.prop]=t.now)}},g.easing={linear:function(t){return t},swing:function(t){return.5-Math.cos(t*Math.PI)/2},_default:"swing"},g.fx=Ht.prototype.init,g.fx.step={};var Wt,qt,Kt=/^(?:toggle|show|hide)$/,Xt=/queueHooks$/;function Yt(){return n.setTimeout(function(){Wt=void 0}),Wt=g.now()}function Zt(t,e){var n,i=0,r={height:t};for(e=e?1:0;i<4;i+=2-e)r["margin"+(n=q[i])]=r["padding"+n]=t;return e&&(r.opacity=r.width=t),r}function Jt(t,e,n){for(var i,r=(Qt.tweeners[e]||[]).concat(Qt.tweeners["*"]),o=0,a=r.length;o<a;o++)if(i=r[o].call(n,e,t))return i}function Qt(t,e,n){var i,r,o=0,a=Qt.prefilters.length,s=g.Deferred().always(function(){delete c.elem}),c=function(){if(r)return!1;for(var e=Wt||Yt(),n=Math.max(0,l.startTime+l.duration-e),i=1-(n/l.duration||0),o=0,a=l.tweens.length;o<a;o++)l.tweens[o].run(i);return s.notifyWith(t,[l,i,n]),i<1&&a?n:(s.resolveWith(t,[l]),!1)},l=s.promise({elem:t,props:g.extend({},e),opts:g.extend(!0,{specialEasing:{},easing:g.easing._default},n),originalProperties:e,originalOptions:n,startTime:Wt||Yt(),duration:n.duration,tweens:[],createTween:function(e,n){var i=g.Tween(t,l.opts,e,n,l.opts.specialEasing[e]||l.opts.easing);return l.tweens.push(i),i},stop:function(e){var n=0,i=e?l.tweens.length:0;if(r)return this;for(r=!0;n<i;n++)l.tweens[n].run(1);return e?(s.notifyWith(t,[l,1,0]),s.resolveWith(t,[l,e])):s.rejectWith(t,[l,e]),this}}),u=l.props;for(function(t,e){var n,i,r,o,a;for(n in t)if(r=e[i=g.camelCase(n)],o=t[n],g.isArray(o)&&(r=o[1],o=t[n]=o[0]),n!==i&&(t[i]=o,delete t[n]),(a=g.cssHooks[i])&&"expand"in a)for(n in o=a.expand(o),delete t[i],o)n in t||(t[n]=o[n],e[n]=r);else e[i]=r}(u,l.opts.specialEasing);o<a;o++)if(i=Qt.prefilters[o].call(l,t,u,l.opts))return g.isFunction(i.stop)&&(g._queueHooks(l.elem,l.opts.queue).stop=g.proxy(i.stop,i)),i;return g.map(u,Jt,l),g.isFunction(l.opts.start)&&l.opts.start.call(t,l),g.fx.timer(g.extend(c,{elem:t,anim:l,queue:l.opts.queue})),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always)}g.Animation=g.extend(Qt,{tweeners:{"*":[function(t,e){var n=this.createTween(t,e);return X(n.elem,t,W.exec(e),n),n}]},tweener:function(t,e){g.isFunction(t)?(e=t,t=["*"]):t=t.match(R);for(var n,i=0,r=t.length;i<r;i++)n=t[i],Qt.tweeners[n]=Qt.tweeners[n]||[],Qt.tweeners[n].unshift(e)},prefilters:[function(t,e,n){var i,r,o,a,s,c,l,u=this,d={},p=t.style,h=t.nodeType&&K(t),f=F.get(t,"fxshow");for(i in n.queue||(null==(s=g._queueHooks(t,"fx")).unqueued&&(s.unqueued=0,c=s.empty.fire,s.empty.fire=function(){s.unqueued||c()}),s.unqueued++,u.always(function(){u.always(function(){s.unqueued--,g.queue(t,"fx").length||s.empty.fire()})})),1===t.nodeType&&("height"in e||"width"in e)&&(n.overflow=[p.overflow,p.overflowX,p.overflowY],"inline"===("none"===(l=g.css(t,"display"))?F.get(t,"olddisplay")||At(t.nodeName):l)&&"none"===g.css(t,"float")&&(p.display="inline-block")),n.overflow&&(p.overflow="hidden",u.always(function(){p.overflow=n.overflow[0],p.overflowX=n.overflow[1],p.overflowY=n.overflow[2]})),e)if(r=e[i],Kt.exec(r)){if(delete e[i],o=o||"toggle"===r,r===(h?"hide":"show")){if("show"!==r||!f||void 0===f[i])continue;h=!0}d[i]=f&&f[i]||g.style(t,i)}else l=void 0;if(g.isEmptyObject(d))"inline"===("none"===l?At(t.nodeName):l)&&(p.display=l);else for(i in f?"hidden"in f&&(h=f.hidden):f=F.access(t,"fxshow",{}),o&&(f.hidden=!h),h?g(t).show():u.done(function(){g(t).hide()}),u.done(function(){var e;for(e in F.remove(t,"fxshow"),d)g.style(t,e,d[e])}),d)a=Jt(h?f[i]:0,i,u),i in f||(f[i]=a.start,h&&(a.end=a.start,a.start="width"===i||"height"===i?1:0))}],prefilter:function(t,e){e?Qt.prefilters.unshift(t):Qt.prefilters.push(t)}}),g.speed=function(t,e,n){var i=t&&"object"==typeof t?g.extend({},t):{complete:n||!n&&e||g.isFunction(t)&&t,duration:t,easing:n&&e||e&&!g.isFunction(e)&&e};return i.duration=g.fx.off?0:"number"==typeof i.duration?i.duration:i.duration in g.fx.speeds?g.fx.speeds[i.duration]:g.fx.speeds._default,null!=i.queue&&!0!==i.queue||(i.queue="fx"),i.old=i.complete,i.complete=function(){g.isFunction(i.old)&&i.old.call(this),i.queue&&g.dequeue(this,i.queue)},i},g.fn.extend({fadeTo:function(t,e,n,i){return this.filter(K).css("opacity",0).show().end().animate({opacity:e},t,n,i)},animate:function(t,e,n,i){var r=g.isEmptyObject(t),o=g.speed(e,n,i),a=function(){var e=Qt(this,g.extend({},t),o);(r||F.get(this,"finish"))&&e.stop(!0)};return a.finish=a,r||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(t,e,n){var i=function(t){var e=t.stop;delete t.stop,e(n)};return"string"!=typeof t&&(n=e,e=t,t=void 0),e&&!1!==t&&this.queue(t||"fx",[]),this.each(function(){var e=!0,r=null!=t&&t+"queueHooks",o=g.timers,a=F.get(this);if(r)a[r]&&a[r].stop&&i(a[r]);else for(r in a)a[r]&&a[r].stop&&Xt.test(r)&&i(a[r]);for(r=o.length;r--;)o[r].elem!==this||null!=t&&o[r].queue!==t||(o[r].anim.stop(n),e=!1,o.splice(r,1));!e&&n||g.dequeue(this,t)})},finish:function(t){return!1!==t&&(t=t||"fx"),this.each(function(){var e,n=F.get(this),i=n[t+"queue"],r=n[t+"queueHooks"],o=g.timers,a=i?i.length:0;for(n.finish=!0,g.queue(this,t,[]),r&&r.stop&&r.stop.call(this,!0),e=o.length;e--;)o[e].elem===this&&o[e].queue===t&&(o[e].anim.stop(!0),o.splice(e,1));for(e=0;e<a;e++)i[e]&&i[e].finish&&i[e].finish.call(this);delete n.finish})}}),g.each(["toggle","show","hide"],function(t,e){var n=g.fn[e];g.fn[e]=function(t,i,r){return null==t||"boolean"==typeof t?n.apply(this,arguments):this.animate(Zt(e,!0),t,i,r)}}),g.each({slideDown:Zt("show"),slideUp:Zt("hide"),slideToggle:Zt("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(t,e){g.fn[t]=function(t,n,i){return this.animate(e,t,n,i)}}),g.timers=[],g.fx.tick=function(){var t,e=0,n=g.timers;for(Wt=g.now();e<n.length;e++)(t=n[e])()||n[e]!==t||n.splice(e--,1);n.length||g.fx.stop(),Wt=void 0},g.fx.timer=function(t){g.timers.push(t),t()?g.fx.start():g.timers.pop()},g.fx.interval=13,g.fx.start=function(){qt||(qt=n.setInterval(g.fx.tick,g.fx.interval))},g.fx.stop=function(){n.clearInterval(qt),qt=null},g.fx.speeds={slow:600,fast:200,_default:400},g.fn.delay=function(t,e){return t=g.fx&&g.fx.speeds[t]||t,e=e||"fx",this.queue(e,function(e,i){var r=n.setTimeout(e,t);i.stop=function(){n.clearTimeout(r)}})},function(){var t=a.createElement("input"),e=a.createElement("select"),n=e.appendChild(a.createElement("option"));t.type="checkbox",f.checkOn=""!==t.value,f.optSelected=n.selected,e.disabled=!0,f.optDisabled=!n.disabled,(t=a.createElement("input")).value="t",t.type="radio",f.radioValue="t"===t.value}();var $t,te=g.expr.attrHandle;g.fn.extend({attr:function(t,e){return N(this,g.attr,t,e,arguments.length>1)},removeAttr:function(t){return this.each(function(){g.removeAttr(this,t)})}}),g.extend({attr:function(t,e,n){var i,r,o=t.nodeType;if(3!==o&&8!==o&&2!==o)return void 0===t.getAttribute?g.prop(t,e,n):(1===o&&g.isXMLDoc(t)||(e=e.toLowerCase(),r=g.attrHooks[e]||(g.expr.match.bool.test(e)?$t:void 0)),void 0!==n?null===n?void g.removeAttr(t,e):r&&"set"in r&&void 0!==(i=r.set(t,n,e))?i:(t.setAttribute(e,n+""),n):r&&"get"in r&&null!==(i=r.get(t,e))?i:null==(i=g.find.attr(t,e))?void 0:i)},attrHooks:{type:{set:function(t,e){if(!f.radioValue&&"radio"===e&&g.nodeName(t,"input")){var n=t.value;return t.setAttribute("type",e),n&&(t.value=n),e}}}},removeAttr:function(t,e){var n,i,r=0,o=e&&e.match(R);if(o&&1===t.nodeType)for(;n=o[r++];)i=g.propFix[n]||n,g.expr.match.bool.test(n)&&(t[i]=!1),t.removeAttribute(n)}}),$t={set:function(t,e,n){return!1===e?g.removeAttr(t,n):t.setAttribute(n,n),n}},g.each(g.expr.match.bool.source.match(/\w+/g),function(t,e){var n=te[e]||g.find.attr;te[e]=function(t,e,i){var r,o;return i||(o=te[e],te[e]=r,r=null!=n(t,e,i)?e.toLowerCase():null,te[e]=o),r}});var ee=/^(?:input|select|textarea|button)$/i,ne=/^(?:a|area)$/i;g.fn.extend({prop:function(t,e){return N(this,g.prop,t,e,arguments.length>1)},removeProp:function(t){return this.each(function(){delete this[g.propFix[t]||t]})}}),g.extend({prop:function(t,e,n){var i,r,o=t.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&g.isXMLDoc(t)||(e=g.propFix[e]||e,r=g.propHooks[e]),void 0!==n?r&&"set"in r&&void 0!==(i=r.set(t,n,e))?i:t[e]=n:r&&"get"in r&&null!==(i=r.get(t,e))?i:t[e]},propHooks:{tabIndex:{get:function(t){var e=g.find.attr(t,"tabindex");return e?parseInt(e,10):ee.test(t.nodeName)||ne.test(t.nodeName)&&t.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),f.optSelected||(g.propHooks.selected={get:function(t){var e=t.parentNode;return e&&e.parentNode&&e.parentNode.selectedIndex,null},set:function(t){var e=t.parentNode;e&&(e.selectedIndex,e.parentNode&&e.parentNode.selectedIndex)}}),g.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){g.propFix[this.toLowerCase()]=this});var ie=/[\t\r\n\f]/g;function re(t){return t.getAttribute&&t.getAttribute("class")||""}g.fn.extend({addClass:function(t){var e,n,i,r,o,a,s,c=0;if(g.isFunction(t))return this.each(function(e){g(this).addClass(t.call(this,e,re(this)))});if("string"==typeof t&&t)for(e=t.match(R)||[];n=this[c++];)if(r=re(n),i=1===n.nodeType&&(" "+r+" ").replace(ie," ")){for(a=0;o=e[a++];)i.indexOf(" "+o+" ")<0&&(i+=o+" ");r!==(s=g.trim(i))&&n.setAttribute("class",s)}return this},removeClass:function(t){var e,n,i,r,o,a,s,c=0;if(g.isFunction(t))return this.each(function(e){g(this).removeClass(t.call(this,e,re(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof t&&t)for(e=t.match(R)||[];n=this[c++];)if(r=re(n),i=1===n.nodeType&&(" "+r+" ").replace(ie," ")){for(a=0;o=e[a++];)for(;i.indexOf(" "+o+" ")>-1;)i=i.replace(" "+o+" "," ");r!==(s=g.trim(i))&&n.setAttribute("class",s)}return this},toggleClass:function(t,e){var n=typeof t;return"boolean"==typeof e&&"string"===n?e?this.addClass(t):this.removeClass(t):g.isFunction(t)?this.each(function(n){g(this).toggleClass(t.call(this,n,re(this),e),e)}):this.each(function(){var e,i,r,o;if("string"===n)for(i=0,r=g(this),o=t.match(R)||[];e=o[i++];)r.hasClass(e)?r.removeClass(e):r.addClass(e);else void 0!==t&&"boolean"!==n||((e=re(this))&&F.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===t?"":F.get(this,"__className__")||""))})},hasClass:function(t){var e,n,i=0;for(e=" "+t+" ";n=this[i++];)if(1===n.nodeType&&(" "+re(n)+" ").replace(ie," ").indexOf(e)>-1)return!0;return!1}});var oe=/\r/g,ae=/[\x20\t\r\n\f]+/g;g.fn.extend({val:function(t){var e,n,i,r=this[0];return arguments.length?(i=g.isFunction(t),this.each(function(n){var r;1===this.nodeType&&(null==(r=i?t.call(this,n,g(this).val()):t)?r="":"number"==typeof r?r+="":g.isArray(r)&&(r=g.map(r,function(t){return null==t?"":t+""})),(e=g.valHooks[this.type]||g.valHooks[this.nodeName.toLowerCase()])&&"set"in e&&void 0!==e.set(this,r,"value")||(this.value=r))})):r?(e=g.valHooks[r.type]||g.valHooks[r.nodeName.toLowerCase()])&&"get"in e&&void 0!==(n=e.get(r,"value"))?n:"string"==typeof(n=r.value)?n.replace(oe,""):null==n?"":n:void 0}}),g.extend({valHooks:{option:{get:function(t){var e=g.find.attr(t,"value");return null!=e?e:g.trim(g.text(t)).replace(ae," ")}},select:{get:function(t){for(var e,n,i=t.options,r=t.selectedIndex,o="select-one"===t.type||r<0,a=o?null:[],s=o?r+1:i.length,c=r<0?s:o?r:0;c<s;c++)if(((n=i[c]).selected||c===r)&&(f.optDisabled?!n.disabled:null===n.getAttribute("disabled"))&&(!n.parentNode.disabled||!g.nodeName(n.parentNode,"optgroup"))){if(e=g(n).val(),o)return e;a.push(e)}return a},set:function(t,e){for(var n,i,r=t.options,o=g.makeArray(e),a=r.length;a--;)((i=r[a]).selected=g.inArray(g.valHooks.option.get(i),o)>-1)&&(n=!0);return n||(t.selectedIndex=-1),o}}}}),g.each(["radio","checkbox"],function(){g.valHooks[this]={set:function(t,e){if(g.isArray(e))return t.checked=g.inArray(g(t).val(),e)>-1}},f.checkOn||(g.valHooks[this].get=function(t){return null===t.getAttribute("value")?"on":t.value})});var se=/^(?:focusinfocus|focusoutblur)$/;g.extend(g.event,{trigger:function(t,e,i,r){var o,s,c,l,u,d,p,f=[i||a],m=h.call(t,"type")?t.type:t,v=h.call(t,"namespace")?t.namespace.split("."):[];if(s=c=i=i||a,3!==i.nodeType&&8!==i.nodeType&&!se.test(m+g.event.triggered)&&(m.indexOf(".")>-1&&(m=(v=m.split(".")).shift(),v.sort()),u=m.indexOf(":")<0&&"on"+m,(t=t[g.expando]?t:new g.Event(m,"object"==typeof t&&t)).isTrigger=r?2:3,t.namespace=v.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+v.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=i),e=null==e?[t]:g.makeArray(e,[t]),p=g.event.special[m]||{},r||!p.trigger||!1!==p.trigger.apply(i,e))){if(!r&&!p.noBubble&&!g.isWindow(i)){for(l=p.delegateType||m,se.test(l+m)||(s=s.parentNode);s;s=s.parentNode)f.push(s),c=s;c===(i.ownerDocument||a)&&f.push(c.defaultView||c.parentWindow||n)}for(o=0;(s=f[o++])&&!t.isPropagationStopped();)t.type=o>1?l:p.bindType||m,(d=(F.get(s,"events")||{})[t.type]&&F.get(s,"handle"))&&d.apply(s,e),(d=u&&s[u])&&d.apply&&j(s)&&(t.result=d.apply(s,e),!1===t.result&&t.preventDefault());return t.type=m,r||t.isDefaultPrevented()||p._default&&!1!==p._default.apply(f.pop(),e)||!j(i)||u&&g.isFunction(i[m])&&!g.isWindow(i)&&((c=i[u])&&(i[u]=null),g.event.triggered=m,i[m](),g.event.triggered=void 0,c&&(i[u]=c)),t.result}},simulate:function(t,e,n){var i=g.extend(new g.Event,n,{type:t,isSimulated:!0});g.event.trigger(i,null,e)}}),g.fn.extend({trigger:function(t,e){return this.each(function(){g.event.trigger(t,e,this)})},triggerHandler:function(t,e){var n=this[0];if(n)return g.event.trigger(t,e,n,!0)}}),g.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(t,e){g.fn[e]=function(t,n){return arguments.length>0?this.on(e,null,t,n):this.trigger(e)}}),g.fn.extend({hover:function(t,e){return this.mouseenter(t).mouseleave(e||t)}}),f.focusin="onfocusin"in n,f.focusin||g.each({focus:"focusin",blur:"focusout"},function(t,e){var n=function(t){g.event.simulate(e,t.target,g.event.fix(t))};g.event.special[e]={setup:function(){var i=this.ownerDocument||this,r=F.access(i,e);r||i.addEventListener(t,n,!0),F.access(i,e,(r||0)+1)},teardown:function(){var i=this.ownerDocument||this,r=F.access(i,e)-1;r?F.access(i,e,r):(i.removeEventListener(t,n,!0),F.remove(i,e))}}});var ce=n.location,le=g.now(),ue=/\?/;g.parseJSON=function(t){return JSON.parse(t+"")},g.parseXML=function(t){var e;if(!t||"string"!=typeof t)return null;try{e=(new n.DOMParser).parseFromString(t,"text/xml")}catch(t){e=void 0}return e&&!e.getElementsByTagName("parsererror").length||g.error("Invalid XML: "+t),e};var de=/#.*$/,pe=/([?&])_=[^&]*/,he=/^(.*?):[ \t]*([^\r\n]*)$/gm,fe=/^(?:GET|HEAD)$/,ge=/^\/\//,me={},ve={},ye="*/".concat("*"),be=a.createElement("a");function we(t){return function(e,n){"string"!=typeof e&&(n=e,e="*");var i,r=0,o=e.toLowerCase().match(R)||[];if(g.isFunction(n))for(;i=o[r++];)"+"===i[0]?(i=i.slice(1)||"*",(t[i]=t[i]||[]).unshift(n)):(t[i]=t[i]||[]).push(n)}}function Se(t,e,n,i){var r={},o=t===ve;function a(s){var c;return r[s]=!0,g.each(t[s]||[],function(t,s){var l=s(e,n,i);return"string"!=typeof l||o||r[l]?o?!(c=l):void 0:(e.dataTypes.unshift(l),a(l),!1)}),c}return a(e.dataTypes[0])||!r["*"]&&a("*")}function xe(t,e){var n,i,r=g.ajaxSettings.flatOptions||{};for(n in e)void 0!==e[n]&&((r[n]?t:i||(i={}))[n]=e[n]);return i&&g.extend(!0,t,i),t}be.href=ce.href,g.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:ce.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(ce.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":ye,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":g.parseJSON,"text xml":g.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(t,e){return e?xe(xe(t,g.ajaxSettings),e):xe(g.ajaxSettings,t)},ajaxPrefilter:we(me),ajaxTransport:we(ve),ajax:function(t,e){"object"==typeof t&&(e=t,t=void 0),e=e||{};var i,r,o,s,c,l,u,d,p=g.ajaxSetup({},e),h=p.context||p,f=p.context&&(h.nodeType||h.jquery)?g(h):g.event,m=g.Deferred(),v=g.Callbacks("once memory"),y=p.statusCode||{},b={},w={},S=0,x="canceled",M={readyState:0,getResponseHeader:function(t){var e;if(2===S){if(!s)for(s={};e=he.exec(o);)s[e[1].toLowerCase()]=e[2];e=s[t.toLowerCase()]}return null==e?null:e},getAllResponseHeaders:function(){return 2===S?o:null},setRequestHeader:function(t,e){var n=t.toLowerCase();return S||(t=w[n]=w[n]||t,b[t]=e),this},overrideMimeType:function(t){return S||(p.mimeType=t),this},statusCode:function(t){var e;if(t)if(S<2)for(e in t)y[e]=[y[e],t[e]];else M.always(t[M.status]);return this},abort:function(t){var e=t||x;return i&&i.abort(e),E(0,e),this}};if(m.promise(M).complete=v.add,M.success=M.done,M.error=M.fail,p.url=((t||p.url||ce.href)+"").replace(de,"").replace(ge,ce.protocol+"//"),p.type=e.method||e.type||p.method||p.type,p.dataTypes=g.trim(p.dataType||"*").toLowerCase().match(R)||[""],null==p.crossDomain){l=a.createElement("a");try{l.href=p.url,l.href=l.href,p.crossDomain=be.protocol+"//"+be.host!=l.protocol+"//"+l.host}catch(t){p.crossDomain=!0}}if(p.data&&p.processData&&"string"!=typeof p.data&&(p.data=g.param(p.data,p.traditional)),Se(me,p,e,M),2===S)return M;for(d in(u=g.event&&p.global)&&0==g.active++&&g.event.trigger("ajaxStart"),p.type=p.type.toUpperCase(),p.hasContent=!fe.test(p.type),r=p.url,p.hasContent||(p.data&&(r=p.url+=(ue.test(r)?"&":"?")+p.data,delete p.data),!1===p.cache&&(p.url=pe.test(r)?r.replace(pe,"$1_="+le++):r+(ue.test(r)?"&":"?")+"_="+le++)),p.ifModified&&(g.lastModified[r]&&M.setRequestHeader("If-Modified-Since",g.lastModified[r]),g.etag[r]&&M.setRequestHeader("If-None-Match",g.etag[r])),(p.data&&p.hasContent&&!1!==p.contentType||e.contentType)&&M.setRequestHeader("Content-Type",p.contentType),M.setRequestHeader("Accept",p.dataTypes[0]&&p.accepts[p.dataTypes[0]]?p.accepts[p.dataTypes[0]]+("*"!==p.dataTypes[0]?", "+ye+"; q=0.01":""):p.accepts["*"]),p.headers)M.setRequestHeader(d,p.headers[d]);if(p.beforeSend&&(!1===p.beforeSend.call(h,M,p)||2===S))return M.abort();for(d in x="abort",{success:1,error:1,complete:1})M[d](p[d]);if(i=Se(ve,p,e,M)){if(M.readyState=1,u&&f.trigger("ajaxSend",[M,p]),2===S)return M;p.async&&p.timeout>0&&(c=n.setTimeout(function(){M.abort("timeout")},p.timeout));try{S=1,i.send(b,E)}catch(t){if(!(S<2))throw t;E(-1,t)}}else E(-1,"No Transport");function E(t,e,a,s){var l,d,b,w,x,E=e;2!==S&&(S=2,c&&n.clearTimeout(c),i=void 0,o=s||"",M.readyState=t>0?4:0,l=t>=200&&t<300||304===t,a&&(w=function(t,e,n){for(var i,r,o,a,s=t.contents,c=t.dataTypes;"*"===c[0];)c.shift(),void 0===i&&(i=t.mimeType||e.getResponseHeader("Content-Type"));if(i)for(r in s)if(s[r]&&s[r].test(i)){c.unshift(r);break}if(c[0]in n)o=c[0];else{for(r in n){if(!c[0]||t.converters[r+" "+c[0]]){o=r;break}a||(a=r)}o=o||a}if(o)return o!==c[0]&&c.unshift(o),n[o]}(p,M,a)),w=function(t,e,n,i){var r,o,a,s,c,l={},u=t.dataTypes.slice();if(u[1])for(a in t.converters)l[a.toLowerCase()]=t.converters[a];for(o=u.shift();o;)if(t.responseFields[o]&&(n[t.responseFields[o]]=e),!c&&i&&t.dataFilter&&(e=t.dataFilter(e,t.dataType)),c=o,o=u.shift())if("*"===o)o=c;else if("*"!==c&&c!==o){if(!(a=l[c+" "+o]||l["* "+o]))for(r in l)if((s=r.split(" "))[1]===o&&(a=l[c+" "+s[0]]||l["* "+s[0]])){!0===a?a=l[r]:!0!==l[r]&&(o=s[0],u.unshift(s[1]));break}if(!0!==a)if(a&&t.throws)e=a(e);else try{e=a(e)}catch(t){return{state:"parsererror",error:a?t:"No conversion from "+c+" to "+o}}}return{state:"success",data:e}}(p,w,M,l),l?(p.ifModified&&((x=M.getResponseHeader("Last-Modified"))&&(g.lastModified[r]=x),(x=M.getResponseHeader("etag"))&&(g.etag[r]=x)),204===t||"HEAD"===p.type?E="nocontent":304===t?E="notmodified":(E=w.state,d=w.data,l=!(b=w.error))):(b=E,!t&&E||(E="error",t<0&&(t=0))),M.status=t,M.statusText=(e||E)+"",l?m.resolveWith(h,[d,E,M]):m.rejectWith(h,[M,E,b]),M.statusCode(y),y=void 0,u&&f.trigger(l?"ajaxSuccess":"ajaxError",[M,p,l?d:b]),v.fireWith(h,[M,E]),u&&(f.trigger("ajaxComplete",[M,p]),--g.active||g.event.trigger("ajaxStop")))}return M},getJSON:function(t,e,n){return g.get(t,e,n,"json")},getScript:function(t,e){return g.get(t,void 0,e,"script")}}),g.each(["get","post"],function(t,e){g[e]=function(t,n,i,r){return g.isFunction(n)&&(r=r||i,i=n,n=void 0),g.ajax(g.extend({url:t,type:e,dataType:r,data:n,success:i},g.isPlainObject(t)&&t))}}),g._evalUrl=function(t){return g.ajax({url:t,type:"GET",dataType:"script",async:!1,global:!1,throws:!0})},g.fn.extend({wrapAll:function(t){var e;return g.isFunction(t)?this.each(function(e){g(this).wrapAll(t.call(this,e))}):(this[0]&&(e=g(t,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&e.insertBefore(this[0]),e.map(function(){for(var t=this;t.firstElementChild;)t=t.firstElementChild;return t}).append(this)),this)},wrapInner:function(t){return g.isFunction(t)?this.each(function(e){g(this).wrapInner(t.call(this,e))}):this.each(function(){var e=g(this),n=e.contents();n.length?n.wrapAll(t):e.append(t)})},wrap:function(t){var e=g.isFunction(t);return this.each(function(n){g(this).wrapAll(e?t.call(this,n):t)})},unwrap:function(){return this.parent().each(function(){g.nodeName(this,"body")||g(this).replaceWith(this.childNodes)}).end()}}),g.expr.filters.hidden=function(t){return!g.expr.filters.visible(t)},g.expr.filters.visible=function(t){return t.offsetWidth>0||t.offsetHeight>0||t.getClientRects().length>0};var Me=/%20/g,Ee=/\[\]$/,Ce=/\r?\n/g,Ae=/^(?:submit|button|image|reset|file)$/i,Te=/^(?:input|select|textarea|keygen)/i;function Oe(t,e,n,i){var r;if(g.isArray(e))g.each(e,function(e,r){n||Ee.test(t)?i(t,r):Oe(t+"["+("object"==typeof r&&null!=r?e:"")+"]",r,n,i)});else if(n||"object"!==g.type(e))i(t,e);else for(r in e)Oe(t+"["+r+"]",e[r],n,i)}g.param=function(t,e){var n,i=[],r=function(t,e){e=g.isFunction(e)?e():null==e?"":e,i[i.length]=encodeURIComponent(t)+"="+encodeURIComponent(e)};if(void 0===e&&(e=g.ajaxSettings&&g.ajaxSettings.traditional),g.isArray(t)||t.jquery&&!g.isPlainObject(t))g.each(t,function(){r(this.name,this.value)});else for(n in t)Oe(n,t[n],e,r);return i.join("&").replace(Me,"+")},g.fn.extend({serialize:function(){return g.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var t=g.prop(this,"elements");return t?g.makeArray(t):this}).filter(function(){var t=this.type;return this.name&&!g(this).is(":disabled")&&Te.test(this.nodeName)&&!Ae.test(t)&&(this.checked||!Y.test(t))}).map(function(t,e){var n=g(this).val();return null==n?null:g.isArray(n)?g.map(n,function(t){return{name:e.name,value:t.replace(Ce,"\r\n")}}):{name:e.name,value:n.replace(Ce,"\r\n")}}).get()}}),g.ajaxSettings.xhr=function(){try{return new n.XMLHttpRequest}catch(t){}};var _e={0:200,1223:204},Pe=g.ajaxSettings.xhr();f.cors=!!Pe&&"withCredentials"in Pe,f.ajax=Pe=!!Pe,g.ajaxTransport(function(t){var e,i;if(f.cors||Pe&&!t.crossDomain)return{send:function(r,o){var a,s=t.xhr();if(s.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(a in t.xhrFields)s[a]=t.xhrFields[a];for(a in t.mimeType&&s.overrideMimeType&&s.overrideMimeType(t.mimeType),t.crossDomain||r["X-Requested-With"]||(r["X-Requested-With"]="XMLHttpRequest"),r)s.setRequestHeader(a,r[a]);e=function(t){return function(){e&&(e=i=s.onload=s.onerror=s.onabort=s.onreadystatechange=null,"abort"===t?s.abort():"error"===t?"number"!=typeof s.status?o(0,"error"):o(s.status,s.statusText):o(_e[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=e(),i=s.onerror=e("error"),void 0!==s.onabort?s.onabort=i:s.onreadystatechange=function(){4===s.readyState&&n.setTimeout(function(){e&&i()})},e=e("abort");try{s.send(t.hasContent&&t.data||null)}catch(t){if(e)throw t}},abort:function(){e&&e()}}}),g.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(t){return g.globalEval(t),t}}}),g.ajaxPrefilter("script",function(t){void 0===t.cache&&(t.cache=!1),t.crossDomain&&(t.type="GET")}),g.ajaxTransport("script",function(t){var e,n;if(t.crossDomain)return{send:function(i,r){e=g("<script>").prop({charset:t.scriptCharset,src:t.url}).on("load error",n=function(t){e.remove(),n=null,t&&r("error"===t.type?404:200,t.type)}),a.head.appendChild(e[0])},abort:function(){n&&n()}}});var Ie=[],ke=/(=)\?(?=&|$)|\?\?/;g.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var t=Ie.pop()||g.expando+"_"+le++;return this[t]=!0,t}}),g.ajaxPrefilter("json jsonp",function(t,e,i){var r,o,a,s=!1!==t.jsonp&&(ke.test(t.url)?"url":"string"==typeof t.data&&0===(t.contentType||"").indexOf("application/x-www-form-urlencoded")&&ke.test(t.data)&&"data");if(s||"jsonp"===t.dataTypes[0])return r=t.jsonpCallback=g.isFunction(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,s?t[s]=t[s].replace(ke,"$1"+r):!1!==t.jsonp&&(t.url+=(ue.test(t.url)?"&":"?")+t.jsonp+"="+r),t.converters["script json"]=function(){return a||g.error(r+" was not called"),a[0]},t.dataTypes[0]="json",o=n[r],n[r]=function(){a=arguments},i.always(function(){void 0===o?g(n).removeProp(r):n[r]=o,t[r]&&(t.jsonpCallback=e.jsonpCallback,Ie.push(r)),a&&g.isFunction(o)&&o(a[0]),a=o=void 0}),"script"}),g.parseHTML=function(t,e,n){if(!t||"string"!=typeof t)return null;"boolean"==typeof e&&(n=e,e=!1),e=e||a;var i=C.exec(t),r=!n&&[];return i?[e.createElement(i[1])]:(i=rt([t],e,r),r&&r.length&&g(r).remove(),g.merge([],i.childNodes))};var De=g.fn.load;function Re(t){return g.isWindow(t)?t:9===t.nodeType&&t.defaultView}g.fn.load=function(t,e,n){if("string"!=typeof t&&De)return De.apply(this,arguments);var i,r,o,a=this,s=t.indexOf(" ");return s>-1&&(i=g.trim(t.slice(s)),t=t.slice(0,s)),g.isFunction(e)?(n=e,e=void 0):e&&"object"==typeof e&&(r="POST"),a.length>0&&g.ajax({url:t,type:r||"GET",dataType:"html",data:e}).done(function(t){o=arguments,a.html(i?g("<div>").append(g.parseHTML(t)).find(i):t)}).always(n&&function(t,e){a.each(function(){n.apply(this,o||[t.responseText,e,t])})}),this},g.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(t,e){g.fn[e]=function(t){return this.on(e,t)}}),g.expr.filters.animated=function(t){return g.grep(g.timers,function(e){return t===e.elem}).length},g.offset={setOffset:function(t,e,n){var i,r,o,a,s,c,l=g.css(t,"position"),u=g(t),d={};"static"===l&&(t.style.position="relative"),s=u.offset(),o=g.css(t,"top"),c=g.css(t,"left"),("absolute"===l||"fixed"===l)&&(o+c).indexOf("auto")>-1?(a=(i=u.position()).top,r=i.left):(a=parseFloat(o)||0,r=parseFloat(c)||0),g.isFunction(e)&&(e=e.call(t,n,g.extend({},s))),null!=e.top&&(d.top=e.top-s.top+a),null!=e.left&&(d.left=e.left-s.left+r),"using"in e?e.using.call(t,d):u.css(d)}},g.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){g.offset.setOffset(this,t,e)});var e,n,i=this[0],r={top:0,left:0},o=i&&i.ownerDocument;return o?(e=o.documentElement,g.contains(e,i)?(r=i.getBoundingClientRect(),n=Re(o),{top:r.top+n.pageYOffset-e.clientTop,left:r.left+n.pageXOffset-e.clientLeft}):r):void 0},position:function(){if(this[0]){var t,e,n=this[0],i={top:0,left:0};return"fixed"===g.css(n,"position")?e=n.getBoundingClientRect():(t=this.offsetParent(),e=this.offset(),g.nodeName(t[0],"html")||(i=t.offset()),i.top+=g.css(t[0],"borderTopWidth",!0),i.left+=g.css(t[0],"borderLeftWidth",!0)),{top:e.top-i.top-g.css(n,"marginTop",!0),left:e.left-i.left-g.css(n,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var t=this.offsetParent;t&&"static"===g.css(t,"position");)t=t.offsetParent;return t||It})}}),g.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,e){var n="pageYOffset"===e;g.fn[t]=function(i){return N(this,function(t,i,r){var o=Re(t);if(void 0===r)return o?o[e]:t[i];o?o.scrollTo(n?o.pageXOffset:r,n?r:o.pageYOffset):t[i]=r},t,i,arguments.length)}}),g.each(["top","left"],function(t,e){g.cssHooks[e]=Dt(f.pixelPosition,function(t,n){if(n)return n=kt(t,e),Ot.test(n)?g(t).position()[e]+"px":n})}),g.each({Height:"height",Width:"width"},function(t,e){g.each({padding:"inner"+t,content:e,"":"outer"+t},function(n,i){g.fn[i]=function(i,r){var o=arguments.length&&(n||"boolean"!=typeof i),a=n||(!0===i||!0===r?"margin":"border");return N(this,function(e,n,i){var r;return g.isWindow(e)?e.document.documentElement["client"+t]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+t],r["scroll"+t],e.body["offset"+t],r["offset"+t],r["client"+t])):void 0===i?g.css(e,n,a):g.style(e,n,i,a)},e,o?i:void 0,o,null)}})}),g.fn.extend({bind:function(t,e,n){return this.on(t,null,e,n)},unbind:function(t,e){return this.off(t,null,e)},delegate:function(t,e,n,i){return this.on(e,t,n,i)},undelegate:function(t,e,n){return 1===arguments.length?this.off(t,"**"):this.off(e,t||"**",n)},size:function(){return this.length}}),g.fn.andSelf=g.fn.addBack,void 0===(i=function(){return g}.apply(e,[]))||(t.exports=i);var Le=n.jQuery,Ne=n.$;return g.noConflict=function(t){return n.$===g&&(n.$=Ne),t&&n.jQuery===g&&(n.jQuery=Le),g},r||(n.jQuery=n.$=g),g},"object"==typeof t.exports?t.exports=r.document?o(r,!0):function(t){if(!t.document)throw new Error("jQuery requires a window with a document");return o(t)}:o(r)},function(t,e,n){"use strict";(function(t){var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}},o=this&&this.__spreadArrays||function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var i=Array(t),r=0;for(e=0;e<n;e++)for(var o=arguments[e],a=0,s=o.length;a<s;a++,r++)i[r]=o[a];return i};Object.defineProperty(e,"__esModule",{value:!0});var a=n(2),s=n(7);e.invalidateAngular=function(t,e){void 0===e&&(e=0),window.IV.injector&&window.IV.injector.get("$timeout")(function(){t&&t()},e)},e.blurActiveElement=function(){window.IV.injector&&window.IV.injector.get("$timeout")(function(){a.element(document.activeElement).blur()})},e.replaceArray=function(t,e,n){var i;if(void 0===n&&(n=65e3),t&&e){n<=0&&(n=65e3);for(var r=0,a=n;r<a;){var s=e.slice(r,a);(i=Array.prototype.splice).call.apply(i,o([t,r,a],s)),r=a,a=Math.min(a+n,e.length)}t.splice(a)}},e.mapValuesDeep=function t(e,n){if(e instanceof ArrayBuffer)return e;if(s.isArray(e)){for(var i=0;i<e.length;i++)e[i]=t(e[i],n);return e}if(s.isObject(e)){for(var r in e)e[r]=t(e[r],n);return e}return n(e)},e.isBlank=function(t){return!t||0===t.trim().length},e.degreesToRadians=function(t){return t*Math.PI/180},e.radiansToDegrees=function(t){return 180*t/Math.PI},e.requestAnimationFrame_=function(){var e=document.createElement("script");e.innerHTML=atob("Y29uc29sZS5sb2coIlRoaXMgZmVhdHVyZSByZXF1aXJlcyBhIGxpY2Vuc2Ugd2l0aCB0aGUgQVBJIGZlYXR1cmUuIFBsZWFzZSBjb250YWN0IHNhbGVzQG5hdnZpcy5jb20gZm9yIG1vcmUgaW5mb3JtYXRpb24uIik7"),t("body").append(e)},e.buildHashMap=function(t){var e=new Map;return t.forEach(function(t){return e.set(t[0],t[1])}),e},e.optionalCollect=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return Promise.all(t.map(function(t){return t.catch(function(){})})).then(function(t){return t.filter(function(t){return void 0!==t})})},e.wrapAngularJsPromise=function(t){return i(this,void 0,void 0,function(){return r(this,function(e){return[2,t]})})},e.timeout=function(t){return i(this,void 0,void 0,function(){return r(this,function(e){return[2,new Promise(function(e){return setTimeout(e,t)})]})})},e.signalEmitted=function(t){return i(this,void 0,void 0,function(){return r(this,function(e){return[2,new Promise(function(e,n){var i=t.connect(function(t){t?e():n(),i.disconnect()})})]})})}}).call(this,n(19))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(390),n(390),n(256);var r,o=n(256),a=n(8),s=(n(17),n(39),n(316)),c=(n(36),n(392)),l=n(260),u=n(6),d=n(0),p=n(105),h=n(218),f=n(64),g=n(1119),m=n(222),v=n(1120),y=n(24),b=(n(50),n(446),n(120),n(232)),w=n(348),S=n(0),x=n(256),M=n(390),E=n(24),C=n(17),A=n(39),T=n(36),O=n(50),_=n(446),P=n(120);!function(t){t.DATASETS_MENU="templates/menu/DatasetsMenu.html",t.VIEW_MENU="templates/menu/ViewMenu.html",t.POINTCLOUD_PANE="templates/menu/PointCloudPane.html ",t.POITYPES_MENU="templates/menu/poi/POITypesMainPanel.html",t.MEASUREMENTS="templates/menu/Measurements.html",t.SHARE_MENU="templates/menu/ShareMenu.html",t.GEOREGISTRATION_MODE="templates/alignment/GeoRegistrationPanel.html",t.DATASETALIGNMENT_MODE="templates/alignment/DatasetAlignmentPanel.html",t.SITEMODEL_MODE="templates/alignment/SiteModelEditor.html",t.NAVGRAPH_MODE="templates/navgraph/NavGraphEditor.html",t.VECTORMAP_MODE="templates/vectormap/VectorMapToolbox.html",t.DOWNLOAD_POINT_CLOUD_MODE="templates/download-point-cloud/DownloadPointCloud.html",t.SETTINGS="templates/menu/Settings.html",t.CONFIG_SETTINGS="templates/settings/ConfigEditor.html",t.INSTANCE_KEY_SUBSCRIPTION_SETTINGS="templates/settings/administration/LicenseSubscription.html",t.AUTH_SETTINGS="templates/settings/authentication/AuthPanel.html",t.USERS_SETTINGS="templates/settings/permissions/Users.html",t.GROUPS_SETTINGS="templates/settings/permissions/Groups.html",t.AUDIT_SETTINGS="templates/settings/AuditPanel.html",t.DATA_SETTINGS="templates/settings/DatasetManagement.html",t.HIDDENIMAGE_SETTINGS="templates/settings/HiddenImages.html",t.THEME_SETTINGS="templates/settings/ThemePanel.html",t.LOGIN_MENU="templates/menu/LoginMenu.html"}(r=e.TemplateName||(e.TemplateName={}));var I=function(){function t(t,e,n,i,r,o,a,s,c,l){this.GoogleTagManagerService=t,this.PiwikService=e,this.$rootScope=n,this.ModeService=i,this.ViewService=r,this.PoiService=o,this.AuthenticationService=a,this.LanguageService=s,this.DeveloperEventService=c,this.FeatureFlagsService=l,this.areLoggersCallbackAdded=!1,this.lastLocationChangeTime=Date.now(),this.templateLoadingTimes=new Map}return t.prototype.setupTracking=function(){var t=this;this.GoogleTagManagerService.setupTrackingScript().then(function(){return t.addEventListeners()}).catch(a.handleWarning),this.PiwikService.setupTrackingScript().then(function(){return t.addEventListeners()}).catch(a.handleWarning)},t.prototype.addEventListeners=function(){var e=this;this.areLoggersCallbackAdded||(this.areLoggersCallbackAdded=!0,this.ViewService.onTransitionEnd.connect(function(t){t.previousImage&&(e.trackImageTransition(t.previousImage,t.image,Date.now()-e.lastLocationChangeTime),e.lastLocationChangeTime=Date.now())}),this.PoiService.onPoiOpen.connect(function(t){e.trackPoiOpen(t),e.lastPoiOpenId=t.id}),this.PoiService.onPoiClose.connect(function(t){t.id===e.lastPoiOpenId&&e.trackPoiClose(t)}),this.PoiService.onPoiSave.connect(function(e,n){n?t.trackPoiCreated():t.trackPoiEdited()}),this.AuthenticationService.onAuthenticationChanged.connect(function(n){n.isGuest()?t.trackUserLogOut():e.trackUserLogIn(n)}),this.LanguageService.onLanguageChange.connect(function(e){return t.trackLanguageChangedEvent(e.key)}),this.$rootScope.$on("$includeContentLoaded",function(t,n){return e.trackTemplateUsageTimes(t,n)}))},t.prototype.trackTemplateUsageTimes=function(t,e){switch(e){case r.DATASETS_MENU:this.trackTemplate(t,e,function(t){return o.GoogleTagManagerService.trackDatasetsMenuUsage(t)});break;case r.VIEW_MENU:this.trackTemplate(t,e,function(t){return o.GoogleTagManagerService.trackViewMenuUsage(t)});break;case r.POINTCLOUD_PANE:this.trackTemplate(t,e,function(t){return o.GoogleTagManagerService.trackPointcloudMenuUsage(t)});break;case r.POITYPES_MENU:this.trackTemplate(t,e,function(t){return o.GoogleTagManagerService.trackPoiTypesMenuUsage(t)});break;case r.SHARE_MENU:this.trackTemplate(t,e,function(t){return o.GoogleTagManagerService.trackShareMenuUsage(t)});break;case r.GEOREGISTRATION_MODE:this.trackTemplate(t,e,function(t){return o.GoogleTagManagerService.trackGeoRegistrationModeUsage(t)});break;case r.DATASETALIGNMENT_MODE:this.trackTemplate(t,e,function(t){return o.GoogleTagManagerService.trackDatasetAlignmentModeUsage(t)});break;case r.SITEMODEL_MODE:this.trackTemplate(t,e,function(t){return o.GoogleTagManagerService.trackSiteModelModeUsage(t)});break;case r.NAVGRAPH_MODE:this.trackTemplate(t,e,function(t){return o.GoogleTagManagerService.trackNavGraphModeUsage(t)});break;case r.VECTORMAP_MODE:this.trackTemplate(t,e,function(t){return o.GoogleTagManagerService.trackVectorMapModeUsage(t)});break;case r.DOWNLOAD_POINT_CLOUD_MODE:this.trackTemplate(t,e,function(t){return o.GoogleTagManagerService.trackDownloadPointCloudModeUsage(t)});break;case r.SETTINGS:this.trackTemplate(t,e,function(t){return o.GoogleTagManagerService.trackSettingsMenuUsage(t)});break;case r.CONFIG_SETTINGS:this.trackTemplate(t,e,function(t){return o.GoogleTagManagerService.trackConfigSettingsUsage(t)});break;case r.AUTH_SETTINGS:this.trackTemplate(t,e,function(t){return o.GoogleTagManagerService.trackAuthSettingsUsage(t)});break;case r.INSTANCE_KEY_SUBSCRIPTION_SETTINGS:this.trackTemplate(t,e,function(t){return o.GoogleTagManagerService.trackSubscriptionSettingsUsage(t)});break;case r.USERS_SETTINGS:this.trackTemplate(t,e,function(t){return o.GoogleTagManagerService.trackUsersSettingsUsage(t)});break;case r.GROUPS_SETTINGS:this.trackTemplate(t,e,function(t){return o.GoogleTagManagerService.trackGroupsSettingsUsage(t)});break;case r.DATA_SETTINGS:this.trackTemplate(t,e,function(t){return o.GoogleTagManagerService.trackDataSettingsUsage(t)});break;case r.HIDDENIMAGE_SETTINGS:this.trackTemplate(t,e,function(t){return o.GoogleTagManagerService.trackHiddenImagesSettingsUsage(t)});break;case r.LOGIN_MENU:this.trackTemplate(t,e,function(t){return o.GoogleTagManagerService.trackLoginMenuUsage(t)})}},t.prototype.trackTemplate=function(t,e,n){var i=this;this.templateLoadingTimes.set(e,Date.now()),t.targetScope.$on("$destroy",function(){return n(Math.round((Date.now()-i.templateLoadingTimes.get(e))/1e3))})},t.trackHamburgerClick=function(){o.GoogleTagManagerService.trackHamburgerClick()},t.prototype.trackUserLogIn=function(t){this.GoogleTagManagerService.trackUserLogin(t.isAdmin())},t.trackUserLogOut=function(){o.GoogleTagManagerService.trackUserLogout()},t.trackSubscriptionLinkClick=function(){new f.TrackingEvent("settings_manageSubscriptionClicked").submit()},t.trackUserAdded=function(){o.GoogleTagManagerService.trackUserAdded()},t.trackGroupAdded=function(){o.GoogleTagManagerService.trackGroupAdded()},t.trackBundleEdited=function(){o.GoogleTagManagerService.trackBundleEdited()},t.trackBundleCreated=function(){o.GoogleTagManagerService.trackBundleCreated()},t.trackFileUploaded=function(t){var e=t.name.split(".").pop();o.GoogleTagManagerService.trackFileUploaded(e,t.size)},t.trackBundleDownload=function(){o.GoogleTagManagerService.trackBundleDownload()},t.trackBundleUnloaded=function(){o.GoogleTagManagerService.trackBundleUnloaded()},t.trackBundleLoaded=function(){o.GoogleTagManagerService.trackBundleLoaded()},t.trackDatasetUnloaded=function(){o.GoogleTagManagerService.trackDatasetUnloaded()},t.trackDatasetLoaded=function(){o.GoogleTagManagerService.trackDatasetLoaded()},t.trackMapsDownloaded=function(){o.GoogleTagManagerService.trackMapsDownloaded()},t.trackMapsUploaded=function(){o.GoogleTagManagerService.trackMapsUploaded()},t.trackMapsRemoved=function(){o.GoogleTagManagerService.trackMapsRemoved()},t.trackNavGraphCreated=function(){o.GoogleTagManagerService.trackNavGraphCreated()},t.trackNavGraphRemoved=function(){o.GoogleTagManagerService.trackNavGraphRemoved()},t.trackNavGraphImported=function(){o.GoogleTagManagerService.trackNavGraphImported()},t.trackNavDataImported=function(){o.GoogleTagManagerService.trackNavDataImported()},t.trackNavDataRemoved=function(){o.GoogleTagManagerService.trackNavDataRemoved()},t.prototype.trackImageTransition=function(t,e,n){this.PiwikService.trackImageTransition(t.id,e.id,n)},t.prototype.trackPoiOpen=function(t){this.PiwikService.trackPoiOpen(t),o.GoogleTagManagerService.trackPoiOpen()},t.prototype.trackPoiClose=function(t){this.PiwikService.trackPoiClose(t)},t.trackPoiCreated=function(){o.GoogleTagManagerService.trackPoiCreated()},t.trackPoiEdited=function(){o.GoogleTagManagerService.trackPoiEdited()},t.prototype.trackPoiDeleted=function(t){void 0===t&&(t=!1),o.GoogleTagManagerService.trackPoiDeleted(t)},t.prototype.trackPointCloudDownloadEntered=function(t){o.GoogleTagManagerService.trackPointCloudDownloadEntered(h.MenuType[t])},t.prototype.trackPointCloudDownloadEnteredIntoMode=function(t){o.GoogleTagManagerService.trackPointCloudDownloadEnteredIntoMode(p.SceneViewMode[t])},t.prototype.trackPointCloudDownloadButtonClicked=function(t){o.GoogleTagManagerService.trackPointCloudDownloadButtonClicked(p.SceneViewMode[t])},t.prototype.trackPointCloudDownload=function(){o.GoogleTagManagerService.trackPointCloudDownloaded()},t.prototype.trackInvalidMeasuredControlPointPosesFileLines=function(t){o.GoogleTagManagerService.trackInvalidMeasuredControlPointPosesFileLines(t)},t.prototype.trackPointCloudDownloadViewModeChanged=function(t,e){o.GoogleTagManagerService.trackPointCloudDownloadViewModeChanged(p.SceneViewMode[t],p.SceneViewMode[e])},t.prototype.trackRenderingModeChanged=function(t,e){this.ModeService.currentMode===y.ModeState.NORMAL&&(t===m.RenderingMode.Panorama?(new g.PanoramaRenderingModeChangedEvent).isEnabled(e).submit():t===m.RenderingMode.PointCloud&&(new g.PointCloudRenderingModeChangedEvent).isEnabled(e).submit())},t.trackSiteModelDetailsViewed=function(){o.GoogleTagManagerService.trackSiteModelDetailsViewed()},t.trackShareAction=function(t){switch(t){case c.ShareType.CUSTOM_LOCATION:o.GoogleTagManagerService.trackTemporaryPoiSharing();break;case c.ShareType.LOCATION:o.GoogleTagManagerService.trackLocationSharing();break;case c.ShareType.POI:o.GoogleTagManagerService.trackPoiSharing();break;case c.ShareType.SME:o.GoogleTagManagerService.trackSiteModelSharing();break;default:console.warn("Untracked sharetype is used:",t)}},t.trackLanguageChangedEvent=function(t){o.GoogleTagManagerService.trackLanguageChanged(t)},t.prototype.trackSearchInputSearch=function(t,e){this.PiwikService.trackPoiSearchResults("autoComplete",t,e),o.GoogleTagManagerService.trackSearchPerformed(t.length,e)},t.prototype.trackSearchResultSelection=function(t,e,n){this.PiwikService.trackPoiSearchResults("manualPOISelection",e,n),o.GoogleTagManagerService.trackSearchResultSelection(t instanceof l.PoiSearchEntity)},t.prototype.trackSearchInputClear=function(t,e){this.PiwikService.trackPoiSearchResults("clearPressed",t,e)},t.prototype.trackSearchInputBlur=function(t){this.PiwikService.trackEvent("search","focusLost",t||"")},t.prototype.trackSessionStart=function(t,e){(new v.SessionStartedEvent).withRenderingMode(t,e).submit()},t.prototype.trackTypeaheadNavigationKeys=function(t,e){this.PiwikService.trackEvent(e||"search","keyboard",t)},t.prototype.trackRouteInputSearch=function(t,e,n){this.PiwikService.trackPoiSearchResults(n===s.RoutePoint.START?"routingStartAutoComplete":"routingEndAutoComplete",t,e),o.GoogleTagManagerService.trackRouteSearchPerformed(t.length,e)},t.prototype.trackRoutePointSelection=function(t,e,n){this.PiwikService.trackPoiSearchResults(n===s.RoutePoint.START?"routingStartManualPOISelection":"routingEndManualPOISelection",t,e)},t.prototype.trackRouteInputClear=function(t,e){this.PiwikService.trackPoiSearchResults(e===s.RoutePoint.START?"routingStartClearPressed":"routingEndClearPressed",t)},t.prototype.trackRouteInitiation=function(t){this.PiwikService.trackRouteInitiation(t)},t.prototype.trackRouteReversal=function(t,e){this.PiwikService.trackReverseRoute(t,e)},t.prototype.trackRouteClose=function(){this.PiwikService.trackCloseRouteMenu()},t.prototype.trackResultsListByKey=function(t,e){this.PiwikService.trackPoiSearchResults("enterPressed",t,e)},t.prototype.trackResultsListByClick=function(t,e){this.PiwikService.trackPoiSearchResults("magnifierClicked",t,e)},t.prototype.trackResultsListByMoreClick=function(t,e){this.PiwikService.trackPoiSearchResults("showResultsList",t,e)},t.prototype.trackHideResultsClick=function(){this.PiwikService.trackHideResults()},t.prototype.trackMapZoom=function(t){this.PiwikService.trackZoom(t)},t.prototype.trackMapDrag=function(t,e){this.PiwikService.trackDragging(t,e)},t.prototype.trackMapClick=function(t){this.PiwikService.trackMapClick(t)},t.prototype.trackFloorChange=function(t,e,n,i){this.PiwikService.trackFloorChange(t,e,n,i)},t.prototype.trackPreDefinedEvent=function(t){t&&(t.submit(),this.trackAsDevelopmentEvent(t))},t.prototype.trackCloudProcessingEnterEvent=function(){o.GoogleTagManagerService.trackCloudProcessingEnterEvent()},t.prototype.trackUploadDataEnterEvent=function(){o.GoogleTagManagerService.trackUploadDataEnterEvent()},t.prototype.trackProcessingTaskEnterEvent=function(){o.GoogleTagManagerService.trackProcessingTaskEnterEvent()},t.prototype.trackProcessedDataEnterEvent=function(){o.GoogleTagManagerService.trackProcessedDataEnterEvent()},t.prototype.trackCreateNewProcessingTask=function(){o.GoogleTagManagerService.trackCreateNewProcessingTask()},t.prototype.trackProcessingTaskCreationStepButtonClickedEvent=function(t){o.GoogleTagManagerService.trackProcessingTaskCreationStepButtonClickedEvent(t)},t.prototype.trackProcessingTaskNextButtonClickedEvent=function(){o.GoogleTagManagerService.trackProcessingTaskNextButtonClickedEvent()},t.prototype.trackAsDevelopmentEvent=function(t){var e=this;this.FeatureFlagsService.isEnabled(b.FeatureFlag.DEVELOPER_MENU).then(function(){return e.DeveloperEventService.push(t.eventData)}).catch(w.handleDisabledFeature)},t.prototype.trackViewControlPointsConfiguration=function(){o.GoogleTagManagerService.trackViewControlPointsConfiguration()},t.ɵfac=function(e){return new(e||t)(S.ɵɵinject(x.GoogleTagManagerService),S.ɵɵinject(M.PiwikService),S.ɵɵinject("$rootScope"),S.ɵɵinject(E.ModeService),S.ɵɵinject(C.ViewService),S.ɵɵinject(A.PoiService),S.ɵɵinject(T.AuthenticationService),S.ɵɵinject(O.LanguageService),S.ɵɵinject(_.DeveloperEventService),S.ɵɵinject(P.FeatureFlagsService))},t.ɵprov=S.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.TrackingService=I,S.ɵsetClassMetadata(I,[{type:d.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:x.GoogleTagManagerService},{type:M.PiwikService},{type:void 0,decorators:[{type:d.Inject,args:["$rootScope"]}]},{type:E.ModeService},{type:C.ViewService},{type:A.PoiService},{type:T.AuthenticationService},{type:O.LanguageService},{type:_.DeveloperEventService},{type:P.FeatureFlagsService}]},null),i.module("IVWebApp").service("TrackingService",u.downgradeInjectable(I))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(528),s=n(1046),c=(n(9),n(16)),l=n(7),u=(n(14),n(534)),d=n(4),p=(n(379),n(1050)),h=n(6),f=n(0),g=n(0),m=n(9),v=n(379),y=n(14),b=function(t){function e(e,n,i,r){var o=t.call(this,a.SiteModelEntity,e,"children")||this;return o.GeoTransformationService=r,o.siteModelUpdated=new c.Signal,o.path="site_model",o.v21=new d.Vector2,o.v22=new d.Vector2,o.get=function(t){return void 0===t&&(t=!1),o.GeoTransformationService.initialized.then(function(){return o.findAll(t)})},o.generate=function(){return o.RestService.postApi(o.path+"/generate",{}).then(function(t){var e=o.updateData(o.transformResponse(t));return o.siteModelUpdated.emit(),e})},o.updateAttributes=function(t){return o.RestService.postApi(o.path+"/attributes",o.transformRequest(t)).then(function(t){var e=o.updateData(o.transformResponse(t));return o.siteModelUpdated.emit(),e})},o.injectables.GeoTransformationService=o.GeoTransformationService,o.injectables.SiteModelTypeService=i,o.injectables.gettextCatalog=n,o.transformLocationAction=new u.TransformLocationRepositoryAction(o),o.GeoTransformationService.onBeforeReferenceSystemChangedEvent.connect(function(){o.data.forEach(function(t){return t.onBeforeReferenceSystemChangedEvent()})}),o.GeoTransformationService.offsetChanged.connect(function(){return o.transformLocationAction.perform()}),o.siteModelUpdated.connect(function(){return o.resetRequestCache()}),o}return r(e,t),e.prototype.save=function(t,e){var n=this;return void 0===e&&(e=!0),this._save(t,e).then(function(t){var e=n.updateData(t);return n.siteModelUpdated.emit(),e})},e.prototype.findWithinGlobal=function(t,e){var n=this;return this.RestService.getApi(this.path+"/within",{location:t.toArray(),type:e}).then(function(t){return n.mapToRepositoryEntities(t)})},e.prototype.findWithin=function(t,e){var n=this;return this.GeoTransformationService.initialized.then(function(){var i;return t instanceof d.Vector2&&(i=n.GeoTransformationService.vector2ToGlobal(t)),t instanceof d.Vector3&&(i=n.GeoTransformationService.vectorToGlobal(t)),n.findWithinGlobal(i,e)})},e.prototype.findWithinPolygon=function(t,e){var n=this;return this.GeoTransformationService.initialized.then(function(){var i=t.toData();return n.RestService.postApi(n.path+"/within_polygon",{polygon:i,type:e}).then(function(t){return n.mapToRepositoryEntities(t)})})},e.prototype.findClosest=function(t,e,n){var i=this;return this.GeoTransformationService.initialized.then(function(){var r=i.GeoTransformationService.vectorToGlobal(t);return i.findClosestWithGlobalCoordinates(r,e,n)})},e.prototype.findClosestWithGlobalCoordinates=function(t,e,n){var i=this;return this.RestService.getApi(this.path+"/closest",{location:t.toArray(),radius:e,type:n}).then(function(t){return i.mapToRepositoryEntities(t)})},e.prototype.findByTypeAndDistance2D=function(t,e,n){return Promise.resolve(this.findCachedByTypeAndDistance2D(t,e,n))},e.prototype.findCachedByTypeAndDistance2D=function(t,e,n){var i=this,r=n*n;return this.v21.set(e.x,e.y),l.filter(this.dataMap,function(e){return e.type===t&&(i.v22.set(e.center.x,e.center.y),i.v21.distanceToSquared(i.v22)<r)})},e.prototype.findClosestByTypeAndDistance2D=function(t,e,n){return this.findClosest(e,n,t).then(function(t){return t.length>0?t[0]:void 0})},e.prototype.exportSiteModel=function(t,e){this.RestService.directDownload(this.path+"/export",{ids:t,fileName:e},e)},e.prototype.importSiteModel=function(t,e){var n=this;return this._save(this.data,!0).then(function(){var i=e?"/"+e.toString():"";return n.RestService.postApi(n.path+"/import"+i,t).then(function(t){var e=n.updateData(n.transformResponse(t));return n.siteModelUpdated.emit(),e})})},e.prototype.isAnyFloorChanging=function(t){var e=t.map(function(t){return t.toData()});return this.RestService.postApi(this.path+"/check_map_invalidation",e)},e.prototype.getSiteModelValidityReport=function(t){var e=this,n=t.map(function(t){return t.toData()});return this.RestService.postApi(this.path+"/validate",n).then(function(t){var n=new p.SiteModelErrorReport(e);return n.fillFromData(t),n})},e.ɵfac=function(t){return new(t||e)(g.ɵɵinject(m.RestService),g.ɵɵinject("gettextCatalog"),g.ɵɵinject(v.SiteModelTypeService),g.ɵɵinject(y.GeoTransformationService))},e.ɵprov=g.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(s.TreeRestRepository);e.SiteModelRepository=b,g.ɵsetClassMetadata(b,[{type:f.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:m.RestService},{type:void 0,decorators:[{type:f.Inject,args:["gettextCatalog"]}]},{type:v.SiteModelTypeService},{type:y.GeoTransformationService}]},null),o.module("IVWebApp").service("SiteModelRepository",h.downgradeInjectable(b))},function(t,e,n){"use strict";n.d(e,"a",function(){return a}),n.d(e,"b",function(){return s}),n.d(e,"c",function(){return r}),n.d(e,"d",function(){return c}),n.d(e,"e",function(){return l}),n.d(e,"f",function(){return o});var i=n(0);
  1506. /**
  1507. * @license
  1508. * Copyright Google LLC All Rights Reserved.
  1509. *
  1510. * Use of this source code is governed by an MIT-style license that can be
  1511. * found in the LICENSE file at https://angular.io/license
  1512. */function r(t){return null!=t&&""+t!="false"}
  1513. /**
  1514. * @license
  1515. * Copyright Google LLC All Rights Reserved.
  1516. *
  1517. * Use of this source code is governed by an MIT-style license that can be
  1518. * found in the LICENSE file at https://angular.io/license
  1519. */function o(t,e){return void 0===e&&(e=0),a(t)?Number(t):e}function a(t){return!isNaN(parseFloat(t))&&!isNaN(Number(t))}
  1520. /**
  1521. * @license
  1522. * Copyright Google LLC All Rights Reserved.
  1523. *
  1524. * Use of this source code is governed by an MIT-style license that can be
  1525. * found in the LICENSE file at https://angular.io/license
  1526. */function s(t){return Array.isArray(t)?t:[t]}
  1527. /**
  1528. * @license
  1529. * Copyright Google LLC All Rights Reserved.
  1530. *
  1531. * Use of this source code is governed by an MIT-style license that can be
  1532. * found in the LICENSE file at https://angular.io/license
  1533. */function c(t){return null==t?"":"string"==typeof t?t:t+"px"}
  1534. /**
  1535. * @license
  1536. * Copyright Google LLC All Rights Reserved.
  1537. *
  1538. * Use of this source code is governed by an MIT-style license that can be
  1539. * found in the LICENSE file at https://angular.io/license
  1540. */function l(t){return t instanceof i.ElementRef?t.nativeElement:t}
  1541. /**
  1542. * @license
  1543. * Copyright Google LLC All Rights Reserved.
  1544. *
  1545. * Use of this source code is governed by an MIT-style license that can be
  1546. * found in the LICENSE file at https://angular.io/license
  1547. */
  1548. /**
  1549. * @license
  1550. * Copyright Google LLC All Rights Reserved.
  1551. *
  1552. * Use of this source code is governed by an MIT-style license that can be
  1553. * found in the LICENSE file at https://angular.io/license
  1554. */},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i,r=n(2),o=n(16),a=n(6),s=n(0),c=n(0);!function(t){t.NORMAL="normal",t.DATASET_ALIGNMENT="datasetAlignment",t.GEO_REGISTRATION="GeoRegistration",t.SITE_MODEL_EDITOR="SiteModelEditor",t.NAV_GRAPH_EDITOR="NavGraphEditor",t.DOWNLOAD_POINT_CLOUD="DownloadPointCloud",t.MEASUREMENTS="Measurements"}(i=e.ModeState||(e.ModeState={}));var l=function(){function t(){this.currentMode=i.NORMAL,this.isSwitchingMode=!1,this.modeChanged=new o.Signal}return t.prototype.isNormalMode=function(){return this.currentMode===i.NORMAL},t.prototype.isGeoRegistrationMode=function(){return this.currentMode===i.GEO_REGISTRATION},t.prototype.isDatasetAlignmentMode=function(){return this.currentMode===i.DATASET_ALIGNMENT},t.prototype.isSiteModelEditorMode=function(){return this.currentMode===i.SITE_MODEL_EDITOR},t.prototype.isNavGraphEditorMode=function(){return this.currentMode===i.NAV_GRAPH_EDITOR},t.prototype.isDownloadPointCloudMode=function(){return this.currentMode===i.DOWNLOAD_POINT_CLOUD},t.prototype.isMeasurementsMode=function(){return this.currentMode===i.MEASUREMENTS},t.ɵfac=function(e){return new(e||t)},t.ɵprov=c.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.ModeService=l,c.ɵsetClassMetadata(l,[{type:s.Injectable,args:[{providedIn:"root"}]}],null,null),r.module("IVWebApp").service("ModeService",a.downgradeInjectable(l))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.AUDITING_POI_ENABLED="auditing.poi.enabled",t.AUDITING_POI_RETENTION_SECONDS="auditing.poi.retention_seconds",t.AUTH_LOCAL_ENABLED="auth.local.enabled",t.CORE_INIT_IMAGE="core.init.image",t.CORE_INIT_LAT="core.init.lat",t.CORE_INIT_LON="core.init.lon",t.CORE_INIT_LOCATION_LAT="core.init.location.lat",t.CORE_INIT_LOCATION_LON="core.init.location.lon",t.CORE_INIT_LOCATION_Z="core.init.location.z",t.CORE_INIT_MAP_FLOOR="core.init.map.floor",t.CORE_INIT_MAP_FOV="core.init.map.fov",t.CORE_INIT_MAP_LAT="core.init.map.lat",t.CORE_INIT_MAP_LON="core.init.map.lon",t.CORE_INIT_VIEW="core.init.view",t.CORE_INIT_VIEW_MOBILE="core.init.view.mobile",t.CORE_MAP_ANGLE="core.map.angle",t.CORE_MAP_ATTRIBUTION="core.map.attribution",t.CORE_MAP_BASEMAP="core.map.basemap",t.CORE_MAP_BG="core.map.bg",t.CORE_MAP_FOV_BLENDING="core.map.fov.blending",t.CORE_MAP_FOV_COLOR="core.map.fov.color",t.CORE_MAP_MARKER_BLENDING="core.map.marker.blending",t.CORE_MAP_MARKER_COLOR="core.map.marker.color",t.CORE_MAP_TILE_MAX_ZOOM="core.map.tile_max_zoom",t.CORE_MAP_TILE_MIN_ZOOM="core.map.tile_min_zoom",t.CORE_MAP_TILE_URL="core.map.tile_url",t.CORE_SECURITY_CORS="core.security.cors",t.FEEDBACK_EMAIL_RECIPIENT_EMAIL="feedback.email.recipient.email",t.FEEDBACK_PRIVACY_HTML="feedback.privacy.html",t.FEEDBACK_PRIVACY_TEXT_CHECKBOX="feedback.privacy.text_checkbox",t.FEEDBACK_PRIVACY_TEXT_TEXT="feedback.privacy.text_text",t.INFO_TERMS_EXTRA="info.terms.extra",t.INFO_TERMS_PRIVACY="info.terms.privacy",t.LANG="lang",t.LAYERS_LOCATIONS_VISIBLE="layers.locations.visible",t.LAYERS_MAP_VISIBLE="layers.map.visible",t.LAYERS_PANORAMAS_VISIBLE="layers.panoramas.visible",t.LAYERS_PANORAMA_MOBILE_MAX_RES="layers.panoramas.mobile_max_res",t.LAYERS_POINTCLOUD_SAME_RES="layers.pointcloud.same_res",t.LAYERS_POINTCLOUD_VISIBLE="layers.pointcloud.visible",t.LAYERS_POLYGON_VECTOR_MAP_STYLE="layers.polygon.vector_map_style",t.LAYERS_CAMERAFOV_MOBILE_VISIBLE="layers.camerafov.mobile_visible",t.MENU_DATASETS_VISIBLE="menu.datasets.visible",t.MENU_LOGIN_VISIBLE="menu.login.visible",t.MENU_MODE_VISIBLE="menu.mode.visible",t.MENU_NEWWINDOW_VISIBLE="menu.newwindow.visible",t.MENU_POI_VISIBLE="menu.poi.visible",t.MENU_SETTINGS_VISIBLE="menu.settings.visible",t.MENU_SHARE_VISIBLE="menu.share.visible",t.MENU_VIEW_VISIBLE="menu.view.visible",t.MENU_CLOUD_PROCESSING_VISIBLE="menu.cloud_processing.visible",t.MENU_MEASUREMENTS_VISIBLE="menu.measurements.visible",t.PRIVATE_MODE_ENABLED="security.private_mode",t.FEDERATED_JWK_SET_URI="oauth.resourceserver.jwk-set-uri",t.FEDERATED_GROUPS_CLAIM_ARRAY_KEY="oauth.resourceserver.groups-claim-array-key",t.OAUTH_HOST_PREFIX="oauth.host-prefix",t.FEDERATED_USE_TOKEN_GROUPS="oauth.resourceserver.use-token-groups",t.OAUTH_HOST_URL="oauth.host.url",t.OAUTH_REDIRECT_URLS="oauth.redirect.urls",t.OAUTH_CLIENT_ID="oauth.client.id",t.OAUTH_ISSUER_URL="oauth.issuer.url",t.OAUTH_CLIENT_SECRET="oauth.client.secret",t.OAUTH_USE_TOKEN_GROUPS="oauth.use.token.groups",t.OAUTH_GROUPS_CLAIM_ARRAY_KEY="oauth.groups.claim.array.key",t.POI_FULLSCREEN="poi.fullscreen",t.POI_NAMES_MAP="poi.names.map",t.POI_NAMES_PANORAMAS="poi.names.panoramas",t.POI_SHARE_ENABLED="poi.share.enabled",t.POI_TYPES="poi.types",t.POI_VISIBILITYCHECK_ENABLED="poi.visibilitycheck.enabled",t.ROUTING_ENABLED="routing.enabled",t.SITE_MODEL_SEARCH_ENABLED="site_model_search.enabled",t.TRACKING_CODE="tracking.code",t.TRACKING_ENABLED="tracking.enabled",t.UI_FLOORCHANGER_VISIBLE="ui.floorchanger.visible",t.UI_POI_PANEL_VISIBLE="ui.poi_panel.visible",t.UI_SEARCH_VISIBLE="ui.search.visible",t.UI_STATUSCHECK_VISIBLE="ui.statuscheck.visible"}(e.Configs||(e.Configs={}))},function(t,e,n){"use strict";n.d(e,"a",function(){return u});var i=n(1),r=n(142),o=n(227),a=n(33),s=n(207),c=n(84),l=n(167),u=function(t){function e(n,i,r){var a=t.call(this)||this;switch(a.syncErrorValue=null,a.syncErrorThrown=!1,a.syncErrorThrowable=!1,a.isStopped=!1,arguments.length){case 0:a.destination=o.a;break;case 1:if(!n){a.destination=o.a;break}if("object"==typeof n){n instanceof e?(a.syncErrorThrowable=n.syncErrorThrowable,a.destination=n,n.add(a)):(a.syncErrorThrowable=!0,a.destination=new d(a,n));break}default:a.syncErrorThrowable=!0,a.destination=new d(a,n,i,r)}return a}return i.c(e,t),e.prototype[s.a]=function(){return this},e.create=function(t,n,i){var r=new e(t,n,i);return r.syncErrorThrowable=!1,r},e.prototype.next=function(t){this.isStopped||this._next(t)},e.prototype.error=function(t){this.isStopped||(this.isStopped=!0,this._error(t))},e.prototype.complete=function(){this.isStopped||(this.isStopped=!0,this._complete())},e.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,t.prototype.unsubscribe.call(this))},e.prototype._next=function(t){this.destination.next(t)},e.prototype._error=function(t){this.destination.error(t),this.unsubscribe()},e.prototype._complete=function(){this.destination.complete(),this.unsubscribe()},e.prototype._unsubscribeAndRecycle=function(){var t=this._parentOrParents;return this._parentOrParents=null,this.unsubscribe(),this.closed=!1,this.isStopped=!1,this._parentOrParents=t,this},e}(a.a),d=function(t){function e(e,n,i,a){var s,c=t.call(this)||this;c._parentSubscriber=e;var l=c;return Object(r.a)(n)?s=n:n&&(s=n.next,i=n.error,a=n.complete,n!==o.a&&(l=Object.create(n),Object(r.a)(l.unsubscribe)&&c.add(l.unsubscribe.bind(l)),l.unsubscribe=c.unsubscribe.bind(c))),c._context=l,c._next=s,c._error=i,c._complete=a,c}return i.c(e,t),e.prototype.next=function(t){if(!this.isStopped&&this._next){var e=this._parentSubscriber;c.a.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?this.__tryOrSetError(e,this._next,t)&&this.unsubscribe():this.__tryOrUnsub(this._next,t)}},e.prototype.error=function(t){if(!this.isStopped){var e=this._parentSubscriber,n=c.a.useDeprecatedSynchronousErrorHandling;if(this._error)n&&e.syncErrorThrowable?(this.__tryOrSetError(e,this._error,t),this.unsubscribe()):(this.__tryOrUnsub(this._error,t),this.unsubscribe());else if(e.syncErrorThrowable)n?(e.syncErrorValue=t,e.syncErrorThrown=!0):Object(l.a)(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;Object(l.a)(t)}}},e.prototype.complete=function(){var t=this;if(!this.isStopped){var e=this._parentSubscriber;if(this._complete){var n=function(){return t._complete.call(t._context)};c.a.useDeprecatedSynchronousErrorHandling&&e.syncErrorThrowable?(this.__tryOrSetError(e,n),this.unsubscribe()):(this.__tryOrUnsub(n),this.unsubscribe())}else this.unsubscribe()}},e.prototype.__tryOrUnsub=function(t,e){try{t.call(this._context,e)}catch(t){if(this.unsubscribe(),c.a.useDeprecatedSynchronousErrorHandling)throw t;Object(l.a)(t)}},e.prototype.__tryOrSetError=function(t,e,n){if(!c.a.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(e){return c.a.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=e,t.syncErrorThrown=!0,!0):(Object(l.a)(e),!0)}return!1},e.prototype._unsubscribe=function(){var t=this._parentSubscriber;this._context=null,this._parentSubscriber=null,t.unsubscribe()},e}(u)},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(178),n(178),n(36),n(36),n(187),n(15);var r=n(57),o=n(6),a=n(0),s=(n(54),n(0)),c=n(15),l=n(187),u=n(178),d=n(36),p=n(54),h=function(){function t(t,e,n,i,r,o,a){var s=this;this.$timeout=t,this.$window=e,this.ConfigService=n,this.StorageService=i,this.UserRepository=r,this.AuthenticationService=o,this.LicenseService=a,this.isUserLoggedIn=function(){return s.userInfo&&void 0!==s.userInfo.id}}return Object.defineProperty(t.prototype,"userInfo",{get:function(){return this.AuthenticationService.currentUser},enumerable:!0,configurable:!0}),t.prototype.getRoles=function(){for(var t=[],e=0,n=Object.values(r.GroupAttributes);e<n.length;e++){var i=n[e];this.userInfo.checkAttribute(i)&&t.push(i)}return t},t.prototype.canViewSiteModelAttributes=function(){return this.userInfo.checkAttribute(r.GroupAttributes.CAN_VIEW_SITE_MODEL_ATTRIBUTES)},t.prototype.canEditSiteModelAttributes=function(){return this.userInfo.checkAttribute(r.GroupAttributes.CAN_EDIT_SITE_MODEL_ATTRIBUTES)},t.prototype.canCropAndDownloadPointCloud=function(){return this.LicenseService.isLicenseValid&&this.userInfo&&this.userInfo.checkAttribute(r.GroupAttributes.CAN_CROP_AND_DOWNLOAD_POINT_CLOUD)},t.prototype.canSaveMeasurements=function(){return this.LicenseService.isLicenseValid&&this.userInfo&&!this.userInfo.isGuest()&&this.userInfo.checkAttribute(r.GroupAttributes.CAN_SAVE_MEASUREMENTS)},t.prototype.canUseMeasurementTool=function(){return this.LicenseService.isLicenseValid&&this.userInfo&&this.userInfo.checkAttribute(r.GroupAttributes.CAN_USE_MEASUREMENT_TOOL)},t.prototype.canViewAuditPanel=function(){return this.userInfo&&this.userInfo.checkAttribute(r.GroupAttributes.CAN_EXPORT_POI_AUDIT_RECORDS)},t.prototype.isAdmin=function(){return this.userInfo&&this.userInfo.isAdmin()},t.prototype.isGuest=function(){return!this.userInfo||this.userInfo.isGuest()},t.prototype.getDefaultGroupRead=function(){return this.getStoredGroup("iv_group_read")||this.userInfo&&this.userInfo.defaultGroupRead},t.prototype.getDefaultGroupWrite=function(){return this.getStoredGroup("iv_group_write")||this.userInfo&&this.userInfo.defaultGroupWrite},t.prototype.getStoredGroup=function(t){var e=this.StorageService.get(t);return this.userInfo&&(-1===this.userInfo.groups.indexOf(e)||0===e&&!this.userInfo.checkAttribute(r.GroupAttributes.CAN_MAKE_PUBLIC))?void 0:e},t.prototype.localLogin=function(t,e){return this.AuthenticationService.login(t,e)},t.prototype.logout=function(){return this.AuthenticationService.logout()},t.prototype.changePassword=function(t,e,n,i){var r=this.UserRepository.create();return r.id=t,r.username=e,r.password=n,r.passwordNew=i,this.UserRepository.updatePassword(r)},t.prototype.updateUserProfile=function(t){var e=this;return this.UserRepository.updateProfile(t).then(function(t){return e.userInfo.id===t.id&&e.AuthenticationService.fetchCurrentUser().catch(function(){}),t})},t.prototype.updateUserPrimaryGroups=function(t,e){var n=this.UserRepository.create();return n.id=t,n.primaryGroups=e,this.UserRepository.updatePrimaryGroups(n)},t.prototype.removeUser=function(t){return this.UserRepository.remove({id:t})},t.ɵfac=function(e){return new(e||t)(s.ɵɵinject("$timeout"),s.ɵɵinject("$window"),s.ɵɵinject(c.ConfigService),s.ɵɵinject(l.StorageService),s.ɵɵinject(u.UserRepository),s.ɵɵinject(d.AuthenticationService),s.ɵɵinject(p.LicenseService))},t.ɵprov=s.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.UserService=h,s.ɵsetClassMetadata(h,[{type:a.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:a.Inject,args:["$timeout"]}]},{type:void 0,decorators:[{type:a.Inject,args:["$window"]}]},{type:c.ConfigService},{type:l.StorageService},{type:u.UserRepository},{type:d.AuthenticationService},{type:p.LicenseService}]},null),i.module("IVWebApp").service("UserService",o.downgradeInjectable(h))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(7),o=(n(83),n(22),n(20)),a=(n(21),n(55)),s=n(16),c=(n(17),n(36),n(6)),l=n(0),u=n(105),d=n(52),p=n(0),h=n(83),f=n(22),g=n(21),m=n(17),v=n(36),y=function(){function t(t,e,n,i,r){var o=this;this.SiteModelService=t,this.SiteModelRepository=e,this.TrackingService=n,this.ViewService=i,this.onFloorChange=new s.Signal,this.onFloorUpdate=new s.Signal,this.currentFloors=[],this.floorNames=[],this.floors=[],this.mapMode=!1,this.isFirstFloorChange=!0,e.siteModelUpdated.connect(function(){return o.resetCurrentFloors()}),r.onAuthenticationChanged.connect(function(t,e){if(e)o.resetCurrentFloors();else{var n=o.currentFloors;o.floors=[],o.currentFloors=[],o.syncFloorNames(),o.floorsUpdateComplete(o.currentFloors),o.floorChangeComplete(n,!1).catch(function(){})}})}return t.prototype.getCurrentFloorName=function(){return this.currentFloorName},t.prototype.resetCurrentFloors=function(){this.floors=[],this.updateFloors(this.mapMode).catch(function(){})},t.prototype.updateFloors=function(t){this.mapMode=t;var e=this.ViewService.mapView.getCamera(),n=this.ViewService.mainView;return n.viewMode===u.SceneViewMode.Map&&this.ViewService.isPanoPrimaryView()&&(e=n.getViewportByName(d.SplitViewportName.TOP_VIEW).getCamera()),t?this.updateByFloorsInView(e):this.updateByMainViewPosition()},t.prototype.changeFloorByEntity=function(t,e){void 0===e&&(e=this.ViewService.isPanoPrimaryView());var n=t.getEntityOfType(a.SiteModelType.FLOOR);return n?(this.oldFloorName=this.getCurrentFloorName(),this.changeFloorByName(n.name,e)):Promise.reject(void 0)},t.prototype.changeFloorByName=function(t,e){return void 0===e&&(e=this.ViewService.isPanoPrimaryView()),this.currentFloorName===t?Promise.reject(void 0):(this.currentFloorName=t,this.mapMode?this.setCurrentFloorsByName(e):this.setCurrentFloorsByPositionAndName(this.ViewService.mainView.getCamera().position,e))},t.prototype.changeFloorByMainViewPosition=function(){var t=this;return this.SiteModelService.getCurrentMainViewFloor().catch(function(){}).then(function(e){return e?t.changeFloorByName(e.name,!1):Promise.reject(void 0)})},t.prototype.getFloorForHeight=function(e){return this.floors.filter(function(n){return t.isHeightInFloor(e,n)})[0]},t.prototype.isInCurrentFloors=function(t){if(t){var e=t.getEntityOfType(a.SiteModelType.FLOOR);return r.includes(this.currentFloors,e)}return!1},t.isHeightInFloor=function(t,e){return void 0!==e.zMin&&void 0!==e.zMax&&r.inRange(t,e.zMin,e.zMax)},t.prototype.updateByFloorsInView=function(t){var e=this,n=this.floors;return this.floors=[],this.SiteModelService.getFloorsInView(t).then(function(t){return e.floors=t,e.syncFloorNames(),e.floorsUpdateComplete(n),e.setCurrentFloorsByName(!1)})},t.prototype.updateByMainViewPosition=function(){var t=this,e=this.floors;return this.floors=[],this.SiteModelService.getCurrentMainViewFloor().catch(function(){}).then(function(n){n&&t.SiteModelService.getFloorsOfContainingBuilding(n,t.floors),t.syncFloorNames(),t.floorsUpdateComplete(e),t.currentFloorName=n?n.name:void 0;var i=t.ViewService.mainView.getCamera().position;return t.setCurrentFloorsByPositionAndName(i,!1)})},t.prototype.syncFloorNames=function(){this.floorNames=this.calculateFloorNames(this.floors)},t.prototype.calculateFloorNames=function(e){for(var n=r.groupBy(e,function(t){return t.name}),i=r.partition(n,function(e){var n;return t.IS_NUMBER_RX.test(null===(n=e[0].name)||void 0===n?void 0:n.trim())}),o=i[0],a=i[1],s=r.sortBy(o,function(t){return parseInt(t[0].name,10)}),c=0,l=a;c<l.length;c++){for(var u=l[c],d=0,p=s;d<p.length;d++){var h=p[d],f=this.compareFloorGroups(h,u);if(!(void 0===f||f<=0)){s.splice(s.indexOf(h),0,u);break}}-1===s.indexOf(u)&&s.push(u)}return s.map(function(t){return t[0].name})},t.prototype.compareFloorGroups=function(t,e){var n=this,i=r.intersectionBy(t,e,function(t){return t.getEntityOfType(a.SiteModelType.BUILDING)});if(i.length>0){var o=0;return i.forEach(function(t){var i=n.findFloorInBuilding(e,t);o+=t.zMin<i.zMin?-1:1}),o}},t.prototype.findFloorInBuilding=function(t,e){return t.find(function(t){return t.getEntityOfType(a.SiteModelType.BUILDING)===e.getEntityOfType(a.SiteModelType.BUILDING)})},t.prototype.setCurrentFloorsByName=function(t){var e=this,n=this.currentFloors;return this.currentFloors=r.filter(this.floors,function(t){return t.name===e.currentFloorName}),this.floorChangeComplete(n,t)},t.prototype.setCurrentFloorsByPositionAndName=function(e,n){var i=this,o=this.currentFloors;return this.currentFloors=[],this.SiteModelRepository.findByTypeAndDistance2D(a.SiteModelType.FLOOR,e,t.MAX_DIST_PANO_MODE).then(function(t){i.currentFloors=r.filter(t,function(t){return t.name===i.currentFloorName})}).catch(function(){}).then(function(){return i.floorChangeComplete(o,n)})},t.prototype.floorsUpdateComplete=function(t){if(!r.isEqual(t,this.floors)){var e={floors:this.floors,floorNames:this.floorNames,currentFloors:this.currentFloors};this.onFloorUpdate.emit(e),o.invalidateAngular()}},t.prototype.floorChangeComplete=function(t,e){if(r.isEqual(t,this.currentFloors)&&!this.isFirstFloorChange)return Promise.reject(void 0);var n={currentFloors:this.currentFloors,mayChangeLocation:e};return this.onFloorChange.emit(n),this.isFirstFloorChange=!1,this.trackFloorChange(t),o.invalidateAngular(),Promise.resolve()},t.prototype.trackFloorChange=function(t){this.TrackingService.trackFloorChange(t,this.currentFloors,this.oldFloorName,this.currentFloorName)},t.MAX_DIST_PANO_MODE=1500,t.IS_NUMBER_RX=/^-?[0-9]+$/,t.ɵfac=function(e){return new(e||t)(p.ɵɵinject(h.SiteModelService),p.ɵɵinject(f.SiteModelRepository),p.ɵɵinject(g.TrackingService),p.ɵɵinject(m.ViewService),p.ɵɵinject(v.AuthenticationService))},t.ɵprov=p.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.FloorChangerService=y,p.ɵsetClassMetadata(y,[{type:l.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:h.SiteModelService},{type:f.SiteModelRepository},{type:g.TrackingService},{type:m.ViewService},{type:v.AuthenticationService}]},null),i.module("IVWebApp").service("FloorChangerService",c.downgradeInjectable(y))},function(t,e,n){var i=n(42);t.exports=function(t){if(!i(t))throw TypeError(String(t)+" is not an object");return t}},function(t,e,n){"use strict";n.r(e),n.d(e,"AUTO_STYLE",function(){return o}),n.d(e,"AnimationBuilder",function(){return i}),n.d(e,"AnimationFactory",function(){return r}),n.d(e,"NoopAnimationPlayer",function(){return w}),n.d(e,"animate",function(){return s}),n.d(e,"animateChild",function(){return g}),n.d(e,"animation",function(){return f}),n.d(e,"group",function(){return c}),n.d(e,"keyframes",function(){return p}),n.d(e,"query",function(){return v}),n.d(e,"sequence",function(){return l}),n.d(e,"stagger",function(){return y}),n.d(e,"state",function(){return d}),n.d(e,"style",function(){return u}),n.d(e,"transition",function(){return h}),n.d(e,"trigger",function(){return a}),n.d(e,"useAnimation",function(){return m}),n.d(e,"ɵAnimationGroupPlayer",function(){return S}),n.d(e,"ɵPRE_STYLE",function(){return x});
  1555. /**
  1556. * @license Angular v9.1.9
  1557. * (c) 2010-2020 Google LLC. https://angular.io/
  1558. * License: MIT
  1559. */
  1560. var i=function(){},r=function(){},o="*";function a(t,e){return{type:7,name:t,definitions:e,options:{}}}function s(t,e){return void 0===e&&(e=null),{type:4,styles:e,timings:t}}function c(t,e){return void 0===e&&(e=null),{type:3,steps:t,options:e}}function l(t,e){return void 0===e&&(e=null),{type:2,steps:t,options:e}}function u(t){return{type:6,styles:t,offset:null}}function d(t,e,n){return{type:0,name:t,styles:e,options:n}}function p(t){return{type:5,steps:t}}function h(t,e,n){return void 0===n&&(n=null),{type:1,expr:t,animation:e,options:n}}function f(t,e){return void 0===e&&(e=null),{type:8,animation:t,options:e}}function g(t){return void 0===t&&(t=null),{type:9,options:t}}function m(t,e){return void 0===e&&(e=null),{type:10,animation:t,options:e}}function v(t,e,n){return void 0===n&&(n=null),{type:11,selector:t,animation:e,options:n}}function y(t,e){return{type:12,timings:t,animation:e}}
  1561. /**
  1562. * @license
  1563. * Copyright Google Inc. All Rights Reserved.
  1564. *
  1565. * Use of this source code is governed by an MIT-style license that can be
  1566. * found in the LICENSE file at https://angular.io/license
  1567. */function b(t){Promise.resolve(null).then(t)}
  1568. /**
  1569. * @license
  1570. * Copyright Google Inc. All Rights Reserved.
  1571. *
  1572. * Use of this source code is governed by an MIT-style license that can be
  1573. * found in the LICENSE file at https://angular.io/license
  1574. */var w=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=0),this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this.parentPlayer=null,this.totalTime=t+e}return t.prototype._onFinish=function(){this._finished||(this._finished=!0,this._onDoneFns.forEach(function(t){return t()}),this._onDoneFns=[])},t.prototype.onStart=function(t){this._onStartFns.push(t)},t.prototype.onDone=function(t){this._onDoneFns.push(t)},t.prototype.onDestroy=function(t){this._onDestroyFns.push(t)},t.prototype.hasStarted=function(){return this._started},t.prototype.init=function(){},t.prototype.play=function(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0},t.prototype.triggerMicrotask=function(){var t=this;b(function(){return t._onFinish()})},t.prototype._onStart=function(){this._onStartFns.forEach(function(t){return t()}),this._onStartFns=[]},t.prototype.pause=function(){},t.prototype.restart=function(){},t.prototype.finish=function(){this._onFinish()},t.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(function(t){return t()}),this._onDestroyFns=[])},t.prototype.reset=function(){},t.prototype.setPosition=function(t){},t.prototype.getPosition=function(){return 0},t.prototype.triggerCallback=function(t){var e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(function(t){return t()}),e.length=0},t}(),S=function(){function t(t){var e=this;this._onDoneFns=[],this._onStartFns=[],this._finished=!1,this._started=!1,this._destroyed=!1,this._onDestroyFns=[],this.parentPlayer=null,this.totalTime=0,this.players=t;var n=0,i=0,r=0,o=this.players.length;0==o?b(function(){return e._onFinish()}):this.players.forEach(function(t){t.onDone(function(){++n==o&&e._onFinish()}),t.onDestroy(function(){++i==o&&e._onDestroy()}),t.onStart(function(){++r==o&&e._onStart()})}),this.totalTime=this.players.reduce(function(t,e){return Math.max(t,e.totalTime)},0)}return t.prototype._onFinish=function(){this._finished||(this._finished=!0,this._onDoneFns.forEach(function(t){return t()}),this._onDoneFns=[])},t.prototype.init=function(){this.players.forEach(function(t){return t.init()})},t.prototype.onStart=function(t){this._onStartFns.push(t)},t.prototype._onStart=function(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(function(t){return t()}),this._onStartFns=[])},t.prototype.onDone=function(t){this._onDoneFns.push(t)},t.prototype.onDestroy=function(t){this._onDestroyFns.push(t)},t.prototype.hasStarted=function(){return this._started},t.prototype.play=function(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(function(t){return t.play()})},t.prototype.pause=function(){this.players.forEach(function(t){return t.pause()})},t.prototype.restart=function(){this.players.forEach(function(t){return t.restart()})},t.prototype.finish=function(){this._onFinish(),this.players.forEach(function(t){return t.finish()})},t.prototype.destroy=function(){this._onDestroy()},t.prototype._onDestroy=function(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(function(t){return t.destroy()}),this._onDestroyFns.forEach(function(t){return t()}),this._onDestroyFns=[])},t.prototype.reset=function(){this.players.forEach(function(t){return t.reset()}),this._destroyed=!1,this._finished=!1,this._started=!1},t.prototype.setPosition=function(t){var e=t*this.totalTime;this.players.forEach(function(t){var n=t.totalTime?Math.min(1,e/t.totalTime):1;t.setPosition(n)})},t.prototype.getPosition=function(){var t=0;return this.players.forEach(function(e){var n=e.getPosition();t=Math.min(n,t)}),t},t.prototype.beforeDestroy=function(){this.players.forEach(function(t){t.beforeDestroy&&t.beforeDestroy()})},t.prototype.triggerCallback=function(t){var e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(function(t){return t()}),e.length=0},t}(),x="!";
  1575. /**
  1576. * @license
  1577. * Copyright Google Inc. All Rights Reserved.
  1578. *
  1579. * Use of this source code is governed by an MIT-style license that can be
  1580. * found in the LICENSE file at https://angular.io/license
  1581. */},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(1058),s=(n(9),n(22),n(310)),c=(n(14),n(75),n(135)),l=(n(66),n(380)),u=n(382),d=n(6),p=n(0),h=n(0),f=n(9),g=n(14),m=n(22),v=n(75),y=n(66),b=function(t){function e(e,n,i,r,o){var s=t.call(this,a.Dataset,e,n,i)||this;return s.TransformService=o,s.path="datasets",c.EntityRelationMapper.manyToOne(s,"bundle","bundleId",r),c.EntityRelationMapper.manyToMany(s,"siteModelEntities","siteModelEntityIds",i),s.entityCreated.connect(function(t){s.registerTransforms(t)}),s.entityRemoved.connect(function(t){s.unregisterTransform(t)}),s}return r(e,t),e.prototype.registerTransforms=function(t){for(var e=0,n=t;e<n.length;e++){var i=n[e];i.crs=new l.ReferenceSystem(!1,this.TransformService.NAVVIS_PREFIX+":"+i.name),this.TransformService.registerReferenceSystem(i.crs),i.transform=new u.AffineTransform(i.crs,this.TransformService.crsLocal,i.m2w_),this.TransformService.registerTransform(i.transform)}},e.prototype.unregisterTransform=function(t){t.crs&&this.TransformService.unregisterReferenceSystem(t.crs),t.transform&&this.TransformService.unregisterTransform(t.transform)},e.ɵfac=function(t){return new(t||e)(h.ɵɵinject(f.RestService),h.ɵɵinject(g.GeoTransformationService),h.ɵɵinject(m.SiteModelRepository),h.ɵɵinject(v.BundleRepository),h.ɵɵinject(y.TransformService))},e.ɵprov=h.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(s.SiteModelBoundRestRepository);e.DatasetRepository=b,h.ɵsetClassMetadata(b,[{type:p.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:f.RestService},{type:g.GeoTransformationService},{type:m.SiteModelRepository},{type:v.BundleRepository},{type:y.TransformService}]},null),o.module("IVWebApp").service("DatasetRepository",d.downgradeInjectable(b))},function(t,e,n){"use strict";n.d(e,"b",function(){return u}),n.d(e,"a",function(){return d});var i=n(1),r=n(12),o=n(26),a=n(33),s=n(127),c=n(336),l=n(207),u=function(t){function e(e){var n=t.call(this,e)||this;return n.destination=e,n}return i.c(e,t),e}(o.a),d=function(t){function e(){var e=t.call(this)||this;return e.observers=[],e.closed=!1,e.isStopped=!1,e.hasError=!1,e.thrownError=null,e}return i.c(e,t),e.prototype[l.a]=function(){return new u(this)},e.prototype.lift=function(t){var e=new p(this,this);return e.operator=t,e},e.prototype.next=function(t){if(this.closed)throw new s.a;if(!this.isStopped)for(var e=this.observers,n=e.length,i=e.slice(),r=0;r<n;r++)i[r].next(t)},e.prototype.error=function(t){if(this.closed)throw new s.a;this.hasError=!0,this.thrownError=t,this.isStopped=!0;for(var e=this.observers,n=e.length,i=e.slice(),r=0;r<n;r++)i[r].error(t);this.observers.length=0},e.prototype.complete=function(){if(this.closed)throw new s.a;this.isStopped=!0;for(var t=this.observers,e=t.length,n=t.slice(),i=0;i<e;i++)n[i].complete();this.observers.length=0},e.prototype.unsubscribe=function(){this.isStopped=!0,this.closed=!0,this.observers=null},e.prototype._trySubscribe=function(e){if(this.closed)throw new s.a;return t.prototype._trySubscribe.call(this,e)},e.prototype._subscribe=function(t){if(this.closed)throw new s.a;return this.hasError?(t.error(this.thrownError),a.a.EMPTY):this.isStopped?(t.complete(),a.a.EMPTY):(this.observers.push(t),new c.a(this,t))},e.prototype.asObservable=function(){var t=new r.a;return t.source=this,t},e.create=function(t,e){return new p(t,e)},e}(r.a),p=function(t){function e(e,n){var i=t.call(this)||this;return i.destination=e,i.source=n,i}return i.c(e,t),e.prototype.next=function(t){var e=this.destination;e&&e.next&&e.next(t)},e.prototype.error=function(t){var e=this.destination;e&&e.error&&this.destination.error(t)},e.prototype.complete=function(){var t=this.destination;t&&t.complete&&this.destination.complete()},e.prototype._subscribe=function(t){return this.source?this.source.subscribe(t):a.a.EMPTY},e}(d)},function(t,e,n){"use strict";n.d(e,"a",function(){return s});var i=n(56),r=n(224),o=n(142),a=n(208),s=function(){function t(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._unsubscribe=t)}var e;return t.prototype.unsubscribe=function(){var e;if(!this.closed){var n=this._parentOrParents,s=this._unsubscribe,l=this._subscriptions;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof t)n.remove(this);else if(null!==n)for(var u=0;u<n.length;++u)n[u].remove(this);if(Object(o.a)(s))try{s.call(this)}catch(t){e=t instanceof a.a?c(t.errors):[t]}if(Object(i.a)(l)){u=-1;for(var d=l.length;++u<d;){var p=l[u];if(Object(r.a)(p))try{p.unsubscribe()}catch(t){e=e||[],t instanceof a.a?e=e.concat(c(t.errors)):e.push(t)}}}if(e)throw new a.a(e)}},t.prototype.add=function(e){var n=e;if(!e)return t.EMPTY;switch(typeof e){case"function":n=new t(e);case"object":if(n===this||n.closed||"function"!=typeof n.unsubscribe)return n;if(this.closed)return n.unsubscribe(),n;if(!(n instanceof t)){var i=n;(n=new t)._subscriptions=[i]}break;default:throw new Error("unrecognized teardown "+e+" added to Subscription.")}var r=n._parentOrParents;if(null===r)n._parentOrParents=this;else if(r instanceof t){if(r===this)return n;n._parentOrParents=[r,this]}else{if(-1!==r.indexOf(this))return n;r.push(this)}var o=this._subscriptions;return null===o?this._subscriptions=[n]:o.push(n),n},t.prototype.remove=function(t){var e=this._subscriptions;if(e){var n=e.indexOf(t);-1!==n&&e.splice(n,1)}},t.EMPTY=((e=new t).closed=!0,e),t}();function c(t){return t.reduce(function(t,e){return t.concat(e instanceof a.a?e.errors:e)},[])}},function(t,e,n){(function(e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof e&&e)||Function("return this")()}).call(this,n(213))},function(t,e,n){t.exports=n.p+"a67177e1632a760641d07441303b97d0.ic_close_grey.svg"},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(178),n(178),n(9),n(72);var a=n(16),s=(n(86),n(8)),c=n(0),l=n(6),u=n(144),d=n(20),p=n(0),h=n(9),f=n(178),g=n(72),m=n(86),v=function(){function t(t,e,n,i,r){this.RestService=t,this.UserRepository=e,this.JWTTokenService=n,this.$timeout=i,this.InstanceInformationService=r,this.OAUTH_ERROR_QUERY_PARAM="oauth_error",this.onAuthenticationChanged=new a.Signal,this.dataLoadCompleted=new a.Signal,this.showLoginScreenModal=new a.Signal,this.dataAccessible=!1,this.loggedInWithToken=!1,this.initializedDeferred=new u.Deferred,this.initialized=this.initializedDeferred.promise}return t.prototype.initialize=function(){var t=this,e=this.fetchCurrentUser().then(function(e){return t.initializedDeferred.resolve(e),e}).catch(function(e){t.initializedDeferred.reject(e)});return this.isDataAccessible().catch(s.handleWarning),e},t.prototype.fetchCurrentUser=function(){var t=this;return this.RestService.getApi("user",{},void 0,!1).then(function(e){var n=t.UserRepository.create();return n.fillFromData(e),t.currentUser=n,n})},t.prototype.login=function(t,e,n){var o=this;return void 0===n&&(n=!1),this.RestService.postApi("auth/token",{username:t,password:e},void 0,!1).then(function(t){return i(o,void 0,void 0,function(){return r(this,function(e){switch(e.label){case 0:return this.JWTTokenService.saveJwt(t.token),this.currentUser=this.UserRepository.create(),this.currentUser.fillFromData(t.principal),this.sendAuthenticationChanged(),this.refreshJwtBeforeExpiry(),n?[4,d.signalEmitted(this.dataLoadCompleted)]:[3,2];case 1:e.sent(),e.label=2;case 2:return[2,this.currentUser]}})})})},t.prototype.loginWithToken=function(t,e){return void 0===e&&(e=!1),this.markAsLoggedInWithToken(),this.loginWithTokenInternal(t,!0,!1,e)},t.prototype.loginWithTokenInternal=function(t,e,n,o){var a=this;return void 0===e&&(e=!1),void 0===n&&(n=!0),void 0===o&&(o=!1),this.JWTTokenService.saveJwt(t),this.fetchCurrentUser().then(function(t){return i(a,void 0,void 0,function(){return r(this,function(i){switch(i.label){case 0:return this.currentUser=t,n?this.refreshJwtBeforeExpiry():this.clearRefreshTimers(),e?(this.sendAuthenticationChanged(),o?[4,d.signalEmitted(this.dataLoadCompleted)]:[3,2]):[3,2];case 1:i.sent(),i.label=2;case 2:return[2,t]}})})})},t.prototype.updateToken=function(t){this.JWTTokenService.saveJwt(t)},t.prototype.markAsLoggedInWithToken=function(){this.loggedInWithToken=!0},t.prototype.refreshJwtBeforeExpiry=function(){var t=this;this.clearRefreshTimers(),this.loggedInWithToken?console.warn("Refreshed IV token was requested but the user was logged in with a (maybe external) token directly"):this.refreshTimer=this.$timeout(function(){t.refreshTimer=void 0,t.RestService.getApi("auth/refresh",{},void 0,!1).then(function(e){t.updateToken(e.token),t.refreshJwtBeforeExpiry()}).catch(function(e){401===e.status&&t.JWTTokenService.eraseJwt()})},this.JWTTokenService.renewIn())},t.prototype.clearRefreshTimers=function(){this.refreshTimer&&(this.$timeout.cancel(this.refreshTimer),this.refreshTimer=void 0)},t.prototype.logout=function(){var t=this;return this.JWTTokenService.eraseJwt(),this.loggedInWithToken=!1,this.clearRefreshTimers(),this.fetchCurrentUser().then(function(){return IV.SidebarMenuService.closeMenu(),t.sendAuthenticationChanged()})},t.prototype.isDataAccessible=function(){return i(this,void 0,void 0,function(){var t=this;return r(this,function(e){switch(e.label){case 0:return[4,this.initialized];case 1:return e.sent(),this.currentUser.isGuest()?[2,this.InstanceInformationService.getInformation().then(function(e){return t.dataAccessible=!e.isPrivate,t.dataAccessible})]:(this.dataAccessible=!0,[2,Promise.resolve(this.dataAccessible)])}})})},t.prototype.sendAuthenticationChanged=function(){var t=this;this.isDataAccessible().then(function(e){t.onAuthenticationChanged.emit(t.currentUser,e)}).catch(s.handleWarning)},t.ɵfac=function(e){return new(e||t)(p.ɵɵinject(h.RestService),p.ɵɵinject(f.UserRepository),p.ɵɵinject(g.JWTTokenService),p.ɵɵinject("$timeout"),p.ɵɵinject(m.InstanceInformationService))},t.ɵprov=p.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.AuthenticationService=v,p.ɵsetClassMetadata(v,[{type:c.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:h.RestService},{type:f.UserRepository},{type:g.JWTTokenService},{type:void 0,decorators:[{type:c.Inject,args:["$timeout"]}]},{type:m.InstanceInformationService}]},null),o.module("IVWebApp").service("AuthenticationService",l.downgradeInjectable(v))},function(t,e,n){"use strict";n.r(e),n.d(e,"BidiModule",function(){return l}),n.d(e,"DIR_DOCUMENT",function(){return o}),n.d(e,"Dir",function(){return c}),n.d(e,"Directionality",function(){return s}),n.d(e,"ɵangular_material_src_cdk_bidi_bidi_a",function(){return a});var i=n(0),r=n(3),o=new i.InjectionToken("cdk-dir-doc",{providedIn:"root",factory:a});function a(){return Object(i.inject)(r.DOCUMENT)}
  1582. /**
  1583. * @license
  1584. * Copyright Google LLC All Rights Reserved.
  1585. *
  1586. * Use of this source code is governed by an MIT-style license that can be
  1587. * found in the LICENSE file at https://angular.io/license
  1588. */var s=function(){function t(t){if(this.value="ltr",this.change=new i.EventEmitter,t){var e=t.body?t.body.dir:null,n=t.documentElement?t.documentElement.dir:null,r=e||n;this.value="ltr"===r||"rtl"===r?r:"ltr"}}return t.prototype.ngOnDestroy=function(){this.change.complete()},t.ctorParameters=function(){return[{type:void 0,decorators:[{type:i.Optional},{type:i.Inject,args:[o]}]}]},t.ɵprov=Object(i["ɵɵdefineInjectable"])({factory:function(){return new t(Object(i["ɵɵinject"])(o,8))},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)(i["ɵɵinject"](o,8))},t}(),c=function(){function t(){this._dir="ltr",this._isInitialized=!1,this.change=new i.EventEmitter}return Object.defineProperty(t.prototype,"dir",{get:function(){return this._dir},set:function(t){var e=this._dir,n=t?t.toLowerCase():t;this._rawDir=t,this._dir="ltr"===n||"rtl"===n?n:"ltr",e!==this._dir&&this._isInitialized&&this.change.emit(this._dir)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"value",{get:function(){return this.dir},enumerable:!0,configurable:!0}),t.prototype.ngAfterContentInit=function(){this._isInitialized=!0},t.prototype.ngOnDestroy=function(){this.change.complete()},t.propDecorators={change:[{type:i.Output,args:["dirChange"]}],dir:[{type:i.Input}]},t.ɵfac=function(e){return new(e||t)},t.ɵdir=i["ɵɵdefineDirective"]({type:t,selectors:[["","dir",""]],hostVars:1,hostBindings:function(t,e){2&t&&i["ɵɵattribute"]("dir",e._rawDir)},inputs:{dir:"dir"},outputs:{change:"dirChange"},exportAs:["dir"],features:[i["ɵɵProvidersFeature"]([{provide:s,useExisting:t}])]}),t}(),l=function(){function t(){}return t.ɵmod=i["ɵɵdefineNgModule"]({type:t}),t.ɵinj=i["ɵɵdefineInjector"]({factory:function(e){return new(e||t)}}),("undefined"==typeof ngJitMode||ngJitMode)&&i["ɵɵsetNgModuleScope"](t,{declarations:[c],exports:[c]}),t}();
  1589. /**
  1590. * @license
  1591. * Copyright Google LLC All Rights Reserved.
  1592. *
  1593. * Use of this source code is governed by an MIT-style license that can be
  1594. * found in the LICENSE file at https://angular.io/license
  1595. */},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(7),s=n(16),c=n(6),l=n(0),u=(n(131),n(8)),d=n(0),p=n(131),h=function(){function t(t,e,n){this.ToolboxMenuService=t,this.$timeout=e,this.hotkeys=n,this.navigationStack=[],this.items=[],this.itemsVisibilityUpdated=new s.Signal,this.transitionInProgress=!1,this.internalTransitionInProgress=!1,this.switchingItemsInProgress=!1,this.itemsMap={},this._isMenuHidden=!0,this.verticalMenuTransitionDuration=200,this.initItemsUpdateHandler()}return t.prototype.initItemsUpdateHandler=function(){var t=this;this.itemsVisibilityUpdated.connect(function(){if(t.isAnyItemVisible()){var e=t.navigationStack.findIndex(function(t){return!t.isVisible()});e>-1&&a.times(t.navigationStack.length-e,function(){return t.goBack()})}else t.closeMenu()})},t.prototype.openMenu=function(){this.isMenuHidden=!1},t.prototype.closeMenu=function(){var t=this;this.checkActiveItemOnExit(function(){return t.closeMenu()})||(this.isMenuHidden=!0)},t.prototype.goToItem=function(e){return i(this,void 0,void 0,function(){var n=this;return r(this,function(i){switch(i.label){case 0:if(this.isItemOnStack(e)||e.active||!e.isVisible())return[2];if(!e.isFullscreen||this.ToolboxMenuService.isMenuHidden)return[3,4];i.label=1;case 1:return i.trys.push([1,3,,4]),[4,this.ToolboxMenuService.closeMenu(!0)];case 2:return i.sent(),[3,4];case 3:return i.sent(),[2];case 4:return this.checkActiveItemOnExit(function(){return n.goToItem(e).catch(u.handleWarning)})?[2]:(e.onClick&&e.onClick(),t.isItemWithContent(e)?(e.active=!0,this.isTabSwitchItem(e)?(this.switchingItemsInProgress=!0,this.goBack(0)):(this.internalTransitionInProgress=!0,this.$timeout(function(){return n.internalTransitionInProgress=!1},this.verticalMenuTransitionDuration).catch(u.handleWarning)),e.isFullscreen&&this.hotkeys.pause(),this.navigationStack.push(e),[2]):[2])}})})},t.prototype.goBack=function(t){var e=this;if(void 0===t&&(t=this.verticalMenuTransitionDuration),!this.checkActiveItemOnExit(function(){return e.goBack()})){var n=this.navigationStack.pop();this.internalTransitionInProgress=!0,this.$timeout(function(){n.active=!1,e.internalTransitionInProgress=!1,e.switchingItemsInProgress=!1},t).catch(u.handleWarning)}},t.prototype.goToRoot=function(){var t=this;a.times(this.navigationStack.length,function(){return t.goBack()})},t.prototype.continueHoldAction=function(){this.holdAction&&(this.holdAction(),this.holdAction=void 0)},t.prototype.isParentItemsCollection=function(t){var e=this.navigationStack.length;return e>1&&a.inRange(this.navigationStack.indexOf(t),0,e-1)},t.prototype.isActiveItemsCollection=function(t){var e=this.getActiveItem();return void 0!==e&&e===t},t.prototype.isChildItemsCollection=function(t){return void 0!==t&&-1===this.navigationStack.indexOf(t)},t.prototype.isAnyItemVisible=function(){return this.items.some(function(t){return t.isVisible()})},t.prototype.getActiveItem=function(){var t=this.navigationStack.length;return t>0?this.navigationStack[t-1]:void 0},t.prototype.isTabSwitchItem=function(t){var e=this.getActiveItem();return void 0!==e&&!a.includes(e.items,t)},Object.defineProperty(t.prototype,"isMenuHidden",{get:function(){return this._isMenuHidden},set:function(t){var e=this;if(this._isMenuHidden!==t){if(this._isMenuHidden=t,t){var n=this.getActiveItem(),i=void 0!==n&&n.isFullscreen?0:this.verticalMenuTransitionDuration;this.$timeout(function(){return e.goToRoot()},i).catch(u.handleWarning)}this.transitionInProgress=!0,this.$timeout(function(){return e.transitionInProgress=!1},this.verticalMenuTransitionDuration).catch(u.handleWarning)}},enumerable:!0,configurable:!0}),t.prototype.isItemOnStack=function(t){return this.navigationStack.some(function(e){return e===t})},t.prototype.addItem=function(t){this.items.push(t),this.storeItem(t)},t.prototype.getItem=function(t){return this.itemsMap[t]},t.isItemWithContent=function(t){return void 0!==t.template&&t.template.length>0||void 0!==t.items&&t.items.length>0},t.prototype.storeItem=function(t){var e=this;this.itemsMap[t.key]=t,t.items.forEach(function(t){return e.storeItem(t)})},t.prototype.checkActiveItemOnExit=function(t){var e=this.getActiveItem();return void 0!==e&&e.isFullscreen&&this.hotkeys.unpause(),!(void 0===e||void 0===e.onExit||!e.onExit()||(this.holdAction=t,0))},t.ɵfac=function(e){return new(e||t)(d.ɵɵinject(p.ToolboxMenuService),d.ɵɵinject("$timeout"),d.ɵɵinject("hotkeys"))},t.ɵprov=d.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.SidebarMenuService=h,d.ɵsetClassMetadata(h,[{type:l.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:p.ToolboxMenuService},{type:void 0,decorators:[{type:l.Inject,args:["$timeout"]}]},{type:void 0,decorators:[{type:l.Inject,args:["hotkeys"]}]}]},null),o.module("IVWebApp").service("SidebarMenuService",c.downgradeInjectable(h))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(7),o=n(4),a=(n(15),n(391),n(54),n(103),n(41),n(25)),s=n(20),c=n(16),l=n(92),u=(n(38),n(6)),d=n(0),p=(n(17),n(8)),h=n(0),f=n(15),g=n(41),m=n(54),v=n(391),y=n(103),b=n(38),w=n(17),S=function(){function t(t,e,n,i,r,o,a,s,l,u){var d=this;this.IV=t,this.gettextCatalog=e,this.$timeout=n,this.ConfigService=i,this.ErrorService=r,this.LicenseService=o,this.PoiSearchRepository=a,this.PoiRepository=s,this.SidebarMenuService=l,this.ViewService=u,this.poisChanged=new c.Signal,this.openEditor=new c.Signal,this.routeModeChanged=new c.Signal,this.onPoiOpen=new c.Signal,this.onPoiClose=new c.Signal,this.onPoisHighlight=new c.Signal,this.onPoisUnhighlight=new c.Signal,this.onPoiClick=new c.Signal,this.onPoiMouseOver=new c.Signal,this.onPoiMouseOut=new c.Signal,this.onPoiSave=new c.Signal,this.onPoiDelete=new c.Signal,this.isRouteMode=!1,this.wasRouteFound=!1,this.enableFeatures={routing:!1,share:!0,view:!0,fullScreen:!1,visibilityCheck:!0},this.onPoiClickCollector=new c.CollectorWhile0(this.onPoiClick),this.uploadedIconsList={},this.errorHandler=this.ErrorService.createDefaultOnceWrapper(),this.routing={start:void 0,end:void 0},this._highlightedPois=new Set,s.entityRemoved.connect(function(t,e){e||(d._openedPoi&&d._openedPoi.id===t.id&&d.closeAndUnhighlightPoi(),d.poisChanged.emit(),d.onPoiDelete.emit(t))}),s.transformLocationAction.connect(function(){return d.poisChanged.emit()}),i.updated.connect(function(){d.initEnableFeatures(),d.poisChanged.emit()}),this.initEnableFeatures()}return Object.defineProperty(t.prototype,"poisToDisplay",{get:function(){return this._poisToDisplay},set:function(t){this._poisToDisplay=t,this.poisChanged.emit()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"highlightedPois",{get:function(){return this._highlightedPois},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"openedPoi",{get:function(){return this._openedPoi},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"focusedPoi",{get:function(){return this._focusedPoi},set:function(t){this._focusedPoi&&this.unhighlightPois([this._focusedPoi]),void 0!==t&&this.highlightPois([t]),this._focusedPoi=t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"movingPoi",{get:function(){return this._movingPoi},set:function(t){this._movingPoi&&this.unhighlightPois([this._movingPoi]),void 0!==t&&this.highlightPois([t]),this._movingPoi=t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"routeStart",{get:function(){return this.routing.start},set:function(t){t?this.highlightPois([t]):this.routing.start!==this.routing.end&&this.routing.start&&this.unhighlightPois([this.routing.start]),this.routing.start=t,this.routeStart&&this.routeStart.isLocationAsPoi&&(this.routeStart.title=this.getNewTitle(this.routeStart.title,!0),this.routeStart.icon=n(1116))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"routeEnd",{get:function(){return this.routing.end},set:function(t){t?this.highlightPois([t]):this.routing.start!==this.routing.end&&this.routing.end&&this.unhighlightPois([this.routing.end]),this.routing.end=t,this.routeEnd&&this.routeEnd.isLocationAsPoi&&(this.routeEnd.title=this.getNewTitle(this.routeEnd.title,!1),this.routeEnd.icon=n(1117))},enumerable:!0,configurable:!0}),t.prototype.initEnableFeatures=function(){var t=this;this.ConfigService.initialized.then(function(){t.enableFeatures.share=t.ConfigService.getBoolean(a.Configs.POI_SHARE_ENABLED,t.enableFeatures.share),t.enableFeatures.fullScreen=t.ConfigService.getBoolean(a.Configs.POI_FULLSCREEN,t.enableFeatures.fullScreen),t.enableFeatures.visibilityCheck=t.ConfigService.getBoolean(a.Configs.POI_VISIBILITYCHECK_ENABLED,t.enableFeatures.visibilityCheck),t.LicenseService.initialized.then(function(){t.enableFeatures.routing=t.LicenseService.isFeatureEnabled(l.LicenseFeatureType.ROUTING)&&t.ConfigService.getBoolean(a.Configs.ROUTING_ENABLED,t.enableFeatures.routing)}).catch(function(){}),s.invalidateAngular()}).catch(function(){})},t.prototype.refreshPois=function(){this.poisChanged.emit()},t.prototype.openAndHighlight=function(t){this.closeAndUnhighlightPoi(),this.openPoi(t)&&this.highlightPois([t])},t.prototype.openHighlightAndGoToPoi=function(t){return this.movingPoi?Promise.reject(void 0):(this.openAndHighlight(t),this.goToPoi(t))},t.prototype.closeAndUnhighlightPoi=function(){this._openedPoi&&(this._highlightedPois.has(this._openedPoi)&&this.unhighlightPois([this._openedPoi]),this.closePoi())},t.prototype.openPoi=function(t){return this.ConfigService.getBoolean(a.Configs.UI_POI_PANEL_VISIBLE,!0)?(this.closePoi(),this.SidebarMenuService.closeMenu(),this.isRoutePickingPhase()||(this._openedPoi=t),this.onPoiOpen.emit(t),!0):(this._openedPoi=t,!1)},t.prototype.closePoi=function(){if(this._openedPoi){var t=this._openedPoi;this._openedPoi=void 0,this.onPoiClose.emit(t)}},t.prototype.highlightPois=function(t){for(var e=0,n=t;e<n.length;e++){var i=n[e];this._highlightedPois.add(i)}this.onPoisHighlight.emit(t)},t.prototype.unhighlightPois=function(t){for(var e=0,n=t;e<n.length;e++){var i=n[e];this._highlightedPois.delete(i)}this.onPoisUnhighlight.emit(t)},t.prototype.goToPoi=function(t){return void 0===t&&(t=this._openedPoi),t?this.IV.moveToPoi(t,!0):Promise.reject("POI is not set to go to.")},t.prototype.enterRouteMode=function(){this.isRouteMode||(this.isRouteMode=!0,this.routeModeChanged.emit(),this.SidebarMenuService.closeMenu())},t.prototype.exitRouteMode=function(){this.isRouteMode&&(this.isRouteMode=!1,this.routeModeChanged.emit())},t.prototype.recalculateTextEditorSize=function(){this.$timeout(function(){var t=document.getElementById("cke_editor1");if(t){var e=i.element("#cke_editor1 .cke_top"),n=100+e.outerHeight(!0),r=40+(i.element("#editPoi").hasClass("full-window")?0:60),o=i.element("#editPoi .modal-header").outerHeight(!0)+i.element(".poiModalForm").outerHeight(!0)+i.element("#upload_panel").outerHeight(!0)+i.element("#editPoi .status-messages").outerHeight(!0)+i.element("#editPoi .modal-footer").outerHeight(!0)+r,a=window.innerHeight-o,s=t.style.height.replace("px",""),c=t.getElementsByClassName("cke_contents")[0],l=i.element(t);if(c&&(parseInt(s,10)!==l.height()||""===t.style.height||a!==l.height())){var u=Math.max(a,n);c.style.height=(u-e.outerHeight(!0)-15-4).toString()+"px",t.style.height=(u-4).toString()+"px"}}}).catch(p.handleWarning)},t.prototype.search=function(t,e,n){var i=this;return this.errorHandler.wrap(this.PoiSearchRepository.search(t,e,n)).then(function(t){return t=r.filter(t,function(t){return!!t.poiType}),r.forEach(t,function(t){var e=i.PoiRepository.create();e.fillFromSearchResult(t),t.fakePoi=e}),t}).catch(function(t){return console.error(t.data.msg),[]})},t.prototype.deletePoi=function(t){return this.PoiRepository.remove(t)},t.prototype.getUploadedIcons=function(){return this.updateUploadedIcons(),this.uploadedIconsList},t.prototype.uploadedCustomIcon=function(t){this.uploadedIconsList[t]=!0},t.prototype.updateUploadedIcons=function(){for(var t=0,e=this.PoiRepository.data;t<e.length;t++){var n=e[t];n.hasCustomIcon()&&(this.uploadedIconsList[n.icon]=!0)}},t.prototype.getLocationAsPoi=function(e,i){void 0===i&&(i=!1);var r=e?this.gettextCatalog.getString("Location"):this.gettextCatalog.getString("Current location");return!e&&this.ViewService.mainView.getImage()?e=this.ViewService.mainView.getImage().floorLocation:e||(e=this.ViewService.mainView.getCamera().position.clone().sub(new o.Vector3(0,0,t.DEFAULT_CUSTOM_LOCATION_HEIGHT))),this.PoiRepository.createReadOnly(e,i,r,n(1118))},t.prototype.getPoiFromSearchResultAsPoi=function(t){return t.isPoiFromSearchResult?this.PoiRepository.findOne(t.id):Promise.resolve(t)},t.prototype.isRoutePickingPhase=function(){return this.isRouteMode&&!(this.routing.start&&this.routing.end)},t.prototype.isRoutePhase=function(){return this.isRouteMode&&!!this.routing.start&&!!this.routing.end},t.prototype.clearRouting=function(){this.routing.start=void 0,this.routing.end=void 0},t.prototype.clickPoi=function(t,e){this.onPoiClickCollector.emit(t,e)},t.prototype.getNewTitle=function(t,e){var n=this.gettextCatalog.getString("Start",void 0,"Noun"),i=this.gettextCatalog.getString("Destination");return t===this.gettextCatalog.getString("Location")||t===n||t===i?e?n:i:t},t.DEFAULT_CUSTOM_LOCATION_HEIGHT=1.9,t.ɵfac=function(e){return new(e||t)(h.ɵɵinject("IV"),h.ɵɵinject("gettextCatalog"),h.ɵɵinject("$timeout"),h.ɵɵinject(f.ConfigService),h.ɵɵinject(g.ErrorService),h.ɵɵinject(m.LicenseService),h.ɵɵinject(v.PoiSearchRepository),h.ɵɵinject(y.PoiRepository),h.ɵɵinject(b.SidebarMenuService),h.ɵɵinject(w.ViewService))},t.ɵprov=h.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.PoiService=S,h.ɵsetClassMetadata(S,[{type:d.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:d.Inject,args:["IV"]}]},{type:void 0,decorators:[{type:d.Inject,args:["gettextCatalog"]}]},{type:void 0,decorators:[{type:d.Inject,args:["$timeout"]}]},{type:f.ConfigService},{type:g.ErrorService},{type:m.LicenseService},{type:v.PoiSearchRepository},{type:y.PoiRepository},{type:b.SidebarMenuService},{type:w.ViewService}]},null),i.module("IVWebApp").service("PoiService",u.downgradeInjectable(S))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i,r=n(215);(i=e.Platform||(e.Platform={})).IOS="IOS";var o,a=new Map;function s(){return document.getElementsByClassName("indoorViewer")[0]}function c(){return void 0===o&&(o=s().clientWidth<=767),o}a.set(i.IOS,["iPad Simulator","iPhone Simulator","iPod Simulator","iPad","iPhone","iPod"]),e.isPlatform=function(t){return a.get(t).indexOf(navigator.platform)>-1},e.isInIframe=function(){try{return window.self!==window.top}catch(t){return!0}},window&&window.IV&&window.IV.bootstrapped(function(){r.addResizeEventListener(s(),function(){o=void 0})}),e.isMobileLayout=c,e.isDesktopLayout=function(){return!c()},e.isMobileBrowser=function(){var t=navigator.userAgent||navigator.vendor||window.opera;return/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|ad|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(t)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i.test(t.substr(0,4))},e.isBrowserIE=function(){return/(Trident\/7\.0)/.test(navigator.userAgent)},e.vibrate=function(t){return!!navigator.vibrate&&navigator.vibrate(void 0!==t?t:100)}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(1012),o=n(1013),a=n(1014),s=n(522),c=n(1015),l=(n(61),n(1016)),u=n(521),d=n(1017),p=n(1018),h=n(1019),f=n(1020),g=n(1021),m=n(1022),v=n(1023),y=n(1024),b=n(1025),w=n(1026),S=n(1027),x=n(1028),M=n(1029),E=n(6),C=n(0),A=n(1030),T=n(1031),O=n(1032),_=n(0),P=n(61),I=function(){function t(t,e,n,i,r){this.gettextCatalog=t,this.MessageReportingService=e,this.isAnyReporterAdded=!1,this.wrapper=r,this.networkDetectors=n,this.exceptionDetectors=i}return t.prototype.build=function(){return this.isAnyReporterAdded||this.wrapper.addReporters(new c.ConsoleReporter),this.wrapper},t.prototype.report=function(t,e){return void 0===t&&(t=!0),void 0===e&&(e=!1),this.isAnyReporterAdded=!0,e&&this.wrapper.addReporters(new c.ConsoleReporter),t&&this.wrapper.addReporters(new l.MessageServiceReporter(this.MessageReportingService,this.gettextCatalog)),this},t.prototype.network=function(){var t;return(t=this.wrapper).addDetectors.apply(t,this.networkDetectors),this},t.prototype.exceptions=function(){var t;return(t=this.wrapper).addDetectors.apply(t,this.exceptionDetectors),this},t.prototype.generic=function(t){return void 0!==t&&t&&this.wrapper.addDetectors(new s.GenericDetector(this.gettextCatalog,t)),this},t.prototype.detector=function(t){return t&&this.wrapper.addDetectors(t),this},t}(),k=function(){function t(t,e){this.gettextCatalog=t,this.MessageReportingService=e,this.networkDetectors=[],this.networkDetectors.push(new a.NetworkDownDetector(this.gettextCatalog),new o.ProxyDetector(this.gettextCatalog),new d.RequestErrorDetector(this.gettextCatalog))}return t.prototype.createDefaultWrapper=function(){return this.newWrapper().report().exceptions().network().build()},t.prototype.createDefaultOnceWrapper=function(){return this.newOnceWrapper().report().exceptions().network().build()},t.prototype.newWrapper=function(){return new I(this.gettextCatalog,this.MessageReportingService,this.networkDetectors,t.getAllExceptionDetectors(this.gettextCatalog),new u.ErrorWrapper)},t.prototype.newOnceWrapper=function(){return new I(this.gettextCatalog,this.MessageReportingService,this.networkDetectors,t.getAllExceptionDetectors(this.gettextCatalog),new r.OnceErrorWrapper)},t.getErrorMessage=function(t,e){for(var n=0,i=this.getAllExceptionDetectors(e);n<i.length;n++){var r=i[n];if(r.applies(t))return r.currentErrorMessage}},t.getAllJobFailureDetectors=function(t){var e=[];return e.push(new w.OutOfMemoryDetector(t)),e.push(new x.InconsistentScanDetector(t)),e.push(new S.ProcessingToolFailureDetector(t)),e.push(new M.TooManyRunningJobsDetector(t)),e.push(new A.EmptyPointCloudDetector(t)),e.push(new T.MapTilingUnsupportedDetector(t)),e},t.getAllExceptionDetectors=function(t){var e=[];return e.push(new b.ServerBadDataOnDiskExceptionDetector(t)),e.push(new p.ServerFileNotFoundExceptionDetector(t)),e.push(new h.ServerMissingFileOnDiskExceptionDetector(t)),e.push(new f.ServerNoSuchObjectExceptionDetector(t)),e.push(new g.ServerObjectConflictExceptionDetector(t)),e.push(new m.ServerSiteModelNameExceptionDetector(t)),e.push(new v.ServerUploadExceptionDetector(t)),e.push(new y.ServerVariousExceptionDetector(t)),e.push(new O.ServerJobValidationException(t)),e},t.ɵfac=function(e){return new(e||t)(_.ɵɵinject("gettextCatalog"),_.ɵɵinject(P.MessageReportingService))},t.ɵprov=_.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.ErrorService=k,_.ɵsetClassMetadata(k,[{type:C.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:C.Inject,args:["gettextCatalog"]}]},{type:P.MessageReportingService}]},null),i.module("IVWebApp").service("ErrorService",E.downgradeInjectable(k))},function(t,e){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,e,n){var i=n(18);t.exports=!i(function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})},function(t,e,n){var i=n(122),r=Math.min;t.exports=function(t){return t>0?r(i(t),9007199254740991):0}},function(t,e,n){var i=n(34),r=n(284),o=n(58),a=n(236),s=n(352),c=n(460),l=r("wks"),u=i.Symbol,d=c?u:u&&u.withoutSetter||a;t.exports=function(t){return o(l,t)||(s&&o(u,t)?l[t]=u[t]:l[t]=d("Symbol."+t)),l[t]}},function(t,e,n){"use strict";var i,r=n(371),o=n(43),a=n(34),s=n(42),c=n(58),l=n(242),u=n(88),d=n(98),p=n(48).f,h=n(99),f=n(191),g=n(45),m=n(236),v=a.Int8Array,y=v&&v.prototype,b=a.Uint8ClampedArray,w=b&&b.prototype,S=v&&h(v),x=y&&h(y),M=Object.prototype,E=M.isPrototypeOf,C=g("toStringTag"),A=m("TYPED_ARRAY_TAG"),T=r&&!!f&&"Opera"!==l(a.opera),O=!1,_={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},P=function(t){return s(t)&&c(_,l(t))};for(i in _)a[i]||(T=!1);if((!T||"function"!=typeof S||S===Function.prototype)&&(S=function(){throw TypeError("Incorrect invocation")},T))for(i in _)a[i]&&f(a[i],S);if((!T||!x||x===M)&&(x=S.prototype,T))for(i in _)a[i]&&f(a[i].prototype,x);if(T&&h(w)!==x&&f(w,x),o&&!c(x,C))for(i in O=!0,p(x,C,{get:function(){return s(this)?this[A]:void 0}}),_)a[i]&&u(a[i],A,i);t.exports={NATIVE_ARRAY_BUFFER_VIEWS:T,TYPED_ARRAY_TAG:O&&A,aTypedArray:function(t){if(P(t))return t;throw TypeError("Target is not a typed array")},aTypedArrayConstructor:function(t){if(f){if(E.call(S,t))return t}else for(var e in _)if(c(_,i)){var n=a[e];if(n&&(t===n||E.call(n,t)))return t}throw TypeError("Target is not a typed array constructor")},exportTypedArrayMethod:function(t,e,n){if(o){if(n)for(var i in _){var r=a[i];r&&c(r.prototype,t)&&delete r.prototype[t]}x[t]&&!n||d(x,t,n?e:T&&y[t]||e)}},exportTypedArrayStaticMethod:function(t,e,n){var i,r;if(o){if(f){if(n)for(i in _)(r=a[i])&&c(r,t)&&delete r[t];if(S[t]&&!n)return;try{return d(S,t,n?e:T&&v[t]||e)}catch(t){}}for(i in _)!(r=a[i])||r[t]&&!n||d(r,t,e)}},isView:function(t){var e=l(t);return"DataView"===e||c(_,e)},isTypedArray:P,TypedArray:S,TypedArrayPrototype:x}},function(t,e,n){"use strict";n.r(e),n.d(e,"APR",function(){return Dt}),n.d(e,"AUG",function(){return jt}),n.d(e,"AnimationCurves",function(){return x}),n.d(e,"AnimationDurations",function(){return M}),n.d(e,"DEC",function(){return Bt}),n.d(e,"DateAdapter",function(){return V}),n.d(e,"ErrorStateMatcher",function(){return J}),n.d(e,"FEB",function(){return It}),n.d(e,"GestureConfig",function(){return nt}),n.d(e,"JAN",function(){return Pt}),n.d(e,"JUL",function(){return Nt}),n.d(e,"JUN",function(){return Lt}),n.d(e,"MAR",function(){return kt}),n.d(e,"MATERIAL_SANITY_CHECKS",function(){return A}),n.d(e,"MAT_DATE_FORMATS",function(){return F}),n.d(e,"MAT_DATE_LOCALE",function(){return R}),n.d(e,"MAT_DATE_LOCALE_FACTORY",function(){return L}),n.d(e,"MAT_DATE_LOCALE_PROVIDER",function(){return j}),n.d(e,"MAT_HAMMER_OPTIONS",function(){return Q}),n.d(e,"MAT_LABEL_GLOBAL_OPTIONS",function(){return _t}),n.d(e,"MAT_NATIVE_DATE_FORMATS",function(){return q}),n.d(e,"MAT_OPTION_PARENT_COMPONENT",function(){return Et}),n.d(e,"MAT_RIPPLE_GLOBAL_OPTIONS",function(){return ft}),n.d(e,"MAY",function(){return Rt}),n.d(e,"MatCommonModule",function(){return T}),n.d(e,"MatLine",function(){return it}),n.d(e,"MatLineModule",function(){return st}),n.d(e,"MatLineSetter",function(){return at}),n.d(e,"MatNativeDateModule",function(){return Y}),n.d(e,"MatOptgroup",function(){return St}),n.d(e,"MatOption",function(){return Ct}),n.d(e,"MatOptionModule",function(){return Ot}),n.d(e,"MatOptionSelectionChange",function(){return Mt}),n.d(e,"MatPseudoCheckbox",function(){return vt}),n.d(e,"MatPseudoCheckboxModule",function(){return yt}),n.d(e,"MatRipple",function(){return gt}),n.d(e,"MatRippleModule",function(){return mt}),n.d(e,"NOV",function(){return Ut}),n.d(e,"NativeDateAdapter",function(){return W}),n.d(e,"NativeDateModule",function(){return K}),n.d(e,"OCT",function(){return Ft}),n.d(e,"RippleRef",function(){return ct}),n.d(e,"RippleRenderer",function(){return ht}),n.d(e,"SEP",function(){return Vt}),n.d(e,"ShowOnDirtyErrorStateMatcher",function(){return Z}),n.d(e,"VERSION",function(){return S}),n.d(e,"_countGroupLabelsBeforeOption",function(){return At}),n.d(e,"_getOptionScrollPosition",function(){return Tt}),n.d(e,"defaultRippleAnimationConfig",function(){return lt}),n.d(e,"mixinColor",function(){return _}),n.d(e,"mixinDisableRipple",function(){return P}),n.d(e,"mixinDisabled",function(){return O}),n.d(e,"mixinErrorState",function(){return k}),n.d(e,"mixinInitialized",function(){return D}),n.d(e,"mixinTabIndex",function(){return I}),n.d(e,"setLines",function(){return rt}),n.d(e,"ɵ0",function(){return X}),n.d(e,"ɵ1",function(){return tt}),n.d(e,"ɵangular_material_src_material_core_core_a",function(){return C});var i=n(0),r=n(63),o=n(37),a=new i.Version("9.2.2"),s=n(3),c=n(1),l=n(23),u=n(32),d=n(12),p=n(13),h=n(125),f=n(438),g=n(95),m=n(60),v=["*",[["mat-option"],["ng-container"]]],y=["*","mat-option, ng-container"];function b(t,e){if(1&t&&i["ɵɵelement"](0,"mat-pseudo-checkbox",3),2&t){var n=i["ɵɵnextContext"]();i["ɵɵproperty"]("state",n.selected?"checked":"unchecked")("disabled",n.disabled)}}var w=["*"],S=new i.Version("9.2.2"),x=function(){function t(){}return t.STANDARD_CURVE="cubic-bezier(0.4,0.0,0.2,1)",t.DECELERATION_CURVE="cubic-bezier(0.0,0.0,0.2,1)",t.ACCELERATION_CURVE="cubic-bezier(0.4,0.0,1,1)",t.SHARP_CURVE="cubic-bezier(0.4,0.0,0.6,1)",t}(),M=function(){function t(){}return t.COMPLEX="375ms",t.ENTERING="225ms",t.EXITING="195ms",t}(),E=new i.Version("9.2.2");function C(){return!0}var A=new i.InjectionToken("mat-sanity-checks",{providedIn:"root",factory:C}),T=function(){function t(t,e,n){this._hasDoneGlobalChecks=!1,this._document=n,t._applyBodyHighContrastModeCssClasses(),this._sanityChecks=e,this._hasDoneGlobalChecks||(this._checkDoctypeIsDefined(),this._checkThemeIsPresent(),this._checkCdkVersionMatch(),this._hasDoneGlobalChecks=!0)}return t.prototype._getDocument=function(){var t=this._document||document;return"object"==typeof t&&t?t:null},t.prototype._getWindow=function(){var t=this._getDocument(),e=(null==t?void 0:t.defaultView)||window;return"object"==typeof e&&e?e:null},t.prototype._checksAreEnabled=function(){return Object(i.isDevMode)()&&!this._isTestEnv()},t.prototype._isTestEnv=function(){var t=this._getWindow();return t&&(t.__karma__||t.jasmine)},t.prototype._checkDoctypeIsDefined=function(){var t=this._checksAreEnabled()&&(!0===this._sanityChecks||this._sanityChecks.doctype),e=this._getDocument();t&&e&&!e.doctype&&console.warn("Current document does not have a doctype. This may cause some Angular Material components not to behave as expected.")},t.prototype._checkThemeIsPresent=function(){var t=!this._checksAreEnabled()||!1===this._sanityChecks||!this._sanityChecks.theme,e=this._getDocument();if(!t&&e&&e.body&&"function"==typeof getComputedStyle){var n=e.createElement("div");n.classList.add("mat-theme-loaded-marker"),e.body.appendChild(n);var i=getComputedStyle(n);i&&"none"!==i.display&&console.warn("Could not find Angular Material core theme. Most Material components may not work as expected. For more info refer to the theming guide: https://material.angular.io/guide/theming"),e.body.removeChild(n)}},t.prototype._checkCdkVersionMatch=function(){this._checksAreEnabled()&&(!0===this._sanityChecks||this._sanityChecks.version)&&E.full!==a.full&&console.warn("The Angular Material version ("+E.full+") does not match the Angular CDK version ("+a.full+").\nPlease ensure the versions of these two packages exactly match.")},t.ctorParameters=function(){return[{type:r.j},{type:void 0,decorators:[{type:i.Optional},{type:i.Inject,args:[A]}]},{type:void 0,decorators:[{type:i.Optional},{type:i.Inject,args:[s.DOCUMENT]}]}]},t.ɵmod=i["ɵɵdefineNgModule"]({type:t}),t.ɵinj=i["ɵɵdefineInjector"]({factory:function(e){return new(e||t)(i["ɵɵinject"](r.j),i["ɵɵinject"](A,8),i["ɵɵinject"](s.DOCUMENT,8))},imports:[[o.BidiModule],o.BidiModule]}),("undefined"==typeof ngJitMode||ngJitMode)&&i["ɵɵsetNgModuleScope"](t,{imports:function(){return[o.BidiModule]},exports:function(){return[o.BidiModule]}}),t}();
  1596. /**
  1597. * @license
  1598. * Copyright Google LLC All Rights Reserved.
  1599. *
  1600. * Use of this source code is governed by an MIT-style license that can be
  1601. * found in the LICENSE file at https://angular.io/license
  1602. */function O(t){return function(t){function e(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];var i=t.apply(this,Object(c.h)(e))||this;return i._disabled=!1,i}return Object(c.c)(e,t),Object.defineProperty(e.prototype,"disabled",{get:function(){return this._disabled},set:function(t){this._disabled=Object(l.c)(t)},enumerable:!0,configurable:!0}),e}(t)}
  1603. /**
  1604. * @license
  1605. * Copyright Google LLC All Rights Reserved.
  1606. *
  1607. * Use of this source code is governed by an MIT-style license that can be
  1608. * found in the LICENSE file at https://angular.io/license
  1609. */function _(t,e){return function(t){function n(){for(var n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];var r=t.apply(this,Object(c.h)(n))||this;return r.color=e,r}return Object(c.c)(n,t),Object.defineProperty(n.prototype,"color",{get:function(){return this._color},set:function(t){var n=t||e;n!==this._color&&(this._color&&this._elementRef.nativeElement.classList.remove("mat-"+this._color),n&&this._elementRef.nativeElement.classList.add("mat-"+n),this._color=n)},enumerable:!0,configurable:!0}),n}(t)}
  1610. /**
  1611. * @license
  1612. * Copyright Google LLC All Rights Reserved.
  1613. *
  1614. * Use of this source code is governed by an MIT-style license that can be
  1615. * found in the LICENSE file at https://angular.io/license
  1616. */function P(t){return function(t){function e(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];var i=t.apply(this,Object(c.h)(e))||this;return i._disableRipple=!1,i}return Object(c.c)(e,t),Object.defineProperty(e.prototype,"disableRipple",{get:function(){return this._disableRipple},set:function(t){this._disableRipple=Object(l.c)(t)},enumerable:!0,configurable:!0}),e}(t)}
  1617. /**
  1618. * @license
  1619. * Copyright Google LLC All Rights Reserved.
  1620. *
  1621. * Use of this source code is governed by an MIT-style license that can be
  1622. * found in the LICENSE file at https://angular.io/license
  1623. */function I(t,e){return void 0===e&&(e=0),function(t){function n(){for(var n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];var r=t.apply(this,Object(c.h)(n))||this;return r._tabIndex=e,r}return Object(c.c)(n,t),Object.defineProperty(n.prototype,"tabIndex",{get:function(){return this.disabled?-1:this._tabIndex},set:function(t){this._tabIndex=null!=t?t:e},enumerable:!0,configurable:!0}),n}(t)}
  1624. /**
  1625. * @license
  1626. * Copyright Google LLC All Rights Reserved.
  1627. *
  1628. * Use of this source code is governed by an MIT-style license that can be
  1629. * found in the LICENSE file at https://angular.io/license
  1630. */function k(t){return function(t){function e(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];var i=t.apply(this,Object(c.h)(e))||this;return i.errorState=!1,i.stateChanges=new u.a,i}return Object(c.c)(e,t),e.prototype.updateErrorState=function(){var t=this.errorState,e=this._parentFormGroup||this._parentForm,n=this.errorStateMatcher||this._defaultErrorStateMatcher,i=this.ngControl?this.ngControl.control:null,r=n.isErrorState(i,e);r!==t&&(this.errorState=r,this.stateChanges.next())},e}(t)}
  1631. /**
  1632. * @license
  1633. * Copyright Google LLC All Rights Reserved.
  1634. *
  1635. * Use of this source code is governed by an MIT-style license that can be
  1636. * found in the LICENSE file at https://angular.io/license
  1637. */function D(t){return function(t){function e(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];var i=t.apply(this,Object(c.h)(e))||this;return i._isInitialized=!1,i._pendingSubscribers=[],i.initialized=new d.a(function(t){i._isInitialized?i._notifySubscriber(t):i._pendingSubscribers.push(t)}),i}return Object(c.c)(e,t),e.prototype._markInitialized=function(){if(this._isInitialized)throw Error("This directive has already been marked as initialized and should not be called twice.");this._isInitialized=!0,this._pendingSubscribers.forEach(this._notifySubscriber),this._pendingSubscribers=null},e.prototype._notifySubscriber=function(t){t.next(),t.complete()},e}(t)}
  1638. /**
  1639. * @license
  1640. * Copyright Google LLC All Rights Reserved.
  1641. *
  1642. * Use of this source code is governed by an MIT-style license that can be
  1643. * found in the LICENSE file at https://angular.io/license
  1644. */
  1645. /**
  1646. * @license
  1647. * Copyright Google LLC All Rights Reserved.
  1648. *
  1649. * Use of this source code is governed by an MIT-style license that can be
  1650. * found in the LICENSE file at https://angular.io/license
  1651. */var R=new i.InjectionToken("MAT_DATE_LOCALE",{providedIn:"root",factory:L});function L(){return Object(i.inject)(i.LOCALE_ID)}var N,j={provide:R,useExisting:i.LOCALE_ID},V=function(){function t(){this._localeChanges=new u.a}return Object.defineProperty(t.prototype,"localeChanges",{get:function(){return this._localeChanges},enumerable:!0,configurable:!0}),t.prototype.deserialize=function(t){return null==t||this.isDateInstance(t)&&this.isValid(t)?t:this.invalid()},t.prototype.setLocale=function(t){this.locale=t,this._localeChanges.next()},t.prototype.compareDate=function(t,e){return this.getYear(t)-this.getYear(e)||this.getMonth(t)-this.getMonth(e)||this.getDate(t)-this.getDate(e)},t.prototype.sameDate=function(t,e){if(t&&e){var n=this.isValid(t),i=this.isValid(e);return n&&i?!this.compareDate(t,e):n==i}return t==e},t.prototype.clampDate=function(t,e,n){return e&&this.compareDate(t,e)<0?e:n&&this.compareDate(t,n)>0?n:t},t}(),F=new i.InjectionToken("mat-date-formats");try{N="undefined"!=typeof Intl}catch(t){N=!1}var U={long:["January","February","March","April","May","June","July","August","September","October","November","December"],short:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],narrow:["J","F","M","A","M","J","J","A","S","O","N","D"]},B=H(31,function(t){return String(t+1)}),z={long:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],short:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],narrow:["S","M","T","W","T","F","S"]},G=/^\d{4}-\d{2}-\d{2}(?:T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|(?:(?:\+|-)\d{2}:\d{2}))?)?$/;function H(t,e){for(var n=Array(t),i=0;i<t;i++)n[i]=e(i);return n}var W=function(t){function e(e,n){var i=t.call(this)||this;return i.useUtcForDisplay=!0,t.prototype.setLocale.call(i,e),i.useUtcForDisplay=!n.TRIDENT,i._clampDate=n.TRIDENT||n.EDGE,i}return Object(c.c)(e,t),e.prototype.getYear=function(t){return t.getFullYear()},e.prototype.getMonth=function(t){return t.getMonth()},e.prototype.getDate=function(t){return t.getDate()},e.prototype.getDayOfWeek=function(t){return t.getDay()},e.prototype.getMonthNames=function(t){var e=this;if(N){var n=new Intl.DateTimeFormat(this.locale,{month:t,timeZone:"utc"});return H(12,function(t){return e._stripDirectionalityCharacters(e._format(n,new Date(2017,t,1)))})}return U[t]},e.prototype.getDateNames=function(){var t=this;if(N){var e=new Intl.DateTimeFormat(this.locale,{day:"numeric",timeZone:"utc"});return H(31,function(n){return t._stripDirectionalityCharacters(t._format(e,new Date(2017,0,n+1)))})}return B},e.prototype.getDayOfWeekNames=function(t){var e=this;if(N){var n=new Intl.DateTimeFormat(this.locale,{weekday:t,timeZone:"utc"});return H(7,function(t){return e._stripDirectionalityCharacters(e._format(n,new Date(2017,0,t+1)))})}return z[t]},e.prototype.getYearName=function(t){if(N){var e=new Intl.DateTimeFormat(this.locale,{year:"numeric",timeZone:"utc"});return this._stripDirectionalityCharacters(this._format(e,t))}return String(this.getYear(t))},e.prototype.getFirstDayOfWeek=function(){return 0},e.prototype.getNumDaysInMonth=function(t){return this.getDate(this._createDateWithOverflow(this.getYear(t),this.getMonth(t)+1,0))},e.prototype.clone=function(t){return new Date(t.getTime())},e.prototype.createDate=function(t,e,n){if(e<0||e>11)throw Error('Invalid month index "'+e+'". Month index has to be between 0 and 11.');if(n<1)throw Error('Invalid date "'+n+'". Date has to be greater than 0.');var i=this._createDateWithOverflow(t,e,n);if(i.getMonth()!=e)throw Error('Invalid date "'+n+'" for month with index "'+e+'".');return i},e.prototype.today=function(){return new Date},e.prototype.parse=function(t){return"number"==typeof t?new Date(t):t?new Date(Date.parse(t)):null},e.prototype.format=function(t,e){if(!this.isValid(t))throw Error("NativeDateAdapter: Cannot format invalid date.");if(N){this._clampDate&&(t.getFullYear()<1||t.getFullYear()>9999)&&(t=this.clone(t)).setFullYear(Math.max(1,Math.min(9999,t.getFullYear()))),e=Object(c.a)(Object(c.a)({},e),{timeZone:"utc"});var n=new Intl.DateTimeFormat(this.locale,e);return this._stripDirectionalityCharacters(this._format(n,t))}return this._stripDirectionalityCharacters(t.toDateString())},e.prototype.addCalendarYears=function(t,e){return this.addCalendarMonths(t,12*e)},e.prototype.addCalendarMonths=function(t,e){var n=this._createDateWithOverflow(this.getYear(t),this.getMonth(t)+e,this.getDate(t));return this.getMonth(n)!=((this.getMonth(t)+e)%12+12)%12&&(n=this._createDateWithOverflow(this.getYear(n),this.getMonth(n),0)),n},e.prototype.addCalendarDays=function(t,e){return this._createDateWithOverflow(this.getYear(t),this.getMonth(t),this.getDate(t)+e)},e.prototype.toIso8601=function(t){return[t.getUTCFullYear(),this._2digit(t.getUTCMonth()+1),this._2digit(t.getUTCDate())].join("-")},e.prototype.deserialize=function(e){if("string"==typeof e){if(!e)return null;if(G.test(e)){var n=new Date(e);if(this.isValid(n))return n}}return t.prototype.deserialize.call(this,e)},e.prototype.isDateInstance=function(t){return t instanceof Date},e.prototype.isValid=function(t){return!isNaN(t.getTime())},e.prototype.invalid=function(){return new Date(NaN)},e.prototype._createDateWithOverflow=function(t,e,n){var i=new Date(t,e,n);return t>=0&&t<100&&i.setFullYear(this.getYear(i)-1900),i},e.prototype._2digit=function(t){return("00"+t).slice(-2)},e.prototype._stripDirectionalityCharacters=function(t){return t.replace(/[\u200e\u200f]/g,"")},e.prototype._format=function(t,e){var n=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()));return t.format(n)},e.ctorParameters=function(){return[{type:String,decorators:[{type:i.Optional},{type:i.Inject,args:[R]}]},{type:p.a}]},e.ɵfac=function(t){return new(t||e)(i["ɵɵinject"](R,8),i["ɵɵinject"](p.a))},e.ɵprov=i["ɵɵdefineInjectable"]({token:e,factory:function(t){return e.ɵfac(t)}}),e}(V),q={parse:{dateInput:null},display:{dateInput:{year:"numeric",month:"numeric",day:"numeric"},monthYearLabel:{year:"numeric",month:"short"},dateA11yLabel:{year:"numeric",month:"long",day:"numeric"},monthYearA11yLabel:{year:"numeric",month:"long"}}},K=function(){function t(){}return t.ɵmod=i["ɵɵdefineNgModule"]({type:t}),t.ɵinj=i["ɵɵdefineInjector"]({factory:function(e){return new(e||t)},providers:[{provide:V,useClass:W}],imports:[[p.b]]}),("undefined"==typeof ngJitMode||ngJitMode)&&i["ɵɵsetNgModuleScope"](t,{imports:function(){return[p.b]}}),t}(),X=q,Y=function(){function t(){}return t.ɵmod=i["ɵɵdefineNgModule"]({type:t}),t.ɵinj=i["ɵɵdefineInjector"]({factory:function(e){return new(e||t)},providers:[{provide:F,useValue:X}],imports:[[K]]}),("undefined"==typeof ngJitMode||ngJitMode)&&i["ɵɵsetNgModuleScope"](t,{imports:[K]}),t}(),Z=function(){function t(){}return t.prototype.isErrorState=function(t,e){return!!(t&&t.invalid&&(t.dirty||e&&e.submitted))},t.ɵfac=function(e){return new(e||t)},t.ɵprov=i["ɵɵdefineInjectable"]({token:t,factory:function(e){return t.ɵfac(e)}}),t}(),J=function(){function t(){}return t.prototype.isErrorState=function(t,e){return!!(t&&t.invalid&&(t.touched||e&&e.submitted))},t.ɵprov=Object(i["ɵɵdefineInjectable"])({factory:function(){return new t},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)},t}(),Q=new i.InjectionToken("MAT_HAMMER_OPTIONS"),$=["longpress","slide","slidestart","slideend","slideright","slideleft"],tt=function(){},et={on:function(){},off:tt},nt=function(t){function e(e,n){var i=t.call(this)||this;return i._hammerOptions=e,i.events=$,i}return Object(c.c)(e,t),e.prototype.buildHammer=function(t){var e="undefined"!=typeof window?window.Hammer:null;if(!e)return et;var n=new e(t,this._hammerOptions||void 0),i=new e.Pan,r=new e.Swipe,o=new e.Press,a=this._createRecognizer(i,{event:"slide",threshold:0},r),s=this._createRecognizer(o,{event:"longpress",time:500});return i.recognizeWith(r),s.recognizeWith(a),n.add([r,o,i,a,s]),n},e.prototype._createRecognizer=function(t,e){for(var n=[],i=2;i<arguments.length;i++)n[i-2]=arguments[i];var r=new t.constructor(e);return n.push(t),n.forEach(function(t){return r.recognizeWith(t)}),r},e.ctorParameters=function(){return[{type:void 0,decorators:[{type:i.Optional},{type:i.Inject,args:[Q]}]},{type:T,decorators:[{type:i.Optional}]}]},e.ɵfac=function(t){return new(t||e)(i["ɵɵinject"](Q,8),i["ɵɵinject"](T,8))},e.ɵprov=i["ɵɵdefineInjectable"]({token:e,factory:function(t){return e.ɵfac(t)}}),e}(h.HammerGestureConfig),it=function(){function t(){}return t.ɵfac=function(e){return new(e||t)},t.ɵdir=i["ɵɵdefineDirective"]({type:t,selectors:[["","mat-line",""],["","matLine",""]],hostAttrs:[1,"mat-line"]}),t}();
  1652. /**
  1653. * @license
  1654. * Copyright Google LLC All Rights Reserved.
  1655. *
  1656. * Use of this source code is governed by an MIT-style license that can be
  1657. * found in the LICENSE file at https://angular.io/license
  1658. */function rt(t,e,n){void 0===n&&(n="mat"),t.changes.pipe(Object(f.a)(t)).subscribe(function(t){var i=t.length;ot(e,n+"-2-line",!1),ot(e,n+"-3-line",!1),ot(e,n+"-multi-line",!1),2===i||3===i?ot(e,n+"-"+i+"-line",!0):i>3&&ot(e,n+"-multi-line",!0)})}function ot(t,e,n){var i=t.nativeElement.classList;n?i.add(e):i.remove(e)}var at=function(t,e){rt(t,e)},st=function(){function t(){}return t.ɵmod=i["ɵɵdefineNgModule"]({type:t}),t.ɵinj=i["ɵɵdefineInjector"]({factory:function(e){return new(e||t)},imports:[[T],T]}),("undefined"==typeof ngJitMode||ngJitMode)&&i["ɵɵsetNgModuleScope"](t,{declarations:[it],imports:[T],exports:[it,T]}),t}(),ct=function(){function t(t,e,n){this._renderer=t,this.element=e,this.config=n,this.state=3}return t.prototype.fadeOut=function(){this._renderer.fadeOutRipple(this)},t}(),lt={enterDuration:450,exitDuration:400},ut=Object(p.f)({passive:!0}),dt=["mousedown","touchstart"],pt=["mouseup","mouseleave","touchend","touchcancel"],ht=function(){function t(t,e,n,i){this._target=t,this._ngZone=e,this._isPointerDown=!1,this._activeRipples=new Set,this._pointerUpEventsRegistered=!1,i.isBrowser&&(this._containerElement=Object(l.e)(n))}return t.prototype.fadeInRipple=function(t,e,n){var i=this;void 0===n&&(n={});var r=this._containerRect=this._containerRect||this._containerElement.getBoundingClientRect(),o=Object(c.a)(Object(c.a)({},lt),n.animation);n.centered&&(t=r.left+r.width/2,e=r.top+r.height/2);var a,s=n.radius||function(t,e,n){var i=Math.max(Math.abs(t-n.left),Math.abs(t-n.right)),r=Math.max(Math.abs(e-n.top),Math.abs(e-n.bottom));return Math.sqrt(i*i+r*r)}
  1659. /**
  1660. * @license
  1661. * Copyright Google LLC All Rights Reserved.
  1662. *
  1663. * Use of this source code is governed by an MIT-style license that can be
  1664. * found in the LICENSE file at https://angular.io/license
  1665. */(t,e,r),l=t-r.left,u=e-r.top,d=o.enterDuration,p=document.createElement("div");p.classList.add("mat-ripple-element"),p.style.left=l-s+"px",p.style.top=u-s+"px",p.style.height=2*s+"px",p.style.width=2*s+"px",null!=n.color&&(p.style.backgroundColor=n.color),p.style.transitionDuration=d+"ms",this._containerElement.appendChild(p),a=p,window.getComputedStyle(a).getPropertyValue("opacity"),p.style.transform="scale(1)";var h=new ct(this,p,n);return h.state=0,this._activeRipples.add(h),n.persistent||(this._mostRecentTransientRipple=h),this._runTimeoutOutsideZone(function(){var t=h===i._mostRecentTransientRipple;h.state=1,n.persistent||t&&i._isPointerDown||h.fadeOut()},d),h},t.prototype.fadeOutRipple=function(t){var e=this._activeRipples.delete(t);if(t===this._mostRecentTransientRipple&&(this._mostRecentTransientRipple=null),this._activeRipples.size||(this._containerRect=null),e){var n=t.element,i=Object(c.a)(Object(c.a)({},lt),t.config.animation);n.style.transitionDuration=i.exitDuration+"ms",n.style.opacity="0",t.state=2,this._runTimeoutOutsideZone(function(){t.state=3,n.parentNode.removeChild(n)},i.exitDuration)}},t.prototype.fadeOutAll=function(){this._activeRipples.forEach(function(t){return t.fadeOut()})},t.prototype.setupTriggerEvents=function(t){var e=Object(l.e)(t);e&&e!==this._triggerElement&&(this._removeTriggerEvents(),this._triggerElement=e,this._registerEvents(dt))},t.prototype.handleEvent=function(t){"mousedown"===t.type?this._onMousedown(t):"touchstart"===t.type?this._onTouchStart(t):this._onPointerUp(),this._pointerUpEventsRegistered||(this._registerEvents(pt),this._pointerUpEventsRegistered=!0)},t.prototype._onMousedown=function(t){var e=Object(r.l)(t),n=this._lastTouchStartEvent&&Date.now()<this._lastTouchStartEvent+800;this._target.rippleDisabled||e||n||(this._isPointerDown=!0,this.fadeInRipple(t.clientX,t.clientY,this._target.rippleConfig))},t.prototype._onTouchStart=function(t){if(!this._target.rippleDisabled){this._lastTouchStartEvent=Date.now(),this._isPointerDown=!0;for(var e=t.changedTouches,n=0;n<e.length;n++)this.fadeInRipple(e[n].clientX,e[n].clientY,this._target.rippleConfig)}},t.prototype._onPointerUp=function(){this._isPointerDown&&(this._isPointerDown=!1,this._activeRipples.forEach(function(t){var e=1===t.state||t.config.terminateOnPointerUp&&0===t.state;!t.config.persistent&&e&&t.fadeOut()}))},t.prototype._runTimeoutOutsideZone=function(t,e){void 0===e&&(e=0),this._ngZone.runOutsideAngular(function(){return setTimeout(t,e)})},t.prototype._registerEvents=function(t){var e=this;this._ngZone.runOutsideAngular(function(){t.forEach(function(t){e._triggerElement.addEventListener(t,e,ut)})})},t.prototype._removeTriggerEvents=function(){var t=this;this._triggerElement&&(dt.forEach(function(e){t._triggerElement.removeEventListener(e,t,ut)}),this._pointerUpEventsRegistered&&pt.forEach(function(e){t._triggerElement.removeEventListener(e,t,ut)}))},t}(),ft=new i.InjectionToken("mat-ripple-global-options"),gt=function(){function t(t,e,n,i,r){this._elementRef=t,this._animationMode=r,this.radius=0,this._disabled=!1,this._isInitialized=!1,this._globalOptions=i||{},this._rippleRenderer=new ht(this,e,t,n)}return Object.defineProperty(t.prototype,"disabled",{get:function(){return this._disabled},set:function(t){this._disabled=t,this._setupTriggerEventsIfEnabled()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"trigger",{get:function(){return this._trigger||this._elementRef.nativeElement},set:function(t){this._trigger=t,this._setupTriggerEventsIfEnabled()},enumerable:!0,configurable:!0}),t.prototype.ngOnInit=function(){this._isInitialized=!0,this._setupTriggerEventsIfEnabled()},t.prototype.ngOnDestroy=function(){this._rippleRenderer._removeTriggerEvents()},t.prototype.fadeOutAll=function(){this._rippleRenderer.fadeOutAll()},Object.defineProperty(t.prototype,"rippleConfig",{get:function(){return{centered:this.centered,radius:this.radius,color:this.color,animation:Object(c.a)(Object(c.a)(Object(c.a)({},this._globalOptions.animation),"NoopAnimations"===this._animationMode?{enterDuration:0,exitDuration:0}:{}),this.animation),terminateOnPointerUp:this._globalOptions.terminateOnPointerUp}},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"rippleDisabled",{get:function(){return this.disabled||!!this._globalOptions.disabled},enumerable:!0,configurable:!0}),t.prototype._setupTriggerEventsIfEnabled=function(){!this.disabled&&this._isInitialized&&this._rippleRenderer.setupTriggerEvents(this.trigger)},t.prototype.launch=function(t,e,n){return void 0===e&&(e=0),"number"==typeof t?this._rippleRenderer.fadeInRipple(t,e,Object(c.a)(Object(c.a)({},this.rippleConfig),n)):this._rippleRenderer.fadeInRipple(0,0,Object(c.a)(Object(c.a)({},this.rippleConfig),t))},t.ctorParameters=function(){return[{type:i.ElementRef},{type:i.NgZone},{type:p.a},{type:void 0,decorators:[{type:i.Optional},{type:i.Inject,args:[ft]}]},{type:String,decorators:[{type:i.Optional},{type:i.Inject,args:[g.ANIMATION_MODULE_TYPE]}]}]},t.propDecorators={color:[{type:i.Input,args:["matRippleColor"]}],unbounded:[{type:i.Input,args:["matRippleUnbounded"]}],centered:[{type:i.Input,args:["matRippleCentered"]}],radius:[{type:i.Input,args:["matRippleRadius"]}],animation:[{type:i.Input,args:["matRippleAnimation"]}],disabled:[{type:i.Input,args:["matRippleDisabled"]}],trigger:[{type:i.Input,args:["matRippleTrigger"]}]},t.ɵfac=function(e){return new(e||t)(i["ɵɵdirectiveInject"](i.ElementRef),i["ɵɵdirectiveInject"](i.NgZone),i["ɵɵdirectiveInject"](p.a),i["ɵɵdirectiveInject"](ft,8),i["ɵɵdirectiveInject"](g.ANIMATION_MODULE_TYPE,8))},t.ɵdir=i["ɵɵdefineDirective"]({type:t,selectors:[["","mat-ripple",""],["","matRipple",""]],hostAttrs:[1,"mat-ripple"],hostVars:2,hostBindings:function(t,e){2&t&&i["ɵɵclassProp"]("mat-ripple-unbounded",e.unbounded)},inputs:{radius:["matRippleRadius","radius"],disabled:["matRippleDisabled","disabled"],trigger:["matRippleTrigger","trigger"],color:["matRippleColor","color"],unbounded:["matRippleUnbounded","unbounded"],centered:["matRippleCentered","centered"],animation:["matRippleAnimation","animation"]},exportAs:["matRipple"]}),t}(),mt=function(){function t(){}return t.ɵmod=i["ɵɵdefineNgModule"]({type:t}),t.ɵinj=i["ɵɵdefineInjector"]({factory:function(e){return new(e||t)},imports:[[T,p.b],T]}),("undefined"==typeof ngJitMode||ngJitMode)&&i["ɵɵsetNgModuleScope"](t,{declarations:function(){return[gt]},imports:function(){return[T,p.b]},exports:function(){return[gt,T]}}),t}(),vt=function(){function t(t){this._animationMode=t,this.state="unchecked",this.disabled=!1}return t.ctorParameters=function(){return[{type:String,decorators:[{type:i.Optional},{type:i.Inject,args:[g.ANIMATION_MODULE_TYPE]}]}]},t.propDecorators={state:[{type:i.Input}],disabled:[{type:i.Input}]},t.ɵfac=function(e){return new(e||t)(i["ɵɵdirectiveInject"](g.ANIMATION_MODULE_TYPE,8))},t.ɵcmp=i["ɵɵdefineComponent"]({type:t,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:8,hostBindings:function(t,e){2&t&&i["ɵɵclassProp"]("mat-pseudo-checkbox-indeterminate","indeterminate"===e.state)("mat-pseudo-checkbox-checked","checked"===e.state)("mat-pseudo-checkbox-disabled",e.disabled)("_mat-animation-noopable","NoopAnimations"===e._animationMode)},inputs:{state:"state",disabled:"disabled"},decls:0,vars:0,template:function(t,e){},styles:['.mat-pseudo-checkbox{width:16px;height:16px;border:2px solid;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:"";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox.mat-pseudo-checkbox-indeterminate{border-color:transparent}._mat-animation-noopable.mat-pseudo-checkbox{transition:none;animation:none}._mat-animation-noopable.mat-pseudo-checkbox::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{top:5px;left:1px;width:10px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{top:2.4px;left:1px;width:8px;height:3px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}\n'],encapsulation:2,changeDetection:0}),t}(),yt=function(){function t(){}return t.ɵmod=i["ɵɵdefineNgModule"]({type:t}),t.ɵinj=i["ɵɵdefineInjector"]({factory:function(e){return new(e||t)}}),("undefined"==typeof ngJitMode||ngJitMode)&&i["ɵɵsetNgModuleScope"](t,{declarations:[vt],exports:[vt]}),t}(),bt=O(function(){}),wt=0,St=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._labelId="mat-optgroup-label-"+wt++,e}Object(c.c)(e,t),e.propDecorators={label:[{type:i.Input}]},e.ɵfac=function(t){return n(t||e)},e.ɵcmp=i["ɵɵdefineComponent"]({type:e,selectors:[["mat-optgroup"]],hostAttrs:["role","group",1,"mat-optgroup"],hostVars:4,hostBindings:function(t,e){2&t&&(i["ɵɵattribute"]("aria-disabled",e.disabled.toString())("aria-labelledby",e._labelId),i["ɵɵclassProp"]("mat-optgroup-disabled",e.disabled))},inputs:{disabled:"disabled",label:"label"},exportAs:["matOptgroup"],features:[i["ɵɵInheritDefinitionFeature"]],ngContentSelectors:y,decls:4,vars:2,consts:[[1,"mat-optgroup-label",3,"id"]],template:function(t,e){1&t&&(i["ɵɵprojectionDef"](v),i["ɵɵelementStart"](0,"label",0),i["ɵɵtext"](1),i["ɵɵprojection"](2),i["ɵɵelementEnd"](),i["ɵɵprojection"](3,1)),2&t&&(i["ɵɵproperty"]("id",e._labelId),i["ɵɵadvance"](1),i["ɵɵtextInterpolate1"]("",e.label," "))},styles:[".mat-optgroup-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mat-optgroup-label[disabled]{cursor:default}[dir=rtl] .mat-optgroup-label{text-align:right}.mat-optgroup-label .mat-icon{margin-right:16px;vertical-align:middle}.mat-optgroup-label .mat-icon svg{vertical-align:top}[dir=rtl] .mat-optgroup-label .mat-icon{margin-left:16px;margin-right:0}\n"],encapsulation:2,changeDetection:0});var n=i["ɵɵgetInheritedFactory"](e);return e}(bt),xt=0,Mt=function(t,e){void 0===e&&(e=!1),this.source=t,this.isUserInput=e},Et=new i.InjectionToken("MAT_OPTION_PARENT_COMPONENT"),Ct=function(){function t(t,e,n,r){this._element=t,this._changeDetectorRef=e,this._parent=n,this.group=r,this._selected=!1,this._active=!1,this._disabled=!1,this._mostRecentViewValue="",this.id="mat-option-"+xt++,this.onSelectionChange=new i.EventEmitter,this._stateChanges=new u.a}return Object.defineProperty(t.prototype,"multiple",{get:function(){return this._parent&&this._parent.multiple},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"selected",{get:function(){return this._selected},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"disabled",{get:function(){return this.group&&this.group.disabled||this._disabled},set:function(t){this._disabled=Object(l.c)(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"disableRipple",{get:function(){return this._parent&&this._parent.disableRipple},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"active",{get:function(){return this._active},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"viewValue",{get:function(){return(this._getHostElement().textContent||"").trim()},enumerable:!0,configurable:!0}),t.prototype.select=function(){this._selected||(this._selected=!0,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())},t.prototype.deselect=function(){this._selected&&(this._selected=!1,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())},t.prototype.focus=function(t,e){var n=this._getHostElement();"function"==typeof n.focus&&n.focus(e)},t.prototype.setActiveStyles=function(){this._active||(this._active=!0,this._changeDetectorRef.markForCheck())},t.prototype.setInactiveStyles=function(){this._active&&(this._active=!1,this._changeDetectorRef.markForCheck())},t.prototype.getLabel=function(){return this.viewValue},t.prototype._handleKeydown=function(t){t.keyCode!==m.ENTER&&t.keyCode!==m.SPACE||Object(m.hasModifierKey)(t)||(this._selectViaInteraction(),t.preventDefault())},t.prototype._selectViaInteraction=function(){this.disabled||(this._selected=!this.multiple||!this._selected,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent(!0))},t.prototype._getAriaSelected=function(){return this.selected||!this.multiple&&null},t.prototype._getTabIndex=function(){return this.disabled?"-1":"0"},t.prototype._getHostElement=function(){return this._element.nativeElement},t.prototype.ngAfterViewChecked=function(){if(this._selected){var t=this.viewValue;t!==this._mostRecentViewValue&&(this._mostRecentViewValue=t,this._stateChanges.next())}},t.prototype.ngOnDestroy=function(){this._stateChanges.complete()},t.prototype._emitSelectionChangeEvent=function(t){void 0===t&&(t=!1),this.onSelectionChange.emit(new Mt(this,t))},t.ctorParameters=function(){return[{type:i.ElementRef},{type:i.ChangeDetectorRef},{type:void 0,decorators:[{type:i.Optional},{type:i.Inject,args:[Et]}]},{type:St,decorators:[{type:i.Optional}]}]},t.propDecorators={value:[{type:i.Input}],id:[{type:i.Input}],disabled:[{type:i.Input}],onSelectionChange:[{type:i.Output}]},t.ɵfac=function(e){return new(e||t)(i["ɵɵdirectiveInject"](i.ElementRef),i["ɵɵdirectiveInject"](i.ChangeDetectorRef),i["ɵɵdirectiveInject"](Et,8),i["ɵɵdirectiveInject"](St,8))},t.ɵcmp=i["ɵɵdefineComponent"]({type:t,selectors:[["mat-option"]],hostAttrs:["role","option",1,"mat-option","mat-focus-indicator"],hostVars:12,hostBindings:function(t,e){1&t&&i["ɵɵlistener"]("click",function(){return e._selectViaInteraction()})("keydown",function(t){return e._handleKeydown(t)}),2&t&&(i["ɵɵhostProperty"]("id",e.id),i["ɵɵattribute"]("tabindex",e._getTabIndex())("aria-selected",e._getAriaSelected())("aria-disabled",e.disabled.toString()),i["ɵɵclassProp"]("mat-selected",e.selected)("mat-option-multiple",e.multiple)("mat-active",e.active)("mat-option-disabled",e.disabled))},inputs:{id:"id",disabled:"disabled",value:"value"},outputs:{onSelectionChange:"onSelectionChange"},exportAs:["matOption"],ngContentSelectors:w,decls:4,vars:3,consts:[["class","mat-option-pseudo-checkbox",3,"state","disabled",4,"ngIf"],[1,"mat-option-text"],["mat-ripple","",1,"mat-option-ripple",3,"matRippleTrigger","matRippleDisabled"],[1,"mat-option-pseudo-checkbox",3,"state","disabled"]],template:function(t,e){1&t&&(i["ɵɵprojectionDef"](),i["ɵɵtemplate"](0,b,1,2,"mat-pseudo-checkbox",0),i["ɵɵelementStart"](1,"span",1),i["ɵɵprojection"](2),i["ɵɵelementEnd"](),i["ɵɵelement"](3,"div",2)),2&t&&(i["ɵɵproperty"]("ngIf",e.multiple),i["ɵɵadvance"](3),i["ɵɵproperty"]("matRippleTrigger",e._getHostElement())("matRippleDisabled",e.disabled||e.disableRipple))},directives:[s.NgIf,gt,vt],styles:[".mat-option{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative;cursor:pointer;outline:none;display:flex;flex-direction:row;max-width:100%;box-sizing:border-box;align-items:center;-webkit-tap-highlight-color:transparent}.mat-option[disabled]{cursor:default}[dir=rtl] .mat-option{text-align:right}.mat-option .mat-icon{margin-right:16px;vertical-align:middle}.mat-option .mat-icon svg{vertical-align:top}[dir=rtl] .mat-option .mat-icon{margin-left:16px;margin-right:0}.mat-option[aria-disabled=true]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:32px}[dir=rtl] .mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:16px;padding-right:32px}.cdk-high-contrast-active .mat-option{margin:0 1px}.cdk-high-contrast-active .mat-option.mat-active{border:solid 1px currentColor;margin:0}.mat-option-text{display:inline-block;flex-grow:1;overflow:hidden;text-overflow:ellipsis}.mat-option .mat-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.cdk-high-contrast-active .mat-option .mat-option-ripple{opacity:.5}.mat-option-pseudo-checkbox{margin-right:8px}[dir=rtl] .mat-option-pseudo-checkbox{margin-left:8px;margin-right:0}\n"],encapsulation:2,changeDetection:0}),t}();function At(t,e,n){if(n.length){for(var i=e.toArray(),r=n.toArray(),o=0,a=0;a<t+1;a++)i[a].group&&i[a].group===r[o]&&o++;return o}return 0}function Tt(t,e,n,i){var r=t*e;return r<n?r:r+e>n+i?Math.max(0,r-i+e):n}
  1666. /**
  1667. * @license
  1668. * Copyright Google LLC All Rights Reserved.
  1669. *
  1670. * Use of this source code is governed by an MIT-style license that can be
  1671. * found in the LICENSE file at https://angular.io/license
  1672. */var Ot=function(){function t(){}return t.ɵmod=i["ɵɵdefineNgModule"]({type:t}),t.ɵinj=i["ɵɵdefineInjector"]({factory:function(e){return new(e||t)},imports:[[mt,s.CommonModule,yt]]}),("undefined"==typeof ngJitMode||ngJitMode)&&i["ɵɵsetNgModuleScope"](t,{declarations:function(){return[Ct,St]},imports:function(){return[mt,s.CommonModule,yt]},exports:function(){return[Ct,St]}}),t}(),_t=new i.InjectionToken("mat-label-global-options"),Pt=0,It=1,kt=2,Dt=3,Rt=4,Lt=5,Nt=6,jt=7,Vt=8,Ft=9,Ut=10,Bt=11;
  1673. /**
  1674. * @license
  1675. * Copyright Google LLC All Rights Reserved.
  1676. *
  1677. * Use of this source code is governed by an MIT-style license that can be
  1678. * found in the LICENSE file at https://angular.io/license
  1679. */},function(t,e,n){var i=n(43),r=n(459),o=n(29),a=n(134),s=Object.defineProperty;e.f=i?s:function(t,e,n){if(o(t),e=a(e,!0),o(n),r)try{return s(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(t[e]=n.value),t}},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(7);n(263),n(31),n(90),n(263),n(31),n(90);var s=n(135),c=(n(22),n(4)),l=n(136),u=(n(14),n(55)),d=n(6),p=n(0),h=n(549),f=n(0),g=n(263),m=n(90),v=n(31),y=n(22),b=n(14),w=function(){function t(t,e,n,i,r){this.CameraHeadRepository=t,this.ImageRepository=e,this.DatasetRepository=n,this.SiteModelRepository=i,this.GeoTransformationService=r,s.EntityRelationMapper.manyToOne(this.ImageRepository,"cameraHead","cameraHeadId",this.CameraHeadRepository),s.EntityRelationMapper.manyToOne(this.ImageRepository,"dataset","datasetId",this.DatasetRepository)}return Object.defineProperty(t.prototype,"images",{get:function(){return console.warn('Deprecated usage of "images", use "ImageRepository.findAll()" or "ImageRepository.data" instead.'),this.ImageRepository.data},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"imageById",{get:function(){return console.warn('Deprecated usage of "imageById", use "ImageRepository.findOne()" or "ImageRepository.dataMap" instead.'),this.ImageRepository.dataMap},enumerable:!0,configurable:!0}),t.prototype.getFirstImageInDataset=function(t,e){return i(this,void 0,void 0,function(){var n,i;return r(this,function(r){switch(r.label){case 0:return n=(new l.ImageRestFilterBuilder).hidden(!1).sortBy(h.SortableField.FILE_ID).sortOrder(h.SortOrder.ASCENDING).limit(1).dataset([t]),e&&(a.includes(t.siteModelEntities,e)?n.siteModel([e]):console.warn("getFirstImageInDataset: given site model entity",e.id,"is not assigned to dataset",t.id,"therefore ignoring!")),[4,this.ImageRepository.filter(n.build())];case 1:return[2,(i=r.sent()).length>0?i[0]:void 0]}})})},t.prototype.getImageInDataset=function(t,e){return this.ImageRepository.filter((new l.ImageRestFilterBuilder).dataset([t]).build()).then(function(t){return a.find(t,function(t){return parseInt(t.fileId,0)===e})})},t.prototype.getClosestImageOnFloor=function(t,e){var n=this;return this.GeoTransformationService.initialized.then(function(){var i=n.GeoTransformationService.vectorToGlobal(t);return n.getClosestImageOnFloorGlobal(i,e)})},t.prototype.getClosestImageOnFloorGlobal=function(t,e){var n=this;return this.SiteModelRepository.findWithinGlobal(t,u.SiteModelType.FLOOR).then(function(i){var r=i.length>0?i:[void 0];return n.getClosestImageGlobal(t,e,r)})},t.prototype.getClosestImage=function(t,e,n){var i=this;return this.GeoTransformationService.initialized.then(function(){var r=t instanceof c.Vector3?i.GeoTransformationService.vectorToGlobal(t):i.GeoTransformationService.vector2ToGlobal(t);return i.getClosestImageGlobal(r,e,n)})},t.prototype.getClosestImageGlobal=function(t,e,n){var i=(new l.ImageRestFilterBuilder).location(t).hidden(!1).limit(1);return n&&i.siteModel(n),e&&i.radius(e),this.ImageRepository.filter(i.build()).then(function(t){return 1!==t.length?Promise.reject("No image found"):t[0]})},t.prototype.getClosestImageInDir=function(t,e,n,i){void 0===n&&(n=1),void 0===i&&(i=10);var r=e.lon,o=new c.Vector3(Math.cos(r)*i*n,Math.sin(r)*i*n,0),a=(new c.Vector3).copy(t.location).add(o);return this.getClosestImage(a)},t.ɵfac=function(e){return new(e||t)(f.ɵɵinject(g.CameraHeadRepository),f.ɵɵinject(m.ImageRepository),f.ɵɵinject(v.DatasetRepository),f.ɵɵinject(y.SiteModelRepository),f.ɵɵinject(b.GeoTransformationService))},t.ɵprov=f.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.ImageService=w,f.ɵsetClassMetadata(w,[{type:p.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:g.CameraHeadRepository},{type:m.ImageRepository},{type:v.DatasetRepository},{type:y.SiteModelRepository},{type:b.GeoTransformationService}]},null),o.module("IVWebApp").service("ImageService",d.downgradeInjectable(w))},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(7),s=(n(15),n(25)),c=n(16),l=n(384),u=n(6),d=n(0),p=(n(168),n(0)),h=n(15),f=n(168),g=function(){function t(t,e,n,i){var r=this;this.gettextCatalog=t,this.ConfigService=e,this.localStorageService=n,this.TranslocoService=i,this.onLanguageChange=new c.Signal,this.LOCAL_STORAGE_KEY="iv_lang_key",this.registeredLanguageKeys=[],this.isInitialized=!1,this.localize=function(t){if(t&&0!==a.size(t)){var e=Object.keys(t);return t[r.dataLanguage]||t[r.fallbackLanguage.toString()]||t[e[0]]}},this.fallbackLanguage=l.UiLanguage.ENGLISH,this.dataLanguage=this.fallbackLanguage.toString(),a.forIn(l.UiLanguage,function(t){return r.registeredLanguageKeys.push(t)}),this.initialized=new Promise(function(t){r.ConfigService.initialized.then(function(){return r.initLanguage()}).catch(function(){return r.initLanguage()}).then(function(){return r.isInitialized=!0}).then(function(){t(!0)}).catch(function(){t(!1)})})}return Object.defineProperty(t.prototype,"allDataLanguages",{get:function(){return t.allDataLanguages},enumerable:!0,configurable:!0}),t.prototype.setLanguage=function(t){return this.dataLanguage=t,this._setUiLanguage(t)},t.prototype._setUiLanguage=function(t){return this.isLanguageRegistered(t)?(this.initAngularTranslation(t),this.initAngularJsTranslation(t)):Promise.reject("Language "+t+" not supported by the user interface.")},t.prototype.initAngularJsTranslation=function(t){return i(this,void 0,void 0,function(){return r(this,function(e){switch(e.label){case 0:return this.gettextCatalog.setCurrentLanguage(t),[4,this.gettextCatalog.loadRemote("translations/"+t+".json")];case 1:return e.sent(),this.localStorageService.set(this.LOCAL_STORAGE_KEY,this.dataLanguage),this.isInitialized&&this.onLanguageChange.emit(this.getLanguage(t)),[2]}})})},t.prototype.initAngularTranslation=function(t){this.TranslocoService.load(t).subscribe(),this.TranslocoService.setActiveLang(t)},t.prototype.setDataLanguage=function(t){var e=this.getLanguage(t.toString());this.updateDataLanguage(e)},t.prototype.setUiLanguage=function(t){return this._setUiLanguage(t.toString())},t.prototype.getCurrentDataLanguage=function(){return this.getLanguage(this.dataLanguage)},t.prototype.getCurrentUiLanguage=function(){var t=this.getCurrentLanguage();return this.getLanguage(t)},t.prototype.resetLanguage=function(){this.localStorageService.remove(this.LOCAL_STORAGE_KEY);var t=this.getBrowserLocale()?this.getBrowserLocale():this.fallbackLanguage.toString();return this.setLanguage(t).catch(function(){}),this.getLanguage(t)},t.prototype.updateDataLanguage=function(t){this.dataLanguage=t.key},t.prototype.getCurrentLanguage=function(){return this.gettextCatalog.getCurrentLanguage()},t.prototype.getRegisteredLanguages=function(){for(var t=[],e=0,n=this.registeredLanguageKeys;e<n.length;e++){var i=n[e];t.push(this.getLanguage(i))}return t},t.prototype.getRegisteredLanguageNumberFormats=function(){return this.getRegisteredLanguages().map(function(t){return{key:t.key,numberFormat:t.numberFormat}})},t.prototype.getUniqueLanguageNumberFormats=function(){return a.uniqBy(this.getRegisteredLanguageNumberFormats(),function(t){return t.numberFormat})},t.prototype.getCurrentLanguageNumberFormat=function(t){var e=this.getCurrentLanguage(),n=a.find(this.getRegisteredLanguageNumberFormats(),function(t){return t.key===e});if(!n){var i=this.getLanguage(this.fallbackLanguage.toString());n={key:i.key,numberFormat:i.numberFormat}}return n=t.find(function(t){return t.numberFormat===n.numberFormat})},t.prototype.getBrowserLocale=function(){var t=this.getBrowserLocaleString();return this.isLanguageRegistered(t)?t:t.split("_")[0]},t.prototype.getBrowserLocaleString=function(){var t=window.navigator;return((o.isArray(t.languages)?t.languages[0]:t.language||t.browserLanguage||t.systemLanguage||t.userLanguage)||"").split("-").join("_").toLowerCase()},t.prototype.getLanguage=function(e){return a.find(t.allDataLanguages,{key:e})},t.prototype.initLanguage=function(){return this.ConfigService.getString(s.Configs.LANG)?this.setLanguage(this.ConfigService.getString(s.Configs.LANG)):this.localStorageService.get(this.LOCAL_STORAGE_KEY)?this.setLanguage(this.localStorageService.get(this.LOCAL_STORAGE_KEY)):this.getBrowserLocale()?this.setLanguage(this.getBrowserLocale()):this.setLanguage(this.fallbackLanguage.toString())},t.prototype.isLanguageRegistered=function(t){return this.registeredLanguageKeys.indexOf(t)>-1},t.allDataLanguages=[{key:"ab",name:"Abkhaz",nativeName:"Аҧсуа"},{key:"aa",name:"Afar",nativeName:"Afaraf"},{key:"af",name:"Afrikaans",nativeName:"Afrikaans"},{key:"ak",name:"Akan",nativeName:"Akan"},{key:"sq",name:"Albanian",nativeName:"Shqip"},{key:"am",name:"Amharic",nativeName:"አማርኛ"},{key:"ar",name:"Arabic",nativeName:"العربية"},{key:"an",name:"Aragonese",nativeName:"Aragonés"},{key:"hy",name:"Armenian",nativeName:"Հայերեն"},{key:"as",name:"Assamese",nativeName:"অসমীয়া"},{key:"av",name:"Avaric",nativeName:"Авар мацӀ"},{key:"ae",name:"Avestan",nativeName:"Avesta"},{key:"ay",name:"Aymara",nativeName:"Aymar aru"},{key:"az",name:"Azerbaijani",nativeName:"Azərbaycan dili"},{key:"bm",name:"Bambara",nativeName:"Bamanankan"},{key:"ba",name:"Bashkir",nativeName:"Башҡорт теле"},{key:"eu",name:"Basque",nativeName:"Euskara"},{key:"be",name:"Belarusian",nativeName:"Беларуская"},{key:"bn",name:"Bengali",nativeName:"বাংলা"},{key:"bh",name:"Bihari",nativeName:"भोजपुरी"},{key:"bi",name:"Bislama",nativeName:"Bislama"},{key:"bs",name:"Bosnian",nativeName:"Bosanski jezik"},{key:"br",name:"Breton",nativeName:"Brezhoneg"},{key:"bg",name:"Bulgarian",nativeName:"Български език"},{key:"my",name:"Burmese",nativeName:"ဗမာစာ"},{key:"ca",name:"Catalan; Valencian",nativeName:"Català"},{key:"ch",name:"Chamorro",nativeName:"Chamoru"},{key:"ce",name:"Chechen",nativeName:"Нохчийн мотт"},{key:"ny",name:"Chichewa; Chewa; Nyanja",nativeName:"ChiCheŵa"},{key:"zh",name:"Chinese",nativeName:"简体中文 (Simplified Chinese)",numberFormat:"1,000.00",decimalSeparator:l.DecimalSeparators.POINT},{key:"zh_tw",name:"Traditional Chinese",nativeName:"繁體中文 (Traditional Chinese)",numberFormat:"1,000.00",decimalSeparator:l.DecimalSeparators.POINT},{key:"cv",name:"Chuvash",nativeName:"Чӑваш чӗлхи"},{key:"kw",name:"Cornish",nativeName:"Kernewek"},{key:"co",name:"Corsican",nativeName:"Corsu"},{key:"cr",name:"Cree",nativeName:"ᓀᐦᐃᔭᐍᐏᐣ"},{key:"hr",name:"Croatian",nativeName:"Hrvatski"},{key:"cs",name:"Czech",nativeName:"Česky",numberFormat:"1 000,00",decimalSeparator:l.DecimalSeparators.COMMA},{key:"da",name:"Danish",nativeName:"Dansk"},{key:"dv",name:"Divehi; Dhivehi; Maldivian;",nativeName:"ދިވެހި"},{key:"nl",name:"Dutch",nativeName:"Nederlands"},{key:"en",name:"English",nativeName:"English",numberFormat:"1,000.00",decimalSeparator:l.DecimalSeparators.POINT},{key:"eo",name:"Esperanto",nativeName:"Esperanto"},{key:"et",name:"Estonian",nativeName:"Eesti"},{key:"ee",name:"Ewe",nativeName:"Eʋegbe"},{key:"fo",name:"Faroese",nativeName:"Føroyskt"},{key:"fj",name:"Fijian",nativeName:"Vosa Vakaviti"},{key:"fi",name:"Finnish",nativeName:"Suomi"},{key:"fr",name:"French",nativeName:"Français",numberFormat:"1.000,00",decimalSeparator:l.DecimalSeparators.COMMA},{key:"ff",name:"Fula; Fulah; Pulaar; Pular",nativeName:"Fulfulde"},{key:"gl",name:"Galician",nativeName:"Galego"},{key:"ka",name:"Georgian",nativeName:"ქართული"},{key:"de",name:"German",nativeName:"Deutsch",numberFormat:"1.000,00",decimalSeparator:l.DecimalSeparators.COMMA},{key:"el",name:"Greek, Modern",nativeName:"Ελληνικά"},{key:"gn",name:"Guaraní",nativeName:"Avañeẽ"},{key:"gu",name:"Gujarati",nativeName:"ગુજરાતી"},{key:"ht",name:"Haitian; Haitian Creole",nativeName:"Kreyòl ayisyen"},{key:"ha",name:"Hausa",nativeName:"Hausa"},{key:"he",name:"Hebrew (modern)",nativeName:"עברית"},{key:"hz",name:"Herero",nativeName:"Otjiherero"},{key:"hi",name:"Hindi",nativeName:"हिन्दी"},{key:"ho",name:"Hiri Motu",nativeName:"Hiri Motu"},{key:"hu",name:"Hungarian",nativeName:"Magyar",numberFormat:"1.000,00",decimalSeparator:l.DecimalSeparators.COMMA},{key:"ia",name:"Interlingua",nativeName:"Interlingua"},{key:"id",name:"Indonesian",nativeName:"Bahasa Indonesia"},{key:"ie",name:"Interlingue",nativeName:"Interlingue"},{key:"ga",name:"Irish",nativeName:"Gaeilge"},{key:"ig",name:"Igbo",nativeName:"Asụsụ Igbo"},{key:"ik",name:"Inupiaq",nativeName:"Iñupiaq"},{key:"io",name:"Ido",nativeName:"Ido"},{key:"is",name:"Icelandic",nativeName:"Íslenska"},{key:"it",name:"Italian",nativeName:"Italiano"},{key:"iu",name:"Inuktitut",nativeName:"ᐃᓄᒃᑎᑐᑦ"},{key:"ja",name:"Japanese",nativeName:"日本語",numberFormat:"1,000.00",decimalSeparator:l.DecimalSeparators.POINT},{key:"jv",name:"Javanese",nativeName:"Basa Jawa"},{key:"kl",name:"Kalaallisut, Greenlandic",nativeName:"Kalaallisut"},{key:"kn",name:"Kannada",nativeName:"ಕನ್ನಡ"},{key:"kr",name:"Kanuri",nativeName:"Kanuri"},{key:"ks",name:"Kashmiri",nativeName:"कश्मीरी"},{key:"kk",name:"Kazakh",nativeName:"Қазақ тілі"},{key:"km",name:"Khmer",nativeName:"ភាសាខ្មែរ"},{key:"ki",name:"Kikuyu, Gikuyu",nativeName:"Gĩkũyũ"},{key:"rw",name:"Kinyarwanda",nativeName:"Ikinyarwanda"},{key:"ky",name:"Kirghiz, Kyrgyz",nativeName:"Кыргыз тили"},{key:"kv",name:"Komi",nativeName:"Коми кыв"},{key:"kg",name:"Kongo",nativeName:"KiKongo"},{key:"ko",name:"Korean",nativeName:"한국어 (韓國語)"},{key:"ku",name:"Kurdish",nativeName:"Kurdî"},{key:"kj",name:"Kwanyama, Kuanyama",nativeName:"Kuanyama"},{key:"la",name:"Latin",nativeName:"Latine"},{key:"lb",name:"Luxembourgish, Letzeburgesch",nativeName:"Lëtzebuergesch"},{key:"lg",name:"Luganda",nativeName:"Luganda"},{key:"li",name:"Limburgish, Limburgan, Limburger",nativeName:"Limburgs"},{key:"ln",name:"Lingala",nativeName:"Lingála"},{key:"lo",name:"Lao",nativeName:"ພາສາລາວ"},{key:"lt",name:"Lithuanian",nativeName:"Lietuvių kalba"},{key:"lu",name:"Luba-Katanga",nativeName:"Luba-Katanga"},{key:"lv",name:"Latvian",nativeName:"Latviešu valoda"},{key:"gv",name:"Manx",nativeName:"Gaelg"},{key:"mk",name:"Macedonian",nativeName:"Македонски јазик"},{key:"mg",name:"Malagasy",nativeName:"Malagasy fiteny"},{key:"ms",name:"Malay",nativeName:"Bahasa Melayu"},{key:"ml",name:"Malayalam",nativeName:"മലയാളം"},{key:"mt",name:"Maltese",nativeName:"Malti"},{key:"mi",name:"Māori",nativeName:"Te reo Māori"},{key:"mr",name:"Marathi (Marāṭhī)",nativeName:"मराठी"},{key:"mh",name:"Marshallese",nativeName:"Kajin M̧ajeļ"},{key:"mn",name:"Mongolian",nativeName:"Монгол"},{key:"na",name:"Nauru",nativeName:"Ekakairũ Naoero"},{key:"nv",name:"Navajo, Navaho",nativeName:"Diné bizaad"},{key:"nb",name:"Norwegian Bokmål",nativeName:"Norsk bokmål"},{key:"nd",name:"North Ndebele",nativeName:"IsiNdebele"},{key:"ne",name:"Nepali",nativeName:"नेपाली"},{key:"ng",name:"Ndonga",nativeName:"Owambo"},{key:"nn",name:"Norwegian Nynorsk",nativeName:"Norsk nynorsk"},{key:"no",name:"Norwegian",nativeName:"Norsk"},{key:"ii",name:"Nuosu",nativeName:"Nuosuhxop"},{key:"nr",name:"South Ndebele",nativeName:"IsiNdebele"},{key:"oc",name:"Occitan",nativeName:"Occitan"},{key:"oj",name:"Ojibwe, Ojibwa",nativeName:"ᐊᓂᔑᓈᐯᒧᐎᓐ"},{key:"cu",name:"Old Church Slavonic",nativeName:"Ѩзыкъ словѣньскъ"},{key:"om",name:"Oromo",nativeName:"Afaan Oromoo"},{key:"or",name:"Oriya",nativeName:"ଓଡ଼ିଆ"},{key:"os",name:"Ossetian, Ossetic",nativeName:"Ирон æвзаг"},{key:"pa",name:"Panjabi, Punjabi",nativeName:"ਪੰਜਾਬੀ"},{key:"pi",name:"Pāli",nativeName:"पाऴि"},{key:"fa",name:"Persian",nativeName:"فارسی"},{key:"pl",name:"Polish",nativeName:"Polski",numberFormat:"1 000,00",decimalSeparator:l.DecimalSeparators.COMMA},{key:"ps",name:"Pashto, Pushto",nativeName:"پښتو"},{key:"pt",name:"Portuguese",nativeName:"Português"},{key:"qu",name:"Quechua",nativeName:"Runa Simi"},{key:"rm",name:"Romansh",nativeName:"Rumantsch grischun"},{key:"rn",name:"Kirundi",nativeName:"KiRundi"},{key:"ro",name:"Romanian, Moldavian, Moldovan",nativeName:"Română"},{key:"ru",name:"Russian",nativeName:"Русский язык"},{key:"sa",name:"Sanskrit (Saṁskṛta)",nativeName:"संस्कृतम्"},{key:"sc",name:"Sardinian",nativeName:"Sardu"},{key:"sd",name:"Sindhi",nativeName:"सिन्धी"},{key:"se",name:"Northern Sami",nativeName:"Davvisámegiella"},{key:"sm",name:"Samoan",nativeName:"Gagana faa Samoa"},{key:"sg",name:"Sango",nativeName:"Yângâ tî sängö"},{key:"sr",name:"Serbian",nativeName:"Српски језик"},{key:"gd",name:"Scottish Gaelic; Gaelic",nativeName:"Gàidhlig"},{key:"sn",name:"Shona",nativeName:"ChiShona"},{key:"si",name:"Sinhala, Sinhalese",nativeName:"සිංහල"},{key:"sk",name:"Slovak",nativeName:"Slovenčina"},{key:"sl",name:"Slovene",nativeName:"Slovenščina"},{key:"so",name:"Somali",nativeName:"Soomaaliga"},{key:"st",name:"Southern Sotho",nativeName:"Sesotho"},{key:"es",name:"Spanish; Castilian",nativeName:"Español"},{key:"su",name:"Sundanese",nativeName:"Basa Sunda"},{key:"sw",name:"Swahili",nativeName:"Kiswahili"},{key:"ss",name:"Swati",nativeName:"SiSwati"},{key:"sv",name:"Swedish",nativeName:"Svenska"},{key:"ta",name:"Tamil",nativeName:"தமிழ்"},{key:"te",name:"Telugu",nativeName:"తెలుగు"},{key:"tg",name:"Tajik",nativeName:"Тоҷикӣ"},{key:"th",name:"Thai",nativeName:"ไทย"},{key:"ti",name:"Tigrinya",nativeName:"ትግርኛ"},{key:"bo",name:"Tibetan Standard, Tibetan, Central",nativeName:"བོད་ཡིག"},{key:"tk",name:"Turkmen",nativeName:"Türkmen"},{key:"tl",name:"Tagalog",nativeName:"Wikang Tagalog"},{key:"tn",name:"Tswana",nativeName:"Setswana"},{key:"to",name:"Tonga (Tonga Islands)",nativeName:"Faka Tonga"},{key:"tr",name:"Turkish",nativeName:"Türkçe",numberFormat:"1.000,00",decimalSeparator:l.DecimalSeparators.COMMA},{key:"ts",name:"Tsonga",nativeName:"Xitsonga"},{key:"tt",name:"Tatar",nativeName:"Татарча"},{key:"tw",name:"Twi",nativeName:"Twi"},{key:"ty",name:"Tahitian",nativeName:"Reo Tahiti"},{key:"ug",name:"Uighur, Uyghur",nativeName:"Uyƣurqə"},{key:"uk",name:"Ukrainian",nativeName:"Українська"},{key:"ur",name:"Urdu",nativeName:"اردو"},{key:"uz",name:"Uzbek",nativeName:"Zbek"},{key:"ve",name:"Venda",nativeName:"Tshivenḓa"},{key:"vi",name:"Vietnamese",nativeName:"Tiếng Việt"},{key:"vo",name:"Volapük",nativeName:"Volapük"},{key:"wa",name:"Walloon",nativeName:"Walon"},{key:"cy",name:"Welsh",nativeName:"Cymraeg"},{key:"wo",name:"Wolof",nativeName:"Wollof"},{key:"fy",name:"Western Frisian",nativeName:"Frysk"},{key:"xh",name:"Xhosa",nativeName:"IsiXhosa"},{key:"yi",name:"Yiddish",nativeName:"ייִדיש"},{key:"yo",name:"Yoruba",nativeName:"Yorùbá"},{key:"za",name:"Zhuang, Chuang",nativeName:"Saɯ cueŋƅ"}],t.ɵfac=function(e){return new(e||t)(p.ɵɵinject("gettextCatalog"),p.ɵɵinject(h.ConfigService),p.ɵɵinject("localStorageService"),p.ɵɵinject(f.TranslocoService))},t.ɵprov=p.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.LanguageService=g,p.ɵsetClassMetadata(g,[{type:d.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:d.Inject,args:["gettextCatalog"]}]},{type:h.ConfigService},{type:void 0,decorators:[{type:d.Inject,args:["localStorageService"]}]},{type:f.TranslocoService}]},null),o.module("IVWebApp").service("LanguageService",u.downgradeInjectable(g))},function(t,e,n){"use strict";n.d(e,"a",function(){return U}),n.d(e,"b",function(){return D}),n.d(e,"c",function(){return B}),n.d(e,"d",function(){return L});var i=n(23),r=n(0),o=n(32),a=n(93),s=n(12),c=n(229),l=n(279),u=n(335),d=n(331),p=n(33),h=n(338),f=n(631),g=n(437),m=n(165),v=n(341),y=n(438),b=n(650),w=n(276),S=n(536),x=n(13),M=n(3),E=n(37),C=n(1),A=n(343),T=["contentWrapper"],O=["*"],_=new r.InjectionToken("VIRTUAL_SCROLL_STRATEGY"),P=function(){function t(t,e,n){this._scrolledIndexChange=new o.a,this.scrolledIndexChange=this._scrolledIndexChange.pipe(Object(f.a)()),this._viewport=null,this._itemSize=t,this._minBufferPx=e,this._maxBufferPx=n}return t.prototype.attach=function(t){this._viewport=t,this._updateTotalContentSize(),this._updateRenderedRange()},t.prototype.detach=function(){this._scrolledIndexChange.complete(),this._viewport=null},t.prototype.updateItemAndBufferSize=function(t,e,n){if(n<e)throw Error("CDK virtual scroll: maxBufferPx must be greater than or equal to minBufferPx");this._itemSize=t,this._minBufferPx=e,this._maxBufferPx=n,this._updateTotalContentSize(),this._updateRenderedRange()},t.prototype.onContentScrolled=function(){this._updateRenderedRange()},t.prototype.onDataLengthChanged=function(){this._updateTotalContentSize(),this._updateRenderedRange()},t.prototype.onContentRendered=function(){},t.prototype.onRenderedOffsetChanged=function(){},t.prototype.scrollToIndex=function(t,e){this._viewport&&this._viewport.scrollToOffset(t*this._itemSize,e)},t.prototype._updateTotalContentSize=function(){this._viewport&&this._viewport.setTotalContentSize(this._viewport.getDataLength()*this._itemSize)},t.prototype._updateRenderedRange=function(){if(this._viewport){var t=this._viewport.measureScrollOffset(),e=t/this._itemSize,n=this._viewport.getRenderedRange(),i={start:n.start,end:n.end},r=this._viewport.getViewportSize(),o=this._viewport.getDataLength(),a=t-i.start*this._itemSize;if(a<this._minBufferPx&&0!=i.start){var s=Math.ceil((this._maxBufferPx-a)/this._itemSize);i.start=Math.max(0,i.start-s),i.end=Math.min(o,Math.ceil(e+(r+this._minBufferPx)/this._itemSize))}else{var c=i.end*this._itemSize-(t+r);if(c<this._minBufferPx&&i.end!=o){var l=Math.ceil((this._maxBufferPx-c)/this._itemSize);l>0&&(i.end=Math.min(o,i.end+l),i.start=Math.max(0,Math.floor(e-this._minBufferPx/this._itemSize)))}}this._viewport.setRenderedRange(i),this._viewport.setRenderedContentOffset(this._itemSize*i.start),this._scrolledIndexChange.next(Math.floor(e))}},t}();function I(t){return t._scrollStrategy}var k=function(){function t(){this._itemSize=20,this._minBufferPx=100,this._maxBufferPx=200,this._scrollStrategy=new P(this.itemSize,this.minBufferPx,this.maxBufferPx)}return Object.defineProperty(t.prototype,"itemSize",{get:function(){return this._itemSize},set:function(t){this._itemSize=Object(i.f)(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"minBufferPx",{get:function(){return this._minBufferPx},set:function(t){this._minBufferPx=Object(i.f)(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"maxBufferPx",{get:function(){return this._maxBufferPx},set:function(t){this._maxBufferPx=Object(i.f)(t)},enumerable:!0,configurable:!0}),t.prototype.ngOnChanges=function(){this._scrollStrategy.updateItemAndBufferSize(this.itemSize,this.minBufferPx,this.maxBufferPx)},t.propDecorators={itemSize:[{type:r.Input}],minBufferPx:[{type:r.Input}],maxBufferPx:[{type:r.Input}]},t.ɵfac=function(e){return new(e||t)},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["cdk-virtual-scroll-viewport","itemSize",""]],inputs:{itemSize:"itemSize",minBufferPx:"minBufferPx",maxBufferPx:"maxBufferPx"},features:[r["ɵɵProvidersFeature"]([{provide:_,useFactory:I,deps:[Object(r.forwardRef)(function(){return t})]}]),r["ɵɵNgOnChangesFeature"]]}),t}(),D=function(){function t(t,e,n){this._ngZone=t,this._platform=e,this._scrolled=new o.a,this._globalSubscription=null,this._scrolledCount=0,this.scrollContainers=new Map,this._document=n}return t.prototype.register=function(t){var e=this;this.scrollContainers.has(t)||this.scrollContainers.set(t,t.elementScrolled().subscribe(function(){return e._scrolled.next(t)}))},t.prototype.deregister=function(t){var e=this.scrollContainers.get(t);e&&(e.unsubscribe(),this.scrollContainers.delete(t))},t.prototype.scrolled=function(t){var e=this;return void 0===t&&(t=20),this._platform.isBrowser?new s.a(function(n){e._globalSubscription||e._addGlobalListener();var i=t>0?e._scrolled.pipe(Object(g.a)(t)).subscribe(n):e._scrolled.subscribe(n);return e._scrolledCount++,function(){i.unsubscribe(),e._scrolledCount--,e._scrolledCount||e._removeGlobalListener()}}):Object(a.a)()},t.prototype.ngOnDestroy=function(){var t=this;this._removeGlobalListener(),this.scrollContainers.forEach(function(e,n){return t.deregister(n)}),this._scrolled.complete()},t.prototype.ancestorScrolled=function(t,e){var n=this.getAncestorScrollContainers(t);return this.scrolled(e).pipe(Object(m.a)(function(t){return!t||n.indexOf(t)>-1}))},t.prototype.getAncestorScrollContainers=function(t){var e=this,n=[];return this.scrollContainers.forEach(function(i,r){e._scrollableContainsElement(r,t)&&n.push(r)}),n},t.prototype._getDocument=function(){return this._document||document},t.prototype._getWindow=function(){return this._getDocument().defaultView||window},t.prototype._scrollableContainsElement=function(t,e){var n=e.nativeElement,i=t.getElementRef().nativeElement;do{if(n==i)return!0}while(n=n.parentElement);return!1},t.prototype._addGlobalListener=function(){var t=this;this._globalSubscription=this._ngZone.runOutsideAngular(function(){var e=t._getWindow();return Object(c.a)(e.document,"scroll").subscribe(function(){return t._scrolled.next()})})},t.prototype._removeGlobalListener=function(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)},t.ctorParameters=function(){return[{type:r.NgZone},{type:x.a},{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[M.DOCUMENT]}]}]},t.ɵprov=Object(r["ɵɵdefineInjectable"])({factory:function(){return new t(Object(r["ɵɵinject"])(r.NgZone),Object(r["ɵɵinject"])(x.a),Object(r["ɵɵinject"])(M.DOCUMENT,8))},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)(r["ɵɵinject"](r.NgZone),r["ɵɵinject"](x.a),r["ɵɵinject"](M.DOCUMENT,8))},t}(),R=function(){function t(t,e,n,i){var r=this;this.elementRef=t,this.scrollDispatcher=e,this.ngZone=n,this.dir=i,this._destroyed=new o.a,this._elementScrolled=new s.a(function(t){return r.ngZone.runOutsideAngular(function(){return Object(c.a)(r.elementRef.nativeElement,"scroll").pipe(Object(v.a)(r._destroyed)).subscribe(t)})})}return t.prototype.ngOnInit=function(){this.scrollDispatcher.register(this)},t.prototype.ngOnDestroy=function(){this.scrollDispatcher.deregister(this),this._destroyed.next(),this._destroyed.complete()},t.prototype.elementScrolled=function(){return this._elementScrolled},t.prototype.getElementRef=function(){return this.elementRef},t.prototype.scrollTo=function(t){var e=this.elementRef.nativeElement,n=this.dir&&"rtl"==this.dir.value;null==t.left&&(t.left=n?t.end:t.start),null==t.right&&(t.right=n?t.start:t.end),null!=t.bottom&&(t.top=e.scrollHeight-e.clientHeight-t.bottom),n&&0!=Object(x.d)()?(null!=t.left&&(t.right=e.scrollWidth-e.clientWidth-t.left),2==Object(x.d)()?t.left=t.right:1==Object(x.d)()&&(t.left=t.right?-t.right:t.right)):null!=t.right&&(t.left=e.scrollWidth-e.clientWidth-t.right),this._applyScrollToOptions(t)},t.prototype._applyScrollToOptions=function(t){var e=this.elementRef.nativeElement;Object(x.g)()?e.scrollTo(t):(null!=t.top&&(e.scrollTop=t.top),null!=t.left&&(e.scrollLeft=t.left))},t.prototype.measureScrollOffset=function(t){var e=this.elementRef.nativeElement;if("top"==t)return e.scrollTop;if("bottom"==t)return e.scrollHeight-e.clientHeight-e.scrollTop;var n=this.dir&&"rtl"==this.dir.value;return"start"==t?t=n?"right":"left":"end"==t&&(t=n?"left":"right"),n&&2==Object(x.d)()?"left"==t?e.scrollWidth-e.clientWidth-e.scrollLeft:e.scrollLeft:n&&1==Object(x.d)()?"left"==t?e.scrollLeft+e.scrollWidth-e.clientWidth:-e.scrollLeft:"left"==t?e.scrollLeft:e.scrollWidth-e.clientWidth-e.scrollLeft},t.ctorParameters=function(){return[{type:r.ElementRef},{type:D},{type:r.NgZone},{type:E.Directionality,decorators:[{type:r.Optional}]}]},t.ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.ElementRef),r["ɵɵdirectiveInject"](D),r["ɵɵdirectiveInject"](r.NgZone),r["ɵɵdirectiveInject"](E.Directionality,8))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","cdk-scrollable",""],["","cdkScrollable",""]]}),t}(),L=function(){function t(t,e,n){var i=this;this._platform=t,this._document=n,e.runOutsideAngular(function(){var e=i._getWindow();i._change=t.isBrowser?Object(l.a)(Object(c.a)(e,"resize"),Object(c.a)(e,"orientationchange")):Object(a.a)(),i._invalidateCache=i.change().subscribe(function(){return i._updateViewportSize()})})}return t.prototype.ngOnDestroy=function(){this._invalidateCache.unsubscribe()},t.prototype.getViewportSize=function(){this._viewportSize||this._updateViewportSize();var t={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),t},t.prototype.getViewportRect=function(){var t=this.getViewportScrollPosition(),e=this.getViewportSize(),n=e.width,i=e.height;return{top:t.top,left:t.left,bottom:t.top+i,right:t.left+n,height:i,width:n}},t.prototype.getViewportScrollPosition=function(){if(!this._platform.isBrowser)return{top:0,left:0};var t=this._getDocument(),e=this._getWindow(),n=t.documentElement,i=n.getBoundingClientRect();return{top:-i.top||t.body.scrollTop||e.scrollY||n.scrollTop||0,left:-i.left||t.body.scrollLeft||e.scrollX||n.scrollLeft||0}},t.prototype.change=function(t){return void 0===t&&(t=20),t>0?this._change.pipe(Object(g.a)(t)):this._change},t.prototype._getDocument=function(){return this._document||document},t.prototype._getWindow=function(){return this._getDocument().defaultView||window},t.prototype._updateViewportSize=function(){var t=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:t.innerWidth,height:t.innerHeight}:{width:0,height:0}},t.ctorParameters=function(){return[{type:x.a},{type:r.NgZone},{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[M.DOCUMENT]}]}]},t.ɵprov=Object(r["ɵɵdefineInjectable"])({factory:function(){return new t(Object(r["ɵɵinject"])(x.a),Object(r["ɵɵinject"])(r.NgZone),Object(r["ɵɵinject"])(M.DOCUMENT,8))},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)(r["ɵɵinject"](x.a),r["ɵɵinject"](r.NgZone),r["ɵɵinject"](M.DOCUMENT,8))},t}(),N="undefined"!=typeof requestAnimationFrame?u.b:d.b,j=function(t){function e(e,n,i,r,a,c,l){var u=t.call(this,e,c,i,a)||this;if(u.elementRef=e,u._changeDetectorRef=n,u._scrollStrategy=r,u._detachedSubject=new o.a,u._renderedRangeSubject=new o.a,u._orientation="vertical",u.scrolledIndexChange=new s.a(function(t){return u._scrollStrategy.scrolledIndexChange.subscribe(function(e){return Promise.resolve().then(function(){return u.ngZone.run(function(){return t.next(e)})})})}),u.renderedRangeStream=u._renderedRangeSubject.asObservable(),u._totalContentSize=0,u._totalContentWidth="",u._totalContentHeight="",u._renderedRange={start:0,end:0},u._dataLength=0,u._viewportSize=0,u._renderedContentOffset=0,u._renderedContentOffsetNeedsRewrite=!1,u._isChangeDetectionPending=!1,u._runAfterChangeDetection=[],u._viewportChanges=p.a.EMPTY,!r)throw Error('Error: cdk-virtual-scroll-viewport requires the "itemSize" property to be set.');return l&&(u._viewportChanges=l.change().subscribe(function(){u.checkViewportSize()})),u}return Object(C.c)(e,t),Object.defineProperty(e.prototype,"orientation",{get:function(){return this._orientation},set:function(t){this._orientation!==t&&(this._orientation=t,this._calculateSpacerSize())},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){var e=this;t.prototype.ngOnInit.call(this),this.ngZone.runOutsideAngular(function(){return Promise.resolve().then(function(){e._measureViewportSize(),e._scrollStrategy.attach(e),e.elementScrolled().pipe(Object(y.a)(null),Object(g.a)(0,N)).subscribe(function(){return e._scrollStrategy.onContentScrolled()}),e._markChangeDetectionNeeded()})})},e.prototype.ngOnDestroy=function(){this.detach(),this._scrollStrategy.detach(),this._renderedRangeSubject.complete(),this._detachedSubject.complete(),this._viewportChanges.unsubscribe(),t.prototype.ngOnDestroy.call(this)},e.prototype.attach=function(t){var e=this;if(this._forOf)throw Error("CdkVirtualScrollViewport is already attached.");this.ngZone.runOutsideAngular(function(){e._forOf=t,e._forOf.dataStream.pipe(Object(v.a)(e._detachedSubject)).subscribe(function(t){var n=t.length;n!==e._dataLength&&(e._dataLength=n,e._scrollStrategy.onDataLengthChanged()),e._doChangeDetection()})})},e.prototype.detach=function(){this._forOf=null,this._detachedSubject.next()},e.prototype.getDataLength=function(){return this._dataLength},e.prototype.getViewportSize=function(){return this._viewportSize},e.prototype.getRenderedRange=function(){return this._renderedRange},e.prototype.setTotalContentSize=function(t){this._totalContentSize!==t&&(this._totalContentSize=t,this._calculateSpacerSize(),this._markChangeDetectionNeeded())},e.prototype.setRenderedRange=function(t){var e,n,i=this;n=t,((e=this._renderedRange).start!=n.start||e.end!=n.end)&&(this._renderedRangeSubject.next(this._renderedRange=t),this._markChangeDetectionNeeded(function(){return i._scrollStrategy.onContentRendered()}))},e.prototype.getOffsetToRenderedContentStart=function(){return this._renderedContentOffsetNeedsRewrite?null:this._renderedContentOffset},e.prototype.setRenderedContentOffset=function(t,e){var n=this;void 0===e&&(e="to-start");var i=this.dir&&"rtl"==this.dir.value,r="horizontal"==this.orientation,o=r?"X":"Y",a="translate"+o+"("+Number((r&&i?-1:1)*t)+"px)";this._renderedContentOffset=t,"to-end"===e&&(a+=" translate"+o+"(-100%)",this._renderedContentOffsetNeedsRewrite=!0),this._renderedContentTransform!=a&&(this._renderedContentTransform=a,this._markChangeDetectionNeeded(function(){n._renderedContentOffsetNeedsRewrite?(n._renderedContentOffset-=n.measureRenderedContentSize(),n._renderedContentOffsetNeedsRewrite=!1,n.setRenderedContentOffset(n._renderedContentOffset)):n._scrollStrategy.onRenderedOffsetChanged()}))},e.prototype.scrollToOffset=function(t,e){void 0===e&&(e="auto");var n={behavior:e};"horizontal"===this.orientation?n.start=t:n.top=t,this.scrollTo(n)},e.prototype.scrollToIndex=function(t,e){void 0===e&&(e="auto"),this._scrollStrategy.scrollToIndex(t,e)},e.prototype.measureScrollOffset=function(e){return e?t.prototype.measureScrollOffset.call(this,e):t.prototype.measureScrollOffset.call(this,"horizontal"===this.orientation?"start":"top")},e.prototype.measureRenderedContentSize=function(){var t=this._contentWrapper.nativeElement;return"horizontal"===this.orientation?t.offsetWidth:t.offsetHeight},e.prototype.measureRangeSize=function(t){return this._forOf?this._forOf.measureRangeSize(t,this.orientation):0},e.prototype.checkViewportSize=function(){this._measureViewportSize(),this._scrollStrategy.onDataLengthChanged()},e.prototype._measureViewportSize=function(){var t=this.elementRef.nativeElement;this._viewportSize="horizontal"===this.orientation?t.clientWidth:t.clientHeight},e.prototype._markChangeDetectionNeeded=function(t){var e=this;t&&this._runAfterChangeDetection.push(t),this._isChangeDetectionPending||(this._isChangeDetectionPending=!0,this.ngZone.runOutsideAngular(function(){return Promise.resolve().then(function(){e._doChangeDetection()})}))},e.prototype._doChangeDetection=function(){var t,e,n=this;this._isChangeDetectionPending=!1,this._contentWrapper.nativeElement.style.transform=this._renderedContentTransform,this.ngZone.run(function(){return n._changeDetectorRef.markForCheck()});var i=this._runAfterChangeDetection;this._runAfterChangeDetection=[];try{for(var r=Object(C.j)(i),o=r.next();!o.done;o=r.next())(0,o.value)()}catch(e){t={error:e}}finally{try{o&&!o.done&&(e=r.return)&&e.call(r)}finally{if(t)throw t.error}}},e.prototype._calculateSpacerSize=function(){this._totalContentHeight="horizontal"===this.orientation?"":this._totalContentSize+"px",this._totalContentWidth="horizontal"===this.orientation?this._totalContentSize+"px":""},e.ctorParameters=function(){return[{type:r.ElementRef},{type:r.ChangeDetectorRef},{type:r.NgZone},{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[_]}]},{type:E.Directionality,decorators:[{type:r.Optional}]},{type:D},{type:L,decorators:[{type:r.Optional}]}]},e.propDecorators={orientation:[{type:r.Input}],scrolledIndexChange:[{type:r.Output}],_contentWrapper:[{type:r.ViewChild,args:["contentWrapper",{static:!0}]}]},e.ɵfac=function(t){return new(t||e)(r["ɵɵdirectiveInject"](r.ElementRef),r["ɵɵdirectiveInject"](r.ChangeDetectorRef),r["ɵɵdirectiveInject"](r.NgZone),r["ɵɵdirectiveInject"](_,8),r["ɵɵdirectiveInject"](E.Directionality,8),r["ɵɵdirectiveInject"](D),r["ɵɵdirectiveInject"](L,8))},e.ɵcmp=r["ɵɵdefineComponent"]({type:e,selectors:[["cdk-virtual-scroll-viewport"]],viewQuery:function(t,e){var n;1&t&&r["ɵɵstaticViewQuery"](T,!0),2&t&&r["ɵɵqueryRefresh"](n=r["ɵɵloadQuery"]())&&(e._contentWrapper=n.first)},hostAttrs:[1,"cdk-virtual-scroll-viewport"],hostVars:4,hostBindings:function(t,e){2&t&&r["ɵɵclassProp"]("cdk-virtual-scroll-orientation-horizontal","horizontal"===e.orientation)("cdk-virtual-scroll-orientation-vertical","horizontal"!==e.orientation)},inputs:{orientation:"orientation"},outputs:{scrolledIndexChange:"scrolledIndexChange"},features:[r["ɵɵProvidersFeature"]([{provide:R,useExisting:e}]),r["ɵɵInheritDefinitionFeature"]],ngContentSelectors:O,decls:4,vars:4,consts:[[1,"cdk-virtual-scroll-content-wrapper"],["contentWrapper",""],[1,"cdk-virtual-scroll-spacer"]],template:function(t,e){1&t&&(r["ɵɵprojectionDef"](),r["ɵɵelementStart"](0,"div",0,1),r["ɵɵprojection"](2),r["ɵɵelementEnd"](),r["ɵɵelement"](3,"div",2)),2&t&&(r["ɵɵadvance"](3),r["ɵɵstyleProp"]("width",e._totalContentWidth)("height",e._totalContentHeight))},styles:["cdk-virtual-scroll-viewport{display:block;position:relative;overflow:auto;contain:strict;transform:translateZ(0);will-change:scroll-position;-webkit-overflow-scrolling:touch}.cdk-virtual-scroll-content-wrapper{position:absolute;top:0;left:0;contain:content}[dir=rtl] .cdk-virtual-scroll-content-wrapper{right:0;left:auto}.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper{min-height:100%}.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>dl:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>ol:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>table:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-horizontal .cdk-virtual-scroll-content-wrapper>ul:not([cdkVirtualFor]){padding-left:0;padding-right:0;margin-left:0;margin-right:0;border-left-width:0;border-right-width:0;outline:none}.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper{min-width:100%}.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>dl:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>ol:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>table:not([cdkVirtualFor]),.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper>ul:not([cdkVirtualFor]){padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0;border-top-width:0;border-bottom-width:0;outline:none}.cdk-virtual-scroll-spacer{position:absolute;top:0;left:0;height:1px;width:1px;transform-origin:0 0}[dir=rtl] .cdk-virtual-scroll-spacer{right:0;left:auto;transform-origin:100% 0}\n"],encapsulation:2,changeDetection:0}),e}(R);
  1680. /**
  1681. * @license
  1682. * Copyright Google LLC All Rights Reserved.
  1683. *
  1684. * Use of this source code is governed by an MIT-style license that can be
  1685. * found in the LICENSE file at https://angular.io/license
  1686. */
  1687. /**
  1688. * @license
  1689. * Copyright Google LLC All Rights Reserved.
  1690. *
  1691. * Use of this source code is governed by an MIT-style license that can be
  1692. * found in the LICENSE file at https://angular.io/license
  1693. */
  1694. function V(t,e){var n=e;if(!n.getBoundingClientRect)return 0;var i=n.getBoundingClientRect();return"horizontal"==t?i.width:i.height}var F=function(){function t(t,e,n,i,r){var a=this;this._viewContainerRef=t,this._template=e,this._differs=n,this._viewport=i,this.viewChange=new o.a,this._dataSourceChanges=new o.a,this.cdkVirtualForTemplateCacheSize=20,this.dataStream=this._dataSourceChanges.pipe(Object(y.a)(null),Object(b.a)(),Object(w.a)(function(t){var e=Object(C.f)(t,2),n=e[0],i=e[1];return a._changeDataSource(n,i)}),Object(S.a)(1)),this._differ=null,this._templateCache=[],this._needsUpdate=!1,this._destroyed=new o.a,this.dataStream.subscribe(function(t){a._data=t,a._onRenderedDataChange()}),this._viewport.renderedRangeStream.pipe(Object(v.a)(this._destroyed)).subscribe(function(t){a._renderedRange=t,r.run(function(){return a.viewChange.next(a._renderedRange)}),a._onRenderedDataChange()}),this._viewport.attach(this)}return Object.defineProperty(t.prototype,"cdkVirtualForOf",{get:function(){return this._cdkVirtualForOf},set:function(t){this._cdkVirtualForOf=t,Object(A.e)(t)?this._dataSourceChanges.next(t):this._dataSourceChanges.next(new A.a(Object(h.a)(t)?t:Array.prototype.slice.call(t||[])))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"cdkVirtualForTrackBy",{get:function(){return this._cdkVirtualForTrackBy},set:function(t){var e=this;this._needsUpdate=!0,this._cdkVirtualForTrackBy=t?function(n,i){return t(n+(e._renderedRange?e._renderedRange.start:0),i)}:void 0},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"cdkVirtualForTemplate",{set:function(t){t&&(this._needsUpdate=!0,this._template=t)},enumerable:!0,configurable:!0}),t.prototype.measureRangeSize=function(t,e){if(t.start>=t.end)return 0;if(t.start<this._renderedRange.start||t.end>this._renderedRange.end)throw Error("Error: attempted to measure an item that isn't rendered.");for(var n=t.start-this._renderedRange.start,i=0,r=t.end-t.start;r--;)for(var o=this._viewContainerRef.get(r+n),a=o?o.rootNodes.length:0;a--;)i+=V(e,o.rootNodes[a]);return i},t.prototype.ngDoCheck=function(){if(this._differ&&this._needsUpdate){var t=this._differ.diff(this._renderedItems);t?this._applyChanges(t):this._updateContext(),this._needsUpdate=!1}},t.prototype.ngOnDestroy=function(){var t,e;this._viewport.detach(),this._dataSourceChanges.next(),this._dataSourceChanges.complete(),this.viewChange.complete(),this._destroyed.next(),this._destroyed.complete();try{for(var n=Object(C.j)(this._templateCache),i=n.next();!i.done;i=n.next())i.value.destroy()}catch(e){t={error:e}}finally{try{i&&!i.done&&(e=n.return)&&e.call(n)}finally{if(t)throw t.error}}},t.prototype._onRenderedDataChange=function(){this._renderedRange&&(this._renderedItems=this._data.slice(this._renderedRange.start,this._renderedRange.end),this._differ||(this._differ=this._differs.find(this._renderedItems).create(this.cdkVirtualForTrackBy)),this._needsUpdate=!0)},t.prototype._changeDataSource=function(t,e){return t&&t.disconnect(this),this._needsUpdate=!0,e?e.connect(this):Object(a.a)()},t.prototype._updateContext=function(){for(var t=this._data.length,e=this._viewContainerRef.length;e--;){var n=this._viewContainerRef.get(e);n.context.index=this._renderedRange.start+e,n.context.count=t,this._updateComputedContextProperties(n.context),n.detectChanges()}},t.prototype._applyChanges=function(t){var e=this;t.forEachOperation(function(t,n,i){if(null==t.previousIndex)(r=e._insertViewForNewItem(i)).context.$implicit=t.item;else if(null==i)e._cacheView(e._detachView(n));else{var r=e._viewContainerRef.get(n);e._viewContainerRef.move(r,i),r.context.$implicit=t.item}}),t.forEachIdentityChange(function(t){e._viewContainerRef.get(t.currentIndex).context.$implicit=t.item});for(var n=this._data.length,i=this._viewContainerRef.length;i--;){var r=this._viewContainerRef.get(i);r.context.index=this._renderedRange.start+i,r.context.count=n,this._updateComputedContextProperties(r.context)}},t.prototype._cacheView=function(t){if(this._templateCache.length<this.cdkVirtualForTemplateCacheSize)this._templateCache.push(t);else{var e=this._viewContainerRef.indexOf(t);-1===e?t.destroy():this._viewContainerRef.remove(e)}},t.prototype._insertViewForNewItem=function(t){return this._insertViewFromCache(t)||this._createEmbeddedViewAt(t)},t.prototype._updateComputedContextProperties=function(t){t.first=0===t.index,t.last=t.index===t.count-1,t.even=t.index%2==0,t.odd=!t.even},t.prototype._createEmbeddedViewAt=function(t){return this._viewContainerRef.createEmbeddedView(this._template,{$implicit:null,cdkVirtualForOf:this._cdkVirtualForOf,index:-1,count:-1,first:!1,last:!1,odd:!1,even:!1},t)},t.prototype._insertViewFromCache=function(t){var e=this._templateCache.pop();return e&&this._viewContainerRef.insert(e,t),e||null},t.prototype._detachView=function(t){return this._viewContainerRef.detach(t)},t.ctorParameters=function(){return[{type:r.ViewContainerRef},{type:r.TemplateRef},{type:r.IterableDiffers},{type:j,decorators:[{type:r.SkipSelf}]},{type:r.NgZone}]},t.propDecorators={cdkVirtualForOf:[{type:r.Input}],cdkVirtualForTrackBy:[{type:r.Input}],cdkVirtualForTemplate:[{type:r.Input}],cdkVirtualForTemplateCacheSize:[{type:r.Input}]},t.ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.ViewContainerRef),r["ɵɵdirectiveInject"](r.TemplateRef),r["ɵɵdirectiveInject"](r.IterableDiffers),r["ɵɵdirectiveInject"](j,4),r["ɵɵdirectiveInject"](r.NgZone))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","cdkVirtualFor","","cdkVirtualForOf",""]],inputs:{cdkVirtualForTemplateCacheSize:"cdkVirtualForTemplateCacheSize",cdkVirtualForOf:"cdkVirtualForOf",cdkVirtualForTrackBy:"cdkVirtualForTrackBy",cdkVirtualForTemplate:"cdkVirtualForTemplate"}}),t}(),U=function(){function t(){}return t.ɵmod=r["ɵɵdefineNgModule"]({type:t}),t.ɵinj=r["ɵɵdefineInjector"]({factory:function(e){return new(e||t)}}),("undefined"==typeof ngJitMode||ngJitMode)&&r["ɵɵsetNgModuleScope"](t,{declarations:[R],exports:[R]}),t}(),B=function(){function t(){}return t.ɵmod=r["ɵɵdefineNgModule"]({type:t}),t.ɵinj=r["ɵɵdefineInjector"]({factory:function(e){return new(e||t)},imports:[[E.BidiModule,x.b,U],E.BidiModule,U]}),("undefined"==typeof ngJitMode||ngJitMode)&&r["ɵɵsetNgModuleScope"](t,{declarations:function(){return[k,F,j]},imports:function(){return[E.BidiModule,x.b,U]},exports:function(){return[E.BidiModule,U,k,F,j]}}),t}();
  1695. /**
  1696. * @license
  1697. * Copyright Google LLC All Rights Reserved.
  1698. *
  1699. * Use of this source code is governed by an MIT-style license that can be
  1700. * found in the LICENSE file at https://angular.io/license
  1701. */},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.DEFAULT_VIEW="defaultCamera",t.TOP_VIEW="TVCamera",t.EAST_WEST_VIEW="SVCamera1",t.NORTH_SOUTH_VIEW="SVCamera2"}(e.SplitViewportName||(e.SplitViewportName={})),function(t){t[t.FULLSCREEN=0]="FULLSCREEN",t[t.FOUR_VIEWPORTS=1]="FOUR_VIEWPORTS",t[t.TWO_VIEWPORTS=2]="TWO_VIEWPORTS"}(e.SplitViewportMode||(e.SplitViewportMode={}))},function(t,e,n){var i=n(87);t.exports=function(t){return Object(i(t))}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(374),n(374);var r=n(526),o=n(6),a=n(0),s=n(0),c=n(374),l=function(){function t(t){this.LicenseInfoRepository=t,this._licenseFetched=!1,this.initialized=this.initialize()}return Object.defineProperty(t.prototype,"isLicenseValid",{get:function(){return this.license&&this.license.licenseValid},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"licenseFetched",{get:function(){return this._licenseFetched},enumerable:!0,configurable:!0}),t.prototype.initialize=function(t){var e=this;return void 0===t&&(t=!1),!t&&this._licenseFetched?Promise.resolve(this.license):this.LicenseInfoRepository.getLicense(t).then(function(){return e.license=e.LicenseInfoRepository.data[0],e.daysUntilExpire=e.getDaysUntilExpire(),e._licenseFetched=!0,e.license}).catch(function(t){return e.license=e.LicenseInfoRepository.create(),e._licenseFetched=!1,Promise.reject(t)})},t.prototype.isFeatureEnabled=function(t){return this.isLicenseValid&&this.license.features[t].enabled},t.prototype.isExpirationPeriod=function(){return!!this.isLicenseValid&&this.daysUntilExpire>0&&this.daysUntilExpire<=t.EXPIRATION_PERIOD_DAYS},t.prototype.saveLicense=function(t){var e=this;return this.LicenseInfoRepository.saveLicense(t).then(function(){return e._licenseFetched=!0,e.license=e.LicenseInfoRepository.data[0]})},t.prototype.isLicenseExpired=function(){return this._licenseFetched&&this.license.isLicenseExpired},t.prototype.isLicenseAreaExceeded=function(){return this._licenseFetched&&this.license.isLicenseAreaExceeded},t.prototype.isLicenseSignatureInvalid=function(){return this._licenseFetched&&this.license.isLicenseSignatureInvalid},t.prototype.isLicenseAreaAvailable=function(){return this._licenseFetched&&void 0!==this.license.area},t.prototype.isLicenseValidFromAvailable=function(){return this._licenseFetched&&void 0!==this.license.validFrom},t.prototype.isLicenseValidToAvailable=function(){return this._licenseFetched&&void 0!==this.license.validTo},t.prototype.isLicenseRegisteredUsersExceeded=function(){return this._licenseFetched&&this.license.isLicenseRegisteredUsersExceeded},t.prototype.isLicenseRegisteredUsersAvailable=function(){return this._licenseFetched&&void 0!==this.license.maxUsersWithGroups&&this.license.maxUsersWithGroups>0},t.prototype.isLicenseRegisteredUsersReached=function(){return!!this.isLicenseRegisteredUsersAvailable()&&this.license.currentUsersWithGroups>=this.license.maxUsersWithGroups},t.prototype.isLicenseMaxLocationsExceeded=function(){return this._licenseFetched&&this.license.isLicenseMaxLocationsExceeded},t.prototype.isLicenseMaxLocationsAvailable=function(){return this._licenseFetched&&void 0!==this.license.maxLocations},t.prototype.getDaysUntilExpire=function(){return this.license.licenseValid&&this.license.validTo?r.DateUtilities.differenceInDays(this.license.validTo,new Date):0},t.EXPIRATION_PERIOD_DAYS=14,t.ɵfac=function(e){return new(e||t)(s.ɵɵinject(c.LicenseInfoRepository))},t.ɵprov=s.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.LicenseService=l,s.ɵsetClassMetadata(l,[{type:a.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:c.LicenseInfoRepository}]},null),i.module("IVWebApp").service("LicenseService",o.downgradeInjectable(l))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.BUILDING="BUILDING",t.FLOOR="FLOOR",t.ROOM="ROOM",t.FREE_SPACE_NAVIGATION="FREE_SPACE_NAVIGATION",t.CUSTOM="CUSTOM"}(e.SiteModelType||(e.SiteModelType={}))},function(t,e,n){"use strict";n.d(e,"a",function(){return i});var i=Array.isArray||function(t){return t&&"number"==typeof t.length}},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(7),a=n(198);!function(t){t.CAN_CREATE_DATASETS="can_create_datasets",t.CAN_CREATE_BUNDLES="can_create_bundles",t.CAN_CREATE_POLYGONS="can_create_polygons",t.CAN_CREATE_POI_GROUPS="can_create_poi_groups",t.CAN_CREATE_POIS="can_create_pois",t.CAN_CREATE_USER_GROUPS="can_create_user_groups",t.CAN_MAKE_PUBLIC="can_make_public",t.CAN_EDIT_SITE_MODEL_ATTRIBUTES="can_edit_site_model_attributes",t.CAN_VIEW_SITE_MODEL_ATTRIBUTES="can_view_site_model_attributes",t.CAN_CROP_AND_DOWNLOAD_POINT_CLOUD="can_crop_and_download_point_cloud",t.CAN_USE_MEASUREMENT_TOOL="can_use_measurement_tool",t.CAN_SAVE_MEASUREMENTS="can_save_measurements",t.CAN_EXPORT_POI_AUDIT_RECORDS="can_export_poi_audit_records"}(e.GroupAttributes||(e.GroupAttributes={}));var s=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.attributes=[],e.childGroups=[],e}return r(e,t),e.prototype.copy=function(e,n){return t.prototype.fill.call(this,e),this.name=e.name,this.childGroups=o.cloneDeep(e.childGroups),this.attributes=o.clone(e.attributes),this},e.prototype.fillFromData=function(n){t.prototype.fillFromData.call(this,n),this.name=n.name,this.attributes=n.attributes;for(var i=0,r=n.child_groups;i<r.length;i++){var o=r[i],a=new e(this.injectables);a.fillFromData(o),this.childGroups.push(a)}},e.prototype.toData=function(){var t={};this.fillDto(t),t.name=this.name,t.attributes=this.attributes,t.child_groups=[];for(var e=0,n=this.childGroups;e<n.length;e++){var i={};n[e].fillDto(i),t.child_groups.push(i)}return t},e}(a.SecureRepositoryObject);e.GroupEntity=s},function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},function(t,e,n){"use strict";(function(t){n.d(e,"a",function(){return C}),n.d(e,"b",function(){return zt}),n.d(e,"c",function(){return gt}),n.d(e,"d",function(){return ne}),n.d(e,"e",function(){return E}),n.d(e,"f",function(){return re}),n.d(e,"g",function(){return mt}),n.d(e,"h",function(){return oe});var i=n(1),r=n(30),o=n(0);function a(){return void 0!==t&&"[object process]"==={}.toString.call(t)}function s(t){switch(t.length){case 0:return new r.NoopAnimationPlayer;case 1:return t[0];default:return new r["ɵAnimationGroupPlayer"](t)}}function c(t,e,n,i,o,a){void 0===o&&(o={}),void 0===a&&(a={});var s=[],c=[],l=-1,u=null;if(i.forEach(function(t){var n=t.offset,i=n==l,d=i&&u||{};Object.keys(t).forEach(function(n){var i=n,c=t[n];if("offset"!==n)switch(i=e.normalizePropertyName(i,s),c){case r["ɵPRE_STYLE"]:c=o[n];break;case r.AUTO_STYLE:c=a[n];break;default:c=e.normalizeStyleValue(n,i,c,s)}d[i]=c}),i||c.push(d),u=d,l=n}),s.length)throw new Error("Unable to animate due to the following errors:\n - "+s.join("\n - "));return c}function l(t,e,n,i){switch(e){case"start":t.onStart(function(){return i(n&&u(n,"start",t))});break;case"done":t.onDone(function(){return i(n&&u(n,"done",t))});break;case"destroy":t.onDestroy(function(){return i(n&&u(n,"destroy",t))})}}function u(t,e,n){var i=n.totalTime,r=!!n.disabled,o=d(t.element,t.triggerName,t.fromState,t.toState,e||t.phaseName,null==i?t.totalTime:i,r),a=t._data;return null!=a&&(o._data=a),o}function d(t,e,n,i,r,o,a){return void 0===r&&(r=""),void 0===o&&(o=0),{element:t,triggerName:e,fromState:n,toState:i,phaseName:r,totalTime:o,disabled:!!a}}function p(t,e,n){var i;return t instanceof Map?(i=t.get(e))||t.set(e,i=n):(i=t[e])||(i=t[e]=n),i}function h(t){var e=t.indexOf(":");return[t.substring(1,e),t.substr(e+1)]}var f=function(t,e){return!1},g=function(t,e){return!1},m=function(t,e,n){return[]};"undefined"!=typeof Element&&(f=function(t,e){return t.contains(e)},g=function(){if(Element.prototype.matches)return function(t,e){return t.matches(e)};var t=Element.prototype,e=t.matchesSelector||t.mozMatchesSelector||t.msMatchesSelector||t.oMatchesSelector||t.webkitMatchesSelector;return e?function(t,n){return e.apply(t,[n])}:g}(),m=function(t,e,n){var r=[];if(n)r.push.apply(r,Object(i.h)(t.querySelectorAll(e)));else{var o=t.querySelector(e);o&&r.push(o)}return r});var v=null,y=!1;function b(t){v||(v=("undefined"!=typeof document?document.body:null)||{},y=!!v.style&&"WebkitAppearance"in v.style);var e=!0;return v.style&&!function(t){return"ebkit"==t.substring(1,6)}(t)&&!(e=t in v.style)&&y&&(e="Webkit"+t.charAt(0).toUpperCase()+t.substr(1)in v.style),e}var w=g,S=f,x=m;function M(t){var e={};return Object.keys(t).forEach(function(n){var i=n.replace(/([a-z])([A-Z])/g,"$1-$2");e[i]=t[n]}),e}var E=function(){function t(){}return t.prototype.validateStyleProperty=function(t){return b(t)},t.prototype.matchesElement=function(t,e){return w(t,e)},t.prototype.containsElement=function(t,e){return S(t,e)},t.prototype.query=function(t,e,n){return x(t,e,n)},t.prototype.computeStyle=function(t,e,n){return n||""},t.prototype.animate=function(t,e,n,i,o,a,s){return void 0===a&&(a=[]),new r.NoopAnimationPlayer(n,i)},t.ɵfac=function(e){return new(e||t)},t.ɵprov=o["ɵɵdefineInjectable"]({token:t,factory:function(e){return t.ɵfac(e)}}),t}(),C=function(){function t(){}return t.NOOP=new E,t}();function A(t){if("number"==typeof t)return t;var e=t.match(/^(-?[\.\d]+)(m?s)/);return!e||e.length<2?0:T(parseFloat(e[1]),e[2])}function T(t,e){switch(e){case"s":return 1e3*t;default:return t}}function O(t,e,n){return t.hasOwnProperty("duration")?t:function(t,e,n){var i,r=0,o="";if("string"==typeof t){var a=t.match(/^(-?[\.\d]+)(m?s)(?:\s+(-?[\.\d]+)(m?s))?(?:\s+([-a-z]+(?:\(.+?\))?))?$/i);if(null===a)return e.push('The provided timing value "'+t+'" is invalid.'),{duration:0,delay:0,easing:""};i=T(parseFloat(a[1]),a[2]);var s=a[3];null!=s&&(r=T(parseFloat(s),a[4]));var c=a[5];c&&(o=c)}else i=t;if(!n){var l=!1,u=e.length;i<0&&(e.push("Duration values below 0 are not allowed for this animation step."),l=!0),r<0&&(e.push("Delay values below 0 are not allowed for this animation step."),l=!0),l&&e.splice(u,0,'The provided timing value "'+t+'" is invalid.')}return{duration:i,delay:r,easing:o}}(t,e,n)}function _(t,e){return void 0===e&&(e={}),Object.keys(t).forEach(function(n){e[n]=t[n]}),e}function P(t,e,n){if(void 0===n&&(n={}),e)for(var i in t)n[i]=t[i];else _(t,n);return n}function I(t,e,n){return n?e+":"+n+";":""}function k(t){for(var e="",n=0;n<t.style.length;n++)e+=I(0,i=t.style.item(n),t.style.getPropertyValue(i));for(var i in t.style)t.style.hasOwnProperty(i)&&!i.startsWith("_")&&(e+=I(0,i.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),t.style[i]));t.setAttribute("style",e)}function D(t,e,n){t.style&&(Object.keys(e).forEach(function(i){var r=B(i);n&&!n.hasOwnProperty(i)&&(n[i]=t.style[r]),t.style[r]=e[i]}),a()&&k(t))}function R(t,e){t.style&&(Object.keys(e).forEach(function(e){var n=B(e);t.style[n]=""}),a()&&k(t))}function L(t){return Array.isArray(t)?1==t.length?t[0]:Object(r.sequence)(t):t}var N=new RegExp("{{\\s*(.+?)\\s*}}","g");function j(t){var e=[];if("string"==typeof t){for(var n=void 0;n=N.exec(t);)e.push(n[1]);N.lastIndex=0}return e}function V(t,e,n){var i=t.toString(),r=i.replace(N,function(t,i){var r=e[i];return e.hasOwnProperty(i)||(n.push("Please provide a value for the animation param "+i),r=""),r.toString()});return r==i?t:r}function F(t){for(var e=[],n=t.next();!n.done;)e.push(n.value),n=t.next();return e}var U=/-+([a-z0-9])/g;function B(t){return t.replace(U,function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return t[1].toUpperCase()})}function z(t,e){return 0===t||0===e}function G(t,e,n){var i=Object.keys(n);if(i.length&&e.length){var r=e[0],o=[];if(i.forEach(function(t){r.hasOwnProperty(t)||o.push(t),r[t]=n[t]}),o.length)for(var a=function(){var n=e[s];o.forEach(function(e){n[e]=W(t,e)})},s=1;s<e.length;s++)a()}return e}function H(t,e,n){switch(e.type){case 7:return t.visitTrigger(e,n);case 0:return t.visitState(e,n);case 1:return t.visitTransition(e,n);case 2:return t.visitSequence(e,n);case 3:return t.visitGroup(e,n);case 4:return t.visitAnimate(e,n);case 5:return t.visitKeyframes(e,n);case 6:return t.visitStyle(e,n);case 8:return t.visitReference(e,n);case 9:return t.visitAnimateChild(e,n);case 10:return t.visitAnimateRef(e,n);case 11:return t.visitQuery(e,n);case 12:return t.visitStagger(e,n);default:throw new Error("Unable to resolve animation metadata node #"+e.type)}}function W(t,e){return window.getComputedStyle(t)[e]}
  1702. /**
  1703. * @license
  1704. * Copyright Google Inc. All Rights Reserved.
  1705. *
  1706. * Use of this source code is governed by an MIT-style license that can be
  1707. * found in the LICENSE file at https://angular.io/license
  1708. */var q=new Set(["true","1"]),K=new Set(["false","0"]);function X(t,e){var n=q.has(t)||K.has(t),i=q.has(e)||K.has(e);return function(r,o){var a="*"==t||t==r,s="*"==e||e==o;return!a&&n&&"boolean"==typeof r&&(a=r?q.has(t):K.has(t)),!s&&i&&"boolean"==typeof o&&(s=o?q.has(e):K.has(e)),a&&s}}var Y=new RegExp("s*:selfs*,?","g");function Z(t,e,n){return new J(t).build(e,n)}var J=function(){function t(t){this._driver=t}return t.prototype.build=function(t,e){var n=new Q(e);return this._resetContextStyleTimingState(n),H(this,L(t),n)},t.prototype._resetContextStyleTimingState=function(t){t.currentQuerySelector="",t.collectedStyles={},t.collectedStyles[""]={},t.currentTime=0},t.prototype.visitTrigger=function(t,e){var n=this,i=e.queryCount=0,r=e.depCount=0,o=[],a=[];return"@"==t.name.charAt(0)&&e.errors.push("animation triggers cannot be prefixed with an `@` sign (e.g. trigger('@foo', [...]))"),t.definitions.forEach(function(t){if(n._resetContextStyleTimingState(e),0==t.type){var s=t,c=s.name;c.toString().split(/\s*,\s*/).forEach(function(t){s.name=t,o.push(n.visitState(s,e))}),s.name=c}else if(1==t.type){var l=n.visitTransition(t,e);i+=l.queryCount,r+=l.depCount,a.push(l)}else e.errors.push("only state() and transition() definitions can sit inside of a trigger()")}),{type:7,name:t.name,states:o,transitions:a,queryCount:i,depCount:r,options:null}},t.prototype.visitState=function(t,e){var n=this.visitStyle(t.styles,e),i=t.options&&t.options.params||null;if(n.containsDynamicStyles){var r=new Set,o=i||{};if(n.styles.forEach(function(t){if($(t)){var e=t;Object.keys(e).forEach(function(t){j(e[t]).forEach(function(t){o.hasOwnProperty(t)||r.add(t)})})}}),r.size){var a=F(r.values());e.errors.push('state("'+t.name+'", ...) must define default values for all the following style substitutions: '+a.join(", "))}}return{type:0,name:t.name,style:n,options:i?{params:i}:null}},t.prototype.visitTransition=function(t,e){e.queryCount=0,e.depCount=0;var n=H(this,L(t.animation),e);return{type:1,matchers:function(t,e){var n=[];return"string"==typeof t?t.split(/\s*,\s*/).forEach(function(t){return function(t,e,n){if(":"==t[0]){var i=function(t,e){switch(t){case":enter":return"void => *";case":leave":return"* => void";case":increment":return function(t,e){return parseFloat(e)>parseFloat(t)};case":decrement":return function(t,e){return parseFloat(e)<parseFloat(t)};default:return e.push('The transition alias value "'+t+'" is not supported'),"* => *"}}(t,n);if("function"==typeof i)return void e.push(i);t=i}var r=t.match(/^(\*|[-\w]+)\s*(<?[=-]>)\s*(\*|[-\w]+)$/);if(null==r||r.length<4)return n.push('The provided transition expression "'+t+'" is not supported'),e;var o=r[1],a=r[2],s=r[3];e.push(X(o,s));var c="*"==o&&"*"==s;"<"!=a[0]||c||e.push(X(s,o))}(t,n,e)}):n.push(t),n}(t.expr,e.errors),animation:n,queryCount:e.queryCount,depCount:e.depCount,options:tt(t.options)}},t.prototype.visitSequence=function(t,e){var n=this;return{type:2,steps:t.steps.map(function(t){return H(n,t,e)}),options:tt(t.options)}},t.prototype.visitGroup=function(t,e){var n=this,i=e.currentTime,r=0,o=t.steps.map(function(t){e.currentTime=i;var o=H(n,t,e);return r=Math.max(r,e.currentTime),o});return e.currentTime=r,{type:3,steps:o,options:tt(t.options)}},t.prototype.visitAnimate=function(t,e){var n,i=function(t,e){var n=null;if(t.hasOwnProperty("duration"))n=t;else if("number"==typeof t)return et(O(t,e).duration,0,"");var i=t;if(i.split(/\s+/).some(function(t){return"{"==t.charAt(0)&&"{"==t.charAt(1)})){var r=et(0,0,"");return r.dynamic=!0,r.strValue=i,r}return et((n=n||O(i,e)).duration,n.delay,n.easing)}(t.timings,e.errors);e.currentAnimateTimings=i;var o=t.styles?t.styles:Object(r.style)({});if(5==o.type)n=this.visitKeyframes(o,e);else{var a=t.styles,s=!1;if(!a){s=!0;var c={};i.easing&&(c.easing=i.easing),a=Object(r.style)(c)}e.currentTime+=i.duration+i.delay;var l=this.visitStyle(a,e);l.isEmptyStep=s,n=l}return e.currentAnimateTimings=null,{type:4,timings:i,style:n,options:null}},t.prototype.visitStyle=function(t,e){var n=this._makeStyleAst(t,e);return this._validateStyleAst(n,e),n},t.prototype._makeStyleAst=function(t,e){var n=[];Array.isArray(t.styles)?t.styles.forEach(function(t){"string"==typeof t?t==r.AUTO_STYLE?n.push(t):e.errors.push("The provided style string value "+t+" is not allowed."):n.push(t)}):n.push(t.styles);var i=!1,o=null;return n.forEach(function(t){if($(t)){var e=t,n=e.easing;if(n&&(o=n,delete e.easing),!i)for(var r in e)if(e[r].toString().indexOf("{{")>=0){i=!0;break}}}),{type:6,styles:n,easing:o,offset:t.offset,containsDynamicStyles:i,options:null}},t.prototype._validateStyleAst=function(t,e){var n=this,i=e.currentAnimateTimings,r=e.currentTime,o=e.currentTime;i&&o>0&&(o-=i.duration+i.delay),t.styles.forEach(function(t){"string"!=typeof t&&Object.keys(t).forEach(function(i){if(n._driver.validateStyleProperty(i)){var a,s,c,l,u,d=e.collectedStyles[e.currentQuerySelector],p=d[i],h=!0;p&&(o!=r&&o>=p.startTime&&r<=p.endTime&&(e.errors.push('The CSS property "'+i+'" that exists between the times of "'+p.startTime+'ms" and "'+p.endTime+'ms" is also being animated in a parallel animation between the times of "'+o+'ms" and "'+r+'ms"'),h=!1),o=p.startTime),h&&(d[i]={startTime:o,endTime:r}),e.options&&(a=t[i],s=e.options,c=e.errors,l=s.params||{},(u=j(a)).length&&u.forEach(function(t){l.hasOwnProperty(t)||c.push("Unable to resolve the local animation param "+t+" in the given list of values")}))}else e.errors.push('The provided animation property "'+i+'" is not a supported CSS property for animations')})})},t.prototype.visitKeyframes=function(t,e){var n=this,i={type:5,styles:[],options:null};if(!e.currentAnimateTimings)return e.errors.push("keyframes() must be placed inside of a call to animate()"),i;var r=0,o=[],a=!1,s=!1,c=0,l=t.steps.map(function(t){var i=n._makeStyleAst(t,e),l=null!=i.offset?i.offset:function(t){if("string"==typeof t)return null;var e=null;if(Array.isArray(t))t.forEach(function(t){if($(t)&&t.hasOwnProperty("offset")){var n=t;e=parseFloat(n.offset),delete n.offset}});else if($(t)&&t.hasOwnProperty("offset")){var n=t;e=parseFloat(n.offset),delete n.offset}return e}(i.styles),u=0;return null!=l&&(r++,u=i.offset=l),s=s||u<0||u>1,a=a||u<c,c=u,o.push(u),i});s&&e.errors.push("Please ensure that all keyframe offsets are between 0 and 1"),a&&e.errors.push("Please ensure that all keyframe offsets are in order");var u=t.steps.length,d=0;r>0&&r<u?e.errors.push("Not all style() steps within the declared keyframes() contain offsets"):0==r&&(d=1/(u-1));var p=u-1,h=e.currentTime,f=e.currentAnimateTimings,g=f.duration;return l.forEach(function(t,r){var a=d>0?r==p?1:d*r:o[r],s=a*g;e.currentTime=h+f.delay+s,f.duration=s,n._validateStyleAst(t,e),t.offset=a,i.styles.push(t)}),i},t.prototype.visitReference=function(t,e){return{type:8,animation:H(this,L(t.animation),e),options:tt(t.options)}},t.prototype.visitAnimateChild=function(t,e){return e.depCount++,{type:9,options:tt(t.options)}},t.prototype.visitAnimateRef=function(t,e){return{type:10,animation:this.visitReference(t.animation,e),options:tt(t.options)}},t.prototype.visitQuery=function(t,e){var n=e.currentQuerySelector,r=t.options||{};e.queryCount++,e.currentQuery=t;var o=Object(i.f)(function(t){var e=!!t.split(/\s*,\s*/).find(function(t){return":self"==t});return e&&(t=t.replace(Y,"")),[t=t.replace(/@\*/g,".ng-trigger").replace(/@\w+/g,function(t){return".ng-trigger-"+t.substr(1)}).replace(/:animating/g,".ng-animating"),e]}(t.selector),2),a=o[0],s=o[1];e.currentQuerySelector=n.length?n+" "+a:a,p(e.collectedStyles,e.currentQuerySelector,{});var c=H(this,L(t.animation),e);return e.currentQuery=null,e.currentQuerySelector=n,{type:11,selector:a,limit:r.limit||0,optional:!!r.optional,includeSelf:s,animation:c,originalSelector:t.selector,options:tt(t.options)}},t.prototype.visitStagger=function(t,e){e.currentQuery||e.errors.push("stagger() can only be used inside of query()");var n="full"===t.timings?{duration:0,delay:0,easing:"full"}:O(t.timings,e.errors,!0);return{type:12,animation:H(this,L(t.animation),e),timings:n,options:null}},t}(),Q=function(t){this.errors=t,this.queryCount=0,this.depCount=0,this.currentTransition=null,this.currentQuery=null,this.currentQuerySelector=null,this.currentAnimateTimings=null,this.currentTime=0,this.collectedStyles={},this.options=null};function $(t){return!Array.isArray(t)&&"object"==typeof t}function tt(t){var e;return t?(t=_(t)).params&&(t.params=(e=t.params)?_(e):null):t={},t}function et(t,e,n){return{duration:t,delay:e,easing:n}}function nt(t,e,n,i,r,o,a,s){return void 0===a&&(a=null),void 0===s&&(s=!1),{type:1,element:t,keyframes:e,preStyleProps:n,postStyleProps:i,duration:r,delay:o,totalTime:r+o,easing:a,subTimeline:s}}var it=function(){function t(){this._map=new Map}return t.prototype.consume=function(t){var e=this._map.get(t);return e?this._map.delete(t):e=[],e},t.prototype.append=function(t,e){var n=this._map.get(t);n||this._map.set(t,n=[]),n.push.apply(n,Object(i.h)(e))},t.prototype.has=function(t){return this._map.has(t)},t.prototype.clear=function(){this._map.clear()},t}(),rt=new RegExp(":enter","g"),ot=new RegExp(":leave","g");function at(t,e,n,i,r,o,a,s,c,l){return void 0===o&&(o={}),void 0===a&&(a={}),void 0===l&&(l=[]),(new st).buildKeyframes(t,e,n,i,r,o,a,s,c,l)}var st=function(){function t(){}return t.prototype.buildKeyframes=function(t,e,n,i,r,o,a,s,c,l){void 0===l&&(l=[]),c=c||new it;var u=new lt(t,e,c,i,r,l,[]);u.options=s,u.currentTimeline.setStyles([o],null,u.errors,s),H(this,n,u);var d=u.timelines.filter(function(t){return t.containsAnimation()});if(d.length&&Object.keys(a).length){var p=d[d.length-1];p.allowOnlyTimelineStyles()||p.setStyles([a],null,u.errors,s)}return d.length?d.map(function(t){return t.buildKeyframes()}):[nt(e,[],[],[],0,0,"",!1)]},t.prototype.visitTrigger=function(t,e){},t.prototype.visitState=function(t,e){},t.prototype.visitTransition=function(t,e){},t.prototype.visitAnimateChild=function(t,e){var n=e.subInstructions.consume(e.element);if(n){var i=e.createSubContext(t.options),r=e.currentTimeline.currentTime,o=this._visitSubInstructions(n,i,i.options);r!=o&&e.transformIntoNewTimeline(o)}e.previousNode=t},t.prototype.visitAnimateRef=function(t,e){var n=e.createSubContext(t.options);n.transformIntoNewTimeline(),this.visitReference(t.animation,n),e.transformIntoNewTimeline(n.currentTimeline.currentTime),e.previousNode=t},t.prototype._visitSubInstructions=function(t,e,n){var i=e.currentTimeline.currentTime,r=null!=n.duration?A(n.duration):null,o=null!=n.delay?A(n.delay):null;return 0!==r&&t.forEach(function(t){var n=e.appendInstructionToTimeline(t,r,o);i=Math.max(i,n.duration+n.delay)}),i},t.prototype.visitReference=function(t,e){e.updateOptions(t.options,!0),H(this,t.animation,e),e.previousNode=t},t.prototype.visitSequence=function(t,e){var n=this,i=e.subContextCount,r=e,o=t.options;if(o&&(o.params||o.delay)&&((r=e.createSubContext(o)).transformIntoNewTimeline(),null!=o.delay)){6==r.previousNode.type&&(r.currentTimeline.snapshotCurrentStyles(),r.previousNode=ct);var a=A(o.delay);r.delayNextStep(a)}t.steps.length&&(t.steps.forEach(function(t){return H(n,t,r)}),r.currentTimeline.applyStylesToKeyframe(),r.subContextCount>i&&r.transformIntoNewTimeline()),e.previousNode=t},t.prototype.visitGroup=function(t,e){var n=this,i=[],r=e.currentTimeline.currentTime,o=t.options&&t.options.delay?A(t.options.delay):0;t.steps.forEach(function(a){var s=e.createSubContext(t.options);o&&s.delayNextStep(o),H(n,a,s),r=Math.max(r,s.currentTimeline.currentTime),i.push(s.currentTimeline)}),i.forEach(function(t){return e.currentTimeline.mergeTimelineCollectedStyles(t)}),e.transformIntoNewTimeline(r),e.previousNode=t},t.prototype._visitTiming=function(t,e){if(t.dynamic){var n=t.strValue;return O(e.params?V(n,e.params,e.errors):n,e.errors)}return{duration:t.duration,delay:t.delay,easing:t.easing}},t.prototype.visitAnimate=function(t,e){var n=e.currentAnimateTimings=this._visitTiming(t.timings,e),i=e.currentTimeline;n.delay&&(e.incrementTime(n.delay),i.snapshotCurrentStyles());var r=t.style;5==r.type?this.visitKeyframes(r,e):(e.incrementTime(n.duration),this.visitStyle(r,e),i.applyStylesToKeyframe()),e.currentAnimateTimings=null,e.previousNode=t},t.prototype.visitStyle=function(t,e){var n=e.currentTimeline,i=e.currentAnimateTimings;!i&&n.getCurrentStyleProperties().length&&n.forwardFrame();var r=i&&i.easing||t.easing;t.isEmptyStep?n.applyEmptyStep(r):n.setStyles(t.styles,r,e.errors,e.options),e.previousNode=t},t.prototype.visitKeyframes=function(t,e){var n=e.currentAnimateTimings,i=e.currentTimeline.duration,r=n.duration,o=e.createSubContext().currentTimeline;o.easing=n.easing,t.styles.forEach(function(t){var n=t.offset||0;o.forwardTime(n*r),o.setStyles(t.styles,t.easing,e.errors,e.options),o.applyStylesToKeyframe()}),e.currentTimeline.mergeTimelineCollectedStyles(o),e.transformIntoNewTimeline(i+r),e.previousNode=t},t.prototype.visitQuery=function(t,e){var n=this,i=e.currentTimeline.currentTime,r=t.options||{},o=r.delay?A(r.delay):0;o&&(6===e.previousNode.type||0==i&&e.currentTimeline.getCurrentStyleProperties().length)&&(e.currentTimeline.snapshotCurrentStyles(),e.previousNode=ct);var a=i,s=e.invokeQuery(t.selector,t.originalSelector,t.limit,t.includeSelf,!!r.optional,e.errors);e.currentQueryTotal=s.length;var c=null;s.forEach(function(i,r){e.currentQueryIndex=r;var s=e.createSubContext(t.options,i);o&&s.delayNextStep(o),i===e.element&&(c=s.currentTimeline),H(n,t.animation,s),s.currentTimeline.applyStylesToKeyframe();var l=s.currentTimeline.currentTime;a=Math.max(a,l)}),e.currentQueryIndex=0,e.currentQueryTotal=0,e.transformIntoNewTimeline(a),c&&(e.currentTimeline.mergeTimelineCollectedStyles(c),e.currentTimeline.snapshotCurrentStyles()),e.previousNode=t},t.prototype.visitStagger=function(t,e){var n=e.parentContext,i=e.currentTimeline,r=t.timings,o=Math.abs(r.duration),a=o*(e.currentQueryTotal-1),s=o*e.currentQueryIndex;switch(r.duration<0?"reverse":r.easing){case"reverse":s=a-s;break;case"full":s=n.currentStaggerTime}var c=e.currentTimeline;s&&c.delayNextStep(s);var l=c.currentTime;H(this,t.animation,e),e.previousNode=t,n.currentStaggerTime=i.currentTime-l+(i.startTime-n.currentTimeline.startTime)},t}(),ct={},lt=function(){function t(t,e,n,i,r,o,a,s){this._driver=t,this.element=e,this.subInstructions=n,this._enterClassName=i,this._leaveClassName=r,this.errors=o,this.timelines=a,this.parentContext=null,this.currentAnimateTimings=null,this.previousNode=ct,this.subContextCount=0,this.options={},this.currentQueryIndex=0,this.currentQueryTotal=0,this.currentStaggerTime=0,this.currentTimeline=s||new ut(this._driver,e,0),a.push(this.currentTimeline)}return Object.defineProperty(t.prototype,"params",{get:function(){return this.options.params},enumerable:!0,configurable:!0}),t.prototype.updateOptions=function(t,e){var n=this;if(t){var i=t,r=this.options;null!=i.duration&&(r.duration=A(i.duration)),null!=i.delay&&(r.delay=A(i.delay));var o=i.params;if(o){var a=r.params;a||(a=this.options.params={}),Object.keys(o).forEach(function(t){e&&a.hasOwnProperty(t)||(a[t]=V(o[t],a,n.errors))})}}},t.prototype._copyOptions=function(){var t={};if(this.options){var e=this.options.params;if(e){var n=t.params={};Object.keys(e).forEach(function(t){n[t]=e[t]})}}return t},t.prototype.createSubContext=function(e,n,i){void 0===e&&(e=null);var r=n||this.element,o=new t(this._driver,r,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(r,i||0));return o.previousNode=this.previousNode,o.currentAnimateTimings=this.currentAnimateTimings,o.options=this._copyOptions(),o.updateOptions(e),o.currentQueryIndex=this.currentQueryIndex,o.currentQueryTotal=this.currentQueryTotal,o.parentContext=this,this.subContextCount++,o},t.prototype.transformIntoNewTimeline=function(t){return this.previousNode=ct,this.currentTimeline=this.currentTimeline.fork(this.element,t),this.timelines.push(this.currentTimeline),this.currentTimeline},t.prototype.appendInstructionToTimeline=function(t,e,n){var i={duration:null!=e?e:t.duration,delay:this.currentTimeline.currentTime+(null!=n?n:0)+t.delay,easing:""},r=new dt(this._driver,t.element,t.keyframes,t.preStyleProps,t.postStyleProps,i,t.stretchStartingKeyframe);return this.timelines.push(r),i},t.prototype.incrementTime=function(t){this.currentTimeline.forwardTime(this.currentTimeline.duration+t)},t.prototype.delayNextStep=function(t){t>0&&this.currentTimeline.delayNextStep(t)},t.prototype.invokeQuery=function(t,e,n,r,o,a){var s=[];if(r&&s.push(this.element),t.length>0){t=(t=t.replace(rt,"."+this._enterClassName)).replace(ot,"."+this._leaveClassName);var c=1!=n,l=this._driver.query(this.element,t,c);0!==n&&(l=n<0?l.slice(l.length+n,l.length):l.slice(0,n)),s.push.apply(s,Object(i.h)(l))}return o||0!=s.length||a.push('`query("'+e+'")` returned zero elements. (Use `query("'+e+'", { optional: true })` if you wish to allow this.)'),s},t}(),ut=function(){function t(t,e,n,i){this._driver=t,this.element=e,this.startTime=n,this._elementTimelineStylesLookup=i,this.duration=0,this._previousKeyframe={},this._currentKeyframe={},this._keyframes=new Map,this._styleSummary={},this._pendingStyles={},this._backFill={},this._currentEmptyStepKeyframe=null,this._elementTimelineStylesLookup||(this._elementTimelineStylesLookup=new Map),this._localTimelineStyles=Object.create(this._backFill,{}),this._globalTimelineStyles=this._elementTimelineStylesLookup.get(e),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(e,this._localTimelineStyles)),this._loadKeyframe()}return t.prototype.containsAnimation=function(){switch(this._keyframes.size){case 0:return!1;case 1:return this.getCurrentStyleProperties().length>0;default:return!0}},t.prototype.getCurrentStyleProperties=function(){return Object.keys(this._currentKeyframe)},Object.defineProperty(t.prototype,"currentTime",{get:function(){return this.startTime+this.duration},enumerable:!0,configurable:!0}),t.prototype.delayNextStep=function(t){var e=1==this._keyframes.size&&Object.keys(this._pendingStyles).length;this.duration||e?(this.forwardTime(this.currentTime+t),e&&this.snapshotCurrentStyles()):this.startTime+=t},t.prototype.fork=function(e,n){return this.applyStylesToKeyframe(),new t(this._driver,e,n||this.currentTime,this._elementTimelineStylesLookup)},t.prototype._loadKeyframe=function(){this._currentKeyframe&&(this._previousKeyframe=this._currentKeyframe),this._currentKeyframe=this._keyframes.get(this.duration),this._currentKeyframe||(this._currentKeyframe=Object.create(this._backFill,{}),this._keyframes.set(this.duration,this._currentKeyframe))},t.prototype.forwardFrame=function(){this.duration+=1,this._loadKeyframe()},t.prototype.forwardTime=function(t){this.applyStylesToKeyframe(),this.duration=t,this._loadKeyframe()},t.prototype._updateStyle=function(t,e){this._localTimelineStyles[t]=e,this._globalTimelineStyles[t]=e,this._styleSummary[t]={time:this.currentTime,value:e}},t.prototype.allowOnlyTimelineStyles=function(){return this._currentEmptyStepKeyframe!==this._currentKeyframe},t.prototype.applyEmptyStep=function(t){var e=this;t&&(this._previousKeyframe.easing=t),Object.keys(this._globalTimelineStyles).forEach(function(t){e._backFill[t]=e._globalTimelineStyles[t]||r.AUTO_STYLE,e._currentKeyframe[t]=r.AUTO_STYLE}),this._currentEmptyStepKeyframe=this._currentKeyframe},t.prototype.setStyles=function(t,e,n,i){var o=this;e&&(this._previousKeyframe.easing=e);var a=i&&i.params||{},s=function(t,e){var n,i={};return t.forEach(function(t){"*"===t?(n=n||Object.keys(e)).forEach(function(t){i[t]=r.AUTO_STYLE}):P(t,!1,i)}),i}(t,this._globalTimelineStyles);Object.keys(s).forEach(function(t){var e=V(s[t],a,n);o._pendingStyles[t]=e,o._localTimelineStyles.hasOwnProperty(t)||(o._backFill[t]=o._globalTimelineStyles.hasOwnProperty(t)?o._globalTimelineStyles[t]:r.AUTO_STYLE),o._updateStyle(t,e)})},t.prototype.applyStylesToKeyframe=function(){var t=this,e=this._pendingStyles,n=Object.keys(e);0!=n.length&&(this._pendingStyles={},n.forEach(function(n){var i=e[n];t._currentKeyframe[n]=i}),Object.keys(this._localTimelineStyles).forEach(function(e){t._currentKeyframe.hasOwnProperty(e)||(t._currentKeyframe[e]=t._localTimelineStyles[e])}))},t.prototype.snapshotCurrentStyles=function(){var t=this;Object.keys(this._localTimelineStyles).forEach(function(e){var n=t._localTimelineStyles[e];t._pendingStyles[e]=n,t._updateStyle(e,n)})},t.prototype.getFinalKeyframe=function(){return this._keyframes.get(this.duration)},Object.defineProperty(t.prototype,"properties",{get:function(){var t=[];for(var e in this._currentKeyframe)t.push(e);return t},enumerable:!0,configurable:!0}),t.prototype.mergeTimelineCollectedStyles=function(t){var e=this;Object.keys(t._styleSummary).forEach(function(n){var i=e._styleSummary[n],r=t._styleSummary[n];(!i||r.time>i.time)&&e._updateStyle(n,r.value)})},t.prototype.buildKeyframes=function(){var t=this;this.applyStylesToKeyframe();var e=new Set,n=new Set,i=1===this._keyframes.size&&0===this.duration,o=[];this._keyframes.forEach(function(a,s){var c=P(a,!0);Object.keys(c).forEach(function(t){var i=c[t];i==r["ɵPRE_STYLE"]?e.add(t):i==r.AUTO_STYLE&&n.add(t)}),i||(c.offset=s/t.duration),o.push(c)});var a=e.size?F(e.values()):[],s=n.size?F(n.values()):[];if(i){var c=o[0],l=_(c);c.offset=0,l.offset=1,o=[c,l]}return nt(this.element,o,a,s,this.duration,this.startTime,this.easing,!1)},t}(),dt=function(t){function e(e,n,i,r,o,a,s){void 0===s&&(s=!1);var c=t.call(this,e,n,a.delay)||this;return c.element=n,c.keyframes=i,c.preStyleProps=r,c.postStyleProps=o,c._stretchStartingKeyframe=s,c.timings={duration:a.duration,delay:a.delay,easing:a.easing},c}return Object(i.c)(e,t),e.prototype.containsAnimation=function(){return this.keyframes.length>1},e.prototype.buildKeyframes=function(){var t=this.keyframes,e=this.timings,n=e.delay,i=e.duration,r=e.easing;if(this._stretchStartingKeyframe&&n){var o=[],a=i+n,s=n/a,c=P(t[0],!1);c.offset=0,o.push(c);var l=P(t[0],!1);l.offset=pt(s),o.push(l);for(var u=t.length-1,d=1;d<=u;d++){var p=P(t[d],!1),h=n+p.offset*i;p.offset=pt(h/a),o.push(p)}i=a,n=0,r="",t=o}return nt(this.element,t,this.preStyleProps,this.postStyleProps,i,n,r,!0)},e}(ut);function pt(t,e){void 0===e&&(e=3);var n=Math.pow(10,e-1);return Math.round(t*n)/n}
  1709. /**
  1710. * @license
  1711. * Copyright Google Inc. All Rights Reserved.
  1712. *
  1713. * Use of this source code is governed by an MIT-style license that can be
  1714. * found in the LICENSE file at https://angular.io/license
  1715. */
  1716. var ht,ft,gt=function(){},mt=(function(){function t(){}t.prototype.normalizePropertyName=function(t,e){return t},t.prototype.normalizeStyleValue=function(t,e,n,i){return n}}(),function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Object(i.c)(e,t),e.prototype.normalizePropertyName=function(t,e){return B(t)},e.prototype.normalizeStyleValue=function(t,e,n,i){var r="",o=n.toString().trim();if(vt[e]&&0!==n&&"0"!==n)if("number"==typeof n)r="px";else{var a=n.match(/^[+-]?[\d\.]+([a-z]*)$/);a&&0==a[1].length&&i.push("Please provide a CSS unit value for "+t+":"+n)}return o+r},e}(gt)),vt=(ht="width,height,minWidth,minHeight,maxWidth,maxHeight,left,top,bottom,right,fontSize,outlineWidth,outlineOffset,paddingTop,paddingLeft,paddingBottom,paddingRight,marginTop,marginLeft,marginBottom,marginRight,borderRadius,borderWidth,borderTopWidth,borderLeftWidth,borderRightWidth,borderBottomWidth,textIndent,perspective".split(","),ft={},ht.forEach(function(t){return ft[t]=!0}),ft);function yt(t,e,n,i,r,o,a,s,c,l,u,d,p){return{type:0,element:t,triggerName:e,isRemovalTransition:r,fromState:n,fromStyles:o,toState:i,toStyles:a,timelines:s,queriedElements:c,preStyleProps:l,postStyleProps:u,totalTime:d,errors:p}}var bt={},wt=function(){function t(t,e,n){this._triggerName=t,this.ast=e,this._stateStyles=n}return t.prototype.match=function(t,e,n,i){return function(t,e,n,i,r){return t.some(function(t){return t(e,n,i,r)})}(this.ast.matchers,t,e,n,i)},t.prototype.buildStyles=function(t,e,n){var i=this._stateStyles["*"],r=this._stateStyles[t],o=i?i.buildStyles(e,n):{};return r?r.buildStyles(e,n):o},t.prototype.build=function(t,e,n,r,o,a,s,c,l,u){var d=[],h=this.ast.options&&this.ast.options.params||bt,f=s&&s.params||bt,g=this.buildStyles(n,f,d),m=c&&c.params||bt,v=this.buildStyles(r,m,d),y=new Set,b=new Map,w=new Map,S="void"===r,x={params:Object(i.a)(Object(i.a)({},h),m)},M=u?[]:at(t,e,this.ast.animation,o,a,g,v,x,l,d),E=0;if(M.forEach(function(t){E=Math.max(t.duration+t.delay,E)}),d.length)return yt(e,this._triggerName,n,r,S,g,v,[],[],b,w,E,d);M.forEach(function(t){var n=t.element,i=p(b,n,{});t.preStyleProps.forEach(function(t){return i[t]=!0});var r=p(w,n,{});t.postStyleProps.forEach(function(t){return r[t]=!0}),n!==e&&y.add(n)});var C=F(y.values());return yt(e,this._triggerName,n,r,S,g,v,M,C,b,w,E)},t}(),St=function(){function t(t,e){this.styles=t,this.defaultParams=e}return t.prototype.buildStyles=function(t,e){var n={},i=_(this.defaultParams);return Object.keys(t).forEach(function(e){var n=t[e];null!=n&&(i[e]=n)}),this.styles.styles.forEach(function(t){if("string"!=typeof t){var r=t;Object.keys(r).forEach(function(t){var o=r[t];o.length>1&&(o=V(o,i,e)),n[t]=o})}}),n},t}(),xt=function(){function t(t,e){var n,i,r=this;this.name=t,this.ast=e,this.transitionFactories=[],this.states={},e.states.forEach(function(t){var e=t.options&&t.options.params||{};r.states[t.name]=new St(t.style,e)}),Mt(this.states,"true","1"),Mt(this.states,"false","0"),e.transitions.forEach(function(e){r.transitionFactories.push(new wt(t,e,r.states))}),this.fallbackTransition=(n=t,i=this.states,new wt(n,{type:1,animation:{type:2,steps:[],options:null},matchers:[function(t,e){return!0}],options:null,queryCount:0,depCount:0},i))}return Object.defineProperty(t.prototype,"containsQueries",{get:function(){return this.ast.queryCount>0},enumerable:!0,configurable:!0}),t.prototype.matchTransition=function(t,e,n,i){return this.transitionFactories.find(function(r){return r.match(t,e,n,i)})||null},t.prototype.matchStyles=function(t,e,n){return this.fallbackTransition.buildStyles(t,e,n)},t}();function Mt(t,e,n){t.hasOwnProperty(e)?t.hasOwnProperty(n)||(t[n]=t[e]):t.hasOwnProperty(n)&&(t[e]=t[n])}
  1717. /**
  1718. * @license
  1719. * Copyright Google Inc. All Rights Reserved.
  1720. *
  1721. * Use of this source code is governed by an MIT-style license that can be
  1722. * found in the LICENSE file at https://angular.io/license
  1723. */var Et=new it,Ct=function(){function t(t,e,n){this.bodyNode=t,this._driver=e,this._normalizer=n,this._animations={},this._playersById={},this.players=[]}return t.prototype.register=function(t,e){var n=[],i=Z(this._driver,e,n);if(n.length)throw new Error("Unable to build the animation due to the following errors: "+n.join("\n"));this._animations[t]=i},t.prototype._buildPlayer=function(t,e,n){var i=t.element,r=c(this._driver,this._normalizer,0,t.keyframes,e,n);return this._driver.animate(i,r,t.duration,t.delay,t.easing,[],!0)},t.prototype.create=function(t,e,n){var i=this;void 0===n&&(n={});var o,a=[],c=this._animations[t],l=new Map;if(c?(o=at(this._driver,e,c,"ng-enter","ng-leave",{},{},n,Et,a)).forEach(function(t){var e=p(l,t.element,{});t.postStyleProps.forEach(function(t){return e[t]=null})}):(a.push("The requested animation doesn't exist or has already been destroyed"),o=[]),a.length)throw new Error("Unable to create the animation due to the following errors: "+a.join("\n"));l.forEach(function(t,e){Object.keys(t).forEach(function(n){t[n]=i._driver.computeStyle(e,n,r.AUTO_STYLE)})});var u=s(o.map(function(t){var e=l.get(t.element);return i._buildPlayer(t,{},e)}));return this._playersById[t]=u,u.onDestroy(function(){return i.destroy(t)}),this.players.push(u),u},t.prototype.destroy=function(t){var e=this._getPlayer(t);e.destroy(),delete this._playersById[t];var n=this.players.indexOf(e);n>=0&&this.players.splice(n,1)},t.prototype._getPlayer=function(t){var e=this._playersById[t];if(!e)throw new Error("Unable to find the timeline player referenced by "+t);return e},t.prototype.listen=function(t,e,n,i){var r=d(e,"","","");return l(this._getPlayer(t),n,r,i),function(){}},t.prototype.command=function(t,e,n,i){if("register"!=n)if("create"!=n){var r=this._getPlayer(t);switch(n){case"play":r.play();break;case"pause":r.pause();break;case"reset":r.reset();break;case"restart":r.restart();break;case"finish":r.finish();break;case"init":r.init();break;case"setPosition":r.setPosition(parseFloat(i[0]));break;case"destroy":this.destroy(t)}}else{var o=i[0]||{};this.create(t,e,o)}else this.register(t,i[0])},t}(),At=[],Tt={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},Ot={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0},_t=function(){function t(t,e){void 0===e&&(e=""),this.namespaceId=e;var n=t&&t.hasOwnProperty("value"),i=n?t.value:t;if(this.value=null!=i?i:null,n){var r=_(t);delete r.value,this.options=r}else this.options={};this.options.params||(this.options.params={})}return Object.defineProperty(t.prototype,"params",{get:function(){return this.options.params},enumerable:!0,configurable:!0}),t.prototype.absorbOptions=function(t){var e=t.params;if(e){var n=this.options.params;Object.keys(e).forEach(function(t){null==n[t]&&(n[t]=e[t])})}},t}(),Pt=new _t("void"),It=function(){function t(t,e,n){this.id=t,this.hostElement=e,this._engine=n,this.players=[],this._triggers={},this._queue=[],this._elementListeners=new Map,this._hostClassName="ng-tns-"+t,Vt(e,this._hostClassName)}return t.prototype.listen=function(t,e,n,i){var r,o=this;if(!this._triggers.hasOwnProperty(e))throw new Error('Unable to listen on the animation trigger event "'+n+'" because the animation trigger "'+e+"\" doesn't exist!");if(null==n||0==n.length)throw new Error('Unable to listen on the animation trigger "'+e+'" because the provided event is undefined!');if("start"!=(r=n)&&"done"!=r)throw new Error('The provided animation trigger event "'+n+'" for the animation trigger "'+e+'" is not supported!');var a=p(this._elementListeners,t,[]),s={name:e,phase:n,callback:i};a.push(s);var c=p(this._engine.statesByElement,t,{});return c.hasOwnProperty(e)||(Vt(t,"ng-trigger"),Vt(t,"ng-trigger-"+e),c[e]=Pt),function(){o._engine.afterFlush(function(){var t=a.indexOf(s);t>=0&&a.splice(t,1),o._triggers[e]||delete c[e]})}},t.prototype.register=function(t,e){return!this._triggers[t]&&(this._triggers[t]=e,!0)},t.prototype._getTrigger=function(t){var e=this._triggers[t];if(!e)throw new Error('The provided animation trigger "'+t+'" has not been registered!');return e},t.prototype.trigger=function(t,e,n,i){var r=this;void 0===i&&(i=!0);var o=this._getTrigger(e),a=new Dt(this.id,e,t),s=this._engine.statesByElement.get(t);s||(Vt(t,"ng-trigger"),Vt(t,"ng-trigger-"+e),this._engine.statesByElement.set(t,s={}));var c=s[e],l=new _t(n,this.id);if(!(n&&n.hasOwnProperty("value"))&&c&&l.absorbOptions(c.options),s[e]=l,c||(c=Pt),"void"===l.value||c.value!==l.value){var u=p(this._engine.playersByElement,t,[]);u.forEach(function(t){t.namespaceId==r.id&&t.triggerName==e&&t.queued&&t.destroy()});var d=o.matchTransition(c.value,l.value,t,l.params),h=!1;if(!d){if(!i)return;d=o.fallbackTransition,h=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:e,transition:d,fromState:c,toState:l,player:a,isFallbackTransition:h}),h||(Vt(t,"ng-animate-queued"),a.onStart(function(){Ft(t,"ng-animate-queued")})),a.onDone(function(){var e=r.players.indexOf(a);e>=0&&r.players.splice(e,1);var n=r._engine.playersByElement.get(t);if(n){var i=n.indexOf(a);i>=0&&n.splice(i,1)}}),this.players.push(a),u.push(a),a}if(!function(t,e){var n=Object.keys(t),i=Object.keys(e);if(n.length!=i.length)return!1;for(var r=0;r<n.length;r++){var o=n[r];if(!e.hasOwnProperty(o)||t[o]!==e[o])return!1}return!0}(c.params,l.params)){var f=[],g=o.matchStyles(c.value,c.params,f),m=o.matchStyles(l.value,l.params,f);f.length?this._engine.reportError(f):this._engine.afterFlush(function(){R(t,g),D(t,m)})}},t.prototype.deregister=function(t){var e=this;delete this._triggers[t],this._engine.statesByElement.forEach(function(e,n){delete e[t]}),this._elementListeners.forEach(function(n,i){e._elementListeners.set(i,n.filter(function(e){return e.name!=t}))})},t.prototype.clearElementCache=function(t){this._engine.statesByElement.delete(t),this._elementListeners.delete(t);var e=this._engine.playersByElement.get(t);e&&(e.forEach(function(t){return t.destroy()}),this._engine.playersByElement.delete(t))},t.prototype._signalRemovalForInnerTriggers=function(t,e){var n=this,i=this._engine.driver.query(t,".ng-trigger",!0);i.forEach(function(t){if(!t.__ng_removed){var i=n._engine.fetchNamespacesByElement(t);i.size?i.forEach(function(n){return n.triggerLeaveAnimation(t,e,!1,!0)}):n.clearElementCache(t)}}),this._engine.afterFlushAnimationsDone(function(){return i.forEach(function(t){return n.clearElementCache(t)})})},t.prototype.triggerLeaveAnimation=function(t,e,n,i){var r=this,o=this._engine.statesByElement.get(t);if(o){var a=[];if(Object.keys(o).forEach(function(e){if(r._triggers[e]){var n=r.trigger(t,e,"void",i);n&&a.push(n)}}),a.length)return this._engine.markElementAsRemoved(this.id,t,!0,e),n&&s(a).onDone(function(){return r._engine.processLeaveNode(t)}),!0}return!1},t.prototype.prepareLeaveAnimationListeners=function(t){var e=this,n=this._elementListeners.get(t);if(n){var i=new Set;n.forEach(function(n){var r=n.name;if(!i.has(r)){i.add(r);var o=e._triggers[r].fallbackTransition,a=e._engine.statesByElement.get(t)[r]||Pt,s=new _t("void"),c=new Dt(e.id,r,t);e._engine.totalQueuedPlayers++,e._queue.push({element:t,triggerName:r,transition:o,fromState:a,toState:s,player:c,isFallbackTransition:!0})}})}},t.prototype.removeNode=function(t,e){var n=this,i=this._engine;if(t.childElementCount&&this._signalRemovalForInnerTriggers(t,e),!this.triggerLeaveAnimation(t,e,!0)){var r=!1;if(i.totalAnimations){var o=i.players.length?i.playersByQueriedElement.get(t):[];if(o&&o.length)r=!0;else for(var a=t;a=a.parentNode;)if(i.statesByElement.get(a)){r=!0;break}}if(this.prepareLeaveAnimationListeners(t),r)i.markElementAsRemoved(this.id,t,!1,e);else{var s=t.__ng_removed;s&&s!==Tt||(i.afterFlush(function(){return n.clearElementCache(t)}),i.destroyInnerAnimations(t),i._onRemovalComplete(t,e))}}},t.prototype.insertNode=function(t,e){Vt(t,this._hostClassName)},t.prototype.drainQueuedTransitions=function(t){var e=this,n=[];return this._queue.forEach(function(i){var r=i.player;if(!r.destroyed){var o=i.element,a=e._elementListeners.get(o);a&&a.forEach(function(e){if(e.name==i.triggerName){var n=d(o,i.triggerName,i.fromState.value,i.toState.value);n._data=t,l(i.player,e.phase,n,e.callback)}}),r.markedForDestroy?e._engine.afterFlush(function(){r.destroy()}):n.push(i)}}),this._queue=[],n.sort(function(t,n){var i=t.transition.ast.depCount,r=n.transition.ast.depCount;return 0==i||0==r?i-r:e._engine.driver.containsElement(t.element,n.element)?1:-1})},t.prototype.destroy=function(t){this.players.forEach(function(t){return t.destroy()}),this._signalRemovalForInnerTriggers(this.hostElement,t)},t.prototype.elementContainsData=function(t){var e=!1;return this._elementListeners.has(t)&&(e=!0),!!this._queue.find(function(e){return e.element===t})||e},t}(),kt=function(){function t(t,e,n){this.bodyNode=t,this.driver=e,this._normalizer=n,this.players=[],this.newHostElements=new Map,this.playersByElement=new Map,this.playersByQueriedElement=new Map,this.statesByElement=new Map,this.disabledNodes=new Set,this.totalAnimations=0,this.totalQueuedPlayers=0,this._namespaceLookup={},this._namespaceList=[],this._flushFns=[],this._whenQuietFns=[],this.namespacesByHostElement=new Map,this.collectedEnterElements=[],this.collectedLeaveElements=[],this.onRemovalComplete=function(t,e){}}return t.prototype._onRemovalComplete=function(t,e){this.onRemovalComplete(t,e)},Object.defineProperty(t.prototype,"queuedPlayers",{get:function(){var t=[];return this._namespaceList.forEach(function(e){e.players.forEach(function(e){e.queued&&t.push(e)})}),t},enumerable:!0,configurable:!0}),t.prototype.createNamespace=function(t,e){var n=new It(t,e,this);return e.parentNode?this._balanceNamespaceList(n,e):(this.newHostElements.set(e,n),this.collectEnterElement(e)),this._namespaceLookup[t]=n},t.prototype._balanceNamespaceList=function(t,e){var n=this._namespaceList.length-1;if(n>=0){for(var i=!1,r=n;r>=0;r--){var o=this._namespaceList[r];if(this.driver.containsElement(o.hostElement,e)){this._namespaceList.splice(r+1,0,t),i=!0;break}}i||this._namespaceList.splice(0,0,t)}else this._namespaceList.push(t);return this.namespacesByHostElement.set(e,t),t},t.prototype.register=function(t,e){var n=this._namespaceLookup[t];return n||(n=this.createNamespace(t,e)),n},t.prototype.registerTrigger=function(t,e,n){var i=this._namespaceLookup[t];i&&i.register(e,n)&&this.totalAnimations++},t.prototype.destroy=function(t,e){var n=this;if(t){var i=this._fetchNamespace(t);this.afterFlush(function(){n.namespacesByHostElement.delete(i.hostElement),delete n._namespaceLookup[t];var e=n._namespaceList.indexOf(i);e>=0&&n._namespaceList.splice(e,1)}),this.afterFlushAnimationsDone(function(){return i.destroy(e)})}},t.prototype._fetchNamespace=function(t){return this._namespaceLookup[t]},t.prototype.fetchNamespacesByElement=function(t){var e=new Set,n=this.statesByElement.get(t);if(n)for(var i=Object.keys(n),r=0;r<i.length;r++){var o=n[i[r]].namespaceId;if(o){var a=this._fetchNamespace(o);a&&e.add(a)}}return e},t.prototype.trigger=function(t,e,n,i){if(Rt(e)){var r=this._fetchNamespace(t);if(r)return r.trigger(e,n,i),!0}return!1},t.prototype.insertNode=function(t,e,n,i){if(Rt(e)){var r=e.__ng_removed;if(r&&r.setForRemoval){r.setForRemoval=!1,r.setForMove=!0;var o=this.collectedLeaveElements.indexOf(e);o>=0&&this.collectedLeaveElements.splice(o,1)}if(t){var a=this._fetchNamespace(t);a&&a.insertNode(e,n)}i&&this.collectEnterElement(e)}},t.prototype.collectEnterElement=function(t){this.collectedEnterElements.push(t)},t.prototype.markElementAsDisabled=function(t,e){e?this.disabledNodes.has(t)||(this.disabledNodes.add(t),Vt(t,"ng-animate-disabled")):this.disabledNodes.has(t)&&(this.disabledNodes.delete(t),Ft(t,"ng-animate-disabled"))},t.prototype.removeNode=function(t,e,n,i){if(Rt(e)){var r=t?this._fetchNamespace(t):null;if(r?r.removeNode(e,i):this.markElementAsRemoved(t,e,!1,i),n){var o=this.namespacesByHostElement.get(e);o&&o.id!==t&&o.removeNode(e,i)}}else this._onRemovalComplete(e,i)},t.prototype.markElementAsRemoved=function(t,e,n,i){this.collectedLeaveElements.push(e),e.__ng_removed={namespaceId:t,setForRemoval:i,hasAnimation:n,removedBeforeQueried:!1}},t.prototype.listen=function(t,e,n,i,r){return Rt(e)?this._fetchNamespace(t).listen(e,n,i,r):function(){}},t.prototype._buildInstruction=function(t,e,n,i,r){return t.transition.build(this.driver,t.element,t.fromState.value,t.toState.value,n,i,t.fromState.options,t.toState.options,e,r)},t.prototype.destroyInnerAnimations=function(t){var e=this,n=this.driver.query(t,".ng-trigger",!0);n.forEach(function(t){return e.destroyActiveAnimationsForElement(t)}),0!=this.playersByQueriedElement.size&&(n=this.driver.query(t,".ng-animating",!0)).forEach(function(t){return e.finishActiveQueriedAnimationOnElement(t)})},t.prototype.destroyActiveAnimationsForElement=function(t){var e=this.playersByElement.get(t);e&&e.forEach(function(t){t.queued?t.markedForDestroy=!0:t.destroy()})},t.prototype.finishActiveQueriedAnimationOnElement=function(t){var e=this.playersByQueriedElement.get(t);e&&e.forEach(function(t){return t.finish()})},t.prototype.whenRenderingDone=function(){var t=this;return new Promise(function(e){if(t.players.length)return s(t.players).onDone(function(){return e()});e()})},t.prototype.processLeaveNode=function(t){var e=this,n=t.__ng_removed;if(n&&n.setForRemoval){if(t.__ng_removed=Tt,n.namespaceId){this.destroyInnerAnimations(t);var i=this._fetchNamespace(n.namespaceId);i&&i.clearElementCache(t)}this._onRemovalComplete(t,n.setForRemoval)}this.driver.matchesElement(t,".ng-animate-disabled")&&this.markElementAsDisabled(t,!1),this.driver.query(t,".ng-animate-disabled",!0).forEach(function(t){e.markElementAsDisabled(t,!1)})},t.prototype.flush=function(t){var e=this;void 0===t&&(t=-1);var n=[];if(this.newHostElements.size&&(this.newHostElements.forEach(function(t,n){return e._balanceNamespaceList(t,n)}),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(var i=0;i<this.collectedEnterElements.length;i++)Vt(this.collectedEnterElements[i],"ng-star-inserted");if(this._namespaceList.length&&(this.totalQueuedPlayers||this.collectedLeaveElements.length)){var r=[];try{n=this._flushAnimations(r,t)}finally{for(i=0;i<r.length;i++)r[i]()}}else for(i=0;i<this.collectedLeaveElements.length;i++){var o=this.collectedLeaveElements[i];this.processLeaveNode(o)}if(this.totalQueuedPlayers=0,this.collectedEnterElements.length=0,this.collectedLeaveElements.length=0,this._flushFns.forEach(function(t){return t()}),this._flushFns=[],this._whenQuietFns.length){var a=this._whenQuietFns;this._whenQuietFns=[],n.length?s(n).onDone(function(){a.forEach(function(t){return t()})}):a.forEach(function(t){return t()})}},t.prototype.reportError=function(t){throw new Error("Unable to process animations due to the following failed trigger transitions\n "+t.join("\n"))},t.prototype._flushAnimations=function(t,e){var n=this,o=new it,a=[],c=new Map,l=[],u=new Map,d=new Map,h=new Map,f=new Set;this.disabledNodes.forEach(function(t){f.add(t);for(var e=n.driver.query(t,".ng-animate-queued",!0),i=0;i<e.length;i++)f.add(e[i])});var g=this.bodyNode,m=Array.from(this.statesByElement.keys()),v=jt(m,this.collectedEnterElements),y=new Map,b=0;v.forEach(function(t,e){var n="ng-enter"+b++;y.set(e,n),t.forEach(function(t){return Vt(t,n)})});for(var w=[],S=new Set,x=new Set,M=0;M<this.collectedLeaveElements.length;M++)(z=(B=this.collectedLeaveElements[M]).__ng_removed)&&z.setForRemoval&&(w.push(B),S.add(B),z.hasAnimation?this.driver.query(B,".ng-star-inserted",!0).forEach(function(t){return S.add(t)}):x.add(B));var E=new Map,C=jt(m,Array.from(S));C.forEach(function(t,e){var n="ng-leave"+b++;E.set(e,n),t.forEach(function(t){return Vt(t,n)})}),t.push(function(){v.forEach(function(t,e){var n=y.get(e);t.forEach(function(t){return Ft(t,n)})}),C.forEach(function(t,e){var n=E.get(e);t.forEach(function(t){return Ft(t,n)})}),w.forEach(function(t){n.processLeaveNode(t)})});for(var A=[],T=[],O=this._namespaceList.length-1;O>=0;O--)this._namespaceList[O].drainQueuedTransitions(e).forEach(function(t){var e=t.player,i=t.element;if(A.push(e),n.collectedEnterElements.length){var r=i.__ng_removed;if(r&&r.setForMove)return void e.destroy()}var s=!g||!n.driver.containsElement(g,i),c=E.get(i),f=y.get(i),m=n._buildInstruction(t,o,f,c,s);if(m.errors&&m.errors.length)T.push(m);else{if(s)return e.onStart(function(){return R(i,m.fromStyles)}),e.onDestroy(function(){return D(i,m.toStyles)}),void a.push(e);if(t.isFallbackTransition)return e.onStart(function(){return R(i,m.fromStyles)}),e.onDestroy(function(){return D(i,m.toStyles)}),void a.push(e);m.timelines.forEach(function(t){return t.stretchStartingKeyframe=!0}),o.append(i,m.timelines);var v={instruction:m,player:e,element:i};l.push(v),m.queriedElements.forEach(function(t){return p(u,t,[]).push(e)}),m.preStyleProps.forEach(function(t,e){var n=Object.keys(t);if(n.length){var i=d.get(e);i||d.set(e,i=new Set),n.forEach(function(t){return i.add(t)})}}),m.postStyleProps.forEach(function(t,e){var n=Object.keys(t),i=h.get(e);i||h.set(e,i=new Set),n.forEach(function(t){return i.add(t)})})}});if(T.length){var _=[];T.forEach(function(t){_.push("@"+t.triggerName+" has failed due to:\n"),t.errors.forEach(function(t){return _.push("- "+t+"\n")})}),A.forEach(function(t){return t.destroy()}),this.reportError(_)}var P=new Map,I=new Map;l.forEach(function(t){var e=t.element;o.has(e)&&(I.set(e,e),n._beforeAnimationBuild(t.player.namespaceId,t.instruction,P))}),a.forEach(function(t){var e=t.element;n._getPreviousPlayers(e,!1,t.namespaceId,t.triggerName,null).forEach(function(t){p(P,e,[]).push(t),t.destroy()})});var k=w.filter(function(t){return Bt(t,d,h)}),L=new Map;Nt(L,this.driver,x,h,r.AUTO_STYLE).forEach(function(t){Bt(t,d,h)&&k.push(t)});var N=new Map;v.forEach(function(t,e){Nt(N,n.driver,new Set(t),d,r["ɵPRE_STYLE"])}),k.forEach(function(t){var e=L.get(t),n=N.get(t);L.set(t,Object(i.a)(Object(i.a)({},e),n))});var j=[],V=[],F={};l.forEach(function(t){var e=t.element,i=t.player,r=t.instruction;if(o.has(e)){if(f.has(e))return i.onDestroy(function(){return D(e,r.toStyles)}),i.disabled=!0,i.overrideTotalTime(r.totalTime),void a.push(i);var l=F;if(I.size>1){for(var u=e,d=[];u=u.parentNode;){var p=I.get(u);if(p){l=p;break}d.push(u)}d.forEach(function(t){return I.set(t,l)})}var h=n._buildAnimation(i.namespaceId,r,P,c,N,L);if(i.setRealPlayer(h),l===F)j.push(i);else{var g=n.playersByElement.get(l);g&&g.length&&(i.parentPlayer=s(g)),a.push(i)}}else R(e,r.fromStyles),i.onDestroy(function(){return D(e,r.toStyles)}),V.push(i),f.has(e)&&a.push(i)}),V.forEach(function(t){var e=c.get(t.element);if(e&&e.length){var n=s(e);t.setRealPlayer(n)}}),a.forEach(function(t){t.parentPlayer?t.syncPlayerEvents(t.parentPlayer):t.destroy()});for(var U=0;U<w.length;U++){var B,z=(B=w[U]).__ng_removed;if(Ft(B,"ng-leave"),!z||!z.hasAnimation){var G=[];if(u.size){var H=u.get(B);H&&H.length&&G.push.apply(G,Object(i.h)(H));for(var W=this.driver.query(B,".ng-animating",!0),q=0;q<W.length;q++){var K=u.get(W[q]);K&&K.length&&G.push.apply(G,Object(i.h)(K))}}var X=G.filter(function(t){return!t.destroyed});X.length?Ut(this,B,X):this.processLeaveNode(B)}}return w.length=0,j.forEach(function(t){n.players.push(t),t.onDone(function(){t.destroy();var e=n.players.indexOf(t);n.players.splice(e,1)}),t.play()}),j},t.prototype.elementContainsData=function(t,e){var n=!1,i=e.__ng_removed;return i&&i.setForRemoval&&(n=!0),this.playersByElement.has(e)&&(n=!0),this.playersByQueriedElement.has(e)&&(n=!0),this.statesByElement.has(e)&&(n=!0),this._fetchNamespace(t).elementContainsData(e)||n},t.prototype.afterFlush=function(t){this._flushFns.push(t)},t.prototype.afterFlushAnimationsDone=function(t){this._whenQuietFns.push(t)},t.prototype._getPreviousPlayers=function(t,e,n,i,r){var o=[];if(e){var a=this.playersByQueriedElement.get(t);a&&(o=a)}else{var s=this.playersByElement.get(t);if(s){var c=!r||"void"==r;s.forEach(function(t){t.queued||(c||t.triggerName==i)&&o.push(t)})}}return(n||i)&&(o=o.filter(function(t){return!(n&&n!=t.namespaceId||i&&i!=t.triggerName)})),o},t.prototype._beforeAnimationBuild=function(t,e,n){var r,o,a=e.triggerName,s=e.element,c=e.isRemovalTransition?void 0:t,l=e.isRemovalTransition?void 0:a,u=function(t){var i=t.element,r=i!==s,o=p(n,i,[]);d._getPreviousPlayers(i,r,c,l,e.toState).forEach(function(t){var e=t.getRealPlayer();e.beforeDestroy&&e.beforeDestroy(),t.destroy(),o.push(t)})},d=this;try{for(var h=Object(i.j)(e.timelines),f=h.next();!f.done;f=h.next())u(f.value)}catch(t){r={error:t}}finally{try{f&&!f.done&&(o=h.return)&&o.call(h)}finally{if(r)throw r.error}}R(s,e.fromStyles)},t.prototype._buildAnimation=function(t,e,n,i,o,a){var l=this,u=e.triggerName,d=e.element,h=[],f=new Set,g=new Set,m=e.timelines.map(function(e){var s=e.element;f.add(s);var p=s.__ng_removed;if(p&&p.removedBeforeQueried)return new r.NoopAnimationPlayer(e.duration,e.delay);var m,v,y=s!==d,b=(m=(n.get(s)||At).map(function(t){return t.getRealPlayer()}),v=[],function t(e,n){for(var i=0;i<e.length;i++){var o=e[i];o instanceof r["ɵAnimationGroupPlayer"]?t(o.players,n):n.push(o)}}(m,v),v).filter(function(t){var e=t;return!!e.element&&e.element===s}),w=o.get(s),S=a.get(s),x=c(l.driver,l._normalizer,0,e.keyframes,w,S),M=l._buildPlayer(e,x,b);if(e.subTimeline&&i&&g.add(s),y){var E=new Dt(t,u,s);E.setRealPlayer(M),h.push(E)}return M});h.forEach(function(t){p(l.playersByQueriedElement,t.element,[]).push(t),t.onDone(function(){return function(t,e,n){var i;if(t instanceof Map){if(i=t.get(e)){if(i.length){var r=i.indexOf(n);i.splice(r,1)}0==i.length&&t.delete(e)}}else(i=t[e])&&(i.length&&(r=i.indexOf(n),i.splice(r,1)),0==i.length&&delete t[e]);return i}(l.playersByQueriedElement,t.element,t)})}),f.forEach(function(t){return Vt(t,"ng-animating")});var v=s(m);return v.onDestroy(function(){f.forEach(function(t){return Ft(t,"ng-animating")}),D(d,e.toStyles)}),g.forEach(function(t){p(i,t,[]).push(v)}),v},t.prototype._buildPlayer=function(t,e,n){return e.length>0?this.driver.animate(t.element,e,t.duration,t.delay,t.easing,n):new r.NoopAnimationPlayer(t.duration,t.delay)},t}(),Dt=function(){function t(t,e,n){this.namespaceId=t,this.triggerName=e,this.element=n,this._player=new r.NoopAnimationPlayer,this._containsRealPlayer=!1,this._queuedCallbacks={},this.destroyed=!1,this.markedForDestroy=!1,this.disabled=!1,this.queued=!0,this.totalTime=0}return t.prototype.setRealPlayer=function(t){var e=this;this._containsRealPlayer||(this._player=t,Object.keys(this._queuedCallbacks).forEach(function(n){e._queuedCallbacks[n].forEach(function(e){return l(t,n,void 0,e)})}),this._queuedCallbacks={},this._containsRealPlayer=!0,this.overrideTotalTime(t.totalTime),this.queued=!1)},t.prototype.getRealPlayer=function(){return this._player},t.prototype.overrideTotalTime=function(t){this.totalTime=t},t.prototype.syncPlayerEvents=function(t){var e=this,n=this._player;n.triggerCallback&&t.onStart(function(){return n.triggerCallback("start")}),t.onDone(function(){return e.finish()}),t.onDestroy(function(){return e.destroy()})},t.prototype._queueEvent=function(t,e){p(this._queuedCallbacks,t,[]).push(e)},t.prototype.onDone=function(t){this.queued&&this._queueEvent("done",t),this._player.onDone(t)},t.prototype.onStart=function(t){this.queued&&this._queueEvent("start",t),this._player.onStart(t)},t.prototype.onDestroy=function(t){this.queued&&this._queueEvent("destroy",t),this._player.onDestroy(t)},t.prototype.init=function(){this._player.init()},t.prototype.hasStarted=function(){return!this.queued&&this._player.hasStarted()},t.prototype.play=function(){!this.queued&&this._player.play()},t.prototype.pause=function(){!this.queued&&this._player.pause()},t.prototype.restart=function(){!this.queued&&this._player.restart()},t.prototype.finish=function(){this._player.finish()},t.prototype.destroy=function(){this.destroyed=!0,this._player.destroy()},t.prototype.reset=function(){!this.queued&&this._player.reset()},t.prototype.setPosition=function(t){this.queued||this._player.setPosition(t)},t.prototype.getPosition=function(){return this.queued?0:this._player.getPosition()},t.prototype.triggerCallback=function(t){var e=this._player;e.triggerCallback&&e.triggerCallback(t)},t}();function Rt(t){return t&&1===t.nodeType}function Lt(t,e){var n=t.style.display;return t.style.display=null!=e?e:"none",n}function Nt(t,e,n,i,r){var o=[];n.forEach(function(t){return o.push(Lt(t))});var a=[];i.forEach(function(n,i){var o={};n.forEach(function(t){var n=o[t]=e.computeStyle(i,t,r);n&&0!=n.length||(i.__ng_removed=Ot,a.push(i))}),t.set(i,o)});var s=0;return n.forEach(function(t){return Lt(t,o[s++])}),a}function jt(t,e){var n=new Map;if(t.forEach(function(t){return n.set(t,[])}),0==e.length)return n;var i=new Set(e),r=new Map;return e.forEach(function(t){var e=function t(e){if(!e)return 1;var o=r.get(e);if(o)return o;var a=e.parentNode;return o=n.has(a)?a:i.has(a)?1:t(a),r.set(e,o),o}(t);1!==e&&n.get(e).push(t)}),n}function Vt(t,e){if(t.classList)t.classList.add(e);else{var n=t.$$classes;n||(n=t.$$classes={}),n[e]=!0}}function Ft(t,e){if(t.classList)t.classList.remove(e);else{var n=t.$$classes;n&&delete n[e]}}function Ut(t,e,n){s(n).onDone(function(){return t.processLeaveNode(e)})}function Bt(t,e,n){var i=n.get(t);if(!i)return!1;var r=e.get(t);return r?i.forEach(function(t){return r.add(t)}):e.set(t,i),n.delete(t),!0}var zt=function(){function t(t,e,n){var i=this;this.bodyNode=t,this._driver=e,this._triggerCache={},this.onRemovalComplete=function(t,e){},this._transitionEngine=new kt(t,e,n),this._timelineEngine=new Ct(t,e,n),this._transitionEngine.onRemovalComplete=function(t,e){return i.onRemovalComplete(t,e)}}return t.prototype.registerTrigger=function(t,e,n,i,r){var o=t+"-"+i,a=this._triggerCache[o];if(!a){var s=[],c=Z(this._driver,r,s);if(s.length)throw new Error('The animation trigger "'+i+'" has failed to build due to the following errors:\n - '+s.join("\n - "));a=new xt(i,c),this._triggerCache[o]=a}this._transitionEngine.registerTrigger(e,i,a)},t.prototype.register=function(t,e){this._transitionEngine.register(t,e)},t.prototype.destroy=function(t,e){this._transitionEngine.destroy(t,e)},t.prototype.onInsert=function(t,e,n,i){this._transitionEngine.insertNode(t,e,n,i)},t.prototype.onRemove=function(t,e,n,i){this._transitionEngine.removeNode(t,e,i||!1,n)},t.prototype.disableAnimations=function(t,e){this._transitionEngine.markElementAsDisabled(t,e)},t.prototype.process=function(t,e,n,r){if("@"==n.charAt(0)){var o=Object(i.f)(h(n),2),a=o[0],s=o[1],c=r;this._timelineEngine.command(a,e,s,c)}else this._transitionEngine.trigger(t,e,n,r)},t.prototype.listen=function(t,e,n,r,o){if("@"==n.charAt(0)){var a=Object(i.f)(h(n),2),s=a[0],c=a[1];return this._timelineEngine.listen(s,e,c,o)}return this._transitionEngine.listen(t,e,n,r,o)},t.prototype.flush=function(t){void 0===t&&(t=-1),this._transitionEngine.flush(t)},Object.defineProperty(t.prototype,"players",{get:function(){return this._transitionEngine.players.concat(this._timelineEngine.players)},enumerable:!0,configurable:!0}),t.prototype.whenRenderingDone=function(){return this._transitionEngine.whenRenderingDone()},t}();
  1724. /**
  1725. * @license
  1726. * Copyright Google Inc. All Rights Reserved.
  1727. *
  1728. * Use of this source code is governed by an MIT-style license that can be
  1729. * found in the LICENSE file at https://angular.io/license
  1730. */function Gt(t,e){var n=null,i=null;return Array.isArray(e)&&e.length?(n=Wt(e[0]),e.length>1&&(i=Wt(e[e.length-1]))):e&&(n=Wt(e)),n||i?new Ht(t,n,i):null}var Ht=function(){function t(e,n,i){this._element=e,this._startStyles=n,this._endStyles=i,this._state=0;var r=t.initialStylesByElement.get(e);r||t.initialStylesByElement.set(e,r={}),this._initialStyles=r}return t.prototype.start=function(){this._state<1&&(this._startStyles&&D(this._element,this._startStyles,this._initialStyles),this._state=1)},t.prototype.finish=function(){this.start(),this._state<2&&(D(this._element,this._initialStyles),this._endStyles&&(D(this._element,this._endStyles),this._endStyles=null),this._state=1)},t.prototype.destroy=function(){this.finish(),this._state<3&&(t.initialStylesByElement.delete(this._element),this._startStyles&&(R(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(R(this._element,this._endStyles),this._endStyles=null),D(this._element,this._initialStyles),this._state=3)},t.initialStylesByElement=new WeakMap,t}();function Wt(t){for(var e=null,n=Object.keys(t),i=0;i<n.length;i++){var r=n[i];qt(r)&&((e=e||{})[r]=t[r])}return e}function qt(t){return"display"===t||"position"===t}
  1731. /**
  1732. * @license
  1733. * Copyright Google Inc. All Rights Reserved.
  1734. *
  1735. * Use of this source code is governed by an MIT-style license that can be
  1736. * found in the LICENSE file at https://angular.io/license
  1737. */var Kt=function(){function t(t,e,n,i,r,o,a){var s=this;this._element=t,this._name=e,this._duration=n,this._delay=i,this._easing=r,this._fillMode=o,this._onDoneFn=a,this._finished=!1,this._destroyed=!1,this._startTime=0,this._position=0,this._eventFn=function(t){return s._handleCallback(t)}}return t.prototype.apply=function(){var t,e,n;t=this._element,e=this._duration+"ms "+this._easing+" "+this._delay+"ms 1 normal "+this._fillMode+" "+this._name,(n=$t(t,"").trim()).length&&(function(t,e){for(var n=0,i=0;i<t.length;i++)","===t.charAt(i)&&n++}(n),e=n+", "+e),Qt(t,"",e),Jt(this._element,this._eventFn,!1),this._startTime=Date.now()},t.prototype.pause=function(){Xt(this._element,this._name,"paused")},t.prototype.resume=function(){Xt(this._element,this._name,"running")},t.prototype.setPosition=function(t){var e=Yt(this._element,this._name);this._position=t*this._duration,Qt(this._element,"Delay","-"+this._position+"ms",e)},t.prototype.getPosition=function(){return this._position},t.prototype._handleCallback=function(t){var e=t._ngTestManualTimestamp||Date.now(),n=1e3*parseFloat(t.elapsedTime.toFixed(3));t.animationName==this._name&&Math.max(e-this._startTime,0)>=this._delay&&n>=this._duration&&this.finish()},t.prototype.finish=function(){this._finished||(this._finished=!0,this._onDoneFn(),Jt(this._element,this._eventFn,!0))},t.prototype.destroy=function(){var t,e,n,i;this._destroyed||(this._destroyed=!0,this.finish(),t=this._element,e=this._name,n=$t(t,"").split(","),(i=Zt(n,e))>=0&&(n.splice(i,1),Qt(t,"",n.join(","))))},t}();function Xt(t,e,n){Qt(t,"PlayState",n,Yt(t,e))}function Yt(t,e){var n=$t(t,"");return n.indexOf(",")>0?Zt(n.split(","),e):Zt([n],e)}function Zt(t,e){for(var n=0;n<t.length;n++)if(t[n].indexOf(e)>=0)return n;return-1}function Jt(t,e,n){n?t.removeEventListener("animationend",e):t.addEventListener("animationend",e)}function Qt(t,e,n,i){var r="animation"+e;if(null!=i){var o=t.style[r];if(o.length){var a=o.split(",");a[i]=n,n=a.join(",")}}t.style[r]=n}function $t(t,e){return t.style["animation"+e]}var te=function(){function t(t,e,n,i,r,o,a,s){this.element=t,this.keyframes=e,this.animationName=n,this._duration=i,this._delay=r,this._finalStyles=a,this._specialStyles=s,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this.currentSnapshot={},this._state=0,this.easing=o||"linear",this.totalTime=i+r,this._buildStyler()}return t.prototype.onStart=function(t){this._onStartFns.push(t)},t.prototype.onDone=function(t){this._onDoneFns.push(t)},t.prototype.onDestroy=function(t){this._onDestroyFns.push(t)},t.prototype.destroy=function(){this.init(),this._state>=4||(this._state=4,this._styler.destroy(),this._flushStartFns(),this._flushDoneFns(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(function(t){return t()}),this._onDestroyFns=[])},t.prototype._flushDoneFns=function(){this._onDoneFns.forEach(function(t){return t()}),this._onDoneFns=[]},t.prototype._flushStartFns=function(){this._onStartFns.forEach(function(t){return t()}),this._onStartFns=[]},t.prototype.finish=function(){this.init(),this._state>=3||(this._state=3,this._styler.finish(),this._flushStartFns(),this._specialStyles&&this._specialStyles.finish(),this._flushDoneFns())},t.prototype.setPosition=function(t){this._styler.setPosition(t)},t.prototype.getPosition=function(){return this._styler.getPosition()},t.prototype.hasStarted=function(){return this._state>=2},t.prototype.init=function(){this._state>=1||(this._state=1,this.element,this._styler.apply(),this._delay&&this._styler.pause())},t.prototype.play=function(){this.init(),this.hasStarted()||(this._flushStartFns(),this._state=2,this._specialStyles&&this._specialStyles.start()),this._styler.resume()},t.prototype.pause=function(){this.init(),this._styler.pause()},t.prototype.restart=function(){this.reset(),this.play()},t.prototype.reset=function(){this._styler.destroy(),this._buildStyler(),this._styler.apply()},t.prototype._buildStyler=function(){var t=this;this._styler=new Kt(this.element,this.animationName,this._duration,this._delay,this.easing,"forwards",function(){return t.finish()})},t.prototype.triggerCallback=function(t){var e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(function(t){return t()}),e.length=0},t.prototype.beforeDestroy=function(){var t=this;this.init();var e={};if(this.hasStarted()){var n=this._state>=3;Object.keys(this._finalStyles).forEach(function(i){"offset"!=i&&(e[i]=n?t._finalStyles[i]:W(t.element,i))})}this.currentSnapshot=e},t}(),ee=function(t){function e(e,n){var i=t.call(this)||this;return i.element=e,i._startingStyles={},i.__initialized=!1,i._styles=M(n),i}return Object(i.c)(e,t),e.prototype.init=function(){var e=this;!this.__initialized&&this._startingStyles&&(this.__initialized=!0,Object.keys(this._styles).forEach(function(t){e._startingStyles[t]=e.element.style[t]}),t.prototype.init.call(this))},e.prototype.play=function(){var e=this;this._startingStyles&&(this.init(),Object.keys(this._styles).forEach(function(t){return e.element.style.setProperty(t,e._styles[t])}),t.prototype.play.call(this))},e.prototype.destroy=function(){var e=this;this._startingStyles&&(Object.keys(this._startingStyles).forEach(function(t){var n=e._startingStyles[t];n?e.element.style.setProperty(t,n):e.element.style.removeProperty(t)}),this._startingStyles=null,t.prototype.destroy.call(this))},e}(r.NoopAnimationPlayer),ne=function(){function t(){this._count=0,this._head=document.querySelector("head"),this._warningIssued=!1}return t.prototype.validateStyleProperty=function(t){return b(t)},t.prototype.matchesElement=function(t,e){return w(t,e)},t.prototype.containsElement=function(t,e){return S(t,e)},t.prototype.query=function(t,e,n){return x(t,e,n)},t.prototype.computeStyle=function(t,e,n){return window.getComputedStyle(t)[e]},t.prototype.buildKeyframeElement=function(t,e,n){n=n.map(function(t){return M(t)});var i="@keyframes "+e+" {\n",r="";n.forEach(function(t){r=" ";var e=parseFloat(t.offset);i+=""+r+100*e+"% {\n",r+=" ",Object.keys(t).forEach(function(e){var n=t[e];switch(e){case"offset":return;case"easing":return void(n&&(i+=r+"animation-timing-function: "+n+";\n"));default:return void(i+=""+r+e+": "+n+";\n")}}),i+=r+"}\n"}),i+="}\n";var o=document.createElement("style");return o.innerHTML=i,o},t.prototype.animate=function(t,e,n,i,r,o,a){void 0===o&&(o=[]),a&&this._notifyFaultyScrubber();var s=o.filter(function(t){return t instanceof te}),c={};z(n,i)&&s.forEach(function(t){var e=t.currentSnapshot;Object.keys(e).forEach(function(t){return c[t]=e[t]})});var l=function(t){var e={};return t&&(Array.isArray(t)?t:[t]).forEach(function(t){Object.keys(t).forEach(function(n){"offset"!=n&&"easing"!=n&&(e[n]=t[n])})}),e}(e=G(t,e,c));if(0==n)return new ee(t,l);var u="gen_css_kf_"+this._count++,d=this.buildKeyframeElement(t,u,e);document.querySelector("head").appendChild(d);var p=Gt(t,e),h=new te(t,e,u,n,i,r,l,p);return h.onDestroy(function(){var t;(t=d).parentNode.removeChild(t)}),h},t.prototype._notifyFaultyScrubber=function(){this._warningIssued||(console.warn("@angular/animations: please load the web-animations.js polyfill to allow programmatic access...\n"," visit http://bit.ly/IWukam to learn more about using the web-animation-js polyfill."),this._warningIssued=!0)},t}(),ie=function(){function t(t,e,n,i){this.element=t,this.keyframes=e,this.options=n,this._specialStyles=i,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._initialized=!1,this._finished=!1,this._started=!1,this._destroyed=!1,this.time=0,this.parentPlayer=null,this.currentSnapshot={},this._duration=n.duration,this._delay=n.delay||0,this.time=this._duration+this._delay}return t.prototype._onFinish=function(){this._finished||(this._finished=!0,this._onDoneFns.forEach(function(t){return t()}),this._onDoneFns=[])},t.prototype.init=function(){this._buildPlayer(),this._preparePlayerBeforeStart()},t.prototype._buildPlayer=function(){var t=this;if(!this._initialized){this._initialized=!0;var e=this.keyframes;this.domPlayer=this._triggerWebAnimation(this.element,e,this.options),this._finalKeyframe=e.length?e[e.length-1]:{},this.domPlayer.addEventListener("finish",function(){return t._onFinish()})}},t.prototype._preparePlayerBeforeStart=function(){this._delay?this._resetDomPlayerState():this.domPlayer.pause()},t.prototype._triggerWebAnimation=function(t,e,n){return t.animate(e,n)},t.prototype.onStart=function(t){this._onStartFns.push(t)},t.prototype.onDone=function(t){this._onDoneFns.push(t)},t.prototype.onDestroy=function(t){this._onDestroyFns.push(t)},t.prototype.play=function(){this._buildPlayer(),this.hasStarted()||(this._onStartFns.forEach(function(t){return t()}),this._onStartFns=[],this._started=!0,this._specialStyles&&this._specialStyles.start()),this.domPlayer.play()},t.prototype.pause=function(){this.init(),this.domPlayer.pause()},t.prototype.finish=function(){this.init(),this._specialStyles&&this._specialStyles.finish(),this._onFinish(),this.domPlayer.finish()},t.prototype.reset=function(){this._resetDomPlayerState(),this._destroyed=!1,this._finished=!1,this._started=!1},t.prototype._resetDomPlayerState=function(){this.domPlayer&&this.domPlayer.cancel()},t.prototype.restart=function(){this.reset(),this.play()},t.prototype.hasStarted=function(){return this._started},t.prototype.destroy=function(){this._destroyed||(this._destroyed=!0,this._resetDomPlayerState(),this._onFinish(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(function(t){return t()}),this._onDestroyFns=[])},t.prototype.setPosition=function(t){this.domPlayer.currentTime=t*this.time},t.prototype.getPosition=function(){return this.domPlayer.currentTime/this.time},Object.defineProperty(t.prototype,"totalTime",{get:function(){return this._delay+this._duration},enumerable:!0,configurable:!0}),t.prototype.beforeDestroy=function(){var t=this,e={};this.hasStarted()&&Object.keys(this._finalKeyframe).forEach(function(n){"offset"!=n&&(e[n]=t._finished?t._finalKeyframe[n]:W(t.element,n))}),this.currentSnapshot=e},t.prototype.triggerCallback=function(t){var e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(function(t){return t()}),e.length=0},t}(),re=function(){function t(){this._isNativeImpl=/\{\s*\[native\s+code\]\s*\}/.test(ae().toString()),this._cssKeyframesDriver=new ne}return t.prototype.validateStyleProperty=function(t){return b(t)},t.prototype.matchesElement=function(t,e){return w(t,e)},t.prototype.containsElement=function(t,e){return S(t,e)},t.prototype.query=function(t,e,n){return x(t,e,n)},t.prototype.computeStyle=function(t,e,n){return window.getComputedStyle(t)[e]},t.prototype.overrideWebAnimationsSupport=function(t){this._isNativeImpl=t},t.prototype.animate=function(t,e,n,i,r,o,a){if(void 0===o&&(o=[]),!a&&!this._isNativeImpl)return this._cssKeyframesDriver.animate(t,e,n,i,r,o);var s={duration:n,delay:i,fill:0==i?"both":"forwards"};r&&(s.easing=r);var c={},l=o.filter(function(t){return t instanceof ie});z(n,i)&&l.forEach(function(t){var e=t.currentSnapshot;Object.keys(e).forEach(function(t){return c[t]=e[t]})});var u=Gt(t,e=G(t,e=e.map(function(t){return P(t,!1)}),c));return new ie(t,e,s,u)},t}();function oe(){return"function"==typeof ae()}function ae(){return"undefined"!=typeof window&&void 0!==window.document&&Element.prototype.animate||{}}
  1738. /**
  1739. * @license
  1740. * Copyright Google Inc. All Rights Reserved.
  1741. *
  1742. * Use of this source code is governed by an MIT-style license that can be
  1743. * found in the LICENSE file at https://angular.io/license
  1744. */
  1745. /**
  1746. * @license
  1747. * Copyright Google Inc. All Rights Reserved.
  1748. *
  1749. * Use of this source code is governed by an MIT-style license that can be
  1750. * found in the LICENSE file at https://angular.io/license
  1751. */
  1752. /**
  1753. * @license
  1754. * Copyright Google Inc. All Rights Reserved.
  1755. *
  1756. * Use of this source code is governed by an MIT-style license that can be
  1757. * found in the LICENSE file at https://angular.io/license
  1758. */
  1759. /**
  1760. * @license
  1761. * Copyright Google Inc. All Rights Reserved.
  1762. *
  1763. * Use of this source code is governed by an MIT-style license that can be
  1764. * found in the LICENSE file at https://angular.io/license
  1765. */}).call(this,n(518))},function(t,e,n){"use strict";n.r(e),n.d(e,"A",function(){return B}),n.d(e,"ALT",function(){return u}),n.d(e,"APOSTROPHE",function(){return ae}),n.d(e,"AT_SIGN",function(){return U}),n.d(e,"B",function(){return z}),n.d(e,"BACKSLASH",function(){return le}),n.d(e,"BACKSPACE",function(){return r}),n.d(e,"C",function(){return G}),n.d(e,"CAPS_LOCK",function(){return p}),n.d(e,"CLOSE_SQUARE_BRACKET",function(){return ue}),n.d(e,"COMMA",function(){return ie}),n.d(e,"CONTEXT_MENU",function(){return mt}),n.d(e,"CONTROL",function(){return l}),n.d(e,"D",function(){return H}),n.d(e,"DASH",function(){return re}),n.d(e,"DELETE",function(){return A}),n.d(e,"DOWN_ARROW",function(){return x}),n.d(e,"E",function(){return W}),n.d(e,"EIGHT",function(){return L}),n.d(e,"END",function(){return v}),n.d(e,"ENTER",function(){return s}),n.d(e,"EQUALS",function(){return ne}),n.d(e,"ESCAPE",function(){return h}),n.d(e,"F",function(){return q}),n.d(e,"F1",function(){return kt}),n.d(e,"F10",function(){return Bt}),n.d(e,"F11",function(){return zt}),n.d(e,"F12",function(){return Gt}),n.d(e,"F2",function(){return Dt}),n.d(e,"F3",function(){return Rt}),n.d(e,"F4",function(){return Lt}),n.d(e,"F5",function(){return Nt}),n.d(e,"F6",function(){return jt}),n.d(e,"F7",function(){return Vt}),n.d(e,"F8",function(){return Ft}),n.d(e,"F9",function(){return Ut}),n.d(e,"FF_EQUALS",function(){return V}),n.d(e,"FF_MINUS",function(){return Kt}),n.d(e,"FF_MUTE",function(){return Jt}),n.d(e,"FF_SEMICOLON",function(){return j}),n.d(e,"FF_VOLUME_DOWN",function(){return Qt}),n.d(e,"FF_VOLUME_UP",function(){return te}),n.d(e,"FIRST_MEDIA",function(){return qt}),n.d(e,"FIVE",function(){return k}),n.d(e,"FOUR",function(){return I}),n.d(e,"G",function(){return K}),n.d(e,"H",function(){return X}),n.d(e,"HOME",function(){return y}),n.d(e,"I",function(){return Y}),n.d(e,"INSERT",function(){return C}),n.d(e,"J",function(){return Z}),n.d(e,"K",function(){return J}),n.d(e,"L",function(){return Q}),n.d(e,"LAST_MEDIA",function(){return $t}),n.d(e,"LEFT_ARROW",function(){return b}),n.d(e,"M",function(){return $}),n.d(e,"MAC_ENTER",function(){return i}),n.d(e,"MAC_META",function(){return pe}),n.d(e,"MAC_WK_CMD_LEFT",function(){return ft}),n.d(e,"MAC_WK_CMD_RIGHT",function(){return gt}),n.d(e,"META",function(){return ht}),n.d(e,"MUTE",function(){return Xt}),n.d(e,"N",function(){return tt}),n.d(e,"NINE",function(){return N}),n.d(e,"NUMPAD_DIVIDE",function(){return It}),n.d(e,"NUMPAD_EIGHT",function(){return Ct}),n.d(e,"NUMPAD_FIVE",function(){return xt}),n.d(e,"NUMPAD_FOUR",function(){return St}),n.d(e,"NUMPAD_MINUS",function(){return _t}),n.d(e,"NUMPAD_MULTIPLY",function(){return Tt}),n.d(e,"NUMPAD_NINE",function(){return At}),n.d(e,"NUMPAD_ONE",function(){return yt}),n.d(e,"NUMPAD_PERIOD",function(){return Pt}),n.d(e,"NUMPAD_PLUS",function(){return Ot}),n.d(e,"NUMPAD_SEVEN",function(){return Et}),n.d(e,"NUMPAD_SIX",function(){return Mt}),n.d(e,"NUMPAD_THREE",function(){return wt}),n.d(e,"NUMPAD_TWO",function(){return bt}),n.d(e,"NUMPAD_ZERO",function(){return vt}),n.d(e,"NUM_CENTER",function(){return a}),n.d(e,"NUM_LOCK",function(){return Ht}),n.d(e,"O",function(){return et}),n.d(e,"ONE",function(){return O}),n.d(e,"OPEN_SQUARE_BRACKET",function(){return ce}),n.d(e,"P",function(){return nt}),n.d(e,"PAGE_DOWN",function(){return m}),n.d(e,"PAGE_UP",function(){return g}),n.d(e,"PAUSE",function(){return d}),n.d(e,"PLUS_SIGN",function(){return M}),n.d(e,"PRINT_SCREEN",function(){return E}),n.d(e,"Q",function(){return it}),n.d(e,"QUESTION_MARK",function(){return F}),n.d(e,"R",function(){return rt}),n.d(e,"RIGHT_ARROW",function(){return S}),n.d(e,"S",function(){return ot}),n.d(e,"SCROLL_LOCK",function(){return Wt}),n.d(e,"SEMICOLON",function(){return ee}),n.d(e,"SEVEN",function(){return R}),n.d(e,"SHIFT",function(){return c}),n.d(e,"SINGLE_QUOTE",function(){return de}),n.d(e,"SIX",function(){return D}),n.d(e,"SLASH",function(){return oe}),n.d(e,"SPACE",function(){return f}),n.d(e,"T",function(){return at}),n.d(e,"TAB",function(){return o}),n.d(e,"THREE",function(){return P}),n.d(e,"TILDE",function(){return se}),n.d(e,"TWO",function(){return _}),n.d(e,"U",function(){return st}),n.d(e,"UP_ARROW",function(){return w}),n.d(e,"V",function(){return ct}),n.d(e,"VOLUME_DOWN",function(){return Yt}),n.d(e,"VOLUME_UP",function(){return Zt}),n.d(e,"W",function(){return lt}),n.d(e,"X",function(){return ut}),n.d(e,"Y",function(){return dt}),n.d(e,"Z",function(){return pt}),n.d(e,"ZERO",function(){return T}),n.d(e,"hasModifierKey",function(){return he});
  1766. /**
  1767. * @license
  1768. * Copyright Google LLC All Rights Reserved.
  1769. *
  1770. * Use of this source code is governed by an MIT-style license that can be
  1771. * found in the LICENSE file at https://angular.io/license
  1772. */
  1773. var i=3,r=8,o=9,a=12,s=13,c=16,l=17,u=18,d=19,p=20,h=27,f=32,g=33,m=34,v=35,y=36,b=37,w=38,S=39,x=40,M=43,E=44,C=45,A=46,T=48,O=49,_=50,P=51,I=52,k=53,D=54,R=55,L=56,N=57,j=59,V=61,F=63,U=64,B=65,z=66,G=67,H=68,W=69,q=70,K=71,X=72,Y=73,Z=74,J=75,Q=76,$=77,tt=78,et=79,nt=80,it=81,rt=82,ot=83,at=84,st=85,ct=86,lt=87,ut=88,dt=89,pt=90,ht=91,ft=91,gt=93,mt=93,vt=96,yt=97,bt=98,wt=99,St=100,xt=101,Mt=102,Et=103,Ct=104,At=105,Tt=106,Ot=107,_t=109,Pt=110,It=111,kt=112,Dt=113,Rt=114,Lt=115,Nt=116,jt=117,Vt=118,Ft=119,Ut=120,Bt=121,zt=122,Gt=123,Ht=144,Wt=145,qt=166,Kt=173,Xt=173,Yt=174,Zt=175,Jt=181,Qt=182,$t=183,te=183,ee=186,ne=187,ie=188,re=189,oe=191,ae=192,se=192,ce=219,le=220,ue=221,de=222,pe=224;
  1774. /**
  1775. * @license
  1776. * Copyright Google LLC All Rights Reserved.
  1777. *
  1778. * Use of this source code is governed by an MIT-style license that can be
  1779. * found in the LICENSE file at https://angular.io/license
  1780. */function he(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];return e.length?e.some(function(e){return t[e]}):t.altKey||t.shiftKey||t.ctrlKey||t.metaKey}
  1781. /**
  1782. * @license
  1783. * Copyright Google LLC All Rights Reserved.
  1784. *
  1785. * Use of this source code is governed by an MIT-style license that can be
  1786. * found in the LICENSE file at https://angular.io/license
  1787. */},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(16),o=n(6),a=n(0),s=n(0),c=function(){function t(){this.messageReceived=new r.Signal,this.message={title:"",body:""}}return t.prototype.showMessage=function(t,e,n){void 0===n&&(n=!1);var i=t&&e;this.message.title=t,this.message.body=e,this.renderAsPlainText=n,i&&this.messageReceived.emit()},t.ɵfac=function(e){return new(e||t)},t.ɵprov=s.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.MessageReportingService=c,s.ɵsetClassMetadata(c,[{type:a.Injectable,args:[{providedIn:"root"}]}],function(){return[]},null),i.module("IVWebApp").service("MessageReportingService",o.downgradeInjectable(c))},function(t,e,n){"use strict";n.d(e,"a",function(){return o});var i=n(1),r=n(26);function o(t,e){return function(n){if("function"!=typeof t)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return n.lift(new a(t,e))}}var a=function(){function t(t,e){this.project=t,this.thisArg=e}return t.prototype.call=function(t,e){return e.subscribe(new s(t,this.project,this.thisArg))},t}(),s=function(t){function e(e,n,i){var r=t.call(this,e)||this;return r.project=n,r.count=0,r.thisArg=i||r,r}return i.c(e,t),e.prototype._next=function(t){var e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(t){return void this.destination.error(t)}this.destination.next(e)},e}(r.a)},function(t,e,n){"use strict";n.d(e,"a",function(){return Z}),n.d(e,"b",function(){return E}),n.d(e,"c",function(){return x}),n.d(e,"d",function(){return z}),n.d(e,"e",function(){return X}),n.d(e,"f",function(){return I}),n.d(e,"g",function(){return C}),n.d(e,"h",function(){return q}),n.d(e,"i",function(){return P}),n.d(e,"j",function(){return Y}),n.d(e,"k",function(){return B}),n.d(e,"l",function(){return G});var i=n(3),r=n(0),o=n(1),a=n(32),s=n(33),c=n(93),l=n(60),u=n(535),d=n(623),p=n(165),h=n(62),f=n(221),g=n(23),m=n(13),v=n(170);function y(t,e){return(t.getAttribute(e)||"").match(/\S+/g)||[]}
  1788. /**
  1789. * @license
  1790. * Copyright Google LLC All Rights Reserved.
  1791. *
  1792. * Use of this source code is governed by an MIT-style license that can be
  1793. * found in the LICENSE file at https://angular.io/license
  1794. */var b=0,w=new Map,S=null,x=function(){function t(t){this._document=t}return t.prototype.describe=function(t,e){this._canBeDescribed(t,e)&&("string"!=typeof e?(this._setMessageId(e),w.set(e,{messageElement:e,referenceCount:0})):w.has(e)||this._createMessageElement(e),this._isElementDescribedByMessage(t,e)||this._addMessageReference(t,e))},t.prototype.removeDescription=function(t,e){if(this._isElementNode(t)){if(this._isElementDescribedByMessage(t,e)&&this._removeMessageReference(t,e),"string"==typeof e){var n=w.get(e);n&&0===n.referenceCount&&this._deleteMessageElement(e)}S&&0===S.childNodes.length&&this._deleteMessagesContainer()}},t.prototype.ngOnDestroy=function(){for(var t=this._document.querySelectorAll("[cdk-describedby-host]"),e=0;e<t.length;e++)this._removeCdkDescribedByReferenceIds(t[e]),t[e].removeAttribute("cdk-describedby-host");S&&this._deleteMessagesContainer(),w.clear()},t.prototype._createMessageElement=function(t){var e=this._document.createElement("div");this._setMessageId(e),e.textContent=t,this._createMessagesContainer(),S.appendChild(e),w.set(t,{messageElement:e,referenceCount:0})},t.prototype._setMessageId=function(t){t.id||(t.id="cdk-describedby-message-"+b++)},t.prototype._deleteMessageElement=function(t){var e=w.get(t),n=e&&e.messageElement;S&&n&&S.removeChild(n),w.delete(t)},t.prototype._createMessagesContainer=function(){if(!S){var t=this._document.getElementById("cdk-describedby-message-container");t&&t.parentNode.removeChild(t),(S=this._document.createElement("div")).id="cdk-describedby-message-container",S.setAttribute("aria-hidden","true"),S.style.display="none",this._document.body.appendChild(S)}},t.prototype._deleteMessagesContainer=function(){S&&S.parentNode&&(S.parentNode.removeChild(S),S=null)},t.prototype._removeCdkDescribedByReferenceIds=function(t){var e=y(t,"aria-describedby").filter(function(t){return 0!=t.indexOf("cdk-describedby-message")});t.setAttribute("aria-describedby",e.join(" "))},t.prototype._addMessageReference=function(t,e){var n,i,r,o,a=w.get(e);n=t,i="aria-describedby",r=a.messageElement.id,(o=y(n,i)).some(function(t){return t.trim()==r.trim()})||(o.push(r.trim()),n.setAttribute(i,o.join(" "))),t.setAttribute("cdk-describedby-host",""),a.referenceCount++},t.prototype._removeMessageReference=function(t,e){var n,i,r,o,a=w.get(e);a.referenceCount--,n=t,i="aria-describedby",r=a.messageElement.id,(o=y(n,i).filter(function(t){return t!=r.trim()})).length?n.setAttribute(i,o.join(" ")):n.removeAttribute(i),t.removeAttribute("cdk-describedby-host")},t.prototype._isElementDescribedByMessage=function(t,e){var n=y(t,"aria-describedby"),i=w.get(e),r=i&&i.messageElement.id;return!!r&&-1!=n.indexOf(r)},t.prototype._canBeDescribed=function(t,e){if(!this._isElementNode(t))return!1;if(e&&"object"==typeof e)return!0;var n=null==e?"":(""+e).trim(),i=t.getAttribute("aria-label");return!(!n||i&&i.trim()===n)},t.prototype._isElementNode=function(t){return t.nodeType===this._document.ELEMENT_NODE},t.ctorParameters=function(){return[{type:void 0,decorators:[{type:r.Inject,args:[i.DOCUMENT]}]}]},t.ɵprov=Object(r["ɵɵdefineInjectable"])({factory:function(){return new t(Object(r["ɵɵinject"])(i.DOCUMENT))},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)(r["ɵɵinject"](i.DOCUMENT))},t}(),M=function(){function t(t){var e=this;this._items=t,this._activeItemIndex=-1,this._activeItem=null,this._wrap=!1,this._letterKeyStream=new a.a,this._typeaheadSubscription=s.a.EMPTY,this._vertical=!0,this._allowedModifierKeys=[],this._skipPredicateFn=function(t){return t.disabled},this._pressedLetters=[],this.tabOut=new a.a,this.change=new a.a,t instanceof r.QueryList&&t.changes.subscribe(function(t){if(e._activeItem){var n=t.toArray().indexOf(e._activeItem);n>-1&&n!==e._activeItemIndex&&(e._activeItemIndex=n)}})}return t.prototype.skipPredicate=function(t){return this._skipPredicateFn=t,this},t.prototype.withWrap=function(t){return void 0===t&&(t=!0),this._wrap=t,this},t.prototype.withVerticalOrientation=function(t){return void 0===t&&(t=!0),this._vertical=t,this},t.prototype.withHorizontalOrientation=function(t){return this._horizontal=t,this},t.prototype.withAllowedModifierKeys=function(t){return this._allowedModifierKeys=t,this},t.prototype.withTypeAhead=function(t){var e=this;if(void 0===t&&(t=200),this._items.length&&this._items.some(function(t){return"function"!=typeof t.getLabel}))throw Error("ListKeyManager items in typeahead mode must implement the `getLabel` method.");return this._typeaheadSubscription.unsubscribe(),this._typeaheadSubscription=this._letterKeyStream.pipe(Object(u.a)(function(t){return e._pressedLetters.push(t)}),Object(d.a)(t),Object(p.a)(function(){return e._pressedLetters.length>0}),Object(h.a)(function(){return e._pressedLetters.join("")})).subscribe(function(t){for(var n=e._getItemsArray(),i=1;i<n.length+1;i++){var r=(e._activeItemIndex+i)%n.length,o=n[r];if(!e._skipPredicateFn(o)&&0===o.getLabel().toUpperCase().trim().indexOf(t)){e.setActiveItem(r);break}}e._pressedLetters=[]}),this},t.prototype.setActiveItem=function(t){var e=this._activeItemIndex;this.updateActiveItem(t),this._activeItemIndex!==e&&this.change.next(this._activeItemIndex)},t.prototype.onKeydown=function(t){var e=this,n=t.keyCode,i=["altKey","ctrlKey","metaKey","shiftKey"].every(function(n){return!t[n]||e._allowedModifierKeys.indexOf(n)>-1});switch(n){case l.TAB:return void this.tabOut.next();case l.DOWN_ARROW:if(this._vertical&&i){this.setNextItemActive();break}return;case l.UP_ARROW:if(this._vertical&&i){this.setPreviousItemActive();break}return;case l.RIGHT_ARROW:if(this._horizontal&&i){"rtl"===this._horizontal?this.setPreviousItemActive():this.setNextItemActive();break}return;case l.LEFT_ARROW:if(this._horizontal&&i){"rtl"===this._horizontal?this.setNextItemActive():this.setPreviousItemActive();break}return;default:return void((i||Object(l.hasModifierKey)(t,"shiftKey"))&&(t.key&&1===t.key.length?this._letterKeyStream.next(t.key.toLocaleUpperCase()):(n>=l.A&&n<=l.Z||n>=l.ZERO&&n<=l.NINE)&&this._letterKeyStream.next(String.fromCharCode(n))))}this._pressedLetters=[],t.preventDefault()},Object.defineProperty(t.prototype,"activeItemIndex",{get:function(){return this._activeItemIndex},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"activeItem",{get:function(){return this._activeItem},enumerable:!0,configurable:!0}),t.prototype.isTyping=function(){return this._pressedLetters.length>0},t.prototype.setFirstItemActive=function(){this._setActiveItemByIndex(0,1)},t.prototype.setLastItemActive=function(){this._setActiveItemByIndex(this._items.length-1,-1)},t.prototype.setNextItemActive=function(){this._activeItemIndex<0?this.setFirstItemActive():this._setActiveItemByDelta(1)},t.prototype.setPreviousItemActive=function(){this._activeItemIndex<0&&this._wrap?this.setLastItemActive():this._setActiveItemByDelta(-1)},t.prototype.updateActiveItem=function(t){var e=this._getItemsArray(),n="number"==typeof t?t:e.indexOf(t),i=e[n];this._activeItem=null==i?null:i,this._activeItemIndex=n},t.prototype._setActiveItemByDelta=function(t){this._wrap?this._setActiveInWrapMode(t):this._setActiveInDefaultMode(t)},t.prototype._setActiveInWrapMode=function(t){for(var e=this._getItemsArray(),n=1;n<=e.length;n++){var i=(this._activeItemIndex+t*n+e.length)%e.length,r=e[i];if(!this._skipPredicateFn(r))return void this.setActiveItem(i)}},t.prototype._setActiveInDefaultMode=function(t){this._setActiveItemByIndex(this._activeItemIndex+t,t)},t.prototype._setActiveItemByIndex=function(t,e){var n=this._getItemsArray();if(n[t]){for(;this._skipPredicateFn(n[t]);)if(!n[t+=e])return;this.setActiveItem(t)}},t.prototype._getItemsArray=function(){return this._items instanceof r.QueryList?this._items.toArray():this._items},t}(),E=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Object(o.c)(e,t),e.prototype.setActiveItem=function(e){this.activeItem&&this.activeItem.setInactiveStyles(),t.prototype.setActiveItem.call(this,e),this.activeItem&&this.activeItem.setActiveStyles()},e}(M),C=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._origin="program",e}return Object(o.c)(e,t),e.prototype.setFocusOrigin=function(t){return this._origin=t,this},e.prototype.setActiveItem=function(e){t.prototype.setActiveItem.call(this,e),this.activeItem&&this.activeItem.focus(this._origin)},e}(M),A=function(){function t(t){this._platform=t}return t.prototype.isDisabled=function(t){return t.hasAttribute("disabled")},t.prototype.isVisible=function(t){return function(t){return!!(t.offsetWidth||t.offsetHeight||"function"==typeof t.getClientRects&&t.getClientRects().length)}(t)&&"visible"===getComputedStyle(t).visibility},t.prototype.isTabbable=function(t){if(!this._platform.isBrowser)return!1;var e,n=function(t){try{return t.frameElement}catch(t){return null}}((e=t).ownerDocument&&e.ownerDocument.defaultView||window);if(n){var i=n&&n.nodeName.toLowerCase();if(-1===O(n))return!1;if((this._platform.BLINK||this._platform.WEBKIT)&&"object"===i)return!1;if((this._platform.BLINK||this._platform.WEBKIT)&&!this.isVisible(n))return!1}var r=t.nodeName.toLowerCase(),o=O(t);if(t.hasAttribute("contenteditable"))return-1!==o;if("iframe"===r)return!1;if("audio"===r){if(!t.hasAttribute("controls"))return!1;if(this._platform.BLINK)return!0}if("video"===r){if(!t.hasAttribute("controls")&&this._platform.TRIDENT)return!1;if(this._platform.BLINK||this._platform.FIREFOX)return!0}return("object"!==r||!this._platform.BLINK&&!this._platform.WEBKIT)&&!(this._platform.WEBKIT&&this._platform.IOS&&!function(t){var e=t.nodeName.toLowerCase(),n="input"===e&&t.type;return"text"===n||"password"===n||"select"===e||"textarea"===e}(t))&&t.tabIndex>=0},t.prototype.isFocusable=function(t){return function(t){return!function(t){return function(t){return"input"==t.nodeName.toLowerCase()}(t)&&"hidden"==t.type}(t)&&(function(t){var e=t.nodeName.toLowerCase();return"input"===e||"select"===e||"button"===e||"textarea"===e}(t)||function(t){return function(t){return"a"==t.nodeName.toLowerCase()}(t)&&t.hasAttribute("href")}(t)||t.hasAttribute("contenteditable")||T(t))}(t)&&!this.isDisabled(t)&&this.isVisible(t)},t.ctorParameters=function(){return[{type:m.a}]},t.ɵprov=Object(r["ɵɵdefineInjectable"])({factory:function(){return new t(Object(r["ɵɵinject"])(m.a))},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)(r["ɵɵinject"](m.a))},t}();function T(t){if(!t.hasAttribute("tabindex")||void 0===t.tabIndex)return!1;var e=t.getAttribute("tabindex");return"-32768"!=e&&!(!e||isNaN(parseInt(e,10)))}function O(t){if(!T(t))return null;var e=parseInt(t.getAttribute("tabindex")||"",10);return isNaN(e)?-1:e}
  1795. /**
  1796. * @license
  1797. * Copyright Google LLC All Rights Reserved.
  1798. *
  1799. * Use of this source code is governed by an MIT-style license that can be
  1800. * found in the LICENSE file at https://angular.io/license
  1801. */var _=function(){function t(t,e,n,i,r){var o=this;void 0===r&&(r=!1),this._element=t,this._checker=e,this._ngZone=n,this._document=i,this._hasAttached=!1,this.startAnchorListener=function(){return o.focusLastTabbableElement()},this.endAnchorListener=function(){return o.focusFirstTabbableElement()},this._enabled=!0,r||this.attachAnchors()}return Object.defineProperty(t.prototype,"enabled",{get:function(){return this._enabled},set:function(t){this._enabled=t,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(t,this._startAnchor),this._toggleAnchorTabIndex(t,this._endAnchor))},enumerable:!0,configurable:!0}),t.prototype.destroy=function(){var t=this._startAnchor,e=this._endAnchor;t&&(t.removeEventListener("focus",this.startAnchorListener),t.parentNode&&t.parentNode.removeChild(t)),e&&(e.removeEventListener("focus",this.endAnchorListener),e.parentNode&&e.parentNode.removeChild(e)),this._startAnchor=this._endAnchor=null},t.prototype.attachAnchors=function(){var t=this;return!!this._hasAttached||(this._ngZone.runOutsideAngular(function(){t._startAnchor||(t._startAnchor=t._createAnchor(),t._startAnchor.addEventListener("focus",t.startAnchorListener)),t._endAnchor||(t._endAnchor=t._createAnchor(),t._endAnchor.addEventListener("focus",t.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)},t.prototype.focusInitialElementWhenReady=function(){var t=this;return new Promise(function(e){t._executeOnStable(function(){return e(t.focusInitialElement())})})},t.prototype.focusFirstTabbableElementWhenReady=function(){var t=this;return new Promise(function(e){t._executeOnStable(function(){return e(t.focusFirstTabbableElement())})})},t.prototype.focusLastTabbableElementWhenReady=function(){var t=this;return new Promise(function(e){t._executeOnStable(function(){return e(t.focusLastTabbableElement())})})},t.prototype._getRegionBoundary=function(t){for(var e=this._element.querySelectorAll("[cdk-focus-region-"+t+"], [cdkFocusRegion"+t+"], [cdk-focus-"+t+"]"),n=0;n<e.length;n++)e[n].hasAttribute("cdk-focus-"+t)?console.warn("Found use of deprecated attribute 'cdk-focus-"+t+"', use 'cdkFocusRegion"+t+"' instead. The deprecated attribute will be removed in 8.0.0.",e[n]):e[n].hasAttribute("cdk-focus-region-"+t)&&console.warn("Found use of deprecated attribute 'cdk-focus-region-"+t+"', use 'cdkFocusRegion"+t+"' instead. The deprecated attribute will be removed in 8.0.0.",e[n]);return"start"==t?e.length?e[0]:this._getFirstTabbableElement(this._element):e.length?e[e.length-1]:this._getLastTabbableElement(this._element)},t.prototype.focusInitialElement=function(){var t=this._element.querySelector("[cdk-focus-initial], [cdkFocusInitial]");return t?(t.hasAttribute("cdk-focus-initial")&&console.warn("Found use of deprecated attribute 'cdk-focus-initial', use 'cdkFocusInitial' instead. The deprecated attribute will be removed in 8.0.0",t),Object(r.isDevMode)()&&!this._checker.isFocusable(t)&&console.warn("Element matching '[cdkFocusInitial]' is not focusable.",t),t.focus(),!0):this.focusFirstTabbableElement()},t.prototype.focusFirstTabbableElement=function(){var t=this._getRegionBoundary("start");return t&&t.focus(),!!t},t.prototype.focusLastTabbableElement=function(){var t=this._getRegionBoundary("end");return t&&t.focus(),!!t},t.prototype.hasAttached=function(){return this._hasAttached},t.prototype._getFirstTabbableElement=function(t){if(this._checker.isFocusable(t)&&this._checker.isTabbable(t))return t;for(var e=t.children||t.childNodes,n=0;n<e.length;n++){var i=e[n].nodeType===this._document.ELEMENT_NODE?this._getFirstTabbableElement(e[n]):null;if(i)return i}return null},t.prototype._getLastTabbableElement=function(t){if(this._checker.isFocusable(t)&&this._checker.isTabbable(t))return t;for(var e=t.children||t.childNodes,n=e.length-1;n>=0;n--){var i=e[n].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(e[n]):null;if(i)return i}return null},t.prototype._createAnchor=function(){var t=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,t),t.classList.add("cdk-visually-hidden"),t.classList.add("cdk-focus-trap-anchor"),t.setAttribute("aria-hidden","true"),t},t.prototype._toggleAnchorTabIndex=function(t,e){t?e.setAttribute("tabindex","0"):e.removeAttribute("tabindex")},t.prototype.toggleAnchors=function(t){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(t,this._startAnchor),this._toggleAnchorTabIndex(t,this._endAnchor))},t.prototype._executeOnStable=function(t){this._ngZone.isStable?t():this._ngZone.onStable.asObservable().pipe(Object(f.a)(1)).subscribe(t)},t}(),P=function(){function t(t,e,n){this._checker=t,this._ngZone=e,this._document=n}return t.prototype.create=function(t,e){return void 0===e&&(e=!1),new _(t,this._checker,this._ngZone,this._document,e)},t.ctorParameters=function(){return[{type:A},{type:r.NgZone},{type:void 0,decorators:[{type:r.Inject,args:[i.DOCUMENT]}]}]},t.ɵprov=Object(r["ɵɵdefineInjectable"])({factory:function(){return new t(Object(r["ɵɵinject"])(A),Object(r["ɵɵinject"])(r.NgZone),Object(r["ɵɵinject"])(i.DOCUMENT))},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)(r["ɵɵinject"](A),r["ɵɵinject"](r.NgZone),r["ɵɵinject"](i.DOCUMENT))},t}(),I=function(){function t(t,e,n){this._elementRef=t,this._focusTrapFactory=e,this._previouslyFocusedElement=null,this._document=n,this.focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement,!0)}return Object.defineProperty(t.prototype,"enabled",{get:function(){return this.focusTrap.enabled},set:function(t){this.focusTrap.enabled=Object(g.c)(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"autoCapture",{get:function(){return this._autoCapture},set:function(t){this._autoCapture=Object(g.c)(t)},enumerable:!0,configurable:!0}),t.prototype.ngOnDestroy=function(){this.focusTrap.destroy(),this._previouslyFocusedElement&&(this._previouslyFocusedElement.focus(),this._previouslyFocusedElement=null)},t.prototype.ngAfterContentInit=function(){this.focusTrap.attachAnchors(),this.autoCapture&&(this._previouslyFocusedElement=this._document.activeElement,this.focusTrap.focusInitialElementWhenReady())},t.prototype.ngDoCheck=function(){this.focusTrap.hasAttached()||this.focusTrap.attachAnchors()},t.ctorParameters=function(){return[{type:r.ElementRef},{type:P},{type:void 0,decorators:[{type:r.Inject,args:[i.DOCUMENT]}]}]},t.propDecorators={enabled:[{type:r.Input,args:["cdkTrapFocus"]}],autoCapture:[{type:r.Input,args:["cdkTrapFocusAutoCapture"]}]},t.ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.ElementRef),r["ɵɵdirectiveInject"](P),r["ɵɵdirectiveInject"](i.DOCUMENT))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","cdkTrapFocus",""]],inputs:{enabled:["cdkTrapFocus","enabled"],autoCapture:["cdkTrapFocusAutoCapture","autoCapture"]},exportAs:["cdkTrapFocus"]}),t}(),k=function(t){function e(e,n,i,r,o,a,s){var c=t.call(this,e,n,i,r,s.defer)||this;return c._focusTrapManager=o,c._inertStrategy=a,c._focusTrapManager.register(c),c}return Object(o.c)(e,t),Object.defineProperty(e.prototype,"enabled",{get:function(){return this._enabled},set:function(t){this._enabled=t,this._enabled?this._focusTrapManager.register(this):this._focusTrapManager.deregister(this)},enumerable:!0,configurable:!0}),e.prototype.destroy=function(){this._focusTrapManager.deregister(this),t.prototype.destroy.call(this)},e.prototype._enable=function(){this._inertStrategy.preventFocus(this),this.toggleAnchors(!0)},e.prototype._disable=function(){this._inertStrategy.allowFocus(this),this.toggleAnchors(!1)},e}(_);
  1802. /**
  1803. * @license
  1804. * Copyright Google LLC All Rights Reserved.
  1805. *
  1806. * Use of this source code is governed by an MIT-style license that can be
  1807. * found in the LICENSE file at https://angular.io/license
  1808. */var D="undefined"!=typeof Element&&!!Element.prototype.closest;function R(t,e){return t.matches?t.matches(e):t.msMatchesSelector(e)}
  1809. /**
  1810. * @license
  1811. * Copyright Google LLC All Rights Reserved.
  1812. *
  1813. * Use of this source code is governed by an MIT-style license that can be
  1814. * found in the LICENSE file at https://angular.io/license
  1815. */var L=function(){function t(){this._listener=null}return t.prototype.preventFocus=function(t){var e=this;this._listener&&t._document.removeEventListener("focus",this._listener,!0),this._listener=function(n){return e._trapFocus(t,n)},t._ngZone.runOutsideAngular(function(){t._document.addEventListener("focus",e._listener,!0)})},t.prototype.allowFocus=function(t){this._listener&&(t._document.removeEventListener("focus",this._listener,!0),this._listener=null)},t.prototype._trapFocus=function(t,e){var n=e.target,i=t._element;i.contains(n)||null!==function(t,e){if(!(t instanceof Node))return null;for(var n=t;null!=n&&!(n instanceof Element);)n=n.parentNode;return n&&(D?n.closest(e):function(t,e){for(var n=t;null!=n&&!(n instanceof Element&&R(n,e));)n=n.parentNode;return n||null}(n,e))}(n,"div.cdk-overlay-pane")||setTimeout(function(){t.enabled&&!i.contains(t._document.activeElement)&&t.focusFirstTabbableElement()})},t}(),N=function(){this.defer=!1},j=new r.InjectionToken("FOCUS_TRAP_INERT_STRATEGY"),V=function(){function t(){this._focusTrapStack=[]}return t.prototype.register=function(t){this._focusTrapStack=this._focusTrapStack.filter(function(e){return e!==t});var e=this._focusTrapStack;e.length&&e[e.length-1]._disable(),e.push(t),t._enable()},t.prototype.deregister=function(t){t._disable();var e=this._focusTrapStack,n=e.indexOf(t);-1!==n&&(e.splice(n,1),e.length&&e[e.length-1]._enable())},t.ɵprov=Object(r["ɵɵdefineInjectable"])({factory:function(){return new t},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)},t}(),F=(function(){function t(t,e,n,i,r){this._checker=t,this._ngZone=e,this._focusTrapManager=n,this._document=i,this._inertStrategy=r||new L}t.prototype.create=function(t,e){var n;return void 0===e&&(e=new N),"boolean"==typeof e?(n=new N).defer=e:n=e,new k(t,this._checker,this._ngZone,this._document,this._focusTrapManager,this._inertStrategy,n)},t.ctorParameters=function(){return[{type:A},{type:r.NgZone},{type:V},{type:void 0,decorators:[{type:r.Inject,args:[i.DOCUMENT]}]},{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[j]}]}]},t.ɵprov=Object(r["ɵɵdefineInjectable"])({factory:function(){return new t(Object(r["ɵɵinject"])(A),Object(r["ɵɵinject"])(r.NgZone),Object(r["ɵɵinject"])(V),Object(r["ɵɵinject"])(i.DOCUMENT),Object(r["ɵɵinject"])(j,8))},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)(r["ɵɵinject"](A),r["ɵɵinject"](r.NgZone),r["ɵɵinject"](V),r["ɵɵinject"](i.DOCUMENT),r["ɵɵinject"](j,8))}}(),new r.InjectionToken("liveAnnouncerElement",{providedIn:"root",factory:function(){return null}})),U=new r.InjectionToken("LIVE_ANNOUNCER_DEFAULT_OPTIONS"),B=function(){function t(t,e,n,i){this._ngZone=e,this._defaultOptions=i,this._document=n,this._liveElement=t||this._createLiveElement()}return t.prototype.announce=function(t){for(var e,n=this,i=[],r=1;r<arguments.length;r++)i[r-1]=arguments[r];var a,s,c=this._defaultOptions;return 1===i.length&&"number"==typeof i[0]?s=i[0]:(a=(e=Object(o.f)(i,2))[0],s=e[1]),this.clear(),clearTimeout(this._previousTimeout),a||(a=c&&c.politeness?c.politeness:"polite"),null==s&&c&&(s=c.duration),this._liveElement.setAttribute("aria-live",a),this._ngZone.runOutsideAngular(function(){return new Promise(function(e){clearTimeout(n._previousTimeout),n._previousTimeout=setTimeout(function(){n._liveElement.textContent=t,e(),"number"==typeof s&&(n._previousTimeout=setTimeout(function(){return n.clear()},s))},100)})})},t.prototype.clear=function(){this._liveElement&&(this._liveElement.textContent="")},t.prototype.ngOnDestroy=function(){clearTimeout(this._previousTimeout),this._liveElement&&this._liveElement.parentNode&&(this._liveElement.parentNode.removeChild(this._liveElement),this._liveElement=null)},t.prototype._createLiveElement=function(){for(var t=this._document.getElementsByClassName("cdk-live-announcer-element"),e=this._document.createElement("div"),n=0;n<t.length;n++)t[n].parentNode.removeChild(t[n]);return e.classList.add("cdk-live-announcer-element"),e.classList.add("cdk-visually-hidden"),e.setAttribute("aria-atomic","true"),e.setAttribute("aria-live","polite"),this._document.body.appendChild(e),e},t.ctorParameters=function(){return[{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[F]}]},{type:r.NgZone},{type:void 0,decorators:[{type:r.Inject,args:[i.DOCUMENT]}]},{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[U]}]}]},t.ɵprov=Object(r["ɵɵdefineInjectable"])({factory:function(){return new t(Object(r["ɵɵinject"])(F,8),Object(r["ɵɵinject"])(r.NgZone),Object(r["ɵɵinject"])(i.DOCUMENT),Object(r["ɵɵinject"])(U,8))},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)(r["ɵɵinject"](F,8),r["ɵɵinject"](r.NgZone),r["ɵɵinject"](i.DOCUMENT),r["ɵɵinject"](U,8))},t}(),z=function(){function t(t,e,n,i){this._elementRef=t,this._liveAnnouncer=e,this._contentObserver=n,this._ngZone=i,this._politeness="off"}return Object.defineProperty(t.prototype,"politeness",{get:function(){return this._politeness},set:function(t){var e=this;this._politeness="polite"===t||"assertive"===t?t:"off","off"===this._politeness?this._subscription&&(this._subscription.unsubscribe(),this._subscription=null):this._subscription||(this._subscription=this._ngZone.runOutsideAngular(function(){return e._contentObserver.observe(e._elementRef).subscribe(function(){var t=e._elementRef.nativeElement.textContent;t!==e._previousAnnouncedText&&(e._liveAnnouncer.announce(t,e._politeness),e._previousAnnouncedText=t)})}))},enumerable:!0,configurable:!0}),t.prototype.ngOnDestroy=function(){this._subscription&&this._subscription.unsubscribe()},t.ctorParameters=function(){return[{type:r.ElementRef},{type:B},{type:v.b},{type:r.NgZone}]},t.propDecorators={politeness:[{type:r.Input,args:["cdkAriaLive"]}]},t.ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.ElementRef),r["ɵɵdirectiveInject"](B),r["ɵɵdirectiveInject"](v.b),r["ɵɵdirectiveInject"](r.NgZone))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","cdkAriaLive",""]],inputs:{politeness:["cdkAriaLive","politeness"]},exportAs:["cdkAriaLive"]}),t}();
  1816. /**
  1817. * @license
  1818. * Copyright Google LLC All Rights Reserved.
  1819. *
  1820. * Use of this source code is governed by an MIT-style license that can be
  1821. * found in the LICENSE file at https://angular.io/license
  1822. */
  1823. /**
  1824. * @license
  1825. * Copyright Google LLC All Rights Reserved.
  1826. *
  1827. * Use of this source code is governed by an MIT-style license that can be
  1828. * found in the LICENSE file at https://angular.io/license
  1829. */
  1830. function G(t){return 0===t.buttons}
  1831. /**
  1832. * @license
  1833. * Copyright Google LLC All Rights Reserved.
  1834. *
  1835. * Use of this source code is governed by an MIT-style license that can be
  1836. * found in the LICENSE file at https://angular.io/license
  1837. */var H=new r.InjectionToken("cdk-focus-monitor-default-options"),W=Object(m.f)({passive:!0,capture:!0}),q=function(){function t(t,e,n,i){var r=this;this._ngZone=t,this._platform=e,this._origin=null,this._windowFocused=!1,this._elementInfo=new Map,this._monitoredElementCount=0,this._rootNodeFocusListenerCount=new Map,this._documentKeydownListener=function(){r._lastTouchTarget=null,r._setOriginForCurrentEventQueue("keyboard")},this._documentMousedownListener=function(t){if(!r._lastTouchTarget){var e=G(t)?"keyboard":"mouse";r._setOriginForCurrentEventQueue(e)}},this._documentTouchstartListener=function(t){null!=r._touchTimeoutId&&clearTimeout(r._touchTimeoutId),r._lastTouchTarget=K(t),r._touchTimeoutId=setTimeout(function(){return r._lastTouchTarget=null},650)},this._windowFocusListener=function(){r._windowFocused=!0,r._windowFocusTimeoutId=setTimeout(function(){return r._windowFocused=!1})},this._rootNodeFocusAndBlurListener=function(t){for(var e=K(t),n="focus"===t.type?r._onFocus:r._onBlur,i=e;i;i=i.parentElement)n.call(r,t,i)},this._document=n,this._detectionMode=(null==i?void 0:i.detectionMode)||0}return t.prototype.monitor=function(t,e){if(void 0===e&&(e=!1),!this._platform.isBrowser)return Object(c.a)(null);var n=Object(g.e)(t),i=Object(m.c)(n)||this._getDocument();if(this._elementInfo.has(n)){var r=this._elementInfo.get(n);return r.checkChildren=e,r.subject.asObservable()}var o={checkChildren:e,subject:new a.a,rootNode:i};return this._elementInfo.set(n,o),this._registerGlobalListeners(o),o.subject.asObservable()},t.prototype.stopMonitoring=function(t){var e=Object(g.e)(t),n=this._elementInfo.get(e);n&&(n.subject.complete(),this._setClasses(e),this._elementInfo.delete(e),this._removeGlobalListeners(n))},t.prototype.focusVia=function(t,e,n){var i=Object(g.e)(t);this._setOriginForCurrentEventQueue(e),"function"==typeof i.focus&&i.focus(n)},t.prototype.ngOnDestroy=function(){var t=this;this._elementInfo.forEach(function(e,n){return t.stopMonitoring(n)})},t.prototype._getDocument=function(){return this._document||document},t.prototype._getWindow=function(){return this._getDocument().defaultView||window},t.prototype._toggleClass=function(t,e,n){n?t.classList.add(e):t.classList.remove(e)},t.prototype._getFocusOrigin=function(t){return this._origin?this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:this._wasCausedByTouch(t)?"touch":"program"},t.prototype._setClasses=function(t,e){this._toggleClass(t,"cdk-focused",!!e),this._toggleClass(t,"cdk-touch-focused","touch"===e),this._toggleClass(t,"cdk-keyboard-focused","keyboard"===e),this._toggleClass(t,"cdk-mouse-focused","mouse"===e),this._toggleClass(t,"cdk-program-focused","program"===e)},t.prototype._setOriginForCurrentEventQueue=function(t){var e=this;this._ngZone.runOutsideAngular(function(){e._origin=t,0===e._detectionMode&&(e._originTimeoutId=setTimeout(function(){return e._origin=null},1))})},t.prototype._wasCausedByTouch=function(t){var e=K(t);return this._lastTouchTarget instanceof Node&&e instanceof Node&&(e===this._lastTouchTarget||e.contains(this._lastTouchTarget))},t.prototype._onFocus=function(t,e){var n=this._elementInfo.get(e);if(n&&(n.checkChildren||e===K(t))){var i=this._getFocusOrigin(t);this._setClasses(e,i),this._emitOrigin(n.subject,i),this._lastFocusOrigin=i}},t.prototype._onBlur=function(t,e){var n=this._elementInfo.get(e);!n||n.checkChildren&&t.relatedTarget instanceof Node&&e.contains(t.relatedTarget)||(this._setClasses(e),this._emitOrigin(n.subject,null))},t.prototype._emitOrigin=function(t,e){this._ngZone.run(function(){return t.next(e)})},t.prototype._registerGlobalListeners=function(t){var e=this;if(this._platform.isBrowser){var n=t.rootNode,i=this._rootNodeFocusListenerCount.get(n)||0;i||this._ngZone.runOutsideAngular(function(){n.addEventListener("focus",e._rootNodeFocusAndBlurListener,W),n.addEventListener("blur",e._rootNodeFocusAndBlurListener,W)}),this._rootNodeFocusListenerCount.set(n,i+1),1==++this._monitoredElementCount&&this._ngZone.runOutsideAngular(function(){var t=e._getDocument(),n=e._getWindow();t.addEventListener("keydown",e._documentKeydownListener,W),t.addEventListener("mousedown",e._documentMousedownListener,W),t.addEventListener("touchstart",e._documentTouchstartListener,W),n.addEventListener("focus",e._windowFocusListener)})}},t.prototype._removeGlobalListeners=function(t){var e=t.rootNode;if(this._rootNodeFocusListenerCount.has(e)){var n=this._rootNodeFocusListenerCount.get(e);n>1?this._rootNodeFocusListenerCount.set(e,n-1):(e.removeEventListener("focus",this._rootNodeFocusAndBlurListener,W),e.removeEventListener("blur",this._rootNodeFocusAndBlurListener,W),this._rootNodeFocusListenerCount.delete(e))}if(!--this._monitoredElementCount){var i=this._getDocument(),r=this._getWindow();i.removeEventListener("keydown",this._documentKeydownListener,W),i.removeEventListener("mousedown",this._documentMousedownListener,W),i.removeEventListener("touchstart",this._documentTouchstartListener,W),r.removeEventListener("focus",this._windowFocusListener),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._touchTimeoutId),clearTimeout(this._originTimeoutId)}},t.ctorParameters=function(){return[{type:r.NgZone},{type:m.a},{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[i.DOCUMENT]}]},{type:void 0,decorators:[{type:r.Optional},{type:r.Inject,args:[H]}]}]},t.ɵprov=Object(r["ɵɵdefineInjectable"])({factory:function(){return new t(Object(r["ɵɵinject"])(r.NgZone),Object(r["ɵɵinject"])(m.a),Object(r["ɵɵinject"])(i.DOCUMENT,8),Object(r["ɵɵinject"])(H,8))},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)(r["ɵɵinject"](r.NgZone),r["ɵɵinject"](m.a),r["ɵɵinject"](i.DOCUMENT,8),r["ɵɵinject"](H,8))},t}();function K(t){return t.composedPath?t.composedPath()[0]:t.target}var X=function(){function t(t,e){var n=this;this._elementRef=t,this._focusMonitor=e,this.cdkFocusChange=new r.EventEmitter,this._monitorSubscription=this._focusMonitor.monitor(this._elementRef,this._elementRef.nativeElement.hasAttribute("cdkMonitorSubtreeFocus")).subscribe(function(t){return n.cdkFocusChange.emit(t)})}return t.prototype.ngOnDestroy=function(){this._focusMonitor.stopMonitoring(this._elementRef),this._monitorSubscription.unsubscribe()},t.ctorParameters=function(){return[{type:r.ElementRef},{type:q}]},t.propDecorators={cdkFocusChange:[{type:r.Output}]},t.ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.ElementRef),r["ɵɵdirectiveInject"](q))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","cdkMonitorElementFocus",""],["","cdkMonitorSubtreeFocus",""]],outputs:{cdkFocusChange:"cdkFocusChange"}}),t}(),Y=function(){function t(t,e){this._platform=t,this._document=e}return t.prototype.getHighContrastMode=function(){if(!this._platform.isBrowser)return 0;var t=this._document.createElement("div");t.style.backgroundColor="rgb(1,2,3)",t.style.position="absolute",this._document.body.appendChild(t);var e=this._document.defaultView||window,n=e&&e.getComputedStyle?e.getComputedStyle(t):null,i=(n&&n.backgroundColor||"").replace(/ /g,"");switch(this._document.body.removeChild(t),i){case"rgb(0,0,0)":return 2;case"rgb(255,255,255)":return 1}return 0},t.prototype._applyBodyHighContrastModeCssClasses=function(){if(this._platform.isBrowser&&this._document.body){var t=this._document.body.classList;t.remove("cdk-high-contrast-active"),t.remove("cdk-high-contrast-black-on-white"),t.remove("cdk-high-contrast-white-on-black");var e=this.getHighContrastMode();1===e?(t.add("cdk-high-contrast-active"),t.add("cdk-high-contrast-black-on-white")):2===e&&(t.add("cdk-high-contrast-active"),t.add("cdk-high-contrast-white-on-black"))}},t.ctorParameters=function(){return[{type:m.a},{type:void 0,decorators:[{type:r.Inject,args:[i.DOCUMENT]}]}]},t.ɵprov=Object(r["ɵɵdefineInjectable"])({factory:function(){return new t(Object(r["ɵɵinject"])(m.a),Object(r["ɵɵinject"])(i.DOCUMENT))},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)(r["ɵɵinject"](m.a),r["ɵɵinject"](i.DOCUMENT))},t}(),Z=function(){function t(t){t._applyBodyHighContrastModeCssClasses()}return t.ctorParameters=function(){return[{type:Y}]},t.ɵmod=r["ɵɵdefineNgModule"]({type:t}),t.ɵinj=r["ɵɵdefineInjector"]({factory:function(e){return new(e||t)(r["ɵɵinject"](Y))},imports:[[m.b,v.c]]}),("undefined"==typeof ngJitMode||ngJitMode)&&r["ɵɵsetNgModuleScope"](t,{declarations:function(){return[z,I,X]},imports:function(){return[m.b,v.c]},exports:function(){return[z,I,X]}}),t}();
  1838. /**
  1839. * @license
  1840. * Copyright Google LLC All Rights Reserved.
  1841. *
  1842. * Use of this source code is governed by an MIT-style license that can be
  1843. * found in the LICENSE file at https://angular.io/license
  1844. */},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(256);var i=n(256),r=function(){function t(e){this.data={},this.data={},this.data[t.nameKey]=e}return t.prototype.submit=function(){i.GoogleTagManagerService.track(this.data)},t.prototype.withData=function(t,e){return this.data[t]=e,this},t.prototype.withCountData=function(t){return this.data[t]&&"number"==typeof this.data[t]?this.data[t]++:this.data[t]=1,this},Object.defineProperty(t.prototype,"eventData",{get:function(){return this.data},enumerable:!0,configurable:!0}),t.nameKey="event",t}();e.TrackingEvent=r},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(20);n(54);var o=n(16),a=n(25),s=n(0),c=n(6),l=(n(15),n(54),n(73),n(8)),u=(n(21),n(222)),d=(n(120),n(0)),p=n(15),h=n(54),f=n(73),g=n(21),m=n(120),v=function(){function t(t,e,n,i,r,a){this.ConfigService=t,this.LicenseService=e,this.UrlService=n,this.TrackingService=i,this.PointCloudMenuService=r,this.FeatureFlagsService=a,this.onShowPanoramasChanged=new o.Signal,this.onShowMeshesChanged=new o.Signal,this.onShowLocationMarkersChanged=new o.Signal,this.onShowNavGraphChanged=new o.Signal,this.config={vectorMapEditorEnabled:!1,enableMultiMeasurement:!1,showPanoramas:!0,showMeshes:!1,showNavGraph:!1,showLocationMarkers:!0,showPointCloudOptionEnabled:!0,showPointCloudAutomaticActivationOptionEnabled:!0,showPanoramasOptionEnabled:!0,showMeshesOptionEnabled:!0,showSecondaryViewOptionEnabled:!0,showLocationMarkersOptionEnabled:!0},this.activate(),this.registerEventCallbacks()}return t.prototype.showPanoramas=function(t,e){void 0===e&&(e=!1),this.config.showPanoramas!==t&&(e||this.TrackingService.trackRenderingModeChanged(u.RenderingMode.Panorama,t),this.config.showPanoramas=t,this.onShowPanoramasChanged.emit(t,e))},t.prototype.showMeshes=function(t){this.config.showMeshes=t,this.onShowMeshesChanged.emit(t)},t.prototype.showLocationMarkers=function(t){this.config.showLocationMarkers!==t&&(this.config.showLocationMarkers=t,this.onShowLocationMarkersChanged.emit(t))},t.prototype.showNavGraph=function(t){this.config.showNavGraph!==t&&(this.config.showNavGraph=t,this.onShowNavGraphChanged.emit(t))},t.prototype.registerEventCallbacks=function(){var t=this;this.PointCloudMenuService.configShowPanosInPerspectiveChanged.connect(function(e){return t.showPanoramas(e)}),this.PointCloudMenuService.configShowPointCloudChanged.connect(function(){return t.showMeshes(!1)}),this.onShowPanoramasChanged.connect(function(){return t.showMeshes(!1)}),this.onShowMeshesChanged.connect(function(e){e&&(t.showPanoramas(!1),t.PointCloudMenuService.showPointClouds(!1))})},t.prototype.activate=function(){var t=this;Promise.all([this.ConfigService.initialized,this.LicenseService.initialized]).then(function(){t.initConfig(),r.invalidateAngular()}).catch(l.handleWarning)},t.prototype.initConfig=function(){this.config.showPanoramas="true"!==this.UrlService.getParamFromUrl(this.ConfigService.getAliasByName(a.Configs.LAYERS_POINTCLOUD_VISIBLE))&&this.ConfigService.getBoolean(a.Configs.LAYERS_PANORAMAS_VISIBLE,this.config.showPanoramas),this.config.showLocationMarkers=this.ConfigService.getBoolean(a.Configs.LAYERS_LOCATIONS_VISIBLE,this.config.showLocationMarkers)},t.ɵfac=function(e){return new(e||t)(d.ɵɵinject(p.ConfigService),d.ɵɵinject(h.LicenseService),d.ɵɵinject(f.UrlService),d.ɵɵinject(g.TrackingService),d.ɵɵinject("PointCloudMenuService"),d.ɵɵinject(m.FeatureFlagsService))},t.ɵprov=d.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.ViewMenuService=v,d.ɵsetClassMetadata(v,[{type:s.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:p.ConfigService},{type:h.LicenseService},{type:f.UrlService},{type:g.TrackingService},{type:void 0,decorators:[{type:s.Inject,args:["PointCloudMenuService"]}]},{type:m.FeatureFlagsService}]},null),i.module("IVWebApp").service("ViewMenuService",c.downgradeInjectable(v))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(380),o=n(4),a=n(531),s=n(533),c=n(382),l=n(7),u=n(1047),d=n(1048),p=n(16),h=n(381),f=n(532),g=n(144),m=n(6),v=n(0),y=n(0),b=function(){function t(){this.EPSG_4326="EPSG:4326",this.NAVVIS_PREFIX="NAVVIS",this.NAVVIS_LOCAL=this.NAVVIS_PREFIX+":LOCAL",this.crsGlobal=new r.ReferenceSystem(!0,this.EPSG_4326,"WGS 84"),this.onBeforeLocalReferenceSystemChange=new p.Signal,this.onAfterLocalReferenceSystemChange=new p.Signal,this.NAVVIS_TMERC=this.NAVVIS_PREFIX+":TMERC",this.crsCache={},this.transformMap=new Map,this.geodeticTransforms=[],this.localReferenceSystemReadyDefer=new g.Deferred,this.localReferenceSystemReady=this.localReferenceSystemReadyDefer.promise}return t.prototype.registerReferenceSystem=function(t){if(t.name in this.crsCache)throw new h.DuplicateReferenceSystemException('Reference system "'+t.name+'" is already registered');this.crsCache[t.name]=t},t.prototype.unregisterReferenceSystem=function(t){delete this.crsCache[t.name]},t.prototype.getReferenceSystem=function(t){if(t in this.crsCache)return this.crsCache[t];if(t.startsWith("EPSG:")){if(!f.proj4Factory.defs(t))throw new h.ReferenceSystemNotFoundException('Proj.4 cannot find reference system "'+t+'"');var e=new r.ReferenceSystem(!0,t);return this.registerReferenceSystem(e),e}throw new h.ReferenceSystemNotFoundException('Cannot find reference system "'+t+'"')},Object.defineProperty(t.prototype,"referenceSystems",{get:function(){return l.values(this.crsCache)},enumerable:!0,configurable:!0}),t.prototype.registerTransform=function(t){if(t.source.geodetic&&t.target.geodetic)throw new h.RedundantTransformException("Purely geodetic transform is redundant");var e=this.transformMap.get(t.source);if(e&&e.some(function(e){return e.target===t.target}))throw new h.DuplicateTransformException('A transform between "'+t.source.name+'" and "'+t.target.name+'" already exists');t.source.geodetic||this.addToTransformMap(t.source,t),t.target.geodetic||this.addToTransformMap(t.target,t),(t.source.geodetic||t.target.geodetic)&&this.geodeticTransforms.push(t)},t.prototype.unregisterTransform=function(t){t.source.geodetic||this.deleteFromTransformMap(t.source,t),t.target.geodetic||this.deleteFromTransformMap(t.target,t),(t.source.geodetic||t.target.geodetic)&&(this.geodeticTransforms=this.geodeticTransforms.filter(function(e){return e!==t}))},t.prototype.addToTransformMap=function(t,e){var n=this.transformMap.get(t);n||(n=[],this.transformMap.set(t,n)),n.push(e)},t.prototype.deleteFromTransformMap=function(t,e){var n=this.transformMap.get(t);n&&((n=n.filter(function(t){return t!==e})).length>0?this.transformMap.set(t,n):this.transformMap.delete(t))},t.prototype.getTransform=function(t,e){return t===e?new u.IdentityTransform(t):t.geodetic&&e.geodetic?new a.GeodeticTransform(t,e):t.name===this.NAVVIS_LOCAL&&e.name===this.EPSG_4326?this._localToGlobal:t.name===this.EPSG_4326&&e.name===this.NAVVIS_LOCAL?this._globalToLocal:this.findTransform(t,e)},t.prototype.findTransform=function(t,e){var n,i=[];for(this.expandNode(t,i);i.length>0;){var r=i.shift();if(e.geodetic&&r.target.geodetic||r.target===e){n=r;break}this.expandNode(r.target,i,r)}if(!n)throw new h.TransformNotFoundException('Transform from "'+t.name+'" to "'+e.name+'" not found');return n.createGeodeticTransforms(t,e),n.getTransformationChain()},t.prototype.expandNode=function(t,e,n){var i=t.geodetic?this.geodeticTransforms:this.transformMap.get(t);if(i)for(var r=0,o=i;r<o.length;r++){var a=o[r],s=t.geodetic&&a.target.geodetic||t===a.target?a.getInverse():a;n&&n.contains(s.target)||e.push(new d.CandidateChain(s,n))}},t.prototype.setLocalCoordinateSystem=function(t,e){var n="+proj=tmerc +ellps=WGS84 +lon_0="+t.x.toPrecision(15)+" +lat_0="+t.y.toPrecision(15),i=new r.ReferenceSystem(!1,this.NAVVIS_LOCAL,"Local working coordinate system"),l=new r.ReferenceSystem(!0,this.NAVVIS_TMERC,"Transverse Mercator around local origin",n),u=new o.Matrix4;e&&u.makeRotationFromQuaternion(e),u.setPosition(new o.Vector3(0,0,t.z));var d=new s.TransformChain([new c.AffineTransform(i,l,u),new a.GeodeticTransform(l,this.crsGlobal)]),p=d.getInverse();this.setLocalCoordinateSystemState({crsLocal:i,globalToLocal:p,localToGlobal:d}),this.localReferenceSystemReadyDefer.resolve()},t.prototype.setLocalCoordinateSystemState=function(t){this.unsetLocalCoordinateSystem(),this._crsLocal=t.crsLocal,this._globalToLocal=t.globalToLocal,this._localToGlobal=t.localToGlobal,this.registerReferenceSystem(t.crsLocal),this.registerTransform(t.localToGlobal),this.onAfterLocalReferenceSystemChange.emit()},t.prototype.getLocalCoordinateSystemState=function(){return{crsLocal:this._crsLocal,globalToLocal:this._globalToLocal,localToGlobal:this._localToGlobal}},t.prototype.unsetLocalCoordinateSystem=function(){this._localToGlobal&&(this.onBeforeLocalReferenceSystemChange.emit(),this.unregisterReferenceSystem(this._crsLocal),this.unregisterTransform(this._localToGlobal),this._localToGlobal=void 0,this._globalToLocal=void 0)},t.prototype.haveLocalCoordinateSystem=function(){return void 0!==this._localToGlobal},Object.defineProperty(t.prototype,"crsLocal",{get:function(){return this._crsLocal},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"localToGlobal",{get:function(){return this._localToGlobal},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"globalToLocal",{get:function(){return this._globalToLocal},enumerable:!0,configurable:!0}),t.prototype.getTemporaryTransform=function(t,e){var n="+proj=tmerc +ellps=WGS84 +lon_0="+t+" +lat_0="+e,i=new r.ReferenceSystem(!0,"temp",void 0,n);return new a.GeodeticTransform(this.crsGlobal,i)},t.ɵfac=function(e){return new(e||t)},t.ɵprov=y.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.TransformService=b,y.ɵsetClassMetadata(b,[{type:v.Injectable,args:[{providedIn:"root"}]}],function(){return[]},null),i.module("IVWebApp").service("TransformService",m.downgradeInjectable(b))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),r=n(108),o=n(157),a=new i.Frustum,s=new i.Matrix4,c=new i.Vector3,l=new i.Vector3;function u(t,e,n){void 0===n&&(n=.01);for(var i=e.clone().sub(t),r=i.length(),o=Math.floor(r/n),a=o*n,s=r/n-o!=0,c=i.clone().clampLength(0,a).multiplyScalar(1/o),l=[],u=0;u<=o;u++)l.push(t.clone().add(c.clone().multiplyScalar(u)));return s&&l.push(e),l}e.setMeshScreenSize=function(t,e,n,o,u){var d=t.getCamera(),p=t.getWidth(),h=function(t,e,n,i){(n&&e>1||i&&e<1)&&(e=1),t.scale.set(e*t.scale.x/t.scale.y,e,e*t.scale.z/t.scale.y)};if(e instanceof Array||(e=[e]),d instanceof i.PerspectiveCamera){a.setFromProjectionMatrix(s.multiplyMatrices(d.projectionMatrix,d.matrixWorldInverse));for(var f=0,g=e;f<g.length;f++)(b=g[f]).updateMatrix(),b.updateMatrixWorld(!1),a.intersectsObject(b)&&(c.set(0,0,0).applyMatrix4(b.matrixWorld),l.copy(c).project(d),isFinite(l.x)&&(l.x+=n/p,l.unproject(d),h(b,l.distanceTo(c)/b.geometry.boundingSphere.radius,o,u)))}else{if(!(d instanceof i.OrthographicCamera))throw new r.IVFrontendException("Unsupported camera type");for(var m=d.right-d.left,v=0,y=e;v<y.length;v++){var b;(b=y[v]).geometry.boundingSphere||b.geometry.computeBoundingSphere(),h(b,n/2/p*m/b.geometry.boundingSphere.radius,o,u)}}},e.drawRect=function(t,e,n,i,r,o,a,s){void 0===a&&(a=!0),void 0===s&&(s=!1),t.beginPath(),t.moveTo(e+o,n),t.lineTo(e+i-o,n),t.quadraticCurveTo(e+i,n,e+i,n+o),t.lineTo(e+i,n+r-o),t.quadraticCurveTo(e+i,n+r,e+i-o,n+r),t.lineTo(e+o,n+r),t.quadraticCurveTo(e,n+r,e,n+r-o),t.lineTo(e,n+o),t.quadraticCurveTo(e,n,e+o,n),t.closePath(),a&&t.fill(),s&&t.stroke()},e.dataURItoBlob=function(t){for(var e=atob(t.split(",")[1]),n=t.split(",")[0].split(":")[1].split(";")[0],i=new ArrayBuffer(e.length),r=new Uint8Array(i),o=0;o<e.length;++o)r[o]=e.charCodeAt(o);var a=new DataView(i);return new Blob([a],{type:n})},e.nearestPow2=function(t,e){var n=Math.pow(2,Math.round(Math.log(t)/Math.log(2)));return"floor"===e&&n>t?n>>=1:"ceiling"===e&&n<t&&(n<<=1),n},e.getMeasuredVertices=u,e.createMeasuredLine=function(t,e,n){void 0===n&&(n=.01);var r=new i.Geometry;return r.vertices=u(t,e,n),r},e.removeChildrenOfObject3D=function(t){for(var e=0,n=t.children;e<n.length;e++){var r=n[e];r instanceof i.Mesh&&(r.material instanceof i.MeshBasicMaterial&&r.material.map.dispose(),o.disposeMeshMaterial(r),r.geometry.dispose())}t.children.length=0},e.calcCamParamsToFitBoxIntoScreen=function(t,e,n,r,o,a,s){void 0===r&&(r=25),void 0===o&&(o=25),void 0===a&&(a=25),void 0===s&&(s=25);var c=Math.abs(t.max.x-t.min.x),l=Math.abs(t.max.y-t.min.y),u=e-(a+s),d=n-(o+r),p=Math.max(c,l)/Math.min(u,d),h=t.getCenter(new i.Vector3);return h.y-=(o-r)/2*p,h.x-=(a-s)/2*p,{position:h,resolution:p}};e.PanningCameraParameters=function(){}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t[t.NO=0]="NO",t[t.YES=1]="YES",t[t.INVALID=2]="INVALID"}(e.NavGraphEditingConstantsEdgeExists||(e.NavGraphEditingConstantsEdgeExists={})),function(t){t[t.CURRENT=0]="CURRENT",t[t.PREVIOUS=1]="PREVIOUS",t[t.NOT_SELECTED=-1]="NOT_SELECTED"}(e.NavGraphEditingConstantsSelectedNode||(e.NavGraphEditingConstantsSelectedNode={})),function(t){t.EDGE="edge",t.NODE="node",t.SPLIT="split",t.PATH="path"}(e.NavGraphEditingConstantsType||(e.NavGraphEditingConstantsType={})),function(t){t[t.GREEN=49152]="GREEN",t[t.LIGHT_LIGHT_BLUE=15132415]="LIGHT_LIGHT_BLUE",t[t.LIGHT_BLUE=8421631]="LIGHT_BLUE",t[t.DARK_BLUE=255]="DARK_BLUE",t[t.RED=16711680]="RED"}(e.NavGraphEditingConstantsNodeColors||(e.NavGraphEditingConstantsNodeColors={})),function(t){t[t.NODE_EDITING=0]="NODE_EDITING",t[t.PATH_DRAWING=1]="PATH_DRAWING"}(e.NavGraphEditingConstantsModes||(e.NavGraphEditingConstantsModes={})),e.DEFAULT_CAMERA_HEIGHT=1.9},function(t,e,n){"use strict";n.d(e,"a",function(){return d}),n.d(e,"b",function(){return h}),n.d(e,"c",function(){return g}),n.d(e,"d",function(){return c}),n.d(e,"e",function(){return p}),n.d(e,"f",function(){return m}),n.d(e,"g",function(){return v}),n.d(e,"h",function(){return l});var i=n(1),r=n(0),o=n(3);function a(){throw Error("Host already has a portal attached")}
  1845. /**
  1846. * @license
  1847. * Copyright Google LLC All Rights Reserved.
  1848. *
  1849. * Use of this source code is governed by an MIT-style license that can be
  1850. * found in the LICENSE file at https://angular.io/license
  1851. */var s=function(){function t(){}return t.prototype.attach=function(t){return null==t&&function(){throw Error("Attempting to attach a portal to a null PortalOutlet")}(),t.hasAttached()&&a(),this._attachedHost=t,t.attach(this)},t.prototype.detach=function(){var t=this._attachedHost;null==t?function(){throw Error("Attempting to detach a portal that is not attached to a host")}():(this._attachedHost=null,t.detach())},Object.defineProperty(t.prototype,"isAttached",{get:function(){return null!=this._attachedHost},enumerable:!0,configurable:!0}),t.prototype.setAttachedHost=function(t){this._attachedHost=t},t}(),c=function(t){function e(e,n,i,r){var o=t.call(this)||this;return o.component=e,o.viewContainerRef=n,o.injector=i,o.componentFactoryResolver=r,o}return Object(i.c)(e,t),e}(s),l=function(t){function e(e,n,i){var r=t.call(this)||this;return r.templateRef=e,r.viewContainerRef=n,r.context=i,r}return Object(i.c)(e,t),Object.defineProperty(e.prototype,"origin",{get:function(){return this.templateRef.elementRef},enumerable:!0,configurable:!0}),e.prototype.attach=function(e,n){return void 0===n&&(n=this.context),this.context=n,t.prototype.attach.call(this,e)},e.prototype.detach=function(){return this.context=void 0,t.prototype.detach.call(this)},e}(s),u=function(t){function e(e){var n=t.call(this)||this;return n.element=e instanceof r.ElementRef?e.nativeElement:e,n}return Object(i.c)(e,t),e}(s),d=function(){function t(){this._isDisposed=!1,this.attachDomPortal=null}return t.prototype.hasAttached=function(){return!!this._attachedPortal},t.prototype.attach=function(t){return t||
  1852. /**
  1853. * @license
  1854. * Copyright Google LLC All Rights Reserved.
  1855. *
  1856. * Use of this source code is governed by an MIT-style license that can be
  1857. * found in the LICENSE file at https://angular.io/license
  1858. */
  1859. function(){throw Error("Must provide a portal to attach")}(),this.hasAttached()&&a(),this._isDisposed&&function(){throw Error("This PortalOutlet has already been disposed")}(),t instanceof c?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof l?(this._attachedPortal=t,this.attachTemplatePortal(t)):this.attachDomPortal&&t instanceof u?(this._attachedPortal=t,this.attachDomPortal(t)):void function(){throw Error("Attempting to attach an unknown Portal type. BasePortalOutlet accepts either a ComponentPortal or a TemplatePortal.")}()},t.prototype.detach=function(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()},t.prototype.dispose=function(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0},t.prototype.setDisposeFn=function(t){this._disposeFn=t},t.prototype._invokeDisposeFn=function(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)},t}(),p=(function(t){Object(i.c)(function(){return null!==t&&t.apply(this,arguments)||this},t)}(d),function(t){function e(e,n,i,r,o){var a=t.call(this)||this;return a.outletElement=e,a._componentFactoryResolver=n,a._appRef=i,a._defaultInjector=r,a.attachDomPortal=function(e){if(!a._document)throw Error("Cannot attach DOM portal without _document constructor parameter");var n=e.element;if(!n.parentNode)throw Error("DOM portal content must be attached to a parent node.");var i=a._document.createComment("dom-portal");n.parentNode.insertBefore(i,n),a.outletElement.appendChild(n),t.prototype.setDisposeFn.call(a,function(){i.parentNode&&i.parentNode.replaceChild(n,i)})},a._document=o,a}return Object(i.c)(e,t),e.prototype.attachComponentPortal=function(t){var e,n=this,i=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);return t.viewContainerRef?(e=t.viewContainerRef.createComponent(i,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(function(){return e.destroy()})):(e=i.create(t.injector||this._defaultInjector),this._appRef.attachView(e.hostView),this.setDisposeFn(function(){n._appRef.detachView(e.hostView),e.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(e)),e},e.prototype.attachTemplatePortal=function(t){var e=this,n=t.viewContainerRef,i=n.createEmbeddedView(t.templateRef,t.context);return i.detectChanges(),i.rootNodes.forEach(function(t){return e.outletElement.appendChild(t)}),this.setDisposeFn(function(){var t=n.indexOf(i);-1!==t&&n.remove(t)}),i},e.prototype.dispose=function(){t.prototype.dispose.call(this),null!=this.outletElement.parentNode&&this.outletElement.parentNode.removeChild(this.outletElement)},e.prototype._getComponentRootNode=function(t){return t.hostView.rootNodes[0]},e}(d)),h=(function(t){Object(i.c)(function(){return null!==t&&t.apply(this,arguments)||this},t)}(p),function(t){function e(e,n){return t.call(this,e,n)||this}return Object(i.c)(e,t),e.ctorParameters=function(){return[{type:r.TemplateRef},{type:r.ViewContainerRef}]},e.ɵfac=function(t){return new(t||e)(r["ɵɵdirectiveInject"](r.TemplateRef),r["ɵɵdirectiveInject"](r.ViewContainerRef))},e.ɵdir=r["ɵɵdefineDirective"]({type:e,selectors:[["","cdkPortal",""]],exportAs:["cdkPortal"],features:[r["ɵɵInheritDefinitionFeature"]]}),e}(l)),f=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}Object(i.c)(e,t),e.ɵfac=function(t){return n(t||e)},e.ɵdir=r["ɵɵdefineDirective"]({type:e,selectors:[["","cdk-portal",""],["","portal",""]],exportAs:["cdkPortal"],features:[r["ɵɵProvidersFeature"]([{provide:h,useExisting:e}]),r["ɵɵInheritDefinitionFeature"]]});var n=r["ɵɵgetInheritedFactory"](e);return e}(h),g=function(t){function e(e,n,i){var o=t.call(this)||this;return o._componentFactoryResolver=e,o._viewContainerRef=n,o._isInitialized=!1,o.attached=new r.EventEmitter,o.attachDomPortal=function(e){if(!o._document)throw Error("Cannot attach DOM portal without _document constructor parameter");var n=e.element;if(!n.parentNode)throw Error("DOM portal content must be attached to a parent node.");var i=o._document.createComment("dom-portal");e.setAttachedHost(o),n.parentNode.insertBefore(i,n),o._getRootNode().appendChild(n),t.prototype.setDisposeFn.call(o,function(){i.parentNode&&i.parentNode.replaceChild(n,i)})},o._document=i,o}return Object(i.c)(e,t),Object.defineProperty(e.prototype,"portal",{get:function(){return this._attachedPortal},set:function(e){(!this.hasAttached()||e||this._isInitialized)&&(this.hasAttached()&&t.prototype.detach.call(this),e&&t.prototype.attach.call(this,e),this._attachedPortal=e)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"attachedRef",{get:function(){return this._attachedRef},enumerable:!0,configurable:!0}),e.prototype.ngOnInit=function(){this._isInitialized=!0},e.prototype.ngOnDestroy=function(){t.prototype.dispose.call(this),this._attachedPortal=null,this._attachedRef=null},e.prototype.attachComponentPortal=function(e){e.setAttachedHost(this);var n=null!=e.viewContainerRef?e.viewContainerRef:this._viewContainerRef,i=(e.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(e.component),r=n.createComponent(i,n.length,e.injector||n.injector);return n!==this._viewContainerRef&&this._getRootNode().appendChild(r.hostView.rootNodes[0]),t.prototype.setDisposeFn.call(this,function(){return r.destroy()}),this._attachedPortal=e,this._attachedRef=r,this.attached.emit(r),r},e.prototype.attachTemplatePortal=function(e){var n=this;e.setAttachedHost(this);var i=this._viewContainerRef.createEmbeddedView(e.templateRef,e.context);return t.prototype.setDisposeFn.call(this,function(){return n._viewContainerRef.clear()}),this._attachedPortal=e,this._attachedRef=i,this.attached.emit(i),i},e.prototype._getRootNode=function(){var t=this._viewContainerRef.element.nativeElement;return t.nodeType===t.ELEMENT_NODE?t:t.parentNode},e.ctorParameters=function(){return[{type:r.ComponentFactoryResolver},{type:r.ViewContainerRef},{type:void 0,decorators:[{type:r.Inject,args:[o.DOCUMENT]}]}]},e.propDecorators={attached:[{type:r.Output}]},e.ɵfac=function(t){return new(t||e)(r["ɵɵdirectiveInject"](r.ComponentFactoryResolver),r["ɵɵdirectiveInject"](r.ViewContainerRef),r["ɵɵdirectiveInject"](o.DOCUMENT))},e.ɵdir=r["ɵɵdefineDirective"]({type:e,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:["cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],features:[r["ɵɵInheritDefinitionFeature"]]}),e}(d),m=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}Object(i.c)(e,t),e.ɵfac=function(t){return n(t||e)},e.ɵdir=r["ɵɵdefineDirective"]({type:e,selectors:[["","cdkPortalHost",""],["","portalHost",""]],inputs:{portal:["cdkPortalHost","portal"]},exportAs:["cdkPortalHost"],features:[r["ɵɵProvidersFeature"]([{provide:g,useExisting:e}]),r["ɵɵInheritDefinitionFeature"]]});var n=r["ɵɵgetInheritedFactory"](e);return e}(g),v=function(){function t(){}return t.ɵmod=r["ɵɵdefineNgModule"]({type:t}),t.ɵinj=r["ɵɵdefineInjector"]({factory:function(e){return new(e||t)}}),("undefined"==typeof ngJitMode||ngJitMode)&&r["ɵɵsetNgModuleScope"](t,{declarations:[h,g,f,m],exports:[h,g,f,m]}),t}()},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(7),r=n(16);n(9);var o=n(20),a=n(523),s=n(144),c=n(8),l=function(){function t(t,e){this.DomainType=t,this.RestService=e,this.data=[],this.dataMap={},this.entityCreated=new r.Signal,this.entityRemoved=new r.Signal,this.entityChanged=new r.Signal,this.injectables={},this.requestCache={},this.initDefer=new s.Deferred,this.initialized=this.initDefer.promise}return t.prototype.findAll=function(t,e){var n=this;if(void 0===t&&(t=!1),void 0===e&&(e=!0),t||!this.cached){var i=!!this.cached;this.cached=this._findAll({},e).then(function(t){return n.updateData(t),n.data}),i||this.cached.then(function(){return n.initDefer.resolve()}).catch(function(t){c.handleWarning(t),n.initDefer.reject()})}return this.cached},t.prototype.find=function(t,e){var n=this;return void 0===e&&(e=!0),this._findAll(t,e).then(function(t){return n.cacheEntities(t)})},t.prototype.findOne=function(t,e,n){var i=this;return void 0===e&&(e=!1),void 0===n&&(n=!0),e||!this.dataMap[t]?this._findOne(t,{},n).then(function(e){return i.cacheEntities([e]),i.dataMap[t]}):Promise.resolve(this.dataMap[t])},t.prototype.filter=function(t,e,n){var i=this;void 0===e&&(e=!0),void 0===n&&(n=!1);var r=t.toData(),o=JSON.stringify(r),a=this.requestCache[o];return a?Promise.resolve(a):this._filter(r,e,n).then(function(t){var e=i.cacheEntities(t);return i.requestCache[o]=e,e})},t.prototype.count=function(t,e){void 0===t&&(t=new a.RestFilter),void 0===e&&(e=!0);var n=t.toData();return this._count(n,e)},t.prototype.create=function(t){if(!this.DomainType)throw new Error("Please override the create method. DomainType has not been provided in the constructor, thus you most likely need to inspect the dto parameter to understand which domain object should be created");return new this.DomainType(this.injectables,this.entityChanged)},t.prototype.createFromData=function(t){var e=this.create(t);return e.fillFromData(t),e},t.prototype.save=function(t,e){var n=this;void 0===e&&(e=!0);var r=t instanceof Array?t:[t],o=i.groupBy(r,function(t){return void 0!==t.id?"update":"create"}),a=[];return o.hasOwnProperty("create")&&o.create.length>0&&a.push(this._save(o.create,e)),o.hasOwnProperty("update")&&o.update.length>0&&a.push(this._update(o.update,e)),Promise.all(a).then(function(t){return n.resetRequestCache(),n.cacheEntities(i.flatten(t))})},t.prototype.remove=function(t,e){var n=this;return void 0===e&&(e=!0),this._remove(t,e).then(function(){return n.resetRequestCache(),n.removeLocal(t)})},t.prototype.removeAll=function(t){var e=this;return void 0===t&&(t=!0),this._removeAll(t).then(function(){return e.resetCache()})},t.prototype.removeLocal=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];for(var n=0,i=t;n<i.length;n++){var r=i[n];this.deleteObjectFromDataMap(r)}this.synchronizeWithMap();for(var o=0,a=t;o<a.length;o++)r=a[o],this.entityRemoved.emit(r,!1)},t.prototype.resetCache=function(){this.updateData([]),this.cached=void 0,this.resetRequestCache()},t.prototype.resetRequestCache=function(){this.requestCache={}},t.prototype.updateData=function(t){for(var e=0,n=i.differenceBy(this.data,t,"id");e<n.length;e++){var r=n[e];this.deleteObjectFromDataMap(r),this.entityRemoved.emit(r,!1)}return this.cacheEntities(t)},t.prototype.cacheEntities=function(t){for(var e=[],n=0,i=t;n<i.length;n++){var r=i[n];this.cacheEntity(r,e)}return this.synchronizeWithMap(),this.emitCreatedEvent(e),e},t.prototype.cacheEntity=function(t,e){var n=this.dataMap[t.id];return n?(this.entityRemoved.emit(n,!0),n.copy(t,!0),e.push(n),n):(this.dataMap[t.id]=t,e.push(t),t)},t.prototype.emitCreatedEvent=function(t){if(t.length){this.entityCreated.emit(t);for(var e=0,n=t;e<n.length;e++)n[e].onCreate()}},t.prototype.synchronizeWithMap=function(){o.replaceArray(this.data,i.values(this.dataMap))},t.prototype.deleteObjectFromDataMap=function(t){delete this.dataMap[t.id]},t.prototype._findAll=function(t,e){var n=this;return void 0===t&&(t={}),void 0===e&&(e=!0),this.RestService.getApi(this.path,t,void 0,e).then(function(t){return n.transformResponse(t)})},t.prototype._filter=function(t,e,n){var i=this;return(n?this.RestService.postApi(this.path+"/filter",t,void 0,e):this.RestService.getApi(this.path+"/filter",t,void 0,e)).then(function(t){return i.transformResponse(t)})},t.prototype._count=function(t,e){return this.RestService.getApi(this.path+"/count",t,void 0,e).then(function(t){return t.count})},t.prototype._findOne=function(t,e,n){var i=this;return void 0===e&&(e={}),void 0===n&&(n=!0),this.RestService.getApi(this.path+"/"+t,e,void 0,n).then(function(t){return i.createFromData(t)})},t.prototype._save=function(t,e){var n=this;return this.RestService.postApi(this.path,this.transformRequest(t),void 0,e).then(function(t){return n.transformResponse(t)})},t.prototype._update=function(t,e){var n=this;return this.RestService.putApi(this.path,this.transformRequest(t),void 0,e).then(function(t){return n.transformResponse(t)})},t.prototype._remove=function(t,e){return this.RestService.deleteApi(this.path+"/"+t.id,void 0,e)},t.prototype._removeAll=function(t){return this.RestService.deleteApi(this.path,void 0,t)},t.prototype.transformResponse=function(t){var e=this;return t.map(function(t){return e.createFromData(t)})},t.prototype.transformRequest=function(t){return t.map(function(t){return t.toData()})},t.prototype.mapToRepositoryEntities=function(t){var e=this;return t.map(function(t){return e.dataMap[t.id]})},t}();e.RestRepository=l},function(t,e,n){"use strict";n.d(e,"a",function(){return r}),n.d(e,"b",function(){return o});var i=n(12),r=new i.a(function(t){return t.complete()});function o(t){return t?function(t){return new i.a(function(e){return t.schedule(function(){return e.complete()})})}(t):r}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(187),n(6)),o=n(0),a=n(0),s=n(187),c=function(){function t(t){this.StorageService=t,this.TOKEN_HEADER="X-Authorization",this.TOKEN_QUERY_PARAM="token",this.TOKEN_KEY="JWT",this._parsedJWT=void 0,this.TOKEN_VALUE_PREFIX_HEADER="Bearer",this.parseJwt()}return t.prototype.saveJwt=function(t){this.StorageService.set(this.TOKEN_KEY,t),this.parseJwt()},t.prototype.getJwt=function(){return this.StorageService.get(this.TOKEN_KEY)},t.prototype.setJwtHeaderOnConfig=function(t){this.getJwt()&&this.isNotExpired()&&(t[this.TOKEN_HEADER]=this.getJwtHeaderValue())},t.prototype.getJwtHeaderValue=function(){return this.getJwt()},t.prototype.setJwtHeaderOnXHR=function(t){this.getJwt()&&this.isNotExpired()&&t.setRequestHeader(this.TOKEN_HEADER,this.getJwtHeaderValue())},t.prototype.getJwtUrlParamKey=function(){return this.TOKEN_HEADER.toLowerCase().replace("-","_")},t.prototype.eraseJwt=function(){this.StorageService.remove(this.TOKEN_KEY),this._parsedJWT=void 0},t.prototype.parseJwt=function(){if(this.getJwt()){var t=this.getJwt().split(".")[1].replace("-","+").replace("_","/");this._parsedJWT=JSON.parse(window.atob(t))}},Object.defineProperty(t.prototype,"parsedJWT",{get:function(){return this._parsedJWT},enumerable:!0,configurable:!0}),t.prototype.isNotExpired=function(){return!0},t.prototype.renewIn=function(){if(this._parsedJWT){var t=(this._parsedJWT.exp-this._parsedJWT.iat)/2;return 1e3*(this._parsedJWT.exp-(Date.now()/1e3+t))}},t.prototype.setJwtOnUrl=function(t){var e=this.getJwt();e&&(this.isNotExpired()?t.searchParams.set(this.getJwtUrlParamKey(),e):this.eraseJwt())},t.ɵfac=function(e){return new(e||t)(a.ɵɵinject(s.StorageService))},t.ɵprov=a.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.JWTTokenService=c,a.ɵsetClassMetadata(c,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:s.StorageService}]},null),(e.JWTType||(e.JWTType={})).AUTH="AUTH",function(t){t.LOCAL="LOCAL",t.OIDC="OIDC",t.PREAUTH="PREAUTH"}(e.UserProvider||(e.UserProvider={})),i.module("IVWebApp").service("JWTTokenService",r.downgradeInjectable(c))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(20),o=(n(50),n(14),n(15),n(25)),a=(n(24),n(265),n(39),n(17),n(8)),s=(n(86),n(6)),c=n(0),l=n(261),u=n(557),d=n(152),p=n(641),h=n(558),f=n(0),g=n(15),m=n(50),v=n(14),y=n(24),b=n(265),w=n(39),S=n(17),x=n(86),M=function(){function t(t,e,n,i,r,s,c,l,u,d,p,h,f,g){var m=this;this.$location=t,this.IV=e,this.PointCloudMenuService=n,this.ConfigService=i,this.LanguageService=r,this.GeoTransformationService=s,this.$rootScope=c,this.ModeService=l,this.gettextCatalog=u,this.AboutService=d,this.PoiService=p,this.ViewService=h,this.InstanceInformationService=f,this.isHtml5Mode=g,this.isUrlChangedByIV=!1,this.longitudeParam=this.ConfigService.getAliasByName(o.Configs.CORE_INIT_LON),this.latitudeParam=this.ConfigService.getAliasByName(o.Configs.CORE_INIT_LAT),this.$rootScope.$on("$locationChangeStart",function(t,e){return m.handleLocationChangeStartEvent(t,e)}),this.PointCloudMenuService.configShowPointCloudChanged.connect(function(){return m.updateUrl()}),this.PoiService.onPoiClose.connect(function(){return m.removeEntity()}),this.initialized=this.AboutService.initialized.then(function(){return m.InstanceInformationService.getInformation()}).then(function(t){t.isCloudInstance,m.extractVersion();m.documentationBaseUrl=null}).catch(a.handleWarning)}return t.prototype.extractVersion=function(){var t=this.AboutService.version.version;if(t){var e=t.split(".");if(!(e.length<2))return"v"+e[0]+"."+e[1]}},t.prototype.handleLocationChangeStartEvent=function(t,e){!this.isUrlChangedByIV&&this.userLocationChangeCallback&&(this.userLocationChangeCallback(),!this.ModeService.isDatasetAlignmentMode()&&!this.ModeService.isSiteModelEditorMode()||-1!==e.indexOf(this.getProtocolBaseUrl())||window.confirm(this.gettextCatalog.getString("Do you want to navigate away from the current page?"))||t.preventDefault()),this.isUrlChangedByIV=!1},t.prototype.getDocumentationLink=function(t){return t?this.documentationBaseUrl+"/"+t:this.documentationBaseUrl},t.prototype.updateUrl=function(t,e){if(this.preventChange)this.preventChange=!1;else{var n=this.$location.search(),i=this.PointCloudMenuService.isCloudVisible();this.updatePointCloudParam(n,i),this.updateLocationParam(n,i,t),this.updateDirectionAndFovParam(n),this.isUrlChangedByIV=!0,e&&this.$location.replace(),this.$location.search(n),r.invalidateAngular()}},t.prototype.getProtocolBaseUrl=function(){var t=this.IV.base_url;return t.startsWith("//")?this.$location.protocol()+":"+t:t},t.prototype.getUrlHost=function(){return this.$location.host()},t.prototype.setUserLocationChangeCallback=function(t){this.userLocationChangeCallback=t},t.prototype.preventNextChange=function(){this.preventChange=!0},t.prototype.removeEntity=function(){var e=this.$location.search();if(e.poi||e.sme){t.resetLocationParameter(e);var n=this.ViewService.mainView.getImage();n&&(e.image=n.id),this.$location.search(e),this.isUrlChangedByIV=!0,r.invalidateAngular()}},t.prototype.removeParamFromUrl=function(t){this.isUrlChangedByIV=!0;var e=this.$location.search();delete e[t],this.$location.search(e)},t.prototype.generateSocialNetworkShareUrl=function(t,e){switch(t){case"facebook":return"https://www.facebook.com/sharer/sharer.php?u="+e;case"linkedin":return"https://www.linkedin.com/shareArticle?url="+e;case"xing":return"https://www.xing.com/spi/shares/new?url="+e;case"tumblr":return"https://www.tumblr.com/share/link?url="+e;case"pinterest":return"https://pinterest.com/pin/create/button/?url="+e;case"twitter":return"https://twitter.com/intent/tweet?url="+encodeURIComponent(e)+"&dnt=true&hashtags=Fdage,4DKanKan&lang="+this.LanguageService.dataLanguage;default:return"www.4DKanKan.com"}},t.prototype.resetRouteParameters=function(){this.isUrlChangedByIV=!0;var t=this.$location.search();delete t["route.start"],delete t["route.end"],this.$location.search(t)},t.prototype.generateUrl=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var n=this.removeParamsFromUrl(this.$location.absUrl());t.length&&(n+=this.isHtml5Mode?"?":"#?");for(var i=0;i<t.length;i+=2)n+=t[i]+"="+t[i+1],i!==t.length-2&&(n+="&");return n},t.prototype.generateShareUrl=function(){return this.isPanoramaView()?this.generatePanoramaViewUrl():this.generatePointCloudViewUrl()},t.prototype.removeParamsFromUrl=function(t){return t.split(this.isHtml5Mode?"?":"#")[0]},t.prototype.addRouteParameters=function(e,n){this.isUrlChangedByIV=!0;var i=this.$location.search();i["route.start"]=t.convertPoiEntityToUrlReference(e),i["route.end"]=t.convertPoiEntityToUrlReference(n),this.$location.search(i)},t.prototype.getParamFromUrl=function(t){return this.$location.search()[t]},t.prototype.generateMeasurementsURL=function(t){var e=this.encodeMeasurementInBase64Url(t),n=new URL(d.getBaseUrl());return n.searchParams.append("mpts",e),t[0].getPointOfView()&&t[0].getPointOfView().imageId&&n.searchParams.append("image",t[0].getPointOfView().imageId.toString()),new p.MeasurementUrl(t.length,n.toString())},t.prototype.encodeMeasurementInBase64Url=function(t){var e=u.MeasurementsBinarySerializer.exportMeasurementsToByteStream(t.map(function(t){return t.toMeasurementBinaryDto()}));return h.default(e)},t.prototype.updateDirectionAndFovParam=function(e){this.ViewService.mainView.cameraController instanceof l.OrbitCameraController||(e[this.longitudeParam]=this.ViewService.mainView.getViewDir().lon.toFixed(t.MAX_VIEW_DIR_PRECISION),e[this.latitudeParam]=this.ViewService.mainView.getViewDir().lat.toFixed(t.MAX_VIEW_DIR_PRECISION),e.fov=this.ViewService.mainView.getFov().toFixed(1))},t.prototype.updateLocationParam=function(e,n,i){var r=this;i&&i.poi&&!n?(t.resetLocationParameter(e),e.poi=i.poi):i&&i.sme&&!n?(t.resetLocationParameter(e),e.sme=i.sme):i&&i.image&&!n?(t.resetLocationParameter(e),e.image=i.image):this.ViewService.mainView.getImage()&&!n?(t.resetLocationParameter(e),e.image=this.ViewService.mainView.getImage().id.toString()):this.GeoTransformationService.initialized.then(function(){var n=r.GeoTransformationService.vectorToGlobal(r.ViewService.mainView.getCamera().position),i=n.x.toFixed(t.MAX_LAT_LON_PRECISION),o=n.y.toFixed(t.MAX_LAT_LON_PRECISION),a=n.z.toFixed(t.MAX_HEIGHT_PRECISION);t.isGeoLocationValid(Number(i),Number(o))&&(t.resetLocationParameter(e),e.lon=i,e.lat=o,e.z=a),r.$location.search(e)}).catch(function(){})},t.prototype.updatePointCloudParam=function(t,e){e?t[this.ConfigService.getAliasByName(o.Configs.LAYERS_POINTCLOUD_VISIBLE)]="true":delete t.pc},t.isGeoLocationValid=function(t,e){return isFinite(t)&&isFinite(e)},t.resetLocationParameter=function(t){delete t.image,delete t.poi,delete t.sme,delete t.lon,delete t.lat,delete t.z},t.convertPoiEntityToUrlReference=function(t){return t.isLocationAsPoi?t.globalLocation.toArray().toString():t.id.toString()},t.prototype.generatePointCloudViewUrl=function(){var e;try{e=this.GeoTransformationService.vectorToGlobal(this.ViewService.mainView.getCamera().position)}catch(t){return this.removeParamsFromUrl(this.$location.absUrl())}return this.generateUrl(this.ConfigService.getAliasByName(o.Configs.LAYERS_POINTCLOUD_VISIBLE),"true","lon",e.x.toFixed(t.MAX_LAT_LON_PRECISION),"lat",e.y.toFixed(t.MAX_LAT_LON_PRECISION),"z",e.z.toFixed(t.MAX_HEIGHT_PRECISION),this.longitudeParam,this.ViewService.mainView.getViewDir().lon.toFixed(t.MAX_VIEW_DIR_PRECISION),this.latitudeParam,this.ViewService.mainView.getViewDir().lat.toFixed(t.MAX_VIEW_DIR_PRECISION),"fov",this.ViewService.mainView.getFov().toFixed(1))},t.prototype.generatePanoramaViewUrl=function(){return this.generateUrl("image",this.ViewService.mainView.getImage().id.toString(),this.longitudeParam,this.ViewService.mainView.getViewDir().lon.toFixed(t.MAX_VIEW_DIR_PRECISION),this.latitudeParam,this.ViewService.mainView.getViewDir().lat.toFixed(t.MAX_VIEW_DIR_PRECISION),"fov",this.ViewService.mainView.getFov().toFixed(1))},t.prototype.isPanoramaView=function(){return this.ViewService.mainView.getImage()&&!this.PointCloudMenuService.isCloudVisible()},t.MAX_LAT_LON_PRECISION=8,t.MAX_HEIGHT_PRECISION=3,t.MAX_VIEW_DIR_PRECISION=2,t.ɵfac=function(e){return new(e||t)(f.ɵɵinject("$location"),f.ɵɵinject("IV"),f.ɵɵinject("PointCloudMenuService"),f.ɵɵinject(g.ConfigService),f.ɵɵinject(m.LanguageService),f.ɵɵinject(v.GeoTransformationService),f.ɵɵinject("$rootScope"),f.ɵɵinject(y.ModeService),f.ɵɵinject("gettextCatalog"),f.ɵɵinject(b.AboutService),f.ɵɵinject(w.PoiService),f.ɵɵinject(S.ViewService),f.ɵɵinject(x.InstanceInformationService),f.ɵɵinject("isHtml5Mode"))},t.ɵprov=f.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.UrlService=M,f.ɵsetClassMetadata(M,[{type:c.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:c.Inject,args:["$location"]}]},{type:void 0,decorators:[{type:c.Inject,args:["IV"]}]},{type:void 0,decorators:[{type:c.Inject,args:["PointCloudMenuService"]}]},{type:g.ConfigService},{type:m.LanguageService},{type:v.GeoTransformationService},{type:void 0,decorators:[{type:c.Inject,args:["$rootScope"]}]},{type:y.ModeService},{type:void 0,decorators:[{type:c.Inject,args:["gettextCatalog"]}]},{type:b.AboutService},{type:w.PoiService},{type:S.ViewService},{type:x.InstanceInformationService},{type:void 0,decorators:[{type:c.Inject,args:["isHtml5Mode"]}]}]},null),i.module("IVWebApp").service("UrlService",s.downgradeInjectable(M))},function(t,e,n){var i=n(172),r=n(234),o=n(53),a=n(44),s=n(235),c=[].push,l=function(t){var e=1==t,n=2==t,l=3==t,u=4==t,d=6==t,p=5==t||d;return function(h,f,g,m){for(var v,y,b=o(h),w=r(b),S=i(f,g,3),x=a(w.length),M=0,E=m||s,C=e?E(h,x):n?E(h,0):void 0;x>M;M++)if((p||M in w)&&(y=S(v=w[M],M,b),t))if(e)C[M]=y;else if(y)switch(t){case 3:return!0;case 5:return v;case 6:return M;case 2:c.call(C,v)}else if(u)return!1;return d?-1:l||u?u:C}};t.exports={forEach:l(0),map:l(1),filter:l(2),some:l(3),every:l(4),find:l(5),findIndex:l(6)}},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(70),s=(n(9),n(1060)),c=(n(27),n(6)),l=n(0),u=n(0),d=n(9),p=n(27),h=function(t){function e(e,n){var i=t.call(this,s.BundleEntity,e)||this;return i.RestService=e,i.UserService=n,i.path="bundles",i}return r(e,t),e.prototype.create=function(){var e=t.prototype.create.call(this);return e.fillCurrentUsersGroups(this.UserService),e},e.prototype.findCachedBySerial=function(t){return this.data.find(function(e){return e.serial===t})},e.ɵfac=function(t){return new(t||e)(u.ɵɵinject(d.RestService),u.ɵɵinject(p.UserService))},e.ɵprov=u.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(a.RestRepository);e.BundleRepository=h,u.ɵsetClassMetadata(h,[{type:l.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:d.RestService},{type:p.UserService}]},null),o.module("IVWebApp").service("BundleRepository",c.downgradeInjectable(h))},function(t,e,n){"use strict";n.d(e,"a",function(){return a});var i=n(12),r=n(209),o=n(334);function a(t,e){return e?Object(o.a)(t,e):t instanceof i.a?t:new i.a(Object(r.a)(t))}},function(t,e,n){"use strict";function i(t){return t&&"function"==typeof t.schedule}n.d(e,"a",function(){return i})},function(t,e,n){"use strict";n.d(e,"a",function(){return a});var i=n(176),r=n(209),o=n(12);function a(t,e,n,a,s){if(void 0===s&&(s=new i.a(t,n,a)),!s.closed)return e instanceof o.a?e.subscribe(s):Object(r.a)(e)(s)}},function(t,e,n){"use strict";n.d(e,"a",function(){return r});var i=n(1),r=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.c(e,t),e.prototype.notifyNext=function(t,e,n,i,r){this.destination.next(e)},e.prototype.notifyError=function(t,e){this.destination.error(t)},e.prototype.notifyComplete=function(t){this.destination.complete()},e}(n(26).a)},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(395);e.SceneLayerFactory=function(){};var a=function(t){function e(e,n,i){var r=t.call(this,e,n,i)||this;return r.view=e,r}return r(e,t),e.prototype.setViewportEventMask=function(t){void 0!==this.params.viewportEventMask&&(this.params.viewportEventMask=t)},e}(o.AbstractSceneLayer);e.SceneLayer=a},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t[t.USER=0]="USER",t[t.DATASETS=1]="DATASETS",t[t.VIEW=2]="VIEW",t[t.POI_TYPES=3]="POI_TYPES",t[t.EDITOR_MODES=4]="EDITOR_MODES",t[t.EDITOR_MODES_EXPLORE=5]="EDITOR_MODES_EXPLORE",t[t.EDITOR_MODES_GEO_REG=6]="EDITOR_MODES_GEO_REG",t[t.EDITOR_MODES_ALIGNMENT=7]="EDITOR_MODES_ALIGNMENT",t[t.EDITOR_MODES_SITE_MODEL=8]="EDITOR_MODES_SITE_MODEL",t[t.EDITOR_MODES_NAV_GRAPH=9]="EDITOR_MODES_NAV_GRAPH",t[t.EDITOR_MODES_VECTOR_MAP=10]="EDITOR_MODES_VECTOR_MAP",t[t.EDITOR_MODES_MEASUREMENTS=11]="EDITOR_MODES_MEASUREMENTS",t[t.EDITOR_MODES_DOWNLOAD_POINT_CLOUD=12]="EDITOR_MODES_DOWNLOAD_POINT_CLOUD",t[t.MEASUREMENTS=13]="MEASUREMENTS",t[t.SHARE=14]="SHARE",t[t.CLOUD_PROCESSING=15]="CLOUD_PROCESSING",t[t.CLOUD_PROCESSING_UPLOADED_DATA=16]="CLOUD_PROCESSING_UPLOADED_DATA",t[t.CLOUD_PROCESSING_PROCESSING_TASKS=17]="CLOUD_PROCESSING_PROCESSING_TASKS",t[t.CLOUD_PROCESSING_PROCESSED_DATA=18]="CLOUD_PROCESSING_PROCESSED_DATA",t[t.SETTINGS=19]="SETTINGS",t[t.SETTINGS_CONFIG=20]="SETTINGS_CONFIG",t[t.SETTINGS_SUBSCRIPTION=21]="SETTINGS_SUBSCRIPTION",t[t.SETTINGS_AUTHENTICATION=22]="SETTINGS_AUTHENTICATION",t[t.SETTINGS_USERS=23]="SETTINGS_USERS",t[t.SETTINGS_GROUPS=24]="SETTINGS_GROUPS",t[t.SETTINGS_AUDIT=25]="SETTINGS_AUDIT",t[t.SETTINGS_DATASET_MANAGEMENT=26]="SETTINGS_DATASET_MANAGEMENT",t[t.SETTINGS_HIDDEN_IMAGES=27]="SETTINGS_HIDDEN_IMAGES",t[t.SETTINGS_THEME=28]="SETTINGS_THEME",t[t.DEVELOPER=29]="DEVELOPER"}(e.SidebarMenuItemsKey||(e.SidebarMenuItemsKey={}))},function(t,e,n){var i=n(43),r=n(288),o=n(173),a=n(109),s=n(134),c=n(58),l=n(459),u=Object.getOwnPropertyDescriptor;e.f=i?u:function(t,e){if(t=a(t),e=s(e,!0),l)try{return u(t,e)}catch(t){}if(c(t,e))return o(!r.f.call(t,e),t[e])}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(22),n(22);var r=n(157),o=n(21),a=n(4),s=(n(39),n(377)),c=(n(14),n(15),n(38),n(25)),l=n(55),u=n(16),d=n(316),p=n(8),h=n(6),f=n(0),g=(n(17),n(261)),m=n(0),v=n(22),y=n(39),b=n(21),w=n(14),S=n(38),x=n(15),M=n(17),E=function(){function t(t,e,n,i,r,o,a,s){this.SiteModelRepository=t,this.IV=e,this.PoiService=n,this.TrackingService=i,this.GeoTransformationService=r,this.SidebarMenuService=o,this.ConfigService=a,this.ViewService=s,this.onSelect=new u.Signal}return t.prototype.selectModel=function(t,e){t&&(this.selectedModel=t,this.PoiService.isRoutePickingPhase()?this.routeToEntity(t):this.ConfigService.getBoolean(c.Configs.UI_POI_PANEL_VISIBLE,!0)&&this.SidebarMenuService.closeMenu(),e&&this.IV.moveToSiteModelEntity(t,!1).catch(p.handleWarning),o.TrackingService.trackSiteModelDetailsViewed(),this.onSelect.emit(t,!1,!1))},t.prototype.selectPreviousModel=function(){this.selectModel(this.previouslySelectedModel)},t.prototype.resetPreviouslySelectedModel=function(){this.previouslySelectedModel=void 0},t.prototype.deselectModel=function(){this.selectedModel=void 0},t.prototype.routeToEntity=function(t,e){void 0===e&&(e=d.RoutePoint.START),this.PoiService.enterRouteMode();var n=this.PoiService.getLocationAsPoi(t.globalCenter,!0);n.title=t.label,n.isSiteModelAsPoi=!0,this.TrackingService.trackRouteInitiation(n),e===d.RoutePoint.START?this.PoiService.routeStart=n:this.PoiService.routeEnd=n,this.deselectModel()},t.prototype.getEntityOfType=function(t,e){var n=this.SiteModelRepository.dataMap[t];if(n){if(n.type===e)return n;var i=n.parent?n.parent.id:void 0;return this.getEntityOfType(i,e)}},t.prototype.getCurrentMainViewFloor=function(){var t=this.ViewService.mainView.getImage(),e=this.ViewService.mainView,n=e.cameraController instanceof g.OrbitCameraController?e.cameraController.target:e.getCamera().position;if(t&&t.siteModelEntity&&t.isAtPosition(n)){var i=t.siteModelEntity.getEntityOfType(l.SiteModelType.FLOOR);if(i)return Promise.resolve(i)}return this.getCurrentFloorByPosition(n)},t.prototype.getCurrentFloorByPosition=function(e){var n=this;return this.SiteModelRepository.findWithin(e,l.SiteModelType.FLOOR).then(function(i){return i.length>0?i[0]:n.SiteModelRepository.findClosestByTypeAndDistance2D(l.SiteModelType.FLOOR,e,t.MAX_FLOOR_DIST)})},t.prototype.getBuildingsInView=function(t){var e=new a.Vector2(t.position.x,t.position.y),n=new a.Vector2(t.left,t.bottom).add(e),i=new a.Vector2(t.right,t.bottom).add(e),r=new a.Vector2(t.left,t.top).add(e),o=new a.Vector2(t.right,t.top).add(e),c=new s.LocalPolygon(this.GeoTransformationService);return c.boundary=[n,i,o,r,n],this.SiteModelRepository.findWithinPolygon(c,l.SiteModelType.BUILDING)},t.prototype.getFloorsInView=function(t){return this.getBuildingsInView(t).then(function(t){for(var e=[],n=0,i=t;n<i.length;n++)i[n].getChildrenOfType(l.SiteModelType.FLOOR,e);return e})},t.prototype.getFloorsOfContainingBuilding=function(t,e){void 0===e&&(e=[]);var n=t.getEntityOfType(l.SiteModelType.BUILDING);return n&&n.getChildrenOfType(l.SiteModelType.FLOOR,e),e},t.prototype.pointInEntity=function(t,e){return r.pointInPolygon(t,e.getPath())},t.prototype.getSiteModelData=function(t){var e={};if(t){var n=this.getEntityOfType(t.id,l.SiteModelType.BUILDING);n&&(e.building=n);var i=this.getEntityOfType(t.id,l.SiteModelType.FLOOR);i&&(e.floor=i);var r=this.getEntityOfType(t.id,l.SiteModelType.ROOM);r&&(e.room=r);var o=this.getEntityOfType(t.id,l.SiteModelType.CUSTOM);o&&(e.custom=o)}return e},t.MAX_FLOOR_DIST=50,t.ɵfac=function(e){return new(e||t)(m.ɵɵinject(v.SiteModelRepository),m.ɵɵinject("IV"),m.ɵɵinject(y.PoiService),m.ɵɵinject(b.TrackingService),m.ɵɵinject(w.GeoTransformationService),m.ɵɵinject(S.SidebarMenuService),m.ɵɵinject(x.ConfigService),m.ɵɵinject(M.ViewService))},t.ɵprov=m.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.SiteModelService=E,m.ɵsetClassMetadata(E,[{type:f.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:v.SiteModelRepository},{type:void 0,decorators:[{type:f.Inject,args:["IV"]}]},{type:y.PoiService},{type:b.TrackingService},{type:w.GeoTransformationService},{type:S.SidebarMenuService},{type:x.ConfigService},{type:M.ViewService}]},null),i.module("IVWebApp").service("SiteModelService",h.downgradeInjectable(E))},function(t,e,n){"use strict";n.d(e,"a",function(){return r});var i=!1,r={Promise:void 0,set useDeprecatedSynchronousErrorHandling(t){t&&(new Error).stack,i=t},get useDeprecatedSynchronousErrorHandling(){return i}}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i,r,o=n(1066),a=n(1080),s=n(540),c=n(1083),l=n(542),u=n(1086),d=n(1088),p=n(543);!function(t){t.AREA_FREE_MEASUREMENT="AREA_FREE_MEASUREMENT",t.AREA_HORIZONTAL_MEASUREMENT="AREA_HORIZONTAL_MEASUREMENT",t.AREA_VERTICAL_MEASUREMENT="AREA_VERTICAL_MEASUREMENT",t.RECTANGLE_HORIZONTAL_MEASUREMENT="RECTANGLE_HORIZONTAL_MEASUREMENT",t.RECTANGLE_VERTICAL_MEASUREMENT="RECTANGLE_VERTICAL_MEASUREMENT",t.DISTANCE_FREE_MEASUREMENT="DISTANCE_FREE_MEASUREMENT",t.DISTANCE_HORIZONTAL_MEASUREMENT="DISTANCE_HORIZONTAL_MEASUREMENT",t.DISTANCE_VERTICAL_MEASUREMENT="DISTANCE_VERTICAL_MEASUREMENT",t.MAGNIFIER="MAGNIFIER"}(i=e.Tool||(e.Tool={})),function(t){t.MEASUREMENT_TOOL_SELECTION="MEASUREMENT_TOOL_SELECTION",t.KEYBOARD_SHORTCUT="KEYBOARD_SHORTCUT"}(e.EventSource||(e.EventSource={})),function(t){t[t.DISTANCE=1]="DISTANCE",t[t.AREA=2]="AREA"}(r=e.ToolType||(e.ToolType={}));var h=function(){function t(t,e,n,i,r,o){this.id=t,this.tool=e,this.type=n,this.vertical=i,this.initializer=r,this.iconSrc=o}return t.of=function(e){return t.SPECS_MAP.get(e)},t.getForId=function(e){return t.SPECS_ID_MAP.get(e)},t.SPECS=[new t(0,i.AREA_FREE_MEASUREMENT,r.AREA,!1,o.FreeAreaMeasurementObject3D,n(1091)),new t(1,i.AREA_HORIZONTAL_MEASUREMENT,r.AREA,!1,a.HorizontalAreaMeasurementObject3D,n(1092)),new t(2,i.AREA_VERTICAL_MEASUREMENT,r.AREA,!0,s.VerticalAreaMeasurementObject3D,n(1093)),new t(3,i.RECTANGLE_HORIZONTAL_MEASUREMENT,r.AREA,!1,c.HorizontalRectangleMeasurementObject3D,n(1094)),new t(4,i.RECTANGLE_VERTICAL_MEASUREMENT,r.AREA,!0,l.VerticalRectangleMeasurementObject3D,n(1095)),new t(5,i.DISTANCE_FREE_MEASUREMENT,r.DISTANCE,!1,u.FreeDistanceMeasurementObject3D,n(1096)),new t(6,i.DISTANCE_HORIZONTAL_MEASUREMENT,r.DISTANCE,!1,d.HorizontalDistanceMeasurementObject3D,n(1097)),new t(7,i.DISTANCE_VERTICAL_MEASUREMENT,r.DISTANCE,!0,p.VerticalDistanceMeasurementObject3D,n(1098))],t.SPECS_MAP=t.SPECS.reduce(function(t,e){return t.set(e.tool,e)},new Map),t.SPECS_ID_MAP=t.SPECS.reduce(function(t,e){return t.set(e.id,e)},new Map),t}();e.ToolSpec=h;var f=function(){function t(){for(var t=this,e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];this.tools=new Map,this._first=e[0],e.forEach(function(n,i){return t.tools.set(n,e[i+1]||e[0])})}return t.prototype.next=function(t){return this.tools.get(t)||this.first},Object.defineProperty(t.prototype,"first",{get:function(){return this._first},enumerable:!0,configurable:!0}),t.prototype.contains=function(t){return!!this.tools.get(t)},t.Distance=new t(i.DISTANCE_FREE_MEASUREMENT,i.DISTANCE_HORIZONTAL_MEASUREMENT,i.DISTANCE_VERTICAL_MEASUREMENT),t.Area=new t(i.AREA_FREE_MEASUREMENT,i.AREA_HORIZONTAL_MEASUREMENT,i.AREA_VERTICAL_MEASUREMENT),t.Rectangle=new t(i.RECTANGLE_HORIZONTAL_MEASUREMENT,i.RECTANGLE_VERTICAL_MEASUREMENT),t}();e.ToolGroup=f},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(1035),o=(n(9),n(251),n(25)),a=n(6),s=n(0),c=n(0),l=n(9),u=n(251),d=function(){function t(t,e){var n=this;this.RestService=t,e.entityChanged.connect(function(t){return n.invalidateOnConfigChanged(t)}),e.entityCreated.connect(function(t){return n.invalidateOnConfigChanged.apply(n,t)}),e.entityRemoved.connect(function(t){return n.invalidateOnConfigChanged(t)})}return t.prototype.getInformation=function(){return this.fetch()},t.prototype.resetCache=function(){this.cachedInstanceInformationEntity=void 0},t.prototype.fetch=function(){return this.cachedInstanceInformationEntity||(this.cachedInstanceInformationEntity=this.RestService.getApi("information",{}).then(function(t){var e=new r.InstanceInformationEntity;return e.fillFromData(t),e})),this.cachedInstanceInformationEntity},t.prototype.invalidateOnConfigChanged=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];for(var n=0,i=t;n<i.length;n++){i[n].name===o.Configs.PRIVATE_MODE_ENABLED&&this.resetCache()}},t.ɵfac=function(e){return new(e||t)(c.ɵɵinject(l.RestService),c.ɵɵinject(u.ConfigRepository))},t.ɵprov=c.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.InstanceInformationService=d,c.ɵsetClassMetadata(d,[{type:s.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:l.RestService},{type:u.ConfigRepository}]},null),i.module("IVWebApp").service("InstanceInformationService",a.downgradeInjectable(d))},function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},function(t,e,n){var i=n(43),r=n(48),o=n(173);t.exports=i?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(20),r=function(){function t(){this.isInProgress=!1}return t.prototype.wrap=function(t){return this.handleWrap(t)},t.prototype.wrapPromises=function(t){return this.handleWrap(Promise.all(t))},t.prototype.handleWrap=function(t){var e=this;return this.isInProgress=!0,t.then(function(t){return e.isInProgress=!1,i.invalidateAngular(),t}).catch(function(t){return e.isInProgress=!1,i.invalidateAngular(),Promise.reject(t)})},t}();e.PromiseProgressWrapper=r},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=(n(9),n(1132)),s=(n(22),n(310)),c=n(135),l=(n(14),n(136)),u=n(6),d=n(0),p=n(0),h=n(9),f=n(14),g=n(22),m=function(t){function e(e,n,i){var r=t.call(this,a.ImageEntity,e,n,i)||this;return r.path="images",c.EntityRelationMapper.manyToOne(r,"siteModelEntity","siteModelEntityId",i),r}return r(e,t),e.prototype.createFilterBuilder=function(){return new l.ImageRestFilterBuilder},e.ɵfac=function(t){return new(t||e)(p.ɵɵinject(h.RestService),p.ɵɵinject(f.GeoTransformationService),p.ɵɵinject(g.SiteModelRepository))},e.ɵprov=p.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(s.SiteModelBoundRestRepository);e.ImageRepository=m,p.ɵsetClassMetadata(m,[{type:d.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:h.RestService},{type:f.GeoTransformationService},{type:g.SiteModelRepository}]},null),o.module("IVWebApp").service("ImageRepository",u.downgradeInjectable(m))},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var o=n(20),a=n(2),s=(n(139),n(14),n(4)),c=n(1197),l=n(1198),u=n(16),d=n(6),p=n(0),h=(n(17),n(0)),f=n(14),g=n(139),m=n(17),v=function(){function t(t,e,n){this.GeoTransformationService=t,this.RaycastService=e,this.ViewService=n,this.isCursorSet=!1,this.cursorChanged=new u.Signal,this.cursorStyleChanged=new u.Signal}return t.prototype.updateCursor=function(t){this.cursorPos=t.position.clone(),this.cursorNormal=t.normal.clone(),t.normal.length()||(t.normal=(new s.Vector3).subVectors(this.ViewService.mainView.getCamera().position,t.position).normalize()),this.cursorOri=new s.Quaternion,this.cursorOri.setFromUnitVectors(new s.Vector3(1,0,0),t.normal),this.cursorPosGlobal=this.GeoTransformationService.vectorToGlobal(t.position),this.cursorOriGlobal=this.cursorOri,this.cursorPosDataset=t.datasetPosition?t.datasetPosition.clone():void 0,this.cursorNormalDataset=t.datasetNormal?t.datasetNormal.clone():void 0,t.dataset&&!t.datasetNormal.length()&&(t.datasetNormal=t.dataset.local2datasetdir(t.normal)),this.cursorOriDataset=new s.Quaternion,t.datasetNormal&&(this.cursorOriDataset.setFromUnitVectors(new s.Vector3(1,0,0),t.datasetNormal),this.cursorDataset=t.dataset),this.isCursorSet=!0,o.invalidateAngular(),this.cursorChanged.emit()},t.prototype.getCursorData=function(){var t;return this.isCursorSet&&(t=new c.CursorData(new l.Point(this.cursorPosGlobal),this.cursorPos.clone(),this.cursorOri.clone(),this.cursorOriDataset?this.cursorOriDataset.clone():void 0,this.cursorPosDataset?this.cursorPosDataset.clone():void 0,this.cursorDataset?this.cursorDataset.id:void 0)),t},t.prototype.copyCursorPose=function(t){t.globalLocation=this.cursorPosGlobal.clone(),t.location=this.cursorPos.clone(),t.orientation=this.cursorOri.clone(),t.datasetLocation=this.cursorPosDataset.clone(),t.datasetOrientation=this.cursorOriDataset.clone(),t.dataset=this.cursorDataset},t.prototype.setCursorStyle=function(t){this.cursorStyle=t,this.cursorStyleChanged.emit()},t.prototype.isPlaneLocked=function(){return void 0!==this.planeLock},t.prototype.getRaycastedCoordinates=function(t,e,n){return i(this,void 0,void 0,function(){var i;return r(this,function(r){switch(r.label){case 0:return this.isPlaneLocked()?(i={position:e,normal:this.planeLock.normal},[3,3]):[3,1];case 1:return[4,this.RaycastService.getCoordinates(t,e.clone(),!0,n)];case 2:i=r.sent(),r.label=3;case 3:return i&&this.updateCursor(i),[2,i]}})})},t.prototype.unprojectScreenCoordinateWithPlane=function(t,e){var n=t.unprojectScreenCoordinates(e.x,e.y);if(!this.isPlaneLocked())return n;var i=t.getViewport(e.x,e.y),r=new s.Vector3;return i.camera instanceof s.OrthographicCamera?i.camera.getWorldDirection(r).negate():r.copy(i.camera.position.clone().sub(n)),new s.Ray(n.clone(),r).intersectPlane(this.planeLock,n)},t.prototype.getCoordinatesForScreenPosition=function(t,e){return i(this,void 0,void 0,function(){var n,i;return r(this,function(r){switch(r.label){case 0:return n=this.unprojectScreenCoordinateWithPlane(t,e),[4,this.getRaycastedCoordinates(t,n.clone(),e)];case 1:return[2,(i=r.sent())?i.position:this.cursorPos]}})})},t.ɵfac=function(e){return new(e||t)(h.ɵɵinject(f.GeoTransformationService),h.ɵɵinject(g.RaycastService),h.ɵɵinject(m.ViewService))},t.ɵprov=h.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.CursorService=v,h.ɵsetClassMetadata(v,[{type:p.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:f.GeoTransformationService},{type:g.RaycastService},{type:m.ViewService}]},null),a.module("IVWebApp").service("CursorService",d.downgradeInjectable(v))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.ROUTING="routing",t.ANALYST="analyst",t.JAVASCRIPT_API="api",t.USER_MANAGEMENT="user_management"}(e.LicenseFeatureType||(e.LicenseFeatureType={}))},function(t,e,n){"use strict";n.d(e,"a",function(){return a});var i=n(77),r=n(149),o=n(226);function a(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var n=t[t.length-1];return Object(i.a)(n)?(t.pop(),Object(o.a)(t,n)):Object(r.a)(t)}},function(t,e,n){t.exports=n.p+"0d60cd9825c0ac526a93c9180d38ad65.tail-spin.svg"},function(t,e,n){"use strict";n.r(e),n.d(e,"ANIMATION_MODULE_TYPE",function(){return w}),n.d(e,"BrowserAnimationsModule",function(){return E}),n.d(e,"NoopAnimationsModule",function(){return C}),n.d(e,"ɵAnimationRenderer",function(){return g}),n.d(e,"ɵAnimationRendererFactory",function(){return h}),n.d(e,"ɵBrowserAnimationBuilder",function(){return l}),n.d(e,"ɵBrowserAnimationFactory",function(){return u}),n.d(e,"ɵInjectableAnimationEngine",function(){return m}),n.d(e,"ɵangular_packages_platform_browser_animations_animations_a",function(){return v}),n.d(e,"ɵangular_packages_platform_browser_animations_animations_b",function(){return y}),n.d(e,"ɵangular_packages_platform_browser_animations_animations_c",function(){return b}),n.d(e,"ɵangular_packages_platform_browser_animations_animations_d",function(){return x}),n.d(e,"ɵangular_packages_platform_browser_animations_animations_e",function(){return M}),n.d(e,"ɵangular_packages_platform_browser_animations_animations_f",function(){return f});var i=n(1),r=n(0),o=n(125),a=n(30),s=n(59),c=n(3),l=function(t){function e(e,n){var i=t.call(this)||this;i._nextAnimationId=0;var o={id:"0",encapsulation:r.ViewEncapsulation.None,styles:[],data:{animation:[]}};return i._renderer=e.createRenderer(n.body,o),i}return Object(i.c)(e,t),e.prototype.build=function(t){var e=this._nextAnimationId.toString();this._nextAnimationId++;var n=Array.isArray(t)?Object(a.sequence)(t):t;return p(this._renderer,null,e,"register",[n]),new u(e,this._renderer)},(e=Object(i.b)([Object(i.e)(1,Object(r.Inject)(c.DOCUMENT)),Object(i.d)("design:paramtypes",[r.RendererFactory2,Object])],e)).ɵfac=function(t){return new(t||e)(r["ɵɵinject"](r.RendererFactory2),r["ɵɵinject"](c.DOCUMENT))},e.ɵprov=r["ɵɵdefineInjectable"]({token:e,factory:function(t){return e.ɵfac(t)}}),e}(a.AnimationBuilder),u=function(t){function e(e,n){var i=t.call(this)||this;return i._id=e,i._renderer=n,i}return Object(i.c)(e,t),e.prototype.create=function(t,e){return new d(this._id,t,e||{},this._renderer)},e}(a.AnimationFactory),d=function(){function t(t,e,n,i){this.id=t,this.element=e,this._renderer=i,this.parentPlayer=null,this._started=!1,this.totalTime=0,this._command("create",n)}return t.prototype._listen=function(t,e){return this._renderer.listen(this.element,"@@"+this.id+":"+t,e)},t.prototype._command=function(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];return p(this._renderer,this.element,this.id,t,e)},t.prototype.onDone=function(t){this._listen("done",t)},t.prototype.onStart=function(t){this._listen("start",t)},t.prototype.onDestroy=function(t){this._listen("destroy",t)},t.prototype.init=function(){this._command("init")},t.prototype.hasStarted=function(){return this._started},t.prototype.play=function(){this._command("play"),this._started=!0},t.prototype.pause=function(){this._command("pause")},t.prototype.restart=function(){this._command("restart")},t.prototype.finish=function(){this._command("finish")},t.prototype.destroy=function(){this._command("destroy")},t.prototype.reset=function(){this._command("reset")},t.prototype.setPosition=function(t){this._command("setPosition",t)},t.prototype.getPosition=function(){return 0},t}();function p(t,e,n,i,r){return t.setProperty(e,"@@"+n+":"+i,r)}var h=function(){function t(t,e,n){this.delegate=t,this.engine=e,this._zone=n,this._currentId=0,this._microtaskId=1,this._animationCallbacksBuffer=[],this._rendererCache=new Map,this._cdRecurDepth=0,this.promise=Promise.resolve(0),e.onRemovalComplete=function(t,e){e&&e.parentNode(t)&&e.removeChild(t.parentNode,t)}}return t.prototype.createRenderer=function(t,e){var n=this,i=this.delegate.createRenderer(t,e);if(!(t&&e&&e.data&&e.data.animation)){var r=this._rendererCache.get(i);return r||(r=new f("",i,this.engine),this._rendererCache.set(i,r)),r}var o=e.id,a=e.id+"-"+this._currentId;this._currentId++,this.engine.register(a,t);var s=function(e){Array.isArray(e)?e.forEach(s):n.engine.registerTrigger(o,a,t,e.name,e)};return e.data.animation.forEach(s),new g(this,a,i,this.engine)},t.prototype.begin=function(){this._cdRecurDepth++,this.delegate.begin&&this.delegate.begin()},t.prototype._scheduleCountTask=function(){var t=this;this.promise.then(function(){t._microtaskId++})},t.prototype.scheduleListenerCallback=function(t,e,n){var r=this;t>=0&&t<this._microtaskId?this._zone.run(function(){return e(n)}):(0==this._animationCallbacksBuffer.length&&Promise.resolve(null).then(function(){r._zone.run(function(){r._animationCallbacksBuffer.forEach(function(t){var e=Object(i.f)(t,2);(0,e[0])(e[1])}),r._animationCallbacksBuffer=[]})}),this._animationCallbacksBuffer.push([e,n]))},t.prototype.end=function(){var t=this;this._cdRecurDepth--,0==this._cdRecurDepth&&this._zone.runOutsideAngular(function(){t._scheduleCountTask(),t.engine.flush(t._microtaskId)}),this.delegate.end&&this.delegate.end()},t.prototype.whenRenderingDone=function(){return this.engine.whenRenderingDone()},(t=Object(i.b)([Object(i.d)("design:paramtypes",[r.RendererFactory2,s.b,r.NgZone])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵinject"](r.RendererFactory2),r["ɵɵinject"](s.b),r["ɵɵinject"](r.NgZone))},t.ɵprov=r["ɵɵdefineInjectable"]({token:t,factory:function(e){return t.ɵfac(e)}}),t}(),f=function(){function t(t,e,n){this.namespaceId=t,this.delegate=e,this.engine=n,this.destroyNode=this.delegate.destroyNode?function(t){return e.destroyNode(t)}:null}return Object.defineProperty(t.prototype,"data",{get:function(){return this.delegate.data},enumerable:!0,configurable:!0}),t.prototype.destroy=function(){this.engine.destroy(this.namespaceId,this.delegate),this.delegate.destroy()},t.prototype.createElement=function(t,e){return this.delegate.createElement(t,e)},t.prototype.createComment=function(t){return this.delegate.createComment(t)},t.prototype.createText=function(t){return this.delegate.createText(t)},t.prototype.appendChild=function(t,e){this.delegate.appendChild(t,e),this.engine.onInsert(this.namespaceId,e,t,!1)},t.prototype.insertBefore=function(t,e,n){this.delegate.insertBefore(t,e,n),this.engine.onInsert(this.namespaceId,e,t,!0)},t.prototype.removeChild=function(t,e,n){this.engine.onRemove(this.namespaceId,e,this.delegate,n)},t.prototype.selectRootElement=function(t,e){return this.delegate.selectRootElement(t,e)},t.prototype.parentNode=function(t){return this.delegate.parentNode(t)},t.prototype.nextSibling=function(t){return this.delegate.nextSibling(t)},t.prototype.setAttribute=function(t,e,n,i){this.delegate.setAttribute(t,e,n,i)},t.prototype.removeAttribute=function(t,e,n){this.delegate.removeAttribute(t,e,n)},t.prototype.addClass=function(t,e){this.delegate.addClass(t,e)},t.prototype.removeClass=function(t,e){this.delegate.removeClass(t,e)},t.prototype.setStyle=function(t,e,n,i){this.delegate.setStyle(t,e,n,i)},t.prototype.removeStyle=function(t,e,n){this.delegate.removeStyle(t,e,n)},t.prototype.setProperty=function(t,e,n){"@"==e.charAt(0)&&"@.disabled"==e?this.disableAnimations(t,!!n):this.delegate.setProperty(t,e,n)},t.prototype.setValue=function(t,e){this.delegate.setValue(t,e)},t.prototype.listen=function(t,e,n){return this.delegate.listen(t,e,n)},t.prototype.disableAnimations=function(t,e){this.engine.disableAnimations(t,e)},t}(),g=function(t){function e(e,n,i,r){var o=t.call(this,n,i,r)||this;return o.factory=e,o.namespaceId=n,o}return Object(i.c)(e,t),e.prototype.setProperty=function(t,e,n){"@"==e.charAt(0)?"."==e.charAt(1)&&"@.disabled"==e?(n=void 0===n||!!n,this.disableAnimations(t,n)):this.engine.process(this.namespaceId,t,e.substr(1),n):this.delegate.setProperty(t,e,n)},e.prototype.listen=function(t,e,n){var r,o=this;if("@"==e.charAt(0)){var a=function(t){switch(t){case"body":return document.body;case"document":return document;case"window":return window;default:return t}}(t),s=e.substr(1),c="";return"@"!=s.charAt(0)&&(s=(r=Object(i.f)(function(t){var e=t.indexOf(".");return[t.substring(0,e),t.substr(e+1)]}
  1860. /**
  1861. * @license
  1862. * Copyright Google Inc. All Rights Reserved.
  1863. *
  1864. * Use of this source code is governed by an MIT-style license that can be
  1865. * found in the LICENSE file at https://angular.io/license
  1866. */(s),2))[0],c=r[1]),this.engine.listen(this.namespaceId,a,s,c,function(t){var e=t._data||-1;o.factory.scheduleListenerCallback(e,n,t)})}return this.delegate.listen(t,e,n)},e}(f),m=function(t){function e(e,n,i){return t.call(this,e.body,n,i)||this}return Object(i.c)(e,t),(e=Object(i.b)([Object(i.e)(0,Object(r.Inject)(c.DOCUMENT)),Object(i.d)("design:paramtypes",[Object,s.a,s.c])],e)).ɵfac=function(t){return new(t||e)(r["ɵɵinject"](c.DOCUMENT),r["ɵɵinject"](s.a),r["ɵɵinject"](s.c))},e.ɵprov=r["ɵɵdefineInjectable"]({token:e,factory:function(t){return e.ɵfac(t)}}),e}(s.b);function v(){return Object(s.h)()?new s.f:new s.d}function y(){return new s.g}function b(t,e,n){return new h(t,e,n)}var w=new r.InjectionToken("AnimationModuleType"),S=[{provide:a.AnimationBuilder,useClass:l},{provide:s.c,useFactory:y},{provide:s.b,useClass:m},{provide:r.RendererFactory2,useFactory:b,deps:[o["ɵDomRendererFactory2"],s.b,r.NgZone]}],x=Object(i.h)([{provide:s.a,useFactory:v},{provide:w,useValue:"BrowserAnimations"}],S),M=Object(i.h)([{provide:s.a,useClass:s.e},{provide:w,useValue:"NoopAnimations"}],S),E=function(){function t(){}return t.ɵmod=r["ɵɵdefineNgModule"]({type:t}),t.ɵinj=r["ɵɵdefineInjector"]({factory:function(e){return new(e||t)},providers:x,imports:[o.BrowserModule]}),("undefined"==typeof ngJitMode||ngJitMode)&&r["ɵɵsetNgModuleScope"](t,{exports:function(){return[o.BrowserModule]}}),t}(),C=function(){function t(){}return t.ɵmod=r["ɵɵdefineNgModule"]({type:t}),t.ɵinj=r["ɵɵdefineInjector"]({factory:function(e){return new(e||t)},providers:M,imports:[o.BrowserModule]}),("undefined"==typeof ngJitMode||ngJitMode)&&r["ɵɵsetNgModuleScope"](t,{exports:function(){return[o.BrowserModule]}}),t}()},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(108),r=n(4),o=function(){function t(){}return t.fromArray=function(t){if(t){if(t.length<2||t.length>3)throw new i.IVFrontendException("Wrong number of ordinates for a point!");return 3===t.length?(new r.Vector3).fromArray(t):(new r.Vector2).fromArray(t)}},t.fromArray3=function(t){if(t){if(3!==t.length)throw new i.IVFrontendException("Wrong number of ordinates for a point!");return(new r.Vector3).fromArray(t)}},t.fromArray2=function(t){if(t){if(2!==t.length)throw new i.IVFrontendException("Wrong number of ordinates for a point!");return(new r.Vector2).fromArray(t)}},t.toArray=function(t){if(t)return t.toArray()},t.toString=function(t){return t.x.toFixed(8)+","+t.y.toFixed(8)+","+t.z.toFixed(3)},t}();e.VectorFactory=o},function(t,e,n){var i=n(43),r=n(18),o=n(58),a=Object.defineProperty,s={},c=function(t){throw t};t.exports=function(t,e){if(o(s,t))return s[t];e||(e={});var n=[][t],l=!!o(e,"ACCESSORS")&&e.ACCESSORS,u=o(e,0)?e[0]:c,d=o(e,1)?e[1]:void 0;return s[t]=!!n&&!r(function(){if(l&&!i)return!0;var t={length:-1};l?a(t,1,{enumerable:!0,get:c}):t[1]=1,n.call(t,u,d)})}},function(t,e,n){var i=n(34),r=n(88),o=n(58),a=n(350),s=n(464),c=n(110),l=c.get,u=c.enforce,d=String(String).split("String");(t.exports=function(t,e,n,s){var c=!!s&&!!s.unsafe,l=!!s&&!!s.enumerable,p=!!s&&!!s.noTargetGet;"function"==typeof n&&("string"!=typeof e||o(n,"name")||r(n,"name",e),u(n).source=d.join("string"==typeof e?e:"")),t!==i?(c?!p&&t[e]&&(l=!0):delete t[e],l?t[e]=n:r(t,e,n)):l?t[e]=n:a(e,n)})(Function.prototype,"toString",function(){return"function"==typeof this&&l(this).source||s(this)})},function(t,e,n){var i=n(58),r=n(53),o=n(287),a=n(359),s=o("IE_PROTO"),c=Object.prototype;t.exports=a?Object.getPrototypeOf:function(t){return t=r(t),i(t,s)?t[s]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?c:null}},function(t,e,n){var i=n(286),r=n(58),o=n(496),a=n(48).f;t.exports=function(t){var e=i.Symbol||(i.Symbol={});r(e,t)||a(e,t,{value:o.f(t)})}},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(210),a=n(4),s=n(1008);e.ANISOTROPIC_LEVEL=4;var c=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.crossOrigin=void 0,e}return r(e,t),e.prototype.load=function(t,e,n,i){t=o.makeUrlAbsolute(t);var r=new a.Texture,s=new a.ImageLoader(this.manager);return s.setCrossOrigin(this.crossOrigin),s.setPath(this.path),s.load(t,function(t){r.image=t,r.needsUpdate=!0,e(r)},n,i),r},e.prototype.loadPromise=function(t,e){var n=this;return new Promise(function(i,r){var o=n.load(t,i,void 0,r);e&&e(o)})},e}(a.TextureLoader),l=function(){function t(){this.loader=new s.OBJLoader}return t.prototype.load=function(t,e){var n=this;return new Promise(function(i,r){return n.loader.load(o.makeUrlAbsolute(t),i,e,r)})},t}(),u=new c,d=new l;e.setCrossOrigin=function(t){u.crossOrigin=t},e.getTextureLoader=function(){return u.crossOrigin="anonymous",u},e.getObjLoader=function(){return d}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(t,e){this.injectables=t,this.$changeSignal=e,this.resolveInjectables()}return t.prototype.resolveInjectables=function(){},t.prototype.fill=function(t,e){void 0===e&&(e=!1),this.id=e?void 0:t.id},t.prototype.fillFromData=function(t){this.id=t.id},t.prototype.fillDto=function(t){t.id=this.id},t.prototype.invalidate=function(){this.$changeSignal&&this.$changeSignal.emit(this)},t.prototype.onCreate=function(){},t}();e.RepositoryObject=i},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=(n(9),n(309)),s=(n(22),n(310)),c=(n(27),n(135)),l=(n(31),n(123),n(50),n(14),n(136)),u=n(6),d=n(0),p=(n(231),n(0)),h=n(50),f=n(27),g=n(14),m=n(22),v=n(9),y=n(31),b=n(123),w=n(231),S=function(t){function e(e,n,i,r,o,s,l,u){var d=t.call(this,a.PoiEntity,o,i,r)||this;return d.LanguageService=e,d.UserService=n,d.path="pois",d.DEFAULT_EXPORT_FILE_NAME="poi_hierarchy",d.injectables.LanguageService=e,d.injectables.ContentService=u,c.EntityRelationMapper.manyToOne(d,"dataset","datasetId",s),c.EntityRelationMapper.manyToOne(d,"poiType","poiTypeId",l,!0),c.EntityRelationMapper.manyToOne(d,"siteModelEntity","siteModelEntityId",r),d}return r(e,t),e.prototype.create=function(){var e=t.prototype.create.call(this);return e.geoRegistered=!0,e.readOnly=!1,e.idRoutable=!1,e.referenceMarker=!1,e.importance=.5,e.visibilityCheck=!0,e.fillCurrentUsersGroups(this.UserService),e},e.prototype.createReadOnly=function(t,e,n,i){var r,o=this.create();e?(o.globalLocation=t.clone(),o.computeLocalCoordinatesFromGlobal()):(o.location=t.clone(),o.computeCoordinatesFromDataset());var a=this.LanguageService.getCurrentLanguage();return o.titles=((r={})[a]=n,r),o.icon=i,o.readOnly=!0,o.isLocationAsPoi=!0,o.visibilityCheck=!1,o.canDisplayNameInScene=!1,o.canBeHighlightedInScene=!1,o},e.prototype.exportCsv=function(t,e,n){n||(n=this.DEFAULT_EXPORT_FILE_NAME),this.RestService.directDownload(this.path+"/export/csv",{delimiter:t,locale:e},n)},e.prototype.exportJson=function(t){t||(t=this.DEFAULT_EXPORT_FILE_NAME),this.RestService.directDownload(this.path+"/export/json",{},t)},e.prototype.importCsv=function(t,e,n,i,r,o){var a=new FormData;return a.append("file",t),a.append("delimiter",e),a.append("locale",n),a.append("group_read",i.toString()),a.append("group_write",r.toString()),a.append("id_mode",o),this.RestService.postApi(this.path+"/import/csv",a,{headers:{"Content-Type":void 0}},!1)},e.prototype.importJson=function(t,e,n,i){var r=new FormData;return r.append("file",t),r.append("group_read",e.toString()),r.append("group_write",n.toString()),r.append("id_mode",i),this.RestService.postApi(this.path+"/import/json",r,{headers:{"Content-Type":void 0}},!1)},e.prototype.filter=function(e,n){return void 0===n&&(n=!0),t.prototype.filter.call(this,e,n,!0)},e.prototype.createFilterBuilder=function(){return new l.PoiRestFilterBuilder},e.ɵfac=function(t){return new(t||e)(p.ɵɵinject(h.LanguageService),p.ɵɵinject(f.UserService),p.ɵɵinject(g.GeoTransformationService),p.ɵɵinject(m.SiteModelRepository),p.ɵɵinject(v.RestService),p.ɵɵinject(y.DatasetRepository),p.ɵɵinject(b.PoiTypeRepository),p.ɵɵinject(w.ContentService))},e.ɵprov=p.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(s.SiteModelBoundRestRepository);e.PoiRepository=S,p.ɵsetClassMetadata(S,[{type:d.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:h.LanguageService},{type:f.UserService},{type:g.GeoTransformationService},{type:m.SiteModelRepository},{type:v.RestService},{type:y.DatasetRepository},{type:b.PoiTypeRepository},{type:w.ContentService}]},null),o.module("IVWebApp").service("PoiRepository",u.downgradeInjectable(S))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(1140),o=n(4);n(400),n(400);var a=n(401);n(401),n(14);var s=n(319),c=(n(106),n(7)),l=n(16),u=(n(41),n(1188)),d=(n(36),n(6)),p=n(0),h=n(309),f=(n(39),n(103),n(73),n(17),n(0)),g=n(400),m=n(401),v=n(14),y=n(17),b=n(106),w=n(41),S=n(39),x=n(103),M=n(73),E=n(36);!function(t){t.START="start",t.END="end"}(e.RoutePoint||(e.RoutePoint={}));var C=function(){function t(t,e,n,i,r,o,a,s,c,d,p,h){var f=this;this.gettext=t,this.gettextCatalog=e,this.RouteRestService=n,this.InstructionService=i,this.GeoTransformationService=r,this.ViewService=o,this.ProgressReportService=a,this.ErrorService=s,this.PoiService=c,this.PoiRepository=d,this.UrlService=p,this.onRouteChanged=new l.Signal,this.onRoutePlanned=new l.Signal,this.onRouteInstructionMouseOver=new l.Signal,this.onRouteInstructionMouseOut=new l.Signal,this.onRouteInstructionClick=new l.Signal,this.GeoTransformationService.offsetChanged.connect(function(){return f.refreshLastRoute()}),this.errorHandler=this.ErrorService.createDefaultWrapper(),this.routeExceptionDetector=new u.ServerRoutingExceptionDetector(this.gettextCatalog),h.onAuthenticationChanged.connect(function(){return f.clearStoredRoute()})}return t.prototype.route=function(t,e,n){var i=this;return void 0===n&&(n=!0),Promise.all([this.getPoi(t),this.getPoi(e)]).then(function(t){return i.PoiService.routeStart=t[0],i.PoiService.routeEnd=t[1],i.PoiService.enterRouteMode(),i.UrlService.addRouteParameters(i.PoiService.routeStart,i.PoiService.routeEnd),i.findRoute(i.PoiService.routeStart.globalLocation,i.PoiService.routeEnd.globalLocation)}).then(function(t){if(i.PoiService.wasRouteFound=t.instructions.length>0,i.PoiService.poisChanged.emit(),i.PoiService.wasRouteFound){var e=Promise.resolve();return n&&(e=t.instructions[0].moveToInstruction()),e.then(function(){return t})}return Promise.reject("No route found.")})},t.prototype.getPoi=function(t){return t instanceof h.PoiEntity?Promise.resolve(t):Promise.resolve(this.PoiService.getLocationAsPoi(t,!0))},t.prototype.findRoute=function(t,e){var n=this;if(this.clearStoredRoute(!1),t.equals(e)){var i=new r.RouteData;return i.message=this.gettextCatalog.getString("Start and destination are the same",void 0,"Route status message"),this.storeLastRoute(i,!0),Promise.reject(void 0)}return this.wrapRoutePromise(this.RouteRestService.getRoute(t,e,!1).then(function(t){return n.processRoute(t,!0)}))},t.prototype.getRoute=function(t,e){var n=this;return t.equals(e)?Promise.reject("Source and destination are the same."):this.RouteRestService.getRoute(t,e,!1).then(function(t){return 0===t.length?Promise.reject("No route found."):t}).then(function(t){return n.processRoute(t,!0)})},t.prototype.clearStoredRoute=function(t){void 0===t&&(t=!1),this.storeLastRoute(void 0,t)},t.prototype.clear=function(){this.clearStoredRoute(!0),this.PoiService.unhighlightPois([this.PoiService.routeStart,this.PoiService.routeEnd]),this.PoiService.exitRouteMode(),this.PoiService.clearRouting(),this.UrlService.resetRouteParameters()},t.prototype.refreshLastRoute=function(){if(this.lastRoute)return this.lastRoute=this.processRoute(this.lastRoute.elements,!0),this.lastRoute},t.prototype.storeCurrentView=function(){this.storedImage=this.ViewService.mainView.getImage(),this.storedViewDir={lon:this.ViewService.mainView.getViewDir().lon,lat:this.ViewService.mainView.getViewDir().lat}},t.prototype.hasStoredView=function(){return!!this.storedImage&&!!this.storedViewDir},t.prototype.getStoredImage=function(){return this.storedImage},t.prototype.getStoredViewDir=function(){return this.storedViewDir},t.prototype.processRoute=function(t,e){var n=new r.RouteData;return t&&t.length?(e&&(s.sanitizeRoute(t),n.instructions=this.InstructionService.generate(t),n.routeLength=a.InstructionService.calculateRouteLength(n.instructions)),n.elements=t,this.calculateBoundingBox(n),n):n},t.prototype.wrapRoutePromise=function(t){var e=this,n=this.ProgressReportService.addTask(this.gettextCatalog.getString("Routing..."),1,!1,!0,!0);return this.errorHandler.wrap(this.routingFinally(t.catch(function(t){if(!e.routeExceptionDetector.applies(t))return Promise.reject(t);var n=new r.RouteData;return n.message=e.routeExceptionDetector.report(),e.storeLastRoute(n),Promise.reject(e.routeExceptionDetector.getExceptionMessage(t))}),n))},t.prototype.routingFinally=function(t,e){var n=this;return t.then(function(t){return t.available||t.message||(t.message=n.gettextCatalog.getString("No route found",void 0,"Route status message")),n.storeLastRoute(t),e.itemDone(),t}).catch(function(t){return e.itemDone(),Promise.reject(t)})},t.prototype.storeLastRoute=function(t,e){void 0===e&&(e=!0),this.lastRoute=t,e&&(this.onRoutePlanned.emit(this.lastRoute),this.onRouteChanged.emit(this.lastRoute))},t.prototype.calculateBoundingBox=function(t){if(t.available){var e=new o.Box3,n=c.map(t.instructions,function(t){return t.position});n=this.GeoTransformationService.vectorArrayToLocal(n),e.setFromPoints(n),t.boundingBox=e}},t.ɵfac=function(e){return new(e||t)(f.ɵɵinject("gettext"),f.ɵɵinject("gettextCatalog"),f.ɵɵinject(g.RouteRestService),f.ɵɵinject(m.InstructionService),f.ɵɵinject(v.GeoTransformationService),f.ɵɵinject(y.ViewService),f.ɵɵinject(b.ProgressReportService),f.ɵɵinject(w.ErrorService),f.ɵɵinject(S.PoiService),f.ɵɵinject(x.PoiRepository),f.ɵɵinject(M.UrlService),f.ɵɵinject(E.AuthenticationService))},t.ɵprov=f.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.RouteService=C,f.ɵsetClassMetadata(C,[{type:p.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:p.Inject,args:["gettext"]}]},{type:void 0,decorators:[{type:p.Inject,args:["gettextCatalog"]}]},{type:g.RouteRestService},{type:m.InstructionService},{type:v.GeoTransformationService},{type:y.ViewService},{type:b.ProgressReportService},{type:w.ErrorService},{type:S.PoiService},{type:x.PoiRepository},{type:M.UrlService},{type:E.AuthenticationService}]},null),i.module("IVWebApp").service("RouteService",d.downgradeInjectable(C))},function(t,e,n){"use strict";var i;Object.defineProperty(e,"__esModule",{value:!0}),function(t){t[t.Map=0]="Map",t[t.Perspective=1]="Perspective"}(i=e.SceneViewMode||(e.SceneViewMode={})),e.nextSceneViewMode=function(t){return t===i.Map?i.Perspective:i.Map}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(20),o=n(640),a=n(7),s=n(6),c=n(0),l=n(8),u=n(0),d=function(){function t(t){this.$timeout=t,this.lastId=0,this.tasks=[]}return t.prototype.getTasks=function(){return this.tasks},t.prototype.addTask=function(t,e,n,i,a,s,c){var l=this;void 0===n&&(n=!1),void 0===i&&(i=!1),void 0===a&&(a=!1),void 0===s&&(s=!1),void 0===c&&(c=0);var u=++this.lastId,d=new o.ProgressReportTask(u,t,e,n,i,a,s,this.removeTaskWithDelay.bind(this));return d.startAnimationTimeout=this.$timeout(function(){l.visible=!0,l.tasks.push(d),n&&!l.modal&&(l.modal=!0),s&&!l.transparent&&(l.transparent=!0),r.invalidateAngular()},c),d},t.prototype.removeTaskWithDelay=function(t){var e=this;this.$timeout.cancel(t.startAnimationTimeout)||(this.$timeout(function(){return e.removeTask(t)},1e3).catch(l.handleWarning),r.invalidateAngular())},t.prototype.removeTask=function(t){var e=this.findIndexOfTask(t.taskId);t&&(this.tasks.splice(e,1),0===Object.keys(this.tasks).length&&(this.visible=!1),t.modal&&this.recheckModal(),t.transparent&&(this.transparent=a.some(this.tasks,function(t){return t.transparent})))},t.prototype.findIndexOfTask=function(t){for(var e=0;e<this.tasks.length;e++)if(this.tasks[e].taskId===t)return e;return-1},t.prototype.recheckModal=function(){for(var t=!1,e=0,n=this.tasks;e<n.length;e++)if(n[e].modal){t=!0;break}this.modal=t},t.prototype.numOfTasks=function(){return Object.keys(this.tasks).length},t.prototype.isCompactOnly=function(){for(var t=0,e=this.tasks;t<e.length;t++)if(!e[t].compact)return!1;return!0},t.prototype.numOfItems=function(){return this.numItems(void 0,"numItems")},t.prototype.numOfDoneItems=function(){return this.numItems(void 0,"doneItems")},t.prototype.numItems=function(t,e){if(!t)return this.sumProperty(e);var n=this.findIndexOfTask(t);return void 0!==this.tasks[n]?"numItems"===e?this.tasks[n].numItems:"doneItems"===e?this.tasks[n].doneItems:void 0:void 0},t.prototype.sumProperty=function(t){for(var e=0,n=0,i=this.tasks;n<i.length;n++){var r=i[n],o=this.findIndexOfTask(r.taskId);"numItems"===t?e+=this.tasks[o].numItems:"doneItems"===t&&(e+=this.tasks[o].doneItems)}return e},t.prototype.isModal=function(){return this.modal},t.prototype.isVisible=function(){return this.visible},t.prototype.isTransparent=function(){return this.transparent},t.ɵfac=function(e){return new(e||t)(u.ɵɵinject("$timeout"))},t.ɵprov=u.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.ProgressReportService=d,u.ɵsetClassMetadata(d,[{type:c.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:c.Inject,args:["$timeout"]}]}]},null),i.module("IVWebApp").service("ProgressReportService",s.downgradeInjectable(d))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.promiseFinally=function(t,e){return t.then(function(t){return e(),t}).catch(function(t){return e(),Promise.reject(t)})}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});e.IVFrontendException=function(t){this.message=t}},function(t,e,n){var i=n(234),r=n(87);t.exports=function(t){return i(r(t))}},function(t,e,n){var i,r,o,a=n(463),s=n(34),c=n(42),l=n(88),u=n(58),d=n(287),p=n(239),h=s.WeakMap;if(a){var f=new h,g=f.get,m=f.has,v=f.set;i=function(t,e){return v.call(f,t,e),e},r=function(t){return g.call(f,t)||{}},o=function(t){return m.call(f,t)}}else{var y=d("state");p[y]=!0,i=function(t,e){return l(t,y,e),e},r=function(t){return u(t,y)?t[y]:{}},o=function(t){return u(t,y)}}t.exports={set:i,get:r,has:o,enforce:function(t){return o(t)?r(t):i(t,{})},getterFor:function(t){return function(e){var n;if(!c(e)||(n=r(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},function(t,e,n){var i=n(87),r=/"/g;t.exports=function(t,e,n,o){var a=String(i(t)),s="<"+e;return""!==n&&(s+=" "+n+'="'+String(o).replace(r,"&quot;")+'"'),s+">"+a+"</"+e+">"}},function(t,e,n){var i=n(18);t.exports=function(t){return i(function(){var e=""[t]('"');return e!==e.toLowerCase()||e.split('"').length>3})}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.ENTER_BUILDING="walk_inside",t.EXIT_BUILDING="walk_outside",t.ENTER_ELEVATOR_UP="enter_elevator_up",t.ENTER_ELEVATOR_DOWN="enter_elevator_down",t.EXIT_ELEVATOR="exit_elevator",t.ENTER_STAIRS_UP="enter_stairs_up",t.ENTER_STAIRS_DOWN="enter_stairs_down",t.EXIT_STAIRS="exit_stairs",t.CHANGE_FLOOR_UP="change_floor_up",t.CHANGE_FLOOR_DOWN="change_floor_down",t.START="start",t.END="end",t.EDGE="edge",t.SOURCE_PROJECTION="source_projection_to_navgraph",t.DESTINATION_PROJECTION="destination_projection_to_navgraph"}(e.InstructionType||(e.InstructionType={}))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(605),n(57)),o=n(21),a=(n(36),n(0)),s=n(6),c=n(8),l=n(0),u=n(605),d=n(36),p=function(){function t(t,e,n){var i=this;this.gettextCatalog=t,this.GroupRepository=e,this.AuthenticationService=n,this.groupsTreeData=void 0,this.groupsArrayData=void 0,this.AuthenticationService.initialized.then(function(t){return i.getGroupsAsTree(t.primaryGroups)}).catch(c.handleWarning),this.AuthenticationService.onAuthenticationChanged.connect(function(t){return i.getGroupsAsTree(t.primaryGroups)})}return t.prototype.getGroupsAsTree=function(t){var e=this;return this.GroupRepository.findByGroupIds(t).then(function(t){return e.setGroups(t),t})},t.prototype.getGroupsAsArray=function(){return this.groupsArrayData},t.prototype.clearGroups=function(){this.groupsTreeData=void 0,this.groupsArrayData=void 0},t.prototype.createGroupsArray=function(t){var e=this,n=[];return i.forEach(t.sort(this.sortGroups),function(t){n.push(t),n=n.concat(e.createGroupsArray(t.childGroups))}),n},t.prototype.addGroup=function(t,e,n,i){var r=this,a=this.GroupRepository.create();return a.name=t,a.attributes=i,a.security.groupRead=e,a.security.groupWrite=n,this.GroupRepository.save(a).then(function(t){o.TrackingService.trackGroupAdded();var e=t[0];return r.addGroupSuccess(e),e})},t.prototype.updateGroup=function(t,e,n){var i=this,r=this.GroupRepository.create();return r.id=t,r.name=e,r.attributes=n,this.GroupRepository.save(r).then(function(e){var n=e[0];return i.updateGroupSuccess(t,n),n})},t.prototype.removeGroup=function(t){var e=this;return this.GroupRepository.remove(t).then(function(t){return e.removeGroupSuccess(),t})},t.prototype.getGroupAttributesNames=function(){var t;return(t={})[r.GroupAttributes.CAN_CREATE_BUNDLES]=this.gettextCatalog.getString("Create bundles"),t[r.GroupAttributes.CAN_CREATE_DATASETS]=this.gettextCatalog.getString("Create datasets"),t[r.GroupAttributes.CAN_CREATE_POI_GROUPS]=this.gettextCatalog.getString("Create POI categories"),t[r.GroupAttributes.CAN_CREATE_POIS]=this.gettextCatalog.getString("Create POIs"),t[r.GroupAttributes.CAN_CREATE_POLYGONS]=this.gettextCatalog.getString("Create vector maps"),t[r.GroupAttributes.CAN_CREATE_USER_GROUPS]=this.gettextCatalog.getString("Create user groups"),t[r.GroupAttributes.CAN_MAKE_PUBLIC]=this.gettextCatalog.getString("Make content public"),t[r.GroupAttributes.CAN_VIEW_SITE_MODEL_ATTRIBUTES]=this.gettextCatalog.getString("View site model attributes"),t[r.GroupAttributes.CAN_EDIT_SITE_MODEL_ATTRIBUTES]=this.gettextCatalog.getString("Edit site model attributes"),t[r.GroupAttributes.CAN_CROP_AND_DOWNLOAD_POINT_CLOUD]=this.gettextCatalog.getString("Crop and download point cloud"),t[r.GroupAttributes.CAN_USE_MEASUREMENT_TOOL]=this.gettextCatalog.getString("Use measurement tool"),t[r.GroupAttributes.CAN_SAVE_MEASUREMENTS]=this.gettextCatalog.getString("Save measurements"),t[r.GroupAttributes.CAN_EXPORT_POI_AUDIT_RECORDS]=this.gettextCatalog.getString("Export POI audit records"),t},t.prototype.setGroups=function(t){this.groupsTreeData=t,this.groupsArrayData=this.createGroupsArray(t)},t.prototype.getGroupParent=function(t){return this.groupsArrayData[this.getGroupIndex(t.security.groupWrite,this.groupsArrayData)]},t.prototype.sortGroups=function(e,n){return e.id===t.publicGroupId?-1:e.name.localeCompare(n.name)},t.prototype.addGroupSuccess=function(t){this.getGroupParent(t).childGroups.push(t),this.setGroups(this.groupsTreeData)},t.prototype.updateGroupSuccess=function(t,e){var n=this,i=this.getGroupIndex(t,this.groupsTreeData);i>-1?this.groupsTreeData[i]=e:this.groupsArrayData.forEach(function(i){var r=n.getGroupIndex(t,i.childGroups);r>-1&&(i.childGroups[r]=e)}),this.setGroups(this.groupsTreeData)},t.prototype.removeGroupSuccess=function(){var t=this;this.groupsArrayData.forEach(function(e){var n=t.getGroupIndex(e.id,e.childGroups);n>-1&&e.childGroups.splice(n,1)}),this.setGroups(this.groupsTreeData)},t.prototype.getGroupIndex=function(t,e){return e.findIndex(function(e){return e.id===t})},t.publicGroupId=0,t.adminGroupId=1,t.ɵfac=function(e){return new(e||t)(l.ɵɵinject("gettextCatalog"),l.ɵɵinject(u.GroupRepository),l.ɵɵinject(d.AuthenticationService))},t.ɵprov=l.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.GroupService=p,l.ɵsetClassMetadata(p,[{type:a.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:a.Inject,args:["gettextCatalog"]}]},{type:u.GroupRepository},{type:d.AuthenticationService}]},null),i.module("IVWebApp").service("GroupService",s.downgradeInjectable(p))},function(t,e,n){"use strict";n.d(e,"a",function(){return X}),n.d(e,"b",function(){return K}),n.d(e,"c",function(){return H}),n.d(e,"d",function(){return A}),n.d(e,"e",function(){return R}),n.d(e,"f",function(){return Z});var i=n(1),r=n(51),o=n(0),a=n(13),s=n(37),c=n(3),l=n(23),u=n(69),d=n(32),p=n(33),h=n(12),f=n(279),g=n(221),m=n(341),v=n(60),y=function(){function t(t,e){this._viewportRuler=t,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=e}return t.prototype.attach=function(){},t.prototype.enable=function(){if(this._canBeEnabled()){var t=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=t.style.left||"",this._previousHTMLStyles.top=t.style.top||"",t.style.left=Object(l.d)(-this._previousScrollPosition.left),t.style.top=Object(l.d)(-this._previousScrollPosition.top),t.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}},t.prototype.disable=function(){if(this._isEnabled){var t=this._document.documentElement,e=this._document.body,n=t.style,i=e.style,r=n.scrollBehavior||"",o=i.scrollBehavior||"";this._isEnabled=!1,n.left=this._previousHTMLStyles.left,n.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),n.scrollBehavior=i.scrollBehavior="auto",window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),n.scrollBehavior=r,i.scrollBehavior=o}},t.prototype._canBeEnabled=function(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;var t=this._document.body,e=this._viewportRuler.getViewportSize();return t.scrollHeight>e.height||t.scrollWidth>e.width},t}();
  1867. /**
  1868. * @license
  1869. * Copyright Google LLC All Rights Reserved.
  1870. *
  1871. * Use of this source code is governed by an MIT-style license that can be
  1872. * found in the LICENSE file at https://angular.io/license
  1873. */function b(){return Error("Scroll strategy has already been attached.")}var w=function(){function t(t,e,n,i){var r=this;this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=i,this._scrollSubscription=null,this._detach=function(){r.disable(),r._overlayRef.hasAttached()&&r._ngZone.run(function(){return r._overlayRef.detach()})}}return t.prototype.attach=function(t){if(this._overlayRef)throw b();this._overlayRef=t},t.prototype.enable=function(){var t=this;if(!this._scrollSubscription){var e=this._scrollDispatcher.scrolled(0);this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=e.subscribe(function(){var e=t._viewportRuler.getViewportScrollPosition().top;Math.abs(e-t._initialScrollPosition)>t._config.threshold?t._detach():t._overlayRef.updatePosition()})):this._scrollSubscription=e.subscribe(this._detach)}},t.prototype.disable=function(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)},t.prototype.detach=function(){this.disable(),this._overlayRef=null},t}(),S=function(){function t(){}return t.prototype.enable=function(){},t.prototype.disable=function(){},t.prototype.attach=function(){},t}();
  1874. /**
  1875. * @license
  1876. * Copyright Google LLC All Rights Reserved.
  1877. *
  1878. * Use of this source code is governed by an MIT-style license that can be
  1879. * found in the LICENSE file at https://angular.io/license
  1880. */
  1881. /**
  1882. * @license
  1883. * Copyright Google LLC All Rights Reserved.
  1884. *
  1885. * Use of this source code is governed by an MIT-style license that can be
  1886. * found in the LICENSE file at https://angular.io/license
  1887. */function x(t,e){return e.some(function(e){var n=t.bottom<e.top,i=t.top>e.bottom,r=t.right<e.left,o=t.left>e.right;return n||i||r||o})}function M(t,e){return e.some(function(e){var n=t.top<e.top,i=t.bottom>e.bottom,r=t.left<e.left,o=t.right>e.right;return n||i||r||o})}
  1888. /**
  1889. * @license
  1890. * Copyright Google LLC All Rights Reserved.
  1891. *
  1892. * Use of this source code is governed by an MIT-style license that can be
  1893. * found in the LICENSE file at https://angular.io/license
  1894. */var E=function(){function t(t,e,n,i){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=i,this._scrollSubscription=null}return t.prototype.attach=function(t){if(this._overlayRef)throw b();this._overlayRef=t},t.prototype.enable=function(){var t=this;if(!this._scrollSubscription){var e=this._config?this._config.scrollThrottle:0;this._scrollSubscription=this._scrollDispatcher.scrolled(e).subscribe(function(){if(t._overlayRef.updatePosition(),t._config&&t._config.autoClose){var e=t._overlayRef.overlayElement.getBoundingClientRect(),n=t._viewportRuler.getViewportSize(),i=n.width,r=n.height;x(e,[{width:i,height:r,bottom:r,right:i,top:0,left:0}])&&(t.disable(),t._ngZone.run(function(){return t._overlayRef.detach()}))}})}},t.prototype.disable=function(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)},t.prototype.detach=function(){this.disable(),this._overlayRef=null},t}(),C=function(){function t(t,e,n,i){var r=this;this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=function(){return new S},this.close=function(t){return new w(r._scrollDispatcher,r._ngZone,r._viewportRuler,t)},this.block=function(){return new y(r._viewportRuler,r._document)},this.reposition=function(t){return new E(r._scrollDispatcher,r._viewportRuler,r._ngZone,t)},this._document=i}return t.ctorParameters=function(){return[{type:r.b},{type:r.d},{type:o.NgZone},{type:void 0,decorators:[{type:o.Inject,args:[c.DOCUMENT]}]}]},t.ɵprov=Object(o["ɵɵdefineInjectable"])({factory:function(){return new t(Object(o["ɵɵinject"])(r.b),Object(o["ɵɵinject"])(r.d),Object(o["ɵɵinject"])(o.NgZone),Object(o["ɵɵinject"])(c.DOCUMENT))},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)(o["ɵɵinject"](r.b),o["ɵɵinject"](r.d),o["ɵɵinject"](o.NgZone),o["ɵɵinject"](c.DOCUMENT))},t}(),A=function(t){var e,n;if(this.scrollStrategy=new S,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t){var r=Object.keys(t);try{for(var o=Object(i.j)(r),a=o.next();!a.done;a=o.next()){var s=a.value;void 0!==t[s]&&(this[s]=t[s])}}catch(t){e={error:t}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(e)throw e.error}}}},T=function(t,e,n,i,r){this.offsetX=n,this.offsetY=i,this.panelClass=r,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY},O=function(){},_=function(){function t(t,e){this.connectionPair=t,this.scrollableViewProperties=e}return t.ctorParameters=function(){return[{type:T},{type:O,decorators:[{type:o.Optional}]}]},t}();
  1895. /**
  1896. * @license
  1897. * Copyright Google LLC All Rights Reserved.
  1898. *
  1899. * Use of this source code is governed by an MIT-style license that can be
  1900. * found in the LICENSE file at https://angular.io/license
  1901. */function P(t,e){if("top"!==e&&"bottom"!==e&&"center"!==e)throw Error("ConnectedPosition: Invalid "+t+' "'+e+'". Expected "top", "bottom" or "center".')}function I(t,e){if("start"!==e&&"end"!==e&&"center"!==e)throw Error("ConnectedPosition: Invalid "+t+' "'+e+'". Expected "start", "end" or "center".')}
  1902. /**
  1903. * @license
  1904. * Copyright Google LLC All Rights Reserved.
  1905. *
  1906. * Use of this source code is governed by an MIT-style license that can be
  1907. * found in the LICENSE file at https://angular.io/license
  1908. */var k=function(){function t(t){var e=this;this._attachedOverlays=[],this._keydownListener=function(t){for(var n=e._attachedOverlays,i=n.length-1;i>-1;i--)if(n[i]._keydownEventSubscriptions>0){n[i]._keydownEvents.next(t);break}},this._document=t}return t.prototype.ngOnDestroy=function(){this._detach()},t.prototype.add=function(t){this.remove(t),this._isAttached||(this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0),this._attachedOverlays.push(t)},t.prototype.remove=function(t){var e=this._attachedOverlays.indexOf(t);e>-1&&this._attachedOverlays.splice(e,1),0===this._attachedOverlays.length&&this._detach()},t.prototype._detach=function(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)},t.ctorParameters=function(){return[{type:void 0,decorators:[{type:o.Inject,args:[c.DOCUMENT]}]}]},t.ɵprov=Object(o["ɵɵdefineInjectable"])({factory:function(){return new t(Object(o["ɵɵinject"])(c.DOCUMENT))},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)(o["ɵɵinject"](c.DOCUMENT))},t}();new o.Optional,new o.SkipSelf,c.DOCUMENT;
  1909. /**
  1910. * @license
  1911. * Copyright Google LLC All Rights Reserved.
  1912. *
  1913. * Use of this source code is governed by an MIT-style license that can be
  1914. * found in the LICENSE file at https://angular.io/license
  1915. */
  1916. var D=!("undefined"==typeof window||!window||!window.__karma__&&!window.jasmine),R=function(){function t(t,e){this._platform=e,this._document=t}return t.prototype.ngOnDestroy=function(){var t=this._containerElement;t&&t.parentNode&&t.parentNode.removeChild(t)},t.prototype.getContainerElement=function(){return this._containerElement||this._createContainer(),this._containerElement},t.prototype._createContainer=function(){var t=this._platform?this._platform.isBrowser:"undefined"!=typeof window;if(t||D)for(var e=this._document.querySelectorAll('.cdk-overlay-container[platform="server"], .cdk-overlay-container[platform="test"]'),n=0;n<e.length;n++)e[n].parentNode.removeChild(e[n]);var i=this._document.createElement("div");i.classList.add("cdk-overlay-container"),D?i.setAttribute("platform","test"):t||i.setAttribute("platform","server"),this._document.body.appendChild(i),this._containerElement=i},t.ctorParameters=function(){return[{type:void 0,decorators:[{type:o.Inject,args:[c.DOCUMENT]}]},{type:a.a}]},t.ɵprov=Object(o["ɵɵdefineInjectable"])({factory:function(){return new t(Object(o["ɵɵinject"])(c.DOCUMENT),Object(o["ɵɵinject"])(a.a))},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)(o["ɵɵinject"](c.DOCUMENT),o["ɵɵinject"](a.a))},t}();new o.Optional,new o.SkipSelf,c.DOCUMENT;
  1917. /**
  1918. * @license
  1919. * Copyright Google LLC All Rights Reserved.
  1920. *
  1921. * Use of this source code is governed by an MIT-style license that can be
  1922. * found in the LICENSE file at https://angular.io/license
  1923. */
  1924. var L=function(){function t(t,e,n,i,r,o,a,s){var c=this;this._portalOutlet=t,this._host=e,this._pane=n,this._config=i,this._ngZone=r,this._keyboardDispatcher=o,this._document=a,this._location=s,this._backdropElement=null,this._backdropClick=new d.a,this._attachments=new d.a,this._detachments=new d.a,this._locationChanges=p.a.EMPTY,this._backdropClickHandler=function(t){return c._backdropClick.next(t)},this._keydownEventsObservable=new h.a(function(t){var e=c._keydownEvents.subscribe(t);return c._keydownEventSubscriptions++,function(){e.unsubscribe(),c._keydownEventSubscriptions--}}),this._keydownEvents=new d.a,this._keydownEventSubscriptions=0,i.scrollStrategy&&(this._scrollStrategy=i.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=i.positionStrategy}return Object.defineProperty(t.prototype,"overlayElement",{get:function(){return this._pane},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"backdropElement",{get:function(){return this._backdropElement},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hostElement",{get:function(){return this._host},enumerable:!0,configurable:!0}),t.prototype.attach=function(t){var e=this,n=this._portalOutlet.attach(t);return!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._positionStrategy&&this._positionStrategy.attach(this),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.asObservable().pipe(Object(g.a)(1)).subscribe(function(){e.hasAttached()&&e.updatePosition()}),this._togglePointerEvents(!0),this._config.hasBackdrop&&this._attachBackdrop(),this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!0),this._attachments.next(),this._keyboardDispatcher.add(this),this._config.disposeOnNavigation&&this._location&&(this._locationChanges=this._location.subscribe(function(){return e.dispose()})),n},t.prototype.detach=function(){if(this.hasAttached()){this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();var t=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenStable(),this._locationChanges.unsubscribe(),t}},t.prototype.dispose=function(){var t=this.hasAttached();this._positionStrategy&&this._positionStrategy.dispose(),this._disposeScrollStrategy(),this.detachBackdrop(),this._locationChanges.unsubscribe(),this._keyboardDispatcher.remove(this),this._portalOutlet.dispose(),this._attachments.complete(),this._backdropClick.complete(),this._keydownEvents.complete(),this._host&&this._host.parentNode&&(this._host.parentNode.removeChild(this._host),this._host=null),this._previousHostParent=this._pane=null,t&&this._detachments.next(),this._detachments.complete()},t.prototype.hasAttached=function(){return this._portalOutlet.hasAttached()},t.prototype.backdropClick=function(){return this._backdropClick.asObservable()},t.prototype.attachments=function(){return this._attachments.asObservable()},t.prototype.detachments=function(){return this._detachments.asObservable()},t.prototype.keydownEvents=function(){return this._keydownEventsObservable},t.prototype.getConfig=function(){return this._config},t.prototype.updatePosition=function(){this._positionStrategy&&this._positionStrategy.apply()},t.prototype.updatePositionStrategy=function(t){t!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=t,this.hasAttached()&&(t.attach(this),this.updatePosition()))},t.prototype.updateSize=function(t){this._config=Object(i.a)(Object(i.a)({},this._config),t),this._updateElementSize()},t.prototype.setDirection=function(t){this._config=Object(i.a)(Object(i.a)({},this._config),{direction:t}),this._updateElementDirection()},t.prototype.addPanelClass=function(t){this._pane&&this._toggleClasses(this._pane,t,!0)},t.prototype.removePanelClass=function(t){this._pane&&this._toggleClasses(this._pane,t,!1)},t.prototype.getDirection=function(){var t=this._config.direction;return t?"string"==typeof t?t:t.value:"ltr"},t.prototype.updateScrollStrategy=function(t){t!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=t,this.hasAttached()&&(t.attach(this),t.enable()))},t.prototype._updateElementDirection=function(){this._host.setAttribute("dir",this.getDirection())},t.prototype._updateElementSize=function(){if(this._pane){var t=this._pane.style;t.width=Object(l.d)(this._config.width),t.height=Object(l.d)(this._config.height),t.minWidth=Object(l.d)(this._config.minWidth),t.minHeight=Object(l.d)(this._config.minHeight),t.maxWidth=Object(l.d)(this._config.maxWidth),t.maxHeight=Object(l.d)(this._config.maxHeight)}},t.prototype._togglePointerEvents=function(t){this._pane.style.pointerEvents=t?"auto":"none"},t.prototype._attachBackdrop=function(){var t=this;this._backdropElement=this._document.createElement("div"),this._backdropElement.classList.add("cdk-overlay-backdrop"),this._config.backdropClass&&this._toggleClasses(this._backdropElement,this._config.backdropClass,!0),this._host.parentElement.insertBefore(this._backdropElement,this._host),this._backdropElement.addEventListener("click",this._backdropClickHandler),"undefined"!=typeof requestAnimationFrame?this._ngZone.runOutsideAngular(function(){requestAnimationFrame(function(){t._backdropElement&&t._backdropElement.classList.add("cdk-overlay-backdrop-showing")})}):this._backdropElement.classList.add("cdk-overlay-backdrop-showing")},t.prototype._updateStackingOrder=function(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)},t.prototype.detachBackdrop=function(){var t=this,e=this._backdropElement;if(e){var n,i=function(){e&&(e.removeEventListener("click",t._backdropClickHandler),e.removeEventListener("transitionend",i),e.parentNode&&e.parentNode.removeChild(e)),t._backdropElement==e&&(t._backdropElement=null),t._config.backdropClass&&t._toggleClasses(e,t._config.backdropClass,!1),clearTimeout(n)};e.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(function(){e.addEventListener("transitionend",i)}),e.style.pointerEvents="none",n=this._ngZone.runOutsideAngular(function(){return setTimeout(i,500)})}},t.prototype._toggleClasses=function(t,e,n){var i=t.classList;Object(l.b)(e).forEach(function(t){t&&(n?i.add(t):i.remove(t))})},t.prototype._detachContentWhenStable=function(){var t=this;this._ngZone.runOutsideAngular(function(){var e=t._ngZone.onStable.asObservable().pipe(Object(m.a)(Object(f.a)(t._attachments,t._detachments))).subscribe(function(){t._pane&&t._host&&0!==t._pane.children.length||(t._pane&&t._config.panelClass&&t._toggleClasses(t._pane,t._config.panelClass,!1),t._host&&t._host.parentElement&&(t._previousHostParent=t._host.parentElement,t._previousHostParent.removeChild(t._host)),e.unsubscribe())})})},t.prototype._disposeScrollStrategy=function(){var t=this._scrollStrategy;t&&(t.disable(),t.detach&&t.detach())},t}(),N=/([A-Za-z%]+)$/,j=function(){function t(t,e,n,i,r){this._viewportRuler=e,this._document=n,this._platform=i,this._overlayContainer=r,this._lastBoundingBoxSize={width:0,height:0},this._isPushed=!1,this._canPush=!0,this._growAfterOpen=!1,this._hasFlexibleDimensions=!0,this._positionLocked=!1,this._viewportMargin=0,this._scrollables=[],this._preferredPositions=[],this._positionChanges=new d.a,this._resizeSubscription=p.a.EMPTY,this._offsetX=0,this._offsetY=0,this._appliedPanelClasses=[],this.positionChanges=this._positionChanges.asObservable(),this.setOrigin(t)}return Object.defineProperty(t.prototype,"positions",{get:function(){return this._preferredPositions},enumerable:!0,configurable:!0}),t.prototype.attach=function(t){var e=this;if(this._overlayRef&&t!==this._overlayRef)throw Error("This position strategy is already attached to an overlay");this._validatePositions(),t.hostElement.classList.add("cdk-overlay-connected-position-bounding-box"),this._overlayRef=t,this._boundingBox=t.hostElement,this._pane=t.overlayElement,this._isDisposed=!1,this._isInitialRender=!0,this._lastPosition=null,this._resizeSubscription.unsubscribe(),this._resizeSubscription=this._viewportRuler.change().subscribe(function(){e._isInitialRender=!0,e.apply()})},t.prototype.apply=function(){var t,e,n,r;if(!this._isDisposed&&this._platform.isBrowser)if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)this.reapplyLastPosition();else{this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect();var o,a=this._originRect,s=this._overlayRect,c=this._viewportRect,l=[];try{for(var u=Object(i.j)(this._preferredPositions),d=u.next();!d.done;d=u.next()){var p=d.value,h=this._getOriginPoint(a,p),f=this._getOverlayPoint(h,s,p),g=this._getOverlayFit(f,s,c,p);if(g.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(p,h);this._canFitWithFlexibleDimensions(g,f,c)?l.push({position:p,origin:h,overlayRect:s,boundingBoxRect:this._calculateBoundingBoxRect(h,p)}):(!o||o.overlayFit.visibleArea<g.visibleArea)&&(o={overlayFit:g,overlayPoint:f,originPoint:h,position:p,overlayRect:s})}}catch(e){t={error:e}}finally{try{d&&!d.done&&(e=u.return)&&e.call(u)}finally{if(t)throw t.error}}if(l.length){var m=null,v=-1;try{for(var y=Object(i.j)(l),b=y.next();!b.done;b=y.next()){var w=b.value,S=w.boundingBoxRect.width*w.boundingBoxRect.height*(w.position.weight||1);S>v&&(v=S,m=w)}}catch(t){n={error:t}}finally{try{b&&!b.done&&(r=y.return)&&r.call(y)}finally{if(n)throw n.error}}return this._isPushed=!1,void this._applyPosition(m.position,m.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(o.position,o.originPoint);this._applyPosition(o.position,o.originPoint)}},t.prototype.detach=function(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()},t.prototype.dispose=function(){this._isDisposed||(this._boundingBox&&V(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove("cdk-overlay-connected-position-bounding-box"),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)},t.prototype.reapplyLastPosition=function(){if(!this._isDisposed&&(!this._platform||this._platform.isBrowser)){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect();var t=this._lastPosition||this._preferredPositions[0],e=this._getOriginPoint(this._originRect,t);this._applyPosition(t,e)}},t.prototype.withScrollableContainers=function(t){return this._scrollables=t,this},t.prototype.withPositions=function(t){return this._preferredPositions=t,-1===t.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this},t.prototype.withViewportMargin=function(t){return this._viewportMargin=t,this},t.prototype.withFlexibleDimensions=function(t){return void 0===t&&(t=!0),this._hasFlexibleDimensions=t,this},t.prototype.withGrowAfterOpen=function(t){return void 0===t&&(t=!0),this._growAfterOpen=t,this},t.prototype.withPush=function(t){return void 0===t&&(t=!0),this._canPush=t,this},t.prototype.withLockedPosition=function(t){return void 0===t&&(t=!0),this._positionLocked=t,this},t.prototype.setOrigin=function(t){return this._origin=t,this},t.prototype.withDefaultOffsetX=function(t){return this._offsetX=t,this},t.prototype.withDefaultOffsetY=function(t){return this._offsetY=t,this},t.prototype.withTransformOriginOn=function(t){return this._transformOriginSelector=t,this},t.prototype._getOriginPoint=function(t,e){var n;if("center"==e.originX)n=t.left+t.width/2;else{var i=this._isRtl()?t.right:t.left,r=this._isRtl()?t.left:t.right;n="start"==e.originX?i:r}return{x:n,y:"center"==e.originY?t.top+t.height/2:"top"==e.originY?t.top:t.bottom}},t.prototype._getOverlayPoint=function(t,e,n){var i,r;return i="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,r="center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height,{x:t.x+i,y:t.y+r}},t.prototype._getOverlayFit=function(t,e,n,i){var r=t.x,o=t.y,a=this._getOffset(i,"x"),s=this._getOffset(i,"y");a&&(r+=a),s&&(o+=s);var c=0-r,l=r+e.width-n.width,u=0-o,d=o+e.height-n.height,p=this._subtractOverflows(e.width,c,l),h=this._subtractOverflows(e.height,u,d),f=p*h;return{visibleArea:f,isCompletelyWithinViewport:e.width*e.height===f,fitsInViewportVertically:h===e.height,fitsInViewportHorizontally:p==e.width}},t.prototype._canFitWithFlexibleDimensions=function(t,e,n){if(this._hasFlexibleDimensions){var i=n.bottom-e.y,r=n.right-e.x,o=F(this._overlayRef.getConfig().minHeight),a=F(this._overlayRef.getConfig().minWidth),s=t.fitsInViewportVertically||null!=o&&o<=i,c=t.fitsInViewportHorizontally||null!=a&&a<=r;return s&&c}return!1},t.prototype._pushOverlayOnScreen=function(t,e,n){if(this._previousPushAmount&&this._positionLocked)return{x:t.x+this._previousPushAmount.x,y:t.y+this._previousPushAmount.y};var i,r,o=this._viewportRect,a=Math.max(t.x+e.width-o.right,0),s=Math.max(t.y+e.height-o.bottom,0),c=Math.max(o.top-n.top-t.y,0),l=Math.max(o.left-n.left-t.x,0);return i=e.width<=o.width?l||-a:t.x<this._viewportMargin?o.left-n.left-t.x:0,r=e.height<=o.height?c||-s:t.y<this._viewportMargin?o.top-n.top-t.y:0,this._previousPushAmount={x:i,y:r},{x:t.x+i,y:t.y+r}},t.prototype._applyPosition=function(t,e){if(this._setTransformOrigin(t),this._setOverlayElementStyles(e,t),this._setBoundingBoxStyles(e,t),t.panelClass&&this._addPanelClasses(t.panelClass),this._lastPosition=t,this._positionChanges.observers.length){var n=this._getScrollVisibility(),i=new _(t,n);this._positionChanges.next(i)}this._isInitialRender=!1},t.prototype._setTransformOrigin=function(t){if(this._transformOriginSelector){var e,n=this._boundingBox.querySelectorAll(this._transformOriginSelector),i=t.overlayY;e="center"===t.overlayX?"center":this._isRtl()?"start"===t.overlayX?"right":"left":"start"===t.overlayX?"left":"right";for(var r=0;r<n.length;r++)n[r].style.transformOrigin=e+" "+i}},t.prototype._calculateBoundingBoxRect=function(t,e){var n,i,r,o=this._viewportRect,a=this._isRtl();if("top"===e.overlayY)i=t.y,n=o.height-i+this._viewportMargin;else if("bottom"===e.overlayY)r=o.height-t.y+2*this._viewportMargin,n=o.height-r+this._viewportMargin;else{var s=Math.min(o.bottom-t.y+o.top,t.y),c=this._lastBoundingBoxSize.height;n=2*s,i=t.y-s,n>c&&!this._isInitialRender&&!this._growAfterOpen&&(i=t.y-c/2)}var l,u,d,p="start"===e.overlayX&&!a||"end"===e.overlayX&&a;if("end"===e.overlayX&&!a||"start"===e.overlayX&&a)d=o.width-t.x+this._viewportMargin,l=t.x-this._viewportMargin;else if(p)u=t.x,l=o.right-t.x;else{s=Math.min(o.right-t.x+o.left,t.x);var h=this._lastBoundingBoxSize.width;l=2*s,u=t.x-s,l>h&&!this._isInitialRender&&!this._growAfterOpen&&(u=t.x-h/2)}return{top:i,left:u,bottom:r,right:d,width:l,height:n}},t.prototype._setBoundingBoxStyles=function(t,e){var n=this._calculateBoundingBoxRect(t,e);this._isInitialRender||this._growAfterOpen||(n.height=Math.min(n.height,this._lastBoundingBoxSize.height),n.width=Math.min(n.width,this._lastBoundingBoxSize.width));var i={};if(this._hasExactPosition())i.top=i.left="0",i.bottom=i.right=i.maxHeight=i.maxWidth="",i.width=i.height="100%";else{var r=this._overlayRef.getConfig().maxHeight,o=this._overlayRef.getConfig().maxWidth;i.height=Object(l.d)(n.height),i.top=Object(l.d)(n.top),i.bottom=Object(l.d)(n.bottom),i.width=Object(l.d)(n.width),i.left=Object(l.d)(n.left),i.right=Object(l.d)(n.right),"center"===e.overlayX?i.alignItems="center":i.alignItems="end"===e.overlayX?"flex-end":"flex-start","center"===e.overlayY?i.justifyContent="center":i.justifyContent="bottom"===e.overlayY?"flex-end":"flex-start",r&&(i.maxHeight=Object(l.d)(r)),o&&(i.maxWidth=Object(l.d)(o))}this._lastBoundingBoxSize=n,V(this._boundingBox.style,i)},t.prototype._resetBoundingBoxStyles=function(){V(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})},t.prototype._resetOverlayElementStyles=function(){V(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})},t.prototype._setOverlayElementStyles=function(t,e){var n={},i=this._hasExactPosition(),r=this._hasFlexibleDimensions,o=this._overlayRef.getConfig();if(i){var a=this._viewportRuler.getViewportScrollPosition();V(n,this._getExactOverlayY(e,t,a)),V(n,this._getExactOverlayX(e,t,a))}else n.position="static";var s="",c=this._getOffset(e,"x"),u=this._getOffset(e,"y");c&&(s+="translateX("+c+"px) "),u&&(s+="translateY("+u+"px)"),n.transform=s.trim(),o.maxHeight&&(i?n.maxHeight=Object(l.d)(o.maxHeight):r&&(n.maxHeight="")),o.maxWidth&&(i?n.maxWidth=Object(l.d)(o.maxWidth):r&&(n.maxWidth="")),V(this._pane.style,n)},t.prototype._getExactOverlayY=function(t,e,n){var i={top:"",bottom:""},r=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,n));var o=this._overlayContainer.getContainerElement().getBoundingClientRect().top;if(r.y-=o,"bottom"===t.overlayY){var a=this._document.documentElement.clientHeight;i.bottom=a-(r.y+this._overlayRect.height)+"px"}else i.top=Object(l.d)(r.y);return i},t.prototype._getExactOverlayX=function(t,e,n){var i={left:"",right:""},r=this._getOverlayPoint(e,this._overlayRect,t);if(this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,n)),"right"==(this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left")){var o=this._document.documentElement.clientWidth;i.right=o-(r.x+this._overlayRect.width)+"px"}else i.left=Object(l.d)(r.x);return i},t.prototype._getScrollVisibility=function(){var t=this._getOriginRect(),e=this._pane.getBoundingClientRect(),n=this._scrollables.map(function(t){return t.getElementRef().nativeElement.getBoundingClientRect()});return{isOriginClipped:M(t,n),isOriginOutsideView:x(t,n),isOverlayClipped:M(e,n),isOverlayOutsideView:x(e,n)}},t.prototype._subtractOverflows=function(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];return e.reduce(function(t,e){return t-Math.max(e,0)},t)},t.prototype._getNarrowedViewportRect=function(){var t=this._document.documentElement.clientWidth,e=this._document.documentElement.clientHeight,n=this._viewportRuler.getViewportScrollPosition();return{top:n.top+this._viewportMargin,left:n.left+this._viewportMargin,right:n.left+t-this._viewportMargin,bottom:n.top+e-this._viewportMargin,width:t-2*this._viewportMargin,height:e-2*this._viewportMargin}},t.prototype._isRtl=function(){return"rtl"===this._overlayRef.getDirection()},t.prototype._hasExactPosition=function(){return!this._hasFlexibleDimensions||this._isPushed},t.prototype._getOffset=function(t,e){return"x"===e?null==t.offsetX?this._offsetX:t.offsetX:null==t.offsetY?this._offsetY:t.offsetY},t.prototype._validatePositions=function(){if(!this._preferredPositions.length)throw Error("FlexibleConnectedPositionStrategy: At least one position is required.");this._preferredPositions.forEach(function(t){I("originX",t.originX),P("originY",t.originY),I("overlayX",t.overlayX),P("overlayY",t.overlayY)})},t.prototype._addPanelClasses=function(t){var e=this;this._pane&&Object(l.b)(t).forEach(function(t){""!==t&&-1===e._appliedPanelClasses.indexOf(t)&&(e._appliedPanelClasses.push(t),e._pane.classList.add(t))})},t.prototype._clearPanelClasses=function(){var t=this;this._pane&&(this._appliedPanelClasses.forEach(function(e){t._pane.classList.remove(e)}),this._appliedPanelClasses=[])},t.prototype._getOriginRect=function(){var t=this._origin;if(t instanceof o.ElementRef)return t.nativeElement.getBoundingClientRect();if(t instanceof Element)return t.getBoundingClientRect();var e=t.width||0,n=t.height||0;return{top:t.y,bottom:t.y+n,left:t.x,right:t.x+e,height:n,width:e}},t}();function V(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}function F(t){if("number"!=typeof t&&null!=t){var e=Object(i.f)(t.split(N),2),n=e[0],r=e[1];return r&&"px"!==r?null:parseFloat(n)}return t||null}
  1925. /**
  1926. * @license
  1927. * Copyright Google LLC All Rights Reserved.
  1928. *
  1929. * Use of this source code is governed by an MIT-style license that can be
  1930. * found in the LICENSE file at https://angular.io/license
  1931. */var U=function(){function t(t,e,n,i,r,o,a){this._preferredPositions=[],this._positionStrategy=new j(n,i,r,o,a).withFlexibleDimensions(!1).withPush(!1).withViewportMargin(0),this.withFallbackPosition(t,e)}return Object.defineProperty(t.prototype,"_isRtl",{get:function(){return"rtl"===this._overlayRef.getDirection()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"onPositionChange",{get:function(){return this._positionStrategy.positionChanges},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"positions",{get:function(){return this._preferredPositions},enumerable:!0,configurable:!0}),t.prototype.attach=function(t){this._overlayRef=t,this._positionStrategy.attach(t),this._direction&&(t.setDirection(this._direction),this._direction=null)},t.prototype.dispose=function(){this._positionStrategy.dispose()},t.prototype.detach=function(){this._positionStrategy.detach()},t.prototype.apply=function(){this._positionStrategy.apply()},t.prototype.recalculateLastPosition=function(){this._positionStrategy.reapplyLastPosition()},t.prototype.withScrollableContainers=function(t){this._positionStrategy.withScrollableContainers(t)},t.prototype.withFallbackPosition=function(t,e,n,i){var r=new T(t,e,n,i);return this._preferredPositions.push(r),this._positionStrategy.withPositions(this._preferredPositions),this},t.prototype.withDirection=function(t){return this._overlayRef?this._overlayRef.setDirection(t):this._direction=t,this},t.prototype.withOffsetX=function(t){return this._positionStrategy.withDefaultOffsetX(t),this},t.prototype.withOffsetY=function(t){return this._positionStrategy.withDefaultOffsetY(t),this},t.prototype.withLockedPosition=function(t){return this._positionStrategy.withLockedPosition(t),this},t.prototype.withPositions=function(t){return this._preferredPositions=t.slice(),this._positionStrategy.withPositions(this._preferredPositions),this},t.prototype.setOrigin=function(t){return this._positionStrategy.setOrigin(t),this},t}(),B=function(){function t(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._leftOffset="",this._rightOffset="",this._alignItems="",this._justifyContent="",this._width="",this._height=""}return t.prototype.attach=function(t){var e=t.getConfig();this._overlayRef=t,this._width&&!e.width&&t.updateSize({width:this._width}),this._height&&!e.height&&t.updateSize({height:this._height}),t.hostElement.classList.add("cdk-global-overlay-wrapper"),this._isDisposed=!1},t.prototype.top=function(t){return void 0===t&&(t=""),this._bottomOffset="",this._topOffset=t,this._alignItems="flex-start",this},t.prototype.left=function(t){return void 0===t&&(t=""),this._rightOffset="",this._leftOffset=t,this._justifyContent="flex-start",this},t.prototype.bottom=function(t){return void 0===t&&(t=""),this._topOffset="",this._bottomOffset=t,this._alignItems="flex-end",this},t.prototype.right=function(t){return void 0===t&&(t=""),this._leftOffset="",this._rightOffset=t,this._justifyContent="flex-end",this},t.prototype.width=function(t){return void 0===t&&(t=""),this._overlayRef?this._overlayRef.updateSize({width:t}):this._width=t,this},t.prototype.height=function(t){return void 0===t&&(t=""),this._overlayRef?this._overlayRef.updateSize({height:t}):this._height=t,this},t.prototype.centerHorizontally=function(t){return void 0===t&&(t=""),this.left(t),this._justifyContent="center",this},t.prototype.centerVertically=function(t){return void 0===t&&(t=""),this.top(t),this._alignItems="center",this},t.prototype.apply=function(){if(this._overlayRef&&this._overlayRef.hasAttached()){var t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,n=this._overlayRef.getConfig(),i=n.width,r=n.height,o=n.maxWidth,a=n.maxHeight,s=!("100%"!==i&&"100vw"!==i||o&&"100%"!==o&&"100vw"!==o),c=!("100%"!==r&&"100vh"!==r||a&&"100%"!==a&&"100vh"!==a);t.position=this._cssPosition,t.marginLeft=s?"0":this._leftOffset,t.marginTop=c?"0":this._topOffset,t.marginBottom=this._bottomOffset,t.marginRight=this._rightOffset,s?e.justifyContent="flex-start":"center"===this._justifyContent?e.justifyContent="center":"rtl"===this._overlayRef.getConfig().direction?"flex-start"===this._justifyContent?e.justifyContent="flex-end":"flex-end"===this._justifyContent&&(e.justifyContent="flex-start"):e.justifyContent=this._justifyContent,e.alignItems=c?"flex-start":this._alignItems}},t.prototype.dispose=function(){if(!this._isDisposed&&this._overlayRef){var t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,n=e.style;e.classList.remove("cdk-global-overlay-wrapper"),n.justifyContent=n.alignItems=t.marginTop=t.marginBottom=t.marginLeft=t.marginRight=t.position="",this._overlayRef=null,this._isDisposed=!0}},t}(),z=function(){function t(t,e,n,i){this._viewportRuler=t,this._document=e,this._platform=n,this._overlayContainer=i}return t.prototype.global=function(){return new B},t.prototype.connectedTo=function(t,e,n){return new U(e,n,t,this._viewportRuler,this._document,this._platform,this._overlayContainer)},t.prototype.flexibleConnectedTo=function(t){return new j(t,this._viewportRuler,this._document,this._platform,this._overlayContainer)},t.ctorParameters=function(){return[{type:r.d},{type:void 0,decorators:[{type:o.Inject,args:[c.DOCUMENT]}]},{type:a.a},{type:R}]},t.ɵprov=Object(o["ɵɵdefineInjectable"])({factory:function(){return new t(Object(o["ɵɵinject"])(r.d),Object(o["ɵɵinject"])(c.DOCUMENT),Object(o["ɵɵinject"])(a.a),Object(o["ɵɵinject"])(R))},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)(o["ɵɵinject"](r.d),o["ɵɵinject"](c.DOCUMENT),o["ɵɵinject"](a.a),o["ɵɵinject"](R))},t}(),G=0,H=function(){function t(t,e,n,i,r,o,a,s,c,l){this.scrollStrategies=t,this._overlayContainer=e,this._componentFactoryResolver=n,this._positionBuilder=i,this._keyboardDispatcher=r,this._injector=o,this._ngZone=a,this._document=s,this._directionality=c,this._location=l}return t.prototype.create=function(t){var e=this._createHostElement(),n=this._createPaneElement(e),i=this._createPortalOutlet(n),r=new A(t);return r.direction=r.direction||this._directionality.value,new L(i,e,n,r,this._ngZone,this._keyboardDispatcher,this._document,this._location)},t.prototype.position=function(){return this._positionBuilder},t.prototype._createPaneElement=function(t){var e=this._document.createElement("div");return e.id="cdk-overlay-"+G++,e.classList.add("cdk-overlay-pane"),t.appendChild(e),e},t.prototype._createHostElement=function(){var t=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(t),t},t.prototype._createPortalOutlet=function(t){return this._appRef||(this._appRef=this._injector.get(o.ApplicationRef)),new u.e(t,this._componentFactoryResolver,this._appRef,this._injector,this._document)},t.ctorParameters=function(){return[{type:C},{type:R},{type:o.ComponentFactoryResolver},{type:z},{type:k},{type:o.Injector},{type:o.NgZone},{type:void 0,decorators:[{type:o.Inject,args:[c.DOCUMENT]}]},{type:s.Directionality},{type:c.Location,decorators:[{type:o.Optional}]}]},t.ɵfac=function(e){return new(e||t)(o["ɵɵinject"](C),o["ɵɵinject"](R),o["ɵɵinject"](o.ComponentFactoryResolver),o["ɵɵinject"](z),o["ɵɵinject"](k),o["ɵɵinject"](o.Injector),o["ɵɵinject"](o.NgZone),o["ɵɵinject"](c.DOCUMENT),o["ɵɵinject"](s.Directionality),o["ɵɵinject"](c.Location,8))},t.ɵprov=o["ɵɵdefineInjectable"]({token:t,factory:function(e){return t.ɵfac(e)}}),t}(),W=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],q=new o.InjectionToken("cdk-connected-overlay-scroll-strategy"),K=function(){function t(t){this.elementRef=t}return t.ctorParameters=function(){return[{type:o.ElementRef}]},t.ɵfac=function(e){return new(e||t)(o["ɵɵdirectiveInject"](o.ElementRef))},t.ɵdir=o["ɵɵdefineDirective"]({type:t,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"]}),t}(),X=function(){function t(t,e,n,i,r){this._overlay=t,this._dir=r,this._hasBackdrop=!1,this._lockPosition=!1,this._growAfterOpen=!1,this._flexibleDimensions=!1,this._push=!1,this._backdropSubscription=p.a.EMPTY,this.viewportMargin=0,this.open=!1,this.backdropClick=new o.EventEmitter,this.positionChange=new o.EventEmitter,this.attach=new o.EventEmitter,this.detach=new o.EventEmitter,this.overlayKeydown=new o.EventEmitter,this._templatePortal=new u.h(e,n),this._scrollStrategyFactory=i,this.scrollStrategy=this._scrollStrategyFactory()}return Object.defineProperty(t.prototype,"offsetX",{get:function(){return this._offsetX},set:function(t){this._offsetX=t,this._position&&this._updatePositionStrategy(this._position)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"offsetY",{get:function(){return this._offsetY},set:function(t){this._offsetY=t,this._position&&this._updatePositionStrategy(this._position)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hasBackdrop",{get:function(){return this._hasBackdrop},set:function(t){this._hasBackdrop=Object(l.c)(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"lockPosition",{get:function(){return this._lockPosition},set:function(t){this._lockPosition=Object(l.c)(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"flexibleDimensions",{get:function(){return this._flexibleDimensions},set:function(t){this._flexibleDimensions=Object(l.c)(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"growAfterOpen",{get:function(){return this._growAfterOpen},set:function(t){this._growAfterOpen=Object(l.c)(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"push",{get:function(){return this._push},set:function(t){this._push=Object(l.c)(t)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"overlayRef",{get:function(){return this._overlayRef},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"dir",{get:function(){return this._dir?this._dir.value:"ltr"},enumerable:!0,configurable:!0}),t.prototype.ngOnDestroy=function(){this._overlayRef&&this._overlayRef.dispose(),this._backdropSubscription.unsubscribe()},t.prototype.ngOnChanges=function(t){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef.updateSize({width:this.width,minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),t.origin&&this.open&&this._position.apply()),t.open&&(this.open?this._attachOverlay():this._detachOverlay())},t.prototype._createOverlay=function(){var t=this;this.positions&&this.positions.length||(this.positions=W),this._overlayRef=this._overlay.create(this._buildConfig()),this._overlayRef.keydownEvents().subscribe(function(e){t.overlayKeydown.next(e),e.keyCode!==v.ESCAPE||Object(v.hasModifierKey)(e)||(e.preventDefault(),t._detachOverlay())})},t.prototype._buildConfig=function(){var t=this._position=this.positionStrategy||this._createPositionStrategy(),e=new A({direction:this._dir,positionStrategy:t,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop});return(this.width||0===this.width)&&(e.width=this.width),(this.height||0===this.height)&&(e.height=this.height),(this.minWidth||0===this.minWidth)&&(e.minWidth=this.minWidth),(this.minHeight||0===this.minHeight)&&(e.minHeight=this.minHeight),this.backdropClass&&(e.backdropClass=this.backdropClass),this.panelClass&&(e.panelClass=this.panelClass),e},t.prototype._updatePositionStrategy=function(t){var e=this,n=this.positions.map(function(t){return{originX:t.originX,originY:t.originY,overlayX:t.overlayX,overlayY:t.overlayY,offsetX:t.offsetX||e.offsetX,offsetY:t.offsetY||e.offsetY,panelClass:t.panelClass||void 0}});return t.setOrigin(this.origin.elementRef).withPositions(n).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector)},t.prototype._createPositionStrategy=function(){var t=this,e=this._overlay.position().flexibleConnectedTo(this.origin.elementRef);return this._updatePositionStrategy(e),e.positionChanges.subscribe(function(e){return t.positionChange.emit(e)}),e},t.prototype._attachOverlay=function(){var t=this;this._overlayRef?this._overlayRef.getConfig().hasBackdrop=this.hasBackdrop:this._createOverlay(),this._overlayRef.hasAttached()||(this._overlayRef.attach(this._templatePortal),this.attach.emit()),this.hasBackdrop?this._backdropSubscription=this._overlayRef.backdropClick().subscribe(function(e){t.backdropClick.emit(e)}):this._backdropSubscription.unsubscribe()},t.prototype._detachOverlay=function(){this._overlayRef&&(this._overlayRef.detach(),this.detach.emit()),this._backdropSubscription.unsubscribe()},t.ctorParameters=function(){return[{type:H},{type:o.TemplateRef},{type:o.ViewContainerRef},{type:void 0,decorators:[{type:o.Inject,args:[q]}]},{type:s.Directionality,decorators:[{type:o.Optional}]}]},t.propDecorators={origin:[{type:o.Input,args:["cdkConnectedOverlayOrigin"]}],positions:[{type:o.Input,args:["cdkConnectedOverlayPositions"]}],positionStrategy:[{type:o.Input,args:["cdkConnectedOverlayPositionStrategy"]}],offsetX:[{type:o.Input,args:["cdkConnectedOverlayOffsetX"]}],offsetY:[{type:o.Input,args:["cdkConnectedOverlayOffsetY"]}],width:[{type:o.Input,args:["cdkConnectedOverlayWidth"]}],height:[{type:o.Input,args:["cdkConnectedOverlayHeight"]}],minWidth:[{type:o.Input,args:["cdkConnectedOverlayMinWidth"]}],minHeight:[{type:o.Input,args:["cdkConnectedOverlayMinHeight"]}],backdropClass:[{type:o.Input,args:["cdkConnectedOverlayBackdropClass"]}],panelClass:[{type:o.Input,args:["cdkConnectedOverlayPanelClass"]}],viewportMargin:[{type:o.Input,args:["cdkConnectedOverlayViewportMargin"]}],scrollStrategy:[{type:o.Input,args:["cdkConnectedOverlayScrollStrategy"]}],open:[{type:o.Input,args:["cdkConnectedOverlayOpen"]}],transformOriginSelector:[{type:o.Input,args:["cdkConnectedOverlayTransformOriginOn"]}],hasBackdrop:[{type:o.Input,args:["cdkConnectedOverlayHasBackdrop"]}],lockPosition:[{type:o.Input,args:["cdkConnectedOverlayLockPosition"]}],flexibleDimensions:[{type:o.Input,args:["cdkConnectedOverlayFlexibleDimensions"]}],growAfterOpen:[{type:o.Input,args:["cdkConnectedOverlayGrowAfterOpen"]}],push:[{type:o.Input,args:["cdkConnectedOverlayPush"]}],backdropClick:[{type:o.Output}],positionChange:[{type:o.Output}],attach:[{type:o.Output}],detach:[{type:o.Output}],overlayKeydown:[{type:o.Output}]},t.ɵfac=function(e){return new(e||t)(o["ɵɵdirectiveInject"](H),o["ɵɵdirectiveInject"](o.TemplateRef),o["ɵɵdirectiveInject"](o.ViewContainerRef),o["ɵɵdirectiveInject"](q),o["ɵɵdirectiveInject"](s.Directionality,8))},t.ɵdir=o["ɵɵdefineDirective"]({type:t,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{viewportMargin:["cdkConnectedOverlayViewportMargin","viewportMargin"],open:["cdkConnectedOverlayOpen","open"],scrollStrategy:["cdkConnectedOverlayScrollStrategy","scrollStrategy"],offsetX:["cdkConnectedOverlayOffsetX","offsetX"],offsetY:["cdkConnectedOverlayOffsetY","offsetY"],hasBackdrop:["cdkConnectedOverlayHasBackdrop","hasBackdrop"],lockPosition:["cdkConnectedOverlayLockPosition","lockPosition"],flexibleDimensions:["cdkConnectedOverlayFlexibleDimensions","flexibleDimensions"],growAfterOpen:["cdkConnectedOverlayGrowAfterOpen","growAfterOpen"],push:["cdkConnectedOverlayPush","push"],positions:["cdkConnectedOverlayPositions","positions"],origin:["cdkConnectedOverlayOrigin","origin"],positionStrategy:["cdkConnectedOverlayPositionStrategy","positionStrategy"],width:["cdkConnectedOverlayWidth","width"],height:["cdkConnectedOverlayHeight","height"],minWidth:["cdkConnectedOverlayMinWidth","minWidth"],minHeight:["cdkConnectedOverlayMinHeight","minHeight"],backdropClass:["cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:["cdkConnectedOverlayPanelClass","panelClass"],transformOriginSelector:["cdkConnectedOverlayTransformOriginOn","transformOriginSelector"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown"},exportAs:["cdkConnectedOverlay"],features:[o["ɵɵNgOnChangesFeature"]]}),t}(),Y={provide:q,deps:[H],useFactory:function(t){return function(){return t.scrollStrategies.reposition()}}},Z=function(){function t(){}return t.ɵmod=o["ɵɵdefineNgModule"]({type:t}),t.ɵinj=o["ɵɵdefineInjector"]({factory:function(e){return new(e||t)},providers:[H,Y],imports:[[s.BidiModule,u.g,r.c],r.c]}),("undefined"==typeof ngJitMode||ngJitMode)&&o["ɵɵsetNgModuleScope"](t,{declarations:function(){return[X,K]},imports:function(){return[s.BidiModule,u.g,r.c]},exports:function(){return[X,K,r.c]}}),t}();
  1932. /**
  1933. * @license
  1934. * Copyright Google LLC All Rights Reserved.
  1935. *
  1936. * Use of this source code is governed by an MIT-style license that can be
  1937. * found in the LICENSE file at https://angular.io/license
  1938. */!function(t){function e(e,n){return t.call(this,e,n)||this}Object(i.c)(e,t),e.prototype.ngOnDestroy=function(){t.prototype.ngOnDestroy.call(this),this._fullScreenEventName&&this._fullScreenListener&&this._document.removeEventListener(this._fullScreenEventName,this._fullScreenListener)},e.prototype._createContainer=function(){var e=this;t.prototype._createContainer.call(this),this._adjustParentForFullscreenChange(),this._addFullscreenChangeListener(function(){return e._adjustParentForFullscreenChange()})},e.prototype._adjustParentForFullscreenChange=function(){this._containerElement&&(this.getFullscreenElement()||this._document.body).appendChild(this._containerElement)},e.prototype._addFullscreenChangeListener=function(t){var e=this._getEventName();e&&(this._fullScreenListener&&this._document.removeEventListener(e,this._fullScreenListener),this._document.addEventListener(e,t),this._fullScreenListener=t)},e.prototype._getEventName=function(){if(!this._fullScreenEventName){var t=this._document;t.fullscreenEnabled?this._fullScreenEventName="fullscreenchange":t.webkitFullscreenEnabled?this._fullScreenEventName="webkitfullscreenchange":t.mozFullScreenEnabled?this._fullScreenEventName="mozfullscreenchange":t.msFullscreenEnabled&&(this._fullScreenEventName="MSFullscreenChange")}return this._fullScreenEventName},e.prototype.getFullscreenElement=function(){var t=this._document;return t.fullscreenElement||t.webkitFullscreenElement||t.mozFullScreenElement||t.msFullscreenElement||null},e.ctorParameters=function(){return[{type:void 0,decorators:[{type:o.Inject,args:[c.DOCUMENT]}]},{type:a.a}]},e.ɵprov=Object(o["ɵɵdefineInjectable"])({factory:function(){return new e(Object(o["ɵɵinject"])(c.DOCUMENT),Object(o["ɵɵinject"])(a.a))},token:e,providedIn:"root"}),e.ɵfac=function(t){return new(t||e)(o["ɵɵinject"](c.DOCUMENT),o["ɵɵinject"](a.a))}}(R)},function(t,e,n){"use strict";n.d(e,"a",function(){return i});var i="function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"},function(t,e,n){"use strict";function i(){}n.d(e,"a",function(){return i})},function(t,e,n){"use strict";n.r(e),function(t){n.d(e,"CheckState",function(){return p}),n.d(e,"GroupsTree",function(){return h});var i=n(2),r=n(57),o=n(114);function a(t,e){var n;if("undefined"==typeof Symbol||null==t[Symbol.iterator]){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return s(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?s(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var i=0,r=function(){};return{s:r,n:function(){return i>=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,c=!1;return{s:function(){n=t[Symbol.iterator]()},n:function(){var t=n.next();return a=t.done,t},e:function(t){c=!0,o=t},f:function(){try{a||null==n.return||n.return()}finally{if(c)throw o}}}}function s(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,i=new Array(e);n<e;n++)i[n]=t[n];return i}var c="Normal",l="InEdit",u="InAdding",d="Added",p={CHECKED:"Checked",SEMI_CHECKED:"SemiChecked",UNCHECKED:"Unchecked"};function h(e,n,s){this.initGroup=w,this.hoverGroup=S,this.hoverGroups=function(t,e){Object(i.forEach)(t,function(t){S(t,e)})},this.mouseLeaveGroup=function(t){S(t,!1)},this.isGroupHovered=function(t){return t.state.hover},this.toggleGroupExpanded=function(t){E(t)?x(t,!1):x(t,!0)},this.expandGroup=x,this.expandGroups=M,this.isGroupExpanded=E,this.revealGroup=function(t,e){M(U(t,e),!0)},this.toggleGroupSelection=function(t){A()?C(t,!1):C(t,!0)},this.selectGroup=C,this.selectGroups=function(t,e){Object(i.forEach)(t,function(t){C(t,e)})},this.isGroupSelected=A,this.getSelectedGroup=function(){return f},this.canAddGroup=function(){return f&&f.id!==o.GroupService.publicGroupId},this.toggleGroupChecked=function(t,e){O(t)||P(t)?T(t,p.UNCHECKED):T(t,e)},this.checkGroup=T,this.checkGroups=function(t,e){Object(i.forEach)(t,function(t){T(t,e)})},this.isGroupChecked=O,this.isGroupSemiChecked=P,this.getGroupCheckState=I,this.isGroupInAddingState=function(t){return D(t)===u},this.isGroupInAddedState=function(t){return D(t)===d},this.isGroupInEditState=k,this.getGroupState=D,this.enableGroup=R,this.enableGroups=function(t,e){Object(i.forEach)(t,function(t){R(t,e)})},this.isGroupEnabled=L,this.isGroupExcluded=function(t){return t.state.excluded},this.getConfig=function(t){return h[t]},this.addGroupInAddingState=function(t,e){W(e),x(t,!0);var n=function(t){var e=new r.GroupEntity;return e.name="",w(e,t),e}(t);n.state.general=u,t.childGroups.unshift(n)},this.acceptAddingGroup=function(t,e){var n=V(t,e);return n.state.general=d,n},this.cancelAddingGroup=N,this.goToGroupNormalState=function(t){t.state.general=c},this.goToGroupEditState=function(t,e){W(e),t.previous_name=t.name,t.state.general=l},this.goToGroupAddedState=function(t){t.state.general=d},this.cancelUpdatingGroupName=j,this.updateGroupAttributesString=H,this.setGroups=function(t){b(s=t)},this.getGroupById=function(t,e){return e.filter(function(e){return e.id==t})[0]},this.getGroupByLocalId=V,this.getGroupWithAncestors=F,this.getGroupAncestors=U,this.getGroupWithDescendants=B,this.getGroupDescendants=z,this.getParentGroup=G,this.getGroupsIds=function(t){return t.map(function(t){return t.id})},this.sameGroupsIds=function(t,e){return 0===_.difference(t,e).length&&0===_.difference(e,t).length},this.discardPublicGroup=function(t){return t.filter(function(t){return!!t&&t!==o.GroupService.publicGroupId&&null!==t})},s=s||[];var h={showChecks:(n=n||{}).showChecks||!1,selectable:n.selectable||!1,showAttributes:n.showAttributes||!1,excludeGroupId:isFinite(n.excludeGroupId)?n.excludeGroupId:void 0},f=void 0,g=n.attributeNames||{},m=n.allAttributesText||"",v=n.noAttributesText||"",y=0;function b(t){var n=e.createGroupsArray(t);Object(i.forEach)(n,w),function(t){var e=n.map(function(t){return t.local_id});y=Math.max.apply(null,e)+1}()}function w(t,e){t.local_id=t.id||y++,t.state={enabled:!0,hover:!1,expanded:!1,check:p.UNCHECKED,selected:!1,general:c,excluded:void 0!==t.id&&t.id===h.excludeGroupId},e&&void 0!==e.local_id&&(t.parent=e),Object(i.forEach)(t.childGroups,function(e){e.parent=t}),H(t),function(t){t.toggleAttribute=function(t){this.setAttribute(t,!this.isAttributeEnabled(t))},t.setAttribute=function(t,e){e&&!this.isAttributeEnabled(t)?this.attributes.push(t):!e&&this.isAttributeEnabled(t)&&this.attributes.splice(this.attributes.indexOf(t),1)},t.isAttributeEnabled=function(t){return this.attributes.indexOf(t)>-1}}(t)}function S(t,e){t.state.hover=e}function x(t,e){L(t)&&(t.state.expanded=e)}function M(t,e){Object(i.forEach)(t,function(t){x(t,e)})}function E(t){return t.state.expanded}function C(e,n){h.selectable&&L(e)&&(e.state.selected=n,f=n?e:void 0,t(".group-attributes.open > button").trigger("click"))}function A(t){return t.state.selected}function T(t,e){L(t)&&(t.state.check=e)}function O(t){return I(t)===p.CHECKED}function P(t){return I(t)===p.SEMI_CHECKED}function I(t){return t.state.check}function k(t){return D(t)===l}function D(t){return t.state.general}function R(t,e){t.state.enabled=e}function L(t){return t.state.enabled}function N(t,e){for(var n=V(t,e),i=G(n,e),r=0;r<i.childGroups.length;++r)if(i.childGroups[r].local_id==n.local_id){i.childGroups.splice(r,1);break}}function j(t,e){var n=V(t,e);k(n)&&(n.name=n.previous_name,n.state.general=c)}function V(t,e){return e.filter(function(e){return e.local_id==t})[0]}function F(t,e){var n=U(t,e);return n.unshift(t),n}function U(t,e){var n=[],i=G(t,e);return i&&(n=n.concat(F(i,e))),n}function B(t){var e=z(t);return e.unshift(t),e}function z(t){var e=[];return Object(i.forEach)(t.childGroups,function(t){e=e.concat(B(t))}),e}function G(t,e){return e.filter(function(e){return!!t.parent&&e.local_id===t.parent.local_id})[0]}function H(t){t.attributes_string=function(t){var e,n=[],i=a(t.attributes);try{for(i.s();!(e=i.n()).done;){var r=e.value;n.push(g[r])}}catch(t){i.e(t)}finally{i.f()}return 0===n.length?v:n.length==Object.keys(g).length?m:n.join(", ")}(t)}function W(t){Object(i.forEach)(t,function(e){D(e)===u&&N(e.local_id,t),k(e)&&j(e.local_id,t)})}b(s)}}.call(this,n(19))},function(t,e,n){"use strict";n.d(e,"b",function(){return r}),n.d(e,"a",function(){return o});var i=n(151),r=new(n(150).a)(i.a),o=r},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var o=n(0),a=(n(9),n(232)),s=n(2),c=n(6),l=n(0),u=n(9),d=function(){function t(t){var e=this;this.featureFlags=void 0,this.initialized=t.getApi("features",{}).then(function(t){e.featureFlags=new a.FeatureFlagResponse(t)}).catch(function(t){console.warn("Feature flags failed to load due to:",t)})}return t.prototype.isEnabled=function(t){return i(this,void 0,void 0,function(){return r(this,function(e){switch(e.label){case 0:return[4,this.initialized];case 1:return e.sent(),this.featureFlags&&this.featureFlags.isEnabled(t)?[2]:[2,Promise.reject("The feature "+a.FeatureFlag[t]+" is disabled.")]}})})},t.prototype.getAllEnabledFeatures=function(){return i(this,void 0,void 0,function(){var t,e,n,i;return r(this,function(r){switch(r.label){case 0:return[4,this.initialized];case 1:for(r.sent(),t=[],e=0,n=Object.values(a.FeatureFlag);e<n.length;e++)i=n[e],this.featureFlags.isEnabled(i)&&t.push(i.toString());return[2,t]}})})},t.ɵfac=function(e){return new(e||t)(l.ɵɵinject(u.RestService))},t.ɵprov=l.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.FeatureFlagsService=d,l.ɵsetClassMetadata(d,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:u.RestService}]},null),s.module("IVWebApp").service("FeatureFlagsService",c.downgradeInjectable(d))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(0),r=n(398),o=n(399),a=(n(17),n(8)),s=n(16),c=n(4),l=n(0),u=n(17),d=function(){function t(t){var e=this;this.ViewService=t,this.updatePointCloudsForMagnification=new s.Signal,this.magnificationModeChanged=new s.Signal,this.raycastingCamera=new c.PerspectiveCamera,this._isEnabled=!1,this.ViewService.mainViewDeferred.promise.then(function(){var t=e.ViewService.mainView;e.magnificationViewport=new r.Viewport(t.divContainer,new o.ViewportInfo("MagnificationCamera","Magnification View",16711680))}).catch(a.handleWarning)}return Object.defineProperty(t.prototype,"isEnabled",{get:function(){return this._isEnabled},enumerable:!0,configurable:!0}),t.prototype.updateRayCastingCameraFrustumAndPosition=function(){var t=this.ViewService.mainView.getDefaultViewport().getCamera(),e=this.magnificationViewport.getCamera();if(!(t instanceof c.PerspectiveCamera&&e instanceof c.PerspectiveCamera))throw new Error("Incorrect Magnification Service Usage");this.raycastingCamera=this.raycastingCamera.copy(t),this.raycastingCamera.far=this.magnificationViewport.getCamera().position.distanceTo(t.position)+this.magnificationViewport.getCamera().far,this.raycastingCamera.updateProjectionMatrix()},t.prototype.toggleMagnification=function(){this._isEnabled?this.disableMagnification():this.enableMagnification()},t.prototype.disableMagnification=function(){this._isEnabled=!1,this.magnificationModeChanged.emit(this._isEnabled)},t.prototype.enableMagnification=function(){this._isEnabled=!0,this.ViewService.mainView.loadPointCloudModule().catch(a.handleWarning),this.magnificationModeChanged.emit(this._isEnabled)},t.ɵfac=function(e){return new(e||t)(l.ɵɵinject(u.ViewService))},t.ɵprov=l.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.MagnificationService=d,l.ɵsetClassMetadata(d,[{type:i.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:u.ViewService}]},null)},function(t,e){var n=Math.ceil,i=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?i:n)(t)}},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(70),s=(n(9),n(1040)),c=(n(27),n(6)),l=n(0),u=n(0),d=n(9),p=n(27),h=function(t){function e(e,n){var i=t.call(this,s.PoiTypeEntity,e)||this;return i.RestService=e,i.UserService=n,i.path="poi_types",i}return r(e,t),e.prototype.create=function(){return t.prototype.create.call(this)},e.ɵfac=function(t){return new(t||e)(u.ɵɵinject(d.RestService),u.ɵɵinject(p.UserService))},e.ɵprov=u.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(a.RestRepository);e.PoiTypeRepository=h,u.ɵsetClassMetadata(h,[{type:l.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:d.RestService},{type:p.UserService}]},null),o.module("IVWebApp").service("PoiTypeRepository",c.downgradeInjectable(h))},function(t,e,n){(function(n){var i,r=function(){this._tweens={},this._tweensAddedDuringUpdate={}};r.prototype={getAll:function(){return Object.keys(this._tweens).map(function(t){return this._tweens[t]}.bind(this))},removeAll:function(){this._tweens={}},add:function(t){this._tweens[t.getId()]=t,this._tweensAddedDuringUpdate[t.getId()]=t},remove:function(t){delete this._tweens[t.getId()],delete this._tweensAddedDuringUpdate[t.getId()]},update:function(t,e){var n=Object.keys(this._tweens);if(0===n.length)return!1;for(t=void 0!==t?t:a.now();n.length>0;){this._tweensAddedDuringUpdate={};for(var i=0;i<n.length;i++){var r=this._tweens[n[i]];r&&!1===r.update(t)&&(r._isPlaying=!1,e||delete this._tweens[n[i]])}n=Object.keys(this._tweensAddedDuringUpdate)}return!0}};var o,a=new r;a.Group=r,a._nextId=0,a.nextId=function(){return a._nextId++},"undefined"==typeof self&&void 0!==n&&n.hrtime?a.now=function(){var t=n.hrtime();return 1e3*t[0]+t[1]/1e6}:"undefined"!=typeof self&&void 0!==self.performance&&void 0!==self.performance.now?a.now=self.performance.now.bind(self.performance):void 0!==Date.now?a.now=Date.now:a.now=function(){return(new Date).getTime()},a.Tween=function(t,e){this._object=t,this._valuesStart={},this._valuesEnd={},this._valuesStartRepeat={},this._duration=1e3,this._repeat=0,this._repeatDelayTime=void 0,this._yoyo=!1,this._isPlaying=!1,this._reversed=!1,this._delayTime=0,this._startTime=null,this._easingFunction=a.Easing.Linear.None,this._interpolationFunction=a.Interpolation.Linear,this._chainedTweens=[],this._onStartCallback=null,this._onStartCallbackFired=!1,this._onUpdateCallback=null,this._onRepeatCallback=null,this._onCompleteCallback=null,this._onStopCallback=null,this._group=e||a,this._id=a.nextId()},a.Tween.prototype={getId:function(){return this._id},isPlaying:function(){return this._isPlaying},to:function(t,e){return this._valuesEnd=Object.create(t),void 0!==e&&(this._duration=e),this},duration:function(t){return this._duration=t,this},start:function(t){for(var e in this._group.add(this),this._isPlaying=!0,this._onStartCallbackFired=!1,this._startTime=void 0!==t?"string"==typeof t?a.now()+parseFloat(t):t:a.now(),this._startTime+=this._delayTime,this._valuesEnd){if(this._valuesEnd[e]instanceof Array){if(0===this._valuesEnd[e].length)continue;this._valuesEnd[e]=[this._object[e]].concat(this._valuesEnd[e])}void 0!==this._object[e]&&(this._valuesStart[e]=this._object[e],this._valuesStart[e]instanceof Array==0&&(this._valuesStart[e]*=1),this._valuesStartRepeat[e]=this._valuesStart[e]||0)}return this},stop:function(){return this._isPlaying?(this._group.remove(this),this._isPlaying=!1,null!==this._onStopCallback&&this._onStopCallback(this._object),this.stopChainedTweens(),this):this},end:function(){return this.update(1/0),this},stopChainedTweens:function(){for(var t=0,e=this._chainedTweens.length;t<e;t++)this._chainedTweens[t].stop()},group:function(t){return this._group=t,this},delay:function(t){return this._delayTime=t,this},repeat:function(t){return this._repeat=t,this},repeatDelay:function(t){return this._repeatDelayTime=t,this},yoyo:function(t){return this._yoyo=t,this},easing:function(t){return this._easingFunction=t,this},interpolation:function(t){return this._interpolationFunction=t,this},chain:function(){return this._chainedTweens=arguments,this},onStart:function(t){return this._onStartCallback=t,this},onUpdate:function(t){return this._onUpdateCallback=t,this},onRepeat:function(t){return this._onRepeatCallback=t,this},onComplete:function(t){return this._onCompleteCallback=t,this},onStop:function(t){return this._onStopCallback=t,this},update:function(t){var e,n,i;if(t<this._startTime)return!0;for(e in!1===this._onStartCallbackFired&&(null!==this._onStartCallback&&this._onStartCallback(this._object),this._onStartCallbackFired=!0),n=(t-this._startTime)/this._duration,n=0===this._duration||n>1?1:n,i=this._easingFunction(n),this._valuesEnd)if(void 0!==this._valuesStart[e]){var r=this._valuesStart[e]||0,o=this._valuesEnd[e];o instanceof Array?this._object[e]=this._interpolationFunction(o,i):("string"==typeof o&&(o="+"===o.charAt(0)||"-"===o.charAt(0)?r+parseFloat(o):parseFloat(o)),"number"==typeof o&&(this._object[e]=r+(o-r)*i))}if(null!==this._onUpdateCallback&&this._onUpdateCallback(this._object,n),1===n){if(this._repeat>0){for(e in isFinite(this._repeat)&&this._repeat--,this._valuesStartRepeat){if("string"==typeof this._valuesEnd[e]&&(this._valuesStartRepeat[e]=this._valuesStartRepeat[e]+parseFloat(this._valuesEnd[e])),this._yoyo){var a=this._valuesStartRepeat[e];this._valuesStartRepeat[e]=this._valuesEnd[e],this._valuesEnd[e]=a}this._valuesStart[e]=this._valuesStartRepeat[e]}return this._yoyo&&(this._reversed=!this._reversed),void 0!==this._repeatDelayTime?this._startTime=t+this._repeatDelayTime:this._startTime=t+this._delayTime,null!==this._onRepeatCallback&&this._onRepeatCallback(this._object),!0}null!==this._onCompleteCallback&&this._onCompleteCallback(this._object);for(var s=0,c=this._chainedTweens.length;s<c;s++)this._chainedTweens[s].start(this._startTime+this._duration);return!1}return!0}},a.Easing={Linear:{None:function(t){return t}},Quadratic:{In:function(t){return t*t},Out:function(t){return t*(2-t)},InOut:function(t){return(t*=2)<1?.5*t*t:-.5*(--t*(t-2)-1)}},Cubic:{In:function(t){return t*t*t},Out:function(t){return--t*t*t+1},InOut:function(t){return(t*=2)<1?.5*t*t*t:.5*((t-=2)*t*t+2)}},Quartic:{In:function(t){return t*t*t*t},Out:function(t){return 1- --t*t*t*t},InOut:function(t){return(t*=2)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2)}},Quintic:{In:function(t){return t*t*t*t*t},Out:function(t){return--t*t*t*t*t+1},InOut:function(t){return(t*=2)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2)}},Sinusoidal:{In:function(t){return 1-Math.cos(t*Math.PI/2)},Out:function(t){return Math.sin(t*Math.PI/2)},InOut:function(t){return.5*(1-Math.cos(Math.PI*t))}},Exponential:{In:function(t){return 0===t?0:Math.pow(1024,t-1)},Out:function(t){return 1===t?1:1-Math.pow(2,-10*t)},InOut:function(t){return 0===t?0:1===t?1:(t*=2)<1?.5*Math.pow(1024,t-1):.5*(2-Math.pow(2,-10*(t-1)))}},Circular:{In:function(t){return 1-Math.sqrt(1-t*t)},Out:function(t){return Math.sqrt(1- --t*t)},InOut:function(t){return(t*=2)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1)}},Elastic:{In:function(t){return 0===t?0:1===t?1:-Math.pow(2,10*(t-1))*Math.sin(5*(t-1.1)*Math.PI)},Out:function(t){return 0===t?0:1===t?1:Math.pow(2,-10*t)*Math.sin(5*(t-.1)*Math.PI)+1},InOut:function(t){return 0===t?0:1===t?1:(t*=2)<1?-.5*Math.pow(2,10*(t-1))*Math.sin(5*(t-1.1)*Math.PI):.5*Math.pow(2,-10*(t-1))*Math.sin(5*(t-1.1)*Math.PI)+1}},Back:{In:function(t){var e=1.70158;return t*t*((e+1)*t-e)},Out:function(t){var e=1.70158;return--t*t*((e+1)*t+e)+1},InOut:function(t){var e=2.5949095;return(t*=2)<1?t*t*((e+1)*t-e)*.5:.5*((t-=2)*t*((e+1)*t+e)+2)}},Bounce:{In:function(t){return 1-a.Easing.Bounce.Out(1-t)},Out:function(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375},InOut:function(t){return t<.5?.5*a.Easing.Bounce.In(2*t):.5*a.Easing.Bounce.Out(2*t-1)+.5}}},a.Interpolation={Linear:function(t,e){var n=t.length-1,i=n*e,r=Math.floor(i),o=a.Interpolation.Utils.Linear;return e<0?o(t[0],t[1],i):e>1?o(t[n],t[n-1],n-i):o(t[r],t[r+1>n?n:r+1],i-r)},Bezier:function(t,e){for(var n=0,i=t.length-1,r=Math.pow,o=a.Interpolation.Utils.Bernstein,s=0;s<=i;s++)n+=r(1-e,i-s)*r(e,s)*t[s]*o(i,s);return n},CatmullRom:function(t,e){var n=t.length-1,i=n*e,r=Math.floor(i),o=a.Interpolation.Utils.CatmullRom;return t[0]===t[n]?(e<0&&(r=Math.floor(i=n*(1+e))),o(t[(r-1+n)%n],t[r],t[(r+1)%n],t[(r+2)%n],i-r)):e<0?t[0]-(o(t[0],t[0],t[1],t[1],-i)-t[0]):e>1?t[n]-(o(t[n],t[n],t[n-1],t[n-1],i-n)-t[n]):o(t[r?r-1:0],t[r],t[n<r+1?n:r+1],t[n<r+2?n:r+2],i-r)},Utils:{Linear:function(t,e,n){return(e-t)*n+t},Bernstein:function(t,e){var n=a.Interpolation.Utils.Factorial;return n(t)/n(e)/n(t-e)},Factorial:(o=[1],function(t){var e=1;if(o[t])return o[t];for(var n=t;n>1;n--)e*=n;return o[t]=e,e}),CatmullRom:function(t,e,n,i,r){var o=.5*(n-t),a=.5*(i-e),s=r*r;return(2*e-2*n+o+a)*(r*s)+(-3*e+3*n-2*o-a)*s+o*r+e}}},void 0===(i=function(){return a}.apply(e,[]))||(t.exports=i)}).call(this,n(518))},function(t,e,n){"use strict";n.r(e),n.d(e,"BrowserModule",function(){return ft}),n.d(e,"BrowserTransferStateModule",function(){return Tt}),n.d(e,"By",function(){return Ot}),n.d(e,"DomSanitizer",function(){return nt}),n.d(e,"EVENT_MANAGER_PLUGINS",function(){return S}),n.d(e,"EventManager",function(){return x}),n.d(e,"HAMMER_GESTURE_CONFIG",function(){return G}),n.d(e,"HAMMER_LOADER",function(){return H}),n.d(e,"HammerGestureConfig",function(){return W}),n.d(e,"HammerModule",function(){return Z}),n.d(e,"Meta",function(){return mt}),n.d(e,"Title",function(){return yt}),n.d(e,"TransferState",function(){return Ct}),n.d(e,"VERSION",function(){return _t}),n.d(e,"disableDebugTools",function(){return xt}),n.d(e,"enableDebugTools",function(){return St}),n.d(e,"makeStateKey",function(){return Et}),n.d(e,"platformBrowser",function(){return pt}),n.d(e,"ɵBROWSER_SANITIZATION_PROVIDERS",function(){return dt}),n.d(e,"ɵBROWSER_SANITIZATION_PROVIDERS__POST_R3__",function(){return ut}),n.d(e,"ɵBrowserDomAdapter",function(){return c}),n.d(e,"ɵBrowserGetTestability",function(){return h}),n.d(e,"ɵDomEventsPlugin",function(){return B}),n.d(e,"ɵDomRendererFactory2",function(){return L}),n.d(e,"ɵDomSanitizerImpl",function(){return rt}),n.d(e,"ɵDomSharedStylesHost",function(){return C}),n.d(e,"ɵELEMENT_PROBE_PROVIDERS",function(){return w}),n.d(e,"ɵELEMENT_PROBE_PROVIDERS__POST_R3__",function(){return y}),n.d(e,"ɵHAMMER_PROVIDERS__POST_R3__",function(){return K}),n.d(e,"ɵHammerGesturesPlugin",function(){return q}),n.d(e,"ɵINTERNAL_BROWSER_PLATFORM_PROVIDERS",function(){return lt}),n.d(e,"ɵKeyEventsPlugin",function(){return et}),n.d(e,"ɵNAMESPACE_URIS",function(){return A}),n.d(e,"ɵSharedStylesHost",function(){return E}),n.d(e,"ɵTRANSITION_ID",function(){return u}),n.d(e,"ɵangular_packages_platform_browser_platform_browser_a",function(){return at}),n.d(e,"ɵangular_packages_platform_browser_platform_browser_b",function(){return st}),n.d(e,"ɵangular_packages_platform_browser_platform_browser_c",function(){return ht}),n.d(e,"ɵangular_packages_platform_browser_platform_browser_d",function(){return gt}),n.d(e,"ɵangular_packages_platform_browser_platform_browser_e",function(){return vt}),n.d(e,"ɵangular_packages_platform_browser_platform_browser_f",function(){return At}),n.d(e,"ɵangular_packages_platform_browser_platform_browser_g",function(){return M}),n.d(e,"ɵangular_packages_platform_browser_platform_browser_h",function(){return X}),n.d(e,"ɵangular_packages_platform_browser_platform_browser_i",function(){return Y}),n.d(e,"ɵangular_packages_platform_browser_platform_browser_j",function(){return it}),n.d(e,"ɵangular_packages_platform_browser_platform_browser_k",function(){return d}),n.d(e,"ɵangular_packages_platform_browser_platform_browser_l",function(){return p}),n.d(e,"ɵangular_packages_platform_browser_platform_browser_m",function(){return v}),n.d(e,"ɵangular_packages_platform_browser_platform_browser_n",function(){return b}),n.d(e,"ɵangular_packages_platform_browser_platform_browser_o",function(){return s}),n.d(e,"ɵescapeHtml",function(){return Mt}),n.d(e,"ɵflattenStyles",function(){return D}),n.d(e,"ɵinitDomAdapter",function(){return ot}),n.d(e,"ɵshimContentAttribute",function(){return I}),n.d(e,"ɵshimHostAttribute",function(){return k});var i=n(1),r=n(3),o=n(0);n.d(e,"ɵgetDOM",function(){return r["ɵgetDOM"]});
  1939. /**
  1940. * @license Angular v9.1.9
  1941. * (c) 2010-2020 Google LLC. https://angular.io/
  1942. * License: MIT
  1943. */
  1944. /**
  1945. * @license
  1946. * Copyright Google Inc. All Rights Reserved.
  1947. *
  1948. * Use of this source code is governed by an MIT-style license that can be
  1949. * found in the LICENSE file at https://angular.io/license
  1950. */
  1951. var a,s=function(t){function e(){return t.call(this)||this}return Object(i.c)(e,t),e.prototype.supportsDOMEvents=function(){return!0},e}(r["ɵDomAdapter"]),c=(o["ɵglobal"].Node&&o["ɵglobal"].Node.prototype.contains,function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Object(i.c)(e,t),e.makeCurrent=function(){Object(r["ɵsetRootDomAdapter"])(new e)},e.prototype.getProperty=function(t,e){return t[e]},e.prototype.log=function(t){window.console&&window.console.log&&window.console.log(t)},e.prototype.logGroup=function(t){window.console&&window.console.group&&window.console.group(t)},e.prototype.logGroupEnd=function(){window.console&&window.console.groupEnd&&window.console.groupEnd()},e.prototype.onAndCancel=function(t,e,n){return t.addEventListener(e,n,!1),function(){t.removeEventListener(e,n,!1)}},e.prototype.dispatchEvent=function(t,e){t.dispatchEvent(e)},e.prototype.remove=function(t){return t.parentNode&&t.parentNode.removeChild(t),t},e.prototype.getValue=function(t){return t.value},e.prototype.createElement=function(t,e){return(e=e||this.getDefaultDocument()).createElement(t)},e.prototype.createHtmlDocument=function(){return document.implementation.createHTMLDocument("fakeTitle")},e.prototype.getDefaultDocument=function(){return document},e.prototype.isElementNode=function(t){return t.nodeType===Node.ELEMENT_NODE},e.prototype.isShadowRoot=function(t){return t instanceof DocumentFragment},e.prototype.getGlobalEventTarget=function(t,e){return"window"===e?window:"document"===e?t:"body"===e?t.body:null},e.prototype.getHistory=function(){return window.history},e.prototype.getLocation=function(){return window.location},e.prototype.getBaseHref=function(t){var e=l||(l=document.querySelector("base"))?l.getAttribute("href"):null;return null==e?null:function(t){return a||(a=document.createElement("a")),a.setAttribute("href",t),"/"===a.pathname.charAt(0)?a.pathname:"/"+a.pathname}
  1952. /**
  1953. * @license
  1954. * Copyright Google Inc. All Rights Reserved.
  1955. *
  1956. * Use of this source code is governed by an MIT-style license that can be
  1957. * found in the LICENSE file at https://angular.io/license
  1958. */(e)},e.prototype.resetBaseElement=function(){l=null},e.prototype.getUserAgent=function(){return window.navigator.userAgent},e.prototype.performanceNow=function(){return window.performance&&window.performance.now?window.performance.now():(new Date).getTime()},e.prototype.supportsCookies=function(){return!0},e.prototype.getCookie=function(t){return Object(r["ɵparseCookieValue"])(document.cookie,t)},e}(s)),l=null,u=new o.InjectionToken("TRANSITION_ID");
  1959. /**
  1960. * @license
  1961. * Copyright Google Inc. All Rights Reserved.
  1962. *
  1963. * Use of this source code is governed by an MIT-style license that can be
  1964. * found in the LICENSE file at https://angular.io/license
  1965. */function d(t,e,n){return function(){n.get(o.ApplicationInitStatus).donePromise.then(function(){var n=Object(r["ɵgetDOM"])();Array.prototype.slice.apply(e.querySelectorAll("style[ng-transition]")).filter(function(e){return e.getAttribute("ng-transition")===t}).forEach(function(t){return n.remove(t)})})}}var p=[{provide:o.APP_INITIALIZER,useFactory:d,deps:[u,r.DOCUMENT,o.Injector],multi:!0}],h=function(){function t(){}return t.init=function(){Object(o.setTestabilityGetter)(new t)},t.prototype.addToWindow=function(t){o["ɵglobal"].getAngularTestability=function(e,n){void 0===n&&(n=!0);var i=t.findTestabilityInTree(e,n);if(null==i)throw new Error("Could not find testability for element.");return i},o["ɵglobal"].getAllAngularTestabilities=function(){return t.getAllTestabilities()},o["ɵglobal"].getAllAngularRootElements=function(){return t.getAllRootElements()},o["ɵglobal"].frameworkStabilizers||(o["ɵglobal"].frameworkStabilizers=[]),o["ɵglobal"].frameworkStabilizers.push(function(t){var e=o["ɵglobal"].getAllAngularTestabilities(),n=e.length,i=!1,r=function(e){i=i||e,0==--n&&t(i)};e.forEach(function(t){t.whenStable(r)})})},t.prototype.findTestabilityInTree=function(t,e,n){if(null==e)return null;var i=t.getTestability(e);return null!=i?i:n?Object(r["ɵgetDOM"])().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null},t}();
  1966. /**
  1967. * @license
  1968. * Copyright Google Inc. All Rights Reserved.
  1969. *
  1970. * Use of this source code is governed by an MIT-style license that can be
  1971. * found in the LICENSE file at https://angular.io/license
  1972. */function f(t,e){"undefined"!=typeof COMPILED&&COMPILED||((o["ɵglobal"].ng=o["ɵglobal"].ng||{})[t]=e)}
  1973. /**
  1974. * @license
  1975. * Copyright Google Inc. All Rights Reserved.
  1976. *
  1977. * Use of this source code is governed by an MIT-style license that can be
  1978. * found in the LICENSE file at https://angular.io/license
  1979. */var g={ApplicationRef:o.ApplicationRef,NgZone:o.NgZone};function m(t){return Object(o["ɵgetDebugNodeR2"])(t)}function v(t){return f("probe",m),f("coreTokens",Object(i.a)(Object(i.a)({},g),(t||[]).reduce(function(t,e){return t[e.name]=e.token,t},{}))),function(){return m}}var y=[],b=[{provide:o.APP_INITIALIZER,useFactory:v,deps:[[o.NgProbeToken,new o.Optional]],multi:!0}],w=y,S=new o.InjectionToken("EventManagerPlugins"),x=function(){function t(t,e){var n=this;this._zone=e,this._eventNameToPlugin=new Map,t.forEach(function(t){return t.manager=n}),this._plugins=t.slice().reverse()}return t.prototype.addEventListener=function(t,e,n){return this._findPluginFor(e).addEventListener(t,e,n)},t.prototype.addGlobalEventListener=function(t,e,n){return this._findPluginFor(e).addGlobalEventListener(t,e,n)},t.prototype.getZone=function(){return this._zone},t.prototype._findPluginFor=function(t){var e=this._eventNameToPlugin.get(t);if(e)return e;for(var n=this._plugins,i=0;i<n.length;i++){var r=n[i];if(r.supports(t))return this._eventNameToPlugin.set(t,r),r}throw new Error("No event manager plugin found for event "+t)},(t=Object(i.b)([Object(i.e)(0,Object(o.Inject)(S)),Object(i.d)("design:paramtypes",[Array,o.NgZone])],t)).ɵfac=function(e){return new(e||t)(o["ɵɵinject"](S),o["ɵɵinject"](o.NgZone))},t.ɵprov=o["ɵɵdefineInjectable"]({token:t,factory:function(e){return t.ɵfac(e)}}),t}(),M=function(){function t(t){this._doc=t}return t.prototype.addGlobalEventListener=function(t,e,n){var i=Object(r["ɵgetDOM"])().getGlobalEventTarget(this._doc,t);if(!i)throw new Error("Unsupported event target "+i+" for event "+e);return this.addEventListener(i,e,n)},t}(),E=function(){function t(){this._stylesSet=new Set}return t.prototype.addStyles=function(t){var e=this,n=new Set;t.forEach(function(t){e._stylesSet.has(t)||(e._stylesSet.add(t),n.add(t))}),this.onStylesAdded(n)},t.prototype.onStylesAdded=function(t){},t.prototype.getAllStyles=function(){return Array.from(this._stylesSet)},t.ɵfac=function(e){return new(e||t)},t.ɵprov=o["ɵɵdefineInjectable"]({token:t,factory:function(e){return t.ɵfac(e)}}),t}(),C=function(t){function e(e){var n=t.call(this)||this;return n._doc=e,n._hostNodes=new Set,n._styleNodes=new Set,n._hostNodes.add(e.head),n}return Object(i.c)(e,t),e.prototype._addStylesToHost=function(t,e){var n=this;t.forEach(function(t){var i=n._doc.createElement("style");i.textContent=t,n._styleNodes.add(e.appendChild(i))})},e.prototype.addHost=function(t){this._addStylesToHost(this._stylesSet,t),this._hostNodes.add(t)},e.prototype.removeHost=function(t){this._hostNodes.delete(t)},e.prototype.onStylesAdded=function(t){var e=this;this._hostNodes.forEach(function(n){return e._addStylesToHost(t,n)})},e.prototype.ngOnDestroy=function(){this._styleNodes.forEach(function(t){return Object(r["ɵgetDOM"])().remove(t)})},(e=Object(i.b)([Object(i.e)(0,Object(o.Inject)(r.DOCUMENT)),Object(i.d)("design:paramtypes",[Object])],e)).ɵfac=function(t){return new(t||e)(o["ɵɵinject"](r.DOCUMENT))},e.ɵprov=o["ɵɵdefineInjectable"]({token:e,factory:function(t){return e.ɵfac(t)}}),e}(E),A={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"},T=/%COMP%/g,O="undefined"==typeof ngDevMode||!!ngDevMode,_="_nghost-%COMP%",P="_ngcontent-%COMP%";function I(t){return P.replace(T,t)}function k(t){return _.replace(T,t)}function D(t,e,n){for(var i=0;i<e.length;i++){var r=e[i];Array.isArray(r)?D(t,r,n):(r=r.replace(T,t),n.push(r))}return n}function R(t){return function(e){if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}var L=function(){function t(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new N(t)}return t.prototype.createRenderer=function(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case o.ViewEncapsulation.Emulated:var n=this.rendererByCompId.get(e.id);return n||(n=new F(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n;case o.ViewEncapsulation.Native:case o.ViewEncapsulation.ShadowDom:return new U(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){var i=D(e.id,e.styles,[]);this.sharedStylesHost.addStyles(i),this.rendererByCompId.set(e.id,this.defaultRenderer)}return this.defaultRenderer}},t.prototype.begin=function(){},t.prototype.end=function(){},(t=Object(i.b)([Object(i.e)(2,Object(o.Inject)(o.APP_ID)),Object(i.d)("design:paramtypes",[x,C,String])],t)).ɵfac=function(e){return new(e||t)(o["ɵɵinject"](x),o["ɵɵinject"](C),o["ɵɵinject"](o.APP_ID))},t.ɵprov=o["ɵɵdefineInjectable"]({token:t,factory:function(e){return t.ɵfac(e)}}),t}(),N=function(){function t(t){this.eventManager=t,this.data=Object.create(null)}return t.prototype.destroy=function(){},t.prototype.createElement=function(t,e){return e?document.createElementNS(A[e]||e,t):document.createElement(t)},t.prototype.createComment=function(t){return document.createComment(t)},t.prototype.createText=function(t){return document.createTextNode(t)},t.prototype.appendChild=function(t,e){t.appendChild(e)},t.prototype.insertBefore=function(t,e,n){t&&t.insertBefore(e,n)},t.prototype.removeChild=function(t,e){t&&t.removeChild(e)},t.prototype.selectRootElement=function(t,e){var n="string"==typeof t?document.querySelector(t):t;if(!n)throw new Error('The selector "'+t+'" did not match any elements');return e||(n.textContent=""),n},t.prototype.parentNode=function(t){return t.parentNode},t.prototype.nextSibling=function(t){return t.nextSibling},t.prototype.setAttribute=function(t,e,n,i){if(i){e=i+":"+e;var r=A[i];r?t.setAttributeNS(r,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)},t.prototype.removeAttribute=function(t,e,n){if(n){var i=A[n];i?t.removeAttributeNS(i,e):t.removeAttribute(n+":"+e)}else t.removeAttribute(e)},t.prototype.addClass=function(t,e){t.classList.add(e)},t.prototype.removeClass=function(t,e){t.classList.remove(e)},t.prototype.setStyle=function(t,e,n,i){i&o.RendererStyleFlags2.DashCase?t.style.setProperty(e,n,i&o.RendererStyleFlags2.Important?"important":""):t.style[e]=n},t.prototype.removeStyle=function(t,e,n){n&o.RendererStyleFlags2.DashCase?t.style.removeProperty(e):t.style[e]=""},t.prototype.setProperty=function(t,e,n){O&&V(e,"property"),t[e]=n},t.prototype.setValue=function(t,e){t.nodeValue=e},t.prototype.listen=function(t,e,n){return O&&V(e,"listener"),"string"==typeof t?this.eventManager.addGlobalEventListener(t,e,R(n)):this.eventManager.addEventListener(t,e,R(n))},t}(),j="@".charCodeAt(0);function V(t,e){if(t.charCodeAt(0)===j)throw new Error("Found the synthetic "+e+" "+t+'. Please include either "BrowserAnimationsModule" or "NoopAnimationsModule" in your application.')}var F=function(t){function e(e,n,i,r){var o=t.call(this,e)||this;o.component=i;var a=D(r+"-"+i.id,i.styles,[]);return n.addStyles(a),o.contentAttr=I(r+"-"+i.id),o.hostAttr=k(r+"-"+i.id),o}return Object(i.c)(e,t),e.prototype.applyToHost=function(e){t.prototype.setAttribute.call(this,e,this.hostAttr,"")},e.prototype.createElement=function(e,n){var i=t.prototype.createElement.call(this,e,n);return t.prototype.setAttribute.call(this,i,this.contentAttr,""),i},e}(N),U=function(t){function e(e,n,i,r){var a=t.call(this,e)||this;a.sharedStylesHost=n,a.hostEl=i,a.component=r,r.encapsulation===o.ViewEncapsulation.ShadowDom?a.shadowRoot=i.attachShadow({mode:"open"}):a.shadowRoot=i.createShadowRoot(),a.sharedStylesHost.addHost(a.shadowRoot);for(var s=D(r.id,r.styles,[]),c=0;c<s.length;c++){var l=document.createElement("style");l.textContent=s[c],a.shadowRoot.appendChild(l)}return a}return Object(i.c)(e,t),e.prototype.nodeOrShadowRoot=function(t){return t===this.hostEl?this.shadowRoot:t},e.prototype.destroy=function(){this.sharedStylesHost.removeHost(this.shadowRoot)},e.prototype.appendChild=function(e,n){return t.prototype.appendChild.call(this,this.nodeOrShadowRoot(e),n)},e.prototype.insertBefore=function(e,n,i){return t.prototype.insertBefore.call(this,this.nodeOrShadowRoot(e),n,i)},e.prototype.removeChild=function(e,n){return t.prototype.removeChild.call(this,this.nodeOrShadowRoot(e),n)},e.prototype.parentNode=function(e){return this.nodeOrShadowRoot(t.prototype.parentNode.call(this,this.nodeOrShadowRoot(e)))},e}(N),B=function(t){function e(e){return t.call(this,e)||this}return Object(i.c)(e,t),e.prototype.supports=function(t){return!0},e.prototype.addEventListener=function(t,e,n){var i=this;return t.addEventListener(e,n,!1),function(){return i.removeEventListener(t,e,n)}},e.prototype.removeEventListener=function(t,e,n){return t.removeEventListener(e,n)},(e=Object(i.b)([Object(i.e)(0,Object(o.Inject)(r.DOCUMENT)),Object(i.d)("design:paramtypes",[Object])],e)).ɵfac=function(t){return new(t||e)(o["ɵɵinject"](r.DOCUMENT))},e.ɵprov=o["ɵɵdefineInjectable"]({token:e,factory:function(t){return e.ɵfac(t)}}),e}(M),z={pan:!0,panstart:!0,panmove:!0,panend:!0,pancancel:!0,panleft:!0,panright:!0,panup:!0,pandown:!0,pinch:!0,pinchstart:!0,pinchmove:!0,pinchend:!0,pinchcancel:!0,pinchin:!0,pinchout:!0,press:!0,pressup:!0,rotate:!0,rotatestart:!0,rotatemove:!0,rotateend:!0,rotatecancel:!0,swipe:!0,swipeleft:!0,swiperight:!0,swipeup:!0,swipedown:!0,tap:!0},G=new o.InjectionToken("HammerGestureConfig"),H=new o.InjectionToken("HammerLoader"),W=function(){function t(){this.events=[],this.overrides={}}return t.prototype.buildHammer=function(t){var e=new Hammer(t,this.options);for(var n in e.get("pinch").set({enable:!0}),e.get("rotate").set({enable:!0}),this.overrides)e.get(n).set(this.overrides[n]);return e},t.ɵfac=function(e){return new(e||t)},t.ɵprov=o["ɵɵdefineInjectable"]({token:t,factory:function(e){return t.ɵfac(e)}}),t}(),q=function(t){function e(e,n,i,r){var o=t.call(this,e)||this;return o._config=n,o.console=i,o.loader=r,o}return Object(i.c)(e,t),e.prototype.supports=function(t){return!(!z.hasOwnProperty(t.toLowerCase())&&!this.isCustomEvent(t)||!window.Hammer&&!this.loader&&(this.console.warn('The "'+t+'" event cannot be bound because Hammer.JS is not loaded and no custom loader has been specified.'),1))},e.prototype.addEventListener=function(t,e,n){var i=this,r=this.manager.getZone();if(e=e.toLowerCase(),!window.Hammer&&this.loader){var o=!1,a=function(){o=!0};return this.loader().then(function(){if(!window.Hammer)return i.console.warn("The custom HAMMER_LOADER completed, but Hammer.JS is not present."),void(a=function(){});o||(a=i.addEventListener(t,e,n))}).catch(function(){i.console.warn('The "'+e+'" event cannot be bound because the custom Hammer.JS loader failed.'),a=function(){}}),function(){a()}}return r.runOutsideAngular(function(){var o=i._config.buildHammer(t),a=function(t){r.runGuarded(function(){n(t)})};return o.on(e,a),function(){o.off(e,a),"function"==typeof o.destroy&&o.destroy()}})},e.prototype.isCustomEvent=function(t){return this._config.events.indexOf(t)>-1},(e=Object(i.b)([Object(i.e)(0,Object(o.Inject)(r.DOCUMENT)),Object(i.e)(1,Object(o.Inject)(G)),Object(i.e)(3,Object(o.Optional)()),Object(i.e)(3,Object(o.Inject)(H)),Object(i.d)("design:paramtypes",[Object,W,o["ɵConsole"],Object])],e)).ɵfac=function(t){return new(t||e)(o["ɵɵinject"](r.DOCUMENT),o["ɵɵinject"](G),o["ɵɵinject"](o["ɵConsole"]),o["ɵɵinject"](H,8))},e.ɵprov=o["ɵɵdefineInjectable"]({token:e,factory:function(t){return e.ɵfac(t)}}),e}(M),K=[],X=[{provide:S,useClass:q,multi:!0,deps:[r.DOCUMENT,G,o["ɵConsole"],[new o.Optional,H]]},{provide:G,useClass:W,deps:[]}],Y=K,Z=function(){function t(){}return t.ɵmod=o["ɵɵdefineNgModule"]({type:t}),t.ɵinj=o["ɵɵdefineInjector"]({factory:function(e){return new(e||t)},providers:X}),t}(),J=["alt","control","meta","shift"],Q={"\b":"Backspace","\t":"Tab","":"Delete","":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},$={A:"1",B:"2",C:"3",D:"4",E:"5",F:"6",G:"7",H:"8",I:"9",J:"*",K:"+",M:"-",N:".",O:"/","`":"0","":"NumLock"},tt={alt:function(t){return t.altKey},control:function(t){return t.ctrlKey},meta:function(t){return t.metaKey},shift:function(t){return t.shiftKey}},et=function(t){function e(e){return t.call(this,e)||this}var n;return Object(i.c)(e,t),n=e,e.prototype.supports=function(t){return null!=n.parseEventName(t)},e.prototype.addEventListener=function(t,e,i){var o=n.parseEventName(e),a=n.eventCallback(o.fullKey,i,this.manager.getZone());return this.manager.getZone().runOutsideAngular(function(){return Object(r["ɵgetDOM"])().onAndCancel(t,o.domEventName,a)})},e.parseEventName=function(t){var e=t.toLowerCase().split("."),i=e.shift();if(0===e.length||"keydown"!==i&&"keyup"!==i)return null;var r=n._normalizeKey(e.pop()),o="";if(J.forEach(function(t){var n=e.indexOf(t);n>-1&&(e.splice(n,1),o+=t+".")}),o+=r,0!=e.length||0===r.length)return null;var a={};return a.domEventName=i,a.fullKey=o,a},e.getEventFullKey=function(t){var e="",n=function(t){var e=t.key;if(null==e){if(null==(e=t.keyIdentifier))return"Unidentified";e.startsWith("U+")&&(e=String.fromCharCode(parseInt(e.substring(2),16)),3===t.location&&$.hasOwnProperty(e)&&(e=$[e]))}return Q[e]||e}(t);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),J.forEach(function(i){i!=n&&(0,tt[i])(t)&&(e+=i+".")}),e+=n},e.eventCallback=function(t,e,i){return function(r){n.getEventFullKey(r)===t&&i.runGuarded(function(){return e(r)})}},e._normalizeKey=function(t){switch(t){case"esc":return"escape";default:return t}},(e=n=Object(i.b)([Object(i.e)(0,Object(o.Inject)(r.DOCUMENT)),Object(i.d)("design:paramtypes",[Object])],e)).ɵfac=function(t){return new(t||e)(o["ɵɵinject"](r.DOCUMENT))},e.ɵprov=o["ɵɵdefineInjectable"]({token:e,factory:function(t){return e.ɵfac(t)}}),e}(M),nt=function(){function t(){}return t.ɵprov=Object(o["ɵɵdefineInjectable"])({factory:function(){return Object(o["ɵɵinject"])(rt)},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)},t}();function it(t){return new rt(t.get(r.DOCUMENT))}var rt=function(t){function e(e){var n=t.call(this)||this;return n._doc=e,n}return Object(i.c)(e,t),e.prototype.sanitize=function(t,e){if(null==e)return null;switch(t){case o.SecurityContext.NONE:return e;case o.SecurityContext.HTML:return Object(o["ɵallowSanitizationBypassAndThrow"])(e,"HTML")?Object(o["ɵunwrapSafeValue"])(e):Object(o["ɵ_sanitizeHtml"])(this._doc,String(e));case o.SecurityContext.STYLE:return Object(o["ɵallowSanitizationBypassAndThrow"])(e,"Style")?Object(o["ɵunwrapSafeValue"])(e):Object(o["ɵ_sanitizeStyle"])(e);case o.SecurityContext.SCRIPT:if(Object(o["ɵallowSanitizationBypassAndThrow"])(e,"Script"))return Object(o["ɵunwrapSafeValue"])(e);throw new Error("unsafe value used in a script context");case o.SecurityContext.URL:return Object(o["ɵgetSanitizationBypassType"])(e),Object(o["ɵallowSanitizationBypassAndThrow"])(e,"URL")?Object(o["ɵunwrapSafeValue"])(e):Object(o["ɵ_sanitizeUrl"])(String(e));case o.SecurityContext.RESOURCE_URL:if(Object(o["ɵallowSanitizationBypassAndThrow"])(e,"ResourceURL"))return Object(o["ɵunwrapSafeValue"])(e);throw new Error("unsafe value used in a resource URL context (see http://g.co/ng/security#xss)");default:throw new Error("Unexpected SecurityContext "+t+" (see http://g.co/ng/security#xss)")}},e.prototype.bypassSecurityTrustHtml=function(t){return Object(o["ɵbypassSanitizationTrustHtml"])(t)},e.prototype.bypassSecurityTrustStyle=function(t){return Object(o["ɵbypassSanitizationTrustStyle"])(t)},e.prototype.bypassSecurityTrustScript=function(t){return Object(o["ɵbypassSanitizationTrustScript"])(t)},e.prototype.bypassSecurityTrustUrl=function(t){return Object(o["ɵbypassSanitizationTrustUrl"])(t)},e.prototype.bypassSecurityTrustResourceUrl=function(t){return Object(o["ɵbypassSanitizationTrustResourceUrl"])(t)},e.ɵprov=Object(o["ɵɵdefineInjectable"])({factory:function(){return it(Object(o["ɵɵinject"])(o.INJECTOR))},token:e,providedIn:"root"}),(e=Object(i.b)([Object(i.e)(0,Object(o.Inject)(r.DOCUMENT)),Object(i.d)("design:paramtypes",[Object])],e)).ɵfac=function(t){return new(t||e)(o["ɵɵinject"](r.DOCUMENT))},e}(nt);
  1980. /**
  1981. * @license
  1982. * Copyright Google Inc. All Rights Reserved.
  1983. *
  1984. * Use of this source code is governed by an MIT-style license that can be
  1985. * found in the LICENSE file at https://angular.io/license
  1986. */function ot(){c.makeCurrent(),h.init()}function at(){return new o.ErrorHandler}function st(){return Object(o["ɵsetDocument"])(document),document}var ct=r["ɵPLATFORM_BROWSER_ID"],lt=[{provide:o.PLATFORM_ID,useValue:ct},{provide:o.PLATFORM_INITIALIZER,useValue:ot,multi:!0},{provide:r.DOCUMENT,useFactory:st,deps:[]}],ut=(o.Sanitizer,r.DOCUMENT,[]),dt=ut,pt=Object(o.createPlatformFactory)(o.platformCore,"browser",lt),ht=[dt,{provide:o["ɵINJECTOR_SCOPE"],useValue:"root"},{provide:o.ErrorHandler,useFactory:at,deps:[]},{provide:S,useClass:B,multi:!0,deps:[r.DOCUMENT,o.NgZone,o.PLATFORM_ID]},{provide:S,useClass:et,multi:!0,deps:[r.DOCUMENT]},Y,{provide:L,useClass:L,deps:[x,C,o.APP_ID]},{provide:o.RendererFactory2,useExisting:L},{provide:E,useExisting:C},{provide:C,useClass:C,deps:[r.DOCUMENT]},{provide:o.Testability,useClass:o.Testability,deps:[o.NgZone]},{provide:x,useClass:x,deps:[S,o.NgZone]},w],ft=function(){function t(t){if(t)throw new Error("BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.")}var e;return e=t,t.withServerTransition=function(t){return{ngModule:e,providers:[{provide:o.APP_ID,useValue:t.appId},{provide:u,useExisting:o.APP_ID},p]}},(t=e=Object(i.b)([Object(i.e)(0,Object(o.Optional)()),Object(i.e)(0,Object(o.SkipSelf)()),Object(i.e)(0,Object(o.Inject)(e)),Object(i.d)("design:paramtypes",[Object])],t)).ɵmod=o["ɵɵdefineNgModule"]({type:t}),t.ɵinj=o["ɵɵdefineInjector"]({factory:function(n){return new(n||t)(o["ɵɵinject"](e,12))},providers:ht,imports:[r.CommonModule,o.ApplicationModule]}),("undefined"==typeof ngJitMode||ngJitMode)&&o["ɵɵsetNgModuleScope"](t,{exports:function(){return[r.CommonModule,o.ApplicationModule]}}),t}();function gt(){return new mt(Object(o["ɵɵinject"])(r.DOCUMENT))}var mt=function(){function t(t){this._doc=t,this._dom=Object(r["ɵgetDOM"])()}return t.prototype.addTag=function(t,e){return void 0===e&&(e=!1),t?this._getOrCreateElement(t,e):null},t.prototype.addTags=function(t,e){var n=this;return void 0===e&&(e=!1),t?t.reduce(function(t,i){return i&&t.push(n._getOrCreateElement(i,e)),t},[]):[]},t.prototype.getTag=function(t){return t&&this._doc.querySelector("meta["+t+"]")||null},t.prototype.getTags=function(t){if(!t)return[];var e=this._doc.querySelectorAll("meta["+t+"]");return e?[].slice.call(e):[]},t.prototype.updateTag=function(t,e){if(!t)return null;e=e||this._parseSelector(t);var n=this.getTag(e);return n?this._setMetaElementAttributes(t,n):this._getOrCreateElement(t,!0)},t.prototype.removeTag=function(t){this.removeTagElement(this.getTag(t))},t.prototype.removeTagElement=function(t){t&&this._dom.remove(t)},t.prototype._getOrCreateElement=function(t,e){if(void 0===e&&(e=!1),!e){var n=this._parseSelector(t),i=this.getTag(n);if(i&&this._containsAttributes(t,i))return i}var r=this._dom.createElement("meta");return this._setMetaElementAttributes(t,r),this._doc.getElementsByTagName("head")[0].appendChild(r),r},t.prototype._setMetaElementAttributes=function(t,e){return Object.keys(t).forEach(function(n){return e.setAttribute(n,t[n])}),e},t.prototype._parseSelector=function(t){var e=t.name?"name":"property";return e+'="'+t[e]+'"'},t.prototype._containsAttributes=function(t,e){return Object.keys(t).every(function(n){return e.getAttribute(n)===t[n]})},t.ɵprov=Object(o["ɵɵdefineInjectable"])({factory:gt,token:t,providedIn:"root"}),(t=Object(i.b)([Object(i.e)(0,Object(o.Inject)(r.DOCUMENT)),Object(i.d)("design:paramtypes",[Object])],t)).ɵfac=function(e){return new(e||t)(o["ɵɵinject"](r.DOCUMENT))},t}();function vt(){return new yt(Object(o["ɵɵinject"])(r.DOCUMENT))}var yt=function(){function t(t){this._doc=t}return t.prototype.getTitle=function(){return this._doc.title},t.prototype.setTitle=function(t){this._doc.title=t||""},t.ɵprov=Object(o["ɵɵdefineInjectable"])({factory:vt,token:t,providedIn:"root"}),(t=Object(i.b)([Object(i.e)(0,Object(o.Inject)(r.DOCUMENT)),Object(i.d)("design:paramtypes",[Object])],t)).ɵfac=function(e){return new(e||t)(o["ɵɵinject"](r.DOCUMENT))},t}(),bt="undefined"!=typeof window&&window||{},wt=function(){function t(t){this.appRef=t.injector.get(o.ApplicationRef)}return t.prototype.timeChangeDetection=function(t){var e=t&&t.record,n=null!=bt.console.profile;e&&n&&bt.console.profile("Change Detection");for(var i=Object(r["ɵgetDOM"])().performanceNow(),o=0;o<5||Object(r["ɵgetDOM"])().performanceNow()-i<500;)this.appRef.tick(),o++;var a=Object(r["ɵgetDOM"])().performanceNow();e&&n&&bt.console.profileEnd("Change Detection");var s=(a-i)/o;return bt.console.log("ran "+o+" change detection cycles"),bt.console.log(s.toFixed(2)+" ms per check"),new function(t,e){this.msPerTick=t,this.numTicks=e}(s,o)},t}();
  1987. /**
  1988. * @license
  1989. * Copyright Google Inc. All Rights Reserved.
  1990. *
  1991. * Use of this source code is governed by an MIT-style license that can be
  1992. * found in the LICENSE file at https://angular.io/license
  1993. */function St(t){return f("profiler",new wt(t)),t}function xt(){f("profiler",null)}
  1994. /**
  1995. * @license
  1996. * Copyright Google Inc. All Rights Reserved.
  1997. *
  1998. * Use of this source code is governed by an MIT-style license that can be
  1999. * found in the LICENSE file at https://angular.io/license
  2000. */function Mt(t){var e={"&":"&a;",'"':"&q;","'":"&s;","<":"&l;",">":"&g;"};return t.replace(/[&"'<>]/g,function(t){return e[t]})}function Et(t){return t}var Ct=function(){function t(){this.store={},this.onSerializeCallbacks={}}var e;return e=t,t.init=function(t){var n=new e;return n.store=t,n},t.prototype.get=function(t,e){return void 0!==this.store[t]?this.store[t]:e},t.prototype.set=function(t,e){this.store[t]=e},t.prototype.remove=function(t){delete this.store[t]},t.prototype.hasKey=function(t){return this.store.hasOwnProperty(t)},t.prototype.onSerialize=function(t,e){this.onSerializeCallbacks[t]=e},t.prototype.toJson=function(){for(var t in this.onSerializeCallbacks)if(this.onSerializeCallbacks.hasOwnProperty(t))try{this.store[t]=this.onSerializeCallbacks[t]()}catch(t){console.warn("Exception in onSerialize callback: ",t)}return JSON.stringify(this.store)},t.ɵfac=function(e){return new(e||t)},t.ɵprov=o["ɵɵdefineInjectable"]({token:t,factory:function(e){return t.ɵfac(e)}}),t}();function At(t,e){var n,i,r=t.getElementById(e+"-state"),o={};if(r&&r.textContent)try{o=JSON.parse((n=r.textContent,i={"&a;":"&","&q;":'"',"&s;":"'","&l;":"<","&g;":">"},n.replace(/&[^;]+;/g,function(t){return i[t]})))}catch(t){console.warn("Exception while restoring TransferState for app "+e,t)}return Ct.init(o)}var Tt=function(){function t(){}return t.ɵmod=o["ɵɵdefineNgModule"]({type:t}),t.ɵinj=o["ɵɵdefineInjector"]({factory:function(e){return new(e||t)},providers:[{provide:Ct,useFactory:At,deps:[r.DOCUMENT,o.APP_ID]}]}),t}(),Ot=function(){function t(){}return t.all=function(){return function(){return!0}},t.css=function(t){return function(e){return null!=e.nativeElement&&function(t,e){return!!Object(r["ɵgetDOM"])().isElementNode(t)&&(t.matches&&t.matches(e)||t.msMatchesSelector&&t.msMatchesSelector(e)||t.webkitMatchesSelector&&t.webkitMatchesSelector(e))}
  2001. /**
  2002. * @license
  2003. * Copyright Google Inc. All Rights Reserved.
  2004. *
  2005. * Use of this source code is governed by an MIT-style license that can be
  2006. * found in the LICENSE file at https://angular.io/license
  2007. */
  2008. /**
  2009. * @license
  2010. * Copyright Google Inc. All Rights Reserved.
  2011. *
  2012. * Use of this source code is governed by an MIT-style license that can be
  2013. * found in the LICENSE file at https://angular.io/license
  2014. */(e.nativeElement,t)}},t.directive=function(t){return function(e){return-1!==e.providerTokens.indexOf(t)}},t}(),_t=new o.Version("9.1.9");
  2015. /**
  2016. * @license
  2017. * Copyright Google Inc. All Rights Reserved.
  2018. *
  2019. * Use of this source code is governed by an MIT-style license that can be
  2020. * found in the LICENSE file at https://angular.io/license
  2021. */},function(t,e,n){"use strict";n.d(e,"a",function(){return i});var i="function"==typeof Symbol&&Symbol.observable||"@@observable"},function(t,e,n){"use strict";n.d(e,"a",function(){return i});var i=function(){function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t}()},function(t,e,n){var i;
  2022. /*! Hammer.JS - v1.1.3 - 2014-05-20
  2023. * http://eightmedia.github.io/hammer.js
  2024. *
  2025. * Copyright (c) 2014 Jorik Tangelder <j.tangelder@gmail.com>;
  2026. * Licensed under the MIT license */!function(r,o){"use strict";var a=function t(e,n){return new t.Instance(e,n||{})};a.VERSION="1.1.3",a.defaults={behavior:{userSelect:"none",touchAction:"pan-y",touchCallout:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}},a.DOCUMENT=document,a.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled,a.HAS_TOUCHEVENTS="ontouchstart"in r,a.IS_MOBILE=/mobile|tablet|ip(ad|hone|od)|android|silk/i.test(navigator.userAgent),a.NO_MOUSEEVENTS=a.HAS_TOUCHEVENTS&&a.IS_MOBILE||a.HAS_POINTEREVENTS,a.CALCULATE_INTERVAL=25;var s={},c=a.DIRECTION_DOWN="down",l=a.DIRECTION_LEFT="left",u=a.DIRECTION_UP="up",d=a.DIRECTION_RIGHT="right",p=a.POINTER_MOUSE="mouse",h=a.POINTER_TOUCH="touch",f=a.POINTER_PEN="pen",g=a.EVENT_START="start",m=a.EVENT_MOVE="move",v=a.EVENT_END="end",y=a.EVENT_RELEASE="release",b=a.EVENT_TOUCH="touch";a.READY=!1,a.plugins=a.plugins||{},a.gestures=a.gestures||{};var w,S,x=a.utils={extend:function(t,e,n){for(var i in e)!e.hasOwnProperty(i)||void 0!==t[i]&&n||(t[i]=e[i]);return t},on:function(t,e,n){t.addEventListener(e,n,!1)},off:function(t,e,n){t.removeEventListener(e,n,!1)},each:function(t,e,n){var i,r;if("forEach"in t)t.forEach(e,n);else if(void 0!==t.length){for(i=0,r=t.length;i<r;i++)if(!1===e.call(n,t[i],i,t))return}else for(i in t)if(t.hasOwnProperty(i)&&!1===e.call(n,t[i],i,t))return},inStr:function(t,e){return t.indexOf(e)>-1},inArray:function(t,e){if(t.indexOf){var n=t.indexOf(e);return-1!==n&&n}for(var i=0,r=t.length;i<r;i++)if(t[i]===e)return i;return!1},toArray:function(t){return Array.prototype.slice.call(t,0)},hasParent:function(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1},getCenter:function(t){var e=[],n=[],i=[],r=[],o=Math.min,a=Math.max;return 1===t.length?{pageX:t[0].pageX,pageY:t[0].pageY,clientX:t[0].clientX,clientY:t[0].clientY}:(x.each(t,function(t){e.push(t.pageX),n.push(t.pageY),i.push(t.clientX),r.push(t.clientY)}),{pageX:(o.apply(Math,e)+a.apply(Math,e))/2,pageY:(o.apply(Math,n)+a.apply(Math,n))/2,clientX:(o.apply(Math,i)+a.apply(Math,i))/2,clientY:(o.apply(Math,r)+a.apply(Math,r))/2})},getVelocity:function(t,e,n){return{x:Math.abs(e/t)||0,y:Math.abs(n/t)||0}},getAngle:function(t,e){var n=e.clientX-t.clientX,i=e.clientY-t.clientY;return 180*Math.atan2(i,n)/Math.PI},getDirection:function(t,e){return Math.abs(t.clientX-e.clientX)>=Math.abs(t.clientY-e.clientY)?t.clientX-e.clientX>0?l:d:t.clientY-e.clientY>0?u:c},getDistance:function(t,e){var n=e.clientX-t.clientX,i=e.clientY-t.clientY;return Math.sqrt(n*n+i*i)},getScale:function(t,e){return t.length>=2&&e.length>=2?this.getDistance(e[0],e[1])/this.getDistance(t[0],t[1]):1},getRotation:function(t,e){return t.length>=2&&e.length>=2?this.getAngle(e[1],e[0])-this.getAngle(t[1],t[0]):0},isVertical:function(t){return t==u||t==c},setPrefixedCss:function(t,e,n,i){var r=["","Webkit","Moz","O","ms"];e=x.toCamelCase(e);for(var o=0;o<r.length;o++){var a=e;if(r[o]&&(a=r[o]+a.slice(0,1).toUpperCase()+a.slice(1)),a in t.style){t.style[a]=(null==i||i)&&n||"";break}}},toggleBehavior:function(t,e,n){if(e&&t&&t.style){x.each(e,function(e,i){x.setPrefixedCss(t,i,e,n)});var i=n&&function(){return!1};"none"==e.userSelect&&(t.onselectstart=i),"none"==e.userDrag&&(t.ondragstart=i)}},toCamelCase:function(t){return t.replace(/[_-]([a-z])/g,function(t){return t[1].toUpperCase()})}},M=a.event={preventMouseEvents:!1,started:!1,shouldDetect:!1,on:function(t,e,n,i){var r=e.split(" ");x.each(r,function(e){x.on(t,e,n),i&&i(e)})},off:function(t,e,n,i){var r=e.split(" ");x.each(r,function(e){x.off(t,e,n),i&&i(e)})},onTouch:function(t,e,n){var i=this,r=function(r){var o,s=r.type.toLowerCase(),c=a.HAS_POINTEREVENTS,l=x.inStr(s,"mouse");l&&i.preventMouseEvents||(l&&e==g&&0===r.button?(i.preventMouseEvents=!1,i.shouldDetect=!0):c&&e==g?i.shouldDetect=1===r.buttons||E.matchType(h,r):l||e!=g||(i.preventMouseEvents=!0,i.shouldDetect=!0),c&&e!=v&&E.updatePointer(e,r),i.shouldDetect&&(o=i.doDetect.call(i,r,e,t,n)),o==v&&(i.preventMouseEvents=!1,i.shouldDetect=!1,E.reset()),c&&e==v&&E.updatePointer(e,r))};return this.on(t,s[e],r),r},doDetect:function(t,e,n,i){var r=this.getTouchList(t,e),o=r.length,a=e,s=r.trigger,c=o;e==g?s=b:e==v&&(s=y,c=r.length-(t.changedTouches?t.changedTouches.length:1)),c>0&&this.started&&(a=m),this.started=!0;var l=this.collectEventData(n,a,r,t);return e!=v&&i.call(C,l),s&&(l.changedLength=c,l.eventType=s,i.call(C,l),l.eventType=a,delete l.changedLength),a==v&&(i.call(C,l),this.started=!1),a},determineEventTypes:function(){var t;return t=a.HAS_POINTEREVENTS?r.PointerEvent?["pointerdown","pointermove","pointerup pointercancel lostpointercapture"]:["MSPointerDown","MSPointerMove","MSPointerUp MSPointerCancel MSLostPointerCapture"]:a.NO_MOUSEEVENTS?["touchstart","touchmove","touchend touchcancel"]:["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"],s[g]=t[0],s[m]=t[1],s[v]=t[2],s},getTouchList:function(t,e){if(a.HAS_POINTEREVENTS)return E.getTouchList();if(t.touches){if(e==m)return t.touches;var n=[],i=[].concat(x.toArray(t.touches),x.toArray(t.changedTouches)),r=[];return x.each(i,function(t){!1===x.inArray(n,t.identifier)&&r.push(t),n.push(t.identifier)}),r}return t.identifier=1,[t]},collectEventData:function(t,e,n,i){var r=h;return x.inStr(i.type,"mouse")||E.matchType(p,i)?r=p:E.matchType(f,i)&&(r=f),{center:x.getCenter(n),timeStamp:Date.now(),target:i.target,touches:n,eventType:e,pointerType:r,srcEvent:i,preventDefault:function(){var t=this.srcEvent;t.preventManipulation&&t.preventManipulation(),t.preventDefault&&t.preventDefault()},stopPropagation:function(){this.srcEvent.stopPropagation()},stopDetect:function(){return C.stopDetect()}}}},E=a.PointerEvent={pointers:{},getTouchList:function(){var t=[];return x.each(this.pointers,function(e){t.push(e)}),t},updatePointer:function(t,e){t==v||t!=v&&1!==e.buttons?delete this.pointers[e.pointerId]:(e.identifier=e.pointerId,this.pointers[e.pointerId]=e)},matchType:function(t,e){if(!e.pointerType)return!1;var n=e.pointerType,i={};return i[p]=n===(e.MSPOINTER_TYPE_MOUSE||p),i[h]=n===(e.MSPOINTER_TYPE_TOUCH||h),i[f]=n===(e.MSPOINTER_TYPE_PEN||f),i[t]},reset:function(){this.pointers={}}},C=a.detection={gestures:[],current:null,previous:null,stopped:!1,startDetect:function(t,e){this.current||(this.stopped=!1,this.current={inst:t,startEvent:x.extend({},e),lastEvent:!1,lastCalcEvent:!1,futureCalcEvent:!1,lastCalcData:{},name:""},this.detect(e))},detect:function(t){if(this.current&&!this.stopped){t=this.extendEventData(t);var e=this.current.inst,n=e.options;return x.each(this.gestures,function(i){!this.stopped&&e.enabled&&n[i.name]&&i.handler.call(i,t,e)},this),this.current&&(this.current.lastEvent=t),t.eventType==v&&this.stopDetect(),t}},stopDetect:function(){this.previous=x.extend({},this.current),this.current=null,this.stopped=!0},getCalculatedData:function(t,e,n,i,r){var o=this.current,s=!1,c=o.lastCalcEvent,l=o.lastCalcData;c&&t.timeStamp-c.timeStamp>a.CALCULATE_INTERVAL&&(e=c.center,n=t.timeStamp-c.timeStamp,i=t.center.clientX-c.center.clientX,r=t.center.clientY-c.center.clientY,s=!0),t.eventType!=b&&t.eventType!=y||(o.futureCalcEvent=t),o.lastCalcEvent&&!s||(l.velocity=x.getVelocity(n,i,r),l.angle=x.getAngle(e,t.center),l.direction=x.getDirection(e,t.center),o.lastCalcEvent=o.futureCalcEvent||t,o.futureCalcEvent=t),t.velocityX=l.velocity.x,t.velocityY=l.velocity.y,t.interimAngle=l.angle,t.interimDirection=l.direction},extendEventData:function(t){var e=this.current,n=e.startEvent,i=e.lastEvent||n;t.eventType!=b&&t.eventType!=y||(n.touches=[],x.each(t.touches,function(t){n.touches.push({clientX:t.clientX,clientY:t.clientY})}));var r=t.timeStamp-n.timeStamp,o=t.center.clientX-n.center.clientX,a=t.center.clientY-n.center.clientY;return this.getCalculatedData(t,i.center,r,o,a),x.extend(t,{startEvent:n,deltaTime:r,deltaX:o,deltaY:a,distance:x.getDistance(n.center,t.center),angle:x.getAngle(n.center,t.center),direction:x.getDirection(n.center,t.center),scale:x.getScale(n.touches,t.touches),rotation:x.getRotation(n.touches,t.touches)}),t},register:function(t){var e=t.defaults||{};return void 0===e[t.name]&&(e[t.name]=!0),x.extend(a.defaults,e,!0),t.index=t.index||1e3,this.gestures.push(t),this.gestures.sort(function(t,e){return t.index<e.index?-1:t.index>e.index?1:0}),this.gestures}};(a.Instance=function(t,e){var n=this;a.READY||(M.determineEventTypes(),x.each(a.gestures,function(t){C.register(t)}),M.onTouch(a.DOCUMENT,m,C.detect),M.onTouch(a.DOCUMENT,v,C.detect),a.READY=!0),this.element=t,this.enabled=!0,x.each(e,function(t,n){delete e[n],e[x.toCamelCase(n)]=t}),this.options=x.extend(x.extend({},a.defaults),e||{}),this.options.behavior&&x.toggleBehavior(this.element,this.options.behavior,!0),this.eventStartHandler=M.onTouch(t,g,function(t){n.enabled&&t.eventType==g?C.startDetect(n,t):t.eventType==b&&C.detect(t)}),this.eventHandlers=[]}).prototype={on:function(t,e){var n=this;return M.on(n.element,t,e,function(t){n.eventHandlers.push({gesture:t,handler:e})}),n},off:function(t,e){var n=this;return M.off(n.element,t,e,function(t){var i=x.inArray({gesture:t,handler:e});!1!==i&&n.eventHandlers.splice(i,1)}),n},trigger:function(t,e){e||(e={});var n=a.DOCUMENT.createEvent("Event");n.initEvent(t,!0,!0),n.gesture=e;var i=this.element;return x.hasParent(e.target,i)&&(i=e.target),i.dispatchEvent(n),this},enable:function(t){return this.enabled=t,this},dispose:function(){var t,e;for(x.toggleBehavior(this.element,this.options.behavior,!1),t=-1;e=this.eventHandlers[++t];)x.off(this.element,e.gesture,e.handler);return this.eventHandlers=[],M.off(this.element,s[g],this.eventStartHandler),null}},function(t){var e=!1;a.gestures.Drag={name:t,index:50,handler:function(n,i){var r=C.current;if(!(i.options.dragMaxTouches>0&&n.touches.length>i.options.dragMaxTouches))switch(n.eventType){case g:e=!1;break;case m:if(n.distance<i.options.dragMinDistance&&r.name!=t)return;var o=r.startEvent.center;if(r.name!=t&&(r.name=t,i.options.dragDistanceCorrection&&n.distance>0)){var a=Math.abs(i.options.dragMinDistance/n.distance);o.pageX+=n.deltaX*a,o.pageY+=n.deltaY*a,o.clientX+=n.deltaX*a,o.clientY+=n.deltaY*a,n=C.extendEventData(n)}(r.lastEvent.dragLockToAxis||i.options.dragLockToAxis&&i.options.dragLockMinDistance<=n.distance)&&(n.dragLockToAxis=!0);var s=r.lastEvent.direction;n.dragLockToAxis&&s!==n.direction&&(x.isVertical(s)?n.direction=n.deltaY<0?u:c:n.direction=n.deltaX<0?l:d),e||(i.trigger(t+"start",n),e=!0),i.trigger(t,n),i.trigger(t+n.direction,n);var p=x.isVertical(n.direction);(i.options.dragBlockVertical&&p||i.options.dragBlockHorizontal&&!p)&&n.preventDefault();break;case y:e&&n.changedLength<=i.options.dragMaxTouches&&(i.trigger(t+"end",n),e=!1);break;case v:e=!1}},defaults:{dragMinDistance:10,dragDistanceCorrection:!0,dragMaxTouches:1,dragBlockHorizontal:!1,dragBlockVertical:!1,dragLockToAxis:!1,dragLockMinDistance:25}}}("drag"),a.gestures.Gesture={name:"gesture",index:1337,handler:function(t,e){e.trigger(this.name,t)}},a.gestures.Hold={name:"hold",index:10,defaults:{holdTimeout:500,holdThreshold:2},handler:function(t,e){var n=e.options,i=C.current;switch(t.eventType){case g:clearTimeout(w),i.name="hold",w=setTimeout(function(){i&&"hold"==i.name&&e.trigger("hold",t)},n.holdTimeout);break;case m:t.distance>n.holdThreshold&&clearTimeout(w);break;case y:clearTimeout(w)}}},a.gestures.Release={name:"release",index:1/0,handler:function(t,e){t.eventType==y&&e.trigger(this.name,t)}},a.gestures.Swipe={name:"swipe",index:40,defaults:{swipeMinTouches:1,swipeMaxTouches:1,swipeVelocityX:.6,swipeVelocityY:.6},handler:function(t,e){if(t.eventType==y){var n=t.touches.length,i=e.options;if(n<i.swipeMinTouches||n>i.swipeMaxTouches)return;(t.velocityX>i.swipeVelocityX||t.velocityY>i.swipeVelocityY)&&(e.trigger(this.name,t),e.trigger(this.name+t.direction,t))}}},S=!1,a.gestures.Tap={name:"tap",index:100,handler:function(t,e){var n,i,r=e.options,o=C.current,a=C.previous;switch(t.eventType){case g:S=!1;break;case m:S=S||t.distance>r.tapMaxDistance;break;case v:!x.inStr(t.srcEvent.type,"cancel")&&t.deltaTime<r.tapMaxTime&&!S&&(n=a&&a.lastEvent&&t.timeStamp-a.lastEvent.timeStamp,i=!1,a&&"tap"==a.name&&n&&n<r.doubleTapInterval&&t.distance<r.doubleTapDistance&&(e.trigger("doubletap",t),i=!0),i&&!r.tapAlways||(o.name="tap",e.trigger(o.name,t)))}},defaults:{tapMaxTime:250,tapMaxDistance:10,tapAlways:!0,doubleTapDistance:20,doubleTapInterval:300}},a.gestures.Touch={name:"touch",index:-1/0,defaults:{preventDefault:!1,preventMouse:!1},handler:function(t,e){e.options.preventMouse&&t.pointerType==p?t.stopDetect():(e.options.preventDefault&&t.preventDefault(),t.eventType==b&&e.trigger("touch",t))}},function(t){var e=!1;a.gestures.Transform={name:t,index:45,defaults:{transformMinScale:.01,transformMinRotation:1},handler:function(n,i){switch(n.eventType){case g:e=!1;break;case m:if(n.touches.length<2)return;var r=Math.abs(1-n.scale),o=Math.abs(n.rotation);if(r<i.options.transformMinScale&&o<i.options.transformMinRotation)return;C.current.name=t,e||(i.trigger(t+"start",n),e=!0),i.trigger(t,n),o>i.options.transformMinRotation&&i.trigger("rotate",n),r>i.options.transformMinScale&&(i.trigger("pinch",n),i.trigger("pinch"+(n.scale<1?"in":"out"),n));break;case y:e&&n.changedLength<2&&(i.trigger(t+"end",n),e=!1)}}}}("transform"),void 0===(i=function(){return a}.call(e,n,e,t))||(t.exports=i)}(window)},function(t,e,n){"use strict";n.r(e),n.d(e,"Observable",function(){return i.a}),n.d(e,"ConnectableObservable",function(){return r.a}),n.d(e,"GroupedObservable",function(){return o.a}),n.d(e,"observable",function(){return a.a}),n.d(e,"Subject",function(){return s.a}),n.d(e,"BehaviorSubject",function(){return c.a}),n.d(e,"ReplaySubject",function(){return l.a}),n.d(e,"AsyncSubject",function(){return u.a}),n.d(e,"asap",function(){return d.a}),n.d(e,"asapScheduler",function(){return d.b}),n.d(e,"async",function(){return p.a}),n.d(e,"asyncScheduler",function(){return p.b}),n.d(e,"queue",function(){return h.a}),n.d(e,"queueScheduler",function(){return h.b}),n.d(e,"animationFrame",function(){return f.a}),n.d(e,"animationFrameScheduler",function(){return f.b}),n.d(e,"VirtualTimeScheduler",function(){return v}),n.d(e,"VirtualAction",function(){return y}),n.d(e,"Scheduler",function(){return b.a}),n.d(e,"Subscription",function(){return w.a}),n.d(e,"Subscriber",function(){return S.a}),n.d(e,"Notification",function(){return x.a}),n.d(e,"NotificationKind",function(){return x.b}),n.d(e,"pipe",function(){return M.a}),n.d(e,"noop",function(){return E.a}),n.d(e,"identity",function(){return C.a}),n.d(e,"isObservable",function(){return A.a}),n.d(e,"ArgumentOutOfRangeError",function(){return T.a}),n.d(e,"EmptyError",function(){return O.a}),n.d(e,"ObjectUnsubscribedError",function(){return _.a}),n.d(e,"UnsubscriptionError",function(){return P.a}),n.d(e,"TimeoutError",function(){return I.a}),n.d(e,"bindCallback",function(){return N}),n.d(e,"bindNodeCallback",function(){return F}),n.d(e,"combineLatest",function(){return G.b}),n.d(e,"concat",function(){return H.a}),n.d(e,"defer",function(){return W.a}),n.d(e,"empty",function(){return q.b}),n.d(e,"forkJoin",function(){return K.a}),n.d(e,"from",function(){return X.a}),n.d(e,"fromEvent",function(){return Y.a}),n.d(e,"fromEventPattern",function(){return J}),n.d(e,"generate",function(){return Q}),n.d(e,"iif",function(){return tt}),n.d(e,"interval",function(){return nt}),n.d(e,"merge",function(){return rt.a}),n.d(e,"never",function(){return at}),n.d(e,"of",function(){return st.a}),n.d(e,"onErrorResumeNext",function(){return ct}),n.d(e,"pairs",function(){return lt}),n.d(e,"partition",function(){return ft}),n.d(e,"race",function(){return gt.a}),n.d(e,"range",function(){return mt}),n.d(e,"throwError",function(){return yt.a}),n.d(e,"timer",function(){return bt.a}),n.d(e,"using",function(){return wt}),n.d(e,"zip",function(){return St.b}),n.d(e,"scheduled",function(){return xt.a}),n.d(e,"EMPTY",function(){return q.a}),n.d(e,"NEVER",function(){return ot}),n.d(e,"config",function(){return Mt.a});var i=n(12),r=n(332),o=n(444),a=n(126),s=n(32),c=n(373),l=n(305),u=n(186),d=n(331),p=n(119),h=n(277),f=n(335),g=n(1),m=n(151),v=function(t){function e(e,n){void 0===e&&(e=y),void 0===n&&(n=Number.POSITIVE_INFINITY);var i=t.call(this,e,function(){return i.frame})||this;return i.maxFrames=n,i.frame=0,i.index=-1,i}return g.c(e,t),e.prototype.flush=function(){for(var t,e,n=this.actions,i=this.maxFrames;(e=n[0])&&e.delay<=i&&(n.shift(),this.frame=e.delay,!(t=e.execute(e.state,e.delay))););if(t){for(;e=n.shift();)e.unsubscribe();throw t}},e.frameTimeFactor=10,e}(n(150).a),y=function(t){function e(e,n,i){void 0===i&&(i=e.index+=1);var r=t.call(this,e,n)||this;return r.scheduler=e,r.work=n,r.index=i,r.active=!0,r.index=e.index=i,r}return g.c(e,t),e.prototype.schedule=function(n,i){if(void 0===i&&(i=0),!this.id)return t.prototype.schedule.call(this,n,i);this.active=!1;var r=new e(this.scheduler,this.work);return this.add(r),r.schedule(n,i)},e.prototype.requestAsyncId=function(t,n,i){void 0===i&&(i=0),this.delay=t.frame+i;var r=t.actions;return r.push(this),r.sort(e.sortActions),!0},e.prototype.recycleAsyncId=function(t,e,n){void 0===n&&(n=0)},e.prototype._execute=function(e,n){if(!0===this.active)return t.prototype._execute.call(this,e,n)},e.sortActions=function(t,e){return t.delay===e.delay?t.index===e.index?0:t.index>e.index?1:-1:t.delay>e.delay?1:-1},e}(m.a),b=n(278),w=n(33),S=n(26),x=n(206),M=n(282),E=n(117),C=n(156),A=n(338),T=n(280),O=n(441),_=n(127),P=n(208),I=n(449),k=n(62),D=n(225),R=n(56),L=n(77);function N(t,e,n){if(e){if(!Object(L.a)(e))return function(){for(var i=[],r=0;r<arguments.length;r++)i[r]=arguments[r];return N(t,n).apply(void 0,i).pipe(Object(k.a)(function(t){return Object(R.a)(t)?e.apply(void 0,t):e(t)}))};n=e}return function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];var o,a=this,s={context:a,subject:o,callbackFunc:t,scheduler:n};return new i.a(function(i){if(n){var r={args:e,subscriber:i,params:s};return n.schedule(j,0,r)}if(!o){o=new u.a;try{t.apply(a,e.concat([function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];o.next(t.length<=1?t[0]:t),o.complete()}]))}catch(t){Object(D.a)(o)?o.error(t):console.warn(t)}}return o.subscribe(i)})}}function j(t){var e=this,n=t.args,i=t.subscriber,r=t.params,o=r.callbackFunc,a=r.context,s=r.scheduler,c=r.subject;if(!c){c=r.subject=new u.a;try{o.apply(a,n.concat([function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var i=t.length<=1?t[0]:t;e.add(s.schedule(V,0,{value:i,subject:c}))}]))}catch(t){c.error(t)}}this.add(c.subscribe(i))}function V(t){var e=t.value,n=t.subject;n.next(e),n.complete()}function F(t,e,n){if(e){if(!Object(L.a)(e))return function(){for(var i=[],r=0;r<arguments.length;r++)i[r]=arguments[r];return F(t,n).apply(void 0,i).pipe(Object(k.a)(function(t){return Object(R.a)(t)?e.apply(void 0,t):e(t)}))};n=e}return function(){for(var e=[],r=0;r<arguments.length;r++)e[r]=arguments[r];var o={subject:void 0,args:e,callbackFunc:t,scheduler:n,context:this};return new i.a(function(i){var r=o.context,a=o.subject;if(n)return n.schedule(U,0,{params:o,subscriber:i,context:r});if(!a){a=o.subject=new u.a;try{t.apply(r,e.concat([function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var n=t.shift();n?a.error(n):(a.next(t.length<=1?t[0]:t),a.complete())}]))}catch(t){Object(D.a)(a)?a.error(t):console.warn(t)}}return a.subscribe(i)})}}function U(t){var e=this,n=t.params,i=t.subscriber,r=t.context,o=n.callbackFunc,a=n.args,s=n.scheduler,c=n.subject;if(!c){c=n.subject=new u.a;try{o.apply(r,a.concat([function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var i=t.shift();if(i)e.add(s.schedule(z,0,{err:i,subject:c}));else{var r=t.length<=1?t[0]:t;e.add(s.schedule(B,0,{value:r,subject:c}))}}]))}catch(t){this.add(s.schedule(z,0,{err:t,subject:c}))}}this.add(c.subscribe(i))}function B(t){var e=t.value,n=t.subject;n.next(e),n.complete()}function z(t){var e=t.err;t.subject.error(e)}var G=n(346),H=n(250),W=n(274),q=n(71),K=n(228),X=n(76),Y=n(229),Z=n(142);function J(t,e,n){return n?J(t,e).pipe(Object(k.a)(function(t){return Object(R.a)(t)?n.apply(void 0,t):n(t)})):new i.a(function(n){var i,r=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return n.next(1===t.length?t[0]:t)};try{i=t(r)}catch(t){return void n.error(t)}if(Object(Z.a)(e))return function(){return e(r,i)}})}function Q(t,e,n,r,o){var a,s;if(1==arguments.length){var c=t;s=c.initialState,e=c.condition,n=c.iterate,a=c.resultSelector||C.a,o=c.scheduler}else void 0===r||Object(L.a)(r)?(s=t,a=C.a,o=r):(s=t,a=r);return new i.a(function(t){var i=s;if(o)return o.schedule($,0,{subscriber:t,iterate:n,condition:e,resultSelector:a,state:i});for(;;){if(e){var r=void 0;try{r=e(i)}catch(e){return void t.error(e)}if(!r){t.complete();break}}var c=void 0;try{c=a(i)}catch(e){return void t.error(e)}if(t.next(c),t.closed)break;try{i=n(i)}catch(e){return void t.error(e)}}})}function $(t){var e=t.subscriber,n=t.condition;if(!e.closed){if(t.needIterate)try{t.state=t.iterate(t.state)}catch(t){return void e.error(t)}else t.needIterate=!0;if(n){var i=void 0;try{i=n(t.state)}catch(t){return void e.error(t)}if(!i)return void e.complete();if(e.closed)return}var r;try{r=t.resultSelector(t.state)}catch(t){return void e.error(t)}if(!e.closed&&(e.next(r),!e.closed))return this.schedule(t)}}function tt(t,e,n){return void 0===e&&(e=q.a),void 0===n&&(n=q.a),Object(W.a)(function(){return t()?e:n})}var et=n(275);function nt(t,e){return void 0===t&&(t=0),void 0===e&&(e=p.a),(!Object(et.a)(t)||t<0)&&(t=0),e&&"function"==typeof e.schedule||(e=p.a),new i.a(function(n){return n.add(e.schedule(it,t,{subscriber:n,counter:0,period:t})),n})}function it(t){var e=t.subscriber,n=t.counter,i=t.period;e.next(n),this.schedule({subscriber:e,counter:n+1,period:i},i)}var rt=n(279),ot=new i.a(E.a);function at(){return ot}var st=n(93);function ct(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];if(0===t.length)return q.a;var n=t[0],r=t.slice(1);return 1===t.length&&Object(R.a)(n)?ct.apply(void 0,n):new i.a(function(t){var e=function(){return t.add(ct.apply(void 0,r).subscribe(t))};return Object(X.a)(n).subscribe({next:function(e){t.next(e)},error:e,complete:e})})}function lt(t,e){return e?new i.a(function(n){var i=Object.keys(t),r=new w.a;return r.add(e.schedule(ut,0,{keys:i,index:0,subscriber:n,subscription:r,obj:t})),r}):new i.a(function(e){for(var n=Object.keys(t),i=0;i<n.length&&!e.closed;i++){var r=n[i];t.hasOwnProperty(r)&&e.next([r,t[r]])}e.complete()})}function ut(t){var e=t.keys,n=t.index,i=t.subscriber,r=t.subscription,o=t.obj;if(!i.closed)if(n<e.length){var a=e[n];i.next([a,o[a]]),r.add(this.schedule({keys:e,index:n+1,subscriber:i,subscription:r,obj:o}))}else i.complete()}var dt=n(514),pt=n(209),ht=n(165);function ft(t,e,n){return[Object(ht.a)(e,n)(new i.a(Object(pt.a)(t))),Object(ht.a)(Object(dt.a)(e,n))(new i.a(Object(pt.a)(t)))]}var gt=n(451);function mt(t,e,n){return void 0===t&&(t=0),new i.a(function(i){void 0===e&&(e=t,t=0);var r=0,o=t;if(n)return n.schedule(vt,0,{index:r,count:e,start:t,subscriber:i});for(;;){if(r++>=e){i.complete();break}if(i.next(o++),i.closed)break}})}function vt(t){var e=t.start,n=t.index,i=t.count,r=t.subscriber;n>=i?r.complete():(r.next(e),r.closed||(t.index=n+1,t.start=e+1,this.schedule(t)))}var yt=n(306),bt=n(333);function wt(t,e){return new i.a(function(n){var i,r;try{i=t()}catch(t){return void n.error(t)}try{r=e(i)}catch(t){return void n.error(t)}var o=(r?Object(X.a)(r):q.a).subscribe(n);return function(){o.unsubscribe(),i&&i.unsubscribe()}})}var St=n(445),xt=n(334),Mt=n(84)},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(7),o=(n(259),n(153)),a=n(6),s=n(0),c=n(0),l=n(259),u=function(){function t(t){var e=this;this.UnitService=t,this.scopedConvert=function(t,n,i,r,o){return void 0===i&&(i=2),void 0===r&&(r=void 0),void 0===o&&(o=void 0),e.convert(t,n,i,r,o)}}return t.prototype.convert=function(e,n,i,r,o,a){if(void 0===i&&(i=2),void 0===r&&(r=void 0),void 0===o&&(o=void 0),void 0===a&&(a=!1),!e)return"";var s=t.getMostRelevantMeasurement(n,r||this.UnitService.currentSystem,e,o);return t.getFormattedMeasurementString(s[0],s[1],i,a)},t.getFormattedMeasurementString=function(t,e,n,i){return i&&e.name===o.UnitsOfMeasurement.FOOT[0]?this.formatImperialDistance(t*this.FEET_TO_INCHES_FACTOR):i&&e.name===o.UnitsOfMeasurement.INCH[0]?this.formatImperialDistance(t):t.toLocaleString(void 0,{minimumFractionDigits:n,maximumFractionDigits:n})+" "+e.symbol},t.formatImperialDistance=function(e){var n=Math.round(8*e),i=Math.floor(n/8),r=Math.floor(i/t.FEET_TO_INCHES_FACTOR),o=i-r*t.FEET_TO_INCHES_FACTOR,a=this.EIGHTHS_SYMBOLS[n%8],s=0===o&&""!==a?"":o;return""!==s&&""!==a&&(a=" "+a),0!==r?r+"' "+s+a+'"':""+s+a+'"'},t.getMostRelevantMeasurement=function(t,e,n,i){void 0===i&&(i=0);var a=r.values(o.UnitsOfMeasurement.getUnitsOfMeasurementByDomainAndSystem(t,e)),s=r.filter(a,function(t){return t.factor>=i}),c=r.reduce(s,function(t,e){return e.fromBase(n)<t.fromBase(n)&&e.fromBase(n)>=1?e:t});return c?[c.fromBase(n),c]:void 0},t.FEET_TO_INCHES_FACTOR=12,t.EIGHTHS_SYMBOLS=["","⅛","¼","⅜","½","⅝","¾","⅞"],t.ɵfac=function(e){return new(e||t)(c.ɵɵinject(l.UnitService))},t.ɵprov=c.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.UoMService=u,c.ɵsetClassMetadata(u,[{type:s.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:l.UnitService}]},null),i.module("IVWebApp").service("UoMService",a.downgradeInjectable(u))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(16),o=n(6),a=n(0),s=n(347),c=n(0),l=function(){function t(){this.isMenuHidden=!0,this.isCollapsed=!1,this.title=void 0,this.template=void 0,this.switchToNormal=new r.Signal}return t.prototype.openMenu=function(t,e,n,i){return void 0===i&&(i=!1),!!this.isMenuHidden&&(this.title=t,this.template=e,this.afterClose=n&&n.afterClose?function(){return n.afterClose()}:void 0,this.beforeClose=n&&n.beforeClose?function(){return n.beforeClose()}:void 0,this.isCloseDisabled=n&&n.isCloseDisabled?function(){return n.isCloseDisabled()}:void 0,this.isMenuHidden=void 0===e,this.hasCollapsedTemplate=i,(new s.ToolbarVisibilityChangedEvent).visible(!0).withToolbar(t).submit(),!0)},t.prototype.closeMenu=function(t){var e=this;void 0===t&&(t=!0);var n=Promise.resolve();return void 0!==this.beforeClose&&(n=this.beforeClose()),n.then(function(){e.isMenuHidden=!0,e.afterClose&&e.afterClose(),t&&e.switchToNormal.emit()})},t.ɵfac=function(e){return new(e||t)},t.ɵprov=c.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.ToolboxMenuService=l,c.ɵsetClassMetadata(l,[{type:a.Injectable,args:[{providedIn:"root"}]}],null,null),i.module("IVWebApp").service("ToolboxMenuService",o.downgradeInjectable(l))},function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},function(t,e,n){var i=n(42);t.exports=function(t,e){if(!i(t))return t;var n,r;if(e&&"function"==typeof(n=t.toString)&&!i(r=n.call(t)))return r;if("function"==typeof(n=t.valueOf)&&!i(r=n.call(t)))return r;if(!e&&"function"==typeof(n=t.toString)&&!i(r=n.call(t)))return r;throw TypeError("Can't convert object to primitive value")}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(7),r=function(){function t(t,e,n,i,r){var o=this;this.many=t,this.manyField=e,this.manyFieldId=n,this.one=i,this.cascadeDelete=r,t.entityCreated.connect(function(t){return o.manyEntityCreated(t)}),i.entityCreated.connect(function(t){return o.oneEntityCreated(t)}),i.entityRemoved.connect(function(t,e){return o.oneEntityRemoved(t,e)})}return t.prototype.manyEntityCreated=function(t){for(var e=0,n=t;e<n.length;e++){var i=n[e];i[this.manyField]=this.one.dataMap[i[this.manyFieldId]]}},t.prototype.oneEntityCreated=function(t){for(var e=0,n=t;e<n.length;e++)for(var i=n[e],r=0,o=this.many.data;r<o.length;r++){var a=o[r];a[this.manyFieldId]===i.id&&(a[this.manyField]=i)}},t.prototype.oneEntityRemoved=function(t,e){for(var n,i=[],r=0,o=this.many.data;r<o.length;r++){var a=o[r];a[this.manyField]&&a[this.manyField].id===t.id&&(!e&&this.cascadeDelete?i.push(a):a[this.manyField]=void 0)}(n=this.many).removeLocal.apply(n,i)},t}(),o=function(){function t(t,e,n,i){var r=this;this.one=t,this.oneField=e,this.many=n,this.manyFieldId=i,t.entityCreated.connect(function(t){return r.oneEntityCreated(t)}),n.entityCreated.connect(function(t){return r.manyEntityCreated(t)}),n.entityRemoved.connect(function(t,e){return r.manyEntityRemoved(t,e)})}return t.prototype.oneEntityCreated=function(t){for(var e=0,n=t;e<n.length;e++){var i=n[e];i[this.oneField+"_set"]&&0!==i[this.oneField].length||(i[this.oneField+"_set"]={});for(var r=0,o=this.many.data;r<o.length;r++){var a=o[r];a[this.manyFieldId]!==i.id||a.id in i[this.oneField+"_set"]||(i[this.oneField].push(a),i[this.oneField+"_set"][a.id]=!0)}}},t.prototype.manyEntityCreated=function(t){for(var e=0,n=t;e<n.length;e++){var i=n[e],r=this.one.dataMap[i[this.manyFieldId]];r&&(r[this.oneField+"_set"]&&0!==r[this.oneField].length||(r[this.oneField+"_set"]={}),i.id in r[this.oneField+"_set"]||(r[this.oneField].push(i),r[this.oneField+"_set"][i.id]=!0))}},t.prototype.manyEntityRemoved=function(t,e){for(var n=0,r=this.one.data;n<r.length;n++){var o=r[n];if(o.id===t[this.manyFieldId]){var a=i.findIndex(o[this.oneField],["id",t.id]);a>=0&&(o[this.oneField].splice(a,1),delete o[this.oneField+"_set"][t.id]);break}}},t}(),a=function(){function t(t,e,n,i){var r=this;this.targetRepository=t,this.targetField=e,this.sourceIdsField=n,this.sourceRepository=i,t.entityCreated.connect(function(t){return r.updateMapping(t)}),i.entityCreated.connect(function(){return r.updateMapping()}),i.entityRemoved.connect(function(t){return r.removeSourceEntity(t)})}return t.prototype.updateMapping=function(t){if(void 0===t&&(t=i.values(this.targetRepository.dataMap)),0!==this.sourceRepository.data.length)for(var e=0,n=t;e<n.length;e++){var r=n[e];this.prepareTargetArray(r),this.assignSourceEntitiesFromIds(r)}},t.prototype.prepareTargetArray=function(t){void 0===t[this.targetField]&&(t[this.targetField]=[]),t[this.targetField].length=0},t.prototype.assignSourceEntitiesFromIds=function(t){for(var e=0,n=t[this.sourceIdsField];e<n.length;e++){var i=n[e],r=this.sourceRepository.dataMap[i];void 0!==r?t[this.targetField].push(r):console.warn("Can not find source entity for",i)}},t.prototype.removeSourceEntity=function(t){for(var e=0,n=i.values(this.targetRepository.dataMap);e<n.length;e++){var r=n[e];i.remove(r[this.targetField],function(e){return t===e}),i.remove(r[this.sourceIdsField],function(e){return t.id===e})}},t}(),s=function(){function t(){}return t.manyToOne=function(t,e,n,i,o){return void 0===o&&(o=!1),new r(t,e,n,i,o)},t.oneToMany=function(t,e,n,i){return new o(t,e,n,i)},t.manyToMany=function(t,e,n,i){return new a(t,e,n,i)},t}();e.EntityRelationMapper=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(523),a=function(){function t(){}return t.prototype.build=function(){return this.filter},t.prototype.offset=function(t){if(this.filter.offset)throw new Error("offset method can only be called once");return this.filter.offset=t,this.getInstance()},t.prototype.step=function(t){if(this.filter.step)throw new Error("step method can only be called once");return this.filter.step=t,this.getInstance()},t.prototype.limit=function(t){if(this.filter.limit)throw new Error("limit method can only be called once");return this.filter.limit=t,this.getInstance()},t.prototype.sortBy=function(t){if(this.filter.sortBy)throw new Error("sortBy method can only be called once");return this.filter.sortBy=t,this.getInstance()},t.prototype.sortOrder=function(t){if(this.filter.sortOrder)throw new Error("sortOrder method can only be called once");return this.filter.sortOrder=t,this.getInstance()},t.prototype.siteModel=function(t){var e;if(!t)return this.getInstance();var n=t.map(function(t){return t?t.id:""});return this.filter.siteModelEntityIds?(e=this.filter.siteModelEntityIds).push.apply(e,n):this.filter.siteModelEntityIds=n,this.getInstance()},t.prototype.boundingBox=function(e,n,i,r){if(this.filter.lonMin)throw new Error("boundingBox method can only be called once");return this.filter.lonMin=parseFloat(e.toFixed(t.FRACTION_DIGITS)),this.filter.lonMax=parseFloat(i.toFixed(t.FRACTION_DIGITS)),this.filter.latMin=parseFloat(n.toFixed(t.FRACTION_DIGITS)),this.filter.latMax=parseFloat(r.toFixed(t.FRACTION_DIGITS)),this.getInstance()},t.prototype.dataset=function(t){if(this.filter.datasetIds)throw new Error("dataset method can only be called once");return t&&(this.filter.datasetIds=t.map(function(t){return t.id})),this.getInstance()},t.prototype.location=function(e){if(this.filter.lon)throw new Error("location method can only be called once");var n=e.toArray();return this.filter.lon=parseFloat(n[0].toFixed(t.FRACTION_DIGITS)),this.filter.lat=parseFloat(n[1].toFixed(t.FRACTION_DIGITS)),n.length>2&&(this.filter.z=parseFloat(n[2].toFixed(t.FRACTION_DIGITS))),this.getInstance()},t.prototype.radius=function(t){if(this.filter.radius)throw new Error("radius method can only be called once");return this.filter.radius=t,this.getInstance()},t.FRACTION_DIGITS=15,t}();e.RestFilterBuilder=a;var s=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.filter=new o.PoiRestFilter,e}return r(e,t),e.prototype.poiType=function(t){if(this.filter.poiTypeIds)throw new Error("poiType method can only be called once");return t&&(this.filter.poiTypeIds=t.map(function(t){return t.id})),this.getInstance()},e.prototype.poiTypeGroup=function(t){if(this.filter.poiTypeGroupIds)throw new Error("poiTypeGroup method can only be called once");return t&&(this.filter.poiTypeGroupIds=t.map(function(t){return t.id})),this.getInstance()},e.prototype.getInstance=function(){return this},e}(a);e.PoiRestFilterBuilder=s;var c=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.filter=new o.ImageRestFilter,e}return r(e,t),e.prototype.hidden=function(t){if(this.filter.hidden)throw new Error("hidden method can only be called once");return this.filter.hidden=t,this.getInstance()},e.prototype.spacing=function(t){if(this.filter.spacing)throw new Error("spacing method can only be called once");return this.filter.spacing=t,this.getInstance()},e.prototype.getInstance=function(){return this},e}(a);e.ImageRestFilterBuilder=c},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__assign||function(){return(o=Object.assign||function(t){for(var e,n=1,i=arguments.length;n<i;n++)for(var r in e=arguments[n])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)};Object.defineProperty(e,"__esModule",{value:!0});var a=n(4),s=n(257),c=n(67),l=n(157),u=n(386),d=n(101),p=n(1067),h=n(311),f=n(210),g=n(1070),m=n(539),v=n(312),y=n(8),b=n(387),w=function(t){function e(){var n=t.call(this)||this;return n.padding={top:0,left:e.PLANE_SPRITE_SPACING+e.ICON_SIZE_PX+e.PLANE_SPRITE_SPACING,right:e.PLANE_SPRITE_SPACING,bottom:0},n.noIconLabelPadding=o(o({},n.padding),{left:e.PLANE_SPRITE_SPACING}),n.deltaElementsFontColor="rgba(0,0,0,1)",n.freshlyCreated=void 0,n.createIcon(),n.saveButtonTexture=d.getTextureLoader().load(e.saveIconPath,function(){}),n.deleteButtonTexture=d.getTextureLoader().load(e.deleteIconPath,function(){}),n.hideButtonTexture=d.getTextureLoader().load(e.hideIconPath,function(){}),n.getIcon().onload=function(){var t;return(null===(t=n.textSprite)||void 0===t?void 0:t.spriteObject)&&n.textSprite.updateSpriteTexture()},n}return r(e,t),e.createLine=function(t,n){var i=c.createMeasuredLine(t,n,1),r=l.createMeshLine(i,e.LINE_MATERIAL);return r.renderOrder=h.RenderOrder.DEFAULT,r.userData.is2D=!0,r.name="line",r.onBeforeRender=v.createOnBeforeRenderFunc(),r},e.createDottedLine=function(t,n,i){void 0===i&&(i=e.dottedLineMaterial);var r=c.createMeasuredLine(t,n,1),o=l.createMeshLine(r,i);return o.renderOrder=h.RenderOrder.DEFAULT,o.name="dotted line",o},e.createCircle=function(t,e,n){void 0===t&&(t=void 0),void 0===e&&(e=this.CIRCLE_MATERIAL),void 0===n&&(n=this.innerCircleGeometry);var i=new a.Mesh(n,e);return t&&i.position.copy(t),i.renderOrder=h.RenderOrder.DEFAULT,i.userData.is2D=!0,i.name="circle",i.onBeforeRender=v.createOnBeforeRenderFunc(),i},e.createCompoundCircle=function(t){var n=e.createCircle(void 0,e.COMPOUND_CIRCLE_MATERIAL,e.clickableCircleGeometry);n.name="compound circle";var i=e.createCircle(t);return i.add(n),i.renderOrder=h.RenderOrder.DEFAULT,i},e.createSpriteIcon=function(t){var e=new Image,n=d.getTextureLoader().crossOrigin;return n&&(e.crossOrigin=n),e.src=f.makeUrlAbsolute(t),e.onerror=function(){console.error("Failed to load the measurement sprite icon.")},e},e.prototype.markNotFresh=function(){this.freshlyCreated=!1},e.prototype.dragObjectStart=function(t){this.freshlyCreated=!1,this.draggedPoint={object:t,initialPosition:t.position.clone()}},e.prototype.dragObjectEnd=function(t){this.draggedPoint=void 0},e.prototype.dragObjectCancel=function(){this.draggedPoint&&(this.dragObject(this.draggedPoint.object,this.draggedPoint.initialPosition),this.draggedPoint=void 0)},e.prototype.getPointOfView=function(){return this.pov},e.prototype.setPointOfView=function(t){this.pov=t},e.prototype.updateMeshScaleForViewport=function(t){this.updateTextSpriteForViewport(t),t.camera instanceof a.OrthographicCamera?(e.LINE_MATERIAL.lineWidth=e.ORTHO_LINE_WIDTH,e.LINE_MATERIAL.needsUpdate=!0,e.LINE_HIGHLIGHT_MATERIAL.lineWidth=e.ORTHO_LINE_WIDTH,e.LINE_HIGHLIGHT_MATERIAL.needsUpdate=!0,e.dottedLineMaterial.lineWidth=e.ORTHO_LINE_WIDTH,e.dottedLineMaterial.needsUpdate=!0):(e.LINE_MATERIAL.lineWidth=e.PERSPECTIVE_LINE_WIDTH,e.LINE_MATERIAL.needsUpdate=!0,e.LINE_HIGHLIGHT_MATERIAL.lineWidth=e.PERSPECTIVE_LINE_WIDTH,e.LINE_HIGHLIGHT_MATERIAL.needsUpdate=!0,e.dottedLineMaterial.lineWidth=e.PERSPECTIVE_LINE_WIDTH,e.dottedLineMaterial.needsUpdate=!0)},e.prototype.setUpMouseListeners=function(t){var e=this;if(!(this.onHover&&this.onPointHover&&this.onPointDragStart&&this.onPointDrag&&this.onPointDragEnd))throw new Error("Corresponding callback haven't been set!");this.getHoverableObjects().forEach(function(t){t.onMouseOver=e.onHover,t.onMouseOut=e.onHover}),this.getPoints().forEach(function(n){n.onMouseOver=function(t,i){n.renderOrder=h.RenderOrder.HIGHLIGHT,e.isInteractionWithPointsAllowed(i)&&(document.body.style.cursor=b.MouseCursorStyle.POINTER),e.flipMeshMaterialsRecursively(n,!0)},n.onMouseOut=function(){n.renderOrder=h.RenderOrder.DEFAULT,document.body.style.cursor=b.MouseCursorStyle.DEFAULT,e.flipMeshMaterialsRecursively(n,!1)},n.onDragStart=function(i,r){return e.setHovered(!1),e.onPointDragStart(t,n,i,r)},n.onDrag=function(i,r){e.onPointDrag(t,n,i,r)},n.onDragEnd=function(){e.setHovered(!1),e.onPointDragEnd(t,n),e.setUpMouseListeners(t)}}),this.textSprite.spriteObject.onDoubleClick=function(){return!0},this.textSprite.spriteObject.onMouseOver=function(t,n){e.labelHoverViewport=n,e.onHover(),document.body.style.cursor=b.MouseCursorStyle.POINTER},this.textSprite.spriteObject.onMouseOut=function(){e.labelHoverViewport=void 0,e.textSprite&&e.textSprite.removeButtons(),e.onHover(),document.body.style.cursor=b.MouseCursorStyle.DEFAULT}},e.prototype.cleanUpMouseListeners=function(){this.children.forEach(function(t){t.onMouseOver=void 0,t.onMouseOut=void 0,t.onClick=void 0})},e.prototype.setUpPointsMouseListeners=function(){var t=this;if(!this.onPointHover||!this.onPointClick)throw new Error("Corresponding callbacks haven't been set!");this.getPoints().forEach(function(n){n.onMouseOver=function(){n.material=e.CIRCLE_HIGHLIGHT_MATERIAL,n.renderOrder=h.RenderOrder.HIGHLIGHT,t.onPointHover(!0,n)},n.onMouseOut=function(){n.material=e.CIRCLE_MATERIAL,n.renderOrder=h.RenderOrder.DEFAULT,t.onPointHover(!1)},n.onClick=function(e){return n.renderOrder=h.RenderOrder.DEFAULT,t.onPointClick(n.position,e),!0}})},e.prototype.setHovered=function(t){var n=this;this.children.forEach(function(e){e.renderOrder=t?h.RenderOrder.HIGHLIGHT:h.RenderOrder.DEFAULT,n.flipMeshMaterialsRecursively(e,t)}),this.textSprite.backgroundProperties=t?e.backgroundHighlightProperties:e.backgroundProperties,this.textSprite.spriteObject.renderOrder=t?h.RenderOrder.ON_TOP:h.RenderOrder.ABOVE,this.textSprite.updateSpriteTexture(),this.updateTextSpriteMaterial(),this.textSprite.spriteObject.material.disableDepthTesting=t},e.prototype.setMouseEventCallbacks=function(t,e,n,i,r,o){this.onPointHover=t,this.onPointClick=e,this.onPointDragStart=n,this.onPointDrag=i,this.onPointDragEnd=r,this.onHover=o},e.prototype.createTextSprite=function(t,n,i,r,s,c,l,d){void 0===r&&(r=e.MEASUREMENT_MATERIAL_TRANSPARENT_COLOR),void 0===s&&(s=u.MEASUREMENT_MATERIAL_COLOR_HEX),void 0===c&&(c=e.fontProperties.color),void 0===l&&(l=this.padding),void 0===d&&(d=h.RenderOrder.ABOVE);var f=new p.EditablePlaneSprite(n),g=t;f.fontProperties=o(o({},e.fontProperties),{color:c}),f.backgroundProperties={color:r},f.borderProperties=o(o({},e.borderProperties),{color:s}),f.padding=l,f.iconProperties=e.iconParameters,f.buttonWidth=e.ICON_SIZE_PX,f.buttonSpacing=e.PLANE_SPRITE_SPACING,f.fontSizeFactor=1.4;var m=f.createSpriteObject(),v=m.material,y=f.visibleSize.x/f.visibleSize.y;m.scale.set(1*y,1,1);var b=new a.Vector3(g.x,g.y,g.z);return m.position.copy(b),v.opacity=1,m.renderOrder=d,m.userData.is2D=!0,i&&f.setSpriteIconTextureFromImage(i),f},e.prototype.updateTextSpriteMaterial=function(){var t=this.textSprite.spriteObject;if(t){var n=!1;t.material instanceof m.MeasurementMaterial&&(n=t.material.disableDepthTesting);var i=new m.MeasurementMaterial({color:u.MEASUREMENT_MATERIAL_COLOR,obscuredColor:u.OBSCURED_MEASUREMENT_MATERIAL_COLOR,opacity:1,obscuredOpacity:e.OBSCURED_MEASUREMENT_MATERIAL_OPACITY,occlusionDistance:e.LABEL_OCCLUSION_DISTANCE,clipDistance:e.CLIP_DISTANCE,map:t.material.map});i.disableDepthTesting=n,t.material=i,t.onBeforeRender=v.createOnBeforeRenderFunc()}},e.prototype.removeTextSprite=function(){this.textSprite&&this.textSprite.removeSpriteObject()},e.prototype.removeMeshes=function(){for(var t=this,e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];e.forEach(function(e){e&&(t.remove(e),e.geometry.dispose())})},e.prototype.removeLabels=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];t&&t.forEach(function(t){t&&t.removeSpriteObject()})},e.prototype.isInteractionWithPointsAllowed=function(t){return!0},e.prototype.updateTextSpriteForViewport=function(t){var e=this;if(this.textSprite){if(this.labelHoverViewport&&this.labelHoverViewport.name===t.name){var n=[{iconTexture:this.hideButtonTexture,onClick:function(){return e.hidingInProgress||(e.hidingInProgress=!0,e.onHideButtonClicked().then(function(){return e.hidingInProgress=!1}).catch(y.handleWarning)),!0}},{iconTexture:this.deleteButtonTexture,onClick:function(){return e.deletingInProgress||(e.deletingInProgress=!0,e.onDeleteButtonClicked().then(function(){return e.deletingInProgress=!1}).catch(y.handleWarning)),!0}}];this.canUserSaveMeasurements()&&!this.measurement.isSaved()&&n.push({iconTexture:this.saveButtonTexture,onClick:function(){return e.savingInProgress||(e.savingInProgress=!0,e.onSaveButtonClicked().then(function(){return e.savingInProgress=!1}).catch(y.handleWarning)),!0}}),this.textSprite.setButtons(n)}else this.labelHoverViewport&&this.labelHoverViewport.name!==t.name&&this.textSprite.removeButtons();this.textSprite.updateSpriteObject(t)}},e.prototype.flipMeshMaterialsRecursively=function(t,n){var i=this;n&&t.material===e.CIRCLE_MATERIAL?t.material=e.CIRCLE_HIGHLIGHT_MATERIAL:n||t.material!==e.CIRCLE_HIGHLIGHT_MATERIAL?n&&t.material===e.LINE_MATERIAL?t.material=e.LINE_HIGHLIGHT_MATERIAL:n||t.material!==e.LINE_HIGHLIGHT_MATERIAL?t.children.forEach(function(t){return i.flipMeshMaterialsRecursively(t,n)}):t.material=e.LINE_MATERIAL:t.material=e.CIRCLE_MATERIAL},e.ICON_SIZE_PX=20,e.fontProperties={face:"Open Sans",size:20,modifier:"bold",color:"rgba(255,255,255,1)",strokeWidth:0,strokeColor:"rgba(0,0,0,1)"},e.COMPOUND_CIRCLE_MATERIAL=new a.MeshBasicMaterial({depthTest:!1,depthWrite:!1,transparent:!0,opacity:0}),e.dottedLineMaterial=new s.MeshLineMaterial({color:u.GUIDE_LINE_COLOR,transparent:!0,depthTest:!1,lineWidth:.01,opacity:1,sizeAttenuation:1,depthWrite:!1,dashArray:.05,dashOffset:0,dashRatio:.2}),e.borderProperties={width:2,color:u.MEASUREMENT_MATERIAL_COLOR_HEX,cornerRadius:0},e.OBSCURED_MEASUREMENT_MATERIAL_OPACITY=.6,e.OCCLUSION_DISTANCE=-.1,e.LABEL_OCCLUSION_DISTANCE=-1,e.CLIP_DISTANCE=-4,e.LINE_MATERIAL=new g.MeasurementLineMaterial({color:u.MEASUREMENT_MATERIAL_COLOR,transparent:!0,dashArray:.02,depthTest:!1,lineWidth:.01,opacity:1,sizeAttenuation:1,depthWrite:!1},{dashColor:u.OBSCURED_MEASUREMENT_MATERIAL_COLOR,dashOpacity:e.OBSCURED_MEASUREMENT_MATERIAL_OPACITY,occlusionDistance:e.OCCLUSION_DISTANCE,clipDistance:e.CLIP_DISTANCE}),e.CIRCLE_MATERIAL=new m.MeasurementMaterial({color:u.MEASUREMENT_MATERIAL_COLOR,obscuredColor:u.OBSCURED_MEASUREMENT_MATERIAL_COLOR,opacity:1,obscuredOpacity:e.OBSCURED_MEASUREMENT_MATERIAL_OPACITY,occlusionDistance:e.OCCLUSION_DISTANCE,clipDistance:e.CLIP_DISTANCE}),e.hideIconPath=n(1075),e.deleteIconPath=n(1076),e.saveIconPath=n(1077),e.MEASUREMENT_MATERIAL_TRANSPARENT_COLOR="rgba(51,153,200,0.6)",e.LINE_HIGHLIGHT_MATERIAL=new s.MeshLineMaterial({color:u.MEASUREMENT_HIGHLIGHT_MATERIAL_COLOR,transparent:!0,depthTest:!1,lineWidth:.01,opacity:1,sizeAttenuation:1,depthWrite:!1}),e.CIRCLE_HIGHLIGHT_MATERIAL=new a.MeshBasicMaterial({color:u.MEASUREMENT_HIGHLIGHT_MATERIAL_COLOR,depthTest:!1,depthWrite:!1,transparent:!0}),e.ORIENTATION_HEIGHT_DIFFERENCE=1,e.ORTHO_LINE_WIDTH=.002,e.PERSPECTIVE_LINE_WIDTH=.01,e.POINT_PIXEL_SIZE=10,e.PLANE_SPRITE_SPACING=6,e.iconParameters={position:new a.Vector2(e.PLANE_SPRITE_SPACING,e.PLANE_SPRITE_SPACING-1),size:new a.Vector2(e.ICON_SIZE_PX,e.ICON_SIZE_PX)},e.backgroundProperties={color:e.MEASUREMENT_MATERIAL_TRANSPARENT_COLOR},e.backgroundHighlightProperties={color:u.MEASUREMENT_HIGHLIGHT_MATERIAL_COLOR_HEX},e.VISIBLE_CIRCLE_RADIUS=.025,e.innerCircleGeometry=new a.CircleGeometry(e.VISIBLE_CIRCLE_RADIUS,32),e.CIRCLE_MARGIN_MULTIPLIER=3,e.clickableCircleGeometry=new a.CircleGeometry(e.VISIBLE_CIRCLE_RADIUS*e.CIRCLE_MARGIN_MULTIPLIER,32),e}(a.Object3D);e.MeasurementObject3D=w},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var o=n(4),a=n(7),s=n(101),c=n(319),l=n(67),u=n(20),d=function(){function t(t,e,n,i){this.globalPosition=e,this.floor=n,this.poi=i,this.views=new Set,this.IV=t.IV,this.FloorChangerService=t.FloorChangerService,this.gettextCatalog=t.gettextCatalog,this.ImageService=t.ImageService,this.PoiService=t.PoiService,this.localPosition=t.GeoTransformationService.vectorToLocal(this.globalPosition)}return t.prototype.build=function(){this.icons=this.buildIcons(),this.text=this.buildText(),this.buildMaterials()},t.prototype.render=function(t,e,n,i){if(this.views.add(t),n){var r=t.getCamera().position;!c.isPositionInSight(r,this.localPosition)||this.floor&&!this.FloorChangerService.isInCurrentFloors(this.floor)||(this.drawBottomMarker(e),this.drawVerticalDottedLine(t,e),this.drawPanoramaIcon(e))}else this.drawMapIcon(e,i)},t.prototype.selectCorrectIcon=function(e){var n=e*t.ICON_SIZE_FACTOR;return this.FloorChangerService.isInCurrentFloors(this.getFloor())?c.createIcon(this.mapMaterialActiveFloor,this.localPosition,n):c.createIcon(this.mapMaterialInactiveFloor,this.localPosition,n)},t.prototype.onBeforeRender=function(t){var e=t.getCamera().quaternion;void 0!==this.panoramaIcon&&this.panoramaIcon.quaternion.copy(e),void 0!==this.mapIcon&&this.mapIcon.quaternion.copy(e),this.scalePanoramaIcon(t)},t.prototype.moveToInstruction=function(){return i(this,void 0,void 0,function(){var e,n,i;return r(this,function(r){switch(r.label){case 0:return this.isInstructionOnPoi()?(this.PoiService.highlightPois([this.poi]),[2,this.PoiService.goToPoi(this.poi)]):(e=this.localPosition.clone(),[4,u.optionalCollect(this.ImageService.getClosestImageOnFloor(e,t.SITE_MODEL_BOUND_RADIUS),this.ImageService.getClosestImage(e))]);case 1:return(n=r.sent()).length>0?(i=t.getViewDirection(e,n[0]),[2,this.IV.moveToImage(n[0],i)]):[2,this.IV.moveToGeoLocation(e,!0,void 0,void 0,void 0,void 0,void 0)]}})})},t.getViewDirection=function(e,n){e.z+=t.SPECIAL_ICON_PANORAMA_HEIGHT;var i=e.z-n.location.z;return i=Math.min(1,i),i=Math.max(-1,i),{lon:Math.atan2(e.y-n.location.y,e.x-n.location.x),lat:Math.asin(i)}},Object.defineProperty(t.prototype,"position",{get:function(){return this.globalPosition},enumerable:!0,configurable:!0}),t.prototype.getFloor=function(){return this.floor},t.prototype.scalePanoramaIcon=function(e){if(this.panoramaIcon){var n=e.getDefaultViewport().getHeight()*t.PANORAMA_ICON_MAX_VIEWPORT_PERCENTAGE;l.setMeshScreenSize(e.getDefaultViewport(),this.panoramaIcon,n,!0)}},t.prototype.drawBottomMarker=function(t){var e=c.createIcon(this.bottomMarkerMaterial,this.localPosition);t.add(e)},t.prototype.drawVerticalDottedLine=function(t,e){this.isInstructionOnPoi()?this.connectBottomMarkerToPoiSprite(t,e):this.connectBottomMarkerToPanoramaIcon(t,e)},t.prototype.connectBottomMarkerToPanoramaIcon=function(e,n){for(var i=1;i<t.NUMBER_OF_VERTICAL_DOTS;i++){var r=c.createIcon(this.dotMaterial,this.localPosition);r.scale.setScalar(1/16),r.position.z+=.2*i,r.lookAt(e.getCamera().position),n.add(r)}},t.prototype.connectBottomMarkerToPoiSprite=function(t,e){for(var n=this.poi.location.distanceTo(this.localPosition),i=1/(Math.floor(n/.2)-1),r=0,o=a.range(i,1,i);r<o.length;r++){var s=o[r],l=this.localPosition.clone().lerp(this.poi.location,s),u=c.createIcon(this.dotMaterial,l);u.scale.setScalar(1/16),u.lookAt(t.getCamera().position),e.add(u)}},t.prototype.drawPanoramaIcon=function(e){this.isInstructionOnPoi()||(this.panoramaIcon=c.createIcon(this.panoramaMaterial,this.localPosition),this.panoramaIcon.position.z+=t.SPECIAL_ICON_PANORAMA_HEIGHT,e.add(this.panoramaIcon))},t.prototype.drawMapIcon=function(t,e){this.mapIcon=this.selectCorrectIcon(e),this.mapIcon.position.z+=.1,t.add(this.mapIcon)},t.prototype.isInstructionOnPoi=function(){return this.poi&&!this.poi.isLocationAsPoi},t.prototype.buildMaterials=function(){var t=this,e=s.getTextureLoader(),i=e.load(n(1142),function(){return t.invalidateScenes()});i.anisotropy=s.ANISOTROPIC_LEVEL,this.bottomMarkerMaterial=new o.MeshBasicMaterial({map:i,transparent:!0,depthTest:!1,opacity:1,side:o.DoubleSide}),this.dotMaterial=new o.MeshBasicMaterial({map:e.load(n(1143),function(){return t.invalidateScenes()}),transparent:!0,depthTest:!1,opacity:1}),this.mapMaterialActiveFloor=new o.MeshBasicMaterial({map:e.load(this.icons.map,function(){return t.invalidateScenes()}),transparent:!0,opacity:1}),this.mapMaterialInactiveFloor=new o.MeshBasicMaterial({map:e.load(this.icons.map,function(){return t.invalidateScenes()}),transparent:!0,opacity:1.5*c.INACTIVE_FLOOR_ICON_OPACITY}),this.panoramaMaterial=new o.MeshBasicMaterial({map:e.load(this.icons.panorama,function(){return t.invalidateScenes()}),transparent:!0,depthTest:!1,opacity:1})},t.prototype.invalidateScenes=function(){this.views.forEach(function(t){return t.invalidateScene()})},t.SITE_MODEL_BOUND_RADIUS=10,t.SPECIAL_ICON_PANORAMA_HEIGHT=1.4,t.NUMBER_OF_VERTICAL_DOTS=7,t.PANORAMA_ICON_MAX_VIEWPORT_PERCENTAGE=.25,t.ICON_SIZE_FACTOR=2,t}();e.SpecialInstruction=d},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0}),n(41);var o,a=n(2),s=(n(9),n(7)),c=(n(14),n(4)),l=n(559),u=(n(31),n(6)),d=n(0),p=(n(121),n(0)),h=n(41),f=n(31),g=n(14),m=n(9),v=n(121);!function(t){t[t.NORMAL=0]="NORMAL",t[t.MAGNIFICATION=1]="MAGNIFICATION"}(o||(o={}));var y=function(){function t(t,e,n,i,r,a,s){var c=this;this.ErrorService=t,this.DatasetRepository=e,this.GeoTransformationService=n,this.PointCloudMenuService=i,this.gettextCatalog=r,this.RestService=a,this.MagnificationService=s,this.raycastMode=o.NORMAL,this.POTREE_PICK_FAIL_TOLERANCE=10,this.errorHandler=this.ErrorService.newOnceWrapper().report().network().generic(this.gettextCatalog.getString("An error occurred when retrieving the cursor location.")).build(),this.MagnificationService.magnificationModeChanged.connect(function(t){c.raycastMode=t?o.MAGNIFICATION:o.NORMAL})}return t.prototype.getCoordinates=function(t,e,n,a){return i(this,void 0,void 0,function(){var i,s,c,l;return r(this,function(r){return this.raycastMode!==o.MAGNIFICATION||this.PointCloudMenuService.isCloudVisible()?(l=this.doDepthImagePicking(t,e))?[2,l]:[2,this.doPointCloudPicking(t,e,n,void 0,void 0,a)]:(i=this.MagnificationService.raycastingCamera,s=this.MagnificationService.magnificationViewport,(c=this.doPointCloudPicking(t,e,n,i,s,a))?(this.potreePickFailCounter=0,[2,c]):this.potreePickFailCounter<this.POTREE_PICK_FAIL_TOLERANCE?(this.potreePickFailCounter++,[2,void 0]):[2,this.doDepthImagePicking(t,e)])})})},t.prototype.doPointCloudPicking=function(t,e,n,i,r,o){var a=n?this.DatasetRepository.data:this.getDatasetsToRaycast(t.getCamera(),e);return this.potreePicker(t,e,a,i,r,o)},t.prototype.doDepthImagePicking=function(t,e){if(!this.PointCloudMenuService.isCloudVisible()&&t.getImage()){var n=t.getImage().dataset;if(n&&n.hasDepthImages)return this.depthImagePicker(t,e)}},t.prototype.checkDepthPickable=function(t){if(this.PointCloudMenuService.isCloudVisible())return!1;var e=t.getImage();return e&&e.dataset&&e.dataset.hasDepthImages},t.prototype.raycastEntitiesDepth=function(t,e){for(var n=this,i=t.getCamera(),r=t.getImage().dataset,o=[],a=function(e){o.push(s.depthImagePicker(t,e.location.clone()).then(function(t){return n.pickResultToRaycastResponse(t,e,r)}).catch(function(){}))},s=this,c=0,l=e;c<l.length;c++)a(l[c]);return Promise.all(o).then(function(t){return n.reducePickResponses(t,i.position)})},t.prototype.reducePickResponses=function(t,e){var n={};t=s.filter(t,s.identity);for(var i=s.groupBy(t,function(t){return t.customId}),r=0,o=s.keys(i);r<o.length;r++){var a=o[r];n[Number(a)]=this.getClosestPoint(i[a],e)}return n},t.prototype.pickResultToRaycastResponse=function(t,e,n){return t?{customId:e.id,position:t.position,normal:t.normal,dataset:n}:void 0},t.prototype.getDatasetsToRaycast=function(t,e){return this.lastCameraPosition&&t.position.equals(this.lastCameraPosition)||(this.lastDatasetsByCameraPosition=this.getDatasetsContainingPoint(t.position),this.lastCameraPosition=t.position.clone()),s.union(this.lastDatasetsByCameraPosition,this.getDatasetsContainingPoint(e))},t.prototype.getDatasetsContainingPoint=function(t){return s.filter(this.DatasetRepository.data,function(e){return e.withinBoundingBox(t)})},t.prototype.potreePicker=function(e,n,i,r,o,a){var s=this;if((i=i.filter(function(t){return s.checkClientSidePickable(t)})).length){for(var l=a||e.getLastMousePosition(),u=e.getViewport(l.x,l.y),d=(r=r||u.getCamera())instanceof c.PerspectiveCamera,p=[],h=0,f=i;h<f.length;h++){var g=f[h].pointCloudSceneNode,m=g.pointCloudObject;o=o||u;var v=g.getVisibleNodes(o);v&&(m.visibleNodes=v),m.material=d?m.perspectiveMaterial:m.orthographicMaterial,p.push(m)}var y=e.divContainer.getCurrentHeight(),b={pixelPosition:new c.Vector3(l.x,y-l.y,0),onBeforePickRender:t.getOnBeforePickRender(e,u)},w=new c.Ray(r.position);w.direction.copy(n).sub(r.position),w.direction.normalize();var S=p[0].Potree.pick(p,e.renderer,r,w,b);if(S){var x=i.find(function(t){return S.pointCloud===t.pointCloudSceneNode.pointCloudObject});if(x)return{position:S.position,normal:S.normal,dataset:x,datasetPosition:x.local2dataset(S.position.clone()),datasetNormal:x.local2datasetdir(S.normal.clone())};console.error("Cannot find dataset for picked point")}}},t.getOnBeforePickRender=function(t,e){var n=t.divContainer.getCurrentWidth(),i=t.divContainer.getCurrentHeight(),r=Math.floor(n*e.left),o=Math.floor(i*e.bottom),a=Math.floor(n*e.width),s=Math.floor(i*e.height);return function(t,e){e.viewport.set(r,o,a,s),e.scissor.set(r,o,a,s),e.scissorTest=!0}},t.prototype.depthImagePicker=function(t,e){t.raycaster.set(t.getCamera().position,e.sub(t.getCamera().position).normalize());for(var n=function(t){var e=t.object;return e.userData.depthImagePromise?{value:e.userData.depthImagePromise.then(function(n){var i=e.userData.image,r=new c.Vector3,o=new c.Vector3;return l.DepthImageSampler.sample(n,t,i.location,r,o)?{position:r,normal:o,dataset:i.dataset,datasetPosition:i.dataset.local2dataset(r.clone()),datasetNormal:i.dataset.local2datasetdir(o.clone())}:Promise.reject("No valid sample found")})}:"continue"},i=0,r=t.raycaster.intersectObjects(t.underlayScene.children,!0,void 0,!1);i<r.length;i++){var o=n(r[i]);if("object"==typeof o)return o.value}return Promise.reject("No panorama found")},t.prototype.checkClientSidePickable=function(t){return t.pointCloudSceneNode&&t.pointCloudSceneNode.visible&&void 0!==t.pointCloudSceneNode.pointCloudObject},t.prototype.getClosestPoint=function(t,e){var n,i=Number.POSITIVE_INFINITY;return t.forEach(function(t){t&&t.position&&e.distanceTo(t.position)<i&&(i=e.distanceTo(t.position),n=t)}),n},t.ɵfac=function(e){return new(e||t)(p.ɵɵinject(h.ErrorService),p.ɵɵinject(f.DatasetRepository),p.ɵɵinject(g.GeoTransformationService),p.ɵɵinject("PointCloudMenuService"),p.ɵɵinject("gettextCatalog"),p.ɵɵinject(m.RestService),p.ɵɵinject(v.MagnificationService))},t.ɵprov=p.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.RaycastService=y,p.ɵsetClassMetadata(y,[{type:d.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:h.ErrorService},{type:f.DatasetRepository},{type:g.GeoTransformationService},{type:void 0,decorators:[{type:d.Inject,args:["PointCloudMenuService"]}]},{type:void 0,decorators:[{type:d.Inject,args:["gettextCatalog"]}]},{type:m.RestService},{type:v.MagnificationService}]},null),a.module("IVWebApp").service("RaycastService",u.downgradeInjectable(y))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(6),o=n(0),a=n(16),s=n(4),c=(n(28),n(17),n(81)),l=n(8),u=(n(38),n(322)),d=n(261),p=n(105),h=n(55),f=(n(22),n(7)),g=n(107),m=(n(21),n(65),n(0)),v=n(28),y=n(17),b=n(38),w=n(65),S=n(22),x=n(21),M=function(){function t(t,e,n,i,r,o,s){var c=this;this.FloorChangerService=t,this.ViewService=e,this.SidebarMenuService=n,this.ViewMenuService=i,this.SiteModelRepository=r,this.PointCloudMenuService=o,this.TrackingService=s,this.onVolumeChangeEnd=new a.Signal,this.onVolumeChange=new a.Signal,this.positionAdjustmentInProgress=!1,this.FloorChangerService.onFloorChange.connect(function(t){return c.updateVolumeForFloors(t.currentFloors)}),this.onVolumeChangeEnd.connect(function(){c.updateVolumeForFloors(c.FloorChangerService.currentFloors),c.has3dVolumeBeenModified=!0})}return t.prototype.enterDownloadPointCloudMode=function(t){this.startingPosition=t;var e=this.SidebarMenuService.getItem(c.SidebarMenuItemsKey.EDITOR_MODES_DOWNLOAD_POINT_CLOUD);this.SidebarMenuService.goToItem(e).catch(l.handleWarning)},t.prototype.switchToMap=function(){this.isMapViewMode()||this.has3dVolumeBeenModified||(this.hideVolumeLayerOnMap(),this.toggleViewMode(p.SceneViewMode.Map))},t.prototype.switchToPerspective=function(){this.isMapViewMode()&&(this.showVolumeLayerOnMap(),this.has3dVolumeBeenModified=!1,this.toggleViewMode(p.SceneViewMode.Perspective))},t.prototype.toggleViewMode=function(t){var e=this,n=this.ViewService.getCurrentMainViewMode(),i=t===p.SceneViewMode.Map?this.ViewService.mainView.getVolumeClippingLayer().volume.position:void 0;this.ViewService.showSecondaryView=t===p.SceneViewMode.Perspective,this.ViewService.mainView.switchViewMode(t,!1,i).then(function(){return e.TrackingService.trackPointCloudDownloadViewModeChanged(n,t)}).catch(l.handleWarning),this.disableOptionsFromViewMenu(t)},t.prototype.isViewModeSwitchDisabled=function(){return!this.isMapViewMode()&&this.has3dVolumeBeenModified},t.prototype.isMapViewMode=function(){return this.ViewService.getCurrentMainViewMode()===p.SceneViewMode.Map},t.prototype.disableOptionsFromViewMenu=function(t){this.ViewMenuService.config.showPanoramasOptionEnabled=!1,this.ViewMenuService.config.showLocationMarkersOptionEnabled=!1,this.ViewMenuService.config.showPointCloudAutomaticActivationOptionEnabled=!1,this.ViewMenuService.config.showPointCloudOptionEnabled=t===p.SceneViewMode.Map,this.ViewMenuService.config.showSecondaryViewOptionEnabled=t===p.SceneViewMode.Perspective},t.prototype.restoreOptionsFromViewMenu=function(){this.ViewMenuService.config.showPointCloudAutomaticActivationOptionEnabled=!0,this.ViewMenuService.config.showPanoramasOptionEnabled=!0,this.ViewMenuService.config.showSecondaryViewOptionEnabled=!0,this.ViewMenuService.config.showLocationMarkersOptionEnabled=!0,this.ViewMenuService.config.showPointCloudOptionEnabled=!0},t.prototype.showVolumeLayerOnMap=function(){this.ViewService.mapView.getVolumeClippingMapLayer().visible=!0;var t=this.ViewService.mainView.getVolumeClippingLayer().volume;this.onVolumeChange.emit(t)},t.prototype.hideVolumeLayerOnMap=function(){this.ViewService.mapView.getVolumeClippingMapLayer().visible=!1},t.prototype.addCubeAndStartClippingPointCloud=function(t){var e=this,n=this.ViewService.mainView.getVolumeClippingLayer();return n.resetCube(),this.adjustVolumeToPosition(t).then(function(){n.addClipBoxToPointCloud(),n.visible=!0,e.rotateOrbitCamera()})},t.prototype.getCubeStartingPosition=function(){return this.startingPosition?this.startingPosition:this.ViewService.mainView.getCamera().position},t.prototype.resetStartingPosition=function(){this.startingPosition=void 0},t.prototype.rotateOrbitCamera=function(){this.ViewService.mainView.cameraController instanceof d.OrbitCameraController&&(this.ViewService.mainView.cameraController.orientation.azimuth=-Math.PI/4)},t.prototype.adjustVolumeToPosition=function(t){var e=this;this.positionAdjustmentInProgress=!0;var n=this.ViewService.mainView.getVolumeClippingLayer();return g.promiseFinally(this.SiteModelRepository.findWithin(t,h.SiteModelType.FLOOR).then(function(i){var r=i[0];r?e.adjustToFloorAndPosition(r,t):n.setVolumePositionAndScale(t)}),function(){return e.positionAdjustmentInProgress=!1})},t.prototype.updateVolumeForFloors=function(t){var e=this;if(t&&this.ViewService.mainView.isPointCloudModuleLoaded()&&this.ViewService.mainView.viewMode===p.SceneViewMode.Map){var n=this.ViewService.mainView.getVolumeClippingLayer();if(n.visible){var i=n.volume.position;this.SiteModelRepository.findWithin(new s.Vector2(i.x,i.y),h.SiteModelType.FLOOR).then(function(n){if(!e.positionAdjustmentInProgress){var r=f.intersectionWith(n,t)[0];r&&e.adjustToFloorAndPosition(r,i)}}).catch(l.handleWarning)}}},t.prototype.adjustToFloorAndPosition=function(t,e){var n=this.ViewService.mainView.getVolumeClippingLayer(),i=t.zMin,r=t.zMax,o=Math.abs(r-i),a=r-o/2,c=new s.Vector3(e.x,e.y,a),l=n.volume.getObjectByName(u.ClipVolume.BOX_NAME).scale,d=new s.Vector3(l.x,l.y,o);n.setVolumePositionAndScale(c,d)},t.ɵfac=function(e){return new(e||t)(m.ɵɵinject(v.FloorChangerService),m.ɵɵinject(y.ViewService),m.ɵɵinject(b.SidebarMenuService),m.ɵɵinject(w.ViewMenuService),m.ɵɵinject(S.SiteModelRepository),m.ɵɵinject("PointCloudMenuService"),m.ɵɵinject(x.TrackingService))},t.ɵprov=m.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.DownloadPointCloudService=M,m.ɵsetClassMetadata(M,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:v.FloorChangerService},{type:y.ViewService},{type:b.SidebarMenuService},{type:w.ViewMenuService},{type:S.SiteModelRepository},{type:void 0,decorators:[{type:o.Inject,args:["PointCloudMenuService"]}]},{type:x.TrackingService}]},null),i.module("IVWebApp").service("DownloadPointCloudService",r.downgradeInjectable(M))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});e.IconInfo=function(t,e,n){void 0===t&&(t=""),void 0===e&&(e=""),void 0===n&&(n=""),this.className=t,this.ligature=e,this.path=n}},function(t,e,n){"use strict";function i(t){return"function"==typeof t}n.d(e,"a",function(){return i})},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.AUTO_ACTIVATION="autoActivation",t.BRIGHTNESS="brightness",t.HUE_OFFSET="hueOffset",t.HUE_SCALE="hueScale",t.MAX_DEPTH="maxDepth",t.MAX_DIST="maxDist",t.OPACITY="opacity",t.SHOW_POINT_CLOUD="showPointCloud",t.SHOW_PANOS_IN_PERSPECTIVE="showPanosInPerspective",t.Z_BUFFERING="zBuffering"}(e.PointCloudConfig||(e.PointCloudConfig={}))},function(t,e,n){"use strict";var i=function(){function t(){var t=this;this.resolve=function(e){t._resolve(e)},this.reject=function(e){t._reject(e)},this._promise=new Promise(function(e,n){t._resolve=e,t._reject=n})}return Object.defineProperty(t.prototype,"promise",{get:function(){return this._promise},enumerable:!0,configurable:!0}),t}();e.Deferred=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(t){this.gettextCatalog=t}return t.prototype.getExceptionShortName=function(t){if(t.data&&t.data.exception)return t.data.exception.split(".").reverse()[0]},t.prototype.getExceptionMessage=function(t){if(t.data&&t.data.exception)return t.data.msg},t.prototype.report=function(){return this.currentErrorMessage},t}();e.ServerExceptionClassDetector=i},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__spreadArrays||function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var i=Array(t),r=0;for(e=0;e<n;e++)for(var o=arguments[e],a=0,s=o.length;a<s;a++,r++)i[r]=o[a];return i};Object.defineProperty(e,"__esModule",{value:!0});var a=n(137),s=n(4),c=n(67),l=n(52),u=n(258),d=n(1078),p=n(311),h=n(539),f=n(386),g=n(312),m=n(153),v=n(387),y=function(t){function e(e,n,i,r){void 0===r&&(r=!1);var o=t.call(this)||this;return o.UoMService=n,o.onFinishCreation=i,o.gridEnabled=r,o.points=[],o.edgeLabels=[],o.completionMechanismNeeded=!0,o.lines=[],o.dragInvalid=!1,e instanceof s.Vector3?o.addPoint(e):(o.completionMechanismNeeded=o.completionMechanismNeeded&&e.length<3,e.forEach(function(t){return o.addPoint(t)}),o.removeMeshes(o.filling),o.removeTextSprite(),o.isPolygonValid(e)&&(o.lines.push(o.addLine(o.points[o.points.length-1].position,o.points[0].position)),o.createAreaFromPoints(),o.finishCreation()),o.addEdgeLabels(),o.freshlyCreated=!0),o}return r(e,t),Object.defineProperty(e.prototype,"numberOfPoints",{get:function(){return this.points.length},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"firstPoint",{get:function(){return this.points[0]},enumerable:!0,configurable:!0}),e.canCompletePolygon=function(t){return this.checkLineIntersection(t,0)},e.checkLineIntersection=function(t,e){for(var n=u.rotateToHorizontalPlane(t).points,i=0===e?n.length-1:e-1,r=n[i],o=n[e],a=0;a<n.length;a++){var s=0===a?n.length-1:a-1;if(s!==e&&s!==i&&a!==e&&a!==i&&u.doLinesIntersect(r,o,n[s],n[a]))return!1}return!0},e.prototype.markNotFresh=function(){t.prototype.markNotFresh.call(this),this.removeEdgeLabels()},e.prototype.setMouseEventCallbacks=function(e,n,i,r,o,a){t.prototype.setMouseEventCallbacks.call(this,e,n,i,r,o,a),this.setUpCompletionPointListener()},e.prototype.getPointsPositions=function(){return this.points.map(function(t){return t.position.clone()})},e.prototype.dispose=function(){this.lines.forEach(function(t){return t.geometry.dispose()}),this.filling&&this.filling.geometry.dispose(),this.textSprite&&this.textSprite.removeSpriteObject(),this.edgeLabels.forEach(function(t){return t.removeSpriteObject()})},e.prototype.updateOrientationForViewport=function(t){var n=t.name===l.SplitViewportName.TOP_VIEW?void 0:t.camera.position;this.points.forEach(function(t){return t.lookAt(n||new s.Vector3(t.position.x,t.position.y,t.position.z+e.ORIENTATION_HEIGHT_DIFFERENCE))})},e.prototype.updateMeshScaleForViewport=function(e){c.setMeshScreenSize(e,this.points,a.MeasurementObject3D.POINT_PIXEL_SIZE,!1,e.name!==l.SplitViewportName.TOP_VIEW),t.prototype.updateMeshScaleForViewport.call(this,e);var n=e.name===l.SplitViewportName.DEFAULT_VIEW;this.edgeLabels.forEach(function(t){return t.spriteObject.visible=n}),n&&this.edgeLabels.forEach(function(t){return t.updateSpriteObject(e)})},e.prototype.addPoint=function(t,e){var n=this.calculateCirclePosition(t);this.isNewPointValid(n)&&(this.points.length>0&&this.lines.push(this.addLine(this.points[this.points.length-1].position,n)),this.removeMeshes(this.helpLine,this.projectionLine,this.filling),this.removeTextSprite(),this.points.push(this.addCircle(n)),this.canCreatePlane()&&!this.plane&&(this.createPlane(),this.gridEnabled&&this.showGrid()),this.isPolygon()&&this.createAreaFromPoints(),this.setUpCompletionMechanism(),e&&(this.pov=e))},e.prototype.putPointer=function(t){if(this.cursorPosition=this.focusedPoint?this.focusedPoint.position:t,0!==this.points.length){this.removeMeshes(this.helpLine,this.projectionLine,this.filling),this.removeTextSprite(),document.body.style.cursor=document.body.style.cursor===v.MouseCursorStyle.CROSSHAIR?v.MouseCursorStyle.CROSSHAIR:v.MouseCursorStyle.AUTO;var e=this.calculateCirclePosition(t);this.addProjectionLine(e,t),this.points.length>1&&(this.focusedPoint||this.isNewPointValid(e)?(this.addFilling(e),this.addTextSprite(e)):document.body.style.cursor=v.MouseCursorStyle.NOT_ALLOWED);var n=this.points[this.points.length-1];this.helpLine=a.MeasurementObject3D.createLine(n.position,e),this.add(this.helpLine),this.addEdgeLabels(void 0,e)}},e.prototype.dragObjectStart=function(e){t.prototype.dragObjectStart.call(this,e),this.dragInvalid=!1},e.prototype.dragObject=function(t,n){var i=this.calculateCirclePosition(n),r=-1,o=this.points.map(function(e,n){return e===t?(r=n,i.clone()):e.position.clone()});if(-1===r)throw new Error("Drag is not possible - drag object doesn't correspond to any point of the measurement");return this.dragInvalid=!e.checkLineIntersection(o,(r+1)%o.length)||!e.checkLineIntersection(o,r),!this.dragInvalid&&(t.position.copy(i),this.recreateAreaWithLinesFromPoints(),this.removeMeshes(this.projectionLine),this.addProjectionLine(i,n),this.addEdgeLabels(),!0)},e.prototype.dragObjectEnd=function(e){this.dragInvalid&&this.dragObject(e,this.draggedPoint.initialPosition),this.removeMeshes(this.projectionLine),t.prototype.dragObjectEnd.call(this,e)},e.prototype.undoPoint=function(){return!this.isPolygon()||(this.removeMeshes(this.points.pop(),this.lines.pop()),this.canCreatePlane()||(this.plane=void 0,this.hideGrid()),this.putPointer(this.cursorPosition),!1)},e.prototype.getCenterLocation=function(){var t=this.getPointsPositions(),e=u.rotateToHorizontalPlane(t),n=this.points[0].position.clone().applyQuaternion(e.quaternion).z,i=u.getPolygonCentroid(e.points);return new s.Vector3(i.x,i.y,n).applyQuaternion(e.quaternion.inverse())},e.prototype.setUpMouseListeners=function(e){t.prototype.setUpMouseListeners.call(this,e)},e.prototype.setHovered=function(n){this.children.forEach(function(t){n&&t.material===e.AREA_MATERIAL?t.material=e.AREA_HIGHLIGHT_MATERIAL:n||t.material!==e.AREA_HIGHLIGHT_MATERIAL||(t.material=e.AREA_MATERIAL)}),n?this.addEdgeLabels():this.removeEdgeLabels(),t.prototype.setHovered.call(this,n),this.edgeLabels.forEach(function(t){return t.spriteObject.renderOrder=n?p.RenderOrder.ABOVE_HIGHLIGHT:p.RenderOrder.BETWEEN})},e.prototype.recreateAreaWithLinesFromPoints=function(){this.removeMeshes.apply(this,o(this.lines,[this.filling])),this.removeTextSprite(),this.createLinesBetweenPoints(),this.createAreaFromPoints()},e.prototype.getHoverableObjects=function(){return this.lines},e.prototype.getPoints=function(){return this.points},e.prototype.getMeasurementText=function(){return this.UoMService.convert(this.getValue(),m.MeasurementDomain.AREA)},e.prototype.getValue=function(){var t=u.rotateToHorizontalPlane(this.getPointsPositions()).points;return Math.abs(s.ShapeUtils.area(t))},e.prototype.calculateCirclePosition=function(t){var e=t.clone();return this.plane&&this.plane.projectPoint(t,e),e},e.prototype.finishCreation=function(){if(e.canCompletePolygon(this.getPointsPositions())&&this.onFinishCreation){var t=this.points[0].position;return this.removeMeshes(this.helpLine,this.projectionLine,this.points[0]),this.lines.push(this.addLine(this.points[this.points.length-1].position,this.points[0].position)),this.points[0]=a.MeasurementObject3D.createCircle(t),this.add(this.points[0]),this.hideGrid(),this.onFinishCreation(this),!0}return!1},e.prototype.addLine=function(t,e){var n=a.MeasurementObject3D.createLine(t,e);return this.add(n),n},e.prototype.addCircle=function(t){var e=a.MeasurementObject3D.createCircle(t);return this.add(e),e},e.prototype.addProjectionLine=function(t,e){t.equals(e)||(this.projectionLine=a.MeasurementObject3D.createDottedLine(t,e),this.add(this.projectionLine))},e.prototype.addTextSprite=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var i=this.getPointsPositions();if(t&&i.push.apply(i,t.map(function(t){return t.clone()})),e.canCompletePolygon(i)){var r=u.rotateToHorizontalPlane(i),o=r.points,a=(new s.Vector3).copy(this.points[0].position).applyQuaternion(r.quaternion).z,c=u.getPolygonCentroid(o),l=new s.Vector3(c.x,c.y,a).applyQuaternion(r.quaternion.inverse()),d=Math.abs(s.ShapeUtils.area(o));this.textSprite=this.createTextSprite(l,this.UoMService.convert(d,m.MeasurementDomain.AREA),this.getIcon()),this.updateTextSpriteMaterial(),this.add(this.textSprite.spriteObject)}},e.prototype.addFilling=function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var i=this.getPointsPositions();if(t&&i.push.apply(i,t.map(function(t){return t.clone()})),e.canCompletePolygon(i)){var r=i[0].clone(),o=u.rotateToHorizontalPlane(i.map(function(t){return t.sub(r)}));this.filling&&this.filling.geometry&&this.filling.geometry.dispose();var a=new s.ShapeGeometry(new s.Shape(o.points));this.filling=new s.Mesh(a,e.AREA_MATERIAL),this.filling.onBeforeRender=g.createOnBeforeRenderFunc(),this.filling.position.add(r),this.filling.quaternion.copy(o.quaternion.inverse()),this.filling.renderOrder=e.FILLING_RENDER_ORDER,this.filling.userData.is2D=!0,this.add(this.filling)}},e.prototype.isPoint=function(t){return this.points.some(function(e){return e===t})},e.prototype.addEdgeLabels=function(t){void 0===t&&(t=this.points.length);for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];if(!this.freshlyCreated){this.removeEdgeLabels();var i=this.getPointsPositions();i.push.apply(i,e);for(var r=0;r<t;r++){var o=i[r],a=i[(r+1+i.length)%i.length],s=u.getMidpoint(o,a),c=this.UoMService.convert(o.distanceTo(a),m.MeasurementDomain.DISTANCE,2,void 0,.1,!0),l=this.createTextSprite(s,c,void 0,f.GUIDE_LINE_COLOR_HEX,f.GUIDE_LINE_COLOR_HEX,this.deltaElementsFontColor,this.noIconLabelPadding,p.RenderOrder.BETWEEN);this.edgeLabels.push(l),this.add(l.spriteObject)}}},e.prototype.removeEdgeLabels=function(){this.freshlyCreated||(this.removeLabels.apply(this,this.edgeLabels),this.removeMeshes.apply(this,this.edgeLabels.map(function(t){return t.spriteObject})),this.edgeLabels.length=0)},e.prototype.createAreaFromPoints=function(){this.addFilling(),this.addTextSprite()},e.prototype.createLinesBetweenPoints=function(){this.lines=[];for(var t=0;t<this.points.length;++t)this.lines.push(this.addLine(this.points[t].position,this.points[(t+1)%this.points.length].position))},e.prototype.setUpCompletionPointListener=function(){var t=this;this.completionPointMouseInListener=function(){return t.onMouseOverStartPoint(t.points[0])},this.completionPointMouseOutListener=function(){return t.onMouseOutStartPoint(t.points[0])}},e.prototype.isPolygon=function(){return this.points.length>2},e.prototype.isNewPointValid=function(t){return this.points.length<2||this.isPolygonValid(o(this.getPointsPositions(),[t]))},e.prototype.isPolygonValid=function(t){return!(t.length<3)&&e.checkLineIntersection(t,t.length-1)},e.prototype.setUpCompletionMechanism=function(){var t=this;if(this.completionMechanismNeeded&&3===this.points.length){var e=this.points[0].position;this.removeMeshes(this.points[0]),this.points[0]=a.MeasurementObject3D.createCompoundCircle(e),this.add(this.points[0]);var n=this.points[0].children[0];n.renderOrder=p.RenderOrder.ABOVE_DEFAULT,n.onClick=function(){return t.finishCreation()},n.onMouseOver=this.completionPointMouseInListener,n.onMouseOut=this.completionPointMouseOutListener}},e.prototype.onMouseOverStartPoint=function(t){this.focusedPoint=t,this.isPolygon()&&e.canCompletePolygon(this.getPointsPositions())&&(document.body.style.cursor=v.MouseCursorStyle.CROSSHAIR,t.material=e.CIRCLE_HIGHLIGHT_MATERIAL,t.renderOrder=p.RenderOrder.ON_TOP,this.onPointHover(!0,t))},e.prototype.onMouseOutStartPoint=function(t){document.body.style.cursor=v.MouseCursorStyle.DEFAULT,t.material=e.CIRCLE_MATERIAL,t.renderOrder=p.RenderOrder.DEFAULT,this.focusedPoint=void 0,this.onPointHover(!1)},e.prototype.showGrid=function(){this.grid||(this.grid=new d.MeasurementGridObject3D(this.plane.normal,this.points.map(function(t){return t.position})),this.add(this.grid))},e.prototype.hideGrid=function(){this.grid&&(this.remove(this.grid),this.grid=void 0)},e.Z_NORMAL=new s.Vector3(0,0,1),e.AREA_MATERIAL=new h.MeasurementMaterial({color:f.MEASUREMENT_MATERIAL_COLOR,obscuredColor:f.OBSCURED_MEASUREMENT_MATERIAL_COLOR,opacity:.3,obscuredOpacity:.3,occlusionDistance:a.MeasurementObject3D.OCCLUSION_DISTANCE,clipDistance:a.MeasurementObject3D.CLIP_DISTANCE}),e.AREA_HIGHLIGHT_MATERIAL=new s.MeshBasicMaterial({color:f.MEASUREMENT_HIGHLIGHT_MATERIAL_COLOR,opacity:.3,transparent:!0,side:s.DoubleSide,wireframe:!1,depthTest:!1,depthWrite:!1}),e.FILLING_RENDER_ORDER=1.9,e}(a.MeasurementObject3D);e.AreaMeasurementObject3D=y},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t[t.USER=0]="USER",t[t.DATASETS=5]="DATASETS",t[t.VIEW=10]="VIEW",t[t.POI_TYPES=15]="POI_TYPES",t[t.EDITOR_MODES=20]="EDITOR_MODES",t[t.EDITOR_MODES_EXPLORE=0]="EDITOR_MODES_EXPLORE",t[t.EDITOR_MODES_GEO_REG=5]="EDITOR_MODES_GEO_REG",t[t.EDITOR_MODES_ALIGNMENT=10]="EDITOR_MODES_ALIGNMENT",t[t.EDITOR_MODES_SITE_MODEL=15]="EDITOR_MODES_SITE_MODEL",t[t.EDITOR_MODES_NAV_GRAPH=20]="EDITOR_MODES_NAV_GRAPH",t[t.EDITOR_MODES_VECTOR_MAP=25]="EDITOR_MODES_VECTOR_MAP",t[t.EDITOR_MODES_MEASUREMENTS=30]="EDITOR_MODES_MEASUREMENTS",t[t.EDITOR_MODES_DOWNLOAD_POINT_CLOUD=32]="EDITOR_MODES_DOWNLOAD_POINT_CLOUD",t[t.MEASUREMENTS=21]="MEASUREMENTS",t[t.SHARE=25]="SHARE",t[t.CLOUD_PROCESSING=26]="CLOUD_PROCESSING",t[t.CLOUD_PROCESSING_UPLOADED_DATA=0]="CLOUD_PROCESSING_UPLOADED_DATA",t[t.CLOUD_PROCESSING_PROCESSING_TASKS=1]="CLOUD_PROCESSING_PROCESSING_TASKS",t[t.CLOUD_PROCESSING_PROCESSED_DATA=2]="CLOUD_PROCESSING_PROCESSED_DATA",t[t.SETTINGS=30]="SETTINGS",t[t.SETTINGS_CONFIG=0]="SETTINGS_CONFIG",t[t.SETTINGS_INSTANCE_KEY=5]="SETTINGS_INSTANCE_KEY",t[t.SETTINGS_AUTH=7]="SETTINGS_AUTH",t[t.SETTINGS_USERS=10]="SETTINGS_USERS",t[t.SETTINGS_GROUPS=15]="SETTINGS_GROUPS",t[t.SETTINGS_AUDIT=17]="SETTINGS_AUDIT",t[t.SETTINGS_DATASET_MANAGEMENT=20]="SETTINGS_DATASET_MANAGEMENT",t[t.SETTINGS_HIDDEN_IMAGES=25]="SETTINGS_HIDDEN_IMAGES",t[t.SETTINGS_THEME_PANEL=28]="SETTINGS_THEME_PANEL",t[t.DEVELOPER=40]="DEVELOPER"}(e.SidebarMenuItemsOrder||(e.SidebarMenuItemsOrder={}))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(1416),r=n(108),o=function(){function t(){this.items=[],this.isFullscreen=!1,this.compileTemplate=!0,this.isVisible=function(){return!0},this.isPreviewIconVisible=function(){return!0}}return t.prototype.setKey=function(t){return this.key=t,this},t.prototype.setTitle=function(t){return this.title=t,this},t.prototype.setIcon=function(t){return this.icon=t,this},t.prototype.setIsVisible=function(t){return this.isVisible=t,this},t.prototype.setTemplate=function(t){return this.template=t,this},t.prototype.setClassCallback=function(t){return this.getClass=t,this},t.prototype.setOrder=function(t){return this.order=t,this},t.prototype.setOnExit=function(t){return this.onExit=t,this},t.prototype.setOnClick=function(t){return this.onClick=t,this},t.prototype.setIsPreviewIconVisible=function(t){return this.isPreviewIconVisible=t,this},t.prototype.setItems=function(t){return this.items=t,this},t.prototype.setIsFullscreen=function(t){return this.isFullscreen=t,this},t.prototype.setCompileTemplate=function(t){return this.compileTemplate=t,this},t.prototype.build=function(){if(void 0===this.title||void 0===this.icon||void 0===this.key)throw new r.IVFrontendException("Missing required field (title, icon, or key)");if(void 0===this.template&&void 0===this.onClick&&0===this.items.length)throw new r.IVFrontendException("Missing required content (template, on click action, or child items)");return new i.SidebarMenuItem(this.key,this.title,this.icon,this.isVisible,this.template,this.getClass,this.order,this.onExit,this.onClick,this.isPreviewIconVisible,this.items,this.isFullscreen,this.compileTemplate)},t}();e.SidebarMenuItemBuilder=o},function(t,e,n){"use strict";n.d(e,"a",function(){return a});var i=n(12),r=n(337),o=n(226);function a(t,e){return e?Object(o.a)(t,e):new i.a(Object(r.a)(t))}},function(t,e,n){"use strict";n.d(e,"a",function(){return o});var i=n(1),r=n(278),o=function(t){function e(n,i){void 0===i&&(i=r.a.now);var o=t.call(this,n,function(){return e.delegate&&e.delegate!==o?e.delegate.now():i()})||this;return o.actions=[],o.active=!1,o.scheduled=void 0,o}return i.c(e,t),e.prototype.schedule=function(n,i,r){return void 0===i&&(i=0),e.delegate&&e.delegate!==this?e.delegate.schedule(n,i,r):t.prototype.schedule.call(this,n,i,r)},e.prototype.flush=function(t){var e=this.actions;if(this.active)e.push(t);else{var n;this.active=!0;do{if(n=t.execute(t.state,t.delay))break}while(t=e.shift());if(this.active=!1,n){for(;t=e.shift();)t.unsubscribe();throw n}}},e}(r.a)},function(t,e,n){"use strict";n.d(e,"a",function(){return r});var i=n(1),r=function(t){function e(e,n){var i=t.call(this,e,n)||this;return i.scheduler=e,i.work=n,i.pending=!1,i}return i.c(e,t),e.prototype.schedule=function(t,e){if(void 0===e&&(e=0),this.closed)return this;this.state=t;var n=this.id,i=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(i,n,e)),this.pending=!0,this.delay=e,this.id=this.id||this.requestAsyncId(i,this.id,e),this},e.prototype.requestAsyncId=function(t,e,n){return void 0===n&&(n=0),setInterval(t.flush.bind(t,this),n)},e.prototype.recycleAsyncId=function(t,e,n){if(void 0===n&&(n=0),null!==n&&this.delay===n&&!1===this.pending)return e;clearInterval(e)},e.prototype.execute=function(t,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var n=this._execute(t,e);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},e.prototype._execute=function(t,e){var n=!1,i=void 0;try{this.work(t)}catch(t){n=!0,i=!!t&&t||new Error(t)}if(n)return this.unsubscribe(),i},e.prototype._unsubscribe=function(){var t=this.id,e=this.scheduler,n=e.actions,i=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==i&&n.splice(i,1),null!=t&&(this.id=this.recycleAsyncId(e,t,null)),this.delay=null},e}(function(t){function e(e,n){return t.call(this)||this}return i.c(e,t),e.prototype.schedule=function(t,e){return void 0===e&&(e=0),this},e}(n(33).a))},function(t,e,n){"use strict";var i;Object.defineProperty(e,"__esModule",{value:!0}),e.getBaseUrl=function(t,e){if(void 0===e&&(e=!1),!e&&i)return i;t=t||window.location.href;var n=document.querySelector('script[src$="main.js"]'),r=document.querySelector('script[src$="scripts/IndoorViewer.all.min.js"]'),o=n||r,a=n?"main.js":"scripts/IndoorViewer.all.min.js",s=new URL(t);if(o&&a){var c=o.getAttribute("src"),l=(s=new URL(c,s)).pathname;s.pathname=l.substring(0,l.indexOf(a))}return i=(i=(i=s.origin+s.pathname).replace("context.html","")).endsWith("/")?i:i+"/"}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(108),r=function(){function t(t,e,n,i){this.name=t,this.symbol=e,this.base=n,this.factor=i}return t.prototype.toBase=function(t){return t*this.factor},t.prototype.fromBase=function(t){return t/this.factor},t}();e.UnitOfMeasurement=r;var o=function t(e){this.gettext=e,t.METRIC=this.gettext("metric",void 0,"measurement system"),t.IMPERIAL=this.gettext("imperial",void 0,"measurement system")};e.UoMSystem=o;var a=function(){function t(){}return t.DISTANCE="DISTANCE",t.AREA="AREA",t.VOLUME="VOLUME",t.DATA="DATA",t}();e.MeasurementDomain=a;var s=function(){function t(){}return t.init=function(){var e,n,i,a,s,c,l,u,d,p,h,f=new r(t.METER[0],t.METER[1],void 0,1),g=new r(t.SQUAREMETER[0],t.SQUAREMETER[1],void 0,1),m=new r(t.CUBICMETER[0],t.CUBICMETER[1],void 0,1),v=new r(t.BYTE[0],t.BYTE[1],void 0,1);t.DISTANCE=((e={})[o.METRIC]=((n={})[t.MILLIMETER[0]]=new r(t.MILLIMETER[0],t.MILLIMETER[1],f,.001),n[t.CENTIMETER[0]]=new r(t.CENTIMETER[0],t.CENTIMETER[1],f,.01),n[t.METER[0]]=f,n[t.KILOMETER[0]]=new r(t.KILOMETER[0],t.KILOMETER[1],f,1e3),n),e[o.IMPERIAL]=((i={})[t.INCH[0]]=new r(t.INCH[0],t.INCH[1],f,.0254),i[t.FOOT[0]]=new r(t.FOOT[0],t.FOOT[1],f,.3048),i[t.MILE[0]]=new r(t.MILE[0],t.MILE[1],f,1609.344),i),e),t.AREA=((a={})[o.METRIC]=((s={})[t.SQUAREMETER[0]]=g,s),a[o.IMPERIAL]=((c={})[t.SQUAREFOOT[0]]=new r(t.SQUAREFOOT[0],t.SQUAREFOOT[1],g,.092903),c),a),t.VOLUME=((l={})[o.METRIC]=((u={})[t.CUBICMETER[0]]=m,u),l[o.IMPERIAL]=((d={})[t.CUBICFOOT[0]]=new r(t.CUBICFOOT[0],t.CUBICFOOT[1],m,.0283168),d),l);var y=((p={})[t.BYTE[0]]=v,p[t.KILOBYTE[0]]=new r(t.KILOBYTE[0],t.KILOBYTE[1],v,1e3),p[t.MEGABYTE[0]]=new r(t.MEGABYTE[0],t.MEGABYTE[1],v,1e6),p[t.GIGABYTE[0]]=new r(t.GIGABYTE[0],t.GIGABYTE[1],v,1e9),p[t.TERABYTE[0]]=new r(t.TERABYTE[0],t.TERABYTE[1],v,1e12),p[t.PETABYTE[0]]=new r(t.PETABYTE[0],t.PETABYTE[1],v,1e15),p);t.DATA=((h={})[o.METRIC]=y,h[o.IMPERIAL]=y,h)},t.getUnitsOfMeasurementByDomain=function(e){switch(e.toUpperCase()){case a.DISTANCE:return t.DISTANCE;case a.AREA:return t.AREA;case a.VOLUME:return t.VOLUME;case a.DATA:return t.DATA;default:throw new i.IVFrontendException(e+" measurement domain is not supported.")}},t.getUnitsOfMeasurementByDomainAndSystem=function(e,n){var r=t.getUnitsOfMeasurementByDomain(e);if(r.hasOwnProperty(n.toLowerCase()))return r[n.toLowerCase()];throw new i.IVFrontendException(n+" measurement system is not supported.")},t.getDefaultUnitByDomainAndSystem=function(e,n){switch(e.toUpperCase()){case a.DISTANCE:switch(n.toLowerCase()){case o.METRIC:return t.DISTANCE[o.METRIC][t.METER[0]];case o.IMPERIAL:return t.DISTANCE[o.IMPERIAL][t.FOOT[0]];default:throw new i.IVFrontendException(n+" measurement system is not supported.")}case a.AREA:switch(n.toLowerCase()){case o.METRIC:return t.AREA[o.METRIC][t.SQUAREMETER[0]];case o.IMPERIAL:return t.AREA[o.IMPERIAL][t.SQUAREFOOT[0]];default:throw new i.IVFrontendException(n+" measurement system is not supported.")}case a.VOLUME:switch(n.toLowerCase()){case o.METRIC:return t.VOLUME[o.METRIC][t.CUBICMETER[0]];case o.IMPERIAL:return t.VOLUME[o.IMPERIAL][t.CUBICFOOT[0]];default:throw new i.IVFrontendException(n+" measurement system is not supported.")}case a.DATA:switch(n.toLowerCase()){case o.METRIC:return t.DATA[o.METRIC][t.BYTE[0]];case o.IMPERIAL:return t.DATA[o.IMPERIAL][t.BYTE[0]];default:throw new i.IVFrontendException(n+" measurement system is not supported.")}default:throw new i.IVFrontendException(e+" measurement domain is not supported.")}},t.MILLIMETER=["Millimeter","mm"],t.CENTIMETER=["Centimeter","cm"],t.METER=["Meter","m"],t.KILOMETER=["Kilometer","km"],t.INCH=["Inch","in"],t.FOOT=["Foot","ft"],t.MILE=["Mile","mi"],t.SQUAREMETER=["SquareMeter","m²"],t.SQUAREFOOT=["SquareFoot","ft²"],t.CUBICMETER=["CubicMeter","m³"],t.CUBICFOOT=["CubicFoot","ft³"],t.BYTE=["Byte","B"],t.KILOBYTE=["Kilobyte","kB"],t.MEGABYTE=["Megabyte","MB"],t.GIGABYTE=["Gigabyte","GB"],t.TERABYTE=["Terabyte","TB"],t.PETABYTE=["Petabyte","PB"],t}();e.UnitsOfMeasurement=s},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(14),o=n(16),a=n(7),s=(n(24),n(8)),c=(n(31),n(6)),l=n(0),u=(n(17),n(0)),d=n(14),p=n(24),h=n(31),f=n(17),g=function(){function t(t,e,n,i){var r=this;this.GeoTransformationService=t,this.ModeService=e,this.DatasetRepository=n,this.ViewService=i,this.cachedStates={},this.mapDataPresent={},this.transparent=!1,this.stateDirty=!1,this.selectedDatasets={},this.selectedDatasetsChanged=new o.Signal,this.transparencySwitched=new o.Signal,this.primaryDatasetSwitched=new o.Signal,this.baseLayerSwitched=new o.Signal,this.zoomedToDatasets=new o.Signal,e.modeChanged.connect(function(){return r.initSelection()})}return t.prototype.select=function(t){this._select(t),this.selectedDatasetsChanged.emit(),this.updatePrimaryFromSelected()},t.prototype.deselect=function(t){this._deselect(t),this.selectedDatasetsChanged.emit(),this.updatePrimaryFromSelected()},t.prototype.selectAll=function(t){for(var e=0,n=t;e<n.length;e++){var i=n[e];this._select(i)}this.selectedDatasetsChanged.emit(),this.updatePrimaryFromSelected()},t.prototype.deselectAll=function(t){var e=this;if(t)for(var n=0,i=t;n<i.length;n++){var r=i[n];this._deselect(r)}else a.forEach(this.selectedDatasets,function(t){return e._deselect(t)});this.selectedDatasetsChanged.emit(),this.updatePrimaryFromSelected()},t.prototype.toggleSelection=function(t){this.selectedDatasets[t.id]?this.deselect(t):this.select(t)},t.prototype.isDatasetSelected=function(t){return!!this.selectedDatasets[t.id]},t.prototype.areAllDatasetsSelected=function(t){var e=this;return a.every(t,function(t){return e.isDatasetSelected(t)})},t.prototype.areNoDatasetsSelected=function(t){var e=this;return a.every(t,function(t){return!e.isDatasetSelected(t)})},t.prototype.zoomToDatasets=function(t,e){this.zoomedToDatasets.emit(t,e)},t.prototype.setZoomToAllSelected=function(t){var e=a.values(this.selectedDatasets);this.zoomToDatasets(e,t)},t.prototype.setAsPrimary=function(t){this.primary=t,this.primaryDatasetSwitched.emit()},t.prototype.toggleTransparency=function(){this.transparent=!this.transparent,this.transparencySwitched.emit()},t.prototype.toggleBaseLayer=function(){this.baseLayerSwitched.emit()},t.prototype.checkDatasetAndSelection=function(t){var e=this;this.GeoTransformationService.checkAndFixOffset(t),a.forEach(this.selectedDatasets,function(t){t.location.length()>r.GeoTransformationService.RELOCATE_LOCAL_SYSTEM_THRESHOLD&&(e.deselect(t),e.selectedDatasetsChanged.emit())})},t.prototype.isNonWritableDatasetSelected=function(){return a.some(this.selectedDatasets,function(t){return!t.canWrite})},t.prototype.anythingSelected=function(){return a.size(this.selectedDatasets)>0},t.prototype.initSelection=function(){var t=this;this.currentModeUsesAlignmentService()&&this.DatasetRepository.findAll().then(function(e){for(var n=!1,i=0,r=e;i<r.length;i++){var o=r[i];o.pointCloudVisible?(t.select(o),n=!0):t.deselect(o)}var a=t.ViewService.mainView.getImage();!n&&a&&t.select(a.dataset),t.setZoomToAllSelected(!0)}).catch(s.handleWarning)},t.prototype._select=function(t){this.checkDatasetAndSelection(t),t.pointCloudVisible=!0,this.selectedDatasets[t.id]=t},t.prototype._deselect=function(t){this.selectedDatasets[t.id]&&(delete this.selectedDatasets[t.id],t.locked=!0,t.pointCloudVisible=!1)},t.prototype.updatePrimaryFromSelected=function(){var t=!1;this.primary&&!this.selectedDatasets[this.primary.id]&&(this.primary=void 0,t=!0),!this.primary&&a.size(this.selectedDatasets)>0&&(this.primary=this.selectedDatasets[Object.keys(this.selectedDatasets)[0]],t=!0),t&&this.primaryDatasetSwitched.emit()},t.prototype.discardChanges=function(){var t=this;return this.DatasetRepository.resetCache(),this.DatasetRepository.findAll().then(function(e){return t.resetAlignmentReferences(e)})},t.prototype.resetAlignmentReferences=function(t){var e;this.primary&&(e=this.primary.id);for(var n=Object.keys(this.selectedDatasets),i=0,r=t.filter(function(t){return-1!==n.indexOf(String(t.id))});i<r.length;i++){var o=r[i];this.selectedDatasets[o.id]=o,o.id===e&&(this.primary=o)}this.stateDirty=!1},t.prototype.currentModeUsesAlignmentService=function(){return this.ModeService.isSiteModelEditorMode()||this.ModeService.isDatasetAlignmentMode()||this.ModeService.isGeoRegistrationMode()},t.ɵfac=function(e){return new(e||t)(u.ɵɵinject(d.GeoTransformationService),u.ɵɵinject(p.ModeService),u.ɵɵinject(h.DatasetRepository),u.ɵɵinject(f.ViewService))},t.ɵprov=u.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.AlignmentService=g,u.ɵsetClassMetadata(g,[{type:l.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:d.GeoTransformationService},{type:p.ModeService},{type:h.DatasetRepository},{type:f.ViewService}]},null),i.module("IVWebApp").service("AlignmentService",c.downgradeInjectable(g))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=(n(154),n(16));n(49),n(90),n(14),n(39),n(31),n(106),n(61),n(422),n(422),n(103),n(41);var s=n(107),c=n(8),l=n(4),u=n(136),d=n(7),p=n(318),h=n(6),f=n(0),g=(n(66),n(0)),m=n(154),v=n(49),y=n(90),b=n(14),w=n(66),S=n(39),x=n(31),M=n(106),E=n(61),C=n(422),A=n(103),T=n(41),O=function(t){function e(e,n,i,r,o,s,c,l,u,d,p,h,f){var g=t.call(this)||this;return g.AlignmentService=e,g.ImageService=n,g.ImageRepository=i,g.GeoTransformationService=r,g.TransformService=o,g.PoiService=s,g.DatasetRepository=c,g.ProgressReportService=l,g.MessageReportingService=u,g.gettextCatalog=d,g.PoseRepository=p,g.PoiRepository=h,g.ErrorService=f,g.datasetAlignmentChanged=new a.Signal,g.errorHandler=g.ErrorService.newWrapper().report().exceptions().network().generic(g.gettextCatalog.getString("Error while saving the dataset alignment")).build(),g}return r(e,t),e.prototype.isSavingInProgress=function(){return this.task&&this.task.percentage<100},e.prototype.save=function(){var t=this;return this.updateDatasets(),this.saveAlignment().then(function(){t.AlignmentService.stateDirty=!1})},e.prototype.updateDatasets=function(){var t=this;this.DatasetRepository.findAll().then(function(e){for(var n=0,i=e;n<i.length;n++){var r=i[n],o=r.getGlobalState();r.orientation=o.orientation,r.globalLocation=(new l.Vector3).fromArray(o.pos)}t.GeoTransformationService.updateLocalCoordinates()}).catch(c.handleWarning)},e.prototype.hasChanges=function(){return this.AlignmentService.stateDirty},e.prototype.saveAlignment=function(){var t=this;return this.task=this.ProgressReportService.addTask(this.gettextCatalog.getString("Saving alignment..."),1,!0,!1,!1),this.DatasetRepository.findAll().then(function(e){var n=e.filter(function(t){return t.security.canWrite});t.task.addItems(n.length),t.task.itemDone();for(var i=t.TransformService.getLocalCoordinateSystemState(),r=Promise.resolve(),o=function(e){r=r.then(function(){return t.saveDatasetAlignment(e)})},a=0,c=n;a<c.length;a++)o(c[a]);return r=s.promiseFinally(r,function(){return t.TransformService.setLocalCoordinateSystemState(i)}),t.errorHandler.wrap(r).catch(function(e){return t.task.setPercentage(100),Promise.reject(e)})})},e.prototype.saveDatasetAlignment=function(t){var e=this,n=t.getGlobalState();return t.orientation=n.orientation,t.globalLocation=(new l.Vector3).fromArray(n.pos),this.DatasetRepository.save([t]).then(function(t){var n=t[0];return e.GeoTransformationService.setOffsetFromGlobal(n.globalLocation),Promise.all([e.saveImagesToDB(n),e.savePOIsToDB(n),e.updatePoses(n)]).then(function(){return e.task.itemDone()})})},e.prototype.saveImagesToDB=function(t){var e=this;return this.updateImageCoordinates(t).then(function(t){return e.ImageRepository.save(t)}).then(function(){return e.DatasetRepository.findOne(t.id,!0)})},e.prototype.savePOIsToDB=function(t){var e=this;return this.updatePoiCoordinates(t).then(function(t){return e.PoiRepository.save(t)}).then(function(){return e.PoiService.poisChanged.emit()})},e.prototype.updatePoses=function(t){var e=this;return this.task.addItems(1),this.PoseRepository.findByDatasetId(t.id).then(function(t){return t.length>0?(t.forEach(function(t){return t.computeCoordinatesFromDataset()}),e.PoseRepository.save(t).then(function(){return e.task.itemDone()})):(e.task.itemDone(),Promise.resolve())})},e.prototype.translate=function(t,e){var n=this;d.forEach(this.AlignmentService.selectedDatasets,function(e){e.locked||(n.AlignmentService.stateDirty=!0,n.applyTranslationToDataset(t,e))}),this.datasetAlignmentChanged.emit()},e.prototype.undoTranslation=function(){var t=this;d.forEach(this.AlignmentService.cachedStates,function(e,n){t.AlignmentService.selectedDatasets[n].setState(t.AlignmentService.cachedStates[n]),t.updateImageCoordinates(t.AlignmentService.selectedDatasets[n]).catch(function(){})}),this.datasetAlignmentChanged.emit(),this.AlignmentService.cachedStates=void 0},e.prototype.applyTranslationToDataset=function(t,e){var n=e.m2w_;n.elements[12]+=t.x,n.elements[13]+=t.y,n.elements[14]+=t.z,e.m2wInv_=(new l.Matrix4).getInverse(e.m2w_),e.updateLocationsFromMatrix(),this.updateImageCoordinates(e).catch(function(){}),e.updatePose()},e.prototype.cacheCurrentState=function(){var t=this;this.AlignmentService.cachedStates={},d.forEach(this.AlignmentService.selectedDatasets,function(e){e.locked||(t.AlignmentService.cachedStates[e.id]=e.getState())})},e.prototype.rotate=function(t,e){var n=this,i=new l.Matrix4;i.makeRotationZ(t),this.AlignmentService.primary&&!this.AlignmentService.primary.locked&&(this.AlignmentService.stateDirty=!0,this.applyRotationToDataset(t,this.AlignmentService.primary)),d.forEach(this.AlignmentService.selectedDatasets,function(t){t===n.AlignmentService.primary||t.locked||(n.AlignmentService.stateDirty=!0,n.rotateDatasetAroundOtherDataset(i,t,n.AlignmentService.primary))}),this.datasetAlignmentChanged.emit()},e.prototype.applyRotationToDataset=function(t,e){if(e.m2w_){var n=e.m2w_,i=Math.atan2(n.elements[1],n.elements[0])+t,r=Math.cos(i),o=Math.sin(i);n.elements[0]=r,n.elements[1]=o,n.elements[4]=-o,n.elements[5]=r,e.m2wInv_=(new l.Matrix4).getInverse(e.m2w_),e.updateLocationsFromMatrix(),this.updateImageCoordinates(e).catch(function(){}),e.updatePose()}},e.prototype.rotateDatasetAroundOtherDataset=function(t,e,n){var i=n.m2w_,r=new l.Matrix4;r.getInverse(i);var o=new l.Matrix4,a=new l.Matrix4,s=new l.Matrix4,c=e.m2w_;o.multiplyMatrices(r,c),a.multiplyMatrices(t,o),s.multiplyMatrices(i,a),e.m2w_.copy(s),e.m2wInv_=(new l.Matrix4).getInverse(e.m2w_),e.updateLocationsFromMatrix(),this.updateImageCoordinates(e).catch(function(){}),e.updatePose()},e.prototype.updateImageCoordinates=function(t){return this.ImageRepository.filter((new u.ImageRestFilterBuilder).dataset([t]).build()).then(function(t){return t.forEach(function(t){return t.computeCoordinatesFromDataset()}),t})},e.prototype.updatePoiCoordinates=function(t){return this.PoiRepository.filter((new u.PoiRestFilterBuilder).dataset([t]).build()).then(function(t){return t.forEach(function(t){return t.computeCoordinatesFromDataset()}),t})},e.prototype.discardChanges=function(){return this.ImageRepository.resetCache(),this.AlignmentService.discardChanges()},e.prototype.promptOnUnsavedChanges=function(){return t.prototype.promptOnUnsavedChanges.call(this,"#confirmUnsavedDatasetAlignment")},e.ɵfac=function(t){return new(t||e)(g.ɵɵinject(m.AlignmentService),g.ɵɵinject(v.ImageService),g.ɵɵinject(y.ImageRepository),g.ɵɵinject(b.GeoTransformationService),g.ɵɵinject(w.TransformService),g.ɵɵinject(S.PoiService),g.ɵɵinject(x.DatasetRepository),g.ɵɵinject(M.ProgressReportService),g.ɵɵinject(E.MessageReportingService),g.ɵɵinject("gettextCatalog"),g.ɵɵinject(C.PoseRepository),g.ɵɵinject(A.PoiRepository),g.ɵɵinject(T.ErrorService))},e.ɵprov=g.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(p.SaveDiscardDialogService);e.DatasetAlignmentService=O,g.ɵsetClassMetadata(O,[{type:f.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:m.AlignmentService},{type:v.ImageService},{type:y.ImageRepository},{type:b.GeoTransformationService},{type:w.TransformService},{type:S.PoiService},{type:x.DatasetRepository},{type:M.ProgressReportService},{type:E.MessageReportingService},{type:void 0,decorators:[{type:f.Inject,args:["gettextCatalog"]}]},{type:C.PoseRepository},{type:A.PoiRepository},{type:T.ErrorService}]},null),o.module("IVWebApp").service("DatasetAlignmentService",h.downgradeInjectable(O))},function(t,e,n){"use strict";function i(t){return t}n.d(e,"a",function(){return i})},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(257),r=n(4);e.pointInPolygon=function(t,e){for(var n=e.length,i=!1,r=n-1,o=0;o<n;r=o++){var a=e[r],s=e[o],c=s.x-a.x,l=s.y-a.y;if(Math.abs(l)>1e-10){if(l<0&&(a=e[o],c=-c,s=e[r],l=-l),t.y<a.y||t.y>s.y)continue;if(t.y===a.y){if(t.x===a.x)return!0}else{var u=l*(t.x-a.x)-c*(t.y-a.y);if(0===u)return!0;if(u<0)continue;i=!i}}else{if(t.y!==a.y)continue;if(s.x<=t.x&&t.x<=a.x||a.x<=t.x&&t.x<=s.x)return!0}}return i},e.generateDataTexture=function(t,e,n){for(var i=t*e,o=new Uint8Array(3*i),a=Math.floor(255*n.r),s=Math.floor(255*n.g),c=Math.floor(255*n.b),l=0;l<i;l++)o[3*l]=a,o[3*l+1]=s,o[3*l+2]=c;var u=new r.DataTexture(o,t,e,r.RGBFormat,void 0,void 0,void 0,void 0,void 0,void 0);return u.needsUpdate=!0,u},e.getAngleBetweenVectors=function(t,e,n){var i=new r.Vector3,o=new r.Vector3;void 0!==n&&void 0!==n.x&&void 0!==n.y?(i.subVectors(t,n),o.subVectors(e,n)):(i=t,o=e);var a=Math.atan2(i.y,i.x);return Math.atan2(o.y,o.x)-a},e.createMeshLine=function(t,e){var n=new i.MeshLine;n.setGeometry(t);var o=new r.Mesh(n.geometry,e);return o.raycast=n.raycast,o},e.disposeMeshMaterial=function(t){if(t.material)if(t.material instanceof r.Material)t.material.dispose();else for(var e=0,n=t.material;e<n.length;e++)n[e].dispose()}},function(t,e){t.exports=!1},function(t,e,n){"use strict";var i=n(18);t.exports=function(t,e){var n=[][t];return!!n&&i(function(){n.call(null,e||function(){throw 1},1)})}},function(t,e,n){var i,r=n(29),o=n(353),a=n(354),s=n(239),c=n(462),l=n(351),u=n(287)("IE_PROTO"),d=function(){},p=function(t){return"<script>"+t+"<\/script>"},h=function(){try{i=document.domain&&new ActiveXObject("htmlfile")}catch(t){}var t,e;h=i?function(t){t.write(p("")),t.close();var e=t.parentWindow.Object;return t=null,e}(i):((e=l("iframe")).style.display="none",c.appendChild(e),e.src=String("javascript:"),(t=e.contentWindow.document).open(),t.write(p("document.F=Object")),t.close(),t.F);for(var n=a.length;n--;)delete h.prototype[a[n]];return h()};s[u]=!0,t.exports=Object.create||function(t,e){var n;return null!==t?(d.prototype=r(t),n=new d,d.prototype=null,n[u]=t):n=h(),void 0===e?n:o(n,e)}},function(t,e,n){var i=n(286),r=n(34),o=function(t){return"function"==typeof t?t:void 0};t.exports=function(t,e){return arguments.length<2?o(i[t])||o(r[t]):i[t]&&i[t][e]||r[t]&&r[t][e]}},function(t,e,n){var i=n(48).f,r=n(58),o=n(45)("toStringTag");t.exports=function(t,e,n){t&&!r(t=n?t:t.prototype,o)&&i(t,o,{configurable:!0,value:e})}},function(t,e,n){var i=n(490),r=n(492),o=n(284)("metadata"),a=o.store||(o.store=new r),s=function(t,e,n){var r=a.get(t);if(!r){if(!n)return;a.set(t,r=new i)}var o=r.get(e);if(!o){if(!n)return;r.set(e,o=new i)}return o};t.exports={store:a,getMap:s,has:function(t,e,n){var i=s(e,n,!1);return void 0!==i&&i.has(t)},get:function(t,e,n){var i=s(e,n,!1);return void 0===i?void 0:i.get(t)},set:function(t,e,n,i){s(n,i,!0).set(t,e)},keys:function(t,e){var n=s(t,e,!1),i=[];return n&&n.forEach(function(t,e){i.push(e)}),i},toKey:function(t){return void 0===t||"symbol"==typeof t?t:String(t)}}},function(t,e,n){"use strict";var i=n(5),r=n(34),o=n(43),a=n(372),s=n(46),c=n(303),l=n(192),u=n(173),d=n(88),p=n(44),h=n(510),f=n(511),g=n(134),m=n(58),v=n(242),y=n(42),b=n(160),w=n(191),S=n(190).f,x=n(512),M=n(74).forEach,E=n(246),C=n(48),A=n(82),T=n(110),O=n(293),_=T.get,P=T.set,I=C.f,k=A.f,D=Math.round,R=r.RangeError,L=c.ArrayBuffer,N=c.DataView,j=s.NATIVE_ARRAY_BUFFER_VIEWS,V=s.TYPED_ARRAY_TAG,F=s.TypedArray,U=s.TypedArrayPrototype,B=s.aTypedArrayConstructor,z=s.isTypedArray,G=function(t,e){for(var n=0,i=e.length,r=new(B(t))(i);i>n;)r[n]=e[n++];return r},H=function(t,e){I(t,e,{get:function(){return _(this)[e]}})},W=function(t){var e;return t instanceof L||"ArrayBuffer"==(e=v(t))||"SharedArrayBuffer"==e},q=function(t,e){return z(t)&&"symbol"!=typeof e&&e in t&&String(+e)==String(e)},K=function(t,e){return q(t,e=g(e,!0))?u(2,t[e]):k(t,e)},X=function(t,e,n){return!(q(t,e=g(e,!0))&&y(n)&&m(n,"value"))||m(n,"get")||m(n,"set")||n.configurable||m(n,"writable")&&!n.writable||m(n,"enumerable")&&!n.enumerable?I(t,e,n):(t[e]=n.value,t)};o?(j||(A.f=K,C.f=X,H(U,"buffer"),H(U,"byteOffset"),H(U,"byteLength"),H(U,"length")),i({target:"Object",stat:!0,forced:!j},{getOwnPropertyDescriptor:K,defineProperty:X}),t.exports=function(t,e,n){var o=t.match(/\d+$/)[0]/8,s=t+(n?"Clamped":"")+"Array",c="get"+t,u="set"+t,g=r[s],m=g,v=m&&m.prototype,C={},A=function(t,e){I(t,e,{get:function(){return function(t,e){var n=_(t);return n.view[c](e*o+n.byteOffset,!0)}(this,e)},set:function(t){return function(t,e,i){var r=_(t);n&&(i=(i=D(i))<0?0:i>255?255:255&i),r.view[u](e*o+r.byteOffset,i,!0)}(this,e,t)},enumerable:!0})};j?a&&(m=e(function(t,e,n,i){return l(t,m,s),O(y(e)?W(e)?void 0!==i?new g(e,f(n,o),i):void 0!==n?new g(e,f(n,o)):new g(e):z(e)?G(m,e):x.call(m,e):new g(h(e)),t,m)}),w&&w(m,F),M(S(g),function(t){t in m||d(m,t,g[t])}),m.prototype=v):(m=e(function(t,e,n,i){l(t,m,s);var r,a,c,u=0,d=0;if(y(e)){if(!W(e))return z(e)?G(m,e):x.call(m,e);r=e,d=f(n,o);var g=e.byteLength;if(void 0===i){if(g%o)throw R("Wrong length");if((a=g-d)<0)throw R("Wrong length")}else if((a=p(i)*o)+d>g)throw R("Wrong length");c=a/o}else c=h(e),r=new L(a=c*o);for(P(t,{buffer:r,byteOffset:d,byteLength:a,length:c,view:new N(r)});u<c;)A(t,u++)}),w&&w(m,F),v=m.prototype=b(U)),v.constructor!==m&&d(v,"constructor",m),V&&d(v,V,s),C[s]=m,i({global:!0,forced:m!=g,sham:!j},C),"BYTES_PER_ELEMENT"in m||d(m,"BYTES_PER_ELEMENT",o),"BYTES_PER_ELEMENT"in v||d(v,"BYTES_PER_ELEMENT",o),E(s)}):t.exports=function(){}},function(t,e,n){"use strict";n.d(e,"a",function(){return o});var i=n(1),r=n(26);function o(t,e){return function(n){return n.lift(new a(t,e))}}var a=function(){function t(t,e){this.predicate=t,this.thisArg=e}return t.prototype.call=function(t,e){return e.subscribe(new s(t,this.predicate,this.thisArg))},t}(),s=function(t){function e(e,n,i){var r=t.call(this,e)||this;return r.predicate=n,r.thisArg=i,r.count=0,r}return i.c(e,t),e.prototype._next=function(t){var e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(t){return void this.destination.error(t)}e&&this.destination.next(t)},e}(r.a)},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},a=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var s=n(2),c=n(548),l=(n(9),n(31),n(135)),u=(n(22),n(14),n(383)),d=(n(75),n(6)),p=n(0),h=n(0),f=n(9),g=n(14),m=n(31),v=n(22),y=n(75),b=function(t){function e(e,n,i,r,o){var a=t.call(this,c.TiledMapEntity,e,n)||this;return a.path="tiled_maps",l.EntityRelationMapper.manyToOne(a,"bundle","bundleId",o),l.EntityRelationMapper.manyToOne(a,"floor","floorId",r),a}return r(e,t),e.prototype.getMapForFloors=function(t){return o(this,void 0,void 0,function(){return a(this,function(e){switch(e.label){case 0:return[4,this.findAll()];case 1:return[2,e.sent().filter(function(e){return-1!==t.indexOf(e.floor)})]}})})},e.ɵfac=function(t){return new(t||e)(h.ɵɵinject(f.RestService),h.ɵɵinject(g.GeoTransformationService),h.ɵɵinject(m.DatasetRepository),h.ɵɵinject(v.SiteModelRepository),h.ɵɵinject(y.BundleRepository))},e.ɵprov=h.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(u.ReferenceSystemAwareRestRepository);e.TiledMapRepository=b,h.ɵsetClassMetadata(b,[{type:p.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:f.RestService},{type:g.GeoTransformationService},{type:m.DatasetRepository},{type:v.SiteModelRepository},{type:y.BundleRepository}]},null),s.module("IVWebApp").service("TiledMapRepository",d.downgradeInjectable(b))},function(t,e,n){"use strict";function i(t){setTimeout(function(){throw t},0)}n.d(e,"a",function(){return i})},function(t,e,n){"use strict";n.r(e),n.d(e,"translate",function(){return ut}),n.d(e,"TranslocoService",function(){return dt}),n.d(e,"TranslocoDirective",function(){return bt}),n.d(e,"TranslocoPipe",function(){return wt}),n.d(e,"TranslocoModule",function(){return xt}),n.d(e,"defaultProviders",function(){return St}),n.d(e,"TRANSLOCO_LOADER",function(){return x}),n.d(e,"TRANSLOCO_CONFIG",function(){return W}),n.d(e,"defaultConfig",function(){return q}),n.d(e,"provideTranslocoConfig",function(){return K}),n.d(e,"translocoConfig",function(){return X}),n.d(e,"TRANSLOCO_TRANSPILER",function(){return B}),n.d(e,"DefaultTranspiler",function(){return z}),n.d(e,"FunctionalTranspiler",function(){return H}),n.d(e,"getFunctionArgs",function(){return G}),n.d(e,"TRANSLOCO_SCOPE",function(){return mt}),n.d(e,"TRANSLOCO_LOADING_TEMPLATE",function(){return gt}),n.d(e,"TRANSLOCO_LANG",function(){return ft}),n.d(e,"TestingLoader",function(){return Mt}),n.d(e,"TranslocoTestingModule",function(){return Et}),n.d(e,"TemplateHandler",function(){return ht}),n.d(e,"TRANSLOCO_INTERCEPTOR",function(){return Q}),n.d(e,"TRANSLOCO_FALLBACK_STRATEGY",function(){return tt}),n.d(e,"DefaultFallbackStrategy",function(){return et}),n.d(e,"TRANSLOCO_MISSING_HANDLER",function(){return Z}),n.d(e,"getBrowserCultureLang",function(){return At}),n.d(e,"getBrowserLang",function(){return Ct}),n.d(e,"getPipeValue",function(){return rt}),n.d(e,"getLangFromScope",function(){return it}),n.d(e,"getScopeFromLang",function(){return nt}),n.d(e,"getValue",function(){return M}),n.d(e,"setValue",function(){return E}),n.d(e,"size",function(){return C}),n.d(e,"isEmpty",function(){return A}),n.d(e,"isFunction",function(){return T}),n.d(e,"isString",function(){return O}),n.d(e,"isNumber",function(){return _}),n.d(e,"isObject",function(){return P}),n.d(e,"coerceArray",function(){return I}),n.d(e,"toCamelCase",function(){return k}),n.d(e,"isBrowser",function(){return D}),n.d(e,"isNil",function(){return R}),n.d(e,"isDefined",function(){return L}),n.d(e,"toNumber",function(){return N}),n.d(e,"isScopeObject",function(){return j}),n.d(e,"hasInlineLoader",function(){return V}),n.d(e,"unflatten",function(){return F}),n.d(e,"flatten",function(){return U}),n.d(e,"ɵc",function(){return pt}),n.d(e,"ɵb",function(){return J}),n.d(e,"ɵa",function(){return $});var i=n(439),r=n.n(i),o=n(221),a=n(62),s=n(636),c=n(535),l=n(637),u=n(536),d=n(276),p=n(1),h=n(0),f=n(93),g=n(76),m=n(32),v=n(373),y=n(228),b=n(346),w=n(71),S=function(){function t(t){this.translations=t}return t.prototype.getTranslation=function(t){return Object(f.a)(this.translations.get(t)||{})},t}(),x=new h.InjectionToken("TRANSLOCO_LOADER");function M(t,e){return t&&t.hasOwnProperty(e)?t[e]:e.split(".").reduce(function(t,e){return t&&t[e]},t)}function E(t,e,n){t=Object(p.a)({},t);var i=e.split("."),r=i.length-1;return i.reduce(function(t,e,i){return t[e]=i===r?n:Array.isArray(t[e])?t[e].slice():Object(p.a)({},t[e]),t&&t[e]},t),t}function C(t){return t?Array.isArray(t)?t.length:P(t)?Object.keys(t).length:t?t.length:0:0}function A(t){return 0===C(t)}function T(t){return"function"==typeof t}function O(t){return"string"==typeof t}function _(t){return"number"==typeof t}function P(t){return t&&"object"==typeof t&&!Array.isArray(t)}function I(t){return Array.isArray(t)?t:[t]}function k(t){return t.replace(/(?:^\w|[A-Z]|\b\w)/g,function(t,e){return 0==e?t.toLowerCase():t.toUpperCase()}).replace(/\s+|_|-|\//g,"")}function D(){return"undefined"!=typeof window}function R(t){return null==t}function L(t){return!1===R(t)}function N(t){return _(t)?t:O(t)&&!isNaN(Number(t)-parseFloat(t))?Number(t):null}function j(t){return t&&"string"==typeof t.scope}function V(t){return t&&P(t.loader)}function F(t){return r.a.unflatten(t,{safe:!0})}function U(t){return r()(t,{safe:!0})}var B=new h.InjectionToken("TRANSLOCO_TRANSPILER"),z=function(){function t(){}return t.prototype.transpile=function(t,e,n){var i=this;return void 0===e&&(e={}),O(t)?t.replace(/{{(.*?)}}/g,function(t,r){return r=r.trim(),L(e[r])?e[r]:L(n[r])?i.transpile(n[r],e,n):""}):(P(t)&&e&&(t=this.handleObject(t,e,n)),t)},t.prototype.handleObject=function(t,e,n){var i=this;void 0===e&&(e={});var r=t;return Object.keys(e).forEach(function(t){var o=M(r,t),a=M(e,t),s=i.transpile(o,a,n);r=E(r,t,s)}),r},t.ɵfac=function(e){return new(e||t)},t.ɵprov=h["ɵɵdefineInjectable"]({token:t,factory:function(e){return t.ɵfac(e)}}),t}();function G(t){for(var e=t?t.split(","):[],n=[],i=0;i<e.length;i++){for(var r=e[i].trim();"\\"===r[r.length-1];)i++,r=r.replace("\\",",")+e[i];n.push(r)}return n}var H=function(t){function e(e){var n=t.call(this)||this;return n.injector=e,n}return Object(p.c)(e,t),e.prototype.transpile=function(e,n,i){var r=this;if(void 0===n&&(n={}),O(e)){var o=e.replace(/\[\[\s*(\w+)\((.*)\)\s*]]/g,function(t,n,i){try{var o=r.injector.get(n);return o.transpile.apply(o,Object(p.h)(G(i)))}catch(t){var a="There is an error in: '"+e+"'. \n Check that the you used the right syntax in your translation and that the implementation of "+n+" is correct.";throw t.message.includes("NullInjectorError")&&(a="You are using the '"+n+"' function in your translation but no provider was found!"),new Error(a)}});return t.prototype.transpile.call(this,o,n,i)}return P(e)&&n&&(e=this.handleObject(e,n,i)),e},e.ctorParameters=function(){return[{type:h.Injector}]},e.ɵfac=function(t){return new(t||e)(h["ɵɵinject"](h.Injector))},e.ɵprov=h["ɵɵdefineInjectable"]({token:e,factory:function(t){return e.ɵfac(t)}}),e}(z),W=new h.InjectionToken("TRANSLOCO_CONFIG",{providedIn:"root",factory:function(){return{}}}),q={defaultLang:"en",reRenderOnLangChange:!1,prodMode:!1,failedRetries:2,availableLangs:[],missingHandler:{logMissingKey:!0,useFallbackTranslation:!1,allowEmpty:!1},flatten:{aot:!1}};function K(t){return void 0===t&&(t=q),{provide:W,useValue:Object(p.a)({},q,t)}}function X(t){return void 0===t&&(t=q),Object(p.a)({},q,t)}var Y,Z=new h.InjectionToken("TRANSLOCO_MISSING_HANDLER"),J=function(){function t(){}return t.prototype.handle=function(t,e){if(e.missingHandler.logMissingKey&&!e.prodMode){var n="Missing translation for '"+t+"'";console.warn("%c "+n,"font-size: 12px; color: red")}return t},t.ɵfac=function(e){return new(e||t)},t.ɵprov=h["ɵɵdefineInjectable"]({token:t,factory:function(e){return t.ɵfac(e)}}),t}(),Q=new h.InjectionToken("TRANSLOCO_INTERCEPTOR"),$=function(){function t(){}return t.prototype.preSaveTranslation=function(t,e){return t},t.prototype.preSaveTranslationKey=function(t,e,n){return e},t.ɵfac=function(e){return new(e||t)},t.ɵprov=h["ɵɵdefineInjectable"]({token:t,factory:function(e){return t.ɵfac(e)}}),t}(),tt=new h.InjectionToken("TRANSLOCO_FALLBACK_STRATEGY"),et=function(){function t(t){this.userConfig=t}return t.prototype.getNextLangs=function(t){var e=this.userConfig.fallbackLang;if(!e)throw new Error("When using the default fallback, a fallback language must be provided in the config!");return Array.isArray(e)?e:[e]},t.ctorParameters=function(){return[{type:void 0,decorators:[{type:h.Inject,args:[W]}]}]},t}();function nt(t){if(!t)return"";var e=t.split("/");return e.pop(),e.join("/")}function it(t){return t?t.split("/").pop():""}function rt(t,e,n){if(void 0===n&&(n="|"),O(t)){var i=t.split(n),r=i.pop();return r===e?[!0,i.toString()]:[!1,r]}return[!1,""]}function ot(t,e){return!1===Object(p.f)(rt(e,"static"),1)[0]&&t.config.reRenderOnLangChange}function at(t){return t?function(t){return t}:Object(o.a)(1)}function st(t,e){return V(t)?function(t,e){return Object.keys(t).reduce(function(n,i){return n[e+"/"+i]=t[i],n},{})}(t.loader,e):null}function ct(t){return{scope:nt(t)||null,langName:it(t),lang:t}}function lt(t,e,n,i){if(n){if(!1===T(n[t]))throw"You're using an inline loader but didn't provide a loader for "+t;return n[t]().then(function(t){return t.default?t.default:t})}return e.getTranslation(t,i)}function ut(t,e,n){return void 0===e&&(e={}),Y.translate(t,e,n)}var dt=function(){function t(t,e,n,i,r,o){var a=this;this.loader=t,this.parser=e,this.missingHandler=n,this.interceptor=i,this.userConfig=r,this.fallbackStrategy=o,this.translations=new Map,this.cache=new Map,this.firstFallbackLang=null,this.availableLangs=[],this.isResolvedMissingOnce=!1,this.events=new m.a,this.events$=this.events.asObservable(),this.failedCounter=0,this.failedLangs=new Set,this.loader||(this.loader=new S(this.translations)),Y=this,this.mergedConfig=function(t,e){return Object(p.a)({},t,e,{missingHandler:Object(p.a)({},t.missingHandler,e.missingHandler),flatten:Object(p.a)({},t.flatten,e.flatten)})}(q,r),this.setAvailableLangs(this.mergedConfig.availableLangs),this.setFallbackLangForMissingTranslation(this.mergedConfig),this.setDefaultLang(this.mergedConfig.defaultLang),this.lang=new v.a(this.getDefaultLang()),this.langChanges$=this.lang.asObservable(),this.subscription=this.events$.subscribe(function(t){if("translationLoadSuccess"===t.type&&t.wasFailure){var e=it(t.payload.lang);a.setActiveLang(e)}})}return Object.defineProperty(t.prototype,"config",{get:function(){return this.mergedConfig},enumerable:!0,configurable:!0}),t.prototype.getDefaultLang=function(){return this.defaultLang},t.prototype.setDefaultLang=function(t){this.defaultLang=t},t.prototype.getActiveLang=function(){return this.lang.getValue()},t.prototype.setActiveLang=function(t){return this.lang.next(t),this.parser.onLangChanged&&this.parser.onLangChanged(t),this},t.prototype.setAvailableLangs=function(t){this.availableLangs=t},t.prototype.getAvailableLangs=function(){return this.availableLangs},t.prototype.load=function(t,e){var n,i,r,o,d,p=this;if(void 0===e&&(e={}),!1===this.cache.has(t)){var h=void 0,m=this._isLangScoped(t),v=m?nt(t):null;if(this.useFallbackTranslation(t)){var b=m?v+"/"+this.firstFallbackLang:this.firstFallbackLang,w=(n=t,i=b,r=this.loader,o=e.inlineLoader,d={scope:v},[n,i].map(function(t){var e=lt(t,r,o,d);return Object(g.a)(e).pipe(Object(a.a)(function(e){return{translation:e,lang:t}}))}));h=Object(y.a)(w)}else{var S=lt(t,this.loader,e.inlineLoader,{scope:v});h=Object(g.a)(S)}var x=h.pipe(Object(s.a)(this.config.failedRetries),Object(c.a)(function(e){Array.isArray(e)?e.forEach(function(e){p.handleSuccess(e.lang,e.translation),e.lang!==t&&p.cache.set(e.lang,Object(f.a)({}))}):p.handleSuccess(t,e)}),Object(l.a)(function(){return p.handleFailure(t,e)}),Object(u.a)(1));this.cache.set(t,x)}return this.cache.get(t)},t.prototype.translate=function(t,e,n){var i=this;if(void 0===e&&(e={}),void 0===n&&(n=this.getActiveLang()),!t)return t;var r=this.resolveLangAndScope(n),o=r.scope,a=r.resolveLang;if(Array.isArray(t))return t.map(function(t){return i.translate(o?o+"."+t:t,e,a)});t=o?o+"."+t:t;var s=this.getTranslation(a),c=s[t];return c?this.parser.transpile(c,e,s):this._handleMissingKey(t,c,e)},t.prototype.selectTranslate=function(t,e,n,i){var r=this;void 0===i&&(i=!1);var o=null,s=function(n,o){return r.load(n,o).pipe(Object(a.a)(function(){return i?r.translateObject(t,e,n):r.translate(t,e,n)}))};if(R(n))return this.langChanges$.pipe(Object(d.a)(function(t){return s(t)}));if(j(n)){var c=n;n=c.scope,o=st(c,c.scope)}if(n=n,this.isLang(n)||this.isScopeWithLang(n))return s(n);var l=n;return this.langChanges$.pipe(Object(d.a)(function(t){return s(l+"/"+t,{inlineLoader:o})}))},t.prototype.isScopeWithLang=function(t){return this.isLang(it(t))},t.prototype.translateObject=function(t,e,n){var i,r,o=this;if(void 0===n&&(n=this.getActiveLang()),O(t)||Array.isArray(t)){if(Array.isArray(t))return t.map(function(t){return o.translateObject(c?c+"."+t:t,e,s)});var a=this.resolveLangAndScope(n),s=a.resolveLang,c=a.scope,l=this.getTranslation(s);t=c?c+"."+t:t;var u=F(this.getObjectByKey(l,t));return A(u)?this.translate(t,e,n):this.parser.transpile(u,e,l)}var d=[];try{for(var h=Object(p.j)(this.getEntries(t)),f=h.next();!f.done;f=h.next()){var g=Object(p.f)(f.value,2),m=g[0],v=g[1];d.push(this.translateObject(m,v,n))}}catch(t){i={error:t}}finally{try{f&&!f.done&&(r=h.return)&&r.call(h)}finally{if(i)throw i.error}}return d},t.prototype.selectTranslateObject=function(t,e,n){var i=this;if(O(t)||Array.isArray(t))return this.selectTranslate(t,e,n,!0);var r=Object(p.f)(this.getEntries(t)),o=Object(p.f)(r[0],2),s=o[0],c=o[1],l=r.slice(1);return this.selectTranslateObject(s,c,n).pipe(Object(a.a)(function(t){var e,r,o=[t];try{for(var a=Object(p.j)(l),s=a.next();!s.done;s=a.next()){var c=Object(p.f)(s.value,2),u=c[0],d=c[1];o.push(i.translateObject(u,d,n))}}catch(t){e={error:t}}finally{try{s&&!s.done&&(r=a.return)&&r.call(a)}finally{if(e)throw e.error}}return o}))},t.prototype.getTranslation=function(t){return t?this.translations.get(t)||{}:this.translations},t.prototype.selectTranslation=function(t){var e=this,n=t||this.getActiveLang();return this.load(n).pipe(Object(a.a)(function(){return e.getTranslation(n)}))},t.prototype.setTranslation=function(t,e,n){var i;void 0===e&&(e=this.getActiveLang()),void 0===n&&(n={});var r=Object(p.a)({},{merge:!0,emitChange:!0},n),o=nt(e),a=t;o&&(a=U(((i={})[this.getMappedScope(o)]=t,i)));var s=o?it(e):e,c=Object(p.a)({},r.merge&&this.getTranslation(s),a),l=this.mergedConfig.flatten.aot?c:U(c),u=this.interceptor.preSaveTranslation(l,s);this.translations.set(s,u),r.emitChange&&this.setActiveLang(this.getActiveLang())},t.prototype.setTranslationKey=function(t,e,n){var i;void 0===n&&(n=this.getActiveLang());var r=this.interceptor.preSaveTranslationKey(t,e,n),o=Object(p.a)({},this.getTranslation(n),((i={})[t]=r,i));this.setTranslation(o,n)},t.prototype.setFallbackLangForMissingTranslation=function(t){var e=t.fallbackLang,n=Array.isArray(e)?e[0]:e;this.useFallbackTranslation(n)&&e&&(this.firstFallbackLang=n)},t.prototype._handleMissingKey=function(t,e,n){if(this.config.missingHandler.allowEmpty&&""===e)return"";if(this.useFallbackTranslation()&&!this.isResolvedMissingOnce){this.isResolvedMissingOnce=!0;var i=this.translate(t,n,this.firstFallbackLang);return this.isResolvedMissingOnce=!1,i}return this.missingHandler.handle(t,this.getMissingHandlerData(),n)},t.prototype._isLangScoped=function(t){return-1===this.getAvailableLangsIds().indexOf(t)},t.prototype.isLang=function(t){return-1!==this.getAvailableLangsIds().indexOf(t)},t.prototype._loadDependencies=function(t,e){var n=it(t);return this._isLangScoped(t)&&!this.isLoadedTranslation(n)?Object(b.b)(this.load(n),this.load(t,{inlineLoader:e})):this.load(t,{inlineLoader:e})},t.prototype._completeScopeWithLang=function(t){return this._isLangScoped(t)&&!this.isLang(it(t))?t+"/"+this.getActiveLang():t},t.prototype._setScopeAlias=function(t,e){this.mergedConfig.scopeMapping||(this.mergedConfig.scopeMapping={}),this.mergedConfig.scopeMapping[t]=e},t.prototype.ngOnDestroy=function(){this.subscription.unsubscribe()},t.prototype.isLoadedTranslation=function(t){return C(this.getTranslation(t))},t.prototype.getAvailableLangsIds=function(){return O(this.getAvailableLangs()[0])?this.getAvailableLangs():this.getAvailableLangs().map(function(t){return t.id})},t.prototype.getMissingHandlerData=function(){return Object(p.a)({},this.config,{activeLang:this.getActiveLang(),availableLangs:this.availableLangs,defaultLang:this.defaultLang})},t.prototype.useFallbackTranslation=function(t){return this.config.missingHandler.useFallbackTranslation&&t!==this.firstFallbackLang},t.prototype.handleSuccess=function(t,e){var n=this;this.setTranslation(e,t,{emitChange:!1}),this.failedCounter=0,this.events.next({wasFailure:!!this.failedLangs.size,type:"translationLoadSuccess",payload:ct(t)}),this.failedLangs.forEach(function(t){return n.cache.delete(t)}),this.failedLangs.clear()},t.prototype.handleFailure=function(t,e){var n=t.split("/"),i=(e.fallbackLangs||this.fallbackStrategy.getNextLangs(t))[this.failedCounter];if(this.failedLangs.add(t),this.cache.has(i))return this.handleSuccess(i,this.getTranslation(i)),w.a;var r=i===n[n.length-1];if(!i||r){var o="Unable to load translation and all the fallback languages";throw n.length>1&&(o+=", did you misspelled the scope name?"),new Error(o)}var a=i;return n.length>1&&(n[n.length-1]=i,a=n.join("/")),this.failedCounter++,this.events.next({type:"translationLoadFailure",payload:ct(t)}),this.load(a)},t.prototype.getMappedScope=function(t){var e=this.config.scopeMapping;return(void 0===e?{}:e)[t]||k(t)},t.prototype.resolveLangAndScope=function(t){var e,n=t;if(this._isLangScoped(t)){var i=it(t),r=this.isLang(i);n=r?i:this.getActiveLang(),e=this.getMappedScope(r?nt(t):t)}return{scope:e,resolveLang:n}},t.prototype.getObjectByKey=function(t,e){var n={},i=e+".";for(var r in t)r.startsWith(i)&&(n[r.replace(i,"")]=t[r]);return n},t.prototype.getEntries=function(t){return t instanceof Map?t.entries():Object.entries(t)},t.ctorParameters=function(){return[{type:void 0,decorators:[{type:h.Optional},{type:h.Inject,args:[x]}]},{type:void 0,decorators:[{type:h.Inject,args:[B]}]},{type:void 0,decorators:[{type:h.Inject,args:[Z]}]},{type:void 0,decorators:[{type:h.Inject,args:[Q]}]},{type:void 0,decorators:[{type:h.Inject,args:[W]}]},{type:void 0,decorators:[{type:h.Inject,args:[tt]}]}]},t.ngInjectableDef=Object(h.defineInjectable)({factory:function(){return new t(Object(h.inject)(x,8),Object(h.inject)(B),Object(h.inject)(Z),Object(h.inject)(Q),Object(h.inject)(W),Object(h.inject)(tt))},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)(h["ɵɵinject"](x,8),h["ɵɵinject"](B),h["ɵɵinject"](Z),h["ɵɵinject"](Q),h["ɵɵinject"](W),h["ɵɵinject"](tt))},t.ɵprov=h["ɵɵdefineInjectable"]({token:t,factory:function(e){return t.ɵfac(e)},providedIn:"root"}),t}(),pt=function(){function t(){}return t.propDecorators={html:[{type:h.Input}]},t.ɵfac=function(e){return new(e||t)},t.ɵcmp=h["ɵɵdefineComponent"]({type:t,selectors:[["ng-component"]],inputs:{html:"html"},decls:1,vars:1,consts:[[1,"transloco-loader-template",3,"innerHTML"]],template:function(t,e){1&t&&h["ɵɵelement"](0,"div",0),2&t&&h["ɵɵproperty"]("innerHTML",e.html,h["ɵɵsanitizeHtml"])},encapsulation:2}),t}(),ht=function(){function t(t,e){this.view=t,this.vcr=e,this.injector=this.vcr.injector}return t.prototype.attachView=function(){if(this.view instanceof h.TemplateRef)this.vcr.createEmbeddedView(this.view);else if(O(this.view)){var t=this.createComponent(pt);t.instance.html=this.view,t.hostView.detectChanges()}else this.createComponent(this.view)},t.prototype.detachView=function(){this.vcr.clear()},t.prototype.createComponent=function(t){var e=this.injector.get(h.ComponentFactoryResolver).resolveComponentFactory(t);return this.vcr.createComponent(e)},t}(),ft=new h.InjectionToken("TRANSLOCO_LANG"),gt=new h.InjectionToken("TRANSLOCO_LOADING_TEMPLATE"),mt=new h.InjectionToken("TRANSLOCO_SCOPE"),vt=function(){function t(){this.initialized=!1}return t.prototype.resolve=function(t){var e=void 0===t?{inline:void 0,provider:void 0,active:void 0}:t,n=e.inline,i=e.provider,r=e.active,o=r;if(this.initialized)return r;if(i){var a=Object(p.f)(rt(i,"static"),2);a[0],o=a[1]}if(n){var s=Object(p.f)(rt(n,"static"),2);s[0],o=s[1]}return this.initialized=!0,o},t.prototype.resolveLangBasedOnScope=function(t){return nt(t)?it(t):t},t.prototype.resolveLangPath=function(t,e){return e?e+"/"+t:t},t}(),yt=function(){function t(t){this.translocoService=t}return t.prototype.resolve=function(t){var e=void 0===t?{inline:void 0,provider:void 0}:t,n=e.inline,i=e.provider;if(n)return n;if(i){if(j(i)){var r=i,o=r.scope,a=r.alias,s=void 0===a?k(o):a;return this.translocoService._setScopeAlias(o,s),o}return i}},t}(),bt=function(){function t(t,e,n,i,r,o,a,s){this.translocoService=t,this.tpl=e,this.providerScope=n,this.providerLang=i,this.providedLoadingTpl=r,this.vcr=o,this.cdr=a,this.host=s,this.translationMemo={},this.params={},this.loaderTplHandler=null,this.initialized=!1,this.langResolver=new vt,this.scopeResolver=new yt(this.translocoService)}return t.prototype.ngOnInit=function(){var t=this,e=ot(this.translocoService,this.providerLang||this.inlineLang);this.subscription=this.translocoService.langChanges$.pipe(Object(d.a)(function(e){var n=t.langResolver.resolve({inline:t.inlineLang,provider:t.providerLang,active:e});return Array.isArray(t.providerScope)?Object(y.a)(t.providerScope.map(function(e){return t.resolveScope(n,e)})):t.resolveScope(n,t.providerScope)}),at(e)).subscribe(function(){t.currentLang=t.langResolver.resolveLangBasedOnScope(t.path),null===t.tpl?t.simpleStrategy():t.structuralStrategy(t.currentLang,t.inlineRead),t.cdr.markForCheck(),t.initialized=!0});var n=this.getLoadingTpl();!this.initialized&&n&&(this.loaderTplHandler=new ht(n,this.vcr),this.loaderTplHandler.attachView())},t.prototype.ngOnChanges=function(t){Object.keys(t).some(function(e){return!1===t[e].firstChange})&&this.simpleStrategy()},t.prototype.simpleStrategy=function(){this.detachLoader(),this.host.nativeElement.innerText=this.translocoService.translate(this.key,this.params,this.currentLang)},t.prototype.structuralStrategy=function(t,e){this.translationMemo={},this.view?this.view.context.$implicit=this.getTranslateFn(t,e):(this.detachLoader(),this.view=this.vcr.createEmbeddedView(this.tpl,{$implicit:this.getTranslateFn(t,e)}))},t.prototype.getTranslateFn=function(t,e){var n=this;return function(i,r){var o=e?e+"."+i:i,a=r?""+o+JSON.stringify(r):o;return n.translationMemo.hasOwnProperty(a)||(n.translationMemo[a]={params:r,value:n.translocoService.translate(o,r,t)}),n.translationMemo[a].value}},t.prototype.getLoadingTpl=function(){return this.inlineTpl||this.providedLoadingTpl},t.prototype.ngOnDestroy=function(){this.subscription&&this.subscription.unsubscribe()},t.prototype.detachLoader=function(){this.loaderTplHandler&&this.loaderTplHandler.detachView()},t.prototype.resolveScope=function(t,e){var n=this.scopeResolver.resolve({inline:this.inlineScope,provider:e});this.path=this.langResolver.resolveLangPath(t,n);var i=st(e,n);return this.translocoService._loadDependencies(this.path,i)},t.ctorParameters=function(){return[{type:dt},{type:h.TemplateRef,decorators:[{type:h.Optional}]},{type:void 0,decorators:[{type:h.Optional},{type:h.Inject,args:[mt]}]},{type:void 0,decorators:[{type:h.Optional},{type:h.Inject,args:[ft]}]},{type:void 0,decorators:[{type:h.Optional},{type:h.Inject,args:[gt]}]},{type:h.ViewContainerRef},{type:h.ChangeDetectorRef},{type:h.ElementRef}]},t.propDecorators={key:[{type:h.Input,args:["transloco"]}],params:[{type:h.Input,args:["translocoParams"]}],inlineScope:[{type:h.Input,args:["translocoScope"]}],inlineRead:[{type:h.Input,args:["translocoRead"]}],inlineLang:[{type:h.Input,args:["translocoLang"]}],inlineTpl:[{type:h.Input,args:["translocoLoadingTpl"]}]},t.ɵfac=function(e){return new(e||t)(h["ɵɵdirectiveInject"](dt),h["ɵɵdirectiveInject"](h.TemplateRef,8),h["ɵɵdirectiveInject"](mt,8),h["ɵɵdirectiveInject"](ft,8),h["ɵɵdirectiveInject"](gt,8),h["ɵɵdirectiveInject"](h.ViewContainerRef),h["ɵɵdirectiveInject"](h.ChangeDetectorRef),h["ɵɵdirectiveInject"](h.ElementRef))},t.ɵdir=h["ɵɵdefineDirective"]({type:t,selectors:[["","transloco",""]],inputs:{params:["translocoParams","params"],key:["transloco","key"],inlineScope:["translocoScope","inlineScope"],inlineRead:["translocoRead","inlineRead"],inlineLang:["translocoLang","inlineLang"],inlineTpl:["translocoLoadingTpl","inlineTpl"]},features:[h["ɵɵNgOnChangesFeature"]]}),t}(),wt=function(){function t(t,e,n,i){this.translocoService=t,this.providerScope=e,this.providerLang=n,this.cdr=i,this.subscription=null,this.lastValue="",this.langResolver=new vt,this.scopeResolver=new yt(this.translocoService),this.listenToLangChange=ot(this.translocoService,this.providerLang)}return t.prototype.transform=function(t,e,n){var i=this;if(!t)return t;var r=e?""+t+JSON.stringify(e):t;return r===this.lastKey||(this.lastKey=r,this.subscription&&this.subscription.unsubscribe(),this.subscription=this.translocoService.langChanges$.pipe(Object(d.a)(function(t){var e=i.langResolver.resolve({inline:n,provider:i.providerLang,active:t});return Array.isArray(i.providerScope)?Object(y.a)(i.providerScope.map(function(t){return i.resolveScope(e,t)})):i.resolveScope(e,i.providerScope)}),at(this.listenToLangChange)).subscribe(function(){return i.updateValue(t,e)})),this.lastValue},t.prototype.ngOnDestroy=function(){this.subscription&&this.subscription.unsubscribe()},t.prototype.updateValue=function(t,e){var n=this.langResolver.resolveLangBasedOnScope(this.path);this.lastValue=this.translocoService.translate(t,e,n),this.cdr.markForCheck()},t.prototype.resolveScope=function(t,e){var n=this.scopeResolver.resolve({inline:void 0,provider:e});this.path=this.langResolver.resolveLangPath(t,n);var i=st(e,n);return this.translocoService._loadDependencies(this.path,i)},t.ctorParameters=function(){return[{type:dt},{type:void 0,decorators:[{type:h.Optional},{type:h.Inject,args:[mt]}]},{type:void 0,decorators:[{type:h.Optional},{type:h.Inject,args:[ft]}]},{type:h.ChangeDetectorRef}]},t.ɵfac=function(e){return new(e||t)(h["ɵɵdirectiveInject"](dt),h["ɵɵdirectiveInject"](mt,8),h["ɵɵdirectiveInject"](ft,8),h["ɵɵinjectPipeChangeDetectorRef"]())},t.ɵpipe=h["ɵɵdefinePipe"]({name:"transloco",type:t,pure:!1}),t}(),St=[{provide:B,useClass:z},{provide:Z,useClass:J},{provide:Q,useClass:$},{provide:tt,useClass:et,deps:[W]}],xt=function(){function t(){}return t.ɵmod=h["ɵɵdefineNgModule"]({type:t}),t.ɵinj=h["ɵɵdefineInjector"]({factory:function(e){return new(e||t)},providers:[St]}),("undefined"==typeof ngJitMode||ngJitMode)&&h["ɵɵsetNgModuleScope"](t,{declarations:[bt,wt,pt],exports:[bt,wt]}),t}(),Mt=function(){function t(t){this.langs=t}return t.prototype.getTranslation=function(t){return Object(f.a)(this.langs[t])},t.ctorParameters=function(){return[{type:void 0,decorators:[{type:h.Inject,args:["translocoLangs"]}]}]},t.ɵfac=function(e){return new(e||t)(h["ɵɵinject"]("translocoLangs"))},t.ɵprov=h["ɵɵdefineInjectable"]({token:t,factory:function(e){return t.ɵfac(e)}}),t}(),Et=function(){function t(){}return t.withLangs=function(e,n){return void 0===n&&(n={}),{ngModule:t,providers:[{provide:"translocoLangs",useValue:e},{provide:x,useClass:Mt},St,{provide:W,useValue:X(Object(p.a)({prodMode:!0,missingHandler:{logMissingKey:!1}},n))}]}},t.ɵmod=h["ɵɵdefineNgModule"]({type:t}),t.ɵinj=h["ɵɵdefineInjector"]({factory:function(e){return new(e||t)},imports:[xt]}),("undefined"==typeof ngJitMode||ngJitMode)&&h["ɵɵsetNgModuleScope"](t,{exports:[xt]}),t}();function Ct(){var t=At();if(!1!==D()&&t)return-1!==t.indexOf("-")&&(t=t.split("-")[0]),-1!==t.indexOf("_")&&(t=t.split("_")[0]),t}function At(){if(!1!==D()){var t=window.navigator,e=t.languages?t.languages[0]:null;return e||t.language||t.browserLanguage||t.userLanguage}}},,function(t,e,n){"use strict";n.d(e,"a",function(){return u}),n.d(e,"b",function(){return l}),n.d(e,"c",function(){return d});var i=n(23),r=n(0),o=n(12),a=n(32),s=n(623),c=function(){function t(){}return t.prototype.create=function(t){return"undefined"==typeof MutationObserver?null:new MutationObserver(t)},t.ɵprov=Object(r["ɵɵdefineInjectable"])({factory:function(){return new t},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)},t}(),l=function(){function t(t){this._mutationObserverFactory=t,this._observedElements=new Map}return t.prototype.ngOnDestroy=function(){var t=this;this._observedElements.forEach(function(e,n){return t._cleanupObserver(n)})},t.prototype.observe=function(t){var e=this,n=Object(i.e)(t);return new o.a(function(t){var i=e._observeElement(n).subscribe(t);return function(){i.unsubscribe(),e._unobserveElement(n)}})},t.prototype._observeElement=function(t){if(this._observedElements.has(t))this._observedElements.get(t).count++;else{var e=new a.a,n=this._mutationObserverFactory.create(function(t){return e.next(t)});n&&n.observe(t,{characterData:!0,childList:!0,subtree:!0}),this._observedElements.set(t,{observer:n,stream:e,count:1})}return this._observedElements.get(t).stream},t.prototype._unobserveElement=function(t){this._observedElements.has(t)&&(this._observedElements.get(t).count--,this._observedElements.get(t).count||this._cleanupObserver(t))},t.prototype._cleanupObserver=function(t){if(this._observedElements.has(t)){var e=this._observedElements.get(t),n=e.observer,i=e.stream;n&&n.disconnect(),i.complete(),this._observedElements.delete(t)}},t.ctorParameters=function(){return[{type:c}]},t.ɵprov=Object(r["ɵɵdefineInjectable"])({factory:function(){return new t(Object(r["ɵɵinject"])(c))},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)(r["ɵɵinject"](c))},t}(),u=function(){function t(t,e,n){this._contentObserver=t,this._elementRef=e,this._ngZone=n,this.event=new r.EventEmitter,this._disabled=!1,this._currentSubscription=null}return Object.defineProperty(t.prototype,"disabled",{get:function(){return this._disabled},set:function(t){this._disabled=Object(i.c)(t),this._disabled?this._unsubscribe():this._subscribe()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"debounce",{get:function(){return this._debounce},set:function(t){this._debounce=Object(i.f)(t),this._subscribe()},enumerable:!0,configurable:!0}),t.prototype.ngAfterContentInit=function(){this._currentSubscription||this.disabled||this._subscribe()},t.prototype.ngOnDestroy=function(){this._unsubscribe()},t.prototype._subscribe=function(){var t=this;this._unsubscribe();var e=this._contentObserver.observe(this._elementRef);this._ngZone.runOutsideAngular(function(){t._currentSubscription=(t.debounce?e.pipe(Object(s.a)(t.debounce)):e).subscribe(t.event)})},t.prototype._unsubscribe=function(){this._currentSubscription&&this._currentSubscription.unsubscribe()},t.ctorParameters=function(){return[{type:l},{type:r.ElementRef},{type:r.NgZone}]},t.propDecorators={event:[{type:r.Output,args:["cdkObserveContent"]}],disabled:[{type:r.Input,args:["cdkObserveContentDisabled"]}],debounce:[{type:r.Input}]},t.ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](l),r["ɵɵdirectiveInject"](r.ElementRef),r["ɵɵdirectiveInject"](r.NgZone))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","cdkObserveContent",""]],inputs:{disabled:["cdkObserveContentDisabled","disabled"],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]}),t}(),d=function(){function t(){}return t.ɵmod=r["ɵɵdefineNgModule"]({type:t}),t.ɵinj=r["ɵɵdefineInjector"]({factory:function(e){return new(e||t)},providers:[c]}),("undefined"==typeof ngJitMode||ngJitMode)&&r["ɵɵsetNgModuleScope"](t,{declarations:[u],exports:[u]}),t}()},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}},o=this&&this.__spreadArrays||function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var i=Array(t),r=0;for(e=0;e<n;e++)for(var o=arguments[e],a=0,s=o.length;a<s;a++,r++)i[r]=o[a];return i};Object.defineProperty(e,"__esModule",{value:!0});var a=n(2),s=n(6),c=n(0),l=n(4),u=n(575),d=n(16),p=n(85),h=(n(22),n(55)),f=n(7),g=(n(28),n(17),n(146)),m=n(52),v=n(576),y=(n(65),n(66),n(217)),b=(n(281),n(144)),w=(n(27),n(130),n(41),n(168)),S=(n(121),n(21),n(1223)),x=n(1224),M=(n(90),n(31),n(8)),E=n(253),C=n(557),A=(n(73),n(14)),T=n(1225),O=n(7),_=(n(49),n(558)),P=n(1226),I=n(1227),k=n(0),D=n(22),R=n(28),L=n(65),N=n(17),j=n(66),V=n(281),F=n(27),U=n(41),B=n(121),z=n(90),G=n(21),H=n(31),W=n(49),q=n(130),K=n(73),X=function(){function t(t,e,n,i,r,o,a,s,c,l,u,p,h,f,g,m,v){var y=this;this.SiteModelRepository=t,this.FloorChangerService=e,this.ViewMenuService=n,this.ViewService=i,this.PointCloudMenuService=r,this.TransformService=o,this.IV=a,this.MeasurementRepository=s,this.UserService=c,this.ErrorService=l,this.MagnificationService=u,this.ImageRepository=p,this.TrackingService=h,this.DatasetRepository=f,this.ImageService=g,this.UoMService=m,this.UrlService=v,this.DATASET_INCLUSION_RADIUS_FOR_SCREENSHOT=10,this.MEASUREMENT_LOCATION_SEARCH_RADIUS=.01,this.onEmbeddedMeasurementParsed=new d.Signal,this.onMeasurementHovered=new d.Signal,this.onMeasurementPointClicked=new d.Signal,this.onMeasurementPointHovered=new d.Signal,this.measurementsUpdated=new d.Signal,this.measurementDeleted=new d.Signal,this.measurementModeExiting=new d.Signal,this.measurementToolSelectionChanged=new d.Signal,this.areaMeasurementPoints=[],this.measurements=[],this.errorHandler=this.ErrorService.createDefaultWrapper(),this.onEmbeddedMeasurementParsed.connect(function(t){return y.loadEmbeddedMeasurement(t)}),this.TransformService.onBeforeLocalReferenceSystemChange.connect(function(){y.measurements.forEach(function(t){return t.onBeforeReferenceSystemChangedEvent()}),y.updateMeasurementMode(void 0)}),this.TransformService.onAfterLocalReferenceSystemChange.connect(function(){y.measurements.forEach(function(t){return t.onReferenceSystemChangedEvent()}),y.measurementsUpdated.emit(!0)})}return t.prototype.setMeasurementHovered=function(t,e){this.measurements.forEach(function(n){return n.isHovered=e&&n===t}),t.visible&&this.onMeasurementHovered.emit()},t.prototype.takeScreenshot=function(t){return i(this,void 0,void 0,function(){var e,n,i,o,a,s,c,l,u;return r(this,function(r){switch(r.label){case 0:e=[],n=this.ViewService.mainView,i=n.getCurrentViewState(),n.enableScreenshotMode(),o=this.PointCloudMenuService.config.showPointCloud,a=n.renderer.domElement,s=0,c=t,r.label=1;case 1:return s<c.length?(l=c[s],u=(new Date).getTime(),[4,this.prepareViewForScreenshot(l)]):[3,4];case 2:r.sent(),e.push({data:a.toDataURL("image/jpeg"),height:a.clientHeight,width:a.clientWidth}),this.trackGtmSingleMeasurementsShareEvent(u),r.label=3;case 3:return s++,[3,1];case 4:return o&&!this.PointCloudMenuService.config.showPointCloud?(this.PointCloudMenuService.config.showPointCloud=!0,this.ViewMenuService.config.showPanoramas=!1):!o&&this.PointCloudMenuService.config.showPointCloud&&(this.PointCloudMenuService.config.showPointCloud=!1,this.ViewMenuService.config.showPanoramas=!0),o&&(i.image=void 0),[4,n.setCurrentViewState(i)];case 5:return r.sent(),n.disableScreenshotMode(),t.forEach(function(t){return t.object.setHovered(!1)}),[2,e]}})})},t.prototype.trackGtmSingleMeasurementsShareEvent=function(t){var e=new P.SingleMeasurementScreenshotRenderingTime,n=(((new Date).getTime()-t)/1e3).toFixed(1);e.elapsedTime(n),this.setEventUiDetails(e),this.setEventViewMode(e),this.TrackingService.trackPreDefinedEvent(e)},t.prototype.trackGtmAllShareMeasurementsElapsedTimeEvent=function(t){var e=new I.AllMeasurementsScreenshotsRenderingEvent,n=(((new Date).getTime()-t)/1e3).toFixed(1);e.elapsedTime(n),this.TrackingService.trackPreDefinedEvent(e)},t.prototype.setEventViewMode=function(t){this.PointCloudMenuService.config.showPointCloud?t.fromPointCoud():t.fromPanorama()},t.prototype.setEventUiDetails=function(t){var e=this.ViewService.mainView.getViewportByName(m.SplitViewportName.TOP_VIEW).width;1===e?t.fullMapUI():.5===e&&t.splitUI()},Object.defineProperty(t.prototype,"unsavedMeasurements",{get:function(){return this.measurements.filter(function(t){return!t.isSaved()})},enumerable:!0,configurable:!0}),t.prototype.lastMeasurementPoint=function(){return this.lastDistanceMeasurementPoint?this.lastDistanceMeasurementPoint:this.areaMeasurementPoints.length>0?this.areaMeasurementPoints[this.areaMeasurementPoints.length-1]:void 0},t.prototype.updateMeasurementMode=function(t,e){void 0===e&&(e=!1),this.removeCurrentMeasurement(e),this.currentMeasurementMode===t||void 0===t?(this.currentMeasurementMode=void 0,this.ViewMenuService.showLocationMarkers(!0)):(this.currentMeasurementMode=t,this.ViewMenuService.showLocationMarkers(!1)),this.measurementToolSelectionChanged.emit(t)},t.prototype.removeCurrentMeasurement=function(t){void 0===t&&(t=!1),(this.lastDistanceMeasurementPoint||0!==this.areaMeasurementPoints.length)&&(t||(this.sessionMetrics.discardMeasurements(),this.TrackingService.trackPreDefinedEvent((new S.MeasurementCanceledEvent).withTool(this.currentMeasurementMode).numberOfPoints(Math.max(1,this.areaMeasurementPoints.length)).withMagnifyingGlass(this.MagnificationService.isEnabled))),this.lastDistanceMeasurementPoint=void 0,this.areaMeasurementPoints=[])},t.prototype.addLastMeasurementPoint=function(t,e,n){return i(this,void 0,void 0,function(){var i,o;return r(this,function(r){switch(r.label){case 0:return e.name!==m.SplitViewportName.TOP_VIEW||n?[3,4]:(o=this.lastMeasurementPoint())?((i=t.clone()).z=o.z,[3,3]):[3,1];case 1:return[4,this.getMeasurementPosition(t)];case 2:i=r.sent(),r.label=3;case 3:return[3,5];case 4:i=t,r.label=5;case 5:return p.ToolSpec.of(this.currentMeasurementMode).type===p.ToolType.AREA?this.areaMeasurementPoints.push(i):this.lastDistanceMeasurementPoint=i,[2]}})})},t.prototype.endMeasurement=function(t,e){var n;if(void 0===e&&(e=!0),t instanceof g.AreaMeasurementObject3D)n=new v.AreaMeasurement({TransformService:this.TransformService,UoMService:this.UoMService},t,this.currentMeasurementMode,w.translate("Area"));else{if(!(t instanceof y.DistanceMeasurementObject3D))throw Error("Unknown measurement type");n=new u.DistanceMeasurement({TransformService:this.TransformService,UoMService:this.UoMService},t,this.currentMeasurementMode,w.translate("Distance"))}this.measurements.unshift(n),this.measurementsUpdated.emit(!1),e&&this.TrackingService.trackPreDefinedEvent((new x.MeasurementCompletedEvent).withTool(this.currentMeasurementMode).withSize(n.value).numberOfPoints(n.getPoints().length).withMagnifyingGlass(this.MagnificationService.isEnabled)),this.updateMeasurementMode(void 0,!0)},t.prototype.deleteMeasurements=function(t){return i(this,void 0,void 0,function(){var e;return r(this,function(n){switch(n.label){case 0:return this.deleteLocalMeasurements(t),e=Promise.all(this.createDeletePromisesForSavedMeasurements(t)),[4,this.errorHandler.wrap(e)];case 1:return n.sent(),this.sessionMetrics.discardMeasurements(t.length),this.measurementsUpdated.emit(!1),this.measurementDeleted.emit(),[2]}})})},t.prototype.prepareViewForScreenshot=function(e){return i(this,void 0,void 0,function(){var n,i,o,a,s;return r(this,function(r){switch(r.label){case 0:return n=e.getPointOfView(),i=this.ViewService.mainView,this.measurements.forEach(function(t){return t.object.visible=t===e}),e.object.setHovered(!0),n?[3,2]:(this.PointCloudMenuService.config.showPointCloud=!1,i.getMapLayer().targetViewport.cameraController.centerOn(e.object.getCenterLocation()),i.setTopViewFullscreen(),i.fitMapToBounds((new l.Box3).setFromPoints(e.getPoints())),[4,i.updateFloorPlansForScreenshot(e.object.getCenterLocation())]);case 1:return r.sent(),[2];case 2:return i.setTopAndPerspectiveSplit(),o=this.TransformService.globalToLocal.transform(n.location.clone()),n.imageId?[4,this.ImageRepository.findOne(n.imageId,!1)]:[3,4];case 3:return s=r.sent(),[3,5];case 4:s=void 0,r.label=5;case 5:return(a=s)&&this.PointCloudMenuService.config.showPointCloud?(this.PointCloudMenuService.config.showPointCloud=!1,this.ViewMenuService.config.showPanoramas=!0):a||this.PointCloudMenuService.config.showPointCloud||(this.PointCloudMenuService.config.showPointCloud=!0,this.ViewMenuService.config.showPanoramas=!1),this.PointCloudMenuService.config.showPointCloud&&this.enableDatasets(e.getPoints()),[4,i.setCurrentViewState({location:a?a.location:o,orientation:e.calculateViewOrientation(o),imageId:n.imageId,image:a,fov:t.MAX_FOV,mapBoundingBox:(new l.Box3).setFromPoints(e.getPoints())})];case 6:return r.sent(),[2]}})})},t.prototype.enableDatasets=function(t){var e=this;this.DatasetRepository.data.forEach(function(n){return n.pointCloudVisible=void 0!==t.find(function(t){return n.distanceToBoundingBox(t)<e.DATASET_INCLUSION_RADIUS_FOR_SCREENSHOT})})},t.prototype.deleteLocalMeasurements=function(t){this.measurements=this.measurements.filter(function(e){return-1===t.indexOf(e)}),t.forEach(function(t){return t.disposeObject()})},t.prototype.createDeletePromisesForSavedMeasurements=function(t){var e=this;return t.filter(function(t){return e.UserService.canSaveMeasurements()&&t.id}).map(function(t){return e.MeasurementRepository.remove(t)})},t.prototype.saveMeasurements=function(t){return i(this,void 0,void 0,function(){var e;return r(this,function(n){switch(n.label){case 0:return[4,this.errorHandler.wrap(this.MeasurementRepository.save(t))];case 1:return e=n.sent(),this.updateStaleMeasurements(t,e),this.sessionMetrics.saveMeasurements(e.length),[2]}})})},t.prototype.updateStaleMeasurements=function(t,e){var n,i;if(e){var r=null===(i=t[0])||void 0===i?void 0:i.selected;this.measurements=this.measurements.filter(function(e){return-1===t.indexOf(e)}),e.forEach(function(t){return t.selected=r}),(n=this.measurements).push.apply(n,e),this.sortMeasurementsByDateDesc(),t.forEach(function(t){return t.disposeObject()}),this.measurementsUpdated.emit(!1)}},t.prototype.toggleVisibility=function(t){for(var e=t.filter(function(t){return!0===t.visible}).length,n=0,i=t;n<i.length;n++)i[n].visible=0===e;this.measurementsUpdated.emit(!1)},t.prototype.navigateToMeasurement=function(e){return i(this,void 0,void 0,function(){var n,i,o,a,s,c,l,u,d,p=this;return r(this,function(r){switch(r.label){case 0:if(n=e.getPointOfView(),i=e.object.getCenterLocation(),this.ViewService.mainView.mapBoundingBoxPoints=e.getPoints(),i.length()>A.GeoTransformationService.RELOCATE_LOCAL_SYSTEM_THRESHOLD&&this.TransformService.setLocalCoordinateSystem(e.getGlobalPoints()[0]),n&&(this.PointCloudMenuService.isCloudVisible()||n.imageId))return[3,2];if(o=Number.MAX_VALUE,a=Number.MIN_VALUE,e.getPoints().map(function(t){return p.TransformService.localToGlobal.transform(t.clone())}).forEach(function(t){a=t.z>a?t.z:a,o=t.z<o?t.z:o}),!(s=O.filter(this.SiteModelRepository.dataMap,function(t){return t.type===h.SiteModelType.FLOOR&&t.getGlobalZMax()>=o&&t.getGlobalZMin()<=a})))throw new Error("No floors found to display the measurement!");return[4,this.ImageService.getClosestImage(i,void 0,s)];case 1:return c=r.sent(),l=e.calculateViewOrientation(c.location),[2,this.IV.moveToImage(c,l,void 0,t.MAX_FOV)];case 2:return u=this.TransformService.globalToLocal.transform(n.location.clone()),d=e.calculateViewOrientation(u),n&&n.imageId?[4,this.IV.moveToImageId(n.imageId,d,t.MAX_FOV)]:[3,4];case 3:return r.sent(),[3,6];case 4:return n.location?[4,this.IV.moveToGeoLocation(n.location,!1,d,void 0,t.MAX_FOV,void 0,!0)]:[3,6];case 5:r.sent(),r.label=6;case 6:return[2]}})})},t.prototype.getMeasurementPosition=function(e){return i(this,void 0,void 0,function(){var n,i,o,a;return r(this,function(r){switch(r.label){case 0:return[4,this.SiteModelRepository.findWithin(new l.Vector2(e.x,e.y),h.SiteModelType.FLOOR)];case 1:return n=r.sent(),i=f.intersectionWith(n,this.FloorChangerService.currentFloors),(o=i[0])?(a=o.zMin+t.DEFAULT_MEASUREMENT_HEIGHT,[2,new l.Vector3(e.x,e.y,a)]):[2,new l.Vector3(e.x,e.y,this.ViewService.mainView.getDefaultViewport().camera.position.z)]}})})},t.prototype.loadMeasurementsForCurrentUser=function(){return i(this,void 0,void 0,function(){var t;return r(this,function(e){switch(e.label){case 0:return t=this,[4,this.MeasurementRepository.findAll()];case 1:return t.measurements=o.apply(void 0,[e.sent()]),this.sortMeasurementsByDateDesc(),this.measurementsUpdated.emit(!1),[2]}})})},t.prototype.sortMeasurementsByDateDesc=function(){this.measurements.sort(function(t,e){return e.createdDate.getTime()-t.createdDate.getTime()})},t.prototype.promptOnUnsavedChanges=function(){return this.hasUnsavedChanges()&&this.UserService.canSaveMeasurements()?(this.readyToClose=new b.Deferred,this.measurementModeExiting.emit(),this.readyToClose.promise):Promise.resolve()},t.prototype.hasUnsavedChanges=function(){return f.some(this.measurements,function(t){return!t.isSaved()})},t.prototype.loadEmbeddedMeasurement=function(t){var e=this,n=_.default.toBuffer(t),i=C.MeasurementsBinarySerializer.importMeasurementsFromByteStream(n);0!==i.length&&i.reverse().forEach(function(t,n){e.currentMeasurementMode=t.type;var i,r=p.ToolSpec.of(t.type).initializer,o=t.points.map(function(t){return e.TransformService.globalToLocal.transform(t.clone())});switch(p.ToolSpec.of(t.type).type){case p.ToolType.AREA:i=new r(o,e.UoMService);break;case p.ToolType.DISTANCE:(i=new r(o[0],e.UoMService)).addPoint(o[1])}(t.povLocation||t.povImageId)&&i.setPointOfView(new E.PointOfView(t.povLocation,void 0,void 0,t.povImageId)),e.endMeasurement(i,!1),t.name&&(e.getLatestMeasurement().name=t.name),e.getLatestMeasurement().object.markNotFresh(),0===n&&e.navigateToMeasurement(e.getLatestMeasurement()).catch(M.handleWarning)})},t.prototype.getLatestMeasurement=function(){return this.measurements.length>0?this.measurements[0]:void 0},t.prototype.exportMeasurements=function(t){return i(this,void 0,void 0,function(){var e,n,i,o=this;return r(this,function(r){switch(r.label){case 0:return[4,Promise.all([this.takeScreenshot(t),this.getReadableMeasurementLocations(t)])];case 1:return e=r.sent(),n=e[0],i=e[1],[2,t.map(function(t,e){return{screenshot:n[e],measurement:t,url:o.UrlService.generateMeasurementsURL([t]),location:i[e]}})]}})})},t.prototype.getReadableMeasurementLocations=function(t){return i(this,void 0,void 0,function(){var e,n,i,o;return r(this,function(r){switch(r.label){case 0:for(e=[],n=0,i=t;n<i.length;n++)o=i[n],e.push(this.SiteModelRepository.findClosestWithGlobalCoordinates(o.getGlobalPoints()[0],this.MEASUREMENT_LOCATION_SEARCH_RADIUS));return[4,Promise.all(e)];case 1:return[2,r.sent().map(function(t){var e=t.filter(function(t){return t.type===h.SiteModelType.BUILDING}),n=t.filter(function(t){return t.type===h.SiteModelType.FLOOR}),i=t.filter(function(t){return t.type===h.SiteModelType.ROOM}),r=[];if(r.push.apply(r,i),r.push.apply(r,n),r.push.apply(r,e),0!==r.length)return new T.SiteModelReadableLocation(r[0])})]}})})},t.DEFAULT_MEASUREMENT_HEIGHT=1.5,t.MAX_FOV=150,t.ɵfac=function(e){return new(e||t)(k.ɵɵinject(D.SiteModelRepository),k.ɵɵinject(R.FloorChangerService),k.ɵɵinject(L.ViewMenuService),k.ɵɵinject(N.ViewService),k.ɵɵinject("PointCloudMenuService"),k.ɵɵinject(j.TransformService),k.ɵɵinject("IV"),k.ɵɵinject(V.MeasurementRepository),k.ɵɵinject(F.UserService),k.ɵɵinject(U.ErrorService),k.ɵɵinject(B.MagnificationService),k.ɵɵinject(z.ImageRepository),k.ɵɵinject(G.TrackingService),k.ɵɵinject(H.DatasetRepository),k.ɵɵinject(W.ImageService),k.ɵɵinject(q.UoMService),k.ɵɵinject(K.UrlService))},t.ɵprov=k.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.MeasurementsService=X,k.ɵsetClassMetadata(X,[{type:c.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:D.SiteModelRepository},{type:R.FloorChangerService},{type:L.ViewMenuService},{type:N.ViewService},{type:void 0,decorators:[{type:c.Inject,args:["PointCloudMenuService"]}]},{type:j.TransformService},{type:void 0,decorators:[{type:c.Inject,args:["IV"]}]},{type:V.MeasurementRepository},{type:F.UserService},{type:U.ErrorService},{type:B.MagnificationService},{type:z.ImageRepository},{type:G.TrackingService},{type:H.DatasetRepository},{type:W.ImageService},{type:q.UoMService},{type:K.UrlService}]},null),a.module("IVWebApp").service("MeasurementsService",s.downgradeInjectable(X))},function(t,e,n){var i=n(132);t.exports=function(t,e,n){if(i(t),void 0===e)return t;switch(n){case 0:return function(){return t.call(e)};case 1:return function(n){return t.call(e,n)};case 2:return function(n,i){return t.call(e,n,i)};case 3:return function(n,i,r){return t.call(e,n,i,r)}}return function(){return t.apply(e,arguments)}}},function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},function(t,e,n){var i=n(45),r=n(160),o=n(48),a=i("unscopables"),s=Array.prototype;null==s[a]&&o.f(s,a,{configurable:!0,value:r(null)}),t.exports=function(t){s[a][t]=!0}},function(t,e,n){var i=n(122),r=Math.max,o=Math.min;t.exports=function(t,e){var n=i(t);return n<0?r(n+e,0):o(n,e)}},function(t,e,n){"use strict";n.d(e,"a",function(){return r});var i=n(1),r=function(t){function e(e,n,i){var r=t.call(this)||this;return r.parent=e,r.outerValue=n,r.outerIndex=i,r.index=0,r}return i.c(e,t),e.prototype._next=function(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)},e.prototype._error=function(t){this.parent.notifyError(t,this),this.unsubscribe()},e.prototype._complete=function(){this.parent.notifyComplete(this),this.unsubscribe()},e}(n(26).a)},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(7),o=n(16);n(196),n(123),n(196),n(123);var a=n(135),s=(n(15),n(25)),c=(n(36),n(144)),l=n(6),u=n(0),d=n(0),p=n(196),h=n(123),f=n(15),g=n(36),m=function(){function t(t,e,n,i){var r=this;this.PoiTypeGroupRepository=t,this.PoiTypeRepository=e,this.ConfigService=n,this.AuthenticationService=i,this.poiTypesChanged=new o.Signal,this.initializeDeferred=new c.Deferred,this.initialized=this.initializeDeferred.promise,i.onAuthenticationChanged.connect(function(){return r.initialize()}),a.EntityRelationMapper.manyToOne(this.PoiTypeRepository,"poiTypeGroup","poiTypeGroupId",this.PoiTypeGroupRepository,!0),a.EntityRelationMapper.oneToMany(this.PoiTypeGroupRepository,"types",this.PoiTypeRepository,"poiTypeGroupId"),this.PoiTypeRepository.entityChanged.connect(function(){return r.poiTypesChanged.emit()}),this.PoiTypeRepository.entityRemoved.connect(function(){return r.poiTypesChanged.emit()}),this.PoiTypeGroupRepository.entityChanged.connect(function(){return r.poiTypesChanged.emit()}),this.PoiTypeGroupRepository.entityRemoved.connect(function(){return r.poiTypesChanged.emit()})}return Object.defineProperty(t.prototype,"types",{get:function(){return this.PoiTypeRepository.data},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"typeGroups",{get:function(){return this.PoiTypeGroupRepository.data},enumerable:!0,configurable:!0}),t.prototype.initialize=function(){var t=this;if(!this.AuthenticationService.dataAccessible)return this.PoiTypeRepository.resetCache(),this.PoiTypeGroupRepository.resetCache(),void(this.initialized=Promise.resolve());this.fetchAndMapData(!0).then(function(){return t.initPoiTypesVisibility()}).then(function(){return t.initializeDeferred.resolve()}).catch(function(){return t.initializeDeferred.reject()})},t.prototype.initPoiTypesVisibility=function(){var t=this;return this.ConfigService.initialized.then(function(){var e=t.ConfigService.getArray(s.Configs.POI_TYPES,!0);e?(t.setPoiTypeVisibility(!1),t.setPoiTypeVisibility(!0,e)):t.setPoiTypeVisibility(!0)})},t.prototype.createPoiType=function(){return this.PoiTypeRepository.create()},t.prototype.createPoiTypeGroup=function(){return this.PoiTypeGroupRepository.create()},t.prototype.isAnyVisible=function(){return r.some(this.types,"selected")},t.prototype.isPoiTypeVisible=function(t){var e=this.getTypeById(t);return!!e&&e.selected},t.prototype.setPoiTypeVisibility=function(t,e){for(var n=0,i=this.types;n<i.length;n++){var r=i[n];(!e||e.indexOf(r.id)>-1)&&(r.selected=t)}this.poiTypesChanged.emit()},t.prototype.getTypeById=function(t){return this.PoiTypeRepository.dataMap[t.toString()]},t.prototype.fetchAndMapData=function(t){var e=this.PoiTypeGroupRepository.findAll(t),n=this.PoiTypeRepository.findAll(t);return Promise.all([e,n])},t.ɵfac=function(e){return new(e||t)(d.ɵɵinject(p.PoiTypeGroupRepository),d.ɵɵinject(h.PoiTypeRepository),d.ɵɵinject(f.ConfigService),d.ɵɵinject(g.AuthenticationService))},t.ɵprov=d.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.PoiTypeService=m,d.ɵsetClassMetadata(m,[{type:u.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:p.PoiTypeGroupRepository},{type:h.PoiTypeRepository},{type:f.ConfigService},{type:g.AuthenticationService}]},null),i.module("IVWebApp").service("PoiTypeService",l.downgradeInjectable(m))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(70),s=(n(9),n(1034)),c=n(6),l=n(0),u=n(0),d=n(9),p=function(t){function e(e){var n=t.call(this,s.UserEntity,e)||this;return n.RestService=e,n.path="users",n.reportError=!1,n}return r(e,t),e.prototype._save=function(t){throw new Error("unsupported call to UserRepository")},e.prototype._update=function(t){throw new Error("unsupported call to UserRepository")},e.prototype.saveUser=function(t){var e=this;return this.RestService.postApi(this.path,t.toData(),void 0,this.reportError).then(function(t){return e.createFromData(t)}).then(function(t){return e.cacheEntities([t])[0]})},e.prototype.updateProfile=function(t){var e=this;return this._updateProfile(t).then(function(t){return e.cacheEntities([t])[0]})},e.prototype.updatePassword=function(t){return this._updatePassword(t)},e.prototype.updatePrimaryGroups=function(t){var e=this;return this._updatePrimaryGroups(t).then(function(t){return e.cacheEntities([t])[0]})},e.prototype.updateLock=function(t){return this._updateLock(t)},e.prototype._updateProfile=function(t){var e=this,n=this.path+"/"+String(t.id)+"/profile";return this.RestService.putApi(n,t.toData(),void 0,this.reportError).then(function(t){return e.createFromData(t)})},e.prototype._updatePassword=function(t){var e=this.path+"/"+String(t.id)+"/password";return this.RestService.putApi(e,t.toData(),void 0,this.reportError)},e.prototype._updatePrimaryGroups=function(t){var e=this,n=this.path+"/"+String(t.id)+"/primary_groups";return this.RestService.putApi(n,t.primaryGroups,void 0,this.reportError).then(function(t){return e.createFromData(t)})},e.prototype._updateLock=function(t){var e=this.path+"/"+String(t.id)+"lock";return this.RestService.putApi(e,t.toData(),void 0,this.reportError)},e.ɵfac=function(t){return new(t||e)(u.ɵɵinject(d.RestService))},e.ɵprov=u.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(a.RestRepository);e.UserRepository=p,u.ɵsetClassMetadata(p,[{type:l.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:d.RestService}]},null),o.module("IVWebApp").service("UserRepository",c.downgradeInjectable(p))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.INVALID_GEOMETRY="INVALID_GEOMETRY",t.OVERLAPPING_VOLUMES="OVERLAPPING_VOLUMES",t.INCORRECT_HIERARCHY_TYPE="INCORRECT_HIERARCHY_TYPE",t.FREE_SPACE_NAVIGATION_AREA_WITH_CHILDREN="FREE_SPACE_NAVIGATION_AREA_WITH_CHILDREN",t.CHILD_NOT_CONTAINED_IN_PARENT_ENTITY="CHILD_NOT_CONTAINED_IN_PARENT_ENTITY",t.HEIGHT_NOT_CONTAINED_IN_PARENT="HEIGHT_NOT_CONTAINED_IN_PARENT"}(e.ViolationType||(e.ViolationType={}));var i=function(){function t(){}return t.prototype.fillFromData=function(t){this.type=t.type},t}();e.SiteModelViolation=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.POI="POI",t.SITE_MODEL="SITE_MODEL"}(e.SearchResultType||(e.SearchResultType={}))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(83),n(20)),o=n(7),a=(n(28),n(180)),s=(n(73),n(40)),c=(n(15),n(25)),l=(n(104),n(39),n(6)),u=n(0),d=n(0),p=n(39),h=n(83),f=n(73),g=n(28),m=n(15),v=n(104),y=function(){function t(t,e,n,i,r,o,a,s){var c=this;this.PoiService=t,this.SiteModelService=e,this.UrlService=n,this.gettextCatalog=i,this.FloorChangerService=r,this.ConfigService=o,this.IV=a,this.RouteService=s,this.resultsList={show:!1,query:"",results:void 0,selectedResult:void 0,allPoiResultsFetched:!1,allSiteModelResultsFetched:!1,areAllResultsFetched:function(){return this.allPoiResultsFetched&&this.allSiteModelResultsFetched}},this.selectedResult=void 0,this.PoiService.routeModeChanged.connect(function(){return c.hideSearchResultsList()}),this.RouteService.onRouteChanged.connect(function(){return c.hideSearchResultsList()})}return t.prototype.canDisplayResultDetails=function(){return this.isAnyResultSelected()&&this.ConfigService.getBoolean(c.Configs.UI_POI_PANEL_VISIBLE,!0)},t.prototype.canDisplayResultsList=function(){return this.resultsList.show&&!this.isAnyResultSelected()&&!this.PoiService.isRoutePhase()},t.prototype.isSearchBoxVisible=function(){return this.ConfigService.getBoolean(c.Configs.UI_SEARCH_VISIBLE,!0)},t.prototype.closeResult=function(t,e){e?e===a.SearchResultType.POI?this.closePoi():e===a.SearchResultType.SITE_MODEL&&this.closeSiteModel():(this.closeSiteModel(),this.closePoi()),t||(this.clearSearchResults(!0),this.selectedResult=void 0,this.resultsList.selectedResult=void 0)},t.prototype.isAnyResultSelected=function(){return!!this.PoiService.openedPoi||!!this.SiteModelService.selectedModel},t.prototype.startRoute=function(){var t=this;this.clearSearchResults(),this.PoiService.routeStart&&this.PoiService.routeEnd&&(this.UrlService.addRouteParameters(this.PoiService.routeStart,this.PoiService.routeEnd),this.RouteService.findRoute(this.PoiService.routeStart.location,this.PoiService.routeEnd.location).then(function(e){t.PoiService.wasRouteFound=e.instructions.length>0,t.PoiService.poisChanged.emit(),s.isMobileBrowser()&&r.blurActiveElement()}).catch(function(){}),r.blurActiveElement())},t.prototype.routeWithCoordinate=function(t,e){e?this.PoiService.routeStart=this.PoiService.getLocationAsPoi(t,!1):this.PoiService.routeEnd=this.PoiService.getLocationAsPoi(t,!1),this.PoiService.enterRouteMode(),this.PoiService.poisChanged.emit(),this.startRoute()},t.prototype.hideSearchResultsList=function(){this.resultsList.show=!1,this.clearResultsListState(),this.resultsList.hideResultsListCallback&&this.resultsList.hideResultsListCallback()},t.prototype.clearResultsListState=function(){this.resultsList.query=void 0,this.resultsList.results=void 0,this.resultsList.allPoiResultsFetched=!1,this.resultsList.allSiteModelResultsFetched=!1},t.prototype.clearSearchResults=function(t){void 0===t&&(t=!1),this.updatePoisToDisplay(),this.PoiService.focusedPoi=void 0,this.IV.isMovingToPoi()||t||!this.savedFloorName||(this.FloorChangerService.changeFloorByName(this.savedFloorName,!1).catch(function(){}),this.savedFloorName=void 0)},t.prototype.updatePoisToDisplay=function(){if(this.canDisplayResultsList()){var t=o.filter(this.resultsList.results,function(t){return t.resultType===a.SearchResultType.POI});this.PoiService.poisToDisplay=this.addRoutePointsToArray(o.map(t,function(t){return t.fakePoi}))}else this.PoiService.poisToDisplay=void 0},t.prototype.addRoutePointsToArray=function(t){var e=[];return this.PoiService.routeStart&&e.push(this.PoiService.routeStart),this.PoiService.routeEnd&&e.push(this.PoiService.routeEnd),t.concat(e)},t.prototype.closePoi=function(){this.PoiService.closeAndUnhighlightPoi(),this.UrlService.removeEntity()},t.prototype.closeSiteModel=function(){this.SiteModelService.deselectModel(),this.UrlService.removeEntity()},t.ɵfac=function(e){return new(e||t)(d.ɵɵinject(p.PoiService),d.ɵɵinject(h.SiteModelService),d.ɵɵinject(f.UrlService),d.ɵɵinject("gettextCatalog"),d.ɵɵinject(g.FloorChangerService),d.ɵɵinject(m.ConfigService),d.ɵɵinject("IV"),d.ɵɵinject(v.RouteService))},t.ɵprov=d.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.SearchService=y,d.ɵsetClassMetadata(y,[{type:u.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:p.PoiService},{type:h.SiteModelService},{type:f.UrlService},{type:void 0,decorators:[{type:u.Inject,args:["gettextCatalog"]}]},{type:g.FloorChangerService},{type:m.ConfigService},{type:void 0,decorators:[{type:u.Inject,args:["IV"]}]},{type:v.RouteService}]},null),i.module("IVWebApp").service("SearchService",l.downgradeInjectable(y))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(1202),o=(n(75),n(268),n(407),n(14),n(106),n(16));n(75),n(268),n(407);var a=n(6),s=n(0),c=n(0),l=n(14),u=n(268),d=n(407),p=n(75),h=n(106),f=function(){function t(t,e,n,i,a,s){this.GeoTransformationService=t,this.NodeRepository=e,this.EdgeRepository=n,this.BundleRepository=i,this.ProgressReportService=a,this.gettextCatalog=s,this.bundles=[],this.adjacencyList=new r.NavGraphEditingAdjacencyList,this.thresh=15,this.threshZ=5,this.constantsChanged=new o.Signal,this.navgraphChanged=new o.Signal,this.edgeCreated=new o.Signal,this.edgeRemoved=new o.Signal,this.nodeCreated=new o.Signal,this.nodeRemoved=new o.Signal,this.isMovingNodes=!1,this.initialized=!1}return t.prototype.clear=function(){this.initialized=!1,this.bundles=[],this.adjacencyList=new r.NavGraphEditingAdjacencyList},t.prototype.fetch=function(t){var e=this;if(void 0===t&&(t=!1),this.initialized&&!t)return Promise.resolve();var n=this.ProgressReportService.addTask(this.gettextCatalog.getString("Loading navigation graph..."),2,!1,!0,!0);return this.clear(),this.GeoTransformationService.initialized.then(function(){return e.BundleRepository.findAll(!0)}).then(function(t){e.bundles=t,e.bundles.length>0&&e.selectBundle(e.bundles[0].id)}).then(function(){return e.NodeRepository.findAll(!0)}).then(function(t){for(var i=0,r=t;i<r.length;i++){var o=r[i];e.adjacencyList.addNode(o)}n.itemDone()}).then(function(){return e.EdgeRepository.findAll(!0)}).then(function(t){e.adjacencyList.addEdges(t),n.itemDone()}).then(function(){e.initialized=!0}).catch(function(){})},t.prototype.selectBundle=function(t){this.currentBundleId=t},t.prototype.selectBundleForNode=function(t){var e=this.adjacencyList.getNode(t);this.selectBundle(e.bundle.id)},t.prototype.getCurrentBundle=function(){return this.getBundle(this.currentBundleId)},t.prototype.getBundle=function(t){return this.bundles.filter(function(e){return e.id===t})[0]},t.prototype.isAnyBundle=function(){return this.bundles.length>0},t.prototype.isNavGraphPresent=function(){return this.adjacencyList.adjacencyList.size>0},t.prototype.canWriteNode=function(t){return this.adjacencyList.getNode(t).canWrite},t.ɵfac=function(e){return new(e||t)(c.ɵɵinject(l.GeoTransformationService),c.ɵɵinject(u.NodeRepository),c.ɵɵinject(d.EdgeRepository),c.ɵɵinject(p.BundleRepository),c.ɵɵinject(h.ProgressReportService),c.ɵɵinject("gettextCatalog"))},t.ɵprov=c.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.NavGraphService=f,c.ɵsetClassMetadata(f,[{type:s.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:l.GeoTransformationService},{type:u.NodeRepository},{type:d.EdgeRepository},{type:p.BundleRepository},{type:h.ProgressReportService},{type:void 0,decorators:[{type:s.Inject,args:["gettextCatalog"]}]}]},null),i.module("IVWebApp").service("NavGraphService",a.downgradeInjectable(f))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(e){var n=t.call(this)||this;return n.resourceType=e,n}return r(e,t),e}(n(566).EditingOperation);e.NavGraphEditingOperation=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(4),a=function(t){function e(e,n,i){var r=t.call(this)||this;return r.view=e,r.onDragCallback=n,r.onDragEndCallback=i,r}return r(e,t),Object.defineProperty(e.prototype,"pickObject",{get:function(){return this._pickObject},set:function(t){this._pickObject=t,this.assignCallbacks()},enumerable:!0,configurable:!0}),e.isUsedInMapViewMode=function(t){return t.getCamera()instanceof o.OrthographicCamera},e.prototype.assignCallbacks=function(){var t=this;this._pickObject.onMouseOver=function(){t.onMouseOver(),e.isDragging||t.setMaximumOpacity()},this._pickObject.onMouseOut=function(){t.onMouseOut(),e.isDragging||t.restoreNonHighlightOpacity()},this._pickObject.onDrag=function(e,n){t.onDrag(e,n),t.onDragCallback()},this._pickObject.onDragStart=function(e,n){return t.manageDraggingStartHighlight(),t.onDragStart(e,n),!0},this._pickObject.onDragEnd=function(){t.onDragEnd(),t.manageDraggingStopHighlight(),t.onDragEndCallback()},this._pickObject.onDragCancel=function(){t.manageDraggingStopHighlight(),t.onDragCancel()}},e.prototype.setMaximumOpacity=function(){this.object.material instanceof o.Material&&this.objectOutline.material instanceof o.Material&&(1!==this.object.material.opacity||1!==this.objectOutline.material.opacity)&&(this.object.material.opacity=1,this.objectOutline.material.opacity=1,this.view.invalidateScene())},e.prototype.restoreNonHighlightOpacity=function(){this.object.material instanceof o.Material&&this.objectOutline.material instanceof o.Material&&(this.object.material.opacity=e.NON_HIGHLIGHTED_OPACITY,this.objectOutline.material.opacity=e.NON_HIGHLIGHTED_OPACITY,this.view.invalidateScene())},e.prototype.manageDraggingStartHighlight=function(){e.isDragging=!0,this.setMaximumOpacity()},e.prototype.manageDraggingStopHighlight=function(){e.isDragging=!1,this.restoreNonHighlightOpacity()},e.OUTLINE_COLOR=new o.Color(7829367),e.NON_HIGHLIGHTED_OPACITY=.7,e}(o.Object3D);e.HighlightableObject3D=a},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var i=n(89),r=function(){function e(e,n,r,o){var a=this;this.repository=e,this.gettextCatalog=n,this.promiseProgressWrapper=new i.PromiseProgressWrapper,this.domElement=t(r.context.firstElementChild),this.domElement.on("show.bs.modal",function(){return a.onShow()}),this.domElement.on("hidden.bs.modal",function(){return a.onHide()}),this.errorWrapper=o.createDefaultWrapper()}return e.prototype.onShow=function(){},e.prototype.onHide=function(){this.clearError()},e.prototype.exitEditor=function(){this.domElement.modal("hide")},e.prototype.save=function(t){var e=this,n=t||Promise.resolve();return this.reportErrorInline(this.promiseProgressWrapper.wrap(n.then(function(){return e.repository.save(e.model,!1).then(function(t){return e.exitEditor(),t[0]})})))},e.prototype.isSavingInProgress=function(){return this.promiseProgressWrapper.isInProgress},e.prototype.cancel=function(){this.exitEditor()},e.prototype.remove=function(){var t=this;return this.reportErrorInline(this.repository.remove(this.model,!1).then(function(){return t.exitEditor()}))},e.prototype.reportErrorInModal=function(t){return this.errorWrapper.wrap(t)},e.prototype.reportErrorInline=function(t){var e=this;return t.catch(function(t){return console.log(t),e.error={text:e.gettextCatalog.getString("Update failed"),status:t.status,statusText:t.statusText&&t.statusText.length?t.statusText:e.gettextCatalog.getString("Network error"),details:t.data?t.data.msg:""},Promise.reject(t)})},e.prototype.clearError=function(){this.error=void 0},e}();e.EntityEditorController=r}).call(this,n(19))},function(t,e,n){"use strict";n.d(e,"a",function(){return a});var i=n(1),r=n(32),o=n(33),a=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.value=null,e.hasNext=!1,e.hasCompleted=!1,e}return i.c(e,t),e.prototype._subscribe=function(e){return this.hasError?(e.error(this.thrownError),o.a.EMPTY):this.hasCompleted&&this.hasNext?(e.next(this.value),e.complete(),o.a.EMPTY):t.prototype._subscribe.call(this,e)},e.prototype.next=function(t){this.hasCompleted||(this.value=t,this.hasNext=!0)},e.prototype.error=function(e){this.hasCompleted||t.prototype.error.call(this,e)},e.prototype.complete=function(){this.hasCompleted=!0,this.hasNext&&t.prototype.next.call(this,this.value),t.prototype.complete.call(this)},e}(r.a)},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(152),o=n(6),a=n(0),s=n(0),c=function(){function t(t){this.localStorageService=t,this.CONTEXT_PATH=r.getBaseUrl()}return t.prototype.get=function(t){return this.localStorageService.get(this.makeKey(t))},t.prototype.set=function(t,e){return this.localStorageService.set(this.makeKey(t),e)},t.prototype.remove=function(t){return this.localStorageService.remove(this.makeKey(t))},t.prototype.makeKey=function(t){return this.CONTEXT_PATH+"#"+t},t.ɵfac=function(e){return new(e||t)(s.ɵɵinject("localStorageService"))},t.ɵprov=s.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.StorageService=c,s.ɵsetClassMetadata(c,[{type:a.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:a.Inject,args:["localStorageService"]}]}]},null),i.module("IVWebApp").service("StorageService",o.downgradeInjectable(c))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(9);var i=n(2),r=n(327),o=n(6),a=n(0),s=n(0),c=n(9),l=function(){function t(t,e){this.RestService=t,this.$timeout=e}return t.prototype.makeJobPromise=function(t){var e=this;return t.then(function(t){return e.waitOnJob(t.job_id)})},t.prototype.waitOnJob=function(e){var n=this;return this.RestService.getApi("jobs/"+e,{}).then(function(e){if(e.busy)return n.$timeout(t.REFRESH_CYCLE).then(function(){return n.waitOnJob(e.job_id)});var i=new r.Job;return i.fillFromData(e),i})},t.REFRESH_CYCLE=2e3,t.ɵfac=function(e){return new(e||t)(s.ɵɵinject(c.RestService),s.ɵɵinject("$timeout"))},t.ɵprov=s.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.JobService=l,s.ɵsetClassMetadata(l,[{type:a.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:c.RestService},{type:void 0,decorators:[{type:a.Inject,args:["$timeout"]}]}]},null),i.module("IVWebApp").service("JobService",o.downgradeInjectable(l))},function(t,e,n){var i=n(133);t.exports=Array.isArray||function(t){return"Array"==i(t)}},function(t,e,n){var i=n(461),r=n(354).concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return i(t,r)}},function(t,e,n){var i=n(29),r=n(467);t.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,n={};try{(t=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(n,[]),e=n instanceof Array}catch(t){}return function(n,o){return i(n),r(o),e?t.call(n,o):n.__proto__=o,n}}():void 0)},function(t,e){t.exports=function(t,e,n){if(!(t instanceof e))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return t}},function(t,e,n){"use strict";var i=n(134),r=n(48),o=n(173);t.exports=function(t,e,n){var a=i(e);a in t?r.f(t,a,o(0,n)):t[a]=n}},function(t,e,n){var i=n(239),r=n(42),o=n(58),a=n(48).f,s=n(236),c=n(244),l=s("meta"),u=0,d=Object.isExtensible||function(){return!0},p=function(t){a(t,l,{value:{objectID:"O"+ ++u,weakData:{}}})},h=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!r(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!o(t,l)){if(!d(t))return"F";if(!e)return"E";p(t)}return t[l].objectID},getWeakData:function(t,e){if(!o(t,l)){if(!d(t))return!0;if(!e)return!1;p(t)}return t[l].weakData},onFreeze:function(t){return c&&h.REQUIRED&&d(t)&&!o(t,l)&&p(t),t}};i[l]=!0},function(t,e,n){var i=n(29),r=n(132),o=n(45)("species");t.exports=function(t,e){var n,a=i(t).constructor;return void 0===a||null==(n=i(a)[o])?e:r(n)}},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(70),s=(n(9),n(1033)),c=(n(27),n(6)),l=n(0),u=n(0),d=n(9),p=n(27),h=function(t){function e(e,n){var i=t.call(this,s.PoiTypeGroupEntity,e)||this;return i.RestService=e,i.UserService=n,i.path="poi_type_groups",i}return r(e,t),e.prototype.create=function(){var e=t.prototype.create.call(this);return e.fillCurrentUsersGroups(this.UserService),e},e.ɵfac=function(t){return new(t||e)(u.ɵɵinject(d.RestService),u.ɵɵinject(p.UserService))},e.ɵprov=u.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(a.RestRepository);e.PoiTypeGroupRepository=h,u.ɵsetClassMetadata(h,[{type:l.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:d.RestService},{type:p.UserService}]},null),o.module("IVWebApp").service("PoiTypeGroupRepository",c.downgradeInjectable(h))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(20),r=n(2);function o(t,e){var n=document.createElement("a");n.style.display="none",document.body.appendChild(n),n.href=t,n.download=e||"",n.target="_blank",n.click(),document.body.removeChild(n)}!function(t){t.JSON="json",t.CSV="csv",t.LOG="log",t.NVD="nvd"}(e.FileType||(e.FileType={})),e.clickHiddenURL=o,e.downloadFile=function(t,e,n,r,a){var s=new Blob([t],{type:r});a&&(e+=e?"_":"",e+=new Date(Date.now()-6e4*(new Date).getTimezoneOffset()).toISOString().substr(0,10));var c=e+"."+n;i.invalidateAngular(function(){if(navigator.msSaveBlob)navigator.msSaveBlob(s,c);else{var t=(window.URL||window.webkitURL).createObjectURL(s);o(t,c),i.invalidateAngular(function(){(window.URL||window.webkitURL).revokeObjectURL(t)},100)}})},e.processJsonFile=function(t){return new Promise(function(e,n){t||n();var i=new FileReader;i.readAsText(t),i.onload=function(){try{var t=i.result;"string"!=typeof t?n(new Error("Unknown file reading result type")):e(r.fromJson(t))}catch(t){n(t)}}})},e.blobToFile=function(t,e){var n=t;return n.lastModifiedDate=new Date,n.name=e||"blob2file."+n.type.split("/")[1],t}},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(102),a=n(524),s=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.security=new a.SecurityInfo,e}return r(e,t),e.prototype.fill=function(e){t.prototype.fill.call(this,e),this.security=e.security?new a.SecurityInfo({can_write:e.security.canWrite,group_read:e.security.groupRead,group_write:e.security.groupWrite}):void 0},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.security=e.security?new a.SecurityInfo(e.security):void 0},e.prototype.fillDto=function(e){t.prototype.fillDto.call(this,e),e.security={group_read:this.security.groupRead,group_write:this.security.groupWrite}},e.prototype.fillCurrentUsersGroups=function(t){this.security.groupRead=t.getDefaultGroupRead(),this.security.groupWrite=t.getDefaultGroupWrite()},Object.defineProperty(e.prototype,"canWrite",{get:function(){return this.security.canWrite},enumerable:!0,configurable:!0}),e}(o.RepositoryObject);e.SecureRepositoryObject=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=(n(83),n(20)),s=(n(22),n(7)),c=n(377),l=(n(14),n(4)),u=(n(9),n(55)),d=n(16),p=n(318),h=n(89),f=n(6),g=n(0),m=n(0),v=n(83),y=n(14),b=n(22),w=n(9),S=function(t){function e(e,n,i,r){var o=t.call(this)||this;return o.SiteModelService=e,o.GeoTransformationService=n,o.SiteModelRepository=i,o.RestService=r,o.siteModel=o.SiteModelRepository.data,o.snappingEnabled=!0,o.isDraggingHeight=!1,o.isDragging=!1,o.redrawSiteModel=new d.Signal,o.showSiteModelErrorsModal=new d.Signal,o.savePromiseWrapper=new h.PromiseProgressWrapper,o._rectangleSnapping=!1,o.drawingMode=!1,o.cuttingMode=!1,o}return r(e,t),Object.defineProperty(e.prototype,"rectangleSnapping",{get:function(){return this._rectangleSnapping},set:function(t){this._rectangleSnapping=t,this.redrawSiteModel.emit()},enumerable:!0,configurable:!0}),e.prototype.addEntity=function(t,n,i){var r=n?n.children:this.siteModel,o=i?0:r.length,a=this.SiteModelRepository.create();if(void 0===t&&(t=n.type===u.SiteModelType.BUILDING?u.SiteModelType.FLOOR:n.type===u.SiteModelType.FLOOR?u.SiteModelType.ROOM:u.SiteModelType.CUSTOM),a.type=t,a.parent=n,a.globalNeedsUpdate=!0,this.stateDirty=!0,this.nameEntity(a,i),r.splice(o,0,a),t===u.SiteModelType.FLOOR)if(r.length>1&&!i){var s=r[r.length-2].zMin,c=r[r.length-2].zMax;r[r.length-1].zMin=c,r[r.length-1].zMax=c+Math.abs(c-s),r[r.length-1].height=Math.abs(c-s)}else if(r.length>1&&i){var l=r[1].zMin,d=r[1].zMax;r[0].zMin=l-Math.abs(d-l),r[0].zMax=l,r[0].height=Math.abs(d-l)}else r[r.length-1].zMin=0,r[r.length-1].zMax=e.DEFAULT_FLOOR_HEIGHT,r[r.length-1].height=e.DEFAULT_FLOOR_HEIGHT;else t===u.SiteModelType.CUSTOM||t===u.SiteModelType.ROOM?(r[r.length-1].zMin=n.zMin,r[r.length-1].zMax=n.zMax,r[r.length-1].height=n.height,this.enableDrawingMode(r[r.length-1])):this.enableDrawingMode(r[o]);this.selectEntity(r[o])},e.prototype.selectEntity=function(t,e){if(this.isCuttingMode())this.SiteModelService.onSelect.emit(t,!0,!0);else{this.lastSelectedEntity&&(this.lastSelectedEntity.selected=!1);var n=!1;this.lastSelectedEntity!==t&&(n=!0),t.polygon&&(t.polygon.boundary.length<1||t.polygon.boundary[0]===this.lastTempPoint)?this.enableDrawingMode(t):this.enableDrawingMode(),t.selected=!0,this.lastSelectedEntity=t,a.invalidateAngular(),e||this.SiteModelService.onSelect.emit(t,!0,n),this.redrawSiteModel.emit(!0)}},e.prototype.deleteEntity=function(t){if(void 0!==t.id)this.SiteModelRepository.removeLocal(t);else{var e=t.parent?t.parent.children:this.siteModel;e.splice(e.indexOf(t),1)}this.isDrawingMode()&&this.enableDrawingMode(),this.stateDirty=!0,a.invalidateAngular(),this.redrawSiteModel.emit(!0)},e.prototype.selectPoint=function(t,e){this.lastSelectedPoint=e,this.lastSelectedPoints=t,this.redrawSiteModel.emit()},e.prototype.isDrawingMode=function(){return this.drawingMode},e.prototype.isCuttingMode=function(){return this.cuttingMode},e.prototype.enableCuttingMode=function(t){t?(t.inherited&&this.unlockEntityToggle(t),this.selectEntity(t,!0),this.enableDrawingMode(t),t.polygon.holes[t.polygon.holes.length]=[],this.cuttingMode=!0):(this.cuttingMode=!1,this.enableDrawingMode())},e.prototype.addPointToCurrentEntity=function(t,e){var n=this.isCuttingMode()?this.lastSelectedEntity.polygon.holes[this.lastSelectedEntity.polygon.holes.length-1]:this.lastSelectedEntity.polygon.boundary;n[n.length-1]&&n[n.length-1]===this.lastTempPoint&&n.splice(-1,1),n.length>2&&t.distanceTo(n[0])<1&&(t=o.copy(n[0]),e?this.lastClosingPoint=t:(this.enableCuttingMode(),this.selectPoint(this.lastSelectedPoints,t))),e&&(this.lastTempPoint=t),n.push(t),this.markAsChanged(this.lastSelectedEntity),this.redrawSiteModel.emit()},e.prototype.getRectLineGeometries=function(){if(this.rectangleSnapping&&this.lastSelectedEntity&&!this.lastSelectedEntity.inherited)if(this.isDrawingMode()){if((e=this.isCuttingMode()?this.lastSelectedEntity.polygon.holes[this.lastSelectedEntity.polygon.holes.length-1]:this.lastSelectedEntity.polygon.boundary)[e.length-2]&&e[e.length-3]&&e[0]&&e[1])return[this.createRectGeometryFromPoints(e[e.length-2],e[e.length-3]),this.createRectGeometryFromPoints(e[0],e[1])]}else{if(!this.lastSelectedPoints)return;var t,e=this.lastSelectedPoints,n=this.lastSelectedPoints.indexOf(this.lastSelectedPoint),i=e.length,r=n+1<=i-1?n+1:1;t=n+2<=i-1?n+2:n+1<=i-1?1:2;var o=n-1>=0?n-1:i-1,a=n-2>=0?n-2:i-2;if(e[o]&&e[a]&&e[r]&&e[t])return[this.createRectGeometryFromPoints(e[o],e[a]),this.createRectGeometryFromPoints(e[r],e[t])]}},e.prototype.createRectGeometryFromPoints=function(t,e){var n=void 0===this.lastSelectedEntity.zMin&&this.lastSelectedEntity.children[0]?this.lastSelectedEntity.children[0].zMin:this.lastSelectedEntity.zMin,i=new l.Vector3(t.x,t.y,n),r=new l.Vector3(e.x,e.y,n),o=i.clone().sub(r),a=new l.Vector3(0,0,1),s=Math.PI/2;o.applyAxisAngle(a,s).setLength(1e3);var c=i.clone().add(o),u=i.clone().sub(o),d=new l.Geometry;return d.vertices.push(c,u),d},e.prototype.removeLastPointFromCurrentEntity=function(){var t=this.isCuttingMode()?this.lastSelectedEntity.polygon.holes[this.lastSelectedEntity.polygon.holes.length-1]:this.lastSelectedEntity.polygon.boundary;this.isDrawingMode()&&t[t.length-2]&&t.splice(-2,1),this.markAsChanged(this.lastSelectedEntity),this.redrawSiteModel.emit()},e.prototype.removeSelectedPoint=function(){if(this.lastSelectedPoint&&this.lastSelectedPoints){var t=this.lastSelectedPoints.indexOf(this.lastSelectedPoint);0===t||t===this.lastSelectedPoints.length-1?(this.lastSelectedPoints.splice(-1,1),this.lastSelectedPoints.splice(0,1),this.lastSelectedPoints.length>1&&this.lastSelectedPoints.push(this.lastSelectedPoints[0])):t>-1&&this.lastSelectedPoints.splice(t,1),this.lastSelectedPoints.length>3?this.selectPoint(this.lastSelectedPoints,this.lastSelectedPoints[t-1]):(this.lastSelectedPoints.length=0,this.selectEntity(this.lastSelectedEntity,!0)),this.markAsChanged(this.lastSelectedEntity)}this.redrawSiteModel.emit()},e.prototype.unlockEntityToggle=function(t){this.selectEntity(t,!0),t.inherited?(t.polygon=new c.LocalPolygon(this.GeoTransformationService),t.polygon.boundary=o.copy(t.parent.getPath()),t.polygon.holes=o.copy(t.parent.getHoles())):t.polygon=void 0,this.markAsChanged(t),this.redrawSiteModel.emit()},e.prototype.updateTop=function(t,n){if(this.markAsChanged(t),void 0!==t.height)if(t.height<=e.MIN_FLOOR_HEIGHT)t.height=e.MIN_FLOOR_HEIGHT;else{if(t.type===u.SiteModelType.FLOOR&&t.parent){var i=t.parent.children.indexOf(t);if(t.parent.children[i+1]&&t.parent.children[i+1].zMin<=t.zMax){if(Math.abs(t.parent.children[i+1].zMax-t.zMin-t.height)<=e.MIN_FLOOR_HEIGHT)return void(t.parent.children[i+1].height=e.MIN_FLOOR_HEIGHT);t.parent.children[i+1].zMin=t.zMin+t.height,this.updateHeight(t.parent.children[i+1],!1)}}t.zMax=t.zMin+t.height,n&&this.redrawSiteModel.emit(!0)}},e.prototype.updateBottom=function(t,n){if(this.markAsChanged(t),void 0!==t.height)if(t.height<=e.MIN_FLOOR_HEIGHT)t.height=e.MIN_FLOOR_HEIGHT;else{if(t.type===u.SiteModelType.FLOOR&&t.parent){var i=t.parent.children.indexOf(t);if(t.parent.children[i-1]&&t.parent.children[i-1].zMax>=t.zMin){if(Math.abs(t.zMax-t.height-t.parent.children[i-1].zMin)<=e.MIN_FLOOR_HEIGHT)return void(t.parent.children[i-1].height=e.MIN_FLOOR_HEIGHT);t.parent.children[i-1].zMax=t.zMax-t.height,this.updateHeight(t.parent.children[i-1],!1)}}t.zMin=t.zMax-t.height,n&&this.redrawSiteModel.emit(!0)}},e.prototype.updateHeight=function(t,e){this.markAsChanged(t),t.height=Math.floor(100*(t.zMax-t.zMin))/100,e&&this.redrawSiteModel.emit()},e.prototype.checkMinHeight=function(t){return t.zMax-e.MIN_FLOOR_HEIGHT},e.prototype.checkMaxHeight=function(t,n){if(t.parent&&t.type===u.SiteModelType.FLOOR){var i=t.parent.children.indexOf(t);if(!n&&t.parent.children[i+1]&&t.parent.children[i+1].height)return t.parent.children[i+1].height+t.height-e.MIN_FLOOR_HEIGHT;if(n&&t.parent.children[i-1]&&t.parent.children[i-1].height)return t.parent.children[i-1].height+t.height-e.MIN_FLOOR_HEIGHT}else if(t.parent)return t.parent.height;return 1/0},e.prototype.useOutlineAsHole=function(t){this.lastSelectedEntity.polygon.holes[this.lastSelectedEntity.polygon.holes.length-1]=o.copy(t.getPath()),this.enableCuttingMode(),this.redrawSiteModel.emit()},e.prototype.enableDrawingMode=function(t){this.resetTempDrawingProperties(this.siteModel),t?(t.polygon||(t.polygon=new c.LocalPolygon(this.GeoTransformationService)),t.drawing=!0,this.drawingMode=!0):(this.drawingMode=!1,this.redrawSiteModel.emit(!0))},e.prototype.cancelDrawingMode=function(){var t=this.isCuttingMode()?this.lastSelectedEntity.polygon.holes[this.lastSelectedEntity.polygon.holes.length-1]:this.lastSelectedEntity.polygon.boundary;if(t&&t.length>2){var e=o.copy(t[0]);e.equals(t[t.length-1])||t.push(e)}else this.isCuttingMode()?t.length=0:this.deleteEntity(this.lastSelectedEntity);this.enableCuttingMode()},e.prototype.markAsChanged=function(t){t.dimensionsChanged=!0,t.globalNeedsUpdate=!0,this.stateDirty=!0},e.prototype.hasChanges=function(){return this.stateDirty},e.prototype.resetChangeTracking=function(){this.stateDirty=!1},e.prototype.discardChanges=function(){var t=this;return this.SiteModelRepository.resetCache(),this.SiteModelRepository.findAll().then(function(){t.resetChangeTracking()})},e.prototype.promptOnUnsavedChanges=function(){return t.prototype.promptOnUnsavedChanges.call(this,"#confirmUnsavedSiteModel")},e.prototype.isSaveInProgress=function(){return this.savePromiseWrapper.isInProgress},e.prototype.resetTempDrawingProperties=function(t){var e=this;this.lastClosingPoint=void 0,o.forEach(t,function(t){t.drawing=!1,t.children.length&&e.resetTempDrawingProperties(t.children)})},e.prototype.nameEntity=function(t,e){if(t.type!==u.SiteModelType.FREE_SPACE_NAVIGATION&&t.type!==u.SiteModelType.BUILDING)if(t.parent){var n=t.parent.children,i=s.map(s.filter(s.map(n,"name"),function(t){return s.isFinite(s.toNumber(t))}),s.toNumber);if(0!==i.length){var r=e?s.min(i):s.max(i);t.name=""+(e?r-1:r+1)}else t.name=""+(t.type===u.SiteModelType.FLOOR?0:1)}else console.warn("nameEntity called for an entity with no parents!")},e.MIN_FLOOR_HEIGHT=.99,e.DEFAULT_FLOOR_HEIGHT=3,e.ɵfac=function(t){return new(t||e)(m.ɵɵinject(v.SiteModelService),m.ɵɵinject(y.GeoTransformationService),m.ɵɵinject(b.SiteModelRepository),m.ɵɵinject(w.RestService))},e.ɵprov=m.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(p.SaveDiscardDialogService);e.SiteModelEditorService=S,m.ɵsetClassMetadata(S,[{type:g.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:v.SiteModelService},{type:y.GeoTransformationService},{type:b.SiteModelRepository},{type:w.RestService}]},null),o.module("IVWebApp").service("SiteModelEditorService",f.downgradeInjectable(S))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(80);n(104),n(104);var s=n(7),c=n(319),l=(n(24),n(139),n(25)),u=(n(15),n(54),n(181),n(40)),d=(n(22),n(67)),p=(n(28),n(92)),h=n(6),f=n(0),g=n(0),m=n(104),v=n(24),y=n(139),b=n(54),w=n(15),S=n(181),x=n(28),M=n(22),E=function(){function t(){}return t.PANORAMA="PANORAMA",t.MAP="MAP",t}();e.RouteViewType=E;var C=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i)||this;return o.params=i,o.factory=r,o.sceneGroup.name="RouteLayer",o.params.distanceThreshold=i.distanceThreshold||100,o.trackSignal(o.factory.RouteService.onRouteChanged).connect(function(t){o.route=t,o.renderRoute()}),o.trackSignal(o.factory.FloorChangerService.onFloorChange).connect(function(){return o.renderRoute()}),o}return r(e,t),e.prototype.onCameraMoveEnd=function(t){this.renderRoute()},e.prototype.onBeforeRender=function(){if(this.route)for(var t=0,e=this.route.instructions;t<e.length;t++)e[t].onBeforeRender(this.view)},e.prototype.renderRoute=function(){this.route&&this.route.available&&this.factory.ModeService.isNormalMode()?this.params.visualization===E.MAP?this.renderRouteInstructions(this.route,!1):this.params.visualization===E.PANORAMA&&this.renderRouteInstructions(this.route,!0):d.removeChildrenOfObject3D(this.sceneGroup),this.view.invalidateScene()},e.prototype.renderRouteInstructions=function(t,n){d.removeChildrenOfObject3D(this.sceneGroup);var i=c.DEFAULT_ICON_SIZE;if(n||(this.metersPerPixel=(this.view.getCamera().right-this.view.getCamera().left)/this.view.getDefaultViewport().getWidth(),0!==(i=s.clamp(e.ICON_SIZE_FACTOR*this.metersPerPixel,0,e.MAX_ICON_SIZE))))for(var r=0,o=t.instructions;r<o.length;r++)o[r].render(this.view,this.sceneGroup,n,i)},e.prototype.onContextMenu=function(t){var e=this;if(!this.factory.LicenseService.isFeatureEnabled(p.LicenseFeatureType.ROUTING)||!this.factory.ConfigService.getBoolean(l.Configs.ROUTING_ENABLED,!1)||0===this.factory.SiteModelRepository.data.length||!this.factory.ModeService.isNormalMode()||u.isMobileBrowser())return[];var n=function(t,n,i){if(e.params.routeEntryHeight){var r=t.getPositionOnGroundPlane(n.x,n.y,e.params.routeEntryHeight(),t.getDefaultViewport());e.factory.SearchService.routeWithCoordinate(r,i)}else{var o=t.unprojectScreenCoordinates(n.x,n.y);e.factory.RaycastService.getCoordinates(t,o,!0).then(function(t){e.factory.SearchService.routeWithCoordinate(t.position,i)}).catch(function(){})}};return[{name:this.factory.gettextCatalog.getString("Route to here"),icon:"routeEnd",callback:function(){return n(e.view,t,!1)}},{name:this.factory.gettextCatalog.getString("Route from here"),icon:"routeStart",callback:function(){return n(e.view,t,!0)}}]},e.ICON_SIZE_FACTOR=15,e.MAX_ICON_SIZE=9,e}(a.SceneLayer);e.RouteLayer=C;var A=function(t){function e(e,n,i,r,o,a,s,c,l){var u=t.call(this)||this;return u.RouteService=e,u.ModeService=n,u.RaycastService=i,u.gettextCatalog=r,u.LicenseService=o,u.ConfigService=a,u.SearchService=s,u.FloorChangerService=c,u.SiteModelRepository=l,u}return r(e,t),e.prototype.create=function(t,e,n){return new C(t,e,n,this)},e.ɵfac=function(t){return new(t||e)(g.ɵɵinject(m.RouteService),g.ɵɵinject(v.ModeService),g.ɵɵinject(y.RaycastService),g.ɵɵinject("gettextCatalog"),g.ɵɵinject(b.LicenseService),g.ɵɵinject(w.ConfigService),g.ɵɵinject(S.SearchService),g.ɵɵinject(x.FloorChangerService),g.ɵɵinject(M.SiteModelRepository))},e.ɵprov=g.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(a.SceneLayerFactory);e.RouteLayerFactory=A,g.ɵsetClassMetadata(A,[{type:f.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:m.RouteService},{type:v.ModeService},{type:y.RaycastService},{type:void 0,decorators:[{type:f.Inject,args:["gettextCatalog"]}]},{type:b.LicenseService},{type:w.ConfigService},{type:S.SearchService},{type:x.FloorChangerService},{type:M.SiteModelRepository}]},null),o.module("IVWebApp").service("RouteLayerFactory",h.downgradeInjectable(A))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(124),s=n(101),c=(n(49),n(80)),l=(n(90),n(4)),u=n(136),d=(n(28),n(14),n(8)),p=n(67),h=n(402),f=(n(36),n(17),n(6)),g=n(0),m=(n(65),n(403)),v=n(0),y=n(49),b=n(65),w=n(90),S=n(28),x=n(14),M=n(17),E=n(36),C=function(t){function e(e,n,i,r,o,a,s,c,u,d,p){var h=t.call(this,e,n,i,r,u,c,p)||this;return h.IV=r,h.ImageService=o,h.ViewMenuService=a,h.ImageRepository=s,h.FloorChangerService=c,h.GeoTransformationService=u,h.ViewService=d,h.markerMaterials=[],h.markersVisible=!1,h.initOptionalParams(i),h.initLocationMarkerMaterials(e,i),h.trackSignal(h.ImageRepository.transformLocationAction).connect(function(){return h.updateSafe()}),h.trackSignal(a.onShowLocationMarkersChanged).connect(function(t){return h.onShowLocationMarkersChange(t)}),h.geometry=new l.CircleGeometry(.5,i.circleSegments),h}return r(e,t),e.prototype.initOptionalParams=function(t){this.params=t,this.params.distanceThreshold=this.params.distanceThreshold||20,this.params.circleSegments=this.params.circleSegments||12,this.params.hideMarkersTimeout=this.params.hideMarkersTimeout||3e3,this.params.markerColor=void 0!==this.params.markerColor?new l.Color(this.params.markerColor):new l.Color(16777215),this.params.markerOpacity=this.params.markerOpacity||.3,this.params.markerHighlightOpacity=this.params.markerHighlightOpacity||.7,this.params.markerBlending=void 0!==this.params.markerBlending?this.params.markerBlending:l.NormalBlending,this.params.isMoveMouseToShowEnabled=this.params.isMoveMouseToShowEnabled||function(){return!0},this.params.isVisibilityToggleEnabled=this.params.isVisibilityToggleEnabled||function(){return!1},this.params.isClickToShowEnabled=this.params.isClickToShowEnabled||function(){return!0},this.params.isSwappingViewsEnabled=this.params.isSwappingViewsEnabled||function(){return!1},this.params.viewportEventMask=this.params.viewportEventMask||new Map},e.prototype.initLocationMarkerMaterials=function(t,e){var n=s.getTextureLoader().load(this.params.locationMarkerPng,function(){return t.invalidateScene()});this.locationMarkerMaterial=this.getMarkerMaterial(e.markerColor,0,n);var i=s.getTextureLoader().load(this.params.locationMarkerHighlightPng,function(){return t.invalidateScene()});i.anisotropy=s.ANISOTROPIC_LEVEL,this.highlightLocationMarkerMaterial=this.getMarkerMaterial(e.markerColor,e.markerHighlightOpacity,i)},e.prototype.onShowLocationMarkersChange=function(t){t?this.updateSafe():this.clear()},e.prototype.onTransitionStart=function(t){t.image||this.clear()},e.prototype.onBeforeRender=function(){this.isOrthographicCameraSceneReadyToBeUpdated()&&(p.setMeshScreenSize(this.getActiveViewport(),this.sceneGroup.children,e.ORTHO_MARKER_SIZE,!1,!0),t.prototype.onBeforeRender.call(this,this.getActiveViewport().camera))},e.prototype.update=function(){var t=this;if(!1===this.ViewMenuService.config.showLocationMarkers)return this.clear(),void(this.visible=!0);this.getImages().then(function(e){t.sceneGroup&&(t.clear(),t.visible=!0,e.forEach(function(e){return t.sceneGroup.add(t.getLocationMesh(e))}),t.view.invalidateScene())}).catch(d.handleWarning)},e.prototype.clear=function(){for(this.visible=!1;this.sceneGroup.children.length>0;)this.sceneGroup.remove(this.sceneGroup.children[0]);this.view.invalidateScene()},e.prototype.onDestroy=function(){p.removeChildrenOfObject3D(this.sceneGroup),this.geometry&&this.geometry.dispose(),this.markerMaterials.forEach(function(t){return t.forEach(function(t){return t.dispose()})}),this.locationMarkerMaterial.dispose(),this.highlightLocationMarkerMaterial.dispose(),t.prototype.onDestroy.call(this)},e.prototype.getLocationMesh=function(t){var e=this,n=new l.Mesh(this.geometry,this.locationMarkerMaterial);return n.name="location",n.userData={image:t},n.position.copy(t.floorLocation),n.quaternion.copy(t.floorOrientation?t.floorOrientation:t.orientation),n.onClick=function(){return e.handleClick(n)},n.onMouseOver=function(){return e.handleMouseOver(n)},n.onMouseOut=function(){return e.handleMouseOut(n)},n},e.prototype.handleMouseOut=function(t){t.material=this.locationMarkerMaterial,t.quaternion.copy(t.userData.image.floorOrientation?t.userData.image.floorOrientation:t.userData.image.orientation),this.view.invalidateScene()},e.prototype.handleMouseOver=function(t){if(this.params.isClickToShowEnabled()&&!this.params.isVisibilityToggleEnabled()){t.material=this.highlightLocationMarkerMaterial;var e=this.view.getImage()?this.view.getImage().location:this.getActiveViewport().camera.position,n=(new l.Vector3).subVectors(t.position,e),i=Math.atan2(n.y,n.x);t.rotation.z=i-Math.PI/2,this.view.invalidateScene()}},e.prototype.handleClick=function(t){return!(!this.params.isClickToShowEnabled()||this.params.isVisibilityToggleEnabled()&&!this.markersVisible||!this.params.isVisibilityToggleEnabled()&&t.material!==this.highlightLocationMarkerMaterial||(this.IV.moveToImage(t.userData.image).catch(d.handleWarning),this.params.isSwappingViewsEnabled()&&this.ViewService.swapViews(),0))},e.prototype.getImages=function(){var t=this.getActiveViewport().camera,e=(new u.ImageRestFilterBuilder).hidden(!1).siteModel(this.FloorChangerService.currentFloors).siteModel([void 0]);if(t instanceof l.PerspectiveCamera)this.filterPerspective(e,t);else if(t instanceof l.OrthographicCamera){if(!this.isOrthographicCameraSceneReadyToBeUpdated())return Promise.reject("Orthographic camera not ready");this.filterOrthographic(e,t)}return this.ImageRepository.filter(e.build())},e.prototype.filterPerspective=function(t,e){var n=this.view.getImage(),i=!n||n.location.distanceTo(e.position)>this.params.distanceThreshold/4?this.GeoTransformationService.vectorToGlobal(e.position):n.globalLocation,r=new l.Vector2(i.x,i.y);t.location(r).radius(this.params.distanceThreshold)},e.prototype.filterOrthographic=function(t,n){var i=new l.Vector3(n.left,n.bottom,0),r=n.position.clone();r.addScaledVector(i,e.ORTHO_BOUNDS_SCALE),r=this.GeoTransformationService.vectorToGlobal(r);var o=n.position.clone();o.addScaledVector(i,-e.ORTHO_BOUNDS_SCALE),o=this.GeoTransformationService.vectorToGlobal(o);var a=this.getActiveViewport().screenWidth/(n.right-n.left),s=e.ORTHO_MARKER_SIZE/a*e.ORTHO_SPACING_FACTOR;s>=e.ORTHO_MIN_SPACING_THRESHOLD&&t.spacing(s),t.boundingBox(r.x,r.y,o.x,o.y)},e.prototype.getMarkerMaterial=function(t,e,n){var i;return this.markerMaterials[t.getHex()]&&this.markerMaterials[t.getHex()][e]&&(i=this.markerMaterials[t.getHex()][e]),i||(this.params.markerBlending===l.SubtractiveBlending&&t.setHex(16777215-t.getHex()),i=new l.MeshBasicMaterial({color:t.getHex(),opacity:e,side:l.DoubleSide,transparent:!0,depthTest:!1,depthWrite:!1,map:n,blending:this.params.markerBlending}),this.markerMaterials[t.getHex()]||(this.markerMaterials[t.getHex()]=[]),this.markerMaterials[t.getHex()][e]=i),i},e.prototype.showMarkers=function(){var t=this;if(this.markersVisible)this.refreshHideTimer();else{var n=new a.Tween(this.locationMarkerMaterial).to({opacity:this.params.markerOpacity},e.SHOW_HIDE_MARKERS_DURATION).easing(a.Easing.Linear.None.bind(this)).onComplete(function(){t.view.forgetTween(n),t.refreshHideTimer()}).start();this.view.watchTween(n),this.markersVisible=!0}},e.prototype.hideMarkers=function(){var t=this,n=new a.Tween(this.locationMarkerMaterial).to({opacity:0},e.SHOW_HIDE_MARKERS_DURATION).easing(a.Easing.Linear.None.bind(this)).onComplete(function(){t.view.forgetTween(n),t.markersVisible=!1}).start();this.view.watchTween(n)},e.prototype.refreshHideTimer=function(){this.params.isVisibilityToggleEnabled()||(this.hideTimer&&window.clearTimeout(this.hideTimer),this.hideTimer=window.setTimeout(this.hideMarkers.bind(this),this.params.hideMarkersTimeout))},e.prototype.onMouseMove=function(t){this.isEventMaskedInViewport(t,m.EventType.MOUSE_MOVE)||this.params.isMoveMouseToShowEnabled()&&this.showMarkers()},e.prototype.onClick=function(t){return!this.isEventMaskedInViewport(t,m.EventType.CLICK)&&!!this.params.isClickToShowEnabled()&&(this.markersVisible?this.params.isVisibilityToggleEnabled()&&this.hideMarkers():this.showMarkers(),!1)},e.prototype.isEventMaskedInViewport=function(t,e){var n=this.view.getViewport(t.x,t.y).name;return(this.params.viewportEventMask.get(n)||[]).some(function(t){return t===e})},e.ORTHO_MARKER_SIZE=12,e.ORTHO_MIN_SPACING_THRESHOLD=.75,e.ORTHO_SPACING_FACTOR=1.3,e.SHOW_HIDE_MARKERS_DURATION=300,e}(h.ScalableSceneLayer);e.LocationMarkerLayer=C;var A=function(t){function e(e,n,i,r,o,a,s,c){var l=t.call(this)||this;return l.IV=e,l.ImageService=n,l.ViewMenuService=i,l.ImageRepository=r,l.FloorChangerService=o,l.GeoTransformationService=a,l.ViewService=s,l.AuthenticationService=c,l}return r(e,t),e.prototype.create=function(t,e,n){return new C(t,e,n,this.IV,this.ImageService,this.ViewMenuService,this.ImageRepository,this.FloorChangerService,this.GeoTransformationService,this.ViewService,this.AuthenticationService)},e.ɵfac=function(t){return new(t||e)(v.ɵɵinject("IV"),v.ɵɵinject(y.ImageService),v.ɵɵinject(b.ViewMenuService),v.ɵɵinject(w.ImageRepository),v.ɵɵinject(S.FloorChangerService),v.ɵɵinject(x.GeoTransformationService),v.ɵɵinject(M.ViewService),v.ɵɵinject(E.AuthenticationService))},e.ɵprov=v.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(c.SceneLayerFactory);e.LocationMarkerLayerFactory=A,v.ɵsetClassMetadata(A,[{type:g.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:g.Inject,args:["IV"]}]},{type:y.ImageService},{type:b.ViewMenuService},{type:w.ImageRepository},{type:S.FloorChangerService},{type:x.GeoTransformationService},{type:M.ViewService},{type:E.AuthenticationService}]},null),o.module("IVWebApp").service("LocationMarkerLayerFactory",f.downgradeInjectable(A))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(408),n(408),n(270),n(270),n(581),n(324);var i=n(135),r=n(223),o=n(2),a=(n(31),n(16)),s=(n(14),n(36),n(6)),c=n(0),l=n(0),u=n(270),d=n(581),p=n(324),h=n(408),f=n(31),g=n(14),m=n(36),v=function(){function t(t,e,n,r,o,s,c){this.VectorMapRepository=t,this.VectorLayerRepository=e,this.VectorEntityRepository=n,this.VectorMapCrsRepository=r,this.DatasetRepository=o,this.GeoTransformationService=s,this.AuthenticationService=c,this.manualVisibilityChanged=new a.Signal,this.vectorMapsFetched=new a.Signal,this.vectorLayerRemoveEvent=new a.Signal,this.vectorMapRemoveEvent=new a.Signal,this.visibilityUpdateEvent=new a.Signal,i.EntityRelationMapper.oneToMany(this.VectorMapRepository,"vectorLayers",this.VectorLayerRepository,"vectorMapId"),i.EntityRelationMapper.oneToMany(this.VectorLayerRepository,"vectorEntities",this.VectorEntityRepository,"vectorLayerId"),i.EntityRelationMapper.manyToOne(this.VectorLayerRepository,"vectorMap","vectorMapId",this.VectorMapRepository,!0),i.EntityRelationMapper.manyToOne(this.VectorEntityRepository,"vectorLayer","vectorLayerId",this.VectorLayerRepository,!0)}return t.prototype.fetch=function(){var t=this;if(this.AuthenticationService.dataAccessible){var e=this.VectorMapRepository.findAll(!0),n=this.VectorLayerRepository.findAll(!0),i=this.VectorEntityRepository.findAll(!0);this.initialized=Promise.all([e,n,i]).then(function(){})}else this.VectorMapRepository.resetCache(),this.VectorLayerRepository.resetCache(),this.VectorEntityRepository.resetCache(),this.initialized=Promise.resolve();return this.initialized=this.initialized.then(function(){return t.updateStats(),t.DatasetRepository.initialized.then(function(){t.GeoTransformationService.isInitialized()||t.GeoTransformationService.initCoordinatesSystem(t.DatasetRepository.data,t.VectorEntityRepository.data),t.vectorMapsFetched.emit()})}),this.initialized},t.prototype.searchCrs=function(e,n){return this.VectorMapCrsRepository.search(e,n).then(function(e){return e.splice(0,t.QUERY_SEARCH_LIMIT)})},t.prototype.updateZ=function(t){t.vectorLayers.forEach(function(e){e.zMin=t.zMin,e.zMax=t.zMax}),this.visibilityUpdateEvent.emit()},t.prototype.removeVectorMaps=function(t){for(var e=0,n=t;e<n.length;e++){var i=n[e];this.VectorMapRepository.remove(i).catch(function(){}),this.vectorMapRemoveEvent.emit(i)}},t.prototype.removeVectorLayers=function(t){for(var e=0,n=t;e<n.length;e++){var i=n[e];this.VectorLayerRepository.remove(i).catch(function(){}),this.vectorLayerRemoveEvent.emit(i)}},t.prototype.updateVisibility=function(t){this.visibilityUpdateEvent.emit(),t?this.VectorLayerRepository.save(t).catch(function(){}):this.VectorLayerRepository.data.length>0&&this.VectorLayerRepository.save(this.VectorLayerRepository.data).catch(function(){})},t.prototype.updateStats=function(){for(var t=0,e=this.VectorLayerRepository.data;t<e.length;t++){var n=e[t];n.stats.features=0,n.stats.vertices=0}for(var i=0,o=this.VectorMapRepository.data;i<o.length;i++){var a=o[i];a.stats.features=0,a.stats.vertices=0}for(var s=0,c=this.VectorEntityRepository.data;s<c.length;s++){var l=c[s],u=l.vectorLayer,d=l.vectorLayer.vectorMap;if(u.stats.features++,d.stats.features++,l.type===r.VectorEntityType.POLYGON){var p=l.vectorEntity;u.stats.vertices+=p.boundary.length,d.stats.vertices+=p.boundary.length;for(var h=0,f=p.holes;h<f.length;h++){var g=f[h];u.stats.vertices+=g.length,d.stats.vertices+=g.length}}else if(l.type===r.VectorEntityType.LINE){var m=l.vectorEntity;u.stats.vertices+=m.coordinates.length,d.stats.vertices+=m.coordinates.length}}},t.QUERY_SEARCH_LIMIT=20,t.ɵfac=function(e){return new(e||t)(l.ɵɵinject(u.VectorMapRepository),l.ɵɵinject(d.VectorLayerRepository),l.ɵɵinject(p.VectorEntityRepository),l.ɵɵinject(h.VectorMapCrsRepository),l.ɵɵinject(f.DatasetRepository),l.ɵɵinject(g.GeoTransformationService),l.ɵɵinject(m.AuthenticationService))},t.ɵprov=l.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.VectorMapService=v,l.ɵsetClassMetadata(v,[{type:c.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:u.VectorMapRepository},{type:d.VectorLayerRepository},{type:p.VectorEntityRepository},{type:h.VectorMapCrsRepository},{type:f.DatasetRepository},{type:g.GeoTransformationService},{type:m.AuthenticationService}]},null),o.module("IVWebApp").service("VectorMapService",s.downgradeInjectable(v))},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(24);n(24),n(49);var s=n(20),c=(n(131),n(39),n(181),n(155),n(272),n(154),n(52)),l=(n(17),n(255)),u=n(105),d=(n(199),n(269),n(8)),p=n(21),h=n(6),f=n(0),g=n(560),m=(n(28),n(140),n(171),n(65),n(582)),v=n(403),y=n(264),b=(n(121),n(1239)),w=n(1240),S=(n(187),n(454)),x=n(0),M=n(65),E=n(155),C=n(272),A=n(39),T=n(49),O=n(24),_=n(131),P=n(181),I=n(154),k=n(199),D=n(269),R=n(17),L=n(28),N=n(140),j=n(171),V=n(21),F=n(582),U=n(121),B=n(187),z=function(){function t(t,e,n,i,r,o,s,c,l,u,d,h,f,g,m,v,y,b,w,S,x,M){var E=this;this.ViewMenuService=t,this.PointCloudMenuService=e,this.DatasetAlignmentService=n,this.GeoRegistrationService=i,this.IV=r,this.PoiService=o,this.ImageService=s,this.ModeService=c,this.ToolboxMenuService=l,this.SearchService=u,this.AlignmentService=d,this.SiteModelEditorService=h,this.NavGraphEditingService=f,this.ViewService=g,this.gettext=m,this.FloorChangerService=v,this.DownloadPointCloudService=y,this.MeasurementsService=b,this.TrackingService=w,this.MeasurementModeService=S,this.MagnificationService=x,this.StorageService=M,this.modes={normal:{name:a.ModeState.NORMAL,HtmlButtonTranslation:this.gettext("IndoorViewer",void 0,"title")},datasetAlignment:{name:a.ModeState.DATASET_ALIGNMENT,HtmlUiTemplate:p.TemplateName.DATASETALIGNMENT_MODE,HtmlButtonTranslation:this.gettext("Dataset Alignment",void 0,"title"),isCloseDisabled:function(){return E.DatasetAlignmentService.isSavingInProgress()}},GeoRegistration:{name:a.ModeState.GEO_REGISTRATION,HtmlUiTemplate:p.TemplateName.GEOREGISTRATION_MODE,HtmlButtonTranslation:this.gettext("Geo-Registration",void 0,"title"),isCloseDisabled:function(){return E.GeoRegistrationService.isSavingInProgress()}},SiteModelEditor:{name:a.ModeState.SITE_MODEL_EDITOR,HtmlUiTemplate:p.TemplateName.SITEMODEL_MODE,HtmlButtonTranslation:this.gettext("Site Model",void 0,"title"),isCloseDisabled:function(){return E.SiteModelEditorService.isSaveInProgress()}},NavGraphEditor:{name:a.ModeState.NAV_GRAPH_EDITOR,HtmlUiTemplate:p.TemplateName.NAVGRAPH_MODE,HtmlButtonTranslation:this.gettext("Navigation Graph",void 0,"title"),isCloseDisabled:function(){return E.NavGraphEditingService.isSavingInProgress()}},DownloadPointCloud:{name:a.ModeState.DOWNLOAD_POINT_CLOUD,HtmlUiTemplate:p.TemplateName.DOWNLOAD_POINT_CLOUD_MODE,HtmlButtonTranslation:this.gettext("Crop and Download Point Cloud",void 0,"title")},Measurements:{name:a.ModeState.MEASUREMENTS,HtmlUiTemplate:p.TemplateName.MEASUREMENTS,HtmlButtonTranslation:this.gettext("Measurements",void 0,"title"),hasCollapsedTemplate:!0}},this.visibilityBackup={},this.NORMAL_ZOOM_LEVEL_RES_MIN=.01,this.HIGH_ZOOM_LEVEL_RES_MIN=.002}return t.prototype.switchToMode=function(t,e){return i(this,void 0,void 0,function(){var n=this;return r(this,function(i){switch(i.label){case 0:if(this.ModeService.isSwitchingMode=!0,this.SearchService.resultsList.show&&this.SearchService.hideSearchResultsList(),t===this.ModeService.currentMode)return this.ModeService.isSwitchingMode=!1,[2];if(!this.ToolboxMenuService.openMenu(this.modes[t].HtmlButtonTranslation,this.modes[t].HtmlUiTemplate,{afterClose:e,isCloseDisabled:this.modes[t].isCloseDisabled?function(){return n.modes[t].isCloseDisabled()}:void 0},!!this.modes[t].hasCollapsedTemplate))return this.ModeService.isSwitchingMode=!1,[2];switch(this.ModeService.currentMode){case a.ModeState.NORMAL:this.saveVisibility();break;case a.ModeState.GEO_REGISTRATION:case a.ModeState.DATASET_ALIGNMENT:case a.ModeState.SITE_MODEL_EDITOR:case a.ModeState.NAV_GRAPH_EDITOR:break;case a.ModeState.DOWNLOAD_POINT_CLOUD:this.exitDownloadPointCloud();break;case a.ModeState.MEASUREMENTS:this.exitMeasurementsMode();break;default:console.warn("Invalid current mode: "+String(this.ModeService.currentMode))}switch(this.ModeService.currentMode=t,t){case a.ModeState.NORMAL:return[3,1];case a.ModeState.GEO_REGISTRATION:return[3,2];case a.ModeState.DATASET_ALIGNMENT:return[3,3];case a.ModeState.SITE_MODEL_EDITOR:return[3,4];case a.ModeState.NAV_GRAPH_EDITOR:return[3,5];case a.ModeState.DOWNLOAD_POINT_CLOUD:return[3,6];case a.ModeState.MEASUREMENTS:return[3,8]}return[3,10];case 1:return this.switchToNormal(),[3,11];case 2:return this.switchToGeoRegistration(),this.ToolboxMenuService.beforeClose=function(){return n.GeoRegistrationService.promptOnUnsavedChanges()},[3,11];case 3:return this.switchToDatasetAlignment(),this.ToolboxMenuService.beforeClose=function(){return n.DatasetAlignmentService.promptOnUnsavedChanges()},[3,11];case 4:return this.switchToSiteModelEditor(),this.ToolboxMenuService.beforeClose=function(){return n.SiteModelEditorService.promptOnUnsavedChanges()},[3,11];case 5:return this.switchToNavGraphEditor(),this.ToolboxMenuService.beforeClose=function(){return n.NavGraphEditingService.promptOnUnsavedChanges()},[3,11];case 6:return[4,this.switchToDownloadPointCloudMode()];case 7:return i.sent(),[3,11];case 8:return[4,this.switchToMeasurementsMode()];case 9:return i.sent(),this.ToolboxMenuService.beforeClose=function(){return n.MeasurementsService.promptOnUnsavedChanges()},[3,11];case 10:console.warn("Invalid mode: "+String(t)),i.label=11;case 11:return this.PoiService.poisChanged.emit(),this.IV.setSceneRendering("map",this.ViewService.isMapVisible()),this.ModeService.modeChanged.emit(t),this.ModeService.isSwitchingMode=!1,s.invalidateAngular(),[2]}})})},t.prototype.exitMeasurementsMode=function(){this.saveMeasurementModeConfig(),this.ViewService.mainView.enableOffscreenRendering=!1,this.ViewService.mainView.getMeasurementsLayer().visible=!1,this.MeasurementsService.updateMeasurementMode(void 0),this.MagnificationService.disableMagnification(),this.TrackingService.trackPreDefinedEvent((new b.MeasurementModeExitedEvent).measurementsTaken(this.MeasurementsService.sessionMetrics.total).measurementsSaved(this.MeasurementsService.sessionMetrics.measurementsSaved).measurementsDiscarded(this.MeasurementsService.sessionMetrics.measurementsDiscarded));var t=this.ViewService.mainView.getLocationMarkerLayer();t.targetViewport=void 0,t.setViewportEventMask(new Map),this.MeasurementModeService.removeExtraLocationMarkerLayer()},t.prototype.saveMeasurementModeConfig=function(){var t=this.ViewService.mainView.getDefaultViewport(),e=this.ViewService.mainView.getViewportByName(c.SplitViewportName.TOP_VIEW),n={defaultViewportSize:{left:t.left,width:t.width,height:t.height,bottom:t.bottom},topViewViewportSize:{left:e.left,width:e.width,height:e.height,bottom:e.bottom},isSidebarCollapsed:this.ToolboxMenuService.isCollapsed,isMagnifyingGlassEnabled:this.MagnificationService.isEnabled};this.StorageService.set(m.MeasurementModeService.MEASUREMENT_MODE_CONFIG_STORAGE_KEY,n)},t.prototype.restoreMeasurementModeConfig=function(){var t=this.StorageService.get(m.MeasurementModeService.MEASUREMENT_MODE_CONFIG_STORAGE_KEY);t&&(this.restoreSidebarCollapsedState(t),this.restoreMagnificationGlassState(t),this.restoreViewportSizes(t))},t.prototype.restoreViewportSizes=function(t){var e=t.defaultViewportSize,n=t.topViewViewportSize;if(void 0!==e&&void 0!==n){var i=this.ViewService.mainView.getDefaultViewport(),r=this.ViewService.mainView.getViewportByName(c.SplitViewportName.TOP_VIEW);this.setViewportSize(i,e),this.setViewportSize(r,n)}},t.prototype.restoreMagnificationGlassState=function(t){t.isMagnifyingGlassEnabled?this.MagnificationService.enableMagnification():this.MagnificationService.disableMagnification()},t.prototype.restoreSidebarCollapsedState=function(t){t.isSidebarCollapsed&&(document.getElementById(S.ToolboxMenuController.verticalToolboxMenuId).style.width=S.ToolboxMenuController.menuCollapsedWidth+"px")},t.prototype.setViewportSize=function(t,e){t.setDimensions(e.left,e.bottom,e.width,e.height),this.ViewService.mainView.updateViewportActiveFlag(t),this.ViewService.mainView.viewportDimensionsChanged.emit()},t.prototype.switchToNormal=function(){this.setResMin(this.NORMAL_ZOOM_LEVEL_RES_MIN),this.ViewService.mainView.disableSplitScreen(g.CameraControlsMode.FIRST_PERSON),this.restoreVisibility(),this.ViewService.mainView.getVectorMapLayer().unload(),this.ViewService.mapView.getVectorMapLayer().refresh(),this.restoreViewState()},t.prototype.restoreViewState=function(){this.PointCloudMenuService.config.showPointCloud?this.IV.moveToGeoLocation(this.visibilityBackup.viewState.location,!0,this.visibilityBackup.viewState.orientation,void 0,this.visibilityBackup.viewState.fov,void 0,!0).catch(d.handleWarning):this.IV.moveToImageId(this.visibilityBackup.viewState.imageId,this.visibilityBackup.viewState.orientation,this.visibilityBackup.viewState.fov).catch(d.handleWarning)},t.prototype.switchToGeoRegistration=function(){this.ViewService.showSecondaryView=!1,this.IV.setSceneRendering("panorama",!1),this.GeoRegistrationService.fetchGoogleMapsLibrary()},t.prototype.switchToDatasetAlignment=function(){this.setupSplitPointCloudView(!0,!1,!0,!0,!1,this.PointCloudMenuService.config.showPanosInPerspective,g.CameraControlsMode.FIRST_PERSON,c.SplitViewportMode.FOUR_VIEWPORTS);var t=this.ViewService.mainView;t.getMapLayer().visible=!1,this.setResMin(this.HIGH_ZOOM_LEVEL_RES_MIN),t.getCameraFOVLayer().updateCameraFOVLayer()},t.prototype.setResMin=function(t){for(var e=0,n=this.ViewService.mainView.viewports;e<n.length;e++){var i=n[e];i.cameraController instanceof y.PanningCameraController&&(i.cameraController.resMin=t)}},t.prototype.switchToSiteModelEditor=function(){this.setupSplitPointCloudView(!0,!1,!0,!0,!1,this.PointCloudMenuService.config.showPanosInPerspective,g.CameraControlsMode.FIRST_PERSON,c.SplitViewportMode.FOUR_VIEWPORTS),this.setResMin(this.HIGH_ZOOM_LEVEL_RES_MIN);var e=this.ViewService.mainView,n=e.getMapLayer();n.tileColor.setHex(t.DARKENED_TILES),n.visible=!0,n.targetViewport=e.getViewportByName(c.SplitViewportName.TOP_VIEW),e.getCameraFOVLayer().updateCameraFOVLayer()},t.prototype.switchToMeasurementsMode=function(){return i(this,void 0,void 0,function(){var e,n,i,o,a;return r(this,function(r){switch(r.label){case 0:return this.ViewService.mainView.enableOffscreenRendering=!0,this.setupSplitPointCloudView(this.PointCloudMenuService.config.showPointCloud,!1,!0,!0,!0,this.ViewMenuService.config.showPanoramas,g.CameraControlsMode.FIRST_PERSON,c.SplitViewportMode.TWO_VIEWPORTS),(e=this.ViewService.mainView).getMeasurementsLayer().visible=!0,this.activateMapLayerInMainView(),[4,e.atLeastOneFloorHasMaps()];case 1:return r.sent()||e.maximizeViewport(c.SplitViewportName.DEFAULT_VIEW),n=e.getMapLayer(),i=n.targetViewport,(o=i.cameraController).centerOn(e.getCamera().position),o.resolution=t.DEFAULT_MEASUREMENT_ZOOM_LEVEL,this.setResMin(this.NORMAL_ZOOM_LEVEL_RES_MIN),(a=e.getLocationMarkerLayer()).targetViewport=e.getDefaultViewport(),e.getCameraFOVLayer().updateCameraFOVLayer(),a.setViewportEventMask(s.buildHashMap([[c.SplitViewportName.TOP_VIEW,[v.EventType.CLICK]]])),this.MeasurementModeService.addExtraLocationMarkerLayer(),this.MeasurementsService.sessionMetrics=new w.MeasurementSessionMetrics,this.MagnificationService.enableMagnification(),this.restoreMeasurementModeConfig(),[4,this.MeasurementsService.loadMeasurementsForCurrentUser()];case 2:return r.sent(),[2]}})})},t.prototype.switchToNavGraphEditor=function(){this.setupSplitPointCloudView(!1,!0,!0,!0,!1,!0,g.CameraControlsMode.FIRST_PERSON,c.SplitViewportMode.FULLSCREEN),this.setResMin(this.HIGH_ZOOM_LEVEL_RES_MIN),this.ViewService.viewSwapAllowed=!1;var e=this.ViewService.mainView,n=e.getMapLayer();n.tileColor.setHex(t.WHITE_TILES),n.visible=!0,n.targetViewport=e.getViewportByName(c.SplitViewportName.TOP_VIEW),e.getCursorLayer().setVisibility(!1),this.ViewService.showSecondaryView=!1,e.switchViewMode(u.SceneViewMode.Map).catch(d.handleWarning),this.NavGraphEditingService.startNodeEditing()},t.prototype.switchToDownloadPointCloudMode=function(){return i(this,void 0,void 0,function(){var t,e,n;return r(this,function(i){switch(i.label){case 0:return t=this.ViewService.mainView,e=this.DownloadPointCloudService.getCubeStartingPosition(),n=this.PointCloudMenuService.isCloudVisible(),this.setupSplitPointCloudView(!1,!1,!1,!1,!1,!1,g.CameraControlsMode.ORBIT,c.SplitViewportMode.FULLSCREEN),this.setResMin(this.NORMAL_ZOOM_LEVEL_RES_MIN),[4,t.loadPointCloudModule()];case 1:return i.sent(),[4,this.DownloadPointCloudService.addCubeAndStartClippingPointCloud(e)];case 2:return i.sent(),this.DownloadPointCloudService.resetStartingPosition(),this.activateMapLayerInMainView(),this.enterDownloadPointCloudMode(n,t,e),[2]}})})},t.prototype.enterDownloadPointCloudMode=function(t,e,n){var i=t?u.SceneViewMode.Perspective:u.SceneViewMode.Map;i===u.SceneViewMode.Perspective&&this.DownloadPointCloudService.showVolumeLayerOnMap(),this.DownloadPointCloudService.disableOptionsFromViewMenu(i),this.TrackingService.trackPointCloudDownloadEnteredIntoMode(i),e.getCursorLayer().setVisibility(!1),this.ViewService.showSecondaryView=i===u.SceneViewMode.Perspective,e.switchViewMode(i,!1,n).catch(d.handleWarning),this.DownloadPointCloudService.has3dVolumeBeenModified=!1},t.prototype.activateMapLayerInMainView=function(){var e=this.ViewService.mainView,n=e.getMapLayer();n.tileColor.setHex(t.WHITE_TILES),n.visible=!0,n.targetViewport=e.getViewportByName(c.SplitViewportName.TOP_VIEW),this.ViewService.viewSwapAllowed=!1},t.prototype.exitDownloadPointCloud=function(){this.DownloadPointCloudService.restoreOptionsFromViewMenu();var t=this.ViewService.mainView.getVolumeClippingLayer();t.removeClipBoxes(),t.visible=!1,this.DownloadPointCloudService.hideVolumeLayerOnMap()},t.prototype.setupSplitPointCloudView=function(t,e,n,i,r,o,a,s){this.setVisibility(t,1/0,o,!1,e,r,n,i,!1),this.ViewService.setPrimaryView(l.ViewType.PANORAMA),this.IV.setSceneRendering("panorama",!0),this.ViewService.mainView.enableSplitScreen(a,s),this.ViewService.mainView.getVectorMapLayer().load(),o&&this.moveToClosestImage()},t.prototype.moveToClosestImage=function(){var t=this,e=this.ViewService.mainView.getCamera().position;this.ImageService.getClosestImage(e).then(function(e){return t.IV.moveToImage(e)}).catch(d.handleWarning)},t.prototype.setVisibility=function(t,e,n,i,r,o,a,s,c){void 0===c&&(c=!1),this.PointCloudMenuService.config.showPointCloud=t,this.PointCloudMenuService.config.maxDist=e,this.ViewMenuService.showPanoramas(n,c),this.ViewMenuService.showNavGraph(r),this.ViewMenuService.showLocationMarkers(o),this.ViewService.showSecondaryView=i,this.ViewService.mainView.getCursorLayer().setVisibility(a),this.ViewService.mapView.getCameraFOVLayer().visible=s,this.PointCloudMenuService.configShowPointCloudChanged.emit(t,c)},t.prototype.restoreVisibility=function(){this.setVisibility(this.visibilityBackup.pointCloud,this.visibilityBackup.pointCloudMaxDist,this.visibilityBackup.panoramas,this.visibilityBackup.insetView,this.visibilityBackup.navgraph,this.visibilityBackup.locationMarkers,this.visibilityBackup.cursor,this.visibilityBackup.cameraFov,!0),this.ViewService.viewSwapAllowed=!0,this.ViewService.setPrimaryView(this.visibilityBackup.primaryView),this.IV.setSceneRendering(this.visibilityBackup.primaryView,!0),this.ViewService.mainView.setViewMode(this.visibilityBackup.sceneViewMode)},t.prototype.saveVisibility=function(){this.visibilityBackup.pointCloud=this.PointCloudMenuService.config.showPointCloud,this.visibilityBackup.pointCloudMaxDist=this.PointCloudMenuService.config.maxDist,this.visibilityBackup.panoramas=this.ViewMenuService.config.showPanoramas,this.visibilityBackup.navgraph=this.ViewMenuService.config.showNavGraph,this.visibilityBackup.locationMarkers=this.ViewMenuService.config.showLocationMarkers,this.visibilityBackup.insetView=this.ViewService.showSecondaryView,this.visibilityBackup.primaryView=this.ViewService.getPrimaryView(),this.visibilityBackup.cursor=this.ViewService.mainView.getCursorLayer().visible,this.visibilityBackup.cameraFov=this.ViewService.mapView.getCameraFOVLayer().visible,this.visibilityBackup.sceneViewMode=this.ViewService.mainView.viewMode,this.visibilityBackup.viewState=this.ViewService.mainView.getCurrentViewState()},t.DEFAULT_MEASUREMENT_ZOOM_LEVEL=.05,t.WHITE_TILES=16777215,t.DARKENED_TILES=8355711,t.ɵfac=function(e){return new(e||t)(x.ɵɵinject(M.ViewMenuService),x.ɵɵinject("PointCloudMenuService"),x.ɵɵinject(E.DatasetAlignmentService),x.ɵɵinject(C.GeoRegistrationService),x.ɵɵinject("IV"),x.ɵɵinject(A.PoiService),x.ɵɵinject(T.ImageService),x.ɵɵinject(O.ModeService),x.ɵɵinject(_.ToolboxMenuService),x.ɵɵinject(P.SearchService),x.ɵɵinject(I.AlignmentService),x.ɵɵinject(k.SiteModelEditorService),x.ɵɵinject(D.NavGraphEditingService),x.ɵɵinject(R.ViewService),x.ɵɵinject("gettext"),x.ɵɵinject(L.FloorChangerService),x.ɵɵinject(N.DownloadPointCloudService),x.ɵɵinject(j.MeasurementsService),x.ɵɵinject(V.TrackingService),x.ɵɵinject(F.MeasurementModeService),x.ɵɵinject(U.MagnificationService),x.ɵɵinject(B.StorageService))},t.ɵprov=x.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.ModeSwitchService=z,x.ɵsetClassMetadata(z,[{type:f.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:M.ViewMenuService},{type:void 0,decorators:[{type:f.Inject,args:["PointCloudMenuService"]}]},{type:E.DatasetAlignmentService},{type:C.GeoRegistrationService},{type:void 0,decorators:[{type:f.Inject,args:["IV"]}]},{type:A.PoiService},{type:T.ImageService},{type:O.ModeService},{type:_.ToolboxMenuService},{type:P.SearchService},{type:I.AlignmentService},{type:k.SiteModelEditorService},{type:D.NavGraphEditingService},{type:R.ViewService},{type:void 0,decorators:[{type:f.Inject,args:["gettext"]}]},{type:L.FloorChangerService},{type:N.DownloadPointCloudService},{type:j.MeasurementsService},{type:V.TrackingService},{type:F.MeasurementModeService},{type:U.MagnificationService},{type:B.StorageService}]},null),o.module("IVWebApp").service("ModeSwitchService",h.downgradeInjectable(z))},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=(n(72),n(27),n(61),n(57)),s=n(6),c=n(0),l=n(0),u=n(72),d=n(27),p=n(61),h=function(){function t(t,e,n,i,r){this.Upload=t,this.JWTTokenService=e,this.UserService=n,this.MessageReportingService=i,this.gettextCatalog=r}return t.prototype.upload=function(t,e,n){return void 0===n&&(n="image"),i(this,void 0,void 0,function(){var i,o,a;return r(this,function(r){switch(r.label){case 0:return(i={})[n]=e,o={},this.JWTTokenService.setJwtHeaderOnConfig(o),[4,this.Upload.upload({url:t,method:"POST",withCredentials:!0,data:i,headers:o})];case 1:return a=r.sent(),[2,this.success(e.type,a)]}})})},t.prototype.isProtectedUploadAvailable=function(){return this.UserService.isUserLoggedIn()&&this.UserService.userInfo.checkAttribute(a.GroupAttributes.CAN_CREATE_POIS)},t.prototype.success=function(t,e){return e&&200===e.status?Promise.resolve(e.data):Promise.reject(e)},t.ɵfac=function(e){return new(e||t)(l.ɵɵinject("Upload"),l.ɵɵinject(u.JWTTokenService),l.ɵɵinject(d.UserService),l.ɵɵinject(p.MessageReportingService),l.ɵɵinject("gettextCatalog"))},t.ɵprov=l.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.UploadService=h,l.ɵsetClassMetadata(h,[{type:c.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:c.Inject,args:["Upload"]}]},{type:u.JWTTokenService},{type:d.UserService},{type:p.MessageReportingService},{type:void 0,decorators:[{type:c.Inject,args:["gettextCatalog"]}]}]},null),o.module("IVWebApp").service("UploadService",s.downgradeInjectable(h))},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(9),n(328),n(329),n(433),n(75),n(328),n(61),n(166);var r=n(20),o=n(7),a=n(344),s=n(107),c=(n(31),n(329),n(433),n(8)),l=(n(154),n(55)),u=n(16),d=(n(86),n(6)),p=n(0),h=n(0),f=n(75),g=n(329),m=n(328),v=n(31),y=n(433),b=n(154),w=n(61),S=n(166),x=n(86),M=function(){function e(t,e,n,i,r,o,a,s,c,l){this.BundleRepository=t,this.DataGenerationService=e,this.DataManagementService=n,this.DatasetRepository=i,this.DatasetsWebArchiveService=r,this.AlignmentService=o,this.gettextCatalog=a,this.MessageReportingService=s,this.TiledMapRepository=c,this.InstanceInformationService=l,this.datasets=[],this.bundles=[],this.unmanagedBundles=[],this.progress={busy:!1,loadingDatasets:!1,loadingBundles:!1},this.visualIndexUploadOngoing=!1,this.locations={},this.refreshed=new u.Signal}return e.prototype.scheduleReInit=function(){this.showModalOnRequestFinish?t("#ivReinitModal").modal("show"):this.reInitOnExit=!0},e.prototype.refresh=function(){var t=this,e=[];this.progress.loadingDatasets=!0,this.progress.loadingBundles=!0,this.datasets.length=0,this.bundles.length=0,this.unmanagedBundles.length=0,e.push(s.promiseFinally(this.DataManagementService.getDatasetsOnDisk().then(function(e){t.datasets.length=0;for(var n=0,i=e;n<i.length;n++){var r=i[n];r.color=a.ColorUtilities.validateColorString(r.color),t.datasets.push(r)}}),function(){t.AlignmentService.deselectAll(),t.progress.loadingDatasets=!1})),e.push(s.promiseFinally(this.DataManagementService.getBundlesOnDisk().then(function(e){t.bundles.length=0,t.unmanagedBundles.length=0,Array.prototype.push.apply(t.bundles,e.filter(function(t){return t.managed||t.inDatabase})),Array.prototype.push.apply(t.unmanagedBundles,e.filter(function(t){return!(t.managed||t.inDatabase)}))}),function(){t.AlignmentService.deselectAll(),t.progress.loadingBundles=!1})),e.push(this.BundleRepository.findAll(!0)),e.push(this.DatasetRepository.findAll(!0)),s.promiseFinally(Promise.all(e),function(){return t.InstanceInformationService.resetCache(),t.refreshed.emit()}).catch(c.handleWarning)},e.prototype.importDataset=function(t,e){return this.doBeforeDataManagementRequest(),this.doDataManagementRequest(this.DataManagementService.importDataset(t.name,[e.longitude,e.latitude,e.height],r.degreesToRadians(e.orientation),e.referenceDatasetId))},e.prototype.unloadDataset=function(t,e){return void 0===e&&(e=!1),this.doBeforeDataManagementRequest(),this.doDataManagementRequest(this.DataManagementService.unloadDataset(t.name),e)},e.prototype.removeDatasetFromDisk=function(t,e){return void 0===e&&(e=!1),this.doBeforeDataManagementRequest(),this.doDataManagementRequest(this.DataManagementService.removeDatasetFromDisk(t.name),e)},e.prototype.importBundle=function(t){this.doBeforeDataManagementJob(t),this.doDataManagementJob(this.DataManagementService.importBundle(t.file))},e.prototype.unloadBundle=function(t){return this.doBeforeDataManagementRequest(),this.doDataManagementRequest(this.DataManagementService.unloadBundle(t.serial))},e.prototype.removeBundleFromDisk=function(t){return this.doBeforeDataManagementRequest(),this.doDataManagementRequest(this.DataManagementService.removeBundleFromDisk(t))},e.prototype.downloadZip=function(t){this.DatasetsWebArchiveService.downloadZip(t)},e.prototype.convertBundle=function(t){return this.doBeforeDataManagementRequest(),this.doDataManagementRequest(this.DataManagementService.convertBundle(t))},e.prototype.createMapsAndNavgraph=function(t,e){this.doBeforeDataManagementJob(t),this.doDataManagementJob(this.DataGenerationService.createMapsAndNavgraph(t.file,e))},e.prototype.downloadMaps=function(t){var e=this;this.TiledMapRepository.findAll(!0).then(function(n){var i=e.BundleRepository.findCachedBySerial(t.serial),r=n.filter(function(t){return t.bundle===i});e.areTiledMapsValidForDownload(r)&&e.DataManagementService.downloadMaps(i)}).catch(c.handleWarning)},e.prototype.areTiledMapsValidForDownload=function(t){return 0===t.length?(this.MessageReportingService.showMessage(this.gettextCatalog.getString("Missing Maps in Bundle",void 0,"title"),this.gettextCatalog.getString("There are no maps in this bundle, please create them first")),!1):void 0===t[0].floor?(this.MessageReportingService.showMessage(this.gettextCatalog.getString("Maps Problem",void 0,"title"),this.gettextCatalog.getString("The current maps aren't supported for download/upload. You can recreate them to enable it.")),!1):this.missingNamesInSiteModelEntities(t)?(this.MessageReportingService.showMessage(this.gettextCatalog.getString("Site Model Naming Problem",void 0,"title"),this.gettextCatalog.getString("Buildings and floors in the site model must have names")),!1):!this.duplicateNamesInSiteModelEntities(t)||(this.MessageReportingService.showMessage(this.gettextCatalog.getString("Site Model Naming Problem",void 0,"title"),this.gettextCatalog.getString("The site model contains duplicate names. Please ensure each building and each floor within a building has a unique name.")),!1)},e.prototype.missingNamesInSiteModelEntities=function(t){return o.some(t,function(t){var e=t.floor,n=e.getEntityOfType(l.SiteModelType.BUILDING);return r.isBlank(e.name)||r.isBlank(n.name)})},e.prototype.duplicateNamesInSiteModelEntities=function(t){for(var e=new Set,n=0,i=t;n<i.length;n++){var r=i[n].floor.getEntityOfType(l.SiteModelType.BUILDING);e.add(r)}for(var o=0,a=Array.from(e);o<a.length;o++)if(r=a[o],this.containsDuplicateNames(r.children))return!0;return this.containsDuplicateNames(Array.from(e))},e.prototype.containsDuplicateNames=function(t){for(var e={},n=0,i=t;n<i.length;n++){var r=i[n];if(r.name in e)return!0;e[r.name]=r.name}return!1},e.prototype.createMaps=function(t,e){this.doBeforeDataManagementJob(t),this.doDataManagementJob(this.DataGenerationService.createMaps(t.file,e))},e.prototype.importMaps=function(t){var e=this;this.doBeforeDataManagementRequest(),this.doDataManagementRequest(this.DataManagementService.importMaps(t.file)).then(function(t){0===t.maps&&e.MessageReportingService.showMessage(e.gettextCatalog.getString("No Data Was Imported",void 0,"title"),e.gettextCatalog.getString("No maps were imported"))}).catch(c.handleWarning)},e.prototype.unloadMaps=function(t){return this.doBeforeDataManagementRequest(),this.doDataManagementRequest(this.DataManagementService.unloadMaps(t.serial))},e.prototype.createNavgraph=function(t){this.doBeforeDataManagementJob(t),this.doDataManagementJob(this.DataGenerationService.createNavgraph(t.file))},e.prototype.importNavgraph=function(t){this.doBeforeDataManagementJob(t),this.doDataManagementJob(this.DataManagementService.importNavgraph(t.file))},e.prototype.unloadNavgraph=function(t){return this.doBeforeDataManagementRequest(),this.doDataManagementRequest(this.DataManagementService.unloadNavgraph(t.serial))},e.prototype.importWifi=function(t){this.doBeforeDataManagementJob(t),this.doDataManagementJob(this.DataManagementService.importWifi(t.file))},e.prototype.unloadWifi=function(t){return this.doBeforeDataManagementRequest(),this.doDataManagementRequest(this.DataManagementService.unloadWifi(t.serial))},e.prototype.getSiteModelWarning=function(t){if(t.datasetsInDatabase>0&&t.datasetsInDatabase>t.datasetsWithSiteModel)return this.gettextCatalog.getString("The site model does not cover all datasets in the bundle. Therefore the generated maps may not cover all floors.")},e.prototype.doBeforeDataManagementJob=function(t){this.currentBundle=t,this.dataManagementJobTriggered=!0},e.prototype.doBeforeDataManagementRequest=function(){this.dataManagementRequestRunning=!0},e.prototype.doDataManagementJob=function(t){var e=this;t.catch(function(){return e.dataManagementJobTriggered=!1})},e.prototype.doDataManagementRequest=function(t,e){var n=this;return void 0===e&&(e=!1),t.then(function(t){return e||n.refresh(),n.scheduleReInit(),n.dataManagementRequestRunning=!1,t}).catch(function(){n.dataManagementRequestRunning=!1})},e.prototype.deleteVisualIndex=function(t){var e=this.BundleRepository.findCachedBySerial(t.serial);return this.DataManagementService.deleteVisualIndex(e)},e.prototype.setVisualIndexUploadOngoing=function(t){this.visualIndexUploadOngoing=t},e.ɵfac=function(t){return new(t||e)(h.ɵɵinject(f.BundleRepository),h.ɵɵinject(g.DataGenerationService),h.ɵɵinject(m.DataManagementService),h.ɵɵinject(v.DatasetRepository),h.ɵɵinject(y.DatasetsWebArchiveService),h.ɵɵinject(b.AlignmentService),h.ɵɵinject("gettextCatalog"),h.ɵɵinject(w.MessageReportingService),h.ɵɵinject(S.TiledMapRepository),h.ɵɵinject(x.InstanceInformationService))},e.ɵprov=h.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}();e.DatasetManagementService=M,h.ɵsetClassMetadata(M,[{type:p.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:f.BundleRepository},{type:g.DataGenerationService},{type:m.DataManagementService},{type:v.DatasetRepository},{type:y.DatasetsWebArchiveService},{type:b.AlignmentService},{type:void 0,decorators:[{type:p.Inject,args:["gettextCatalog"]}]},{type:w.MessageReportingService},{type:S.TiledMapRepository},{type:x.InstanceInformationService}]},null),i.module("IVWebApp").service("DatasetManagementService",d.downgradeInjectable(M))}).call(this,n(19))},function(t,e,n){"use strict";n.d(e,"b",function(){return i}),n.d(e,"a",function(){return s});var i,r=n(71),o=n(93),a=n(306);i||(i={});var s=function(){function t(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}return t.prototype.observe=function(t){switch(this.kind){case"N":return t.next&&t.next(this.value);case"E":return t.error&&t.error(this.error);case"C":return t.complete&&t.complete()}},t.prototype.do=function(t,e,n){switch(this.kind){case"N":return t&&t(this.value);case"E":return e&&e(this.error);case"C":return n&&n()}},t.prototype.accept=function(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)},t.prototype.toObservable=function(){switch(this.kind){case"N":return Object(o.a)(this.value);case"E":return Object(a.a)(this.error);case"C":return Object(r.b)()}throw new Error("unexpected notification kind value")},t.createNext=function(e){return void 0!==e?new t("N",e):t.undefinedValueNotification},t.createError=function(e){return new t("E",void 0,e)},t.createComplete=function(){return t.completeNotification},t.completeNotification=new t("C"),t.undefinedValueNotification=new t("N",void 0),t}()},function(t,e,n){"use strict";n.d(e,"a",function(){return i});var i="function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random()},function(t,e,n){"use strict";n.d(e,"a",function(){return i});var i=function(){function t(t){return Error.call(this),this.message=t?t.length+" errors occurred during unsubscription:\n"+t.map(function(t,e){return e+1+") "+t.toString()}).join("\n "):"",this.name="UnsubscriptionError",this.errors=t,this}return t.prototype=Object.create(Error.prototype),t}()},function(t,e,n){"use strict";n.d(e,"a",function(){return u});var i=n(337),r=n(167),o=n(116),a=n(126),s=n(339),c=n(340),l=n(224),u=function(t){if(t&&"function"==typeof t[a.a])return u=t,function(t){var e=u[a.a]();if("function"!=typeof e.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return e.subscribe(t)};if(Object(s.a)(t))return Object(i.a)(t);if(Object(c.a)(t))return n=t,function(t){return n.then(function(e){t.closed||(t.next(e),t.complete())},function(e){return t.error(e)}).then(null,r.a),t};if(t&&"function"==typeof t[o.a])return e=t,function(t){for(var n=e[o.a]();;){var i=void 0;try{i=n.next()}catch(e){return t.error(e),t}if(i.done){t.complete();break}if(t.next(i.value),t.closed)break}return"function"==typeof n.return&&t.add(function(){n.return&&n.return()}),t};var e,n,u,d=Object(l.a)(t)?"an invalid object":"'"+t+"'";throw new TypeError("You provided "+d+" where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.")}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(152);function r(t){return!(void 0===t||0===t.indexOf("//")||0===t.indexOf("http://")||0===t.indexOf("https://")||0===t.indexOf("data:"))}e.isUrlRelative=r,e.makeUrlAbsolute=function(t){if(!r(t))return t;var e=t.startsWith("/")?t.substr(1):t;return i.getBaseUrl()+e};var o=/^([^/]+)?\/\/([^/]*@)?([^/]+)(\/.*)?/;e.isSameOrigin=function(t,e){void 0===e&&(e=window.location);var n=o.exec(t);if(!n)return!0;var i=n[1],r=n[3];return(i||e.protocol)+"//"+r===e.origin}},function(t,e,n){"use strict";t.exports=function(t,e){return e||(e={}),"string"!=typeof(t=t&&t.__esModule?t.default:t)?t:(/^['"].*['"]$/.test(t)&&(t=t.slice(1,-1)),e.hash&&(t+=e.hash),/["'() \t\n]/.test(t)||e.needQuotes?'"'.concat(t.replace(/"/g,'\\"').replace(/\n/g,"\\n"),'"'):t)}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t[t.DOM_VK_CANCEL=3]="DOM_VK_CANCEL",t[t.DOM_VK_HELP=6]="DOM_VK_HELP",t[t.DOM_VK_BACK_SPACE=8]="DOM_VK_BACK_SPACE",t[t.DOM_VK_TAB=9]="DOM_VK_TAB",t[t.DOM_VK_CLEAR=12]="DOM_VK_CLEAR",t[t.DOM_VK_RETURN=13]="DOM_VK_RETURN",t[t.DOM_VK_ENTER=14]="DOM_VK_ENTER",t[t.DOM_VK_SHIFT=16]="DOM_VK_SHIFT",t[t.DOM_VK_CONTROL=17]="DOM_VK_CONTROL",t[t.DOM_VK_ALT=18]="DOM_VK_ALT",t[t.DOM_VK_PAUSE=19]="DOM_VK_PAUSE",t[t.DOM_VK_CAPS_LOCK=20]="DOM_VK_CAPS_LOCK",t[t.DOM_VK_ESCAPE=27]="DOM_VK_ESCAPE",t[t.DOM_VK_SPACE=32]="DOM_VK_SPACE",t[t.DOM_VK_PAGE_UP=33]="DOM_VK_PAGE_UP",t[t.DOM_VK_PAGE_DOWN=34]="DOM_VK_PAGE_DOWN",t[t.DOM_VK_END=35]="DOM_VK_END",t[t.DOM_VK_HOME=36]="DOM_VK_HOME",t[t.DOM_VK_LEFT=37]="DOM_VK_LEFT",t[t.DOM_VK_UP=38]="DOM_VK_UP",t[t.DOM_VK_RIGHT=39]="DOM_VK_RIGHT",t[t.DOM_VK_DOWN=40]="DOM_VK_DOWN",t[t.DOM_VK_PRINTSCREEN=44]="DOM_VK_PRINTSCREEN",t[t.DOM_VK_INSERT=45]="DOM_VK_INSERT",t[t.DOM_VK_DELETE=46]="DOM_VK_DELETE",t[t.DOM_VK_0=48]="DOM_VK_0",t[t.DOM_VK_1=49]="DOM_VK_1",t[t.DOM_VK_2=50]="DOM_VK_2",t[t.DOM_VK_3=51]="DOM_VK_3",t[t.DOM_VK_4=52]="DOM_VK_4",t[t.DOM_VK_5=53]="DOM_VK_5",t[t.DOM_VK_6=54]="DOM_VK_6",t[t.DOM_VK_7=55]="DOM_VK_7",t[t.DOM_VK_8=56]="DOM_VK_8",t[t.DOM_VK_9=57]="DOM_VK_9",t[t.DOM_VK_SEMICOLON=59]="DOM_VK_SEMICOLON",t[t.DOM_VK_EQUALS=61]="DOM_VK_EQUALS",t[t.DOM_VK_A=65]="DOM_VK_A",t[t.DOM_VK_B=66]="DOM_VK_B",t[t.DOM_VK_C=67]="DOM_VK_C",t[t.DOM_VK_D=68]="DOM_VK_D",t[t.DOM_VK_E=69]="DOM_VK_E",t[t.DOM_VK_F=70]="DOM_VK_F",t[t.DOM_VK_G=71]="DOM_VK_G",t[t.DOM_VK_H=72]="DOM_VK_H",t[t.DOM_VK_I=73]="DOM_VK_I",t[t.DOM_VK_J=74]="DOM_VK_J",t[t.DOM_VK_K=75]="DOM_VK_K",t[t.DOM_VK_L=76]="DOM_VK_L",t[t.DOM_VK_M=77]="DOM_VK_M",t[t.DOM_VK_N=78]="DOM_VK_N",t[t.DOM_VK_O=79]="DOM_VK_O",t[t.DOM_VK_P=80]="DOM_VK_P",t[t.DOM_VK_Q=81]="DOM_VK_Q",t[t.DOM_VK_R=82]="DOM_VK_R",t[t.DOM_VK_S=83]="DOM_VK_S",t[t.DOM_VK_T=84]="DOM_VK_T",t[t.DOM_VK_U=85]="DOM_VK_U",t[t.DOM_VK_V=86]="DOM_VK_V",t[t.DOM_VK_W=87]="DOM_VK_W",t[t.DOM_VK_X=88]="DOM_VK_X",t[t.DOM_VK_Y=89]="DOM_VK_Y",t[t.DOM_VK_Z=90]="DOM_VK_Z",t[t.DOM_VK_CONTEXT_MENU=93]="DOM_VK_CONTEXT_MENU",t[t.DOM_VK_NUMPAD0=96]="DOM_VK_NUMPAD0",t[t.DOM_VK_NUMPAD1=97]="DOM_VK_NUMPAD1",t[t.DOM_VK_NUMPAD2=98]="DOM_VK_NUMPAD2",t[t.DOM_VK_NUMPAD3=99]="DOM_VK_NUMPAD3",t[t.DOM_VK_NUMPAD4=100]="DOM_VK_NUMPAD4",t[t.DOM_VK_NUMPAD5=101]="DOM_VK_NUMPAD5",t[t.DOM_VK_NUMPAD6=102]="DOM_VK_NUMPAD6",t[t.DOM_VK_NUMPAD7=103]="DOM_VK_NUMPAD7",t[t.DOM_VK_NUMPAD8=104]="DOM_VK_NUMPAD8",t[t.DOM_VK_NUMPAD9=105]="DOM_VK_NUMPAD9",t[t.DOM_VK_MULTIPLY=106]="DOM_VK_MULTIPLY",t[t.DOM_VK_ADD=107]="DOM_VK_ADD",t[t.DOM_VK_SEPARATOR=108]="DOM_VK_SEPARATOR",t[t.DOM_VK_SUBTRACT=109]="DOM_VK_SUBTRACT",t[t.DOM_VK_DECIMAL=110]="DOM_VK_DECIMAL",t[t.DOM_VK_DIVIDE=111]="DOM_VK_DIVIDE",t[t.DOM_VK_F1=112]="DOM_VK_F1",t[t.DOM_VK_F2=113]="DOM_VK_F2",t[t.DOM_VK_F3=114]="DOM_VK_F3",t[t.DOM_VK_F4=115]="DOM_VK_F4",t[t.DOM_VK_F5=116]="DOM_VK_F5",t[t.DOM_VK_F6=117]="DOM_VK_F6",t[t.DOM_VK_F7=118]="DOM_VK_F7",t[t.DOM_VK_F8=119]="DOM_VK_F8",t[t.DOM_VK_F9=120]="DOM_VK_F9",t[t.DOM_VK_F10=121]="DOM_VK_F10",t[t.DOM_VK_F11=122]="DOM_VK_F11",t[t.DOM_VK_F12=123]="DOM_VK_F12",t[t.DOM_VK_F13=124]="DOM_VK_F13",t[t.DOM_VK_F14=125]="DOM_VK_F14",t[t.DOM_VK_F15=126]="DOM_VK_F15",t[t.DOM_VK_F16=127]="DOM_VK_F16",t[t.DOM_VK_F17=128]="DOM_VK_F17",t[t.DOM_VK_F18=129]="DOM_VK_F18",t[t.DOM_VK_F19=130]="DOM_VK_F19",t[t.DOM_VK_F20=131]="DOM_VK_F20",t[t.DOM_VK_F21=132]="DOM_VK_F21",t[t.DOM_VK_F22=133]="DOM_VK_F22",t[t.DOM_VK_F23=134]="DOM_VK_F23",t[t.DOM_VK_F24=135]="DOM_VK_F24",t[t.DOM_VK_NUM_LOCK=144]="DOM_VK_NUM_LOCK",t[t.DOM_VK_SCROLL_LOCK=145]="DOM_VK_SCROLL_LOCK",t[t.DOM_VK_COMMA=188]="DOM_VK_COMMA",t[t.DOM_VK_PERIOD=190]="DOM_VK_PERIOD",t[t.DOM_VK_SLASH=191]="DOM_VK_SLASH",t[t.DOM_VK_BACK_QUOTE=192]="DOM_VK_BACK_QUOTE",t[t.DOM_VK_OPEN_BRACKET=219]="DOM_VK_OPEN_BRACKET",t[t.DOM_VK_BACK_SLASH=220]="DOM_VK_BACK_SLASH",t[t.DOM_VK_CLOSE_BRACKET=221]="DOM_VK_CLOSE_BRACKET",t[t.DOM_VK_QUOTE=222]="DOM_VK_QUOTE",t[t.DOM_VK_META=224]="DOM_VK_META"}(e.KeyEvent||(e.KeyEvent={}))},function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(t){"object"==typeof window&&(n=window)}t.exports=n},function(t,e,n){var i=n(87),r="["+n(301)+"]",o=RegExp("^"+r+r+"*"),a=RegExp(r+r+"*$"),s=function(t){return function(e){var n=String(i(e));return 1&t&&(n=n.replace(o,"")),2&t&&(n=n.replace(a,"")),n}};t.exports={start:s(1),end:s(2),trim:s(3)}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(1010);var i=n(520);function r(t){var e=t.firstElementChild,n=t.lastElementChild,i=e.firstElementChild;n.scrollLeft=n.scrollWidth,n.scrollTop=n.scrollHeight,i.style.width=String(e.offsetWidth+1)+"px",i.style.height=String(e.offsetHeight+1)+"px",e.scrollLeft=e.scrollWidth,e.scrollTop=e.scrollHeight}e.addResizeEventListener=function(t,e){var n=document.createElement("div");n.className="resize-triggers",n.innerHTML='<div class="expand-trigger"><div></div></div><div class="contract-trigger"></div>';var o=function(){e(),r(n)},a=function(){i.stylesLoaded()?(t.appendChild(n),r(n),n.addEventListener("scroll",o,!0),n.addEventListener(function(t){t||(t=document.createElement("fakeelement"));var e="animationstart";if(void 0===t.style.animationName)for(var n=0,i=[{prefix:"Webkit",event:"webkitAnimationStart"},{prefix:"Moz",event:"animationstart"},{prefix:"O",event:"oAnimationStart"},{prefix:"ms",event:"MSAnimationStart"}];n<i.length;n++){var r=i[n];t.style.getPropertyValue(r.prefix+"animationName")&&(e=r.event)}return e}(t),o,!0)):window.setTimeout(a,50)};a()}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(t){this.gettextCatalog=t}return t.prototype.report=function(){return this.currentErrorMessage},t}();e.ServerJobFailureDetector=i},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(4),a=n(137),s=n(52),c=n(67),l=n(258),u=n(153),d=function(t){function e(e,n,i){var r=t.call(this)||this;return r.startPoint=e,r.UoMService=n,r.onFinishCreation=i,r.circleStart=a.MeasurementObject3D.createCircle(r.startPoint),r.add(r.circleStart),r}return r(e,t),Object.defineProperty(e.prototype,"numberOfPoints",{get:function(){return this.endPoint?2:1},enumerable:!0,configurable:!0}),e.prototype.dispose=function(){this.line.geometry.dispose(),this.textSprite&&this.textSprite.removeSpriteObject()},e.prototype.updateOrientationForViewport=function(t){var n=t.name===s.SplitViewportName.TOP_VIEW?void 0:t.camera.position;this.circleStart.lookAt(n||new o.Vector3(this.circleStart.position.x,this.circleStart.position.y,this.circleStart.position.z+e.ORIENTATION_HEIGHT_DIFFERENCE)),this.circleEnd&&this.circleEnd.lookAt(n||new o.Vector3(this.circleEnd.position.x,this.circleEnd.position.y,this.circleEnd.position.z+e.ORIENTATION_HEIGHT_DIFFERENCE))},e.prototype.updateMeshScaleForViewport=function(e){var n=[this.circleStart];this.circleEnd&&n.push(this.circleEnd),c.setMeshScreenSize(e,n,a.MeasurementObject3D.POINT_PIXEL_SIZE,!1,e.name!==s.SplitViewportName.TOP_VIEW),t.prototype.updateMeshScaleForViewport.call(this,e)},e.prototype.addPoint=function(t,n){var i=this.calculateCirclePosition(t);this.startPoint.distanceTo(i)<=e.MIN_LENGTH||(this.endPoint=i,this.circleEnd=a.MeasurementObject3D.createCircle(this.endPoint),this.line=a.MeasurementObject3D.createLine(this.startPoint,this.endPoint),this.addTextSprite(),this.add(this.circleEnd,this.line),n&&(this.pov=n),this.onFinishCreation&&this.onFinishCreation(this))},e.prototype.putPointer=function(t){var e=this.calculateCirclePosition(t);this.removeMeshes(this.line,this.projectionLine),this.removeTextSprite(),this.line=a.MeasurementObject3D.createLine(this.startPoint,this.endPoint||e),this.projectionLine=a.MeasurementObject3D.createDottedLine(t,e),this.add(this.line,this.projectionLine),this.addTextSprite(this.endPoint||e)},e.prototype.getPointsPositions=function(){return[this.startPoint,this.endPoint]},e.prototype.dragObject=function(t,e){var n=this.calculateCirclePosition(e);return t===this.circleStart?this.startPoint.copy(n):t===this.circleEnd&&this.endPoint.copy(n),t.position.copy(n),this.putPointer(e),!0},e.prototype.dragObjectEnd=function(e){t.prototype.dragObjectEnd.call(this,e),this.removeMeshes(this.projectionLine)},e.prototype.undoPoint=function(){return!0},e.prototype.getCenterLocation=function(){return l.getMidpoint(this.startPoint,this.endPoint)},e.prototype.getStartPoint=function(){return this.startPoint.clone()},e.prototype.getEndPoint=function(){return this.endPoint.clone()},e.prototype.getHoverableObjects=function(){return[this.line].filter(function(t){return void 0!==t})},e.prototype.getPoints=function(){return[this.circleStart,this.circleEnd].filter(function(t){return void 0!==t})},e.prototype.getMeasurementText=function(){return this.UoMService.convert(this.getValue(),u.MeasurementDomain.DISTANCE,2,void 0,.1,!0)},e.prototype.getValue=function(){return this.startPoint.distanceTo(this.endPoint)},e.prototype.addTextSprite=function(t){var e=t||this.endPoint,n=this.startPoint.distanceTo(e),i=e.clone().sub(this.startPoint).normalize().multiplyScalar(.5*n),r=this.startPoint.clone().add(i);this.textSprite=this.createTextSprite(r,this.UoMService.convert(n,u.MeasurementDomain.DISTANCE,2,void 0,.1,!0),this.getIcon()),this.updateTextSpriteMaterial(),this.add(this.textSprite.spriteObject)},e.prototype.isPoint=function(t){return t===this.circleStart||t===this.circleEnd},e.MIN_LENGTH=.01,e}(a.MeasurementObject3D);e.DistanceMeasurementObject3D=d},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t[t.MainViewContext=0]="MainViewContext",t[t.MapViewContext=1]="MapViewContext",t[t.SidebarEditor=2]="SidebarEditor"}(e.MenuType||(e.MenuType={}))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(80),s=(n(28),n(101)),c=n(67),l=n(40),u=n(212),d=n(157),p=(n(49),n(14),n(15),n(25)),h=n(4),f=n(52),g=(n(266),n(17),n(6)),m=n(0),v=(n(24),n(0)),y=n(15),b=n(28),w=n(14),S=n(266),x=n(49),M=n(17),E=n(24),C=function(t){function e(i,r,o,a){var c=t.call(this,i,r,o)||this;return c.params=o,c.factory=a,c.visibleOnMobile=!1,c.positionValid=!1,c.euler=new h.Euler,c.visibleOnMobileConfig=!0,c.viewConeMesh=new h.Mesh,c.viewConeGeometry=new h.Geometry,c.viewConeMeshMaterial=new h.MeshBasicMaterial({transparent:!0,vertexColors:!0,depthTest:!1,depthWrite:!1}),c.positionMesh=new h.Mesh,c.positionMeshGeometry=new h.CircleGeometry(.5,12),c.positionMeshMaterial=new h.MeshBasicMaterial({opacity:e.POSITION_DEFAULT_OPACITY,side:h.DoubleSide,transparent:!0,depthTest:!1,depthWrite:!1,map:s.getTextureLoader().load(n(561),function(){return c.view.invalidateScene()})}),c.sceneGroup.name="CameraFOVLayer",a.ConfigService.initialized.then(function(){c.initCameraFOVLayer()}).catch(function(){}),c.trackSignal(a.GeoTransformationService.offsetChanged).connect(function(){return c.positionValid=!1}),c.onTransitionStart=function(){return c.positionValid=!0},c}return r(e,t),e.prototype.initCameraFOVLayer=function(){var t=this.factory.ConfigService.getInteger(p.Configs.CORE_MAP_FOV_BLENDING),e=this.factory.ConfigService.getInteger(p.Configs.CORE_MAP_FOV_COLOR),n=e?[new h.Color(e)]:void 0;this.visibleOnMobileConfig=this.factory.ConfigService.getBoolean(p.Configs.LAYERS_CAMERAFOV_MOBILE_VISIBLE,!0),this.setupScene(t,n)},e.prototype.setupScene=function(t,n){this.viewConeMesh.geometry=this.setupConeGeometry(t,n),this.viewConeMesh.material=this.viewConeMeshMaterial,this.viewConeMesh.renderOrder=1/0,this.positionMeshMaterial.color=this.isAlignmentMap()?e.POSITION_ALIGNMENT_COLOR:e.POSITION_DEFAULT_COLOR,this.positionMesh.geometry=this.positionMeshGeometry,this.positionMesh.material=this.positionMeshMaterial,this.positionMesh.renderOrder=1/0,this.isAlignmentMap()&&(this.viewConeMesh.userData.is2D=!0,this.positionMesh.userData.is2D=!0,this.addMeshHandler(this.viewConeMesh),this.addMeshHandler(this.positionMesh)),this.sceneGroup.add(this.viewConeMesh),this.sceneGroup.add(this.positionMesh)},e.prototype.addMeshHandler=function(t){var e,n=this;t.onDragStart=function(t,i){return!!n.isVisible(i)&&(e=i.unprojectScreenCoordinates(t.x,t.y,1),!0)},t.onDrag=function(i,r){var o=r.unprojectScreenCoordinates(i.x,i.y,1);if(n.view.inputHandler.isKeyPressed(u.KeyEvent.DOM_VK_SHIFT)){var a=d.getAngleBetweenVectors(o,e,t.position),s=n.factory.ViewService.mainView.currViewingDir;s.lon-=a,n.factory.ViewService.mainView.updateOrientation(s)}if(!n.view.inputHandler.isKeyPressed(u.KeyEvent.DOM_VK_SHIFT)){var c=(new h.Vector3).subVectors(o,e);n.factory.ViewService.mainView.getCamera().position.add(c)}e=o,n.view.invalidateScene()},t.onDragEnd=function(){if(n.factory.PointCloudMenuService.config.showPanosInPerspective&&!n.view.inputHandler.isKeyPressed(u.KeyEvent.DOM_VK_SHIFT)){var t=n.factory.ViewService.mainView.getCamera().position;n.factory.ImageService.getClosestImage(t).then(function(t){return n.factory.IV.moveToImage(t)}).catch(function(){})}}},e.prototype.setupConeGeometry=function(t,n){var i=void 0!==n;this.isAlignmentMap()&&(n=e.CONE_ALIGNMENT_COLORS,t=e.CONE_ALIGNMENT_BLENDING),void 0===t&&void 0===n?(t=e.CONE_DEFAULT_BLENDING,n=e.CONE_DEFAULT_COLORS):void 0===t?t=e.CONE_DEFAULT_BLENDING:void 0===n&&(n=[new h.Color(12109260)]),t===h.SubtractiveBlending&&(n=[new h.Color(16777215).sub(n[0])]),1===n.length&&t===h.AdditiveBlending?(n[1]=new h.Color(0),n[2]=new h.Color(0)):1===n.length&&(n[1]=new h.Color(16777215),n[2]=new h.Color(16777215)),this.coneColorFull=n[0],this.coneColorReduced=i?this.coneColorFull.clone().multiplyScalar(.5):e.CONE_CENTER_REDUCED_COLOR,this.viewConeMeshMaterial.blending=t;var r=this.isAlignmentMap()?e.CONE_ALIGNMENT_DISTANCE:e.CONE_DEFAULT_DISTANCE,o=r*Math.tan(.5),a=new h.Vector3(0,0,0),s=new h.Vector3(o,r,0),c=new h.Vector3(-o,r,0);return this.viewConeGeometry.vertices.push(a),this.viewConeGeometry.vertices.push(s),this.viewConeGeometry.vertices.push(c),this.viewConeGeometry.faces.push(new h.Face3(0,1,2)),this.viewConeGeometry.computeFaceNormals(),this.viewConeGeometry.faces[0].vertexColors[0]=new h.Color(n[0]),this.viewConeGeometry.faces[0].vertexColors[1]=new h.Color(n[1]),this.viewConeGeometry.faces[0].vertexColors[2]=new h.Color(n[2]),this.viewConeGeometry},e.prototype.updateMeshes=function(t,n){var i=this.isAlignmentMap()?e.CONE_ALIGNMENT_DISTANCE:e.CONE_DEFAULT_DISTANCE,r=n.getCamera();t.position.copy(r.position),t.position.z=0,this.euler.setFromQuaternion(r.quaternion,"ZYX"),t.rotation.z=this.euler.z;var o=n.cameraController.horizontalFOV/180*Math.PI;if(this.viewConeGeometry.vertices[1].x=i*Math.sin(o/2),this.viewConeGeometry.vertices[2].x=-i*Math.sin(o/2),this.viewConeGeometry.verticesNeedUpdate=!0,this.factory.ViewService.isMapPrimaryView()){var a=!1,s=this.factory.FloorChangerService.currentFloors;if(s){for(var c=0,l=s;c<l.length;c++){var u=l[c];u.zMin<=r.position.z&&r.position.z<=u.zMax&&(a=!0)}this.positionMeshMaterial.opacity=a?e.POSITION_DEFAULT_OPACITY:e.POSITION_REDUCED_OPACITY,this.viewConeGeometry.faces[0].vertexColors[0].set(a?this.coneColorFull:this.coneColorReduced),this.viewConeGeometry.colorsNeedUpdate=!0}}else this.positionMeshMaterial&&(this.positionMeshMaterial.opacity=e.POSITION_DEFAULT_OPACITY),this.viewConeGeometry.faces[0].vertexColors[0].set(this.coneColorFull),this.viewConeGeometry.colorsNeedUpdate=!0},e.prototype.isNormalMap=function(){return"MapScene"===this.view.scene.name},e.prototype.isAlignmentMap=function(){return!this.isNormalMap()&&(this.factory.ModeService.isDatasetAlignmentMode()||this.factory.ModeService.isSiteModelEditorMode())},e.prototype.isHelperActivated=function(){return this.factory.AlignmentHelperService.helperDefault.visible},e.prototype.isInMeasurementMode=function(){return this.factory.ModeService.isMeasurementsMode()},e.prototype.getLocationDotVisibility=function(){return l.isDesktopLayout()||!l.isDesktopLayout()&&this.visibleOnMobile&&this.visibleOnMobileConfig},e.prototype.isVisible=function(t){var e=t.name===f.SplitViewportName.TOP_VIEW;return this.isNormalMap()&&this.getLocationDotVisibility()&&this.positionValid||this.isHelperActivated()&&this.isAlignmentMap()&&e||this.isInMeasurementMode()&&e},e.prototype.onBeforeRender=function(){var t=this.factory.ViewService.mainView;t&&this.updateMeshes(this.sceneGroup,t.getDefaultViewport())},e.prototype.onBeforeRenderViewport=function(t){this.sceneGroup.visible=this.isVisible(t),c.setMeshScreenSize(t,this.positionMesh,12,!1,!0)},e.prototype.updateCameraFOVLayer=function(){this.viewConeMesh.parent&&this.positionMesh.parent&&(this.sceneGroup.remove(this.viewConeMesh),this.sceneGroup.remove(this.positionMesh),this.viewConeMesh.geometry.dispose(),this.viewConeGeometry=new h.Geometry,this.viewConeMesh=new h.Mesh,this.positionMesh=new h.Mesh,this.initCameraFOVLayer())},e.POSITION_DEFAULT_COLOR=new h.Color(3185610),e.POSITION_ALIGNMENT_COLOR=new h.Color(65433),e.POSITION_DEFAULT_OPACITY=.7,e.POSITION_REDUCED_OPACITY=.2,e.CONE_DEFAULT_COLORS=[new h.Color(12303291),new h.Color(16777215),new h.Color(16777215)],e.CONE_CENTER_REDUCED_COLOR=new h.Color(14277081),e.CONE_ALIGNMENT_COLORS=[new h.Color(65433),new h.Color(39219),new h.Color(39219)],e.CONE_DEFAULT_BLENDING=h.MultiplyBlending,e.CONE_ALIGNMENT_BLENDING=h.AdditiveBlending,e.CONE_DEFAULT_DISTANCE=5,e.CONE_ALIGNMENT_DISTANCE=15,e}(a.SceneLayer);e.CameraFOVLayer=C;var A=function(t){function e(e,n,i,r,o,a,s,c,l){var u=t.call(this)||this;return u.ConfigService=e,u.IV=n,u.FloorChangerService=i,u.GeoTransformationService=r,u.AlignmentHelperService=o,u.PointCloudMenuService=a,u.ImageService=s,u.ViewService=c,u.ModeService=l,u}return r(e,t),e.prototype.create=function(t,e,n){return new C(t,e,n,this)},e.ɵfac=function(t){return new(t||e)(v.ɵɵinject(y.ConfigService),v.ɵɵinject("IV"),v.ɵɵinject(b.FloorChangerService),v.ɵɵinject(w.GeoTransformationService),v.ɵɵinject(S.AlignmentHelperService),v.ɵɵinject("PointCloudMenuService"),v.ɵɵinject(x.ImageService),v.ɵɵinject(M.ViewService),v.ɵɵinject(E.ModeService))},e.ɵprov=v.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(a.SceneLayerFactory);e.CameraFOVLayerFactory=A,v.ɵsetClassMetadata(A,[{type:m.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:y.ConfigService},{type:void 0,decorators:[{type:m.Inject,args:["IV"]}]},{type:b.FloorChangerService},{type:w.GeoTransformationService},{type:S.AlignmentHelperService},{type:void 0,decorators:[{type:m.Inject,args:["PointCloudMenuService"]}]},{type:x.ImageService},{type:M.ViewService},{type:E.ModeService}]},null),o.module("IVWebApp").service("CameraFOVLayerFactory",g.downgradeInjectable(A))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(){}return t.createBundleEditorConfig=function(t){return{title:t,checkForMapData:!1,showColorpicker:!1,showDatasetVisibilitySwitcher:!1,showDatasets:!0,showDatasetSelectButtons:!0,showDatasetJumpButtons:!1,showDatasetEditButtons:!1,showDatasetZoomButtons:!1,showDatasetLockButtons:!1,showDatasetReferenceMarkerButtons:!1,showSiteModelJumpButtons:!1,showSiteModelEditButtons:!1,showEmptySiteModelEntities:!1,siteModelTitlePadding:55}},t.createSiteModelEditorConfig=function(t){return{title:t,checkForMapData:!1,showColorpicker:!0,showDatasetVisibilitySwitcher:!0,showDatasets:!0,showDatasetSelectButtons:!0,showDatasetJumpButtons:!1,showDatasetEditButtons:!1,showDatasetZoomButtons:!0,showDatasetLockButtons:!1,showDatasetReferenceMarkerButtons:!1,showSiteModelJumpButtons:!1,showSiteModelEditButtons:!0,showEmptySiteModelEntities:!0,siteModelTitlePadding:180}},t.createDatasetAlignmentConfig=function(t){return{title:t,checkForMapData:!1,showColorpicker:!0,showDatasetVisibilitySwitcher:!0,showDatasets:!0,showDatasetSelectButtons:!0,showDatasetJumpButtons:!1,showDatasetEditButtons:!1,showDatasetZoomButtons:!0,showDatasetLockButtons:!0,showDatasetReferenceMarkerButtons:!0,showSiteModelJumpButtons:!1,showSiteModelEditButtons:!1,showEmptySiteModelEntities:!0,siteModelTitlePadding:135}},t.createGeoRegistrationConfig=function(t){return{title:t,checkForMapData:!0,showColorpicker:!1,showDatasetVisibilitySwitcher:!0,showDatasets:!0,showDatasetSelectButtons:!0,showDatasetJumpButtons:!1,showDatasetEditButtons:!1,showDatasetZoomButtons:!0,showDatasetLockButtons:!0,showDatasetReferenceMarkerButtons:!0,showSiteModelJumpButtons:!1,showSiteModelEditButtons:!1,showEmptySiteModelEntities:!0,siteModelTitlePadding:135}},t.createDatasetMenuConfig=function(t){return{title:t,checkForMapData:!1,showColorpicker:!1,showDatasetVisibilitySwitcher:!0,showDatasets:!0,showDatasetSelectButtons:!0,showDatasetJumpButtons:!0,showDatasetEditButtons:!0,showDatasetZoomButtons:!1,showDatasetLockButtons:!1,showDatasetReferenceMarkerButtons:!1,showSiteModelJumpButtons:!0,showSiteModelEditButtons:!1,showEmptySiteModelEntities:!0,siteModelTitlePadding:95}},t.createSelectDatasetConfig=function(t){return{title:t,checkForMapData:!1,showColorpicker:!1,showDatasetVisibilitySwitcher:!1,showDatasets:!0,showDatasetSelectButtons:!0,showDatasetJumpButtons:!1,showDatasetEditButtons:!1,showDatasetZoomButtons:!1,showDatasetLockButtons:!1,showDatasetReferenceMarkerButtons:!1,showSiteModelJumpButtons:!1,showSiteModelEditButtons:!1,showEmptySiteModelEntities:!1,siteModelTitlePadding:95}},t}();e.DatasetTreeConfigurationFactory=i},function(t,e,n){"use strict";n.d(e,"a",function(){return s});var i=n(1),r=n(26),o=n(280),a=n(71);function s(t){return function(e){return 0===t?Object(a.b)():e.lift(new c(t))}}var c=function(){function t(t){if(this.total=t,this.total<0)throw new o.a}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.total))},t}(),l=function(t){function e(e,n){var i=t.call(this,e)||this;return i.total=n,i.count=0,i}return i.c(e,t),e.prototype._next=function(t){var e=this.total,n=++this.count;n<=e&&(this.destination.next(t),n===e&&(this.destination.complete(),this.unsubscribe()))},e}(r.a)},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t[t.None=0]="None",t[t.PointCloud=1]="PointCloud",t[t.Panorama=2]="Panorama",t[t.PanoramaAndPointCloud=3]="PanoramaAndPointCloud"}(e.RenderingMode||(e.RenderingMode={}))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o,a=n(378),s=n(1234),c=n(108),l=n(102),u=n(4);!function(t){t.POLYGON="POLYGON",t.LINE="LINE"}(o=e.VectorEntityType||(e.VectorEntityType={}));var d=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.resolveInjectables=function(){t.prototype.resolveInjectables.call(this),this.GeoTransformationService=this.injectables.GeoTransformationService},e.prototype.copy=function(e,n){return void 0===n&&(n=!1),t.prototype.fill.call(this,e),this.type=e.type,this.color=e.color,this.vectorEntity=e.vectorEntity.clone(),this.vectorLayer=e.vectorLayer,this.vectorLayerId=e.vectorLayerId,this.area=e.area,n||(this.vectorEntityLocal=e.vectorEntityLocal.clone()),this},e.prototype.fillFromData=function(e){if(t.prototype.fillFromData.call(this,e),this.type=e.type,this.color=e.color,this.vectorEntity=e.type===o.POLYGON?new a.Polygon(this.GeoTransformationService,e.vector_entity):new s.LineString(this.GeoTransformationService,e.vector_entity),!this.GeoTransformationService.isInitialized()){var n=this.vectorEntity.getFirstPoint();this.GeoTransformationService.setOffsetFromGlobal(new u.Vector3(n.x,n.y,0))}this.vectorEntityLocal=this.vectorEntity.toLocalGeometry(),this.vectorLayerId=e.vector_layer_id,this.area=e.area},e.prototype.toData=function(){throw new c.IVFrontendException("Modifying vector entities is not possible.")},e.prototype.onReferenceSystemChangedEvent=function(){this.computeLocalCoordinates()},e.prototype.computeLocalCoordinates=function(){this.vectorEntityLocal=this.vectorEntity.toLocalGeometry()},e}(l.RepositoryObject);e.VectorEntityEntity=d},function(t,e,n){"use strict";function i(t){return null!==t&&"object"==typeof t}n.d(e,"a",function(){return i})},function(t,e,n){"use strict";n.d(e,"a",function(){return r});var i=n(26);function r(t){for(;t;){var e=t,n=e.closed,r=e.destination,o=e.isStopped;if(n||o)return!1;t=r&&r instanceof i.a?r:null}return!0}},function(t,e,n){"use strict";n.d(e,"a",function(){return o});var i=n(12),r=n(33);function o(t,e){return new i.a(function(n){var i=new r.a,o=0;return i.add(e.schedule(function(){o!==t.length?(n.next(t[o++]),n.closed||i.add(this.schedule())):n.complete()})),i})}},function(t,e,n){"use strict";n.d(e,"a",function(){return o});var i=n(84),r=n(167),o={closed:!0,next:function(t){},error:function(t){if(i.a.useDeprecatedSynchronousErrorHandling)throw t;Object(r.a)(t)},complete:function(){}}},function(t,e,n){"use strict";n.d(e,"a",function(){return c});var i=n(12),r=n(56),o=n(62),a=n(224),s=n(76);function c(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];if(1===t.length){var n=t[0];if(Object(r.a)(n))return l(n,null);if(Object(a.a)(n)&&Object.getPrototypeOf(n)===Object.prototype){var i=Object.keys(n);return l(i.map(function(t){return n[t]}),i)}}if("function"==typeof t[t.length-1]){var s=t.pop();return l(t=1===t.length&&Object(r.a)(t[0])?t[0]:t,null).pipe(Object(o.a)(function(t){return s.apply(void 0,t)}))}return l(t,null)}function l(t,e){return new i.a(function(n){var i=t.length;if(0!==i)for(var r=new Array(i),o=0,a=0,c=function(c){var l=Object(s.a)(t[c]),u=!1;n.add(l.subscribe({next:function(t){u||(u=!0,a++),r[c]=t},error:function(t){return n.error(t)},complete:function(){++o!==i&&u||(a===i&&n.next(e?e.reduce(function(t,e,n){return t[e]=r[n],t},{}):r),n.complete())}}))},l=0;l<i;l++)c(l);else n.complete()})}},function(t,e,n){"use strict";n.d(e,"a",function(){return s});var i=n(12),r=n(56),o=n(142),a=n(62);function s(t,e,n,c){return Object(o.a)(n)&&(c=n,n=void 0),c?s(t,e,n).pipe(Object(a.a)(function(t){return Object(r.a)(t)?c.apply(void 0,t):c(t)})):new i.a(function(i){!function t(e,n,i,r,o){var a;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(e)){var s=e;e.addEventListener(n,i,o),a=function(){return s.removeEventListener(n,i,o)}}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(e)){var c=e;e.on(n,i),a=function(){return c.off(n,i)}}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(e)){var l=e;e.addListener(n,i),a=function(){return l.removeListener(n,i)}}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(var u=0,d=e.length;u<d;u++)t(e[u],n,i,r,o)}r.add(a)}(t,e,function(t){arguments.length>1?i.next(Array.prototype.slice.call(arguments)):i.next(t)},i,n)})}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(152);e.runWithBaseHref=function(t){var e=document.head.getElementsByTagName("base")[0];e&&document.head.removeChild(e);var n=function(){var t=document.createElement("base");return t.href=i.getBaseUrl(),document.head.appendChild(t),t}();try{return t()}finally{document.head.removeChild(n),e&&document.head.appendChild(e)}}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(72),n(152)),o=n(0),a=n(6),s=n(0),c=n(72),l=function(){function t(t){this.JWTTokenService=t,this.URL_REGEX=/src="(.*?)"/g}return t.prototype.expandSelfHostedUrls=function(t){var e=this;return this.forEachUrl(t,function(t){return e.expandUploadedContentUrl(t)})},t.prototype.collapseSelfHostedUrls=function(t){var e=this;return this.forEachUrl(t,function(t){return e.collapseUploadedContentUrl(t)})},t.prototype.expandUploadedContentUrl=function(t){var e=new URL(r.getBaseUrl()),n=new URL(t,e);return e.hostname!==n.hostname?t:(this.JWTTokenService.setJwtOnUrl(n),n.href)},t.prototype.collapseUploadedContentUrl=function(t){var e=new URL(r.getBaseUrl()),n=new URL(t,e);return e.hostname!==n.hostname?t:(n.searchParams.delete(this.JWTTokenService.getJwtUrlParamKey()),n.pathname.replace(e.pathname,"")+n.search)},t.prototype.forEachUrl=function(t,e){for(var n=this.URL_REGEX.exec(t);n;n=this.URL_REGEX.exec(t)){var i=e(n[1]);t=t.slice(0,n.index+5)+i+t.slice(this.URL_REGEX.lastIndex-1)}return t},t.ɵfac=function(e){return new(e||t)(s.ɵɵinject(c.JWTTokenService))},t.ɵprov=s.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.ContentService=l,s.ɵsetClassMetadata(l,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:c.JWTTokenService}]},null),i.module("IVWebApp").service("ContentService",a.downgradeInjectable(l))},function(t,e,n){"use strict";var i;Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.DEVELOPER_MENU="DEVELOPER_MENU",t.CLOUD_PROCESSING="CLOUD_PROCESSING",t.MESHES="MESHES"}(i=e.FeatureFlag||(e.FeatureFlag={}));var r=function(){function t(t){this.fillFromData(t)}return t.prototype.fillFromData=function(t){this.cloudProcessingEnabled=t.cloud_processing,this.developerMenuEnabled=t.developer_menu,this.meshesEnabled=t.meshes},t.prototype.isEnabled=function(t){switch(t){case i.CLOUD_PROCESSING:return this.cloudProcessingEnabled;case i.DEVELOPER_MENU:return this.developerMenuEnabled;case i.MESHES:return this.meshesEnabled;default:return!1}},t}();e.FeatureFlagResponse=r},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t[t.LEFT=0]="LEFT",t[t.MIDDLE=1]="MIDDLE",t[t.RIGHT=2]="RIGHT"}(e.MouseButton||(e.MouseButton={}))},function(t,e,n){var i=n(18),r=n(133),o="".split;t.exports=i(function(){return!Object("z").propertyIsEnumerable(0)})?function(t){return"String"==r(t)?o.call(t,""):Object(t)}:Object},function(t,e,n){var i=n(42),r=n(189),o=n(45)("species");t.exports=function(t,e){var n;return r(t)&&("function"!=typeof(n=t.constructor)||n!==Array&&!r(n.prototype)?i(n)&&null===(n=n[o])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===e?0:e)}},function(t,e){var n=0,i=Math.random();t.exports=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++n+i).toString(36)}},function(t,e,n){var i=n(461),r=n(354);t.exports=Object.keys||function(t){return i(t,r)}},function(t,e,n){var i=n(109),r=n(44),o=n(175),a=function(t){return function(e,n,a){var s,c=i(e),l=r(c.length),u=o(a,l);if(t&&n!=n){for(;l>u;)if((s=c[u++])!=s)return!0}else for(;l>u;u++)if((t||u in c)&&c[u]===n)return t||u||0;return!t&&-1}};t.exports={includes:a(!0),indexOf:a(!1)}},function(t,e){t.exports={}},function(t,e){t.exports={}},function(t,e,n){var i=n(242),r=n(240),o=n(45)("iterator");t.exports=function(t){if(null!=t)return t[o]||t["@@iterator"]||r[i(t)]}},function(t,e,n){var i=n(361),r=n(133),o=n(45)("toStringTag"),a="Arguments"==r(function(){return arguments}());t.exports=i?r:function(t){var e,n,i;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),o))?n:a?r(e):"Object"==(i=r(e))&&"function"==typeof e.callee?"Arguments":i}},function(t,e,n){var i=n(98);t.exports=function(t,e,n){for(var r in e)i(t,r,e[r],n);return t}},function(t,e,n){var i=n(18);t.exports=!i(function(){return Object.isExtensible(Object.preventExtensions({}))})},function(t,e,n){var i=n(29),r=n(360),o=n(44),a=n(172),s=n(241),c=n(474),l=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,e,n,u,d){var p,h,f,g,m,v,y,b=a(e,n,u?2:1);if(d)p=t;else{if("function"!=typeof(h=s(t)))throw TypeError("Target is not iterable");if(r(h)){for(f=0,g=o(t.length);g>f;f++)if((m=u?b(i(y=t[f])[0],y[1]):b(t[f]))&&m instanceof l)return m;return new l(!1)}p=h.call(t)}for(v=p.next;!(y=v.call(p)).done;)if("object"==typeof(m=c(p,b,y.value,u))&&m&&m instanceof l)return m;return new l(!1)}).stop=function(t){return new l(!0,t)}},function(t,e,n){"use strict";var i=n(161),r=n(48),o=n(45),a=n(43),s=o("species");t.exports=function(t){var e=i(t),n=r.f;a&&e&&!e[s]&&n(e,s,{configurable:!0,get:function(){return this}})}},function(t,e,n){var i=n(18),r=n(45),o=n(499),a=r("species");t.exports=function(t){return o>=51||!i(function(){var e=[];return(e.constructor={})[a]=function(){return{foo:1}},1!==e[t](Boolean).foo})}},function(t,e,n){"use strict";var i=n(29);t.exports=function(){var t=i(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},function(t,e,n){var i,r,o;r=[n(19)],void 0===(o="function"==typeof(i=function(t){return t.ui=t.ui||{},t.ui.version="1.12.1"})?i.apply(e,r):i)||(t.exports=o)},function(t,e,n){"use strict";n.d(e,"a",function(){return o});var i=n(93),r=n(450);function o(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return Object(r.a)()(i.a.apply(void 0,t))}},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(70),a=n(525),s=(n(9),n(2)),c=n(6),l=n(0),u=n(0),d=n(9),p=function(t){function e(e){var n=t.call(this,a.ConfigEntity,e)||this;return n.RestService=e,n.path="configs",n}return r(e,t),e.ɵfac=function(t){return new(t||e)(u.ɵɵinject(d.RestService))},e.ɵprov=u.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(o.RestRepository);e.ConfigRepository=p,u.ɵsetClassMetadata(p,[{type:l.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:d.RestService}]},null),s.module("IVWebApp").service("ConfigRepository",c.downgradeInjectable(p))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(108),r=n(4),o=(new r.Quaternion).setFromAxisAngle(new r.Vector3(0,0,1),r.Math.degToRad(-90)),a=o.clone().inverse(),s=function(){function t(){}return t.fromArray=function(t){if(t){if(4!==t.length)throw new i.IVFrontendException("Wrong number of ordinates for a quaternion!");return new r.Quaternion(t[1],t[2],t[3],t[0]).multiply(o)}},t.toArray=function(t){if(t){var e=t.clone().multiply(a).toArray();return[e[3],e[0],e[1],e[2]]}},t.fromLonLat=function(t){if(t)return(new r.Quaternion).setFromEuler(new r.Euler(t.lon,t.lat,0))},t.toLonLat=function(t){if(t){var e=(new r.Euler).setFromQuaternion(t);return{lon:e.x,lat:e.y}}},t}();e.QuaternionFactory=s},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(96),r=n(252),o=function(){function t(t,e,n,i){this.location=t,this.orientation=e,this.fov=n,this.imageId=i}return t.fromDto=function(e){return e&&(e.image_id||e.orientation||e.location||e.fov)?new t(i.VectorFactory.fromArray3(e.location),r.QuaternionFactory.fromArray(e.orientation),e.fov,e.image_id):void 0},t.prototype.toDto=function(){return{image_id:this.imageId,fov:this.fov,orientation:r.QuaternionFactory.toArray(this.orientation),location:i.VectorFactory.toArray(this.location)}},t.prototype.clone=function(){return new t(this.location?this.location.clone():void 0,this.orientation?this.orientation.clone():void 0,this.fov,this.imageId)},t}();e.PointOfView=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(198),a=n(96),s=n(7),c=n(1059),l=function(){function t(){}return t.NAVVIS="NAVVIS",t.POINTCLOUD="POINTCLOUD",t}();e.DatasetType=l;var u=function(){function t(){}return t.OCTREE="OCTREE",t.POTREE="POTREE",t}();e.PointCloudType=u;var d=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.siteModelEntities=[],e}return r(e,t),Object.defineProperty(e.prototype,"color",{get:function(){return this._color},set:function(t){this._color!==t&&(this._color=t,this.invalidate())},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"siteModelEntity",{get:function(){return console.warn('Deprecated usage of "siteModelEntity", use "siteModelEntities" instead'),s.reduce(this.siteModelEntities,function(t,e){return c.SiteModelTypeUtil.compare(t.type,e.type)<0?t:e})},set:function(t){console.warn('Deprecated usage of "siteModelEntity", use "siteModelEntities" instead'),this.siteModelEntities.push(t)},enumerable:!0,configurable:!0}),e.prototype.resolveInjectables=function(){this.GeoTransformationService=this.injectables.GeoTransformationService},e.prototype.fill=function(e){t.prototype.fill.call(this,e),this.type=e.type,this.name=e.name,this.title=e.title,this.level=e.level,this.color=e.color,this._location=e._location.clone(),this._globalLocation=e._globalLocation.clone(),this.orientation=e.orientation,this.gridmapFilename=e.gridmapFilename,this.gridmapRes=e.gridmapRes,this.gridmapSize=e.gridmapSize?e.gridmapSize.clone():void 0,this.gridmapOrigin=e.gridmapOrigin?e.gridmapOrigin.clone():void 0,this.gridmapOrientation=e.gridmapOrientation,this.siteModelEntityIds=e.siteModelEntityIds,this.siteModelEntities=e.siteModelEntities,this.pointCloudType=e.pointCloudType,this.boundingBoxMin=e.boundingBoxMin?e.boundingBoxMin.clone():void 0,this.boundingBoxMax=e.boundingBoxMax?e.boundingBoxMax.clone():void 0,this.bundleId=e.bundleId,this.bundle=e.bundle,this.hasDepthImages=e.hasDepthImages,this.depthImageVersion=e.depthImageVersion,this.hasNormals=e.hasNormals,this.hasSensorFrame=e.hasSensorFrame,this.hasWebmesh=e.hasWebmesh,this.crs=e.crs,this.transform=e.transform},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.type=e.type,this.name=e.name,this.title=e.title,this.level=e.level,this.color=e.color,this.globalLocation=a.VectorFactory.fromArray3(e.location),this.orientation=e.orientation,this.gridmapFilename=e.gridmap_filename,this.gridmapRes=e.gridmap_res,this.gridmapSize=a.VectorFactory.fromArray2(e.gridmap_size),this.gridmapOrigin=a.VectorFactory.fromArray2(e.gridmap_origin),this.gridmapOrientation=e.gridmap_orientation,this.siteModelEntityIds=e.site_model_entity_ids||[],this.pointCloudType=e.point_cloud_type,this.boundingBoxMin=a.VectorFactory.fromArray3(e.bounding_box_min),this.boundingBoxMax=a.VectorFactory.fromArray3(e.bounding_box_max),this.bundleId=e.bundle_id,this.hasDepthImages=e.has_depth_images,this.hasImages=e.has_images,this.depthImageVersion=e.depth_image_version,this.hasSensorFrame=e.has_sensor_frame,this.hasWebmesh=e.has_webmesh},e.prototype.toData=function(){var t={};return this.fillDto(t),t.type=this.type,t.name=this.name,t.title=this.title,t.level=this.level,t.color=this.color,t.location=this.globalLocation?this.globalLocation.toArray():void 0,t.orientation=this.orientation,t.gridmap_filename=this.gridmapFilename,t.gridmap_res=this.gridmapRes,t.gridmap_size=this.gridmapSize?this.gridmapSize.toArray():void 0,t.gridmap_origin=this.gridmapOrigin?this.gridmapOrigin.toArray():void 0,t.gridmap_orientation=this.gridmapOrientation,t.site_model_entity_ids=this.siteModelEntities?this.siteModelEntities.map(function(t){return t.id}):[],t.point_cloud_type=this.pointCloudType,t.bounding_box_min=this.boundingBoxMin?this.boundingBoxMin.toArray():void 0,t.bounding_box_max=this.boundingBoxMax?this.boundingBoxMax.toArray():void 0,t.bundle_id=this.bundle?this.bundle.id:void 0,t.has_depth_images=this.hasDepthImages,t.depth_image_version=this.depthImageVersion,t.has_sensor_frame=this.hasSensorFrame,t.has_webmesh=this.hasWebmesh,t},e.prototype.onReferenceSystemChangedEvent=function(){this.computeLocalCoordinates()},e.prototype.computeLocalCoordinates=function(){this._location=this.GeoTransformationService.vectorToLocal(this._globalLocation)},Object.defineProperty(e.prototype,"location",{get:function(){return this._location},set:function(t){this._location=t,this._globalLocation=this.GeoTransformationService.vectorToGlobal(t)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"globalLocation",{get:function(){return this._globalLocation},set:function(t){this._globalLocation=t,this.GeoTransformationService.isInitialized()||this.GeoTransformationService.setOffsetFromGlobal(t),this.computeLocalCoordinates()},enumerable:!0,configurable:!0}),e}(o.SecureRepositoryObject);e.DatasetEntity=d},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.MAP="map",t.PANORAMA="panorama"}(e.ViewType||(e.ViewType={}))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(1065),o=(n(9),n(8)),a=(n(50),n(40)),s=(n(27),n(6)),c=n(0),l=(n(86),n(120),n(0)),u=n(9),d=n(50),p=n(27),h=n(86),f=n(120),g=function(){function t(t,e,n,i,r){this.RestService=t,this.LanguageService=e,this.UserService=n,this.InstanceInformationService=i,this.FeatureFlagService=r,this.path="gtm",this.initialized=this.getGoogleTagManagerEntity()}return t.prototype.setupTrackingScript=function(){var t=this;return this.getTrackingCodeScript().then(function(t){return t?(i.element("head").append(t),Promise.resolve()):Promise.reject("GTM is not enabled.")}).then(function(){return t.postGtmInfoToDataLayer()})},t.prototype.getTrackingCodeScript=function(){return this.initialized.then(function(e){if(e.isTrackingEnabled)return t.createTrackingScriptCode(e.gtmContainerId)})},t.prototype.postGtmInfoToDataLayer=function(){var e,n,i=this;this.LanguageService.initialized.then(function(){return i.InstanceInformationService.getInformation()}).then(function(t){return e=t.isEmpty}).then(function(){return i.FeatureFlagService.getAllEnabledFeatures()}).then(function(t){return n=t}).then(function(){return i.initialized}).then(function(r){t.trackEvent("instanceVisited",{instanceName:r.instanceName,instanceType:r.instanceType,isTrial:r.isTrial,dataExists:!e,languageSet:i.LanguageService.getCurrentLanguage(),isInIframe:a.isInIframe(),isBrowserIE:a.isBrowserIE(),isPlatformIOS:a.isPlatform(a.Platform.IOS),isMobileLayout:a.isMobileLayout(),isMobileBrowser:a.isMobileBrowser(),wasLoggedIn:i.UserService.isUserLoggedIn(),enabledFeatures:n})}).catch(o.handleWarning)},t.prototype.getGoogleTagManagerEntity=function(){return this.RestService.getApi(this.path,{},void 0).then(function(t){var e=new r.GoogleTagManagerEntity;return e.fillFromData(t),e})},t.createTrackingScriptCode=function(t){return"\n\t\t\t\t\x3c!-- Create dataLayer --\x3e\n\t\t\t\t<script>dataLayer = window.dataLayer || [];<\/script>\n\t\t\t\t\x3c!-- Google Tag Manager --\x3e\n\t\t\t\t<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\n\t\t\t\tnew Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\n\t\t\t\tj=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=\n\t\t\t\t'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);\n\t\t\t\t})(window,document,'script','dataLayer','"+t+"');<\/script>\n\t\t\t\t\x3c!-- End Google Tag Manager --\x3e\n\t\t\t\t"},t.prototype.trackUserLogin=function(e){var n=this.UserService.getRoles();t.trackEvent("userLoggedIn",{isAdmin:e,roles:n})},t.trackUserLogout=function(){t.trackEvent("userLoggedOut")},t.trackHamburgerClick=function(){t.trackEvent("menu_hamburgerMenuClicked")},t.trackDatasetsMenuUsage=function(e){t.trackEvent("menu_datasetsViewed",{timeSpent:e})},t.trackViewMenuUsage=function(e){t.trackEvent("menu_viewViewed",{timeSpent:e})},t.trackPointcloudMenuUsage=function(e){t.trackEvent("menu_pointCloudSettingsViewed",{timeSpent:e})},t.trackPoiTypesMenuUsage=function(e){t.trackEvent("menu_poiTypeViewed",{timeSpent:e})},t.trackShareMenuUsage=function(e){t.trackEvent("menu_shareViewed",{timeSpent:e})},t.trackGeoRegistrationModeUsage=function(e){t.trackEvent("mode_geoRegistrationVisited",{timeSpent:e})},t.trackDatasetAlignmentModeUsage=function(e){t.trackEvent("mode_datasetAlignmentVisited",{timeSpent:e})},t.trackSiteModelModeUsage=function(e){t.trackEvent("mode_siteModelEditorVisited",{timeSpent:e})},t.trackNavGraphModeUsage=function(e){t.trackEvent("mode_navGraphEditorVisited",{timeSpent:e})},t.trackVectorMapModeUsage=function(e){t.trackEvent("mode_vectorMapEditorVisited",{timeSpent:e})},t.trackMeasurementsModeUsage=function(e){t.trackEvent("mode_measurementsEditorVisited",{timeSpent:e})},t.trackDownloadPointCloudModeUsage=function(e){t.trackEvent("mode_downloadPointCloudVisited",{timeSpent:e})},t.trackSettingsMenuUsage=function(e){t.trackEvent("menu_settingsViewed",{timeSpent:e})},t.trackConfigSettingsUsage=function(e){t.trackEvent("settings_configurationVisited",{timeSpent:e})},t.trackAuthSettingsUsage=function(e){t.trackEvent("settings_authVisited",{timeSpent:e})},t.trackSubscriptionSettingsUsage=function(e){t.trackEvent("settings_subscriptionVisited",{timeSpent:e})},t.trackUsersSettingsUsage=function(e){t.trackEvent("settings_usersVisited",{timeSpent:e})},t.trackGroupsSettingsUsage=function(e){t.trackEvent("settings_groupsVisited",{timeSpent:e})},t.trackDataSettingsUsage=function(e){t.trackEvent("settings_datasetManagementVisited",{timeSpent:e})},t.trackHiddenImagesSettingsUsage=function(e){t.trackEvent("settings_hideImagesVisted",{timeSpent:e})},t.trackLoginMenuUsage=function(e){t.trackEvent("menu_loginPanelViewed",{timeSpent:e})},t.trackUserAdded=function(){t.trackEvent("settings_userAdded")},t.trackGroupAdded=function(){t.trackEvent("settings_groupAdded")},t.trackBundleEdited=function(){t.trackEvent("settings_bundleEdited")},t.trackBundleCreated=function(){t.trackEvent("settings_bundleCreated")},t.trackFileUploaded=function(e,n){t.trackEvent("settings_fileUploaded",{fileFormat:e,fileSize:n})},t.trackBundleDownload=function(){t.trackEvent("settings_bundleDownloaded")},t.trackBundleUnloaded=function(){t.trackEvent("settings_bundleUnloaded")},t.trackBundleLoaded=function(){t.trackEvent("settings_bundleLoaded")},t.trackDatasetUnloaded=function(){t.trackEvent("settings_datasetUnloaded")},t.trackDatasetLoaded=function(){t.trackEvent("settings_datasetLoaded")},t.trackMapsDownloaded=function(){t.trackEvent("settings_mapsDownloaded")},t.trackMapsUploaded=function(){t.trackEvent("settings_mapsUploaded")},t.trackMapsRemoved=function(){t.trackEvent("settings_mapsRemoved")},t.trackNavGraphCreated=function(){t.trackEvent("settings_navGraphCreated")},t.trackNavGraphRemoved=function(){t.trackEvent("settings_navGraphRemoved")},t.trackNavGraphImported=function(){t.trackEvent("settings_navGraphImported")},t.trackNavDataImported=function(){t.trackEvent("settings_navDataImported")},t.trackNavDataRemoved=function(){t.trackEvent("settings_navDataRemoved")},t.trackPoiCreated=function(){t.trackEvent("poiCreated")},t.trackPoiEdited=function(){t.trackEvent("poiEdited")},t.trackPoiDeleted=function(e){t.trackEvent("poiDeleted",{fromScene:e})},t.trackPoiOpen=function(){t.trackEvent("poiDetailsViewed")},t.trackPointCloudDownloadEntered=function(e){t.trackEvent("pointCloudDownloadEntered",{fromEntryPoint:e})},t.trackPointCloudDownloadEnteredIntoMode=function(e){t.trackEvent("pointCloudDownloadEnteredIntoMode",{initialViewMode:e})},t.trackPointCloudDownloadButtonClicked=function(e){t.trackEvent("pointCloudDownloadButtonClicked",{viewMode:e})},t.trackPointCloudDownloaded=function(){t.trackEvent("pointCloudDownloaded")},t.trackPointCloudDownloadViewModeChanged=function(e,n){t.trackEvent("pointCloudDownloadViewModeChanged",{fromViewMode:e,destinationViewMode:n})},t.trackSiteModelDetailsViewed=function(){t.trackEvent("siteModelDetailsViewed")},t.trackTemporaryPoiSharing=function(){t.trackEvent("temporaryPoiShared")},t.trackLocationSharing=function(){t.trackEvent("locationShared")},t.trackPoiSharing=function(){t.trackEvent("poiShared")},t.trackSiteModelSharing=function(){t.trackEvent("siteModelShared")},t.trackSearchPerformed=function(e,n){t.trackEvent("search_searchPerformed",{queryLength:e,resultsCount:n})},t.trackRouteSearchPerformed=function(e,n){t.trackEvent("route_searchPerformed",{queryLength:e,resultsCount:n})},t.trackSearchResultSelection=function(e){t.trackEvent("search_resultClicked",{isPoi:e,isSiteModel:!e})},t.trackLanguageChanged=function(e){t.trackEvent("languageChanged",{newLanguage:e})},t.trackCloudProcessingEnterEvent=function(){t.trackEvent("enterCloudProcessing")},t.trackUploadDataEnterEvent=function(){t.trackEvent("enterUploadData")},t.trackProcessingTaskEnterEvent=function(){t.trackEvent("enterProcessingTask")},t.trackProcessedDataEnterEvent=function(){t.trackEvent("enterProcessedData")},t.trackCreateNewProcessingTask=function(){t.trackEvent("createNewProcessingTask")},t.trackProcessingTaskCreationStepButtonClickedEvent=function(e){t.trackEvent("processingTaskCreationStepButtonClicked",{step:e})},t.trackProcessingTaskNextButtonClickedEvent=function(){t.trackEvent("trackProcessingTaskNextButtonClickedEvent")},t.trackEvent=function(t,e){void 0===e&&(e={}),e.event=t,this.track(e)},t.track=function(t){void 0===t&&(t={}),this.isGtmTrackingUpAndRunning()&&window.dataLayer.push(t)},t.isGtmTrackingUpAndRunning=function(){return void 0!==window.dataLayer},t.trackInvalidMeasuredControlPointPosesFileLines=function(e){t.trackEvent("invalidMeasuredControlPointPosesFileLines",{number:e})},t.trackViewControlPointsConfiguration=function(){t.trackEvent("viewControlPointsConfiguration")},t.ɵfac=function(e){return new(e||t)(l.ɵɵinject(u.RestService),l.ɵɵinject(d.LanguageService),l.ɵɵinject(p.UserService),l.ɵɵinject(h.InstanceInformationService),l.ɵɵinject(f.FeatureFlagsService))},t.ɵprov=l.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.GoogleTagManagerService=g,l.ɵsetClassMetadata(g,[{type:c.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:u.RestService},{type:d.LanguageService},{type:p.UserService},{type:h.InstanceInformationService},{type:f.FeatureFlagsService}]},null),i.module("IVWebApp").service("GoogleTagManagerService",s.downgradeInjectable(g))},function(t,e,n){(function(){"use strict";var i,r,o,a=this.THREE||n(4);if(!a)throw new Error("MeshLine requires three.js");function s(){this.positions=[],this.previous=[],this.next=[],this.side=[],this.width=[],this.indices_array=[],this.uvs=[],this.counters=[],this.geometry=new a.BufferGeometry,this.widthCallback=null,this.matrixWorld=new a.Matrix4}function c(t,e,n,i,r){var o;if(t=t.subarray||t.slice?t:t.buffer,n=n.subarray||n.slice?n:n.buffer,t=e?t.subarray?t.subarray(e,r&&e+r):t.slice(e,r&&e+r):t,n.set)n.set(t,i);else for(o=0;o<t.length;o++)n[o+i]=t[o];return n}function l(t){a.ShaderMaterial.call(this,{uniforms:Object.assign({},a.UniformsLib.fog,{lineWidth:{value:1},map:{value:null},useMap:{value:0},alphaMap:{value:null},useAlphaMap:{value:0},color:{value:new a.Color(16777215)},opacity:{value:1},resolution:{value:new a.Vector2(1,1)},sizeAttenuation:{value:1},near:{value:1},far:{value:1},dashArray:{value:0},dashOffset:{value:0},dashRatio:{value:.5},useDash:{value:0},visibility:{value:1},alphaTest:{value:0},repeat:{value:new a.Vector2(1,1)}}),vertexShader:a.ShaderChunk.meshline_vert,fragmentShader:a.ShaderChunk.meshline_frag}),this.type="MeshLineMaterial",Object.defineProperties(this,{lineWidth:{enumerable:!0,get:function(){return this.uniforms.lineWidth.value},set:function(t){this.uniforms.lineWidth.value=t}},map:{enumerable:!0,get:function(){return this.uniforms.map.value},set:function(t){this.uniforms.map.value=t}},useMap:{enumerable:!0,get:function(){return this.uniforms.useMap.value},set:function(t){this.uniforms.useMap.value=t}},alphaMap:{enumerable:!0,get:function(){return this.uniforms.alphaMap.value},set:function(t){this.uniforms.alphaMap.value=t}},useAlphaMap:{enumerable:!0,get:function(){return this.uniforms.useAlphaMap.value},set:function(t){this.uniforms.useAlphaMap.value=t}},color:{enumerable:!0,get:function(){return this.uniforms.color.value},set:function(t){this.uniforms.color.value=t}},opacity:{enumerable:!0,get:function(){return this.uniforms.opacity.value},set:function(t){this.uniforms.opacity.value=t}},resolution:{enumerable:!0,get:function(){return this.uniforms.resolution.value},set:function(t){this.uniforms.resolution.value.copy(t)}},sizeAttenuation:{enumerable:!0,get:function(){return this.uniforms.sizeAttenuation.value},set:function(t){this.uniforms.sizeAttenuation.value=t}},near:{enumerable:!0,get:function(){return this.uniforms.near.value},set:function(t){this.uniforms.near.value=t}},far:{enumerable:!0,get:function(){return this.uniforms.far.value},set:function(t){this.uniforms.far.value=t}},dashArray:{enumerable:!0,get:function(){return this.uniforms.dashArray.value},set:function(t){this.uniforms.dashArray.value=t,this.useDash=0!==t?1:0}},dashOffset:{enumerable:!0,get:function(){return this.uniforms.dashOffset.value},set:function(t){this.uniforms.dashOffset.value=t}},dashRatio:{enumerable:!0,get:function(){return this.uniforms.dashRatio.value},set:function(t){this.uniforms.dashRatio.value=t}},useDash:{enumerable:!0,get:function(){return this.uniforms.useDash.value},set:function(t){this.uniforms.useDash.value=t}},visibility:{enumerable:!0,get:function(){return this.uniforms.visibility.value},set:function(t){this.uniforms.visibility.value=t}},alphaTest:{enumerable:!0,get:function(){return this.uniforms.alphaTest.value},set:function(t){this.uniforms.alphaTest.value=t}},repeat:{enumerable:!0,get:function(){return this.uniforms.repeat.value},set:function(t){this.uniforms.repeat.value.copy(t)}}}),this.setValues(t)}s.prototype.setMatrixWorld=function(t){this.matrixWorld=t},s.prototype.setGeometry=function(t,e){if(this.widthCallback=e,this.positions=[],this.counters=[],t instanceof a.Geometry)for(var n=0;n<t.vertices.length;n++){var i=t.vertices[n];e=n/t.vertices.length,this.positions.push(i.x,i.y,i.z),this.positions.push(i.x,i.y,i.z),this.counters.push(e),this.counters.push(e)}if(a.BufferGeometry,t instanceof Float32Array||t instanceof Array)for(n=0;n<t.length;n+=3)e=n/t.length,this.positions.push(t[n],t[n+1],t[n+2]),this.positions.push(t[n],t[n+1],t[n+2]),this.counters.push(e),this.counters.push(e);this.process()},s.prototype.raycast=(i=new a.Matrix4,r=new a.Ray,o=new a.Sphere,function(t,e){var n=t.params.Line.threshold,s=n*n,c=new a.Vector3,l=this.geometry;if(null===l.boundingSphere&&l.computeBoundingSphere(),o.copy(l.boundingSphere),o.applyMatrix4(this.matrixWorld),!1!==t.ray.intersectSphere(o,c)){i.getInverse(this.matrixWorld),r.copy(t.ray).applyMatrix4(i);var u=new a.Vector3,d=new a.Vector3,p=new a.Vector3,h=this instanceof a.LineSegments?2:1;if(l instanceof a.BufferGeometry){var f=l.index,g=l.attributes;if(null!==f)for(var m=f.array,v=g.position.array,y=0,b=m.length-1;y<b;y+=h){var w=m[y],S=m[y+1];u.fromArray(v,3*w),d.fromArray(v,3*S),r.distanceSqToSegment(u,d,c,p)>s||(c.applyMatrix4(this.matrixWorld),(E=t.ray.origin.distanceTo(c))<t.near||E>t.far||e.push({distance:E,point:p.clone().applyMatrix4(this.matrixWorld),index:y,face:null,faceIndex:null,object:this}))}else for(y=0,b=(v=g.position.array).length/3-1;y<b;y+=h)u.fromArray(v,3*y),d.fromArray(v,3*y+3),r.distanceSqToSegment(u,d,c,p)>s||(c.applyMatrix4(this.matrixWorld),(E=t.ray.origin.distanceTo(c))<t.near||E>t.far||e.push({distance:E,point:p.clone().applyMatrix4(this.matrixWorld),index:y,face:null,faceIndex:null,object:this}))}else if(l instanceof a.Geometry){var x=l.vertices,M=x.length;for(y=0;y<M-1;y+=h){var E;r.distanceSqToSegment(x[y],x[y+1],c,p)>s||(c.applyMatrix4(this.matrixWorld),(E=t.ray.origin.distanceTo(c))<t.near||E>t.far||e.push({distance:E,point:p.clone().applyMatrix4(this.matrixWorld),index:y,face:null,faceIndex:null,object:this}))}}}}),s.prototype.compareV3=function(t,e){var n=6*t,i=6*e;return this.positions[n]===this.positions[i]&&this.positions[n+1]===this.positions[i+1]&&this.positions[n+2]===this.positions[i+2]},s.prototype.copyV3=function(t){var e=6*t;return[this.positions[e],this.positions[e+1],this.positions[e+2]]},s.prototype.process=function(){var t,e,n=this.positions.length/6;this.previous=[],this.next=[],this.side=[],this.width=[],this.indices_array=[],this.uvs=[];for(var i=0;i<n;i++)this.side.push(1),this.side.push(-1);for(i=0;i<n;i++)t=this.widthCallback?this.widthCallback(i/(n-1)):1,this.width.push(t),this.width.push(t);for(i=0;i<n;i++)this.uvs.push(i/(n-1),0),this.uvs.push(i/(n-1),1);for(e=this.compareV3(0,n-1)?this.copyV3(n-2):this.copyV3(0),this.previous.push(e[0],e[1],e[2]),this.previous.push(e[0],e[1],e[2]),i=0;i<n-1;i++)e=this.copyV3(i),this.previous.push(e[0],e[1],e[2]),this.previous.push(e[0],e[1],e[2]);for(i=1;i<n;i++)e=this.copyV3(i),this.next.push(e[0],e[1],e[2]),this.next.push(e[0],e[1],e[2]);for(e=this.compareV3(n-1,0)?this.copyV3(1):this.copyV3(n-1),this.next.push(e[0],e[1],e[2]),this.next.push(e[0],e[1],e[2]),i=0;i<n-1;i++){var r=2*i;this.indices_array.push(r,r+1,r+2),this.indices_array.push(r+2,r+1,r+3)}this.attributes?(this.attributes.position.copyArray(new Float32Array(this.positions)),this.attributes.position.needsUpdate=!0,this.attributes.previous.copyArray(new Float32Array(this.previous)),this.attributes.previous.needsUpdate=!0,this.attributes.next.copyArray(new Float32Array(this.next)),this.attributes.next.needsUpdate=!0,this.attributes.side.copyArray(new Float32Array(this.side)),this.attributes.side.needsUpdate=!0,this.attributes.width.copyArray(new Float32Array(this.width)),this.attributes.width.needsUpdate=!0,this.attributes.uv.copyArray(new Float32Array(this.uvs)),this.attributes.uv.needsUpdate=!0,this.attributes.index.copyArray(new Uint16Array(this.indices_array)),this.attributes.index.needsUpdate=!0):this.attributes={position:new a.BufferAttribute(new Float32Array(this.positions),3),previous:new a.BufferAttribute(new Float32Array(this.previous),3),next:new a.BufferAttribute(new Float32Array(this.next),3),side:new a.BufferAttribute(new Float32Array(this.side),1),width:new a.BufferAttribute(new Float32Array(this.width),1),uv:new a.BufferAttribute(new Float32Array(this.uvs),2),index:new a.BufferAttribute(new Uint16Array(this.indices_array),1),counters:new a.BufferAttribute(new Float32Array(this.counters),1)},this.geometry.setAttribute("position",this.attributes.position),this.geometry.setAttribute("previous",this.attributes.previous),this.geometry.setAttribute("next",this.attributes.next),this.geometry.setAttribute("side",this.attributes.side),this.geometry.setAttribute("width",this.attributes.width),this.geometry.setAttribute("uv",this.attributes.uv),this.geometry.setAttribute("counters",this.attributes.counters),this.geometry.setIndex(this.attributes.index)},s.prototype.advance=function(t){var e=this.attributes.position.array,n=this.attributes.previous.array,i=this.attributes.next.array,r=e.length;c(e,0,n,0,r),c(e,6,e,0,r-6),e[r-6]=t.x,e[r-5]=t.y,e[r-4]=t.z,e[r-3]=t.x,e[r-2]=t.y,e[r-1]=t.z,c(e,6,i,0,r-6),i[r-6]=t.x,i[r-5]=t.y,i[r-4]=t.z,i[r-3]=t.x,i[r-2]=t.y,i[r-1]=t.z,this.attributes.position.needsUpdate=!0,this.attributes.previous.needsUpdate=!0,this.attributes.next.needsUpdate=!0},a.ShaderChunk.meshline_vert=["",a.ShaderChunk.logdepthbuf_pars_vertex,a.ShaderChunk.fog_pars_vertex,"","attribute vec3 previous;","attribute vec3 next;","attribute float side;","attribute float width;","attribute float counters;","","uniform vec2 resolution;","uniform float lineWidth;","uniform vec3 color;","uniform float opacity;","uniform float near;","uniform float far;","uniform float sizeAttenuation;","","varying vec2 vUV;","varying vec4 vColor;","varying float vCounters;","","vec2 fix( vec4 i, float aspect ) {",""," vec2 res = i.xy / i.w;"," res.x *= aspect;","\t vCounters = counters;"," return res;","","}","","void main() {",""," float aspect = resolution.x / resolution.y;"," float pixelWidthRatio = 1. / (resolution.x * projectionMatrix[0][0]);",""," vColor = vec4( color, opacity );"," vUV = uv;",""," mat4 m = projectionMatrix * modelViewMatrix;"," vec4 finalPosition = m * vec4( position, 1.0 );"," vec4 prevPos = m * vec4( previous, 1.0 );"," vec4 nextPos = m * vec4( next, 1.0 );",""," vec2 currentP = fix( finalPosition, aspect );"," vec2 prevP = fix( prevPos, aspect );"," vec2 nextP = fix( nextPos, aspect );",""," float pixelWidth = finalPosition.w * pixelWidthRatio;"," float w = 1.8 * pixelWidth * lineWidth * width;",""," if( sizeAttenuation == 1. ) {"," w = 1.8 * lineWidth * width;"," }",""," vec2 dir;"," if( nextP == currentP ) dir = normalize( currentP - prevP );"," else if( prevP == currentP ) dir = normalize( nextP - currentP );"," else {"," vec2 dir1 = normalize( currentP - prevP );"," vec2 dir2 = normalize( nextP - currentP );"," dir = normalize( dir1 + dir2 );",""," vec2 perp = vec2( -dir1.y, dir1.x );"," vec2 miter = vec2( -dir.y, dir.x );"," //w = clamp( w / dot( miter, perp ), 0., 4. * lineWidth * width );",""," }",""," //vec2 normal = ( cross( vec3( dir, 0. ), vec3( 0., 0., 1. ) ) ).xy;"," vec2 normal = vec2( -dir.y, dir.x );"," normal.x /= aspect;"," normal *= .5 * w;",""," vec4 offset = vec4( normal * side, 0.0, 1.0 );"," finalPosition.xy += offset.xy;",""," gl_Position = finalPosition;","",a.ShaderChunk.logdepthbuf_vertex,a.ShaderChunk.fog_vertex&&" vec4 mvPosition = modelViewMatrix * vec4( position, 1.0 );",a.ShaderChunk.fog_vertex,"}"].join("\r\n"),a.ShaderChunk.meshline_frag=["",a.ShaderChunk.fog_pars_fragment,a.ShaderChunk.logdepthbuf_pars_fragment,"","uniform sampler2D map;","uniform sampler2D alphaMap;","uniform float useMap;","uniform float useAlphaMap;","uniform float useDash;","uniform float dashArray;","uniform float dashOffset;","uniform float dashRatio;","uniform float visibility;","uniform float alphaTest;","uniform vec2 repeat;","","varying vec2 vUV;","varying vec4 vColor;","varying float vCounters;","","void main() {","",a.ShaderChunk.logdepthbuf_fragment,""," vec4 c = vColor;"," if( useMap == 1. ) c *= texture2D( map, vUV * repeat );"," if( useAlphaMap == 1. ) c.a *= texture2D( alphaMap, vUV * repeat ).a;"," if( c.a < alphaTest ) discard;"," if( useDash == 1. ){"," c.a *= ceil(mod(vCounters + dashOffset, dashArray) - (dashArray * dashRatio));"," }"," gl_FragColor = c;"," gl_FragColor.a *= step(vCounters, visibility);","",a.ShaderChunk.fog_fragment,"}"].join("\r\n"),l.prototype=Object.create(a.ShaderMaterial.prototype),l.prototype.constructor=l,l.prototype.isMeshLineMaterial=!0,l.prototype.copy=function(t){return a.ShaderMaterial.prototype.copy.call(this,t),this.lineWidth=t.lineWidth,this.map=t.map,this.useMap=t.useMap,this.alphaMap=t.alphaMap,this.useAlphaMap=t.useAlphaMap,this.color.copy(t.color),this.opacity=t.opacity,this.resolution.copy(t.resolution),this.sizeAttenuation=t.sizeAttenuation,this.near=t.near,this.far=t.far,this.dashArray.copy(t.dashArray),this.dashOffset.copy(t.dashOffset),this.dashRatio.copy(t.dashRatio),this.useDash=t.useDash,this.visibility=t.visibility,this.alphaTest=t.alphaTest,this.repeat.copy(t.repeat),this},t.exports&&(e=t.exports={MeshLine:s,MeshLineMaterial:l}),e.MeshLine=s,e.MeshLineMaterial=l}).call(this)},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),r=n(7);e.getPolygonCentroid=function(t){var e=t[0],n=t[t.length-1];e.equals(n)||t.push(e);for(var r=0,o=0,a=0,s=0,c=t.length-1;s<t.length;c=s++){var l=t[s].clone().sub(e),u=t[c].clone().sub(e),d=l.y*u.x-u.y*l.x;a+=d,r+=(l.x+u.x)*d,o+=(l.y+u.y)*d}var p=3*a;return new i.Vector2(r/p,o/p).add(e)},e.doLinesIntersect=function(t,e,n,i){if(t.equals(e)||n.equals(i))return!1;var r=(i.y-n.y)*(e.x-t.x)-(i.x-n.x)*(e.y-t.y);if(0===r)return!1;var o=((i.x-n.x)*(t.y-n.y)-(i.y-n.y)*(t.x-n.x))/r,a=((e.x-t.x)*(t.y-n.y)-(e.y-t.y)*(t.x-n.x))/r;return!(o<0||o>1||a<0||a>1)},e.rotateToHorizontalPlane=function(t){if(!(t.length<3)){var e=new i.Triangle(t[0],t[1],t[2]),n=new i.Vector3;e.getNormal(n);var r=(new i.Quaternion).setFromUnitVectors(n,new i.Vector3(0,0,1)),o=[];return t.forEach(function(t){var e=t.clone().applyQuaternion(r);o.push(new i.Vector2(e.x,e.y))}),{points:o,quaternion:r}}};e.PolygonRotation=function(){},e.getMidpoint=function(t,e){return(new i.Vector3).addVectors(t,e).divideScalar(2)},e.lookAtLocToLonLat=function(t,e){var n=e.clone().sub(t).normalize();return{lon:Math.atan2(n.y,n.x),lat:Math.asin(n.z)}},e.meanAngle=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];if(t)return 1===t.length?t[0]:Math.atan2(r.sumBy(t,Math.sin),r.sumBy(t,Math.cos))}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(16),o=n(153),a=n(6),s=n(0),c=(n(50),n(0)),l=n(50),u=function(){function t(e,n,i){this.LanguageService=e,this.localStorageService=n,this.gettext=i,this.unitChanged=new r.Signal,this.LOCAL_STORAGE_KEY="iv_unit_key",new o.UoMSystem(this.gettext),o.UnitsOfMeasurement.init(),this.unitSystems=[o.UoMSystem.METRIC,o.UoMSystem.IMPERIAL],this.defaultSystem=o.UoMSystem.METRIC;var a=this.LanguageService.getBrowserLocaleString().toLowerCase();this.defaultSystem=t.isLocaleImperial(a)?o.UoMSystem.IMPERIAL:o.UoMSystem.METRIC,this.initUnit()}return t.prototype.setUnit=function(t,e){this.currentSystem!==t&&(this.currentSystem=t,this.unitChanged.emit()),e&&this.localStorageService.set(this.LOCAL_STORAGE_KEY,t)},t.prototype.initUnit=function(){var t=this.localStorageService.get(this.LOCAL_STORAGE_KEY);if(t)for(var e=0,n=this.unitSystems;e<n.length;e++){var i=n[e];if(i===t)return void this.setUnit(i,!0)}this.setUnit(this.defaultSystem,!1)},t.isLocaleImperial=function(e){return t.IMPERIAL_LOCALES.indexOf(e.toLowerCase())>=0},t.IMPERIAL_LOCALES=["en_us"],t.ɵfac=function(e){return new(e||t)(c.ɵɵinject(l.LanguageService),c.ɵɵinject("localStorageService"),c.ɵɵinject("gettext"))},t.ɵprov=c.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.UnitService=u,c.ɵsetClassMetadata(u,[{type:s.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:l.LanguageService},{type:void 0,decorators:[{type:s.Inject,args:["localStorageService"]}]},{type:void 0,decorators:[{type:s.Inject,args:["gettext"]}]}]},null),i.module("IVWebApp").service("UnitService",a.downgradeInjectable(u))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(180),a=n(96),s=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.resultType=o.SearchResultType.POI,e}return r(e,t),e.prototype.copy=function(e,n){return t.prototype.fill.call(this,e),this.icon=e.icon,this.location=e.location.clone(),this.siteModelEntity=e.siteModelEntity,this.siteModelEntityId=e.siteModelEntityId,this.poiType=e.poiType,this.poiTypeId=e.poiTypeId,this},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.icon=e.icon,this.location=a.VectorFactory.fromArray3(e.location),this.siteModelEntityId=e.site_model_entity_id,this.poiTypeId=e.poi_type_id},e}(n(545).SearchResultEntity);e.PoiSearchEntity=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__assign||function(){return(o=Object.assign||function(t){for(var e,n=1,i=arguments.length;n<i;n++)for(var r in e=arguments[n])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)};Object.defineProperty(e,"__esModule",{value:!0});var a,s=n(317),c=n(393),l=n(4),u=n(20),d=n(233);!function(t){t[t.ROTATE=0]="ROTATE",t[t.PAN=1]="PAN"}(a||(a={}));var p=function(t){function e(e,n){var i=t.call(this,e)||this;return i.inputHandler=n,i.target=new l.Vector3,i.distance=20,i.orientation={azimuth:0,elevation:Math.PI/6},i.fov=100,i.keyboardInput=!1,i.operation=a.ROTATE,i._camera=new l.PerspectiveCamera(i.verticalFOV,e.aspect,.1,100),i._camera.up=new l.Vector3(0,0,1),i}return r(e,t),Object.defineProperty(e.prototype,"camera",{get:function(){return this._camera},enumerable:!0,configurable:!0}),e.prototype.updateCamera=function(){var t=this.orientation.azimuth,e=this.orientation.elevation;this._camera.position.set(this.distance*Math.cos(e)*Math.cos(t),this.distance*Math.cos(e)*Math.sin(t),this.distance*Math.sin(e)),this._camera.position.add(this.target),this._camera.lookAt(this.target),this.clampFOV(),this._camera.fov=this.verticalFOV,this._camera.aspect=this.viewport.aspect,this._camera.updateProjectionMatrix()},Object.defineProperty(e.prototype,"horizontalFOV",{get:function(){var t=this.viewport.aspect;return t>=1?this.fov:this.fov*t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"verticalFOV",{get:function(){var t=this.viewport.aspect;return t>=1?this.fov/t:this.fov},enumerable:!0,configurable:!0}),e.prototype.dragStart=function(t){return this.operation=void 0,t.event.button===d.MouseButton.LEFT||void 0===t.event.button?this.operation=t.event.shiftKey?a.PAN:a.ROTATE:t.event.button!==d.MouseButton.MIDDLE&&t.event.button!==d.MouseButton.RIGHT||(this.operation=a.PAN),this.lastDragPosition=o({},t),void 0!==this.operation},e.prototype.drag=function(t,n,i){if(0!==this.viewport.screenWidth&&0!==this.viewport.screenHeight)if(this.operation===a.ROTATE){var r=t/this.viewport.screenWidth,o=n/this.viewport.screenHeight,s=this.horizontalFOV/180*Math.PI*e.CAMERA_ROTATION_SPEED_FACTOR,c=s/this.viewport.aspect;this.orientation.azimuth-=r*s,this.orientation.elevation+=o*c,this.orientation.elevation=Math.max(e.MIN_ELEVATION,Math.min(e.MAX_ELEVATION,this.orientation.elevation))}else if(this.operation===a.PAN){var l=this.target.clone().project(this.camera),u=this.inputHandler.view.unprojectScreenCoordinates(this.lastDragPosition.x,this.lastDragPosition.y,l.z);this.lastDragPosition.x+=t,this.lastDragPosition.y+=n;var d=this.inputHandler.view.unprojectScreenCoordinates(this.lastDragPosition.x,this.lastDragPosition.y,l.z);this.target.add(u.sub(d))}},e.prototype.dragEnd=function(){return this.operation===a.ROTATE},e.prototype.zoomTo=function(t,n,i){var r=this.distance;this.distance=i?r/n:r+n*e.WHEEL_SCALE,this.distance=Math.max(1,Math.min(100,this.distance))},e.prototype.centerOn=function(t){this._camera.position.copy(t)},e.prototype.applyKeyboardInput=function(){return!!this.keyboardInput&&c.applyKeyboardInputToCamera(this.inputHandler,this.camera)},e.prototype.clampFOV=function(){var t=this.viewport.aspect;if(t>=1){var n=Math.min(e.MAX_HFOV,this.fov),i=Math.min(e.MAX_VFOV,this.fov/t);this.fov=Math.max(Math.min(n,i*t),e.MIN_FOV)}else n=Math.min(e.MAX_HFOV,this.fov*t),i=Math.min(e.MAX_VFOV,this.fov),this.fov=Math.max(Math.min(n/t,i),e.MIN_FOV)},e.MIN_FOV=20,e.MAX_HFOV=150,e.MAX_VFOV=100,e.WHEEL_SCALE=.3,e.MAX_ELEVATION=u.degreesToRadians(85),e.MIN_ELEVATION=u.degreesToRadians(-85),e.CAMERA_ROTATION_SPEED_FACTOR=2,e}(s.CameraController);e.OrbitCameraController=p},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},a=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var s=n(2),c=n(7),l=n(1126),u=n(1127),d=n(80);n(166),n(166);var p=n(548),h=n(1130),f=(n(9),n(28),n(24),n(14),n(15),n(25)),g=(n(66),n(8)),m=(n(36),n(6)),v=n(0),y=n(0),b=n(166),w=n(14),S=n(66),x=n(15),M=n(24),E=n(9),C=n(28),A=n(36),T=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i,r)||this;return o.floorHeights=[],o.trackSignal(o.factory.FloorChangerService.onFloorChange).connect(function(t){return o.onFloorChanged(t)}),o.factory.ConfigService.updated.connect(function(){return o.initOsmMap()}),o.factory.AuthenticationService.onAuthenticationChanged.connect(function(){return o.view.invalidateScene()}),o.initOsmMap(),o}return r(e,t),e.prototype.displayFloorForScreenshot=function(t,e){return o(this,void 0,void 0,function(){return a(this,function(n){switch(n.label){case 0:return this.currentFloorOverwrite=e,[4,this.update(t)];case 1:return n.sent(),this.view.invalidateScene(),[2]}})})},e.prototype.disableScreenshotMode=function(){this.currentFloorOverwrite=void 0,this.view.invalidateScene()},e.prototype.update=function(e){return o(this,void 0,void 0,function(){return a(this,function(n){switch(n.label){case 0:return[4,this.updateIndoorMaps()];case 1:return n.sent(),[2,t.prototype.update.call(this,e)]}})})},e.prototype.onFloorChanged=function(t){this.floorHeights.length=0;for(var e=0,n=t.currentFloors;e<n.length;e++){var i=n[e];this.floorHeights.push(i.zMin)}this.view.invalidateScene()},e.prototype.initOsmMap=function(){var t=this;Promise.all([this.factory.ConfigService.initialized,this.factory.GeoTransformationService.initialized]).then(function(){var e=c.find(t.maps,function(t){return t instanceof u.TiledMapOpenStreetMap});"osm"===t.factory.ConfigService.getString(f.Configs.CORE_MAP_BASEMAP)?e||t.addMap(new u.TiledMapOpenStreetMap(t.factory.TransformService,t.factory.ConfigService.getString(f.Configs.CORE_MAP_TILE_URL),t.factory.ConfigService.getInteger(f.Configs.CORE_MAP_TILE_MAX_ZOOM,25),t,t.tileColor,t.factory.ConfigService.getString(f.Configs.CORE_MAP_ATTRIBUTION))):t.removeMap(e)}).catch(g.handleWarning)},e.prototype.updateIndoorMaps=function(){var t=this;return this.factory.GeoTransformationService.initialized.then(function(){return t.factory.AuthenticationService.dataAccessible?t.factory.TiledMapRepository.findAll():[]}).then(function(e){return t.updateIndoorMapsFor(e)}).catch(g.handleWarning)},e.prototype.updateIndoorMapsFor=function(t){var e=[];if(!this.factory.ModeService.isSiteModelEditorMode()&&void 0===this.currentFloorOverwrite)for(var n=0,i=this.floorHeights;n<i.length;n++){var r=i[n];this.addLayersToShow(e,t,r)}void 0!==this.currentFloorOverwrite&&this.addLayersToShow(e,t,this.currentFloorOverwrite.zMin),e=c.uniq(e);for(var o=c.filter(this.maps,function(t){return t instanceof h.TiledMapFromEntity}),a=c.map(o,function(t){return t.tiledMapEntity}),s=c.difference(e,a),l=c.filter(o,function(t){return e.indexOf(t.tiledMapEntity)<0}),u=0,d=s;u<d.length;u++){var p=d[u];this.addMap(new h.TiledMapFromEntity(this.factory.TransformService,p,this,this.tileColor,this.factory.RestService))}for(var f=0,g=l;f<g.length;f++){var m=g[f];this.removeMap(m)}},e.prototype.addLayersToShow=function(t,n,i){for(var r,o=1/0,a=0,s=n=c.filter(n,function(t){return t.type===p.TiledMapType.TILED_PYRAMID});a<s.length;a++){var l=s[a];(f=Math.abs(i-l.location.z))<e.MAX_VERTICAL_DIST&&f<o&&(r=l,o=f)}for(var u=r?r.location.z:void 0,d=0,h=n;d<h.length;d++){l=h[d];var f=Math.abs(u-l.location.z),g=!!l.floor&&l.filePath.indexOf("/building_")>0,m=this.currentFloorOverwrite?[this.currentFloorOverwrite]:this.factory.FloorChangerService.currentFloors;(g&&c.includes(m,l.floor)||!g&&r&&f<e.MAX_VERTICAL_DIST_TO_BEST)&&t.push(l)}},e.MAX_VERTICAL_DIST=2,e.MAX_VERTICAL_DIST_TO_BEST=1,e}(l.MapLayerBase);e.MapLayer=T;var O=function(t){function e(e,n,i,r,o,a,s,c){var l=t.call(this)||this;return l.TiledMapRepository=e,l.GeoTransformationService=n,l.TransformService=i,l.ConfigService=r,l.ModeService=o,l.RestService=a,l.FloorChangerService=s,l.AuthenticationService=c,l}return r(e,t),e.prototype.create=function(t,e,n){return new T(t,e,n,this)},e.ɵfac=function(t){return new(t||e)(y.ɵɵinject(b.TiledMapRepository),y.ɵɵinject(w.GeoTransformationService),y.ɵɵinject(S.TransformService),y.ɵɵinject(x.ConfigService),y.ɵɵinject(M.ModeService),y.ɵɵinject(E.RestService),y.ɵɵinject(C.FloorChangerService),y.ɵɵinject(A.AuthenticationService))},e.ɵprov=y.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(d.SceneLayerFactory);e.MapLayerFactory=O,y.ɵsetClassMetadata(O,[{type:v.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:b.TiledMapRepository},{type:w.GeoTransformationService},{type:S.TransformService},{type:x.ConfigService},{type:M.ModeService},{type:E.RestService},{type:C.FloorChangerService},{type:A.AuthenticationService}]},null),s.module("IVWebApp").service("MapLayerFactory",m.downgradeInjectable(O))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(70),s=(n(9),n(1131)),c=n(6),l=n(0),u=n(0),d=n(9),p=function(t){function e(e){var n=t.call(this,s.CameraHeadEntity,e)||this;return n.RestService=e,n.path="camera_heads",n}return r(e,t),e.ɵfac=function(t){return new(t||e)(u.ɵɵinject(d.RestService))},e.ɵprov=u.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(a.RestRepository);e.CameraHeadRepository=p,u.ɵsetClassMetadata(p,[{type:l.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:d.RestService}]},null),o.module("IVWebApp").service("CameraHeadRepository",c.downgradeInjectable(p))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(317),a=n(393),s=n(4),c=n(233),l=function(t){function e(e,n){var i=t.call(this,e)||this;return i.inputHandler=n,i.resMin=.01,i.dragButtons=new Set,i.keyboardInput=!1,i.resolution=.1,i.lookAtTarget=new s.Vector3,i.dragButtons.add(c.MouseButton.LEFT),i._camera=new s.OrthographicCamera(0,0,0,0,.1,2e4),i.setAngle(0),i}return r(e,t),Object.defineProperty(e.prototype,"camera",{get:function(){return this._camera},enumerable:!0,configurable:!0}),e.prototype.updateCamera=function(){this.updateOrthographicCamera()},e.prototype.setAngle=function(t){this._camera.up.set(Math.sin(t),Math.cos(t),0),this.lookAtTarget.copy(this._camera.position),this.lookAtTarget.z-=1,this._camera.lookAt(this.lookAtTarget)},e.prototype.dragStart=function(t){return void 0===t.event.button||this.dragButtons.has(t.event.button)},e.prototype.drag=function(t,n,i){var r=new s.Vector3(t/this.viewport.screenWidth*2,-n/this.viewport.screenHeight*2,0),o=new s.Vector3(0,0,0);r.unproject(this._camera),o.unproject(this._camera);var a=o.sub(r);this._camera.position.add(a),this._camera.position.clamp(e.MIN_PAN_LIMIT,e.MAX_PAN_LIMIT)},e.prototype.zoomTo=function(t,n,i){var r=this.resolution;if(i?this.resolution/=n:this.resolution+=n*this.resolution*.1,this.resolution=Math.min(e.RES_MAX,Math.max(this.resMin,this.resolution)),t){var o=this.resolution/r,a=new s.Vector3(0,0,1).unproject(this._camera),c=a.clone(),l=this.viewport.unprojectScreenCoordinates(t.x,t.y,1);a.subVectors(l,a).multiplyScalar(o).sub(c.subVectors(l,c)),this._camera.position.sub(a)}this.updateOrthographicCamera()},e.prototype.centerOn=function(t,e){e?this._camera.far=e+this._camera.near:e=this._camera.far-this._camera.near;var n=e/2+this._camera.near;this._camera.getWorldDirection(this._camera.position).multiplyScalar(-n).add(t)},e.prototype.applyKeyboardInput=function(){return!!this.keyboardInput&&a.applyKeyboardInputToCamera(this.inputHandler,this.camera)},e.prototype.updateOrthographicCamera=function(){var t=this.viewport.screenWidth,e=this.viewport.screenHeight;this._camera.left=-t/2*this.resolution,this._camera.right=t/2*this.resolution,this._camera.top=e/2*this.resolution,this._camera.bottom=-e/2*this.resolution,this._camera.updateProjectionMatrix()},e.MIN_PAN_LIMIT=new s.Vector3(-1e5,-1e5,-1/0),e.MAX_PAN_LIMIT=new s.Vector3(1e5,1e5,1/0),e.RES_MAX=100,e}(o.CameraController);e.PanningCameraController=l},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=(n(9),n(15),n(1189)),s=n(6),c=n(0),l=n(7),u=n(0),d=n(9),p=n(15),h=function(){function t(t,e){this.RestService=t,this.ConfigService=e,this.config={openSourceSoftwareUsed:void 0},this.initialized=this.initVersion()}return t.prototype.initVersion=function(){var t=this;return this.version={},this.RestService.httpRequest({url:"version.json"}).then(function(e){t.version.version="$"===e.version[0]?"0.0":e.version,t.version.build="$"===e.build[0]?"0":e.build,t.version.distro="$"===e.distro[0]?"":e.distro,t.version.commit="$"===e.commit[0]?"":e.commit,t.version.commit2="$"===e.commit2[0]?"":e.commit2,t.version.branch="$"===e.branch[0]?"DEV":e.branch,t.version.versionstring="$"===e.versionstring[0]?"develop/src":t.version.versionstring}).catch(function(){})},t.prototype.getVersion=function(){var t=this;return this.initialized.then(function(){return new a.VersionInfo(t.version)})},t.prototype.getThirdPartyLibraries=function(){return i(this,void 0,void 0,function(){var e,n,i,o;return r(this,function(r){switch(r.label){case 0:return this.config.openSourceSoftwareUsed?[3,2]:(e=this.RestService.httpRequest({url:"licenses_iv.json"}),n=this.RestService.httpRequest({url:"licenses_is.json"}),[4,Promise.all([e,n])]);case 1:return i=r.sent(),o=i[0].dependencies.concat(i[1].dependencies),t.formatLicensesData(o),this.config.openSourceSoftwareUsed=this.convertDictionaryToArray(o).sort(function(t,e){return t.name.localeCompare(e.name)}),[2,this.config.openSourceSoftwareUsed];case 2:return[2,Promise.resolve(this.config.openSourceSoftwareUsed)]}})})},t.prototype.convertDictionaryToArray=function(t){return(t=l.uniqBy(t,"name")).map(function(t){return{name:t.name,websiteUrl:t.homepage,licenses:t.licenses,description:t.description,sourceCodeUrl:""}})},t.formatLicensesData=function(t){o.forEach(t,function(t){t.homepage=t.homepage.replace(/\/$/,"")})},t.ɵfac=function(e){return new(e||t)(u.ɵɵinject(d.RestService),u.ɵɵinject(p.ConfigService))},t.ɵprov=u.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.AboutService=h,u.ɵsetClassMetadata(h,[{type:c.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:d.RestService},{type:p.ConfigService}]},null),o.module("IVWebApp").service("AboutService",s.downgradeInjectable(h))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(52),o=n(6),a=n(0),s=(n(17),n(0)),c=n(17),l=function(){this.visible=!1};e.AlignmentHelper=l;var u=function(){function t(t){this.ViewService=t,this.helperDefault=new l,this.helperTV=new l,this.helperSV1=new l,this.helperSV2=new l}return t.prototype.updateViewports=function(){this.helperDefault.viewport=this.ViewService.mainView.getDefaultViewport(),this.helperTV.viewport=this.ViewService.mainView.getViewportByName(r.SplitViewportName.TOP_VIEW),this.helperSV1.viewport=this.ViewService.mainView.getViewportByName(r.SplitViewportName.EAST_WEST_VIEW),this.helperSV2.viewport=this.ViewService.mainView.getViewportByName(r.SplitViewportName.NORTH_SOUTH_VIEW)},t.ɵfac=function(e){return new(e||t)(s.ɵɵinject(c.ViewService))},t.ɵprov=s.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.AlignmentHelperService=u,s.ɵsetClassMetadata(u,[{type:a.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:c.ViewService}]},null),i.module("IVWebApp").service("AlignmentHelperService",o.downgradeInjectable(u))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=(n(39),n(177),n(139),n(91),n(27),n(24),n(28),n(54),n(31),n(41),n(80)),s=n(4),c=n(7),l=n(538),u=n(108),d=n(1201),p=n(396),h=n(40),f=n(8),g=n(57),m=(n(103),n(136)),v=(n(14),n(402)),y=(n(36),n(67)),b=n(55),w=n(549),S=n(321),x=(n(21),n(17),n(231),n(6)),M=n(0),E=n(564),C=n(0),A=n(91),T=n(31),O=n(41),_=n(28),P=n(54),I=n(24),k=n(39),D=n(177),R=n(139),L=n(27),N=n(103),j=n(14),V=n(36),F=n(21),U=n(17),B=n(231),z=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i,r.IV,r.GeoTransformationService,r.FloorChangerService,r.AuthenticationService)||this;return o.factory=r,o.planeSprites=[],o.poiSprites=new s.Object3D,o.poiHighlightSprites=new s.Object3D,o.poiSpritesTextBoxCache={},o.poiSpritesHighlightBoxCache={},o.errorHandler=o.factory.ErrorService.newWrapper().report().network().generic(o.factory.gettext("An error occurred when retrieving the cursor location needed to create the POI.")).build(),o.extractParams(i),o.buildSpriteParams(e),o.createLocationPoiSpriteParams(),o.initEventListeners(),o.init3DObjects(),o}return r(e,t),e.prototype.extractParams=function(t){this.params=t,this.params.poiPxSize=t.poiPxSize||32,this.params.distanceThreshold=t.distanceThreshold||25,this.params.hideUnimportant=t.hideUnimportant||!1,this.params.poiHighlight=void 0===t.poiHighlight||t.poiHighlight,this.params.poiNames=t.poiNames||function(){return!0},this.params.contextMenu=void 0===t.contextMenu||t.contextMenu,this.params.showCustomRoutePoints=t.showCustomRoutePoints||function(){return!1},this.params.removePoiHoverDelay=(t.doubleTapInterval||0)+10,this.params.poiVisibilityXYTolerance=t.poiVisibilityXYTolerance||.1,this.params.poiVisibilityDepthTolerance=t.poiVisibilityDepthTolerance||.05,this.params.poiVisibilityCheck=void 0===t.poiVisibilityCheck||t.poiVisibilityCheck,this.maximumDistanceBetweenCameraAndImageLocations=this.params.distanceThreshold/4},e.prototype.buildSpriteParams=function(t){this.spriteParams={textBox:{fontProperties:{size:14},backgroundProperties:{blurColor:"rgba(0,0,0,1)"},padding:{top:12,left:8+this.params.poiPxSize+8,right:12,bottom:12},pivot:new s.Vector3(0,.5,.5),offset:new s.Vector3(-this.params.poiPxSize/2-8,0,0)},highlightBox:{fontProperties:{size:14},backgroundProperties:{color:"rgba(0,0,0,0.5)",blurColor:"rgba(0,0,0,1)"},padding:{top:12,left:8+this.params.poiPxSize+8,right:12,bottom:12},pivot:new s.Vector3(0,.5,.5),offset:new s.Vector3(-this.params.poiPxSize/2-8,0,0)},iconParameters:{position:new s.Vector2(8,28),size:new s.Vector2(this.params.poiPxSize,this.params.poiPxSize),onLoad:function(){return t.invalidateScene()}}}},e.prototype.createLocationPoiSpriteParams=function(){this.spriteParams.locationTextBox=c.cloneDeep(this.spriteParams.textBox),this.spriteParams.locationTextBox.pivot.y=0,this.spriteParams.locationTextBox.offset.y=-4,this.spriteParams.locationHighlightBox=c.cloneDeep(this.spriteParams.highlightBox),this.spriteParams.locationHighlightBox.pivot.y=0,this.spriteParams.locationHighlightBox.offset.y=-4},e.prototype.initEventListeners=function(){var t=this;this.trackSignal(this.factory.PoiService.poisChanged).connect(function(){return t.debouncedUpdate()}),this.trackSignal(this.factory.PoiTypeService.poiTypesChanged).connect(function(){return t.debouncedUpdate()}),this.trackSignal(this.factory.PoiService.onPoisHighlight).connect(function(){return t.debouncedUpdate()}),this.trackSignal(this.factory.PoiService.onPoisUnhighlight).connect(function(){return t.debouncedUpdate()}),this.trackSignal(this.factory.PoiService.onPoiDelete).connect(function(e){t.hoveredPoi&&t.hoveredPoi.id===e.id&&t.removeHoveredPoi()})},e.prototype.setPoiVisibilityCheck=function(t){this.params.poiVisibilityCheck=t,this.debouncedUpdate()},e.prototype.init3DObjects=function(){this.sceneGroup.add(this.poiSprites),this.sceneGroup.add(this.poiHighlightSprites)},e.prototype.onContextMenu=function(t){var e=this;if(this.params.contextMenu&&this.factory.UserService.userInfo.checkAttribute(g.GroupAttributes.CAN_CREATE_POIS)&&this.factory.ModeService.isNormalMode()&&this.view===this.factory.ViewService.mainView&&this.factory.PoiTypeService.isAnyVisible()&&this.factory.LicenseService.isLicenseValid)return{name:this.factory.gettextCatalog.getString("Create POI"),icon:"add",callback:function(){var n=e.view.unprojectScreenCoordinates(t.x,t.y);e.errorHandler.wrap(e.factory.RaycastService.getCoordinates(e.view,n,!0).then(function(t){e.factory.CursorService.updateCursor(t),e.factory.PoiService.openEditor.emit(!0)})).catch(function(){})}}},e.prototype.onBeforeRenderViewport=function(e){if(t.prototype.onBeforeRenderViewport.call(this,e),this.poiHoverSprite){var n=this.factory.PoiService.movingPoi||this.factory.PoiService.openedPoi;n&&this.poiHoverSprite.resource.hash===n.hash&&this.poiHoverSprite.resource!==n&&(this.poiHoverSprite.resource=n),this.poiHoverSprite.position=this.poiHoverSprite.resource.location,this.poiHoverSprite.updateSpriteObject(e)}this.planeSprites.forEach(function(t){return t.updateSpriteObject(e)})},e.prototype.update=function(){var t,e,n=this;if(!this.factory.ModeService.isNormalMode())return this.clear(),void this.removeHoveredPoi();if(this.params.hideUnimportant){var i=this.getActiveViewport().camera,r=i.right-i.left;if(!isFinite(r))throw new u.IVFrontendException("POI level of detail requires an orthographic camera");t=this.getActiveViewport().screenWidth/r;var o=this.params.poiPxSize/t;e=new d.PoiGridManager(o,this.params.poiPxSize,t,this.factory.PoiService.highlightedPois)}Promise.all([l.PlaneSprite.initialized,this.factory.PoiTypeService.initialized]).then(function(){return n.getPois()}).then(function(i){return n.displayPois(i,e,t)}).catch(function(){})},e.prototype.clear=function(){this.planeSprites=[],y.removeChildrenOfObject3D(this.poiSprites),y.removeChildrenOfObject3D(this.poiHighlightSprites)},e.prototype.displayPois=function(t,e,n){t=c.clone(t),this.addAdditionalPoisToDisplay(t),this.sortPoisToDisplay(t);var i=this.filterPoisToDisplay(t,this.factory.PoiService.highlightedPois,n,e);this.clear();for(var r=0,o=i;r<o.length;r++){var a=o[r];this.isPoiToBeHighLighted(this.factory.PoiService.highlightedPois,a)?this.displayHighlightedPoi(a):this.displayPoi(a)}this.params.poiVisibilityCheck&&this.hideObscuredPois(this.factory.PoiService.highlightedPois),this.view.invalidateScene()},e.prototype.sortPoisToDisplay=function(t){var e=this;t.sort(function(t,n){return E.comparePoiImportance(t,n,e.factory.PoiService.highlightedPois)})},e.prototype.displayPoi=function(t){var e=this.getPoiTextSprite(t);e.spriteObject.visible=!1,this.params.poiVisibilityCheck||(e.spriteObject.visible=!0),this.planeSprites.push(e),this.poiSprites.add(e.spriteObject)},e.prototype.displayHighlightedPoi=function(t){var e=this.getPoiHighlightSprite(t);this.planeSprites.push(e),this.poiHighlightSprites.add(e.spriteObject)},e.prototype.isPoiToBeHighLighted=function(t,e){return this.params.poiHighlight&&t.has(e)},e.prototype.filterPoisToDisplay=function(t,n,i,r){for(var o=[],a=Math.pow(this.params.distanceThreshold,2),s=this.factory.ViewService.mainView.getCamera().position,c=0,l=t;c<l.length;c++){var u=l[c];(u.forceShow||this.isPoiMoving(u)||e.isPoiHighlighted(u,n)||e.isPoiVisibleAtCurrentZoomLevel(u,i)&&e.isPoiInsideVisibilityRadius(u,s,a)&&this.isPoiInCurrentFloor(u))&&(this.params.hideUnimportant?r.addToGrid(u,this.getPoiTextSprite(u)):o.push(u))}return this.params.hideUnimportant?r.getArray():o},e.prototype.getPois=function(){var t=this.factory.PoiService.poisToDisplay;return void 0!==t?Promise.resolve(t):this.getPoisFromFilterRequest()},e.prototype.getPoisFromFilterRequest=function(){var t=this.factory.PoiTypeService.types.filter(function(t){return t.selected});if(0===t.length)return Promise.resolve([]);var e=this.factory.FloorChangerService.currentFloors,n=(new m.PoiRestFilterBuilder).poiType(t).siteModel(e).siteModel([void 0]),i=this.view.getCamera();return i instanceof s.PerspectiveCamera?this.filterForPanoramaView(n,i):i instanceof s.OrthographicCamera&&this.filterForMapView(n,i),this.factory.PoiRepository.filter(n.build())},e.prototype.filterForPanoramaView=function(t,e){var n=this.getCurrentLocation(e),i=this.params.distanceThreshold;t.location(n).radius(i)},e.prototype.filterForMapView=function(t,n){var i=new s.Vector3(n.left,n.bottom,0),r=n.position.clone();r.addScaledVector(i,e.ORTHO_BOUNDS_SCALE),r=this.factory.GeoTransformationService.vectorToGlobal(r);var o=n.position.clone();o.addScaledVector(i,-e.ORTHO_BOUNDS_SCALE),o=this.factory.GeoTransformationService.vectorToGlobal(o),t.boundingBox(r.x,r.y,o.x,o.y).limit(e.MAXIMUM_POI_NUMBER).sortBy(w.SortableField.IMPORTANCE).sortOrder(w.SortOrder.DESCENDING)},e.prototype.getCurrentLocation=function(t){var e=this.view.getImage(),n=!e||e.location.distanceTo(t.position)>this.maximumDistanceBetweenCameraAndImageLocations?this.factory.GeoTransformationService.vectorToGlobal(t.position):e.globalLocation;return new s.Vector2(n.x,n.y)},e.prototype.hideObscuredPois=function(t){var e=this;if(0!==this.planeSprites.length)if(this.factory.RaycastService.checkDepthPickable(this.view)){var n=c.map(this.planeSprites,function(t){return t.resource}),i=this.view.getCamera().position;this.factory.RaycastService.raycastEntitiesDepth(this.view,n).then(function(n){for(var r=0,o=e.planeSprites;r<o.length;r++){var a=o[r];if(a.resource.visibilityCheck&&!t.has(a.resource))if(n[a.resource.id]&&n[a.resource.id].position){var s=n[a.resource.id].position,c=i.distanceTo(s)-i.distanceTo(a.resource.location);a.spriteObject.visible=!e.params.poiVisibilityCheck||c>=-e.params.poiVisibilityDepthTolerance}else a.spriteObject.visible=!0;else a.spriteObject.visible=!0}e.view.invalidateScene()}).catch(f.handleWarning)}else{for(var r=0,o=this.planeSprites;r<o.length;r++)o[r].spriteObject.visible=!0;this.view.invalidateScene()}},e.isPoiHighlighted=function(t,e){return e.has(t)||t.isLocationAsPoi},e.isPoiVisibleAtCurrentZoomLevel=function(t,e){var n=t.poiType;return!(n.visibilityZoomMin&&e&&e<n.visibilityZoomMin||n.visibilityZoomMax&&e&&e>n.visibilityZoomMax)},e.isPoiInsideVisibilityRadius=function(t,e,n){var i=t.location;return!!i&&Math.pow(e.x-i.x,2)+Math.pow(e.y-i.y,2)<=n},e.prototype.isPoiInCurrentFloor=function(t){if(t.siteModelEntity){var e=t.siteModelEntity.getEntityOfType(b.SiteModelType.FLOOR),n=this.factory.FloorChangerService.currentFloors;return 0===n.length||c.some(n,function(t){return e===t})}return!0},e.prototype.isPoiMoving=function(t){return this.factory.PoiService.movingPoi&&this.factory.PoiService.movingPoi.id===t.id},e.prototype.addPoiHoverSprite=function(t){var e=this;this.poiHoverSprite&&this.poiHoverSprite.resource.hash===t.hash||(this.poiHoverSprite&&this.poiHoverSprite.resource.hash!==t.hash&&this.removePoiHoverSprite(),this.poiHoverSprite=this.createPlaneSprite(t,t.title,this.getSpriteHighlightBoxParams(t),this.spriteParams.iconParameters),this.poiHoverSprite.spriteObject.renderOrder=2,this.addPoiHoverEventHandlers(this.poiHoverSprite,t),this.sceneGroup.add(this.poiHoverSprite.spriteObject),this.view.invalidateScene(function(){return e.view.inputHandler.updateMeshMouseMoveOverOut()}))},e.prototype.removeHoveredPoi=function(t){var e=this;void 0===t&&(t=0),this.hoveredPoi=void 0,setTimeout(function(){return e.removePoiHoverSprite()},t)},e.prototype.removePoiHoverSprite=function(){!this.poiHoverSprite||this.hoveredPoi&&this.hoveredPoi.id===this.poiHoverSprite.resource.id||(this.poiHoverSprite.removeSpriteObject(),this.poiHoverSprite=void 0,this.view.invalidateScene())},e.prototype.addPoiHoverEventHandlers=function(t,e){var n=this,i=t.spriteObject;i.onContextMenu=function(){if(t.resource.security.canWrite&&n.factory.LicenseService.isLicenseValid)return{name:n.factory.gettextCatalog.getString("Delete POI"),icon:"delete",callback:function(){p.showDeleteConfirmationModal("#delete-confirmation-layer-modal",function(){n.factory.PoiService.deletePoi(t.resource).catch(function(){}),n.factory.TrackingService.trackPoiDeleted(!0)})}}},i.onClick=function(){return n.onPoiClick(e),!0},i.onMouseOver=function(){document.body.style.cursor="pointer",n.factory.PoiService.onPoiMouseOver.emit(e)},i.onMouseOut=function(){n.removeHoveredPoi(n.params.removePoiHoverDelay),document.body.style.cursor="default",n.factory.PoiService.onPoiMouseOut.emit(e)}},e.prototype.getPoiTextSprite=function(t){return this.getPlaneSprite(t,this.poiSpritesTextBoxCache,this.params.poiNames()&&t.canDisplayNameInScene?t.title:"",this.getSpriteTextBoxParams(t),this.spriteParams.iconParameters)},e.prototype.getPoiHighlightSprite=function(t){return this.getPlaneSprite(t,this.poiSpritesHighlightBoxCache,t.title,this.getSpriteHighlightBoxParams(t),this.spriteParams.iconParameters)},e.prototype.getPlaneSprite=function(t,e,n,i,r){var o=e[t.hash];o&&o.text!==n&&(o.removeSpriteObject(),o=void 0);var a=this.factory.ContentService.expandUploadedContentUrl(t.icon);return o&&o.iconPath!==a&&(o.removeSpriteObject(),o=void 0),o||(o=this.createPlaneSprite(t,n,i,r),e[t.hash]=o),o.position=t.location,o.resource=t,o},e.prototype.createPlaneSprite=function(t,e,n,i){var r=this.factory.ContentService.expandUploadedContentUrl(t.icon),o=new l.PlaneSprite(e,r,t);o.fontProperties=n.fontProperties,o.backgroundProperties=n.backgroundProperties,o.iconProperties=i,o.padding=n.padding,o.pivot=n.pivot,o.offset=n.offset;var a=o.createSpriteObject();return a.userData.is2D=!0,a.renderOrder=1,this.addEventHandlers(t,o),o},e.prototype.addEventHandlers=function(t,e){var n=this,i=e.spriteObject;h.isMobileBrowser()?i.onClick=function(){return n.onPoiClick(e.resource),!0}:i.onMouseOver=function(){e.resource.canBeHighlightedInScene&&e.spriteObject.visible&&(n.hoveredPoi=t,n.addPoiHoverSprite(e.resource))}},e.prototype.getSpriteTextBoxParams=function(t){return t.isLocationAsPoi?this.spriteParams.locationTextBox:this.spriteParams.textBox},e.prototype.getSpriteHighlightBoxParams=function(t){return t.isLocationAsPoi?this.spriteParams.locationHighlightBox:this.spriteParams.highlightBox},e.prototype.addAdditionalPoisToDisplay=function(t){var e=this.factory.PoiService.movingPoi;if(e){var n=t.findIndex(function(t){return t.id===e.id});t.splice(n,n>=0?1:0,e)}var i=this.factory.PoiService.openedPoi;i&&i.isLocationAsPoi&&t.push(i),this.addRoutePoiToDisplay(this.factory.PoiService.routeStart,t),this.addRoutePoiToDisplay(this.factory.PoiService.routeEnd,t)},e.prototype.addRoutePoiToDisplay=function(t,e){t&&(t.isPoiFromSearchResult||this.params.showCustomRoutePoints()&&t.isLocationAsPoi)&&e.push(t)},e.prototype.onPoiClick=function(t){var e=this;this.factory.PoiService.getPoiFromSearchResultAsPoi(t).then(function(t){e.factory.PoiService.clickPoi(t,S.PoiClickOrigin.VIEW)}).catch(f.handleWarning)},e.MAXIMUM_POI_NUMBER=100,e}(v.ScalableSceneLayer);e.PoiLayer=z;var G=function(t){function e(e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m,v,y,b,w){var S=t.call(this)||this;return S.IV=e,S.CursorService=n,S.DatasetRepository=i,S.ErrorService=r,S.FloorChangerService=o,S.gettext=a,S.gettextCatalog=s,S.LicenseService=c,S.ModeService=l,S.PoiService=u,S.PoiTypeService=d,S.RaycastService=p,S.UserService=h,S.PoiRepository=f,S.GeoTransformationService=g,S.AuthenticationService=m,S.PointCloudMenuService=v,S.TrackingService=y,S.ViewService=b,S.ContentService=w,S}return r(e,t),e.prototype.create=function(t,e,n){return new z(t,e,n,this)},e.ɵfac=function(t){return new(t||e)(C.ɵɵinject("IV"),C.ɵɵinject(A.CursorService),C.ɵɵinject(T.DatasetRepository),C.ɵɵinject(O.ErrorService),C.ɵɵinject(_.FloorChangerService),C.ɵɵinject("gettext"),C.ɵɵinject("gettextCatalog"),C.ɵɵinject(P.LicenseService),C.ɵɵinject(I.ModeService),C.ɵɵinject(k.PoiService),C.ɵɵinject(D.PoiTypeService),C.ɵɵinject(R.RaycastService),C.ɵɵinject(L.UserService),C.ɵɵinject(N.PoiRepository),C.ɵɵinject(j.GeoTransformationService),C.ɵɵinject(V.AuthenticationService),C.ɵɵinject("PointCloudMenuService"),C.ɵɵinject(F.TrackingService),C.ɵɵinject(U.ViewService),C.ɵɵinject(B.ContentService))},e.ɵprov=C.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(a.SceneLayerFactory);e.PoiLayerFactory=G,C.ɵsetClassMetadata(G,[{type:M.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:M.Inject,args:["IV"]}]},{type:A.CursorService},{type:T.DatasetRepository},{type:O.ErrorService},{type:_.FloorChangerService},{type:void 0,decorators:[{type:M.Inject,args:["gettext"]}]},{type:void 0,decorators:[{type:M.Inject,args:["gettextCatalog"]}]},{type:P.LicenseService},{type:I.ModeService},{type:k.PoiService},{type:D.PoiTypeService},{type:R.RaycastService},{type:L.UserService},{type:N.PoiRepository},{type:j.GeoTransformationService},{type:V.AuthenticationService},{type:void 0,decorators:[{type:M.Inject,args:["PointCloudMenuService"]}]},{type:F.TrackingService},{type:U.ViewService},{type:B.ContentService}]},null),o.module("IVWebApp").service("PoiLayerFactory",x.downgradeInjectable(G))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=(n(9),n(1205)),s=(n(75),n(22),n(310)),c=(n(14),n(135)),l=n(6),u=n(0),d=n(0),p=n(9),h=n(75),f=n(22),g=n(14),m=function(t){function e(e,n,i,r){var o=t.call(this,a.NodeEntity,e,r,i)||this;return o.BundleRepository=n,o.path="nodes",o.injectables.BundleRepository=o.BundleRepository,c.EntityRelationMapper.manyToOne(o,"siteModelEntity","siteModelEntityId",i),o}return r(e,t),e.ɵfac=function(t){return new(t||e)(d.ɵɵinject(p.RestService),d.ɵɵinject(h.BundleRepository),d.ɵɵinject(f.SiteModelRepository),d.ɵɵinject(g.GeoTransformationService))},e.ɵprov=d.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(s.SiteModelBoundRestRepository);e.NodeRepository=m,d.ɵsetClassMetadata(m,[{type:u.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:p.RestService},{type:h.BundleRepository},{type:f.SiteModelRepository},{type:g.GeoTransformationService}]},null),o.module("IVWebApp").service("NodeRepository",l.downgradeInjectable(m))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(89),s=n(4),c=n(1207),l=n(68),u=(n(182),n(1208)),d=n(1209),p=n(1210),h=n(567),f=n(568),g=n(1211),m=n(1212),v=n(1213),y=n(569),b=n(16),w=n(1214),S=n(318),x=n(1215),M=(n(131),n(17),n(6)),E=n(0),C=n(0),A=n(182),T=n(131),O=n(17),_=function(t){function e(e,n,i){var r=t.call(this)||this;return r.NavGraphService=e,r.ToolboxMenuService=n,r.ViewService=i,r.navGraphEditingMode=l.NavGraphEditingConstantsModes.NODE_EDITING,r.selectedNodes=[],r.straightenXNodes=10,r.selectedElement={type:void 0,sourceId:void 0,attributesMap:{},selectedKey:void 0,selectedValue:void 0},r.editingHistory=new y.EditingHistory,r.navGraphEditorOpened=new b.Signal,r.navGraphEditorClosed=new b.Signal,r.promiseWrapper=new a.PromiseProgressWrapper,r.navGraphPathDrawingDelegate=new x.NavGraphPathDrawingDelegate(r,e,i),r}return r(e,t),e.prototype.isSavingInProgress=function(){return this.promiseWrapper.isInProgress},e.prototype.applySelection=function(){for(var t=0,e=this.selectedNodes;t<e.length;t++){var n=e[t],i=this.NavGraphService.adjacencyList.getNodeMesh(n.mesh.userData.id);i&&(n.mesh=i)}this.selectedNodes.length>0&&this.selectNode(this.selectedNodes[l.NavGraphEditingConstantsSelectedNode.CURRENT].mesh)},e.prototype.toggleNode=function(t){this.getSelectedIndex(t.userData.id)===l.NavGraphEditingConstantsSelectedNode.CURRENT?this.deselectNode(t):this.selectNode(t)},e.prototype.toggleEdge=function(){return this.doesEdgeExist()?void 0!==this.deleteEdge():void 0!==this.createEdge()},e.prototype.selectNode=function(t){if(t){var e,n=this.getSelectedIndex(t.userData.id);n>l.NavGraphEditingConstantsSelectedNode.NOT_SELECTED?(e=this.selectedNodes[n],this.selectedNodes.splice(n,1)):e=new c.NavGraphEditingNode(t),this.selectedNodes.unshift(e);for(var i=0;i<this.selectedNodes.length;++i)i===l.NavGraphEditingConstantsSelectedNode.CURRENT?this.selectedNodes[i].makeCurrentlySelected():i===l.NavGraphEditingConstantsSelectedNode.PREVIOUS?this.selectedNodes[i].makeLastSelected():this.selectedNodes[i].resetColor()}},e.prototype.deselectNode=function(t){var e=this.getSelectedIndex(t.userData.id);e!==l.NavGraphEditingConstantsSelectedNode.NOT_SELECTED&&(this.selectedNodes[e].resetColor(),this.selectedNodes.splice(e,1),this.selectedNodes.length>l.NavGraphEditingConstantsSelectedNode.CURRENT&&this.selectedNodes[l.NavGraphEditingConstantsSelectedNode.CURRENT].makeCurrentlySelected(),this.selectedNodes.length>l.NavGraphEditingConstantsSelectedNode.PREVIOUS&&this.selectedNodes[l.NavGraphEditingConstantsSelectedNode.PREVIOUS].makeLastSelected())},e.prototype.deselectAllNodes=function(){for(var t=0,e=this.selectedNodes;t<e.length;t++)e[t].resetColor();this.selectedNodes=[]},e.prototype.getSelectedIndex=function(t){for(var e=0;e<this.selectedNodes.length;++e)if(this.selectedNodes[e]&&this.selectedNodes[e].mesh.userData.id===t)return e;return l.NavGraphEditingConstantsSelectedNode.NOT_SELECTED},e.prototype.moveNode=function(t,e,n){void 0===n&&(n=!1);var i=this.NavGraphService.adjacencyList.getNode(t.userData.id),r=new s.Vector3(e.x,e.y,n?e.z:void 0);this.editingHistory.apply(new u.NavGraphEditingNodeMoveOperation(this.NavGraphService,i,t,r,n))},e.prototype.setSelectedNodeZ=function(t,e){var n=this.selectedNodes[t].mesh;this.editingHistory.apply(new v.NavGraphEditingNodeMoveInZOperation(this.NavGraphService,this.NavGraphService.adjacencyList.getNode(n.userData.id),n,e))},e.prototype.doesEdgeExist=function(){var t,e,n=this.selectedNodes.length;return n>0&&(t=this.selectedNodes[0].mesh.userData.id),n>1?(e=this.selectedNodes[1].mesh.userData.id,this.NavGraphService.adjacencyList.doesEdgeExist(t,e)?l.NavGraphEditingConstantsEdgeExists.YES:l.NavGraphEditingConstantsEdgeExists.NO):l.NavGraphEditingConstantsEdgeExists.INVALID},e.prototype.createNode=function(t,e){var n=this;void 0===e&&(e=!0);var i=this.NavGraphService.getCurrentBundle(),r=new h.NavGraphEditingNodeCreateOperation(this.NavGraphService,t,i,function(t){return n.deselectNode(t)});return e&&this.editingHistory.apply(r),r},e.prototype.createEdge=function(t){if(void 0===t&&(t=!0),!(this.selectedNodes.length<2)){var e=this.getMeshesBetweenLastSelectedNodes(),n=e[l.NavGraphEditingConstantsSelectedNode.CURRENT].userData.id,i=this.NavGraphService.adjacencyList.getNode(n),r=e[l.NavGraphEditingConstantsSelectedNode.PREVIOUS].userData.id,o=this.NavGraphService.adjacencyList.getNode(r),a=this.NavGraphService.getCurrentBundle(),s=new f.NavGraphEditingEdgeCreateOperation(this.NavGraphService,a,i,o);return t&&this.editingHistory.apply(s),s}},e.prototype.addMultipleEdges=function(){var t=this.NavGraphService.getCurrentBundle(),e=new w.NavGraphEditingAutoSplitEdgeOperation(this.NavGraphService,t);if(this.doesEdgeExist()){var n=this.deleteEdge(!1);e.addOperation(n),n.apply()}var i=this.getMeshesBetweenLastSelectedNodes(),r=i[l.NavGraphEditingConstantsSelectedNode.CURRENT],a=r.position,s=i[l.NavGraphEditingConstantsSelectedNode.PREVIOUS],c=s.position,u=c.distanceTo(a),d=Math.floor(u);this.selectNode(r);for(var p=1;p<d;++p){var h=o.copy(a),f=this.createNode(h.lerp(c,p/d),!1);e.addOperation(f),f.apply();var g=this.createEdge(!1);e.addOperation(g),g.apply()}this.selectNode(s);var m=this.createEdge(!1);e.addOperation(m),m.apply(),this.editingHistory.apply(e)},e.prototype.deleteNode=function(t,e){if(void 0===e&&(e=!0),!(t>=this.selectedNodes.length)){var n=this.selectedNodes[t].mesh.userData.id,i=this.NavGraphService.adjacencyList.getNode(n),r=this.NavGraphService.adjacencyList.getNodeMesh(n);this.deselectNode(r);var o=new g.NavGraphEditingNodeDeleteOperation(this.NavGraphService,i,r);return e&&this.editingHistory.apply(o),o}},e.prototype.deleteEdge=function(t){void 0===t&&(t=!0);var e=this.selectedNodes[l.NavGraphEditingConstantsSelectedNode.CURRENT],n=this.selectedNodes[l.NavGraphEditingConstantsSelectedNode.PREVIOUS];if(e&&n){var i=e.mesh.userData.id,r=n.mesh.userData.id,o=this.NavGraphService.adjacencyList.getEdgeBetweenNodes(i,r),a=this.NavGraphService.adjacencyList.getEdgeMeshBetweenNodes(o.source.id,o.target.id),s=this.NavGraphService.adjacencyList.getNode(i),c=this.NavGraphService.adjacencyList.getNode(r),u=new m.NavGraphEditingEdgeDeleteOperation(this.NavGraphService,s,c,o,a);return t&&this.editingHistory.apply(u),u}},e.prototype.straightenNodes=function(){var t=this.selectedNodes.length-1;if(this.straightenXNodes=Math.min(this.straightenXNodes,this.selectedNodes.length),!(this.straightenXNodes<=1)){for(var e=this.getMeshesBetweenLastSelectedNodes(this.straightenXNodes-1),n=e[l.NavGraphEditingConstantsSelectedNode.CURRENT].position,i=e[l.NavGraphEditingConstantsSelectedNode.PREVIOUS].position,r=1;r<this.straightenXNodes-1;++r){var o=i.clone().lerp(n,r/(this.straightenXNodes-1));this.moveNode(this.selectedNodes[t-r].mesh,o,!0)}this.NavGraphService.navgraphChanged.emit()}},e.prototype.getMeshesBetweenLastSelectedNodes=function(t){void 0===t&&(t=l.NavGraphEditingConstantsSelectedNode.PREVIOUS);var e=this.selectedNodes[0].mesh;return[this.selectedNodes[t].mesh,e]},e.prototype.saveAndStopEditingNavGraph=function(){var t=this;return this.navGraphPathDrawingDelegate.removeTemporaryNodesAndEdges(),this.navGraphPathDrawingDelegate.normalizeAndApplyPathDrawn(),this.clearError(),this.promiseWrapper.wrap(this.editingHistory.commit()).then(function(){t.navGraphPathDrawingDelegate.startNodeEditing(),t.NavGraphService.navgraphChanged.emit()}).catch(function(e){return t.reportError(e),Promise.reject(e)})},e.prototype.undo=function(){var t=this.editingHistory.undo();t instanceof g.NavGraphEditingNodeDeleteOperation&&this.updateNodeOperationReferences(t.resource.id)},e.prototype.undoAllOperations=function(){this.editingHistory.undoAll(),this.deselectAllNodes()},e.prototype.discardChanges=function(){var t=this;return Promise.resolve().then(function(){return t.navGraphPathDrawingDelegate.discardPathDrawn()}).then(function(){return t.undoAllOperations()})},e.prototype.selectEditingOperationResource=function(t){t.resourceType===l.NavGraphEditingConstantsType.NODE?this.selectNode(this.NavGraphService.adjacencyList.getNodeMesh(t.resource.id)):t.resourceType===l.NavGraphEditingConstantsType.EDGE&&(this.selectNode(this.NavGraphService.adjacencyList.getNodeMesh(t.resource.source.id)),this.selectNode(this.NavGraphService.adjacencyList.getNodeMesh(t.resource.target.id))),this.NavGraphService.navgraphChanged.emit()},e.prototype.initAttributeEditor=function(t,n,i){var r;if(t){r=this.selectedNodes[n].mesh.userData.id,this.selectedElement.type=l.NavGraphEditingConstantsType.NODE,this.selectedElement.sourceId=r;var o=this.NavGraphService.adjacencyList.getNode(r);this.selectedElement.attributesMap=e.getAttributesMap(o.attributes)}else{r=this.selectedNodes[n].mesh.userData.id;var a=this.selectedNodes[i].mesh.userData.id;this.selectedElement.type=l.NavGraphEditingConstantsType.EDGE;var s=this.NavGraphService.adjacencyList.getEdgeBetweenNodes(r,a);this.selectedElement.attributesMap=e.getAttributesMap(s.attributes)}this.clearSelectedKeyAndValue()},e.prototype.saveAttributes=function(){var t;switch(this.selectedElement.type){case l.NavGraphEditingConstantsType.EDGE:t=this.selectedNodes[0].mesh.userData.id;var e=this.selectedNodes[1].mesh.userData.id,n=this.NavGraphService.adjacencyList.getEdgeBetweenNodes(t,e);o.equals(n.attributes,this.selectedElement.attributesMap)||this.editingHistory.apply(new d.NavGraphEditingEdgeEditOperation(this.NavGraphService,n,this.selectedElement.attributesMap));break;case l.NavGraphEditingConstantsType.NODE:t=this.selectedElement.sourceId;var i=this.NavGraphService.adjacencyList.getNode(t);o.equals(i.attributes,this.selectedElement.attributesMap)||this.editingHistory.apply(new p.NavGraphEditingNodeEditOperation(this.NavGraphService,i,this.selectedElement.attributesMap));break;default:return}},e.prototype.clearSelectedElement=function(){this.selectedElement.type=void 0,this.selectedElement.attributesMap={},this.clearSelectedKeyAndValue()},e.prototype.clearSelectedKeyAndValue=function(){this.selectedElement.selectedKey=void 0,this.selectedElement.selectedValue=void 0},e.getAttributesMap=function(t){var e={};for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e},e.prototype.setAdjacencyList=function(t){this.NavGraphService.adjacencyList=t},e.prototype.reportError=function(t){this.error={text:this.NavGraphService.gettextCatalog.getString("Update failed"),status:t.status,statusText:t.statusText&&t.statusText.length?t.statusText:this.NavGraphService.gettextCatalog.getString("Network error"),details:t.data?t.data.msg:""}},e.prototype.clearError=function(){this.error=void 0},e.prototype.updateNodeOperationReferences=function(t){for(var e=0,n=this.editingHistory.history;e<n.length;e++){var i=n[e];if(i instanceof u.NavGraphEditingNodeMoveOperation&&i.resource.id===t){var r=this.NavGraphService.adjacencyList.getNodeMesh(t);i.updateMeshReference(r)}}},e.prototype.hasChanges=function(){return!(0===this.editingHistory.history.length||this.isSavingInProgress())||this.navGraphPathDrawingDelegate.isPathDrawingPossible()},e.prototype.promptOnUnsavedChanges=function(){return t.prototype.promptOnUnsavedChanges.call(this,"#confirmUnsavedNavGraph")},e.prototype.startNodeEditing=function(){this.navGraphPathDrawingDelegate.startNodeEditing()},e.prototype.isPathDrawingPossible=function(){return this.navGraphPathDrawingDelegate.isPathDrawingPossible()},e.ɵfac=function(t){return new(t||e)(C.ɵɵinject(A.NavGraphService),C.ɵɵinject(T.ToolboxMenuService),C.ɵɵinject(O.ViewService))},e.ɵprov=C.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(S.SaveDiscardDialogService);e.NavGraphEditingService=_,C.ɵsetClassMetadata(_,[{type:E.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:A.NavGraphService},{type:T.ToolboxMenuService},{type:O.ViewService}]},null),o.module("IVWebApp").service("NavGraphEditingService",M.downgradeInjectable(_))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(70),a=n(580),s=(n(9),n(2)),c=n(6),l=n(0),u=n(0),d=n(9),p=function(t){function e(e){var n=t.call(this,a.VectorMapEntity,e)||this;return n.RestService=e,n.path="vector_maps",n}return r(e,t),e.ɵfac=function(t){return new(t||e)(u.ɵɵinject(d.RestService))},e.ɵprov=u.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(o.RestRepository);e.VectorMapRepository=p,u.ɵsetClassMetadata(p,[{type:l.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:d.RestService}]},null),s.module("IVWebApp").service("VectorMapRepository",c.downgradeInjectable(p))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(17),n(50),n(39),n(28),n(104),n(6)),o=n(0),a=n(0),s=n(28),c=n(50),l=n(39),u=n(104),d=n(17),p=function(){function t(t,e,n,i,r){var o=this;this.events={loadComplete:[],datasetChanged:[],transitionStart:[],transitionEnd:[],languageChanged:[],locationChanged:[],floorChanged:[],floorsUpdated:[],poiSelected:[],poiClosed:[],poiSaved:[],poiDeleted:[],routePlanned:[],routeInstructionClick:[],routeInstructionMouseOver:[],routeInstructionMouseLeave:[],zoomedMap:[],webGlFailed:[],toggleMenu:[],pointCloudLoading:[]},t.onFloorUpdate.connect(function(t){return o.triggerEvent("floorsUpdated",t)}),t.onFloorChange.connect(function(t){return o.triggerEvent("floorChanged",t)}),e.onLanguageChange.connect(function(t){return o.triggerEvent("languageChanged",t)}),n.onPoiSave.connect(function(t,e){return o.triggerEvent("poiSaved",{entity:t,created:e})}),n.onPoiDelete.connect(function(t){return o.triggerEvent("poiDeleted",t)}),n.onPoiOpen.connect(function(t){return o.triggerEvent("poiSelected",t)}),n.onPoiClose.connect(function(t){return o.triggerEvent("poiClosed",t)}),i.onRoutePlanned.connect(function(t){return o.triggerEvent("routePlanned",void 0)}),i.onRouteInstructionClick.connect(function(t,e){return o.triggerEvent("routeInstructionClick",e)}),i.onRouteInstructionMouseOver.connect(function(t,e){return o.triggerEvent("routeInstructionMouseOver",e)}),i.onRouteInstructionMouseOut.connect(function(t,e){return o.triggerEvent("routeInstructionMouseLeave",e)}),r.onTransitionStart.connect(function(t){return o.triggerEvent("transitionStart",t)}),r.onTransitionEnd.connect(function(t){return o.triggerEvent("transitionEnd",t)})}return t.prototype.addEventListener=function(t,e){return t in this.events&&(this.deprecationWarning("addEventListener",t),this.events[t].push(e),!0)},t.prototype.removeEventListener=function(t,e){var n=this.events[t].indexOf(e);return!(n<0||(this.deprecationWarning("removeEventListener",t),this.events[t].splice(n,1),0))},t.prototype.triggerEvent=function(t,e){for(var n=0,i=this.events[t];n<i.length;n++)(0,i[n])(e)},t.prototype.deprecationWarning=function(t,e){var n,i=!1;switch(e){case"floorsUpdated":n="ApiInterface.view.floorChangerService.onFloorUpdate";break;case"floorChanged":n="ApiInterface.view.floorChangerService.onFloorChange";break;case"languageChanged":n="ApiInterface.ui.languageService.onLanguageChange";break;case"poiSaved":n="ApiInterface.poi.service.onPoiSave";break;case"poiDeleted":n="ApiInterface.poi.service.onPoiDelete";break;case"poiSelected":n="ApiInterface.poi.service.onPoiOpen";break;case"poiClosed":n="ApiInterface.poi.service.onPoiClose";break;case"routePlanned":n="ApiInterface.routing.onRouteChanged";break;case"routeInstructionClick":n="ApiInterface.routing.onRouteInstructionClick";break;case"routeInstructionMouseOver":n="ApiInterface.routing.onRouteInstructionMouseOver";break;case"routeInstructionMouseLeave":n="ApiInterface.routing.onRouteInstructionMouseOut";break;case"routeStartSelected":case"routeEndSelected":i=!0;break;case"transitionStart":n="ApiInterface.view.service.onTransitionStart";break;case"transitionEnd":case"locationChanged":case"datasetChanged":n="ApiInterface.view.service.onTransitionEnd";break;case"zoomedMap":n="ApiInterface.view.mapView.onZoom";break;case"loadComplete":n="getApi().then(callback) or new IndoorViewer({onLoadComplete: callback})";break;case"webGlFailed":n="getApi().catch(callback) or new IndoorViewer({onWebGlFailed: callback})"}var r="usage of "+t+'("'+e+'", callback), support will be removed in a later version.';n?console.warn("Deprecated "+r+" Please use "+n+" instead."):i?console.error("Invalid "+r+" This event has been removed."):console.warn("Deprecated "+r)},t.ɵfac=function(e){return new(e||t)(a.ɵɵinject(s.FloorChangerService),a.ɵɵinject(c.LanguageService),a.ɵɵinject(l.PoiService),a.ɵɵinject(u.RouteService),a.ɵɵinject(d.ViewService))},t.ɵprov=a.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.LegacyService=p,a.ɵsetClassMetadata(p,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:s.FloorChangerService},{type:c.LanguageService},{type:l.PoiService},{type:u.RouteService},{type:d.ViewService}]},null),i.module("IVWebApp").service("LegacyService",r.downgradeInjectable(p))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=(n(154),n(9),n(31),n(49),n(14)),s=n(1237),c=n(107),l=n(20),u=n(96),d=n(4),p=n(16),h=(n(155),n(7)),f=n(8),g=n(144),m=n(318),v=n(6),y=n(0),b=n(0),w=n(154),S=n(9),x=n(31),M=n(155),E=n(49),C=n(14),A=function(t){function e(e,n,i,r,o,a){var s=t.call(this)||this;return s.AlignmentService=e,s.RestService=n,s.DatasetRepository=i,s.DatasetAlignmentService=r,s.ImageService=o,s.GeoTransformationService=a,s.datasetLocations={},s.orientations={},s.datasetTranslationChanged=new p.Signal,s.datasetOrientationChanged=new p.Signal,s.initDeferred=new g.Deferred,s.loadingGoogleLib=!1,s.TIMEOUT=2e3,s.initialized=s.initDeferred.promise,s}return r(e,t),e.prototype.fetchGoogleMapsLibrary=function(){var t=this;if(window.google&&window.google.maps)this.googleMapsLibraryFetched();else if(!this.loadingGoogleLib){this.loadingGoogleLib=!0;var e="GeoRegistrationServiceInitOSM";window.GeoRegistrationServiceInitOSM=function(){return t.googleMapsLibraryFetched()},c.promiseFinally(s.loadScriptWithTimeout("https://maps.googleapis.com/maps/api/js?v=3&key=AIzaSyAcGZuNkwD3saIjKX_68PR0MGJ7S1NW1R0&callback=GeoRegistrationServiceInitOSM",this.TIMEOUT,e).catch(function(){return s.loadScriptWithTimeout("http://www.google.cn/maps/api/js?v=3&key=AIzaSyAcGZuNkwD3saIjKX_68PR0MGJ7S1NW1R0&callback=GeoRegistrationServiceInitOSM",t.TIMEOUT,e)}).catch(function(){return t.googleMapsLibraryFetched()}),function(){return t.loadingGoogleLib=!1}).catch(f.handleWarning)}},e.prototype.googleMapsLibraryFetched=function(){this.initDeferred.resolve(),l.invalidateAngular()},e.prototype.cacheGlobalState=function(t){var e=t.getGlobalState();this.datasetLocations[t.id]=e.pos,this.orientations[t.id]=e.orientation,this.datasetOrientationChanged.emit()},e.prototype.removeCachedGlobalState=function(t){delete this.datasetLocations[t],delete this.orientations[t]},e.prototype.translate=function(t){this.datasetTranslationChanged.emit(t)},e.prototype.rotate=function(t){var e=this;if(this.AlignmentService.primary){h.forEach(this.AlignmentService.selectedDatasets,function(n){n.locked||(e.AlignmentService.stateDirty=!0,e.orientations[n.id]=e.orientations[n.id]+t)});var n=this.AlignmentService.primary.id,i=u.VectorFactory.fromArray3(this.datasetLocations[n]);this.GeoTransformationService.vectorToLocal(i).length()>a.GeoTransformationService.RELOCATE_LOCAL_SYSTEM_THRESHOLD&&this.GeoTransformationService.setOffsetFromGlobal(i);var r=this.ptZTolocal(this.datasetLocations[n]),o=new d.Matrix4;o.getInverse(r);var s,c,l,p=new d.Matrix4;p.makeRotationZ(t),h.forEach(this.AlignmentService.selectedDatasets,function(t){if(t.id!==n&&!t.locked){e.AlignmentService.stateDirty=!0,s=new d.Matrix4,c=new d.Matrix4,l=new d.Matrix4;var i=e.ptZTolocal(e.datasetLocations[t.id]);s.multiplyMatrices(o,i),c.multiplyMatrices(p,s),l.multiplyMatrices(r,c),e.datasetLocations[t.id]=e.localToPtZ(l)}}),this.datasetOrientationChanged.emit()}},e.prototype.ptZTolocal=function(t){return(new d.Matrix4).identity().makeRotationZ(0).setPosition(this.GeoTransformationService.toLocal(t[0],t[1],t[2]))},e.prototype.localToPtZ=function(t){var e=new d.Vector3,n=new d.Quaternion,i=new d.Vector3;return t.decompose(e,n,i),this.GeoTransformationService.vectorToGlobal(e).toArray()},e.prototype.updateDatasets=function(){var t=this;if(h.forEach(this.datasetLocations,function(e,n){t.DatasetRepository.dataMap[n].globalLocation=(new d.Vector3).fromArray(e),t.DatasetRepository.dataMap[n].orientation=t.orientations[n],t.DatasetRepository.dataMap[n].computeLocalCoordinates(),t.DatasetRepository.dataMap[n].makeMatrix(),t.DatasetAlignmentService.updateImageCoordinates(t.DatasetRepository.dataMap[n]).catch(f.handleWarning)}),h.size(this.AlignmentService.selectedDatasets)>0){var e=h.sample(this.AlignmentService.selectedDatasets).id,n=this.datasetLocations[e];this.GeoTransformationService.setOffsetFromGlobal(new d.Vector3(n[0],n[1],n[2]))}else this.DatasetRepository.findAll().then(function(e){var n=t.datasetLocations[e[0].id];t.GeoTransformationService.setOffsetFromGlobal(new d.Vector3(n[0],n[1],n[2]))}).catch(function(){})},e.prototype.save=function(){var t=this;return this.updateDatasets(),this.DatasetAlignmentService.saveAlignment().then(function(){t.AlignmentService.stateDirty=!1})},e.prototype.isSavingInProgress=function(){return this.DatasetAlignmentService.isSavingInProgress()},e.prototype.searchAddress=function(t){var e=this,n={q:t,format:"json"};return this.searchRequest(n,!0).catch(function(){return e.searchRequest(n,!1)})},e.prototype.discardChanges=function(){return this.AlignmentService.discardChanges()},e.prototype.hasChanges=function(){return this.AlignmentService.stateDirty},e.prototype.promptOnUnsavedChanges=function(){return t.prototype.promptOnUnsavedChanges.call(this,"#confirmUnsavedGeoregistration")},e.prototype.markAsChanged=function(){this.AlignmentService.stateDirty=!0},e.prototype.searchRequest=function(t,e){var n=e?"https://nominatim.openstreetmap.org/search":"http://nominatim.openstreetmap.org/search";return this.RestService.httpRequest({url:n,method:"GET",params:t,transformResponse:function(t){for(var e=o.fromJson(t),n=0,i=e;n<i.length;n++){var r=i[n];r.longitude=r.lon,r.latitude=r.lat}return e}})},e.ɵfac=function(t){return new(t||e)(b.ɵɵinject(w.AlignmentService),b.ɵɵinject(S.RestService),b.ɵɵinject(x.DatasetRepository),b.ɵɵinject(M.DatasetAlignmentService),b.ɵɵinject(E.ImageService),b.ɵɵinject(C.GeoTransformationService))},e.ɵprov=b.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(m.SaveDiscardDialogService);e.GeoRegistrationService=A,b.ɵsetClassMetadata(A,[{type:y.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:w.AlignmentService},{type:S.RestService},{type:x.DatasetRepository},{type:M.DatasetAlignmentService},{type:E.ImageService},{type:C.GeoTransformationService}]},null),o.module("IVWebApp").service("GeoRegistrationService",v.downgradeInjectable(A))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(7);n(595),n(596);var o=function(){function t(t){this.LanguageService=t,this.COL_SPAN=4,this.dropdownOpened=!1,this.allDataLanguages=this.LanguageService.allDataLanguages}return t.$inject=["LanguageService"],Object.defineProperty(t.prototype,"translations",{get:function(){return this.controllerTranslations},set:function(t){this.controllerTranslations=t,this.modelChanged()},enumerable:!0,configurable:!0}),t.prototype.modelChanged=function(){if(this.controllerTranslations&&!Object.keys(this.controllerTranslations).length){var t=this.LanguageService.dataLanguage;this.controllerTranslations[t]=""}this.select()},t.prototype.select=function(t){if(!t){var e=void 0;if(this.controllerTranslations&&!((e=this.LanguageService.dataLanguage)in this.controllerTranslations)&&!((e=this.LanguageService.fallbackLanguage.toString())in this.controllerTranslations)){var n=Object.keys(this.controllerTranslations);e=n.length?n.sort()[0]:void 0}t=e?this.LanguageService.getLanguage(e):void 0}this.selectedLanguage=t,t&&this.LanguageService.updateDataLanguage(t)},t.prototype.getClass=function(t){return void 0===this.selectedLanguage&&this.select(),t===this.selectedLanguage?"active":""},t.prototype.getUsedLanguages=function(){var t=this;return r.keysIn(this.controllerTranslations).map(function(e){return t.LanguageService.getLanguage(e)})},t.prototype.add=function(){this.dropdownOpened=!0},t.prototype.canAdd=function(){return this.getUsedLanguages().length<this.allDataLanguages.length},t.prototype.create=function(t){this.dropdownOpened=!1,this.controllerTranslations[t.key]="",this.selectedLanguage=t},t.prototype.remove=function(){var t=this.selectedLanguage;t&&(delete this.controllerTranslations[t.key],this.select())},t.prototype.canRemove=function(){return this.getUsedLanguages().length>1},t.areTranslationsEmpty=function(t){return 0===Object.keys(t).length},t.removeEmptyTranslations=function(t){Object.keys(t).forEach(function(e){t[e]||delete t[e]})},t}();e.TranslationEditorController=o;var a=function(){function t(){this.restrict="E",this.templateUrl="I18N/TranslationEditor.html",this.controller=o,this.controllerAs="vm",this.scope=!0,this.bindToController={translations:"=",colSpan:"@?",selectedLanguage:"="}}return t.factory=function(){return function(){return new t}},t}();e.TranslationEditorDirective=a,i.module("IVWebApp").directive("translationEditor",a.factory())},function(t,e,n){"use strict";n.d(e,"a",function(){return a});var i=n(12),r=n(76),o=n(71);function a(t){return new i.a(function(e){var n;try{n=t()}catch(t){return void e.error(t)}return(n?Object(r.a)(n):Object(o.b)()).subscribe(e)})}},function(t,e,n){"use strict";n.d(e,"a",function(){return r});var i=n(56);function r(t){return!Object(i.a)(t)&&t-parseFloat(t)+1>=0}},function(t,e,n){"use strict";n.d(e,"a",function(){return l});var i=n(1),r=n(79),o=n(176),a=n(78),s=n(62),c=n(76);function l(t,e){return"function"==typeof e?function(n){return n.pipe(l(function(n,i){return Object(c.a)(t(n,i)).pipe(Object(s.a)(function(t,r){return e(n,t,i,r)}))}))}:function(e){return e.lift(new u(t))}}var u=function(){function t(t){this.project=t}return t.prototype.call=function(t,e){return e.subscribe(new d(t,this.project))},t}(),d=function(t){function e(e,n){var i=t.call(this,e)||this;return i.project=n,i.index=0,i}return i.c(e,t),e.prototype._next=function(t){var e,n=this.index++;try{e=this.project(t,n)}catch(t){return void this.destination.error(t)}this._innerSub(e,t,n)},e.prototype._innerSub=function(t,e,n){var i=this.innerSubscription;i&&i.unsubscribe();var r=new o.a(this,e,n),s=this.destination;s.add(r),this.innerSubscription=Object(a.a)(this,t,void 0,void 0,r),this.innerSubscription!==r&&s.add(this.innerSubscription)},e.prototype._complete=function(){var e=this.innerSubscription;e&&!e.closed||t.prototype._complete.call(this),this.unsubscribe()},e.prototype._unsubscribe=function(){this.innerSubscription=null},e.prototype.notifyComplete=function(e){this.destination.remove(e),this.innerSubscription=null,this.isStopped&&t.prototype._complete.call(this)},e.prototype.notifyNext=function(t,e,n,i,r){this.destination.next(e)},e}(r.a)},function(t,e,n){"use strict";n.d(e,"b",function(){return o}),n.d(e,"a",function(){return a});var i=n(1),r=function(t){function e(e,n){var i=t.call(this,e,n)||this;return i.scheduler=e,i.work=n,i}return i.c(e,t),e.prototype.schedule=function(e,n){return void 0===n&&(n=0),n>0?t.prototype.schedule.call(this,e,n):(this.delay=n,this.state=e,this.scheduler.flush(this),this)},e.prototype.execute=function(e,n){return n>0||this.closed?t.prototype.execute.call(this,e,n):this._execute(e,n)},e.prototype.requestAsyncId=function(e,n,i){return void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0?t.prototype.requestAsyncId.call(this,e,n,i):e.flush(this)},e}(n(151).a),o=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.c(e,t),e}(n(150).a))(r),a=o},function(t,e,n){"use strict";n.d(e,"a",function(){return i});var i=function(){function t(e,n){void 0===n&&(n=t.now),this.SchedulerAction=e,this.now=n}return t.prototype.schedule=function(t,e,n){return void 0===e&&(e=0),new this.SchedulerAction(this,t).schedule(n,e)},t.now=function(){return Date.now()},t}()},function(t,e,n){"use strict";n.d(e,"a",function(){return s});var i=n(12),r=n(77),o=n(307),a=n(149);function s(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var n=Number.POSITIVE_INFINITY,s=null,c=t[t.length-1];return Object(r.a)(c)?(s=t.pop(),t.length>1&&"number"==typeof t[t.length-1]&&(n=t.pop())):"number"==typeof c&&(n=t.pop()),null===s&&1===t.length&&t[0]instanceof i.a?t[0]:Object(o.a)(n)(Object(a.a)(t,s))}},function(t,e,n){"use strict";n.d(e,"a",function(){return i});var i=function(){function t(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}return t.prototype=Object.create(Error.prototype),t}()},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(70),a=(n(9),n(0)),s=n(85),c=n(96),l=n(217),u=n(575),d=n(146),p=n(576),h=(n(66),n(2)),f=n(6),g=n(168),m=(n(130),n(0)),v=n(9),y=n(66),b=n(130),w=function(t){function e(e,n,i){var r=t.call(this,void 0,e)||this;return r.RestService=e,r.TransformService=n,r.UoMService=i,r.path="newmeasurements",r}return r(e,t),e.prototype.create=function(t){var e=t.type,n=t.geometry.coordinates;return s.ToolSpec.of(e).type===s.ToolType.AREA?this.createAreaMeasurement(n,e):this.createDistanceMeasurement(n,e)},e.prototype.createDistanceMeasurement=function(t,e){var n=t.map(function(t){return c.VectorFactory.fromArray3(t)}),i=this.convertToLocalCoordinates(t[0]),r=new(0,s.ToolSpec.of(e).initializer)(i,this.UoMService);if(!(r instanceof l.DistanceMeasurementObject3D))throw Promise.reject("Created object in repository is not expected type");var o=this.convertToLocalCoordinates(t[1]);return r.addPoint(o),new u.DistanceMeasurement({TransformService:this.TransformService,UoMService:this.UoMService},r,e,g.translate("Distance"),n)},e.prototype.createAreaMeasurement=function(t,e){var n=this;t[0].splice(-1,1);var i=t[0].map(function(t){return c.VectorFactory.fromArray3(t)}),r=t[0].map(function(t){return n.convertToLocalCoordinates(t)}),o=new(0,s.ToolSpec.of(e).initializer)(r,this.UoMService);if(!(o instanceof d.AreaMeasurementObject3D))throw Promise.reject("Created object in repository is not expected type");return new p.AreaMeasurement({TransformService:this.TransformService,UoMService:this.UoMService},o,e,g.translate("Area"),i)},e.prototype.convertToLocalCoordinates=function(t){var e=c.VectorFactory.fromArray3(t);return this.TransformService.globalToLocal.transform(e)},e.ɵfac=function(t){return new(t||e)(m.ɵɵinject(v.RestService),m.ɵɵinject(y.TransformService),m.ɵɵinject(b.UoMService))},e.ɵprov=m.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(o.RestRepository);e.MeasurementRepository=w,m.ɵsetClassMetadata(w,[{type:a.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:v.RestService},{type:y.TransformService},{type:b.UoMService}]},null),h.module("IVWebApp").service("MeasurementsRepository",f.downgradeInjectable(w))},function(t,e,n){"use strict";n.d(e,"a",function(){return r}),n.d(e,"b",function(){return o});var i=n(156);function r(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return o(t)}function o(t){return 0===t.length?i.a:1===t.length?t[0]:function(e){return t.reduce(function(t,e){return e(t)},e)}}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.BUNDLE_IMPORT_JOB="bundleImportJob",t.BUNDLE_WIFI_IMPORT_JOB="bundleWifiImportJob",t.BUNDLE_NAVGRAPH_IMPORT_JOB="bundleNavgraphImportJob",t.UNZIP_AND_MERGE_JOB="unzipAndMergeJob",t.MAPS_AND_NAVGRAPH_GENERATOR_JOB="mapsAndNavgraphGeneratorJob",t.MAPS_GENERATOR_JOB="mapsGeneratorJob",t.FLOOR_MAPS_GENERATOR_JOB="floorMapsGeneratorJob",t.FLOOR_MAPS_TILER_JOB="floorMapsTilerJob",t.NAVGRAPH_GENERATOR_JOB="navgraphGeneratorJob",t.POINTCLOUD_IMPORTER_JOB="pointCloudImporterJob",t.POINTCLOUD_AUTO_ALIGN_JOB="pointCloudAutoAlignJob",t.DOWNLOAD_DATASET_FROM_S3_JOB="downloadDatasetFromS3Job",t.POINT_CLOUD_CROP_JOB="pointCloudCropJob",t.WEBDIR_UPGRADE_JOB="webdirUpgradeJob",t.VISUAL_INDEX_IMPORT_JOB="visualIndexImportJob"}(e.JobName||(e.JobName={}))},function(t,e,n){var i=n(158),r=n(458);(t.exports=function(t,e){return r[t]||(r[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.5",mode:i?"pure":"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})},function(t,e,n){"use strict";var i=n(109),r=n(174),o=n(240),a=n(110),s=n(355),c=a.set,l=a.getterFor("Array Iterator");t.exports=s(Array,"Array",function(t,e){c(this,{type:"Array Iterator",target:i(t),index:0,kind:e})},function(){var t=l(this),e=t.target,n=t.kind,i=t.index++;return!e||i>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==n?{value:i,done:!1}:"values"==n?{value:e[i],done:!1}:{value:[i,e[i]],done:!1}},"values"),o.Arguments=o.Array,r("keys"),r("values"),r("entries")},function(t,e,n){var i=n(34);t.exports=i},function(t,e,n){var i=n(284),r=n(236),o=i("keys");t.exports=function(t){return o[t]||(o[t]=r(t))}},function(t,e,n){"use strict";var i={}.propertyIsEnumerable,r=Object.getOwnPropertyDescriptor,o=r&&!i.call({1:2},1);e.f=o?function(t){var e=r(this,t);return!!e&&e.enumerable}:i},function(t,e,n){var i=n(18),r=/#|\.prototype\./,o=function(t,e){var n=s[a(t)];return n==l||n!=c&&("function"==typeof e?i(e):!!e)},a=o.normalize=function(t){return String(t).replace(r,".").toLowerCase()},s=o.data={},c=o.NATIVE="N",l=o.POLYFILL="P";t.exports=o},function(t,e,n){var i=n(161);t.exports=i("navigator","userAgent")||""},function(t,e,n){var i=n(122),r=n(87),o=function(t){return function(e,n){var o,a,s=String(r(e)),c=i(n),l=s.length;return c<0||c>=l?t?"":void 0:(o=s.charCodeAt(c))<55296||o>56319||c+1===l||(a=s.charCodeAt(c+1))<56320||a>57343?t?s.charAt(c):o:t?s.slice(c,c+2):a-56320+(o-55296<<10)+65536}};t.exports={codeAt:o(!1),charAt:o(!0)}},function(t,e,n){"use strict";var i=n(5),r=n(34),o=n(289),a=n(98),s=n(194),c=n(245),l=n(192),u=n(42),d=n(18),p=n(362),h=n(162),f=n(293);t.exports=function(t,e,n){var g=-1!==t.indexOf("Map"),m=-1!==t.indexOf("Weak"),v=g?"set":"add",y=r[t],b=y&&y.prototype,w=y,S={},x=function(t){var e=b[t];a(b,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(m&&!u(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return m&&!u(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(m&&!u(t))&&e.call(this,0===t?0:t)}:function(t,n){return e.call(this,0===t?0:t,n),this})};if(o(t,"function"!=typeof y||!(m||b.forEach&&!d(function(){(new y).entries().next()}))))w=n.getConstructor(e,t,g,v),s.REQUIRED=!0;else if(o(t,!0)){var M=new w,E=M[v](m?{}:-0,1)!=M,C=d(function(){M.has(1)}),A=p(function(t){new y(t)}),T=!m&&d(function(){for(var t=new y,e=5;e--;)t[v](e,e);return!t.has(-0)});A||((w=e(function(e,n){l(e,w,t);var i=f(new y,e,w);return null!=n&&c(n,i[v],i,g),i})).prototype=b,b.constructor=w),(C||T)&&(x("delete"),x("has"),g&&x("get")),(T||E)&&x(v),m&&b.clear&&delete b.clear}return S[t]=w,i({global:!0,forced:w!=y},S),h(w,t),m||n.setStrong(w,t,g),w}},function(t,e,n){var i=n(42),r=n(191);t.exports=function(t,e,n){var o,a;return r&&"function"==typeof(o=e.constructor)&&o!==n&&i(a=o.prototype)&&a!==n.prototype&&r(t,a),t}},function(t,e,n){"use strict";var i=n(158),r=n(34),o=n(18);t.exports=i||!o(function(){var t=Math.random();__defineSetter__.call(null,t,function(){}),delete r[t]})},function(t,e,n){var i=n(132),r=n(53),o=n(234),a=n(44),s=function(t){return function(e,n,s,c){i(n);var l=r(e),u=o(l),d=a(l.length),p=t?d-1:0,h=t?-1:1;if(s<2)for(;;){if(p in u){c=u[p],p+=h;break}if(p+=h,t?p<0:d<=p)throw TypeError("Reduce of empty array with no initial value")}for(;t?p>=0:d>p;p+=h)p in u&&(c=n(c,u[p],p,l));return c}};t.exports={left:s(!1),right:s(!0)}},function(t,e,n){var i=n(42),r=n(133),o=n(45)("match");t.exports=function(t){var e;return i(t)&&(void 0!==(e=t[o])?!!e:"RegExp"==r(t))}},function(t,e,n){"use strict";n(503);var i=n(98),r=n(18),o=n(45),a=n(298),s=n(88),c=o("species"),l=!r(function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")}),u="$0"==="a".replace(/./,"$0"),d=o("replace"),p=!!/./[d]&&""===/./[d]("a","$0"),h=!r(function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var n="ab".split(t);return 2!==n.length||"a"!==n[0]||"b"!==n[1]});t.exports=function(t,e,n,d){var f=o(t),g=!r(function(){var e={};return e[f]=function(){return 7},7!=""[t](e)}),m=g&&!r(function(){var e=!1,n=/a/;return"split"===t&&((n={}).constructor={},n.constructor[c]=function(){return n},n.flags="",n[f]=/./[f]),n.exec=function(){return e=!0,null},n[f](""),!e});if(!g||!m||"replace"===t&&(!l||!u||p)||"split"===t&&!h){var v=/./[f],y=n(f,""[t],function(t,e,n,i,r){return e.exec===a?g&&!r?{done:!0,value:v.call(e,n,i)}:{done:!0,value:t.call(n,e,i)}:{done:!1}},{REPLACE_KEEPS_$0:u,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:p}),b=y[0],w=y[1];i(String.prototype,t,b),i(RegExp.prototype,f,2==e?function(t,e){return w.call(t,this,e)}:function(t){return w.call(t,this)})}d&&s(RegExp.prototype[f],"sham",!0)}},function(t,e,n){"use strict";var i,r,o=n(248),a=n(366),s=RegExp.prototype.exec,c=String.prototype.replace,l=s,u=(i=/a/,r=/b*/g,s.call(i,"a"),s.call(r,"a"),0!==i.lastIndex||0!==r.lastIndex),d=a.UNSUPPORTED_Y||a.BROKEN_CARET,p=void 0!==/()??/.exec("")[1];(u||p||d)&&(l=function(t){var e,n,i,r,a=this,l=d&&a.sticky,h=o.call(a),f=a.source,g=0,m=t;return l&&(-1===(h=h.replace("y","")).indexOf("g")&&(h+="g"),m=String(t).slice(a.lastIndex),a.lastIndex>0&&(!a.multiline||a.multiline&&"\n"!==t[a.lastIndex-1])&&(f="(?: "+f+")",m=" "+m,g++),n=new RegExp("^(?:"+f+")",h)),p&&(n=new RegExp("^"+f+"$(?!\\s)",h)),u&&(e=a.lastIndex),i=s.call(l?n:a,m),l?i?(i.input=i.input.slice(g),i[0]=i[0].slice(g),i.index=a.lastIndex,a.lastIndex+=i[0].length):a.lastIndex=0:u&&i&&(a.lastIndex=a.global?i.index+i[0].length:e),p&&i&&i.length>1&&c.call(i[0],n,function(){for(r=1;r<arguments.length-2;r++)void 0===arguments[r]&&(i[r]=void 0)}),i}),t.exports=l},function(t,e,n){"use strict";var i=n(291).charAt;t.exports=function(t,e,n){return e+(n?i(t,e).length:1)}},function(t,e,n){var i=n(133),r=n(298);t.exports=function(t,e){var n=t.exec;if("function"==typeof n){var o=n.call(t,e);if("object"!=typeof o)throw TypeError("RegExp exec method returned something other than an Object or null");return o}if("RegExp"!==i(t))throw TypeError("RegExp#exec called on incompatible receiver");return r.call(t,e)}},function(t,e){t.exports="\t\n\v\f\r                 \u2028\u2029\ufeff"},function(t,e){var n=Math.expm1,i=Math.exp;t.exports=!n||n(10)>22025.465794806718||n(10)<22025.465794806718||-2e-17!=n(-2e-17)?function(t){return 0==(t=+t)?t:t>-1e-6&&t<1e-6?t+t*t/2:i(t)-1}:n},function(t,e,n){"use strict";var i=n(34),r=n(43),o=n(371),a=n(88),s=n(243),c=n(18),l=n(192),u=n(122),d=n(44),p=n(510),h=n(828),f=n(99),g=n(191),m=n(190).f,v=n(48).f,y=n(363),b=n(162),w=n(110),S=w.get,x=w.set,M=i.ArrayBuffer,E=M,C=i.DataView,A=C&&C.prototype,T=Object.prototype,O=i.RangeError,_=h.pack,P=h.unpack,I=function(t){return[255&t]},k=function(t){return[255&t,t>>8&255]},D=function(t){return[255&t,t>>8&255,t>>16&255,t>>24&255]},R=function(t){return t[3]<<24|t[2]<<16|t[1]<<8|t[0]},L=function(t){return _(t,23,4)},N=function(t){return _(t,52,8)},j=function(t,e){v(t.prototype,e,{get:function(){return S(this)[e]}})},V=function(t,e,n,i){var r=p(n),o=S(t);if(r+e>o.byteLength)throw O("Wrong index");var a=S(o.buffer).bytes,s=r+o.byteOffset,c=a.slice(s,s+e);return i?c:c.reverse()},F=function(t,e,n,i,r,o){var a=p(n),s=S(t);if(a+e>s.byteLength)throw O("Wrong index");for(var c=S(s.buffer).bytes,l=a+s.byteOffset,u=i(+r),d=0;d<e;d++)c[l+d]=u[o?d:e-d-1]};if(o){if(!c(function(){M(1)})||!c(function(){new M(-1)})||c(function(){return new M,new M(1.5),new M(NaN),"ArrayBuffer"!=M.name})){for(var U,B=(E=function(t){return l(this,E),new M(p(t))}).prototype=M.prototype,z=m(M),G=0;z.length>G;)(U=z[G++])in E||a(E,U,M[U]);B.constructor=E}g&&f(A)!==T&&g(A,T);var H=new C(new E(2)),W=A.setInt8;H.setInt8(0,2147483648),H.setInt8(1,2147483649),!H.getInt8(0)&&H.getInt8(1)||s(A,{setInt8:function(t,e){W.call(this,t,e<<24>>24)},setUint8:function(t,e){W.call(this,t,e<<24>>24)}},{unsafe:!0})}else E=function(t){l(this,E,"ArrayBuffer");var e=p(t);x(this,{bytes:y.call(new Array(e),0),byteLength:e}),r||(this.byteLength=e)},C=function(t,e,n){l(this,C,"DataView"),l(t,E,"DataView");var i=S(t).byteLength,o=u(e);if(o<0||o>i)throw O("Wrong offset");if(o+(n=void 0===n?i-o:d(n))>i)throw O("Wrong length");x(this,{buffer:t,byteLength:n,byteOffset:o}),r||(this.buffer=t,this.byteLength=n,this.byteOffset=o)},r&&(j(E,"byteLength"),j(C,"buffer"),j(C,"byteLength"),j(C,"byteOffset")),s(C.prototype,{getInt8:function(t){return V(this,1,t)[0]<<24>>24},getUint8:function(t){return V(this,1,t)[0]},getInt16:function(t){var e=V(this,2,t,arguments.length>1?arguments[1]:void 0);return(e[1]<<8|e[0])<<16>>16},getUint16:function(t){var e=V(this,2,t,arguments.length>1?arguments[1]:void 0);return e[1]<<8|e[0]},getInt32:function(t){return R(V(this,4,t,arguments.length>1?arguments[1]:void 0))},getUint32:function(t){return R(V(this,4,t,arguments.length>1?arguments[1]:void 0))>>>0},getFloat32:function(t){return P(V(this,4,t,arguments.length>1?arguments[1]:void 0),23)},getFloat64:function(t){return P(V(this,8,t,arguments.length>1?arguments[1]:void 0),52)},setInt8:function(t,e){F(this,1,t,I,e)},setUint8:function(t,e){F(this,1,t,I,e)},setInt16:function(t,e){F(this,2,t,k,e,arguments.length>2?arguments[2]:void 0)},setUint16:function(t,e){F(this,2,t,k,e,arguments.length>2?arguments[2]:void 0)},setInt32:function(t,e){F(this,4,t,D,e,arguments.length>2?arguments[2]:void 0)},setUint32:function(t,e){F(this,4,t,D,e,arguments.length>2?arguments[2]:void 0)},setFloat32:function(t,e){F(this,4,t,L,e,arguments.length>2?arguments[2]:void 0)},setFloat64:function(t,e){F(this,8,t,N,e,arguments.length>2?arguments[2]:void 0)}});b(E,"ArrayBuffer"),b(C,"DataView"),t.exports={ArrayBuffer:E,DataView:C}},function(t,e,n){"use strict";n.d(e,"a",function(){return o});var i=n(1),r=n(26);function o(){return function(t){return t.lift(new a(t))}}var a=function(){function t(t){this.connectable=t}return t.prototype.call=function(t,e){var n=this.connectable;n._refCount++;var i=new s(t,n),r=e.subscribe(i);return i.closed||(i.connection=n.connect()),r},t}(),s=function(t){function e(e,n){var i=t.call(this,e)||this;return i.connectable=n,i}return i.c(e,t),e.prototype._unsubscribe=function(){var t=this.connectable;if(t){this.connectable=null;var e=t._refCount;if(e<=0)this.connection=null;else if(t._refCount=e-1,e>1)this.connection=null;else{var n=this.connection,i=t._connection;this.connection=null,!i||n&&i!==n||i.unsubscribe()}}else this.connection=null},e}(r.a)},function(t,e,n){"use strict";n.d(e,"a",function(){return u});var i=n(1),r=n(32),o=n(277),a=n(33),s=n(448),c=n(127),l=n(336),u=function(t){function e(e,n,i){void 0===e&&(e=Number.POSITIVE_INFINITY),void 0===n&&(n=Number.POSITIVE_INFINITY);var r=t.call(this)||this;return r.scheduler=i,r._events=[],r._infiniteTimeWindow=!1,r._bufferSize=e<1?1:e,r._windowTime=n<1?1:n,n===Number.POSITIVE_INFINITY?(r._infiniteTimeWindow=!0,r.next=r.nextInfiniteTimeWindow):r.next=r.nextTimeWindow,r}return i.c(e,t),e.prototype.nextInfiniteTimeWindow=function(e){var n=this._events;n.push(e),n.length>this._bufferSize&&n.shift(),t.prototype.next.call(this,e)},e.prototype.nextTimeWindow=function(e){this._events.push(new d(this._getNow(),e)),this._trimBufferThenGetEvents(),t.prototype.next.call(this,e)},e.prototype._subscribe=function(t){var e,n=this._infiniteTimeWindow,i=n?this._events:this._trimBufferThenGetEvents(),r=this.scheduler,o=i.length;if(this.closed)throw new c.a;if(this.isStopped||this.hasError?e=a.a.EMPTY:(this.observers.push(t),e=new l.a(this,t)),r&&t.add(t=new s.a(t,r)),n)for(var u=0;u<o&&!t.closed;u++)t.next(i[u]);else for(u=0;u<o&&!t.closed;u++)t.next(i[u].value);return this.hasError?t.error(this.thrownError):this.isStopped&&t.complete(),e},e.prototype._getNow=function(){return(this.scheduler||o.a).now()},e.prototype._trimBufferThenGetEvents=function(){for(var t=this._getNow(),e=this._bufferSize,n=this._windowTime,i=this._events,r=i.length,o=0;o<r&&!(t-i[o].time<n);)o++;return r>e&&(o=Math.max(o,r-e)),o>0&&i.splice(0,o),i},e}(r.a),d=function(t,e){this.time=t,this.value=e}},function(t,e,n){"use strict";n.d(e,"a",function(){return r});var i=n(12);function r(t,e){return e?new i.a(function(n){return e.schedule(o,0,{error:t,subscriber:n})}):new i.a(function(e){return e.error(t)})}function o(t){var e=t.error;t.subscriber.error(e)}},function(t,e,n){"use strict";n.d(e,"a",function(){return o});var i=n(443),r=n(156);function o(t){return void 0===t&&(t=Number.POSITIVE_INFINITY),Object(i.b)(r.a,t)}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(7),r=function(){function t(t){this.gettextCatalog=t}return t.prototype.applies=function(t){var e=i.get(t,"config.url"),n=i.get(t,"status");return void 0!==n&&void 0!==e&&this.networkApplies(n,e,t)},t}();e.NetworkIssueDetector=r},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(7),a=n(1041),s=n(253),c=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.titles={},e.descriptions={},e}return r(e,t),e.prototype.resolveInjectables=function(){t.prototype.resolveInjectables.call(this),this.LanguageService=this.injectables.LanguageService,this.ContentService=this.injectables.ContentService},e.prototype.copy=function(e,n,i){return void 0===n&&(n=!1),void 0===i&&(i=!1),t.prototype.fill.call(this,e,i),this.poiTypeId=e.poiTypeId,this.poiType=e.poiType,this._icon=e._icon,this.importance=e.importance,this.visibilityCheck=e.visibilityCheck,this.forceShow=e.forceShow,this.titles=o.cloneDeep(e.titles),this.descriptions=o.cloneDeep(e.descriptions),this.siteModelEntityId=e.siteModelEntityId,this.siteModelEntity=e.siteModelEntity,this.customData=e.customData,this.referenceMarker=e.referenceMarker,this.readOnly=e.readOnly,this.idRoutable=e.idRoutable,this.canDisplayNameInScene=e.canDisplayNameInScene,this.canBeHighlightedInScene=e.canBeHighlightedInScene,this.isLocationAsPoi=e.isLocationAsPoi,this.isSiteModelAsPoi=e.isSiteModelAsPoi,this.isPoiFromSearchResult=e.isPoiFromSearchResult,this.pov=e.pov,this},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.poiTypeId=e.poi_type_id,this._icon=e.icon,this.importance=e.importance,this.visibilityCheck=e.visibility_check,this.titles=o.clone(e.titles),this.descriptions=o.clone(e.descriptions),this.siteModelEntityId=e.site_model_entity_id,this.customData=e.custom_data,this.referenceMarker=e.reference_marker,this.readOnly=!1,this.idRoutable=!0,this.forceShow=!1,this.canDisplayNameInScene=!0,this.canBeHighlightedInScene=!0,this.isLocationAsPoi=!1,this.isSiteModelAsPoi=!1,this.pov=s.PointOfView.fromDto(e.point_of_view)},e.prototype.setPointOfView=function(t,e,n,i){if(!t)throw new Error("Location needs to be defined");if(!e)throw new Error("Orientation needs to be defined");this.pov=new s.PointOfView(t,e,n,i)},e.prototype.fillFromSearchResult=function(t){this.id=t.id,this.isPoiFromSearchResult=!0,this.globalLocation=t.location,this.computeLocalCoordinatesFromGlobal(),this.title=t.title,this.icon=t.icon,this.poiType=t.poiType,this.siteModelEntity=t.siteModelEntity,this.readOnly=!0,this.visibilityCheck=!1,this.forceShow=!0,this.canDisplayNameInScene=!0,this.canBeHighlightedInScene=!0},e.prototype.toData=function(){var t={};return this.fillDto(t),t.poi_type_id=this.poiType?this.poiType.id:void 0,t.icon=this._icon,t.importance=this.importance,t.visibility_check=this.visibilityCheck,t.titles=o.clone(this.titles),t.descriptions=o.clone(this.descriptions),t.site_model_entity_id=void 0,t.custom_data=this.customData,t.reference_marker=this.referenceMarker,t.point_of_view=this.pov?this.pov.toDto():void 0,t},e.prototype.movePoi=function(t,e,n){this.dataset=t,this.datasetLocation=e,this.datasetOrientation=n,this.computeCoordinatesFromDataset()},e.prototype.computeCoordinatesFromDataset=function(){this.dataset&&this.datasetLocation&&this.datasetOrientation&&this.computeLocalCoordinatesFromDataset(),this.referenceMarker||this.computeGlobalCoordinatesFromLocal()},Object.defineProperty(e.prototype,"title",{get:function(){return this.LanguageService.localize(this.titles)||""},set:function(t){this.titles[this.LanguageService.getCurrentLanguage()]=t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"description",{get:function(){var t=this.LanguageService.localize(this.descriptions);return t?this.ContentService.expandSelfHostedUrls(t):t},set:function(t){this.descriptions[this.LanguageService.getCurrentLanguage()]=t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"icon",{get:function(){return this._icon||this.poiType&&this.poiType.icon||n(527)},set:function(t){this._icon=t},enumerable:!0,configurable:!0}),e.prototype.hasCustomIcon=function(){return!!this._icon},Object.defineProperty(e.prototype,"hash",{get:function(){return void 0===this.id?"PoiEntity:LocationPoi:"+this.unique_id:"PoiEntity:"+this.id},enumerable:!0,configurable:!0}),e.prototype.getCode=function(t){return console.warn('Deprecated usage of "getCode(language?)", use "title" instead.'),t?this.titles[t]:this.title},e.prototype.getDescription=function(t){return console.warn('Deprecated usage of "getDescription(language?)", use "description" instead.'),t?this.descriptions[t]:this.description},e}(a.SecureLocationEntity);e.PoiEntity=c},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i)||this;return o.SiteModelRepository=r,o.injectables.SiteModelRepository=o.SiteModelRepository,o.SiteModelRepository.siteModelUpdated.connect(function(){o.data.length&&(o.resetRequestCache(),o.findAll(!0).catch(function(){}))}),o}return r(e,t),e}(n(383).ReferenceSystemAwareRestRepository);e.SiteModelBoundRestRepository=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t[t.DEFAULT=2]="DEFAULT",t[t.ABOVE_DEFAULT=3]="ABOVE_DEFAULT",t[t.BETWEEN=1e3]="BETWEEN",t[t.ABOVE=5e3]="ABOVE",t[t.HIGHLIGHT=1e4]="HIGHLIGHT",t[t.ABOVE_HIGHLIGHT=11e3]="ABOVE_HIGHLIGHT",t[t.ON_TOP=2e4]="ON_TOP",t[t.MAGNIFICATION=20001]="MAGNIFICATION",t[t.MAGNIFICATION_CROSSHAIR=20002]="MAGNIFICATION_CROSSHAIR"}(e.RenderOrder||(e.RenderOrder={}))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(4);e.createSetUniformsFunc=function(t){var e=new i.Vector2,n=new i.Vector2;return function(i,r,o,a,s,c,l,u){e.set(s,c),n.set(l,u),t.uniforms.depthTexture={value:i},t.uniforms.rgbaTexture={value:r},t.uniforms.nearPlane={value:o},t.uniforms.farPlane={value:a},t.uniforms.viewportSize={value:e},t.uniforms.viewportOffset={value:n}}},e.createOnBeforeRenderFunc=function(){return function(t,e,n,r,o,a){if(n instanceof i.PerspectiveCamera&&o.setUniforms){var s=e.userData.offscreenRenderOutput;o.setUniforms(s.depthTexture,s.rgbaTexture,n.near,n.far,s.viewportWidth,s.viewportHeight,s.viewportHorizontalOffset,s.viewportVerticalOffset)}}}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i,r=n(0),o=n(1099),a=n(1106),s=n(388),c=n(0);!function(t){t.CHINESE="cmn",t.JAPANESE="jpn",t.GREEK="ell",t.RUSSIAN="rus",t.BULGARIAN="bul",t.HUNGARIAN="hun",t.TURKISH="tur",t.FRENCH="fra",t.CZECH="ces",t.ENGLISH="eng"}(i=e.DetectedLanguage||(e.DetectedLanguage={}));var l=function(){function t(){this.DETECTION_MIN_LENGTH=3}return t.prototype.detectLanguage=function(t){var e=o(t,{minLength:this.DETECTION_MIN_LENGTH,only:Object.values(i)});return this.getDetectedLanguageEnum(e)},t.prototype.getFontForText=function(t){switch(this.detectLanguage(t)){case i.CHINESE:return a.isSimplified(t)?s.SupportedFont.CHINESE_SIMPLIFIED:s.SupportedFont.CHINESE_TRADITIONAL;case i.JAPANESE:return s.SupportedFont.JAPANESE;case i.BULGARIAN:case i.GREEK:case i.RUSSIAN:return s.SupportedFont.CYRILLIC;case i.CZECH:case i.ENGLISH:case i.FRENCH:case i.TURKISH:case i.HUNGARIAN:default:return s.SupportedFont.DEFAULT}},t.prototype.getDetectedLanguageEnum=function(t){for(var e=0,n=Object.keys(i);e<n.length;e++){var r=n[e];if(i[r].toString()===t)return i[r]}return i.ENGLISH},t.ɵfac=function(e){return new(e||t)},t.ɵprov=c.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.LanguageDetectionService=l,c.ɵsetClassMetadata(l,[{type:r.Injectable,args:[{providedIn:"root"}]}],null,null)},function(t,e,n){"use strict";(function(e){t.exports=function(t){for(var n="undefined"!=typeof window&&"function"==typeof window.atob?window.atob(t):e.from(t,"base64").toString("binary"),i=new Uint8Array(n.length),r=0;r<n.length;++r)i[r]=n.charCodeAt(r);return i.buffer}}).call(this,n(315).Buffer)},function(t,e,n){"use strict";(function(t){
  2027. /*!
  2028. * The buffer module from node.js, for the browser.
  2029. *
  2030. * @author Feross Aboukhadijeh <http://feross.org>
  2031. * @license MIT
  2032. */
  2033. var i=n(1110),r=n(1111),o=n(1112);function a(){return c.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(t,e){if(a()<e)throw new RangeError("Invalid typed array length");return c.TYPED_ARRAY_SUPPORT?(t=new Uint8Array(e)).__proto__=c.prototype:(null===t&&(t=new c(e)),t.length=e),t}function c(t,e,n){if(!(c.TYPED_ARRAY_SUPPORT||this instanceof c))return new c(t,e,n);if("number"==typeof t){if("string"==typeof e)throw new Error("If encoding is specified then the first argument must be a string");return d(this,t)}return l(this,t,e,n)}function l(t,e,n,i){if("number"==typeof e)throw new TypeError('"value" argument must not be a number');return"undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer?function(t,e,n,i){if(e.byteLength,n<0||e.byteLength<n)throw new RangeError("'offset' is out of bounds");if(e.byteLength<n+(i||0))throw new RangeError("'length' is out of bounds");return e=void 0===n&&void 0===i?new Uint8Array(e):void 0===i?new Uint8Array(e,n):new Uint8Array(e,n,i),c.TYPED_ARRAY_SUPPORT?(t=e).__proto__=c.prototype:t=p(t,e),t}(t,e,n,i):"string"==typeof e?function(t,e,n){if("string"==typeof n&&""!==n||(n="utf8"),!c.isEncoding(n))throw new TypeError('"encoding" must be a valid string encoding');var i=0|f(e,n),r=(t=s(t,i)).write(e,n);return r!==i&&(t=t.slice(0,r)),t}(t,e,n):function(t,e){if(c.isBuffer(e)){var n=0|h(e.length);return 0===(t=s(t,n)).length||e.copy(t,0,0,n),t}if(e){if("undefined"!=typeof ArrayBuffer&&e.buffer instanceof ArrayBuffer||"length"in e)return"number"!=typeof e.length||(i=e.length)!=i?s(t,0):p(t,e);if("Buffer"===e.type&&o(e.data))return p(t,e.data)}var i;throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(t,e)}function u(t){if("number"!=typeof t)throw new TypeError('"size" argument must be a number');if(t<0)throw new RangeError('"size" argument must not be negative')}function d(t,e){if(u(e),t=s(t,e<0?0:0|h(e)),!c.TYPED_ARRAY_SUPPORT)for(var n=0;n<e;++n)t[n]=0;return t}function p(t,e){var n=e.length<0?0:0|h(e.length);t=s(t,n);for(var i=0;i<n;i+=1)t[i]=255&e[i];return t}function h(t){if(t>=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|t}function f(t,e){if(c.isBuffer(t))return t.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;"string"!=typeof t&&(t=""+t);var n=t.length;if(0===n)return 0;for(var i=!1;;)switch(e){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return F(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return U(t).length;default:if(i)return F(t).length;e=(""+e).toLowerCase(),i=!0}}function g(t,e,n){var i=t[e];t[e]=t[n],t[n]=i}function m(t,e,n,i,r){if(0===t.length)return-1;if("string"==typeof n?(i=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=r?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(r)return-1;n=t.length-1}else if(n<0){if(!r)return-1;n=0}if("string"==typeof e&&(e=c.from(e,i)),c.isBuffer(e))return 0===e.length?-1:v(t,e,n,i,r);if("number"==typeof e)return e&=255,c.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?r?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):v(t,[e],n,i,r);throw new TypeError("val must be string, number or Buffer")}function v(t,e,n,i,r){var o,a=1,s=t.length,c=e.length;if(void 0!==i&&("ucs2"===(i=String(i).toLowerCase())||"ucs-2"===i||"utf16le"===i||"utf-16le"===i)){if(t.length<2||e.length<2)return-1;a=2,s/=2,c/=2,n/=2}function l(t,e){return 1===a?t[e]:t.readUInt16BE(e*a)}if(r){var u=-1;for(o=n;o<s;o++)if(l(t,o)===l(e,-1===u?0:o-u)){if(-1===u&&(u=o),o-u+1===c)return u*a}else-1!==u&&(o-=o-u),u=-1}else for(n+c>s&&(n=s-c),o=n;o>=0;o--){for(var d=!0,p=0;p<c;p++)if(l(t,o+p)!==l(e,p)){d=!1;break}if(d)return o}return-1}function y(t,e,n,i){n=Number(n)||0;var r=t.length-n;i?(i=Number(i))>r&&(i=r):i=r;var o=e.length;if(o%2!=0)throw new TypeError("Invalid hex string");i>o/2&&(i=o/2);for(var a=0;a<i;++a){var s=parseInt(e.substr(2*a,2),16);if(isNaN(s))return a;t[n+a]=s}return a}function b(t,e,n,i){return B(F(e,t.length-n),t,n,i)}function w(t,e,n,i){return B(function(t){for(var e=[],n=0;n<t.length;++n)e.push(255&t.charCodeAt(n));return e}(e),t,n,i)}function S(t,e,n,i){return w(t,e,n,i)}function x(t,e,n,i){return B(U(e),t,n,i)}function M(t,e,n,i){return B(function(t,e){for(var n,i,r,o=[],a=0;a<t.length&&!((e-=2)<0);++a)i=(n=t.charCodeAt(a))>>8,r=n%256,o.push(r),o.push(i);return o}(e,t.length-n),t,n,i)}function E(t,e,n){return 0===e&&n===t.length?i.fromByteArray(t):i.fromByteArray(t.slice(e,n))}function C(t,e,n){n=Math.min(t.length,n);for(var i=[],r=e;r<n;){var o,a,s,c,l=t[r],u=null,d=l>239?4:l>223?3:l>191?2:1;if(r+d<=n)switch(d){case 1:l<128&&(u=l);break;case 2:128==(192&(o=t[r+1]))&&(c=(31&l)<<6|63&o)>127&&(u=c);break;case 3:o=t[r+1],a=t[r+2],128==(192&o)&&128==(192&a)&&(c=(15&l)<<12|(63&o)<<6|63&a)>2047&&(c<55296||c>57343)&&(u=c);break;case 4:o=t[r+1],a=t[r+2],s=t[r+3],128==(192&o)&&128==(192&a)&&128==(192&s)&&(c=(15&l)<<18|(63&o)<<12|(63&a)<<6|63&s)>65535&&c<1114112&&(u=c)}null===u?(u=65533,d=1):u>65535&&(u-=65536,i.push(u>>>10&1023|55296),u=56320|1023&u),i.push(u),r+=d}return function(t){var e=t.length;if(e<=4096)return String.fromCharCode.apply(String,t);for(var n="",i=0;i<e;)n+=String.fromCharCode.apply(String,t.slice(i,i+=4096));return n}(i)}function A(t,e,n){var i="";n=Math.min(t.length,n);for(var r=e;r<n;++r)i+=String.fromCharCode(127&t[r]);return i}function T(t,e,n){var i="";n=Math.min(t.length,n);for(var r=e;r<n;++r)i+=String.fromCharCode(t[r]);return i}function O(t,e,n){var i=t.length;(!e||e<0)&&(e=0),(!n||n<0||n>i)&&(n=i);for(var r="",o=e;o<n;++o)r+=V(t[o]);return r}function _(t,e,n){for(var i=t.slice(e,n),r="",o=0;o<i.length;o+=2)r+=String.fromCharCode(i[o]+256*i[o+1]);return r}function P(t,e,n){if(t%1!=0||t<0)throw new RangeError("offset is not uint");if(t+e>n)throw new RangeError("Trying to access beyond buffer length")}function I(t,e,n,i,r,o){if(!c.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>r||e<o)throw new RangeError('"value" argument is out of bounds');if(n+i>t.length)throw new RangeError("Index out of range")}function k(t,e,n,i){e<0&&(e=65535+e+1);for(var r=0,o=Math.min(t.length-n,2);r<o;++r)t[n+r]=(e&255<<8*(i?r:1-r))>>>8*(i?r:1-r)}function D(t,e,n,i){e<0&&(e=4294967295+e+1);for(var r=0,o=Math.min(t.length-n,4);r<o;++r)t[n+r]=e>>>8*(i?r:3-r)&255}function R(t,e,n,i,r,o){if(n+i>t.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function L(t,e,n,i,o){return o||R(t,0,n,4),r.write(t,e,n,i,23,4),n+4}function N(t,e,n,i,o){return o||R(t,0,n,8),r.write(t,e,n,i,52,8),n+8}e.Buffer=c,e.SlowBuffer=function(t){return+t!=t&&(t=0),c.alloc(+t)},e.INSPECT_MAX_BYTES=50,c.TYPED_ARRAY_SUPPORT=void 0!==t.TYPED_ARRAY_SUPPORT?t.TYPED_ARRAY_SUPPORT:function(){try{var t=new Uint8Array(1);return t.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===t.foo()&&"function"==typeof t.subarray&&0===t.subarray(1,1).byteLength}catch(t){return!1}}(),e.kMaxLength=a(),c.poolSize=8192,c._augment=function(t){return t.__proto__=c.prototype,t},c.from=function(t,e,n){return l(null,t,e,n)},c.TYPED_ARRAY_SUPPORT&&(c.prototype.__proto__=Uint8Array.prototype,c.__proto__=Uint8Array,"undefined"!=typeof Symbol&&Symbol.species&&c[Symbol.species]===c&&Object.defineProperty(c,Symbol.species,{value:null,configurable:!0})),c.alloc=function(t,e,n){return function(t,e,n,i){return u(e),e<=0?s(t,e):void 0!==n?"string"==typeof i?s(t,e).fill(n,i):s(t,e).fill(n):s(t,e)}(null,t,e,n)},c.allocUnsafe=function(t){return d(null,t)},c.allocUnsafeSlow=function(t){return d(null,t)},c.isBuffer=function(t){return!(null==t||!t._isBuffer)},c.compare=function(t,e){if(!c.isBuffer(t)||!c.isBuffer(e))throw new TypeError("Arguments must be Buffers");if(t===e)return 0;for(var n=t.length,i=e.length,r=0,o=Math.min(n,i);r<o;++r)if(t[r]!==e[r]){n=t[r],i=e[r];break}return n<i?-1:i<n?1:0},c.isEncoding=function(t){switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},c.concat=function(t,e){if(!o(t))throw new TypeError('"list" argument must be an Array of Buffers');if(0===t.length)return c.alloc(0);var n;if(void 0===e)for(e=0,n=0;n<t.length;++n)e+=t[n].length;var i=c.allocUnsafe(e),r=0;for(n=0;n<t.length;++n){var a=t[n];if(!c.isBuffer(a))throw new TypeError('"list" argument must be an Array of Buffers');a.copy(i,r),r+=a.length}return i},c.byteLength=f,c.prototype._isBuffer=!0,c.prototype.swap16=function(){var t=this.length;if(t%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var e=0;e<t;e+=2)g(this,e,e+1);return this},c.prototype.swap32=function(){var t=this.length;if(t%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var e=0;e<t;e+=4)g(this,e,e+3),g(this,e+1,e+2);return this},c.prototype.swap64=function(){var t=this.length;if(t%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var e=0;e<t;e+=8)g(this,e,e+7),g(this,e+1,e+6),g(this,e+2,e+5),g(this,e+3,e+4);return this},c.prototype.toString=function(){var t=0|this.length;return 0===t?"":0===arguments.length?C(this,0,t):function(t,e,n){var i=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return O(this,e,n);case"utf8":case"utf-8":return C(this,e,n);case"ascii":return A(this,e,n);case"latin1":case"binary":return T(this,e,n);case"base64":return E(this,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return _(this,e,n);default:if(i)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),i=!0}}.apply(this,arguments)},c.prototype.equals=function(t){if(!c.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t||0===c.compare(this,t)},c.prototype.inspect=function(){var t="",n=e.INSPECT_MAX_BYTES;return this.length>0&&(t=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(t+=" ... ")),"<Buffer "+t+">"},c.prototype.compare=function(t,e,n,i,r){if(!c.isBuffer(t))throw new TypeError("Argument must be a Buffer");if(void 0===e&&(e=0),void 0===n&&(n=t?t.length:0),void 0===i&&(i=0),void 0===r&&(r=this.length),e<0||n>t.length||i<0||r>this.length)throw new RangeError("out of range index");if(i>=r&&e>=n)return 0;if(i>=r)return-1;if(e>=n)return 1;if(this===t)return 0;for(var o=(r>>>=0)-(i>>>=0),a=(n>>>=0)-(e>>>=0),s=Math.min(o,a),l=this.slice(i,r),u=t.slice(e,n),d=0;d<s;++d)if(l[d]!==u[d]){o=l[d],a=u[d];break}return o<a?-1:a<o?1:0},c.prototype.includes=function(t,e,n){return-1!==this.indexOf(t,e,n)},c.prototype.indexOf=function(t,e,n){return m(this,t,e,n,!0)},c.prototype.lastIndexOf=function(t,e,n){return m(this,t,e,n,!1)},c.prototype.write=function(t,e,n,i){if(void 0===e)i="utf8",n=this.length,e=0;else if(void 0===n&&"string"==typeof e)i=e,n=this.length,e=0;else{if(!isFinite(e))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");e|=0,isFinite(n)?(n|=0,void 0===i&&(i="utf8")):(i=n,n=void 0)}var r=this.length-e;if((void 0===n||n>r)&&(n=r),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var o=!1;;)switch(i){case"hex":return y(this,t,e,n);case"utf8":case"utf-8":return b(this,t,e,n);case"ascii":return w(this,t,e,n);case"latin1":case"binary":return S(this,t,e,n);case"base64":return x(this,t,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return M(this,t,e,n);default:if(o)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),o=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}},c.prototype.slice=function(t,e){var n,i=this.length;if((t=~~t)<0?(t+=i)<0&&(t=0):t>i&&(t=i),(e=void 0===e?i:~~e)<0?(e+=i)<0&&(e=0):e>i&&(e=i),e<t&&(e=t),c.TYPED_ARRAY_SUPPORT)(n=this.subarray(t,e)).__proto__=c.prototype;else{var r=e-t;n=new c(r,void 0);for(var o=0;o<r;++o)n[o]=this[o+t]}return n},c.prototype.readUIntLE=function(t,e,n){t|=0,e|=0,n||P(t,e,this.length);for(var i=this[t],r=1,o=0;++o<e&&(r*=256);)i+=this[t+o]*r;return i},c.prototype.readUIntBE=function(t,e,n){t|=0,e|=0,n||P(t,e,this.length);for(var i=this[t+--e],r=1;e>0&&(r*=256);)i+=this[t+--e]*r;return i},c.prototype.readUInt8=function(t,e){return e||P(t,1,this.length),this[t]},c.prototype.readUInt16LE=function(t,e){return e||P(t,2,this.length),this[t]|this[t+1]<<8},c.prototype.readUInt16BE=function(t,e){return e||P(t,2,this.length),this[t]<<8|this[t+1]},c.prototype.readUInt32LE=function(t,e){return e||P(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},c.prototype.readUInt32BE=function(t,e){return e||P(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},c.prototype.readIntLE=function(t,e,n){t|=0,e|=0,n||P(t,e,this.length);for(var i=this[t],r=1,o=0;++o<e&&(r*=256);)i+=this[t+o]*r;return i>=(r*=128)&&(i-=Math.pow(2,8*e)),i},c.prototype.readIntBE=function(t,e,n){t|=0,e|=0,n||P(t,e,this.length);for(var i=e,r=1,o=this[t+--i];i>0&&(r*=256);)o+=this[t+--i]*r;return o>=(r*=128)&&(o-=Math.pow(2,8*e)),o},c.prototype.readInt8=function(t,e){return e||P(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},c.prototype.readInt16LE=function(t,e){e||P(t,2,this.length);var n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},c.prototype.readInt16BE=function(t,e){e||P(t,2,this.length);var n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},c.prototype.readInt32LE=function(t,e){return e||P(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},c.prototype.readInt32BE=function(t,e){return e||P(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},c.prototype.readFloatLE=function(t,e){return e||P(t,4,this.length),r.read(this,t,!0,23,4)},c.prototype.readFloatBE=function(t,e){return e||P(t,4,this.length),r.read(this,t,!1,23,4)},c.prototype.readDoubleLE=function(t,e){return e||P(t,8,this.length),r.read(this,t,!0,52,8)},c.prototype.readDoubleBE=function(t,e){return e||P(t,8,this.length),r.read(this,t,!1,52,8)},c.prototype.writeUIntLE=function(t,e,n,i){t=+t,e|=0,n|=0,i||I(this,t,e,n,Math.pow(2,8*n)-1,0);var r=1,o=0;for(this[e]=255&t;++o<n&&(r*=256);)this[e+o]=t/r&255;return e+n},c.prototype.writeUIntBE=function(t,e,n,i){t=+t,e|=0,n|=0,i||I(this,t,e,n,Math.pow(2,8*n)-1,0);var r=n-1,o=1;for(this[e+r]=255&t;--r>=0&&(o*=256);)this[e+r]=t/o&255;return e+n},c.prototype.writeUInt8=function(t,e,n){return t=+t,e|=0,n||I(this,t,e,1,255,0),c.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=255&t,e+1},c.prototype.writeUInt16LE=function(t,e,n){return t=+t,e|=0,n||I(this,t,e,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):k(this,t,e,!0),e+2},c.prototype.writeUInt16BE=function(t,e,n){return t=+t,e|=0,n||I(this,t,e,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):k(this,t,e,!1),e+2},c.prototype.writeUInt32LE=function(t,e,n){return t=+t,e|=0,n||I(this,t,e,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t):D(this,t,e,!0),e+4},c.prototype.writeUInt32BE=function(t,e,n){return t=+t,e|=0,n||I(this,t,e,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):D(this,t,e,!1),e+4},c.prototype.writeIntLE=function(t,e,n,i){if(t=+t,e|=0,!i){var r=Math.pow(2,8*n-1);I(this,t,e,n,r-1,-r)}var o=0,a=1,s=0;for(this[e]=255&t;++o<n&&(a*=256);)t<0&&0===s&&0!==this[e+o-1]&&(s=1),this[e+o]=(t/a>>0)-s&255;return e+n},c.prototype.writeIntBE=function(t,e,n,i){if(t=+t,e|=0,!i){var r=Math.pow(2,8*n-1);I(this,t,e,n,r-1,-r)}var o=n-1,a=1,s=0;for(this[e+o]=255&t;--o>=0&&(a*=256);)t<0&&0===s&&0!==this[e+o+1]&&(s=1),this[e+o]=(t/a>>0)-s&255;return e+n},c.prototype.writeInt8=function(t,e,n){return t=+t,e|=0,n||I(this,t,e,1,127,-128),c.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=255&t,e+1},c.prototype.writeInt16LE=function(t,e,n){return t=+t,e|=0,n||I(this,t,e,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):k(this,t,e,!0),e+2},c.prototype.writeInt16BE=function(t,e,n){return t=+t,e|=0,n||I(this,t,e,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):k(this,t,e,!1),e+2},c.prototype.writeInt32LE=function(t,e,n){return t=+t,e|=0,n||I(this,t,e,4,2147483647,-2147483648),c.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):D(this,t,e,!0),e+4},c.prototype.writeInt32BE=function(t,e,n){return t=+t,e|=0,n||I(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),c.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):D(this,t,e,!1),e+4},c.prototype.writeFloatLE=function(t,e,n){return L(this,t,e,!0,n)},c.prototype.writeFloatBE=function(t,e,n){return L(this,t,e,!1,n)},c.prototype.writeDoubleLE=function(t,e,n){return N(this,t,e,!0,n)},c.prototype.writeDoubleBE=function(t,e,n){return N(this,t,e,!1,n)},c.prototype.copy=function(t,e,n,i){if(n||(n=0),i||0===i||(i=this.length),e>=t.length&&(e=t.length),e||(e=0),i>0&&i<n&&(i=n),i===n)return 0;if(0===t.length||0===this.length)return 0;if(e<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("sourceStart out of bounds");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),t.length-e<i-n&&(i=t.length-e+n);var r,o=i-n;if(this===t&&n<e&&e<i)for(r=o-1;r>=0;--r)t[r+e]=this[r+n];else if(o<1e3||!c.TYPED_ARRAY_SUPPORT)for(r=0;r<o;++r)t[r+e]=this[r+n];else Uint8Array.prototype.set.call(t,this.subarray(n,n+o),e);return o},c.prototype.fill=function(t,e,n,i){if("string"==typeof t){if("string"==typeof e?(i=e,e=0,n=this.length):"string"==typeof n&&(i=n,n=this.length),1===t.length){var r=t.charCodeAt(0);r<256&&(t=r)}if(void 0!==i&&"string"!=typeof i)throw new TypeError("encoding must be a string");if("string"==typeof i&&!c.isEncoding(i))throw new TypeError("Unknown encoding: "+i)}else"number"==typeof t&&(t&=255);if(e<0||this.length<e||this.length<n)throw new RangeError("Out of range index");if(n<=e)return this;var o;if(e>>>=0,n=void 0===n?this.length:n>>>0,t||(t=0),"number"==typeof t)for(o=e;o<n;++o)this[o]=t;else{var a=c.isBuffer(t)?t:F(new c(t,i).toString()),s=a.length;for(o=0;o<n-e;++o)this[o+e]=a[o%s]}return this};var j=/[^+\/0-9A-Za-z-_]/g;function V(t){return t<16?"0"+t.toString(16):t.toString(16)}function F(t,e){var n;e=e||1/0;for(var i=t.length,r=null,o=[],a=0;a<i;++a){if((n=t.charCodeAt(a))>55295&&n<57344){if(!r){if(n>56319){(e-=3)>-1&&o.push(239,191,189);continue}if(a+1===i){(e-=3)>-1&&o.push(239,191,189);continue}r=n;continue}if(n<56320){(e-=3)>-1&&o.push(239,191,189),r=n;continue}n=65536+(r-55296<<10|n-56320)}else r&&(e-=3)>-1&&o.push(239,191,189);if(r=null,n<128){if((e-=1)<0)break;o.push(n)}else if(n<2048){if((e-=2)<0)break;o.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function U(t){return i.toByteArray(function(t){if((t=function(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}(t).replace(j,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function B(t,e,n,i){for(var r=0;r<i&&!(r+n>=e.length||r>=t.length);++r)e[r+n]=t[r];return r}}).call(this,n(213))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.START="start",t.END="end"}(e.RoutePoint||(e.RoutePoint={}))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(t){this.viewport=t}return t.prototype.dragStart=function(t){return!1},t.prototype.dragEnd=function(){return!0},t.prototype.applyKeyboardInput=function(){return!1},t}();e.CameraController=i},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var i=n(144),r=function(){function e(){}return e.prototype.promptOnUnsavedChanges=function(e){var n=this;return this.modalDeferred=new i.Deferred,this.hasChanges()?(t(e).modal("show"),t(e).one("hidden.bs.modal",function(){n.modalDeferred.reject()}),this.modalDeferred.promise):(this.modalDeferred.resolve(),this.modalDeferred.promise)},e}();e.SaveDiscardDialogService=r}).call(this,n(19))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),r=n(554),o=n(113);function a(t,e){return t.location.x===e.location.x&&t.location.y===e.location.y&&t.location.z!==e.location.z}e.DEFAULT_ICON_SIZE=.5,e.MAXIMUM_RENDERING_DISTANCE=13,e.INACTIVE_FLOOR_ICON_OPACITY=.5,e.createIcon=function(t,n,r){var o=r||e.DEFAULT_ICON_SIZE,a=new i.PlaneGeometry(o,o),s=new i.Mesh(a,t);return s.position.copy(n),s.position.z+=.1,s},e.orientIcons=function(t){for(var e=0;e<t.length-1;e++){var n=t[e],i=t[e+1].position.clone().sub(n.position);n.rotation.z=-Math.PI/2+Math.atan2(i.y,i.x)}},e.isProjection=a,e.sanitizeRoute=function(t){for(var e=0,n=t;e<n.length;e++){var i=n[e];void 0!==i.instruction&&void 0!==i.instruction.fromSiteModelEntityId&&void 0!==i.instruction.toSiteModelEntityId&&i.instruction.fromSiteModelEntityId===i.instruction.toSiteModelEntityId&&(i.instruction=void 0)}var s=t[0],c=t[1];a(s,c)&&(void 0===c.instruction&&(c.instruction=new r.InstructionEntity),c.instruction.type=o.InstructionType.SOURCE_PROJECTION);var l=t[t.length-2];a(l,t[t.length-1])&&(void 0===l.instruction&&(l.instruction=new r.InstructionEntity),l.instruction.type=o.InstructionType.DESTINATION_PROJECTION)},e.interpolatePoints=function(t,n,i){for(var r,o=[],a=0,s=0;s<t.length-1;s++){var c=t[s],l=t[s+1],u=l.clone().setZ(c.z),d=c.distanceTo(u),p=a>0?Math.abs(n-a):0;if(d<=p&&s<t.length-2)a+=d;else{for(var h=Math.floor((d-p)/n),f=[],g=s+2===t.length?1:0,m=0;m<=h+g;m++){var v=m*n+p;if(!(i&&d-v<e.DEFAULT_ICON_SIZE&&m<h+g)){var y=v/d,b=c.clone().lerp(u,y),w=c.clone().lerp(l,y);if(w.setX(b.x),w.setY(b.y),r){r.setZ(b.z);for(var S=r.distanceTo(b),x=0,M=0;S<n;){var E=y+(M=.1*++x*n)/d;b=c.clone().lerp(u,E),(w=c.clone().lerp(l,E)).setX(b.x),w.setY(b.y),S=r.distanceTo(b)}M>0&&(p+=M,h=Math.floor((d-p)/n))}f.push(w),m===h&&(a=b.distanceTo(u))}}0!==f.length?r=(o=o.concat(f))[o.length-1].clone():a+=d}}return o},e.isPositionInSight=function(t,n){return t.distanceTo(n)<e.MAXIMUM_RENDERING_DISTANCE},e.computePathLength=function(t){if(!t)return 0;for(var e=0,n=0;n<t.length-1;n++){var i=t[n],r=t[n+1];e+=i.distanceTo(r)}return e}},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o,a=n(4),s=n(212),c=n(20),l=n(157),u=n(52),d=n(80),p=(n(24),n(49),n(266),n(2)),h=n(7),f=n(6),g=n(0),m=n(257),v=n(67),y=(n(66),n(0)),b=n(24),w=n(49),S=n(266),x=n(66);!function(t){t.EAST_WEST_VIEW="SV1",t.NORTH_SOUTH_VIEW="SV2",t.PERSPECTIVE="DC",t.TOP_VIEW_LEFT="TV2",t.TOP_VIEW_RIGHT="TV1"}(o||(o={}));var M=function(t){function e(e,n,i){var r=t.call(this,e,n)||this;return r.factory=i,r.alignmentHelpers={},r.ORIGIN=new a.Vector3(0,0,0),r.X_NEG=new a.Vector3(-1,0,0),r.Y=new a.Vector3(0,1,0),r.Y_NEG=new a.Vector3(0,-1,0),r.Z=new a.Vector3(0,0,1),r.Z_NEG=new a.Vector3(0,0,-1),r.globalGroundInLocal=new a.Vector3,r.groundLevelHelperMaterial=new m.MeshLineMaterial({color:new a.Color("#686b6e"),transparent:!0,lineWidth:.005,opacity:.8,sizeAttenuation:1}),r.initialized=!1,r.factory.ModeService.modeChanged.connect(function(){(r.factory.ModeService.isDatasetAlignmentMode()||r.factory.ModeService.isSiteModelEditorMode())&&(r.initialized||r.initObjects())}),r}return r(e,t),e.prototype.onBeforeRenderViewport=function(t){var e=this;this.sceneGroup.parent&&(p.forEach(this.alignmentHelpers,function(n){e.setHelperSceneGroupVisibility(t,n)}),p.forEach(this.alignmentHelpers,function(t){var e=t.sceneGroup;e.userData.raycastable=e.userData.raycastable||e.visible}),this.setGroundHelperVisibility(t))},e.prototype.onBeforeRender=function(){p.forEach(this.alignmentHelpers,function(t){t.sceneGroup.userData.raycastable=!1}),this.factory.ModeService.isDatasetAlignmentMode()||this.factory.ModeService.isSiteModelEditorMode()?(this.sceneGroup.parent||(this.visible=!0),this.refreshOnChangeInViewportCameras()):this.sceneGroup.parent&&(this.visible=!1)},e.prototype.onKeyDown=function(t){var e=this;if(!this.factory.ModeService.isDatasetAlignmentMode()&&!this.factory.ModeService.isSiteModelEditorMode())return!1;switch(t.keyCode){case s.KeyEvent.DOM_VK_Z:case s.KeyEvent.DOM_VK_Y:this.factory.AlignmentHelperService.helperTV.visible=!this.isHelperVisible(this.alignmentHelpers[o.TOP_VIEW_RIGHT]);break;case s.KeyEvent.DOM_VK_X:this.factory.AlignmentHelperService.helperSV2.visible=!this.isHelperVisible(this.alignmentHelpers[o.NORTH_SOUTH_VIEW]);break;case s.KeyEvent.DOM_VK_C:this.factory.AlignmentHelperService.helperSV1.visible=!this.isHelperVisible(this.alignmentHelpers[o.EAST_WEST_VIEW]);break;case s.KeyEvent.DOM_VK_V:this.factory.AlignmentHelperService.helperDefault.visible=!this.isHelperVisible(this.alignmentHelpers[o.PERSPECTIVE]);break;case s.KeyEvent.DOM_VK_B:this.factory.AlignmentHelperService.helperDefault.visible=this.factory.AlignmentHelperService.helperSV1.visible=this.factory.AlignmentHelperService.helperSV2.visible=this.factory.AlignmentHelperService.helperTV.visible=!h.every(this.alignmentHelpers,function(t){return e.isHelperVisible(t)});break;default:return!1}return this.view.invalidateScene(),c.invalidateAngular(),!0},e.prototype.initObjects=function(){this.initHelperDict(),this.initHelper(o.EAST_WEST_VIEW,.5),this.initHelper(o.NORTH_SOUTH_VIEW,.6),this.initHelper(o.TOP_VIEW_RIGHT,.6),this.initHelper(o.TOP_VIEW_LEFT,.6),this.initGroundLevelHelper(),this.initialized=!0},e.prototype.initHelperDict=function(){this.alignmentHelpers[o.EAST_WEST_VIEW]={name:o.EAST_WEST_VIEW,viewportName:u.SplitViewportName.EAST_WEST_VIEW,displayingViewportName:u.SplitViewportName.TOP_VIEW,sceneGroup:new a.Object3D},this.alignmentHelpers[o.NORTH_SOUTH_VIEW]={name:o.NORTH_SOUTH_VIEW,viewportName:u.SplitViewportName.NORTH_SOUTH_VIEW,displayingViewportName:u.SplitViewportName.TOP_VIEW,sceneGroup:new a.Object3D},this.alignmentHelpers[o.PERSPECTIVE]={name:o.PERSPECTIVE,viewportName:void 0,displayingViewportName:u.SplitViewportName.TOP_VIEW,sceneGroup:new a.Object3D},this.alignmentHelpers[o.TOP_VIEW_RIGHT]={name:o.TOP_VIEW_RIGHT,viewportName:u.SplitViewportName.TOP_VIEW,displayingViewportName:u.SplitViewportName.EAST_WEST_VIEW,sceneGroup:new a.Object3D},this.alignmentHelpers[o.TOP_VIEW_LEFT]={name:o.TOP_VIEW_LEFT,viewportName:u.SplitViewportName.TOP_VIEW,displayingViewportName:u.SplitViewportName.NORTH_SOUTH_VIEW,sceneGroup:new a.Object3D}},e.prototype.initGroundLevelHelper=function(){this.northSouthGroundLevelHelper=this.createGroundLevelHelper(new a.Vector3(-1,0,0),new a.Vector3(1,0,0)),this.eastWestGroundLevelHelper=this.createGroundLevelHelper(new a.Vector3(0,-1,0),new a.Vector3(0,1,0)),this.sceneGroup.add(this.northSouthGroundLevelHelper),this.sceneGroup.add(this.eastWestGroundLevelHelper)},e.prototype.createGroundLevelHelper=function(t,e){var n=new a.Geometry;n.vertices=[t,e];var i=new m.MeshLine;return i.setGeometry(n),new a.Mesh(i.geometry,this.groundLevelHelperMaterial)},e.prototype.setGroundHelperVisibility=function(t){var e=this.factory.ModeService.isDatasetAlignmentMode()||this.factory.ModeService.isSiteModelEditorMode();e&&t.name===u.SplitViewportName.EAST_WEST_VIEW?this.setGroundHelperPositionAndSize(this.eastWestGroundLevelHelper,t):e&&t.name===u.SplitViewportName.NORTH_SOUTH_VIEW?this.setGroundHelperPositionAndSize(this.northSouthGroundLevelHelper,t):(this.northSouthGroundLevelHelper.visible=!1,this.eastWestGroundLevelHelper.visible=!1)},e.prototype.setGroundHelperPositionAndSize=function(t,e){t.position.set(e.camera.position.x,e.camera.position.y,this.factory.TransformService.globalToLocal.transform(this.globalGroundInLocal.set(0,0,0)).z),t.visible=!0,v.setMeshScreenSize(e,t,e.screenWidth)},e.prototype.initHelper=function(t,e){var n=this.alignmentHelpers[t],i=this.view.getViewportByName(n.viewportName),r=this.defineMaterial(i.info.color,e);n.nfPlane=this.getRectangularMeshForNFPlane(t,r,1,1),r=this.defineMaterial(i.info.color,e-.2),n.cameraMesh=this.getTriangularMeshForCamera(t,r),n.sceneGroup.add(n.nfPlane),n.sceneGroup.add(n.cameraMesh),this.sceneGroup.add(n.sceneGroup)},e.prototype.defineMaterial=function(t,e){return new a.MeshBasicMaterial({color:t,side:a.DoubleSide,opacity:e,transparent:!0,blending:a.AdditiveBlending,depthTest:!1,depthWrite:!1})},e.prototype.addCommonProperties=function(t){t.userData.is2D=!0,t.renderOrder=1/0},e.prototype.getRectangularMeshForNFPlane=function(t,e,n,i){var r=new a.PlaneGeometry(n,i),o=new a.Mesh(r,e);return this.addCommonProperties(o),o.name=t+" Plane",o},e.prototype.getTriangularMeshForCamera=function(t,e){var n=new a.Geometry,i=new a.Vector3(10,0,0),r=new a.Vector3(-10,0,0),o=new a.Vector3(0,10,0);n.vertices.push(i),n.vertices.push(r),n.vertices.push(o),n.faces.push(new a.Face3(0,2,1));var s=new a.Mesh(n,e);return this.addCommonProperties(s),s.name=t+" Triangle",s},e.prototype.refreshOnChangeInViewportCameras=function(){var t=this;p.forEach(this.alignmentHelpers,function(e){e.name!==o.PERSPECTIVE&&t.isHelperVisible(e)&&t.positionHelper(e)})},e.prototype.positionHelper=function(t){var e=this.view.getViewportByName(t.viewportName).camera,n=e.getWorldDirection(new a.Vector3),i=this.view.getViewportByName(t.displayingViewportName).camera;this.updateHelperMatrixWorlds(t,e),this.scaleHelperPlane(t,e),this.translateHelper(t,e,i,n),this.orientHelper(t,i,e),t.cameraMesh.onMouseOver||this.setMouseInteractionCallbacks(t)},e.prototype.updateHelperMatrixWorlds=function(t,e){e.updateMatrixWorld(!1),t.cameraMesh.updateMatrixWorld(!1),t.nfPlane.updateMatrixWorld(!1)},e.prototype.scaleHelperPlane=function(t,e){t.nfPlane.scale.copy(this.ORIGIN).addScaledVector(this.Y,e.far-e.near).addScaledVector(this.X_NEG,e.right-e.left).addScaledVector(this.Z,1)},e.prototype.translateHelper=function(t,e,n,i){t.cameraMesh.position.setFromMatrixPosition(this.getPosInFrontOfCamera(e.matrixWorld,n.matrixWorld,n.near,n.far)),t.nfPlane.position.copy(t.cameraMesh.position).addScaledVector(i,e.near+(e.far-e.near)/2)},e.prototype.getPosInFrontOfCamera=function(t,n,i,r){var o=(new a.Matrix4).getInverse(n),s=(new a.Matrix4).multiplyMatrices(o,t),c=(new a.Vector3).setFromMatrixPosition(s),l=(i+(r-i<e.INC_BIG_STEP+e.INC_SMALL_STEP?e.INC_SMALL_STEP:e.INC_BIG_STEP)+c.z)/-1,u=c.addScaledVector(this.Z,l);return s.setPosition(u),(new a.Matrix4).multiplyMatrices(n,s)},e.prototype.orientHelper=function(t,e,n){t.viewportName===u.SplitViewportName.TOP_VIEW?(t.cameraMesh.quaternion.copy(e.quaternion),t.nfPlane.quaternion.copy(e.quaternion)):(t.cameraMesh.quaternion.copy(n.quaternion).multiply((new a.Quaternion).setFromUnitVectors(this.Z_NEG,this.Y)),t.nfPlane.quaternion.copy(t.cameraMesh.quaternion))},e.prototype.setMouseInteractionCallbacks=function(t){var e=this,n=t.cameraMesh,i=t.nfPlane;n.onMouseOver=function(){return e.getOnMouseOver(t)},n.onMouseOut=function(){return e.getOnMouseOut(t)},n.onMouseWheel=function(n,i){return e.getOnMouseWheel(i,t)},n.onDragStart=function(t,n){return e.getOnDragStart(t,n)},n.onDrag=function(n,i){return e.getOnDrag(n,i,t)},i.onMouseOver=n.onMouseOver,i.onMouseOut=n.onMouseOut,i.onDragStart=n.onDragStart,i.onDrag=n.onDrag,i.onMouseWheel=n.onMouseWheel},e.prototype.getOnMouseOver=function(t){var n=this.view.getViewportByName(t.viewportName);return n.bgColor===e.BACKGROUND_COLOR_DEFAULT&&(n.bgColor=e.BACKGROUND_COLOR_HIGHLIGHT,this.view.invalidateScene(),!0)},e.prototype.getOnMouseOut=function(t){var n=this.view.getViewportByName(t.viewportName);n&&n.bgColor!==e.BACKGROUND_COLOR_DEFAULT&&(n.bgColor=e.BACKGROUND_COLOR_DEFAULT,this.view.invalidateScene())},e.prototype.getOnMouseWheel=function(t,e){var n=this.view.getViewportByName(e.viewportName).camera;if(n instanceof a.OrthographicCamera){var i=this.findFar(t,n),r=i-n.far;0!==r&&this.adjustCameraAndFarPlane(n,i,r)}return!0},e.prototype.findFar=function(t,e){t=-t;var n=e.far-e.near;return t=t>0?this.adjustDelta(n,t):this.adjustDelta(n-1,t),Math.max(.11,Math.min(400,e.far+t))},e.prototype.adjustDelta=function(t,n){return t<e.INC_BIG_STEP?n*=e.INC_SMALL_STEP:n*=e.INC_BIG_STEP,n},e.prototype.adjustCameraAndFarPlane=function(t,e,n){t.far=e;var i=new a.Vector3;t.getWorldDirection(i),t.position.addScaledVector(i,-n/2),this.view.invalidateScene()},e.prototype.getOnDragStart=function(t,e){return this.dragLastPos=e.unprojectScreenCoordinates(t.x,t.y,1),!0},e.prototype.getOnDrag=function(t,e,n){var i=this.view.getViewportByName(n.viewportName).camera,r=e.unprojectScreenCoordinates(t.x,t.y,1);this.view.inputHandler.isKeyPressed(s.KeyEvent.DOM_VK_SHIFT)?this.handleDragRotate(r,n.cameraMesh,i,n.name):this.handleDragTranslate(r,n.nfPlane,i),this.dragLastPos=r,this.view.invalidateScene()},e.prototype.handleDragTranslate=function(t,e,n){var i=(new a.Vector3).subVectors(t,this.dragLastPos);e.position.add(i),n.position.add(i)},e.prototype.handleDragRotate=function(t,e,n,i){var r=l.getAngleBetweenVectors(t,this.dragLastPos,e.position);i!==o.EAST_WEST_VIEW&&i!==o.NORTH_SOUTH_VIEW||n.rotateOnAxis(this.Y_NEG,r)},e.prototype.isHelperVisible=function(t){switch(t.name){case o.EAST_WEST_VIEW:return this.factory.AlignmentHelperService.helperSV1.visible;case o.NORTH_SOUTH_VIEW:return this.factory.AlignmentHelperService.helperSV2.visible;case o.PERSPECTIVE:return this.factory.AlignmentHelperService.helperDefault.visible;case o.TOP_VIEW_RIGHT:case o.TOP_VIEW_LEFT:return this.factory.AlignmentHelperService.helperTV.visible;default:return!1}},e.prototype.setHelperSceneGroupVisibility=function(t,e){var n=t.name===e.displayingViewportName,i=this.isHelperVisible(e);e.sceneGroup.visible=i&&n},e.BACKGROUND_COLOR_DEFAULT=1644825,e.BACKGROUND_COLOR_HIGHLIGHT=2500134,e.INC_BIG_STEP=2,e.INC_SMALL_STEP=.1,e}(d.SceneLayer);e.AlignmentHelpers=M;var E=function(t){function e(e,n,i,r,o,a){var s=t.call(this)||this;return s.IV=e,s.ModeService=n,s.PointCloudMenuService=i,s.ImageService=r,s.AlignmentHelperService=o,s.TransformService=a,s}return r(e,t),e.prototype.create=function(t,e){return new M(t,e,this)},e.ɵfac=function(t){return new(t||e)(y.ɵɵinject("IV"),y.ɵɵinject(b.ModeService),y.ɵɵinject("PointCloudMenuService"),y.ɵɵinject(w.ImageService),y.ɵɵinject(S.AlignmentHelperService),y.ɵɵinject(x.TransformService))},e.ɵprov=y.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(d.SceneLayerFactory);e.AlignmentHelpersFactory=E,y.ɵsetClassMetadata(E,[{type:g.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:g.Inject,args:["IV"]}]},{type:b.ModeService},{type:void 0,decorators:[{type:g.Inject,args:["PointCloudMenuService"]}]},{type:w.ImageService},{type:S.AlignmentHelperService},{type:x.TransformService}]},null),p.module("IVWebApp").service("AlignmentHelpersFactory",f.downgradeInjectable(E))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t[t.VIEW=0]="VIEW",t[t.SEARCH=1]="SEARCH",t[t.SITE_MODEL_DETAILS=2]="SITE_MODEL_DETAILS"}(e.PoiClickOrigin||(e.PoiClickOrigin={}))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(4),a=n(1217),s=n(1219),c=n(1220),l=n(1221),u=n(573),d=function(t){function e(e,n,i){var r=t.call(this)||this;return r.view=e,r.onDrag=n,r.onDragEnd=i,r.axisXPositive=new o.Vector3(1,0,0),r.axisYPositive=new o.Vector3(0,1,0),r.axisZPositive=new o.Vector3(0,0,1),r.addBox(),r.addBoxFrame(),r.addTranslationAxis(),r.addDraggableCircles(),r.addDraggableRotationHandles(),r.addRotationCircle(),r.moveVolumeToStartingPosition(),r}return r(e,t),e.prototype.moveVolumeToStartingPosition=function(){this.position.add(new o.Vector3(e.VOLUME_START_POSITION_X,e.VOLUME_START_POSITION_Y,e.VOLUME_START_POSITION_Z)),this.updateMatrixWorld(!0)},e.prototype.addBox=function(){var t=new o.BoxGeometry(1,1,1),n=new o.MeshBasicMaterial({color:e.COLOR_BLUE,transparent:!0,opacity:.25,depthTest:!0,depthWrite:!1}),i=new l.VolumeBox(this.view,t,n,this.onDrag,this.onDragEnd);i.name=e.BOX_NAME,i.scale.copy(new o.Vector3(e.VOLUME_START_SCALE_X,e.VOLUME_START_SCALE_Y,e.VOLUME_START_SCALE_Z)),this.add(i)},e.prototype.addBoxFrame=function(){var t=new o.BoxBufferGeometry(1,1,1),n=new o.EdgesGeometry(t),i=new o.LineBasicMaterial({color:e.COLOR_YELLOW}),r=new o.LineSegments(n,i);r.name=e.BOX_FRAME_NAME,r.scale.copy(this.getObjectByName(e.BOX_NAME).scale),this.add(r)},e.prototype.addTranslationAxis=function(){var t=new s.DraggableAxis(this.view,e.COLOR_RED,this.onDrag,this.onDragEnd),n=new s.DraggableAxis(this.view,e.COLOR_GREEN,this.onDrag,this.onDragEnd),i=new s.DraggableAxis(this.view,e.COLOR_BLUE,this.onDrag,this.onDragEnd);t.rotation.y=-Math.PI/2,n.rotation.x=Math.PI/2,t.name=e.AXIS_X,n.name=e.AXIS_Y,i.name=e.AXIS_Z,this.add(t),this.add(n),this.add(i)},e.prototype.addDraggableCircles=function(){var t=new a.DirectionalDragCircle(this.view,e.COLOR_RED,this.axisXPositive,this.onDrag,this.onDragEnd),n=this.axisXPositive.clone().multiplyScalar(-1),i=new a.DirectionalDragCircle(this.view,e.COLOR_RED,n,this.onDrag,this.onDragEnd),r=new a.DirectionalDragCircle(this.view,e.COLOR_GREEN,this.axisYPositive,this.onDrag,this.onDragEnd),s=this.axisYPositive.clone().multiplyScalar(-1),c=new a.DirectionalDragCircle(this.view,e.COLOR_GREEN,s,this.onDrag,this.onDragEnd),l=new a.DirectionalDragCircle(this.view,e.COLOR_BLUE,this.axisZPositive,this.onDrag,this.onDragEnd),u=this.axisZPositive.clone().multiplyScalar(-1),d=new a.DirectionalDragCircle(this.view,e.COLOR_BLUE,u,this.onDrag,this.onDragEnd),p=new a.DirectionalDragCircle(this.view,e.COLOR_YELLOW,new o.Vector3(-1,1,0),this.onDrag,this.onDragEnd,!1),h=new a.DirectionalDragCircle(this.view,e.COLOR_YELLOW,new o.Vector3(1,1,0),this.onDrag,this.onDragEnd,!1),f=new a.DirectionalDragCircle(this.view,e.COLOR_YELLOW,new o.Vector3(-1,-1,0),this.onDrag,this.onDragEnd,!1),g=new a.DirectionalDragCircle(this.view,e.COLOR_YELLOW,new o.Vector3(1,-1,0),this.onDrag,this.onDragEnd,!1);t.name=e.CIRCLE_X_POSITIVE,i.name=e.CIRCLE_X_NEGATIVE,r.name=e.CIRCLE_Y_POSITIVE,c.name=e.CIRCLE_Y_NEGATIVE,l.name=e.CIRCLE_Z_POSITIVE,d.name=e.CIRCLE_Z_NEGATIVE,p.name=e.NEGATIVE_X_POSITIVE_Y_CORNER,h.name=e.POSITIVE_X_POSITIVE_Y_CORNER,f.name=e.NEGATIVE_X_NEGATIVE_Y_CORNER,g.name=e.POSITIVE_X_NEGATIVE_Y_CORNER,this.add(t),this.add(i),this.add(r),this.add(c),this.add(l),this.add(d),this.add(p),this.add(h),this.add(f),this.add(g)},e.prototype.addDraggableRotationHandles=function(){var t=new c.DraggableRotationArc(this.view,this.axisYPositive,e.COLOR_GREEN,this.onDrag,this.onDragEnd,!1);t.lookAt(this.axisYPositive),t.rotation.z=-Math.PI/2;var n=new c.DraggableRotationArc(this.view,this.axisXPositive,e.COLOR_RED,this.onDrag,this.onDragEnd,!1);n.lookAt(this.axisXPositive),n.rotation.y=-Math.PI/2;var i=new c.DraggableRotationArc(this.view,this.axisZPositive,e.COLOR_BLUE,this.onDrag,this.onDragEnd,!1);i.lookAt(this.axisZPositive),t.name=e.ROTATION_ARC_X,n.name=e.ROTATION_ARC_Y,i.name=e.ROTATION_ARC_Z,this.add(t),this.add(n),this.add(i)},e.prototype.addRotationCircle=function(){var t=new u.RotationCircle(this.view,this.axisZPositive,e.COLOR_YELLOW,this.onDrag,this.onDragEnd);t.name=e.ROTATION_CIRCLE,this.add(t)},e.AXIS_X="axis_x",e.AXIS_Y="axis_y",e.AXIS_Z="axis_z",e.ROTATION_ARC_X="rotation_arc_x",e.ROTATION_ARC_Y="rotation_arc_y",e.ROTATION_ARC_Z="rotation_arc_z",e.CIRCLE_X_POSITIVE="circle_x_positive",e.CIRCLE_X_NEGATIVE="circle_x_negative",e.CIRCLE_Y_POSITIVE="circle_y_positive",e.CIRCLE_Y_NEGATIVE="circle_y_negative",e.CIRCLE_Z_POSITIVE="circle_z_positive",e.CIRCLE_Z_NEGATIVE="circle_z_negative",e.NEGATIVE_X_POSITIVE_Y_CORNER="negative_x_positive_y_corner",e.POSITIVE_X_POSITIVE_Y_CORNER="positive_x_positive_y_corner",e.NEGATIVE_X_NEGATIVE_Y_CORNER="negative_x_negative_y_corner",e.POSITIVE_X_NEGATIVE_Y_CORNER="positive_x_negative_y_corner",e.ROTATION_CIRCLE="rotation_circle",e.BOX_FRAME_NAME="box_frame",e.BOX_NAME="box",e.VOLUME_START_SCALE_X=10,e.VOLUME_START_SCALE_Y=10,e.VOLUME_START_SCALE_Z=3,e.COLOR_YELLOW=new o.Color(15899953),e.COLOR_RED=new o.Color(13632027),e.COLOR_BLUE=new o.Color(3381704),e.COLOR_GREEN=new o.Color(8832322),e.VOLUME_START_POSITION_X=0,e.VOLUME_START_POSITION_Y=0,e.VOLUME_START_POSITION_Z=1,e}(o.Object3D);e.ClipVolume=d},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(184),a=n(4),s=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.positionOnAxis=new a.Vector3,e}return r(e,t),e.prototype.findAxisLine=function(t){var e=(new a.Vector3).applyMatrix4(this.matrixWorld),n=t.applyMatrix4(this.matrixWorld);return new a.Line3(e,n)},e.prototype.findPlaneOnTheAxis=function(t,e){var n=this.axisLine.closestPointToPoint(t,!1,new a.Vector3);return this.distanceToCameraFromAxisLine=n.sub(t),(new a.Plane).setFromNormalAndCoplanarPoint(this.distanceToCameraFromAxisLine,e.start)},e.prototype.findPositionOnAxis=function(t,n){var i=e.getMousePositionOnPlane(t,this.planeOnTheAxis,n);return this.axisLine.closestPointToPoint(i,!1,this.positionOnAxis)},e.getMousePositionOnPlane=function(t,e,n){var i=n.normalizeCoordinates(t.x,t.y,0),r=new a.Raycaster;r.setFromCamera(i,n.camera);var o=new a.Vector3;return r.ray.intersectPlane(e,o)},e.transformDirection=function(t,e){var n=new a.Vector4(t.x,t.y,t.z,0).applyMatrix4(e);return t.clone().set(n.x,n.y,n.z)},e}(o.HighlightableObject3D);e.DraggableObject3D=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0}),n(9);var o=n(223),a=n(2),s=(n(14),n(383)),c=n(6),l=n(0),u=n(0),d=n(9),p=n(14),h=function(t){function e(e,n){var i=t.call(this,o.VectorEntityEntity,e,n)||this;return i.path="vector_entities",i}return r(e,t),e.ɵfac=function(t){return new(t||e)(u.ɵɵinject(d.RestService),u.ɵɵinject(p.GeoTransformationService))},e.ɵprov=u.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(s.ReferenceSystemAwareRestRepository);e.VectorEntityRepository=h,u.ɵsetClassMetadata(h,[{type:l.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:d.RestService},{type:p.GeoTransformationService}]},null),a.module("IVWebApp").service("VectorEntityRepository",c.downgradeInjectable(h))},function(t,e,n){t.exports=n.p+"map_location_marker.png"},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(520),r=n(20),o=function(){function t(t){var e=this;this.modalElement=t,this.modalContentShown=!1,t.on("show.bs.modal",function(){return e.modalContentShown=!0}),t.on("hidden.bs.modal",function(){return e.modalContentShown=!1})}return t.prototype.showModal=function(){var t=this;i.stylesLoaded()?r.invalidateAngular(this.modalContentShown?void 0:function(){return t.modalElement.modal("show")}):this.showModalTimer=window.setTimeout(function(){return t.showModal()},50)},t.prototype.hideModal=function(){var t=this;window.clearTimeout(this.showModalTimer),r.invalidateAngular(function(){return t.modalElement.modal("hide")})},t}();e.AbstractModalController=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(){}return t.prototype.fillFromData=function(t){this.jobId=t.job_id,this.name=t.name,this.status=t.status,this.title=t.title,this.busy=t.busy,this.startTime=t.start_time,this.success=t.success,this.lastOutput=t.last_output,this.errors=t.errors,this.outputFile=t.output_file,t.output&&(this.output=t.output)},t.prototype.processingToolFailed=function(){return this.status>0},t.prototype.processingToolOutOfMemory=function(){return this.status===t.FATAL_ERROR_OFFSET+t.SIGABRT||this.status===t.FATAL_ERROR_OFFSET+t.SIGKILL},t.SIGABRT=6,t.SIGKILL=9,t.FATAL_ERROR_OFFSET=128,t}();e.Job=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(9),n(432)),o=n(1588),a=n(1589);n(204),n(188),n(188);var s=n(6),c=n(0),l=n(0),u=n(9),d=n(204),p=n(188),h=function(){function t(t,e,n){this.RestService=t,this.UploadService=e,this.JobService=n,this.basePath="data_management"}return t.prototype.getBundlesOnDisk=function(){return this.RestService.getApi(this.basePath+"/bundles",{}).then(function(t){return t.map(function(t){return new a.BundleOnDisk(t)})})},t.prototype.getDatasetsOnDisk=function(){return this.RestService.getApi(this.basePath+"/datasets",{}).then(function(t){return t.map(function(t){return new a.DatasetOnDisk(t)})})},t.prototype.importBundle=function(t){return this.RestService.postApi(this.basePath+"/bundles/import/job",(new r.BundleManagementRequest).setBundleFileName(t).toData())},t.prototype.unloadBundle=function(t){return this.RestService.postApi(this.basePath+"/bundles/unload",(new r.BundleManagementRequest).setBundleSerial(t).toData())},t.prototype.convertBundle=function(t){return this.RestService.postApi(this.basePath+"/bundles/convert",(new r.BundleManagementRequest).setBundleFileName(t).toData())},t.prototype.importDataset=function(t,e,n,i){return this.RestService.postApi(this.basePath+"/datasets/import",new o.DatasetManagementImportRequest(t,e,n,i).toData())},t.prototype.unloadDataset=function(t){return this.RestService.postApi(this.basePath+"/datasets/unload",new o.DatasetManagementRequest(t).toData())},t.prototype.downloadMaps=function(t){var e=this.basePath+"/bundle/"+t.id.toString()+"/maps/download";this.RestService.directDownload(e,{})},t.prototype.importMaps=function(t){return this.RestService.postApi(this.basePath+"/bundles/maps/import",(new r.BundleManagementRequest).setBundleFileName(t).toData())},t.prototype.unloadMaps=function(t){return this.RestService.postApi(this.basePath+"/bundles/maps/unload",(new r.BundleManagementRequest).setBundleSerial(t).toData())},t.prototype.importNavgraph=function(t){return this.RestService.postApi(this.basePath+"/bundles/navgraph/import/job",(new r.BundleManagementRequest).setBundleFileName(t).toData())},t.prototype.unloadNavgraph=function(t){return this.RestService.postApi(this.basePath+"/bundles/navgraph/unload",(new r.BundleManagementRequest).setBundleSerial(t).toData())},t.prototype.importWifi=function(t){return this.RestService.postApi(this.basePath+"/bundles/wifi/import/job",(new r.BundleManagementRequest).setBundleFileName(t).toData())},t.prototype.unloadWifi=function(t){return this.RestService.postApi(this.basePath+"/bundles/wifi/unload",(new r.BundleManagementRequest).setBundleSerial(t).toData())},t.prototype.removeDatasetFromDisk=function(t){return this.RestService.deleteApi(this.basePath+"/datasets/files/"+t)},t.prototype.removeBundleFromDisk=function(t){return this.RestService.postApi(this.basePath+"/bundles/delete_files",(new r.BundleManagementRequest).setBundleFileName(t.file).setBundleSerial(t.serial).toData())},t.prototype.deleteVisualIndex=function(t){var e=this.basePath+"/bundle/"+t.id.toString()+"/visual_index";return this.RestService.deleteApi(e)},t.ɵfac=function(e){return new(e||t)(l.ɵɵinject(u.RestService),l.ɵɵinject(d.UploadService),l.ɵɵinject(p.JobService))},t.ɵprov=l.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.DataManagementService=h,l.ɵsetClassMetadata(h,[{type:c.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:u.RestService},{type:d.UploadService},{type:p.JobService}]},null),i.module("IVWebApp").service("DataManagementService",s.downgradeInjectable(h))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(9),n(432)),o=n(1590),a=n(6),s=n(0),c=n(0),l=n(9),u=function(){function t(t){this.RestService=t,this.basePath="data_generation"}return t.prototype.createMapsAndNavgraph=function(t,e){var n=new o.MapAndNavgraphGenerationRequest(t);return n.setColoredMap(e),this.RestService.postApi(this.basePath+"/create",n.toData())},t.prototype.createFloorMaps=function(t,e){var n=new o.MapAndNavgraphGenerationRequest(t);return n.setColoredMap(e),this.RestService.postApi(this.basePath+"/maps/create_floor_maps",n.toData())},t.prototype.createMaps=function(t,e){var n=new o.MapAndNavgraphGenerationRequest(t);return n.setColoredMap(e),this.RestService.postApi(this.basePath+"/maps/create",n.toData())},t.prototype.createNavgraph=function(t){return this.RestService.postApi(this.basePath+"/navgraph/create",(new r.BundleManagementRequest).setBundleFileName(t).toData())},t.ɵfac=function(e){return new(e||t)(c.ɵɵinject(l.RestService))},t.ɵprov=c.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.DataGenerationService=u,c.ɵsetClassMetadata(u,[{type:s.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:l.RestService}]},null),i.module("IVWebApp").service("DataGenerationService",a.downgradeInjectable(u))},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(618);var a=n(20),s=n(327),c=n(21),l=function(){function t(t,e,n,i,r){this.JobListService=t,this.FlowService=e,this.StatusCheckService=n,this.MessageReportingService=i,this.gettextCatalog=r,this.jobs=[],this.jobs=t.jobs,this.uniqueTemporaryName=this.createUniqueTemporaryName(),this.uploader=this.FlowService.getUploader(this.uniqueTemporaryName,{target:""})}return t.prototype.createUniqueTemporaryName=function(){var e=t.uniqueId.toString();return t.uniqueId++,e},t.prototype.retryUpload=function(t){if(t.retryEnabled)return this.areRetryConditionsMet(t)?void this.resumeUpload(t):(this.updateConditions(t),void this.retryInOneSecond(t))},t.prototype.updateConditions=function(t){t.retryOnlineState=navigator.onLine,t.retryCountdown--},t.prototype.retryInOneSecond=function(t){var e=this;setTimeout(function(){a.invalidateAngular(),e.retryUpload(t)},1e3)},t.prototype.resumeUpload=function(e){e.retryEnabled=!1,e.retryCountdown=t.RETRY_PERIOD,e.retry()},t.prototype.enableRetry=function(e){e.percent=0,e.retryEnabled=!0,e.retryCountdown=t.RETRY_PERIOD,e.retryOnlineState=navigator.onLine,this.retryUpload(e)},t.prototype.showError=function(t,e){t.percent=100;var n=JSON.parse(e);t.errorMessage=n.msg,t.retryEnabled=!1},t.prototype.areRetryConditionsMet=function(t){return t.retryCountdown<=0||navigator.onLine&&navigator.onLine!==t.retryOnlineState},t.prototype.stopRetryingMechanism=function(e){e.retryEnabled=!1,e.retryCountdown=t.RETRY_PERIOD},t.prototype.fileProgress=function(t){t.percent=100*t.progress(!1)},t.prototype.filesSubmitted=function(t){return i(this,void 0,void 0,function(){var e,n,i,o,a,s,c,l,u;return r(this,function(r){switch(r.label){case 0:return[4,this.StatusCheckService.fetchServerHealth()];case 1:for(e=r.sent(),n=0,i=0,o=t;i<o.length;i++)u=o[i],n+=u.size;if(e.components.diskSpace.details.free<n){for(a=0,s=t;a<s.length;a++)(u=s[a]).cancel();return this.MessageReportingService.showMessage(this.gettextCatalog.getString("Insufficient Disk Space",void 0,"title"),this.gettextCatalog.getString("The file you are trying to upload is larger than the amount of disk space available.")),[2]}for(this.updateFlowObject(),c=0,l=t;c<l.length;c++)(u=l[c]).percent=0;return this.onFilePicked?(this.pauseUploadAndCallHooks(t),[2]):(this.uploader.upload(),[2])}})})},t.prototype.pauseUploadAndCallHooks=function(t){for(var e=this,n=0,i=t;n<i.length;n++)i[n].pause();this.onFilePicked({files:t}).then(function(){for(var n=0,i=t;n<i.length;n++)i[n].resume();e.uploader.upload()}).catch(function(){for(var e=0,n=t;e<n.length;e++)n[e].cancel()})},t.prototype.updateFlowObject=function(){this.uploader.opts.target=this.targetUrl,this.FlowService.setUploader(this.targetUrl,this.uploader),this.FlowService.deleteUploader(this.uniqueTemporaryName)},t.prototype.uploadError=function(t,e){this.onUploadError&&this.onUploadError({file:t,response:e}),e?this.showError(t,e):t.retryEnabled||this.enableRetry(t)},t.prototype.uploadSuccess=function(t,e){if(this.onUploadSuccess&&this.onUploadSuccess({file:t,response:e}),e){var n=o.fromJson(e).job_id;t.jobId=n,this.jobs[n]=new s.Job,this.jobs[n].busy=!0}c.TrackingService.trackFileUploaded(t),this.stopRetryingMechanism(t)},t.RETRY_PERIOD=60,t.uniqueId=0,t}();e.AbstractUploadController=l},function(t,e,n){"use strict";n.d(e,"b",function(){return l}),n.d(e,"a",function(){return u});var i=n(1),r=1,o=Promise.resolve(),a={};function s(t){return t in a&&(delete a[t],!0)}var c=function(t){function e(e,n){var i=t.call(this,e,n)||this;return i.scheduler=e,i.work=n,i}return i.c(e,t),e.prototype.requestAsyncId=function(e,n,i){return void 0===i&&(i=0),null!==i&&i>0?t.prototype.requestAsyncId.call(this,e,n,i):(e.actions.push(this),e.scheduled||(e.scheduled=function(t){var e=r++;return a[e]=!0,o.then(function(){return s(e)&&t()}),e}(e.flush.bind(e,null))))},e.prototype.recycleAsyncId=function(e,n,i){if(void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,i);0===e.actions.length&&(function(t){s(t)}(n),e.scheduled=void 0)},e}(n(151).a),l=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.c(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,i=-1,r=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++i<r&&(t=n.shift()));if(this.active=!1,e){for(;++i<r&&(t=n.shift());)t.unsubscribe();throw e}},e}(n(150).a))(c),u=l},function(t,e,n){"use strict";n.d(e,"a",function(){return l}),n.d(e,"b",function(){return u});var i=n(1),r=n(32),o=n(12),a=n(26),s=n(33),c=n(304),l=function(t){function e(e,n){var i=t.call(this)||this;return i.source=e,i.subjectFactory=n,i._refCount=0,i._isComplete=!1,i}return i.c(e,t),e.prototype._subscribe=function(t){return this.getSubject().subscribe(t)},e.prototype.getSubject=function(){var t=this._subject;return t&&!t.isStopped||(this._subject=this.subjectFactory()),this._subject},e.prototype.connect=function(){var t=this._connection;return t||(this._isComplete=!1,(t=this._connection=new s.a).add(this.source.subscribe(new d(this.getSubject(),this))),t.closed&&(this._connection=null,t=s.a.EMPTY)),t},e.prototype.refCount=function(){return Object(c.a)()(this)},e}(o.a),u=function(){var t=l.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:t._subscribe},_isComplete:{value:t._isComplete,writable:!0},getSubject:{value:t.getSubject},connect:{value:t.connect},refCount:{value:t.refCount}}}(),d=function(t){function e(e,n){var i=t.call(this,e)||this;return i.connectable=n,i}return i.c(e,t),e.prototype._error=function(e){this._unsubscribe(),t.prototype._error.call(this,e)},e.prototype._complete=function(){this.connectable._isComplete=!0,this._unsubscribe(),t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){var t=this.connectable;if(t){this.connectable=null;var e=t._connection;t._refCount=0,t._subject=null,t._connection=null,e&&e.unsubscribe()}},e}(r.b);a.a},function(t,e,n){"use strict";n.d(e,"a",function(){return s});var i=n(12),r=n(119),o=n(275),a=n(77);function s(t,e,n){void 0===t&&(t=0);var s=-1;return Object(o.a)(e)?s=Number(e)<1?1:Number(e):Object(a.a)(e)&&(n=e),Object(a.a)(n)||(n=r.a),new i.a(function(e){var i=Object(o.a)(t)?t:+t-n.now();return n.schedule(c,i,{index:0,period:s,subscriber:e})})}function c(t){var e=t.index,n=t.period,i=t.subscriber;if(i.next(e),!i.closed){if(-1===n)return i.complete();t.index=e+1,this.schedule(t,n)}}},function(t,e,n){"use strict";n.d(e,"a",function(){return u});var i=n(12),r=n(33),o=n(126),a=n(226),s=n(116),c=n(340),l=n(339);function u(t,e){if(null!=t){if(function(t){return t&&"function"==typeof t[o.a]}(t))return function(t,e){return new i.a(function(n){var i=new r.a;return i.add(e.schedule(function(){var r=t[o.a]();i.add(r.subscribe({next:function(t){i.add(e.schedule(function(){return n.next(t)}))},error:function(t){i.add(e.schedule(function(){return n.error(t)}))},complete:function(){i.add(e.schedule(function(){return n.complete()}))}}))})),i})}(t,e);if(Object(c.a)(t))return function(t,e){return new i.a(function(n){var i=new r.a;return i.add(e.schedule(function(){return t.then(function(t){i.add(e.schedule(function(){n.next(t),i.add(e.schedule(function(){return n.complete()}))}))},function(t){i.add(e.schedule(function(){return n.error(t)}))})})),i})}(t,e);if(Object(l.a)(t))return Object(a.a)(t,e);if(function(t){return t&&"function"==typeof t[s.a]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new i.a(function(n){var i,o=new r.a;return o.add(function(){i&&"function"==typeof i.return&&i.return()}),o.add(e.schedule(function(){i=t[s.a](),o.add(e.schedule(function(){if(!n.closed){var t,e;try{var r=i.next();t=r.value,e=r.done}catch(t){return void n.error(t)}e?n.complete():(n.next(t),this.schedule())}}))})),o})}(t,e)}throw new TypeError((null!==t&&typeof t||t)+" is not observable")}},function(t,e,n){"use strict";n.d(e,"b",function(){return o}),n.d(e,"a",function(){return a});var i=n(1),r=function(t){function e(e,n){var i=t.call(this,e,n)||this;return i.scheduler=e,i.work=n,i}return i.c(e,t),e.prototype.requestAsyncId=function(e,n,i){return void 0===i&&(i=0),null!==i&&i>0?t.prototype.requestAsyncId.call(this,e,n,i):(e.actions.push(this),e.scheduled||(e.scheduled=requestAnimationFrame(function(){return e.flush(null)})))},e.prototype.recycleAsyncId=function(e,n,i){if(void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,i);0===e.actions.length&&(cancelAnimationFrame(n),e.scheduled=void 0)},e}(n(151).a),o=new(function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.c(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,i=-1,r=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++i<r&&(t=n.shift()));if(this.active=!1,e){for(;++i<r&&(t=n.shift());)t.unsubscribe();throw e}},e}(n(150).a))(r),a=o},function(t,e,n){"use strict";n.d(e,"a",function(){return r});var i=n(1),r=function(t){function e(e,n){var i=t.call(this)||this;return i.subject=e,i.subscriber=n,i.closed=!1,i}return i.c(e,t),e.prototype.unsubscribe=function(){if(!this.closed){this.closed=!0;var t=this.subject,e=t.observers;if(this.subject=null,e&&0!==e.length&&!t.isStopped&&!t.closed){var n=e.indexOf(this.subscriber);-1!==n&&e.splice(n,1)}}},e}(n(33).a)},function(t,e,n){"use strict";n.d(e,"a",function(){return i});var i=function(t){return function(e){for(var n=0,i=t.length;n<i&&!e.closed;n++)e.next(t[n]);e.complete()}}},function(t,e,n){"use strict";n.d(e,"a",function(){return r});var i=n(12);function r(t){return!!t&&(t instanceof i.a||"function"==typeof t.lift&&"function"==typeof t.subscribe)}},function(t,e,n){"use strict";n.d(e,"a",function(){return i});var i=function(t){return t&&"number"==typeof t.length&&"function"!=typeof t}},function(t,e,n){"use strict";function i(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}n.d(e,"a",function(){return i})},function(t,e,n){"use strict";n.d(e,"a",function(){return a});var i=n(1),r=n(79),o=n(78);function a(t){return function(e){return e.lift(new s(t))}}var s=function(){function t(t){this.notifier=t}return t.prototype.call=function(t,e){var n=new c(t),i=Object(o.a)(n,this.notifier);return i&&!n.seenValue?(n.add(i),e.subscribe(n)):n},t}(),c=function(t){function e(e){var n=t.call(this,e)||this;return n.seenValue=!1,n}return i.c(e,t),e.prototype.notifyNext=function(t,e,n,i,r){this.seenValue=!0,this.complete()},e.prototype.notifyComplete=function(){},e}(r.a)},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t[t.FIXED=0]="FIXED",t[t.ATTENUATED=1]="ATTENUATED",t[t.ADAPTIVE=2]="ADAPTIVE"}(e.PointSizeType||(e.PointSizeType={}))},function(t,e,n){"use strict";n.d(e,"a",function(){return u}),n.d(e,"b",function(){return c}),n.d(e,"c",function(){return d}),n.d(e,"d",function(){return p}),n.d(e,"e",function(){return l});var i=n(1),r=n(338),o=n(93),a=n(32),s=n(0),c=function(){};function l(t){return t&&"function"==typeof t.connect}
  2034. /**
  2035. * @license
  2036. * Copyright Google LLC All Rights Reserved.
  2037. *
  2038. * Use of this source code is governed by an MIT-style license that can be
  2039. * found in the LICENSE file at https://angular.io/license
  2040. */var u=function(t){function e(e){var n=t.call(this)||this;return n._data=e,n}return Object(i.c)(e,t),e.prototype.connect=function(){return Object(r.a)(this._data)?this._data:Object(o.a)(this._data)},e.prototype.disconnect=function(){},e}(c),d=function(){function t(t,e,n){var i=this;void 0===t&&(t=!1),void 0===n&&(n=!0),this._multiple=t,this._emitChanges=n,this._selection=new Set,this._deselectedToEmit=[],this._selectedToEmit=[],this.changed=new a.a,e&&e.length&&(t?e.forEach(function(t){return i._markSelected(t)}):this._markSelected(e[0]),this._selectedToEmit.length=0)}return Object.defineProperty(t.prototype,"selected",{get:function(){return this._selected||(this._selected=Array.from(this._selection.values())),this._selected},enumerable:!0,configurable:!0}),t.prototype.select=function(){for(var t=this,e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];this._verifyValueAssignment(e),e.forEach(function(e){return t._markSelected(e)}),this._emitChangeEvent()},t.prototype.deselect=function(){for(var t=this,e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];this._verifyValueAssignment(e),e.forEach(function(e){return t._unmarkSelected(e)}),this._emitChangeEvent()},t.prototype.toggle=function(t){this.isSelected(t)?this.deselect(t):this.select(t)},t.prototype.clear=function(){this._unmarkAll(),this._emitChangeEvent()},t.prototype.isSelected=function(t){return this._selection.has(t)},t.prototype.isEmpty=function(){return 0===this._selection.size},t.prototype.hasValue=function(){return!this.isEmpty()},t.prototype.sort=function(t){this._multiple&&this.selected&&this._selected.sort(t)},t.prototype.isMultipleSelection=function(){return this._multiple},t.prototype._emitChangeEvent=function(){this._selected=null,(this._selectedToEmit.length||this._deselectedToEmit.length)&&(this.changed.next({source:this,added:this._selectedToEmit,removed:this._deselectedToEmit}),this._deselectedToEmit=[],this._selectedToEmit=[])},t.prototype._markSelected=function(t){this.isSelected(t)||(this._multiple||this._unmarkAll(),this._selection.add(t),this._emitChanges&&this._selectedToEmit.push(t))},t.prototype._unmarkSelected=function(t){this.isSelected(t)&&(this._selection.delete(t),this._emitChanges&&this._deselectedToEmit.push(t))},t.prototype._unmarkAll=function(){var t=this;this.isEmpty()||this._selection.forEach(function(e){return t._unmarkSelected(e)})},t.prototype._verifyValueAssignment=function(t){if(t.length>1&&!this._multiple)throw Error("Cannot pass multiple values into SelectionModel with single-value mode.")},t}(),p=function(){function t(){this._listeners=[]}return t.prototype.notify=function(t,e){var n,r;try{for(var o=Object(i.j)(this._listeners),a=o.next();!a.done;a=o.next())(0,a.value)(t,e)}catch(t){n={error:t}}finally{try{a&&!a.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}},t.prototype.listen=function(t){var e=this;return this._listeners.push(t),function(){e._listeners=e._listeners.filter(function(e){return t!==e})}},t.prototype.ngOnDestroy=function(){this._listeners=[]},t.ɵprov=Object(s["ɵɵdefineInjectable"])({factory:function(){return new t},token:t,providedIn:"root"}),t.ɵfac=function(e){return new(e||t)},t}();
  2041. /**
  2042. * @license
  2043. * Copyright Google LLC All Rights Reserved.
  2044. *
  2045. * Use of this source code is governed by an MIT-style license that can be
  2046. * found in the LICENSE file at https://angular.io/license
  2047. */},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),r=function(){function t(){}return t.validateColorString=function(e){if(e){if(this.COLOR_DEFS.hasOwnProperty(e))return this.COLOR_DEFS[e].rgb_string;if(t.RGBA_COLOR_PATTERN.test(e))return this.rgbToHex(e);if(t.HEX_COLOR_PATTERN.test(e))return e}return"#ffffff"},t.getColor=function(t){return new i.Color(this.validateColorString(t))},t.rgbToHex=function(e){var n=t.RGBA_COLOR_PATTERN.exec(e);return n&&4===n.length?"#"+("0"+parseInt(n[1],10).toString(16)).slice(-2)+("0"+parseInt(n[2],10).toString(16)).slice(-2)+("0"+parseInt(n[3],10).toString(16)).slice(-2):""},t.HEX_COLOR_PATTERN=/^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/,t.RGBA_COLOR_PATTERN=/^rgba?[\s+]?\([\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?,[\s+]?(\d+)[\s+]?/i,t.COLOR_DEFS={red:{use_rgb:!0,rgb_color:new i.Color(.84,0,0),rgb_string:"rgb(213,0,0)"},pink:{use_rgb:!0,rgb_color:new i.Color(.77,.07,.38),rgb_string:"rgb(197,17,98)"},purple:{use_rgb:!0,rgb_color:new i.Color(.67,0,1),rgb_string:"rgb(170,0,255)"},"deep purple":{use_rgb:!0,rgb_color:new i.Color(.38,0,.92),rgb_string:"rgb(98,0,234)"},indigo:{use_rgb:!0,rgb_color:new i.Color(.19,.31,1),rgb_string:"rgb(48,79,254)"},blue:{use_rgb:!0,rgb_color:new i.Color(.16,.38,1),rgb_string:"rgb(41,98,255)"},"light blue":{use_rgb:!0,rgb_color:new i.Color(0,.57,.92),rgb_string:"rgb(0,145,234)"},cyan:{use_rgb:!0,rgb_color:new i.Color(0,.72,.83),rgb_string:"rgb(0,184,212)"},teal:{use_rgb:!0,rgb_color:new i.Color(0,.75,.65),rgb_string:"rgb(0,191,165)"},green:{use_rgb:!0,rgb_color:new i.Color(0,.78,.33),rgb_string:"rgb(0,200,83)"},"light green":{use_rgb:!0,rgb_color:new i.Color(.39,.87,.09),rgb_string:"rgb(100,221,23)"},lime:{use_rgb:!0,rgb_color:new i.Color(.68,.92,0),rgb_string:"rgb(174,234,0)"},yellow:{use_rgb:!0,rgb_color:new i.Color(1,.84,0),rgb_string:"rgb(255,214,0)"},amber:{use_rgb:!0,rgb_color:new i.Color(1,.67,0),rgb_string:"rgb(255,171,0)"},orange:{use_rgb:!0,rgb_color:new i.Color(1,.43,0),rgb_string:"rgb(255,109,0)"},"deep orange":{use_rgb:!0,rgb_color:new i.Color(1,.24,0),rgb_string:"rgb(255,61,0)"}},t}();e.ColorUtilities=r},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0}),n(9);var i=n(2),r=(n(61),n(327)),o=n(283);n(436),n(436),n(434),n(205);var a=n(41),s=(n(36),n(6)),c=n(0),l=n(0),u=n(9),d=n(205),p=n(434),h=n(61),f=n(436),g=n(36),m=function(){function e(t,e,n,i,r,o,s,c,l){this.RestService=t,this.DatasetManagementService=e,this.$timeout=n,this.FlowService=i,this.MessageReportingService=r,this.JobNameTranslatorService=o,this.gettextCatalog=s,this.gettext=c,this.AuthenticationService=l,this.jobs=[],this.progress={loadingJobs:!1,jobRunning:!1},this.timeouts=[],this.modalOnJobFinish=!1,this.firstPoll=!0,this.defaultJobErrorPopupBody=this.gettext("Please check the task manager for detailed logs"),this.jobFailureDetectors=a.ErrorService.getAllJobFailureDetectors(this.gettextCatalog)}return e.prototype.refreshJobList=function(){var t=this;this.AuthenticationService.dataAccessible&&(this.progress.loadingJobs=!0,this.RestService.getApi("jobs",{}).then(function(n){for(var i=0,r=n;i<r.length;i++){var o=r[i];t.updateJob(o)}t.DatasetManagementService.dataManagementJobTriggered=!1,t.progress.jobRunning=t.jobs.some(function(t){return t.busy}),t.progress.loadingJobs=!1,t.timeouts.push(t.$timeout(function(){return t.refreshJobList()},e.REFRESH_CYCLE)),!t.modalOnJobFinish||t.progress.jobRunning||t.FlowService.isUploading()||t.clearTimeouts(),t.firstPoll=!1}).catch(function(){}))},e.prototype.refreshJobDetails=function(t){var n=this;this.RestService.getApi("jobs/"+t,{}).then(function(i){n.updateJob(i),i.busy&&n.timeouts.push(n.$timeout(function(){return n.refreshJobDetails(t)},e.REFRESH_CYCLE))}).catch(function(){})},e.prototype.clearTimeouts=function(t){var e=this;void 0===t&&(t=!1),this.timeouts.forEach(function(t){return e.$timeout.cancel(t)}),t&&this.refreshJobList()},e.prototype.cancelJob=function(t){return this.RestService.deleteApi("jobs/"+t.jobId)},e.prototype.showModalOnJobFinish=function(t){this.modalOnJobFinish=t},e.prototype.isJobBusy=function(t){return!!this.jobs[t]&&this.jobs[t].busy},e.prototype.hasJobFailed=function(t){return!!this.jobs[t]&&!this.jobs[t].busy&&!this.jobs[t].success},e.prototype.updateJob=function(t){var n=t.job_id,i=this.jobs[n]=this.jobs[n]||new r.Job,o=!this.firstPoll&&!i.success&&t.success,a=!this.firstPoll&&!t.busy&&!t.success&&(i.busy||void 0===i.busy);i.fillFromData(t),i.label=this.JobNameTranslatorService.translateJobName(i.name),e.SILENT_JOBS.includes(i.name)||(o&&this.onJobFinished(),a&&this.onJobFailed(i))},e.prototype.onJobFinished=function(){this.modalOnJobFinish?t("#ivReinitModal").modal("show"):(this.DatasetManagementService.reInitOnExit=!0,this.DatasetManagementService.refresh())},e.prototype.onJobFailed=function(t){var e,n=this.jobFailureDetectors.find(function(e){return e.applies(t)});if(void 0!==n)e=n.currentErrorMessage;else if(t.errors){var i=t.errors.substr(0,t.errors.indexOf("Exception:")+9),r=t.errors.substr(t.errors.indexOf("Exception:")+11),o={data:{exception:i.split(".").reverse()[0],msg:r}};e=a.ErrorService.getErrorMessage(o,this.gettextCatalog)||t.errors}else e=this.gettextCatalog.getString(this.defaultJobErrorPopupBody);this.MessageReportingService.showMessage(this.JobNameTranslatorService.getJobErrorTitle(t.name),e,!0)},e.SILENT_JOBS=[o.JobName.DOWNLOAD_DATASET_FROM_S3_JOB,o.JobName.POINT_CLOUD_CROP_JOB,o.JobName.POINTCLOUD_AUTO_ALIGN_JOB],e.REFRESH_CYCLE=2e3,e.ɵfac=function(t){return new(t||e)(l.ɵɵinject(u.RestService),l.ɵɵinject(d.DatasetManagementService),l.ɵɵinject("$timeout"),l.ɵɵinject(p.FlowService),l.ɵɵinject(h.MessageReportingService),l.ɵɵinject(f.JobNameTranslatorService),l.ɵɵinject("gettextCatalog"),l.ɵɵinject("gettext"),l.ɵɵinject(g.AuthenticationService))},e.ɵprov=l.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}();e.JobListService=m,l.ɵsetClassMetadata(m,[{type:c.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:u.RestService},{type:d.DatasetManagementService},{type:void 0,decorators:[{type:c.Inject,args:["$timeout"]}]},{type:p.FlowService},{type:h.MessageReportingService},{type:f.JobNameTranslatorService},{type:void 0,decorators:[{type:c.Inject,args:["gettextCatalog"]}]},{type:void 0,decorators:[{type:c.Inject,args:["gettext"]}]},{type:g.AuthenticationService}]},null),i.module("IVWebApp").service("JobListService",s.downgradeInjectable(m))}).call(this,n(19))},function(t,e,n){"use strict";n.d(e,"b",function(){return u}),n.d(e,"a",function(){return d});var i=n(1),r=n(77),o=n(56),a=n(79),s=n(78),c=n(149),l={};function u(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var n=null,i=null;return Object(r.a)(t[t.length-1])&&(i=t.pop()),"function"==typeof t[t.length-1]&&(n=t.pop()),1===t.length&&Object(o.a)(t[0])&&(t=t[0]),Object(c.a)(t,i).lift(new d(n))}var d=function(){function t(t){this.resultSelector=t}return t.prototype.call=function(t,e){return e.subscribe(new p(t,this.resultSelector))},t}(),p=function(t){function e(e,n){var i=t.call(this,e)||this;return i.resultSelector=n,i.active=0,i.values=[],i.observables=[],i}return i.c(e,t),e.prototype._next=function(t){this.values.push(l),this.observables.push(t)},e.prototype._complete=function(){var t=this.observables,e=t.length;if(0===e)this.destination.complete();else{this.active=e,this.toRespond=e;for(var n=0;n<e;n++){var i=t[n];this.add(Object(s.a)(this,i,i,n))}}},e.prototype.notifyComplete=function(t){0==(this.active-=1)&&this.destination.complete()},e.prototype.notifyNext=function(t,e,n,i,r){var o=this.values,a=o[n],s=this.toRespond?a===l?--this.toRespond:this.toRespond:0;o[n]=e,0===s&&(this.resultSelector?this._tryResultSelector(o):this.destination.next(o.slice()))},e.prototype._tryResultSelector=function(t){var e;try{e=this.resultSelector.apply(this,t)}catch(t){return void this.destination.error(t)}this.destination.next(e)},e}(a.a)},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return t.call(this,"ToolbarVisibilityChanged")||this}return r(e,t),e.prototype.withToolbar=function(t){return this.withData("toolBarTitle",t),this},e.prototype.visible=function(t){return this.withData("toolbarStatus",t?"shown":"hidden"),this},e.prototype.withNewWidth=function(t){return this.withData("width",t),this},e}(n(64).TrackingEvent);e.ToolbarVisibilityChangedEvent=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.handleDisabledFeature=function(t){}},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var o=n(551),a=n(212),s=n(553),c=n(124),l=n(1135),u=n(128),d=n(233),p=n(40),h=n(8),f=function(){function t(e,n,i,r,o,a,s,c){var d=this;this.view=e,this.onZoomView=n,this.onDragViewStart=i,this.onDragView=r,this.onDragViewEnd=o,this.onSustainedDragViewEnd=a,this.onKeyDown=s,this.onKeyUp=c,this.keysPressed=new Set,this.ignoreKeyboardEvents=!1,this.mousePosition={x:0,y:0,event:void 0},this.draggingView=!1,this.pinchingActive=!1,this.pinchingLastScale=1;var p=u(e.divContainer.container,{doubleTapInterval:t.DOUBLE_CLICK_INTERVAL,tapAlways:!1,dragMinDistance:3,holdTimeout:1e3});p.on("tap",function(t){return d.tap(t)}),p.on("doubletap",function(t){return d.doubleTap(t)}),p.on("hold",function(t){return d.hold(t)}),p.on("release",function(t){return d.release(t)}),p.on("touch",function(t){return d.touch(t)}),p.on("mousemove",function(t){return d.mouseMove(t)}),p.on("mousewheel",function(t){return d.mouseWheel(t)}),p.on("DOMMouseScroll",function(t){return d.mouseWheel(t)}),p.on("dragstart",function(t){return d.dragStart(t)}),p.on("drag",function(t){return d.drag(t)}),p.on("dragend",function(t){return d.dragEnd(t)}),p.on("pinch",function(t){return d.pinch(t)}),e.divContainer.container.addEventListener("keydown",function(t){return d.keyDown(t)},!1),e.divContainer.container.addEventListener("keyup",function(t){return d.keyUp(t)},!1),e.divContainer.container.addEventListener("contextmenu",function(t){return t.preventDefault()}),e.divContainer.container.id||(e.divContainer.container.id="jquery-contextmenu-"+this.unique_id),this.contextMenuElement=l.$("#"+e.divContainer.container.id),l.$.contextMenu({selector:"#"+e.divContainer.container.id,trigger:"none",zIndex:10,reposition:!1,events:{show:function(){return l.$(e.divContainer.container).parents("#insetPanel").addClass("opened-context-menu")},hide:function(){return l.$(e.divContainer.container).parents("#insetPanel").removeClass("opened-context-menu")}},build:function(t,e){return d.populateContextMenu(e)}})}return t.prototype.destroy=function(){u.detection.previous=void 0,this.contextMenuElement.contextMenu("destroy")},t.prototype.getLastMousePosition=function(){return this.mousePosition},t.prototype.isKeyPressed=function(t){return this.keysPressed.has(t)},t.prototype.updateMeshMouseMoveOverOut=function(){this.handleMeshMouseMoveOverOut(this.mousePosition)},t.prototype.callMeshEventHandler=function(t,e){for(var n=o.getEventPosition(t),i=function(i){var r=i.object;if(r[e]&&!0===s.swallowExceptions(function(){return r[e](n)}))return t.gesture.preventDefault(),{value:!0}},r=0,a=this.view.getObjectsUnderCursor(n);r<a.length;r++){var c=i(a[r]);if("object"==typeof c)return c.value}return!1},t.prototype.callLayerEventHandler=function(t,e,n){for(var i=o.getEventPosition(t),r=function(r){if(r[e]&&!0===s.swallowExceptions(function(){return r[e](i,n)}))return t.stopImmediatePropagation(),t.gesture.preventDefault(),{value:!0}},a=0,c=this.view.layers;a<c.length;a++){var l=r(c[a]);if("object"==typeof l)return l.value}return!1},t.prototype.callViewEventHandler=function(t,e){var n=this;return s.swallowExceptions(function(){return n.view[e](o.getEventPosition(t))})},t.prototype.callEventHandlers=function(t,e,n){var a;return i(this,void 0,void 0,function(){return r(this,function(i){switch(i.label){case 0:return this.wasTriggeredByMouse(t)?[3,2]:[4,this.view.setCurrentCursorPositionForScreenPosition(o.getEventPosition(t))];case 1:i.sent(),n=null===(a=this.view.getCurrentCursorPosition())||void 0===a?void 0:a.location,i.label=2;case 2:return[2,this.callMeshEventHandler(t,e)||this.callLayerEventHandler(t,e,n)||this.callViewEventHandler(t,e)]}})})},t.prototype.tap=function(e){var n,i=this,r=null===(n=this.view.getCurrentCursorPosition())||void 0===n?void 0:n.location;this.tapTimer=window.setTimeout(function(){var t=e.gesture.srcEvent,n=void 0!==t.button?t.button:d.MouseButton.LEFT;n!==d.MouseButton.RIGHT&&i.closeContextMenu(),n===d.MouseButton.LEFT&&(i.callEventHandlers(e,"onClick",r).catch(h.handleWarning),window.clearTimeout(i.tapTimer))},t.DOUBLE_CLICK_INTERVAL)},t.prototype.wasTriggeredByMouse=function(t){return"mouse"===t.gesture.pointerType},t.prototype.doubleTap=function(t){this.callEventHandlers(t,"onDoubleClick").catch(h.handleWarning),window.clearTimeout(this.tapTimer)},t.prototype.release=function(t){t.gesture.srcEvent.button===d.MouseButton.RIGHT&&this.contextMenuElement.contextMenu({x:t.gesture.srcEvent.pageX,y:t.gesture.srcEvent.pageY})},t.prototype.hold=function(t){t.gesture&&t.gesture.srcEvent&&void 0!==t.gesture.srcEvent.button&&t.gesture.srcEvent.button!==d.MouseButton.LEFT||this.callEventHandlers(t,"onHold").then(function(t){t&&p.vibrate()}).catch(h.handleWarning)},t.prototype.touch=function(t){this.mousePosition=o.getEventPosition(t),this.cancelFling(),this.pinchingLastScale=1},t.prototype.mouseMove=function(t){this.draggingObject||this.draggingView||this.pinchingActive||(this.mousePosition=o.getEventPosition(t),this.callLayerEventHandler(t,"onMouseMove"),this.updateMeshMouseMoveOverOut())},t.prototype.handleMeshMouseMoveOverOut=function(t){for(var e=this,n=this.view.getObjectsUnderCursor(t),i=this.view.getViewport(t.x,t.y),r=!1,o=function(n){var o=n.object;o.onMouseMove&&s.swallowExceptions(function(){return o.onMouseMove(t,i)}),o.onMouseOver&&o===a.oldMesh&&(r=!0),o.onMouseOver&&o!==a.oldMesh&&!r&&(a.oldMesh&&a.oldMesh.onMouseOut&&s.swallowExceptions(function(){return e.oldMesh.onMouseOut(t,i)}),s.swallowExceptions(function(){return o.onMouseOver(t,i)}),a.oldMesh=o,r=!0)},a=this,c=0,l=n;c<l.length;c++)o(l[c]);!r&&this.oldMesh&&this.oldMesh.onMouseOut&&(s.swallowExceptions(function(){return e.oldMesh.onMouseOut(t,i)}),this.oldMesh=void 0)},t.prototype.mouseWheel=function(t){t.preventDefault();for(var e=o.getEventPosition(t),n=o.getMouseWheelDelta(t),i=function(t){var i=t.object;if(i.onMouseWheel&&s.swallowExceptions(function(){return i.onMouseWheel(e,n)}))return{value:void 0}},r=0,a=this.view.getObjectsUnderCursor(e);r<a.length;r++){var c=i(a[r]);if("object"==typeof c)return c.value}for(var l=function(t){if(t.onMouseWheel&&s.swallowExceptions(function(){return t.onMouseWheel(e,n)}))return{value:void 0}},u=0,d=this.view.layers;u<d.length;u++){var p=l(d[u]);if("object"==typeof p)return p.value}this.onZoomView(e,n,!1)},t.prototype.dragStart=function(t){if(t.gesture){t.gesture.preventDefault(),this.cancelFling();var e=t.gesture.startEvent.srcEvent,n=void 0!==e.button?e.button:0,i=o.getEventPosition(e);if(n===d.MouseButton.LEFT)for(var r=this.view.getObjectsUnderCursor(i),a=function(t){var e=t.object;if(e.onDrag){var n=c.view.getViewport(i.x,i.y);return!n||e.onDragStart&&s.swallowExceptions(function(){return!e.onDragStart(i,n)})?"continue":(c.draggingObject={object:e,viewport:n},{value:void 0})}},c=this,l=0,u=r;l<u.length;l++){var p=a(u[l]);if("object"==typeof p)return p.value}this.draggingView=this.onDragViewStart(i)}},t.prototype.drag=function(t){var e=this;if(t.gesture)if(t.gesture.preventDefault(),Number.isFinite(t.gesture.deltaX)&&Number.isFinite(t.gesture.deltaY)){if(this.draggingObject){var n=o.getEventPosition(t);s.swallowExceptions(function(){return e.draggingObject.object.onDrag(n,e.draggingObject.viewport)})}else if(this.pinchingActive&&(t.gesture.deltaX=0,t.gesture.deltaY=0,this.pinchingActive=!1),this.draggingView){var i=o.getEventPosition(t.gesture.startEvent.srcEvent);this.onDragView(t.gesture.deltaX,t.gesture.deltaY,i),t.gesture.startEvent.center.clientX=t.gesture.center.clientX,t.gesture.startEvent.center.clientY=t.gesture.center.clientY,t.gesture.startEvent.timeStamp=t.gesture.timeStamp,t.gesture.startEvent.secondToLastDrag=t.gesture.startEvent.lastDrag,t.gesture.startEvent.lastDrag={timeStamp:t.gesture.timeStamp,deltaX:t.gesture.deltaX,deltaY:t.gesture.deltaY,deltaTime:t.gesture.deltaTime/1e3}}}else console.error("Invalid delta in drag event",t.gesture)},t.prototype.dragEnd=function(t){var e=this;t.gesture&&(t.gesture.preventDefault(),t.gesture.stopDetect());var n=!1;if(this.draggingView){var i=o.getEventPosition(t.gesture.startEvent.srcEvent);n=this.onDragViewEnd(i),this.draggingView=!1}if(this.draggingObject)return this.draggingObject.object.onDragEnd&&s.swallowExceptions(function(){return e.draggingObject.object.onDragEnd()}),void(this.draggingObject=void 0);if(t.gesture&&n){var r=Math.max(this.view.divContainer.getCurrentWidth(),this.view.divContainer.getCurrentHeight()),a=t.gesture.timeStamp-t.gesture.startEvent.lastDrag.timeStamp;if(!t.gesture.startEvent.lastDrag||a/1e3>.1)this.onSustainedDragViewEnd();else{var l=t.gesture.startEvent.secondToLastDrag||t.gesture.startEvent.lastDrag,u=l.deltaX,d=l.deltaY,p=l.deltaTime;if(0!==p){var h=o.getEventPosition(t.gesture.startEvent.srcEvent),f={vx:Math.max(-r,Math.min(r,u/p)),vy:Math.max(-r,Math.min(r,d/p))},g=c.now();this.flingTween=new c.Tween(f).to({vx:0,vy:0},750).easing(function(t){return c.Easing.Linear.None(t)}).onUpdate(function(t){var n=c.now(),i=(n-g)/750;g=n,e.onDragView(f.vx*i,f.vy*i,h)}).onComplete(function(){e.view.forgetTween(e.flingTween),e.flingTween=void 0,e.onSustainedDragViewEnd()}).start(),this.view.watchTween(this.flingTween)}}}},t.prototype.cancelFling=function(){this.flingTween&&(this.flingTween.stop(),this.view.forgetTween(this.flingTween),this.flingTween=void 0)},t.prototype.pinch=function(t){t.gesture.preventDefault();var e=t.gesture.scale/this.pinchingLastScale;this.pinchingLastScale=t.gesture.scale,this.onZoomView(o.getEventPosition(t),e,!0),this.pinchingActive=!0},t.prototype.keyDown=function(t){var e=this;if(t.keyCode===a.KeyEvent.DOM_VK_ESCAPE&&this.draggingObject&&this.draggingObject.object.onDragCancel)return s.swallowExceptions(function(){return e.draggingObject.object.onDragCancel()}),void(this.draggingObject=void 0);var n=t.target,i=n.nodeName.toLowerCase();if(!("input"===i||"textarea"===i||"select"===i||"form-description"===n.id||n.className.indexOf("ta-text")>0||this.ignoreKeyboardEvents||t.altKey||t.ctrlKey||t.metaKey||(this.keysPressed.add(t.keyCode),this.onKeyDown(t))))for(var r=function(e){if(e.onKeyDown&&s.swallowExceptions(function(){return e.onKeyDown(t)}))return"break"},o=0,c=this.view.layers;o<c.length&&"break"!==r(c[o]);o++);},t.prototype.keyUp=function(t){if(this.keysPressed.delete(t.keyCode),this.onKeyUp(t),!this.onKeyUp(t))for(var e=function(e){if(e.onKeyUp&&s.swallowExceptions(function(){return e.onKeyUp(t)}))return"break"},n=0,i=this.view.layers;n<i.length&&"break"!==e(i[n]);n++);},t.prototype.populateContextMenu=function(t){for(var e=this,n=o.getEventPosition(t),i=[],r=new Set,a=[],c=function(t){var e=t.object;e.onContextMenu&&a.push(function(){return e.onContextMenu(n)})},l=0,u=this.view.getObjectsUnderCursor(n);l<u.length;l++)c(u[l]);for(var d=function(t){t.onContextMenu&&a.push(function(){return t.onContextMenu(n)})},p=0,h=this.view.layers;p<h.length;p++)d(h[p]);this.view.onContextMenu&&a.push(function(){return e.view.onContextMenu(n)});for(var f=0,g=a;f<g.length;f++){var m=g[f],v=s.swallowExceptions(m);if(!1===v)return!1;if(v&&!0!==v)for(var y=0,b=v instanceof Array?v:[v];y<b.length;y++){var w=b[y],S=!0;void 0!==w.key&&(S=!r.has(w.key),r.add(w.key)),S&&i.push(w)}}return!!i.length&&{items:i}},t.prototype.closeContextMenu=function(){this.isContextMenuActive()&&this.contextMenuElement.contextMenu("hide")},t.prototype.isContextMenuActive=function(){return this.contextMenuElement.hasClass("context-menu-active")},t.DOUBLE_CLICK_INTERVAL=500,t}();e.InputHandler=f},function(t,e,n){var i=n(34),r=n(88);t.exports=function(t,e){try{r(i,t,e)}catch(n){i[t]=e}return e}},function(t,e,n){var i=n(34),r=n(42),o=i.document,a=r(o)&&r(o.createElement);t.exports=function(t){return a?o.createElement(t):{}}},function(t,e,n){var i=n(18);t.exports=!!Object.getOwnPropertySymbols&&!i(function(){return!String(Symbol())})},function(t,e,n){var i=n(43),r=n(48),o=n(29),a=n(237);t.exports=i?Object.defineProperties:function(t,e){o(t);for(var n,i=a(e),s=i.length,c=0;s>c;)r.f(t,n=i[c++],e[n]);return t}},function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},function(t,e,n){"use strict";var i=n(5),r=n(358),o=n(99),a=n(191),s=n(162),c=n(88),l=n(98),u=n(45),d=n(158),p=n(240),h=n(466),f=h.IteratorPrototype,g=h.BUGGY_SAFARI_ITERATORS,m=u("iterator"),v=function(){return this};t.exports=function(t,e,n,u,h,y,b){r(n,e,u);var w,S,x,M=function(t){if(t===h&&O)return O;if(!g&&t in A)return A[t];switch(t){case"keys":case"values":case"entries":return function(){return new n(this,t)}}return function(){return new n(this)}},E=e+" Iterator",C=!1,A=t.prototype,T=A[m]||A["@@iterator"]||h&&A[h],O=!g&&T||M(h),_="Array"==e&&A.entries||T;if(_&&(w=o(_.call(new t)),f!==Object.prototype&&w.next&&(d||o(w)===f||(a?a(w,f):"function"!=typeof w[m]&&c(w,m,v)),s(w,E,!0,!0),d&&(p[E]=v))),"values"==h&&T&&"values"!==T.name&&(C=!0,O=function(){return T.call(this)}),d&&!b||A[m]===O||c(A,m,O),p[e]=O,h)if(S={values:M("values"),keys:y?O:M("keys"),entries:M("entries")},b)for(x in S)(g||C||!(x in A))&&l(A,x,S[x]);else i({target:e,proto:!0,forced:g||C},S);return S}},function(t,e,n){var i=n(161),r=n(190),o=n(357),a=n(29);t.exports=i("Reflect","ownKeys")||function(t){var e=r.f(a(t)),n=o.f;return n?e.concat(n(t)):e}},function(t,e){e.f=Object.getOwnPropertySymbols},function(t,e,n){"use strict";var i=n(466).IteratorPrototype,r=n(160),o=n(173),a=n(162),s=n(240),c=function(){return this};t.exports=function(t,e,n){var l=e+" Iterator";return t.prototype=r(i,{next:o(1,n)}),a(t,l,!1,!0),s[l]=c,t}},function(t,e,n){var i=n(18);t.exports=!i(function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype})},function(t,e,n){var i=n(45),r=n(240),o=i("iterator"),a=Array.prototype;t.exports=function(t){return void 0!==t&&(r.Array===t||a[o]===t)}},function(t,e,n){var i={};i[n(45)("toStringTag")]="z",t.exports="[object z]"===String(i)},function(t,e,n){var i=n(45)("iterator"),r=!1;try{var o=0,a={next:function(){return{done:!!o++}},return:function(){r=!0}};a[i]=function(){return this},Array.from(a,function(){throw 2})}catch(t){}t.exports=function(t,e){if(!e&&!r)return!1;var n=!1;try{var o={};o[i]=function(){return{next:function(){return{done:n=!0}}}},t(o)}catch(t){}return n}},function(t,e,n){"use strict";var i=n(53),r=n(175),o=n(44);t.exports=function(t){for(var e=i(this),n=o(e.length),a=arguments.length,s=r(a>1?arguments[1]:void 0,n),c=a>2?arguments[2]:void 0,l=void 0===c?n:r(c,n);l>s;)e[s++]=t;return e}},function(t,e,n){var i=n(296);t.exports=function(t){if(i(t))throw TypeError("The method doesn't accept regular expressions");return t}},function(t,e,n){var i=n(45)("match");t.exports=function(t){var e=/./;try{"/./"[t](e)}catch(n){try{return e[i]=!1,"/./"[t](e)}catch(t){}}return!1}},function(t,e,n){"use strict";var i=n(18);function r(t,e){return RegExp(t,e)}e.UNSUPPORTED_Y=i(function(){var t=r("a","y");return t.lastIndex=2,null!=t.exec("abcd")}),e.BROKEN_CARET=i(function(){var t=r("^r","gy");return t.lastIndex=2,null!=t.exec("str")})},function(t,e,n){var i=n(44),r=n(368),o=n(87),a=Math.ceil,s=function(t){return function(e,n,s){var c,l,u=String(o(e)),d=u.length,p=void 0===s?" ":String(s),h=i(n);return h<=d||""==p?u:(c=h-d,(l=r.call(p,a(c/p.length))).length>c&&(l=l.slice(0,c)),t?u+l:l+u)}};t.exports={start:s(!1),end:s(!0)}},function(t,e,n){"use strict";var i=n(122),r=n(87);t.exports="".repeat||function(t){var e=String(r(this)),n="",o=i(t);if(o<0||o==1/0)throw RangeError("Wrong number of repetitions");for(;o>0;(o>>>=1)&&(e+=e))1&o&&(n+=e);return n}},function(t,e,n){var i=n(18),r=n(301);t.exports=function(t){return i(function(){return!!r[t]()||"​…᠎"!="​…᠎"[t]()||r[t].name!==t})}},function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},function(t,e){t.exports="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof DataView},function(t,e,n){var i=n(34),r=n(18),o=n(362),a=n(46).NATIVE_ARRAY_BUFFER_VIEWS,s=i.ArrayBuffer,c=i.Int8Array;t.exports=!a||!r(function(){c(1)})||!r(function(){new c(-1)})||!o(function(t){new c,new c(null),new c(1.5),new c(t)},!0)||r(function(){return 1!==new c(new s(2),1,void 0).length})},function(t,e,n){"use strict";n.d(e,"a",function(){return a});var i=n(1),r=n(32),o=n(127),a=function(t){function e(e){var n=t.call(this)||this;return n._value=e,n}return i.c(e,t),Object.defineProperty(e.prototype,"value",{get:function(){return this.getValue()},enumerable:!0,configurable:!0}),e.prototype._subscribe=function(e){var n=t.prototype._subscribe.call(this,e);return n&&!n.closed&&e.next(this._value),n},e.prototype.getValue=function(){if(this.hasError)throw this.thrownError;if(this.closed)throw new o.a;return this._value},e.prototype.next=function(e){t.prototype.next.call(this,this._value=e)},e}(r.a)},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(70),s=(n(9),n(1039)),c=n(375),l=n(108),u=n(6),d=n(0),p=n(0),h=n(9),f=function(t){function e(e,n){var i=t.call(this,s.LicenseInfoEntity,e)||this;return i.RestService=e,i.gettextCatalog=n,i.path="license",i.injectables.gettextCatalog=i.gettextCatalog,i.findLicense=i.findOne,i.findOne=function(){return i.forbiddenOperation()},i.findAll=function(){return i.forbiddenOperation()},i.find=function(){return i.forbiddenOperation()},i.save=function(){return i.forbiddenOperation()},i.remove=function(){return i.forbiddenOperation()},i}return r(e,t),e.prototype.getLicense=function(t){return void 0===t&&(t=!1),this.findLicense("",t)},e.prototype.saveLicense=function(t){return this.RestService.postApi(this.path,{license:t})},e.prototype.create=function(){var e=t.prototype.create.call(this);return e.licenseValid=!1,e.licensableSquareMeters=1,e.area=0,e.features=c.LicenseFeatures.create(this.gettextCatalog),e.validFrom=new Date(0),e.validTo=new Date(0),e},e.prototype.forbiddenOperation=function(){throw new l.IVFrontendException("Method not allowed on LicenseInfoRepository")},e.ɵfac=function(t){return new(t||e)(p.ɵɵinject(h.RestService),p.ɵɵinject("gettextCatalog"))},e.ɵprov=p.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(a.RestRepository);e.LicenseInfoRepository=f,p.ɵsetClassMetadata(f,[{type:d.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:h.RestService},{type:void 0,decorators:[{type:d.Inject,args:["gettextCatalog"]}]}]},null),o.module("IVWebApp").service("LicenseInfoRepository",u.downgradeInjectable(f))},function(t,e,n){"use strict";var i;Object.defineProperty(e,"__esModule",{value:!0});var r=n(92),o=function(){function t(t,e,n){void 0===n&&(n=!1),this.code=t,this.displayName=e,this.enabled=n}return t.getFeatureTypeByCode=function(e){return t.codeToFeatureType[e]},t.codeToFeatureType=((i={})[r.LicenseFeatureType.ROUTING]=r.LicenseFeatureType.ROUTING,i[r.LicenseFeatureType.ANALYST]=r.LicenseFeatureType.ANALYST,i[r.LicenseFeatureType.JAVASCRIPT_API]=r.LicenseFeatureType.JAVASCRIPT_API,i[r.LicenseFeatureType.USER_MANAGEMENT]=r.LicenseFeatureType.USER_MANAGEMENT,i),t}();e.LicenseFeature=o;var a=function(){function t(){}return t.create=function(e,n){void 0===n&&(n=[]);var i=new t;return i[r.LicenseFeatureType.ROUTING]=new o(r.LicenseFeatureType.ROUTING,e.getString("Routing"),n.indexOf(r.LicenseFeatureType.ROUTING)>=0),i[r.LicenseFeatureType.ANALYST]=new o(r.LicenseFeatureType.ANALYST,e.getString("Analyst"),n.indexOf(r.LicenseFeatureType.ANALYST)>=0),i[r.LicenseFeatureType.JAVASCRIPT_API]=new o(r.LicenseFeatureType.JAVASCRIPT_API,e.getString("JavaScript API"),n.indexOf(r.LicenseFeatureType.JAVASCRIPT_API)>=0),i[r.LicenseFeatureType.USER_MANAGEMENT]=new o(r.LicenseFeatureType.USER_MANAGEMENT,e.getString("User Authentication"),n.indexOf(r.LicenseFeatureType.USER_MANAGEMENT)>=0),i},t}();e.LicenseFeatures=a},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(96),a=n(252),s=n(102),c=n(4),l=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.geoRegistered=!0,e.matrix=new c.Matrix4,e.scale=new c.Vector3,e}return r(e,t),Object.defineProperty(e.prototype,"location_",{get:function(){return console.warn('Deprecated usage of "location_", use "location" instead.'),this.location},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"floor_location_",{get:function(){return console.warn('Deprecated usage of "floorLocation_", use "floorLocation" instead.'),this.floorLocation},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"orientation_",{get:function(){return console.warn('Deprecated usage of "orientation_", use "orientation" instead.'),this.orientation},enumerable:!0,configurable:!0}),e.prototype.resolveInjectables=function(){this.GeoTransformationService=this.injectables.GeoTransformationService},e.prototype.fill=function(e,n){void 0===n&&(n=!1),t.prototype.fill.call(this,e,n),this.copyPose(e)},e.prototype.copyPose=function(t){this.location=t.location?t.location.clone():void 0,this.floorLocation=t.floorLocation?t.floorLocation.clone():void 0,this.orientation=t.orientation?t.orientation.clone():void 0,this.dataset=t.dataset,this.datasetId=t.datasetId,this.datasetLocation=t.datasetLocation?t.datasetLocation.clone():void 0,this.datasetFloorLocation=t.datasetFloorLocation?t.datasetFloorLocation.clone():void 0,this.datasetOrientation=t.datasetOrientation?t.datasetOrientation.clone():void 0,this.datasetFloorOrientation=t.datasetFloorOrientation?t.datasetFloorOrientation.clone():void 0,this.floorOrientation=t.floorOrientation?t.floorOrientation.clone():void 0,this.globalLocation=t.globalLocation?t.globalLocation.clone():void 0,this.globalFloorLocation=t.globalFloorLocation?t.globalFloorLocation.clone():void 0,this.globalOrientation=t.globalOrientation?t.globalOrientation.clone():void 0,this.geoRegistered=t.geoRegistered},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.id=e.id,this.globalLocation=o.VectorFactory.fromArray3(e.location),this.globalFloorLocation=o.VectorFactory.fromArray3(e.floor_location),this.globalOrientation=a.QuaternionFactory.fromArray(e.orientation),this.globalFloorOrientation=a.QuaternionFactory.fromArray(e.floor_orientation),this.datasetId=e.dataset_id,this.datasetLocation=o.VectorFactory.fromArray3(e.dataset_location),this.datasetFloorLocation=o.VectorFactory.fromArray3(e.dataset_floor_location),this.datasetOrientation=a.QuaternionFactory.fromArray(e.dataset_orientation),this.datasetFloorOrientation=a.QuaternionFactory.fromArray(e.dataset_floor_orientation),this.globalLocation?(this.computeLocalCoordinatesFromGlobal(),this.geoRegistered=!0):this.geoRegistered=!1},e.prototype.onCreate=function(){t.prototype.onCreate.call(this),this.geoRegistered||(this.location=new c.Vector3,this.orientation=new c.Quaternion,this.floorLocation=new c.Vector3,this.computeCoordinatesFromDataset())},e.prototype.isAtPosition=function(t){return this.location.distanceTo(t)<1e-10},e.prototype.fillDto=function(e){t.prototype.fillDto.call(this,e),e.id=this.id,e.location=o.VectorFactory.toArray(this.globalLocation),e.floor_location=o.VectorFactory.toArray(this.globalFloorLocation),e.orientation=a.QuaternionFactory.toArray(this.orientation),e.dataset_id=this.dataset?this.dataset.id:void 0,e.dataset_location=o.VectorFactory.toArray(this.datasetLocation),e.dataset_floor_location=o.VectorFactory.toArray(this.datasetFloorLocation),e.dataset_orientation=a.QuaternionFactory.toArray(this.datasetOrientation),e.floor_orientation=a.QuaternionFactory.toArray(this.globalFloorOrientation),e.dataset_floor_orientation=a.QuaternionFactory.toArray(this.datasetFloorOrientation)},e.prototype.onReferenceSystemChangedEvent=function(){this.computeLocalCoordinatesFromGlobal()},e.prototype.computeCoordinatesFromDataset=function(){this.computeLocalCoordinatesFromDataset(),this.computeGlobalCoordinatesFromLocal()},e.prototype.computeLocalCoordinatesFromDataset=function(){this.scale.set(1,1,1),this.matrix.compose(this.datasetLocation,this.datasetOrientation,this.scale),this.matrix.premultiply(this.dataset.m2w_),this.location=this.location||new c.Vector3,this.orientation=this.orientation||new c.Quaternion,this.matrix.decompose(this.location,this.orientation,this.scale),this.datasetFloorLocation&&(this.floorLocation=this.floorLocation||new c.Vector3,this.floorLocation.copy(this.datasetFloorLocation).applyMatrix4(this.dataset.m2w_)),this.datasetFloorOrientation&&(this.floorOrientation=this.floorOrientation||new c.Quaternion,this.floorOrientation.setFromRotationMatrix(this.dataset.m2w_).multiply(this.datasetFloorOrientation))},e.prototype.computeLocalCoordinatesFromGlobal=function(){this.location=this.GeoTransformationService.vectorToLocal(this.globalLocation),this.floorLocation=this.GeoTransformationService.vectorToLocal(this.globalFloorLocation),this.orientation=this.globalOrientation?this.globalOrientation.clone():void 0,this.floorOrientation=this.globalFloorOrientation?this.globalFloorOrientation.clone():void 0},e.prototype.computeGlobalCoordinatesFromLocal=function(){this.globalLocation=this.GeoTransformationService.vectorToGlobal(this.location),this.globalFloorLocation=this.GeoTransformationService.vectorToGlobal(this.floorLocation),this.globalOrientation=this.orientation?this.orientation.clone():void 0,this.globalFloorOrientation=this.floorOrientation?this.floorOrientation.clone():void 0},e}(s.RepositoryObject);e.LocationEntity=l},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(378),a=n(7),s=n(96),c=n(4),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.initialize=function(t){for(var e=0,n=t.coordinates;e<n.length;e++){for(var i=[],r=0,o=n[e];r<o.length;r++){var a=o[r],s=this.GeoTransformationService?this.GeoTransformationService.toLocal(a[0],a[1]):new c.Vector2(a[0],a[1]);i.push(s)}0===this.boundary.length?this.boundary=i:this.holes.push(i)}},e.prototype.toData=function(){for(var t=[],e=[],n=0,i=this.boundary;n<i.length;n++){var r=i[n],o=this.GeoTransformationService.vector2ToGlobal(r);t.push(s.VectorFactory.toArray(o))}if(this.holes)for(var c=0,l=this.holes;c<l.length;c++){var u=l[c];if(u.length){for(var d=[],p=0,h=u;p<h.length;p++)r=h[p],o=this.GeoTransformationService.vector2ToGlobal(r),d.push(s.VectorFactory.toArray(o));e.push(d)}}return{coordinates:a.concat([t],e),type:"Polygon"}},e.prototype.toLocalGeometry=function(){return this.toGeometry()},e}(o.Polygon);e.LocalPolygon=l},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(7),r=n(4),o=function(){function t(t,e){this.GeoTransformationService=t,this.boundary=[],this.holes=[],e&&this.initialize(e)}return t.prototype.initialize=function(t){for(var e=0,n=t.coordinates;e<n.length;e++){for(var i=[],o=0,a=n[e];o<a.length;o++){var s=a[o];i.push(new r.Vector2(s[0],s[1]))}0===this.boundary.length?this.boundary=i:this.holes.push(i)}},t.prototype.toData=function(){var t=i.map(this.boundary,function(t){return[t.x,t.y]}),e=[];if(this.holes)for(var n=0,r=this.holes;n<r.length;n++){var o=r[n];if(o.length){var a=i.map(o,function(t){return[t.x,t.y]});e.push(a)}}return{coordinates:i.concat([t],e),type:"Polygon"}},t.prototype.toGeometry=function(){var t=new r.Shape;t.setFromPoints(this.boundary);for(var e=0,n=this.holes;e<n.length;e++){var i=n[e],o=new r.Path;o.setFromPoints(i),t.holes.push(o)}return new r.ShapeGeometry(t)},t.prototype.toLocalGeometry=function(){var t=new r.Shape;t.setFromPoints(this.GeoTransformationService.vectorArrayToLocal(this.boundary));for(var e=0,n=this.holes;e<n.length;e++){var i=n[e],o=new r.Path;o.setFromPoints(this.GeoTransformationService.vectorArrayToLocal(i)),t.holes.push(o)}return new r.ShapeGeometry(t)},t.prototype.copy=function(t){this.boundary=i.clone(t.boundary),this.holes=i.clone(t.holes)},t.prototype.clone=function(){var e=new t(this.GeoTransformationService);return e.copy(this),e},t.prototype.getFirstPoint=function(){return this.boundary[0]},t.prototype.area=function(){return r.ShapeUtils.area(this.boundary)-this.holes.map(function(t){return r.ShapeUtils.area(t)}).reduce(function(t,e){return t+e},0)},t}();e.Polygon=o;e.PolygonRest=function(){this.type="Polygon"}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(7),o=n(55),a=n(6),s=n(0),c=n(0),l=function(){function t(t){this.gettext=t,this.ATTRIBUTES={BUILDING:{type:o.SiteModelType.BUILDING,displayName:this.gettext("Building"),isChangeable:!1,icon:n(633),iconWithBg:n(1043)},FLOOR:{type:o.SiteModelType.FLOOR,displayName:this.gettext("Floor"),isChangeable:!1,icon:n(634),iconWithBg:n(1044)},ROOM:{type:o.SiteModelType.ROOM,displayName:this.gettext("Room"),isChangeable:!0,icon:n(635),iconWithBg:n(1045)},FREE_SPACE_NAVIGATION:{type:o.SiteModelType.FREE_SPACE_NAVIGATION,displayName:this.gettext("Free space navigation"),isChangeable:!1,icon:n(529),iconWithBg:n(530)},CUSTOM:{type:o.SiteModelType.CUSTOM,displayName:this.gettext("Custom"),isChangeable:!0,icon:n(529),iconWithBg:n(530)}}}return t.prototype.getTypeAttributes=function(t){return this.ATTRIBUTES[t]},t.prototype.getChangeableTypes=function(){return r.filter(this.ATTRIBUTES,function(t){return t.isChangeable})},t.ɵfac=function(e){return new(e||t)(c.ɵɵinject("gettext"))},t.ɵprov=c.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.SiteModelTypeService=l,c.ɵsetClassMetadata(l,[{type:s.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:s.Inject,args:["gettext"]}]}]},null),i.module("IVWebApp").service("SiteModelTypeService",a.downgradeInjectable(l))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});e.ReferenceSystem=function(t,e,n,i){this.geodetic=t,this.name=e,this.description=n,this.proj4def=i}},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(n){var i=t.call(this,n)||this;return Object.setPrototypeOf(i,e.prototype),i}return r(e,t),e}(Error);e.TransformException=o;var a=function(t){function e(n){var i=t.call(this,n)||this;return Object.setPrototypeOf(i,e.prototype),i}return r(e,t),e}(o);e.DuplicateTransformException=a;var s=function(t){function e(n){var i=t.call(this,n)||this;return Object.setPrototypeOf(i,e.prototype),i}return r(e,t),e}(o);e.DuplicateReferenceSystemException=s;var c=function(t){function e(n){var i=t.call(this,n)||this;return Object.setPrototypeOf(i,e.prototype),i}return r(e,t),e}(o);e.RedundantTransformException=c;var l=function(t){function e(n){var i=t.call(this,n)||this;return Object.setPrototypeOf(i,e.prototype),i}return r(e,t),e}(o);e.TransformNotFoundException=l;var u=function(t){function e(n){var i=t.call(this,n)||this;return Object.setPrototypeOf(i,e.prototype),i}return r(e,t),e}(o);e.ReferenceSystemNotFoundException=u},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),r=function(){function t(t,e,n){this.source=t,this.target=e,this.T=n,this.quaternion=new i.Quaternion,this.vector=new i.Vector3,this.quaternion.setFromRotationMatrix(n)}return t.prototype.getInverse=function(){return new t(this.target,this.source,(new i.Matrix4).getInverse(this.T))},t.prototype.transform=function(t){return t instanceof i.Vector2?(this.vector.set(t.x,t.y,0),this.vector.applyMatrix4(this.T),t.set(this.vector.x,this.vector.y)):t.applyMatrix4(this.T),t},t.prototype.transformQuaternion=function(t){return t.premultiply(this.quaternion)},t}();e.AffineTransform=r},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(70),a=n(534),s=function(t){function e(e,n,i){var r=t.call(this,e,n)||this;return r.GeoTransformationService=i,r.injectables.GeoTransformationService=r.GeoTransformationService,r.transformLocationAction=new a.TransformLocationRepositoryAction(r),r.GeoTransformationService.offsetChanged.connect(function(){return r.transformLocationAction.perform()}),r}return r(e,t),e}(o.RestRepository);e.ReferenceSystemAwareRestRepository=s},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.ENGLISH="en",t.GERMAN="de",t.CHINESE_TRADITIONAL="zh_tw",t.CHINESE="zh",t.JAPANESE="ja",t.CZECH="cs",t.HUNGARIAN="hu",t.TURKISH="tr",t.FRENCH="fr"}(e.UiLanguage||(e.UiLanguage={})),function(t){t.COMMA=",",t.POINT="."}(e.DecimalSeparators||(e.DecimalSeparators={})),function(t){t.ABKHAZ="ab",t.AFAR="aa",t.AFRIKAANS="af",t.AKAN="ak",t.ALBANIAN="sq",t.AMHARIC="am",t.ARABIC="ar",t.ARAGONESE="an",t.ARMENIAN="hy",t.ASSAMESE="as",t.AVARIC="av",t.AVESTAN="ae",t.AYMARA="ay",t.AZERBAIJANI="az",t.BAMBARA="bm",t.BASHKIR="ba",t.BASQUE="eu",t.BELARUSIAN="be",t.BENGALI="bn",t.BIHARI="bh",t.BISLAMA="bi",t.BOSNIAN="bs",t.BRETON="br",t.BULGARIAN="bg",t.BURMESE="my",t.CATALAN="ca",t.VALENCIAN="ca",t.CHAMORRO="ch",t.CHECHEN="ce",t.CHICHEWA="ny",t.CHEWA="ny",t.NYANJA="ny",t.CHINESE="zh",t.CHINESE_TRADITIONAL="zh_tw",t.CHUVASH="cv",t.CORNISH="kw",t.CORSICAN="co",t.CREE="cr",t.CROATIAN="hr",t.CZECH="cs",t.DANISH="da",t.DIVEHI="dv",t.DHIVEHI="dv",t.MALDIVIAN="dv",t.DUTCH="nl",t.ENGLISH="en",t.ESPERANTO="eo",t.ESTONIAN="et",t.EWE="ee",t.FAROESE="fo",t.FIJIAN="fj",t.FINNISH="fi",t.FRENCH="fr",t.FULA="ff",t.FULAH="ff",t.PULAAR="ff",t.PULAR="ff",t.GALICIAN="gl",t.GEORGIAN="ka",t.GERMAN="de",t.GREEK_MODERN="el",t["GUARANÍ"]="gn",t.GUJARATI="gu",t.HAITIAN="ht",t.HAITIAN_CREOLE="ht",t.HAUSA="ha",t.HEBREW_MODERN="he",t.HERERO="hz",t.HINDI="hi",t.HIRI_MOTU="ho",t.HUNGARIAN="hu",t.INTERLINGUA="ia",t.INDONESIAN="id",t.INTERLINGUE="ie",t.IRISH="ga",t.IGBO="ig",t.INUPIAQ="ik",t.IDO="io",t.ICELANDIC="is",t.ITALIAN="it",t.INUKTITUT="iu",t.JAPANESE="ja",t.JAVANESE="jv",t.KALAALLISUT="kl",t.GREENLANDIC="kl",t.KANNADA="kn",t.KANURI="kr",t.KASHMIRI="ks",t.KAZAKH="kk",t.KHMER="km",t.KIKUYU="ki",t.GIKUYU="ki",t.KINYARWANDA="rw",t.KIRGHIZ="ky",t.KYRGYZ="ky",t.KOMI="kv",t.KONGO="kg",t.KOREAN="ko",t.KURDISH="ku",t.KWANYAMA="kj",t.KUANYAMA="kj",t.LATIN="la",t.LUXEMBOURGISH="lb",t.LETZEBURGESCH="lb",t.LUGANDA="lg",t.LIMBURGISH="li",t.LIMBURGAN="li",t.LIMBURGER="li",t.LINGALA="ln",t.LAO="lo",t.LITHUANIAN="lt",t.LUBA_KATANGA="lu",t.LATVIAN="lv",t.MANX="gv",t.MACEDONIAN="mk",t.MALAGASY="mg",t.MALAY="ms",t.MALAYALAM="ml",t.MALTESE="mt",t.MAORI="mi",t.MARATHI="mr",t.MARSHALLESE="mh",t.MONGOLIAN="mn",t.NAURU="na",t.NAVAJO="nv",t.NAVAHO="nv",t.NORWEGIAN_BOKMAL="nb",t.NDEBELE_NORTH="nd",t.NEPALI="ne",t.NDONGA="ng",t.NORWEGIAN_NYNORSK="nn",t.NORWEGIAN="no",t.NUOSU="ii",t.NDEBELE_SOUTH="nr",t.OCCITAN="oc",t.OJIBWE="oj",t.OJIBWA="oj",t.SLAVONIC_OLD_CHURCH="cu",t.OROMO="om",t.ORIYA="or",t.OSSETIAN="os",t.OSSETIC="os",t.PANJABI="pa",t.PUNJABI="pa",t.PALI="pi",t.PERSIAN="fa",t.POLISH="pl",t.PASHTO="ps",t.PUSHTO="ps",t.PORTUGUESE="pt",t.QUECHUA="qu",t.ROMANSH="rm",t.KIRUNDI="rn",t.ROMANIAN="ro",t.MOLDAVIAN="ro",t.MOLDOVAN="ro",t.RUSSIAN="ru",t.SANSKRIT="sa",t.SARDINIAN="sc",t.SINDHI="sd",t.SAMI_NORTHERN="se",t.SAMOAN="sm",t.SANGO="sg",t.SERBIAN="sr",t.SCOTTISH_GAELIC="gd",t.GAELIC="gd",t.SHONA="sn",t.SINHALA="si",t.SINHALESE="si",t.SLOVAK="sk",t.SLOVENE="sl",t.SOMALI="so",t.SOTHO_SOUTHERN="st",t.SPANISH="es",t.CASTILIAN="es",t.SUNDANESE="su",t.SWAHILI="sw",t.SWATI="ss",t.SWEDISH="sv",t.TAMIL="ta",t.TELUGU="te",t.TAJIK="tg",t.THAI="th",t.TIGRINYA="ti",t.TIBETAN_STANDARD="bo",t.TIBETAN_CENTRAL="bo",t.TURKMEN="tk",t.TAGALOG="tl",t.TSWANA="tn",t.TONGA="to",t.TURKISH="tr",t.TSONGA="ts",t.TATAR="tt",t.TWI="tw",t.TAHITIAN="ty",t.UIGHUR="ug",t.UYGHUR="ug",t.UKRAINIAN="uk",t.URDU="ur",t.UZBEK="uz",t.VENDA="ve",t.VIETNAMESE="vi",t.VOLAPUEK="vo",t.WALLOON="wa",t.WELSH="cy",t.WOLOF="wo",t.FRISIAN_WESTERN="fy",t.XHOSA="xh",t.YIDDISH="yi",t.YORUBA="yo",t.ZHUANG="za",t.CHUANG="za"}(e.DataLanguage||(e.DataLanguage={}))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(6),o=n(0),a=n(0),s=function(){function t(t){t.NUMBER_FORMATS.GROUP_SEP=1e3.toLocaleString().replace(/[0-9]/g,""),t.NUMBER_FORMATS.DECIMAL_SEP=.5.toLocaleString().replace(/[0-9]/g,"")}return t.ɵfac=function(e){return new(e||t)(a.ɵɵinject("$locale"))},t.ɵprov=a.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.ApplyBrowserLocaleService=s,a.ɵsetClassMetadata(s,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:o.Inject,args:["$locale"]}]}]},null),i.module("IVWebApp").service("ApplyBrowserLocaleService",r.downgradeInjectable(s))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(4);e.GUIDE_LINE_COLOR_HEX="#FFFFFF",e.GUIDE_LINE_COLOR=new i.Color(e.GUIDE_LINE_COLOR_HEX),e.MEASUREMENT_MATERIAL_COLOR_HEX="#3399C8",e.MEASUREMENT_MATERIAL_COLOR=new i.Color(e.MEASUREMENT_MATERIAL_COLOR_HEX),e.MEASUREMENT_HIGHLIGHT_MATERIAL_COLOR_HEX="#7BD4F6",e.MEASUREMENT_HIGHLIGHT_MATERIAL_COLOR=new i.Color(e.MEASUREMENT_HIGHLIGHT_MATERIAL_COLOR_HEX),e.OBSCURED_MEASUREMENT_MATERIAL_COLOR_HEX="#777777",e.OBSCURED_MEASUREMENT_MATERIAL_COLOR=new i.Color(e.OBSCURED_MEASUREMENT_MATERIAL_COLOR_HEX)},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.NONE="",t.AUTO="auto",t.DEFAULT="default",t.CROSSHAIR="crosshair",t.NOT_ALLOWED="not-allowed",t.POINTER="pointer"}(e.MouseCursorStyle||(e.MouseCursorStyle={}))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.CYRILLIC="PTSans-Regular",t.JAPANESE="NotoSansCJKjp-Regular",t.CHINESE_SIMPLIFIED="NotoSansCJKtc-Regular",t.CHINESE_TRADITIONAL="NotoSansCJKsc-Regular",t.DEFAULT="Helvetica"}(e.SupportedFont||(e.SupportedFont={}))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(28),n(394),n(262),n(49),n(550));n(73),n(219),n(139),n(41),n(15),n(201),n(200),n(404),n(405),n(24),n(39),n(267),n(406),n(320),n(320),n(17),n(219),n(91),n(22),n(106);var o=n(6),a=n(0),s=(n(571),n(140),n(166),n(27),n(21),n(574),n(65),n(579),n(31),n(83),n(0)),c=n(17),l=n(320),u=n(404),d=n(571),p=n(574),h=n(579),f=n(405),g=n(49),m=n(201),v=n(406),y=n(267),b=n(39),w=n(139),S=n(200),x=n(73),M=n(65),E=n(15),C=n(262),A=n(394),T=n(28),O=n(219),_=n(41),P=n(24),I=n(22),k=n(106),D=n(91),R=n(140),L=n(21),N=n(166),j=n(27),V=n(31),F=n(83),U=function(){function t(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m,v,y,b,w,S,x,M,E,C,A,T,O,_,P,I,k,D,R,L,N,j,V,F){this.ViewService=t,this.AlignmentHelpersFactory=e,this.IvCameraImageLayerFactory=n,this.VolumeClippingLayerFactory=i,this.MeasurementsLayerFactory=r,this.MagnificationLayerFactory=o,this.CursorLayerFactory=a,this.ImageService=s,this.IV=c,this.LocationMarkerLayerFactory=l,this.NavGraphLayerFactory=u,this.PolygonLayerFactory=d,this.PoiLayerFactory=p,this.PoiService=h,this.RaycastService=f,this.RouteLayerFactory=g,this.UrlService=m,this.ViewMenuService=v,this.ConfigService=y,this.PointCloudMenuService=b,this.MapLayerFactory=w,this.SiteModelLayerFactory=S,this.hotkeys=x,this.gettext=M,this.FloorChangerService=E,this.CameraFOVLayerFactory=C,this.ErrorService=A,this.ModeService=T,this.SiteModelRepository=O,this.ProgressReportService=_,this.CursorService=P,this.SystemJsNgModuleLoader=I,this.DownloadPointCloudService=k,this.TrackingService=D,this.TiledMapRepository=R,this.gettextCatalog=L,this.UserService=N,this.DatasetRepository=j,this.SiteModelService=V,this.injector=F}return t.prototype.create=function(t){return new r.MainView(t,this.ViewService,this.AlignmentHelpersFactory,this.IvCameraImageLayerFactory,this.VolumeClippingLayerFactory,this.MeasurementsLayerFactory,this.MagnificationLayerFactory,this.CursorLayerFactory,this.ImageService,this.IV,this.LocationMarkerLayerFactory,this.NavGraphLayerFactory,this.PolygonLayerFactory,this.PoiLayerFactory,this.PoiService,this.RaycastService,this.RouteLayerFactory,this.UrlService,this.ViewMenuService,this.ConfigService,this.PointCloudMenuService,this.MapLayerFactory,this.SiteModelLayerFactory,this.hotkeys,this.gettext,this.FloorChangerService,this.CameraFOVLayerFactory,this.ErrorService,this.ModeService,this.CursorService,this.ProgressReportService,this.SiteModelRepository,this.SystemJsNgModuleLoader,this.DownloadPointCloudService,this.TrackingService,this.TiledMapRepository,this.gettextCatalog,this.UserService,this.DatasetRepository,this.SiteModelService,this.injector)},t.ɵfac=function(e){return new(e||t)(s.ɵɵinject(c.ViewService),s.ɵɵinject(l.AlignmentHelpersFactory),s.ɵɵinject(u.IvCameraImageLayerFactory),s.ɵɵinject(d.VolumeClippingLayerFactory),s.ɵɵinject(p.MeasurementsLayerFactory),s.ɵɵinject(h.MagnificationLayerFactory),s.ɵɵinject(f.CursorLayerFactory),s.ɵɵinject(g.ImageService),s.ɵɵinject("IV"),s.ɵɵinject(m.LocationMarkerLayerFactory),s.ɵɵinject(v.NavGraphLayerFactory),s.ɵɵinject("PolygonLayerFactory"),s.ɵɵinject(y.PoiLayerFactory),s.ɵɵinject(b.PoiService),s.ɵɵinject(w.RaycastService),s.ɵɵinject(S.RouteLayerFactory),s.ɵɵinject(x.UrlService),s.ɵɵinject(M.ViewMenuService),s.ɵɵinject(E.ConfigService),s.ɵɵinject("PointCloudMenuService"),s.ɵɵinject(C.MapLayerFactory),s.ɵɵinject(A.SiteModelLayerFactory),s.ɵɵinject("hotkeys"),s.ɵɵinject("gettext"),s.ɵɵinject(T.FloorChangerService),s.ɵɵinject(O.CameraFOVLayerFactory),s.ɵɵinject(_.ErrorService),s.ɵɵinject(P.ModeService),s.ɵɵinject(I.SiteModelRepository),s.ɵɵinject(k.ProgressReportService),s.ɵɵinject(D.CursorService),s.ɵɵinject(s.SystemJsNgModuleLoader),s.ɵɵinject(R.DownloadPointCloudService),s.ɵɵinject(L.TrackingService),s.ɵɵinject(N.TiledMapRepository),s.ɵɵinject("gettextCatalog"),s.ɵɵinject(j.UserService),s.ɵɵinject(V.DatasetRepository),s.ɵɵinject(F.SiteModelService),s.ɵɵinject(s.Injector))},t.ɵprov=s.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.MainViewService=U,s.ɵsetClassMetadata(U,[{type:a.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:c.ViewService},{type:l.AlignmentHelpersFactory},{type:u.IvCameraImageLayerFactory},{type:d.VolumeClippingLayerFactory},{type:p.MeasurementsLayerFactory},{type:h.MagnificationLayerFactory},{type:f.CursorLayerFactory},{type:g.ImageService},{type:void 0,decorators:[{type:a.Inject,args:["IV"]}]},{type:m.LocationMarkerLayerFactory},{type:v.NavGraphLayerFactory},{type:void 0,decorators:[{type:a.Inject,args:["PolygonLayerFactory"]}]},{type:y.PoiLayerFactory},{type:b.PoiService},{type:w.RaycastService},{type:S.RouteLayerFactory},{type:x.UrlService},{type:M.ViewMenuService},{type:E.ConfigService},{type:void 0,decorators:[{type:a.Inject,args:["PointCloudMenuService"]}]},{type:C.MapLayerFactory},{type:A.SiteModelLayerFactory},{type:void 0,decorators:[{type:a.Inject,args:["hotkeys"]}]},{type:void 0,decorators:[{type:a.Inject,args:["gettext"]}]},{type:T.FloorChangerService},{type:O.CameraFOVLayerFactory},{type:_.ErrorService},{type:P.ModeService},{type:I.SiteModelRepository},{type:k.ProgressReportService},{type:D.CursorService},{type:s.SystemJsNgModuleLoader},{type:R.DownloadPointCloudService},{type:L.TrackingService},{type:N.TiledMapRepository},{type:void 0,decorators:[{type:a.Inject,args:["gettextCatalog"]}]},{type:j.UserService},{type:V.DatasetRepository},{type:F.SiteModelService},{type:s.Injector}]},null),i.module("IVWebApp").service("MainViewService",o.downgradeInjectable(U))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i,r,o,a,s,c,l,u=n(2),d=(n(14),n(152)),p=(n(15),n(54),n(25)),h=n(92),f=(n(17),n(39),n(20)),g=n(8),m=n(6),v=n(0),y=n(0),b=n(17),w=n(39),S=n(15),x=n(54),M=n(14);!function(t){t.LOCATION="location",t.POI="poi",t.FLOOR="floor",t.SEARCH="search",t.SCENE="scene",t.ROUTE="route"}(i||(i={})),(r||(r={})).CHANGE="change",function(t){t.SELECTED="selected",t.CLOSED="closed"}(o||(o={})),(a||(a={})).CHANGE="change",(s||(s={})).HIDERESULTS="hideResults",function(t){t.ZOOMED="zoomed",t.CLICK_ON_MAP="clickOnMap",t.MAP_DRAGGED="mapDragged"}(c||(c={})),function(t){t.ROUTE_REVERSED="routeReversed",t.ROUTE_MENU_CLOSED="routeMenuClosed",t.ROUTE_INITIATED="routeInitiated"}(l||(l={}));var E=function(){function t(t,e,n,i,r){this.ViewService=t,this.PoiService=e,this.ConfigService=n,this.LicenseService=i,this.GeoTransformationService=r,this.searchResults=0,this.previousSearch=""}return t.prototype.setupTrackingScript=function(){var t=this;return Promise.all([this.ConfigService.initialized,this.LicenseService.initialized]).then(function(){var e=!0,n=t.ConfigService.getLicensableConfigFeature(p.Configs.TRACKING_ENABLED);if(n&&(e=t.LicenseService.isFeatureEnabled(n)),!e||!t.ConfigService.getBoolean(p.Configs.TRACKING_ENABLED,!1))return Promise.reject("");var i=t.ConfigService.getString(p.Configs.TRACKING_CODE,void 0);return f.isBlank(i)?(console.warn("Tracking has been enabled but no tracking code has been set. No events will be logged."),Promise.reject("")):(-1===i.indexOf("<script")&&(i='<script type="text/javascript">'+i+"<\/script>"),u.element("head").append(i),Promise.resolve())}).catch(g.handleWarning)},t.prototype.isPiwikTrackingUpAndRunning=function(){return this.LicenseService.isFeatureEnabled(h.LicenseFeatureType.ANALYST)&&this.ConfigService.getBoolean(p.Configs.TRACKING_ENABLED,!1)&&void 0!==window._paq&&void 0!==window.Piwik},t.prototype.trackImageTransition=function(t,e,n){this.trackEvent(i.LOCATION,r.CHANGE,t+";"+e,n)},t.prototype.trackPoiOpen=function(t){this.trackEvent(i.POI,o.SELECTED,t.id+";"+t.title)},t.prototype.trackPoiClose=function(t){this.trackEvent(i.POI,o.CLOSED,t.id+";"+t.title)},t.prototype.trackPoiSearchResults=function(t,e,n){var i=e?e.toLowerCase():"";this.isPiwikTrackingUpAndRunning()&&Piwik.getAsyncTracker().trackSiteSearch(i,t,n)},t.prototype.trackHideResults=function(){this.trackEvent(i.SEARCH,s.HIDERESULTS,this.previousSearch,this.searchResults)},t.prototype.trackZoom=function(t){var e=t?"zoomIn":"zoomOut";this.trackEvent(i.SCENE,c.ZOOMED,e)},t.prototype.trackReverseRoute=function(t,e){var n=void 0===t?"undefined":t.id,r=void 0===t?"undefined":t.title,o=void 0===e?"undefined":e.id,a=void 0===e?"undefined":e.title;this.trackEvent(i.ROUTE,l.ROUTE_REVERSED,"New route is from ("+n+": "+r+") to ("+o+": "+a+")")},t.prototype.trackCloseRouteMenu=function(){this.trackEvent(i.ROUTE,l.ROUTE_MENU_CLOSED,"exitedRoute")},t.prototype.trackRouteInitiation=function(t){this.trackEvent(i.ROUTE,l.ROUTE_INITIATED,"destination: "+String(t.title),t.id)},t.prototype.trackFloorChange=function(t,e,n,r){if(void 0!==t&&void 0!==e){var o;t.length>0&&e.length>0&&(o=t[0].zMin-e[0].zMin);var s=0,c="";o>0?(s=-1,c="down"):o<0?(s=1,c="up"):(s=0,c="samelevel"),this.trackEvent(i.FLOOR,a.CHANGE,n+" to "+r+" ("+c+")",s)}},t.prototype.trackDragging=function(t,e){if(e){var n=this.GeoTransformationService.vectorToGlobal(e).toArray();this.trackEvent(i.SCENE,c.MAP_DRAGGED,t+", Camera: ("+n+")")}},t.prototype.trackMapClick=function(t){if(t){var e=this.GeoTransformationService.vectorToGlobal(t).toArray();this.trackEvent(i.SCENE,c.CLICK_ON_MAP,"clicked at: ("+e+")")}},t.prototype.trackEvent=function(t,e,n,i){this.isPiwikTrackingUpAndRunning()&&(n=n+";"+d.getBaseUrl(),_paq.push(["trackEvent",t,e,n,i]))},t.ɵfac=function(e){return new(e||t)(y.ɵɵinject(b.ViewService),y.ɵɵinject(w.PoiService),y.ɵɵinject(S.ConfigService),y.ɵɵinject(x.LicenseService),y.ɵɵinject(M.GeoTransformationService))},t.ɵprov=y.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.PiwikService=E,y.ɵsetClassMetadata(E,[{type:v.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:b.ViewService},{type:w.PoiService},{type:S.ConfigService},{type:x.LicenseService},{type:M.GeoTransformationService}]},null),u.module("IVWebApp").service("PiwikService",m.downgradeInjectable(E))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=(n(50),n(70)),s=n(260),c=(n(9),n(22),n(135)),l=(n(123),n(6)),u=n(0),d=n(0),p=n(50),h=n(9),f=n(22),g=n(123),m=function(t){function e(e,n,i,r){var o=t.call(this,s.PoiSearchEntity,n)||this;return o.LanguageService=e,o.RestService=n,o.path="search/poi",c.EntityRelationMapper.manyToOne(o,"siteModelEntity","siteModelEntityId",i),c.EntityRelationMapper.manyToOne(o,"poiType","poiTypeId",r),o}return r(e,t),e.prototype.search=function(t,e,n){var i=this;return void 0===n&&(n=0),this.RestService.getApi(this.path,{query:t,size:e,from:n,lang:this.LanguageService.getCurrentLanguage()},void 0,!1).then(function(t){return i.transformResponse(t)}).then(function(t){return i.emitCreatedEvent(t),t})},e.ɵfac=function(t){return new(t||e)(d.ɵɵinject(p.LanguageService),d.ɵɵinject(h.RestService),d.ɵɵinject(f.SiteModelRepository),d.ɵɵinject(g.PoiTypeRepository))},e.ɵprov=d.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(a.RestRepository);e.PoiSearchRepository=m,d.ɵsetClassMetadata(m,[{type:u.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:p.LanguageService},{type:h.RestService},{type:f.SiteModelRepository},{type:g.PoiTypeRepository}]},null),o.module("IVWebApp").service("PoiSearchRepository",l.downgradeInjectable(m))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.LOCATION="location",t.POI="poi",t.SME="sme",t.CUSTOM_LOCATION="custom-location"}(e.ShareType||(e.ShareType={}))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i,r=n(212),o=n(4),a=new o.Vector3;e.applyKeyboardInputToCamera=function(t,e){var n=(new Date).getTime(),s=n-(i||n);i=n;var c=e.matrix.elements,l=new o.Vector3(c[0],c[1],c[2]),u=new o.Vector3(c[4],c[5],c[6]),d=new o.Vector3(c[8],c[9],c[10]),p=1;e instanceof o.PerspectiveCamera?p=e.fov/1e3:e instanceof o.OrthographicCamera&&(p=(e.right-e.left)/300),t.isKeyPressed(r.KeyEvent.DOM_VK_SHIFT)&&(p*=5);var h=new o.Vector3(0,0,0),f=e instanceof o.PerspectiveCamera;t.isKeyPressed(r.KeyEvent.DOM_VK_A)&&h.sub(l),t.isKeyPressed(r.KeyEvent.DOM_VK_D)&&h.add(l),t.isKeyPressed(f?r.KeyEvent.DOM_VK_Q:r.KeyEvent.DOM_VK_W)&&h.add(u),t.isKeyPressed(f?r.KeyEvent.DOM_VK_E:r.KeyEvent.DOM_VK_S)&&h.sub(u),t.isKeyPressed(f?r.KeyEvent.DOM_VK_S:r.KeyEvent.DOM_VK_Q)&&h.add(d),t.isKeyPressed(f?r.KeyEvent.DOM_VK_W:r.KeyEvent.DOM_VK_E)&&h.sub(d);var g=h.lengthSq()>0;return g&&(a.lengthSq()>0&&(p*=s/16),h.setLength(p),e.position.add(h)),a=h,g}},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(80);n(83),n(199),n(199),n(22);var s=n(67),c=n(1121),l=n(1123),u=n(1124),d=n(101),p=n(24),h=n(4),f=n(546),g=n(52),m=n(55),v=n(6),y=n(0),b=n(0),w=n(22),S=n(83),x=n(199),M=n(24),E=function(t){function e(e,i,r,o){var a=t.call(this,e,i,r)||this;return a.params=r,a.factory=o,a.meshGroup=new h.Group,a.unselectedFloorMeshGroup=new h.Group,a.handleGroup=new h.Group,a.bottomLineGroup=new h.Group,a.verticalLineGroup=new h.Group,a.topLineGroup=new h.Group,a.snappingLineGroup=new h.Group,a.rectLineGroup=new h.Group,a.unselectedMeshGroup=new h.Group,a.unselectedMeshMap={},a.VERTICAL_LINE_MESH_NAME="vertical-line",a.TOP_LINE_MESH_NAME="top-line",a.BOTTOM_LINE_MESH_NAME="bottom-line",a.EXTRUDED_MESH_NAME="extruded",a.RECTLINE_MESH_NAME="rect-line",a.raycaster=new f.InvisibleRaycaster,a.handleGeometry=new h.CircleGeometry(2,16),a.gridTexture=d.getTextureLoader().load(n(1125),function(){return a.view.invalidateScene()}),a.config={materials:{BUILDING:new h.MeshLambertMaterial({color:812922,transparent:!0,opacity:.2,side:h.DoubleSide,depthWrite:!1,depthTest:!1}),FLOOR:new h.MeshLambertMaterial({color:11708469,transparent:!0,opacity:.2,side:h.DoubleSide,depthWrite:!1,depthTest:!1}),FREE_SPACE_NAVIGATION:new h.MeshLambertMaterial({color:92972,transparent:!0,opacity:.3,side:h.DoubleSide,depthWrite:!1,depthTest:!1}),ROOM:new h.MeshLambertMaterial({color:11025609,transparent:!0,opacity:.2,side:h.DoubleSide,depthWrite:!1,depthTest:!1}),CUSTOM:new h.MeshLambertMaterial({color:4385012,transparent:!0,opacity:.2,side:h.DoubleSide,depthWrite:!1,depthTest:!1})},highlightMaterials:{BUILDING:new h.MeshLambertMaterial({color:36582,transparent:!0,opacity:.3,side:h.DoubleSide,depthWrite:!1,depthTest:!1}),FLOOR:new h.MeshLambertMaterial({emissive:16707151,transparent:!0,opacity:1,side:h.DoubleSide,map:a.gridTexture,depthWrite:!1,depthTest:!1}),FREE_SPACE_NAVIGATION:new h.MeshLambertMaterial({color:51283,transparent:!0,opacity:.3,side:h.DoubleSide,depthWrite:!1,depthTest:!1}),ROOM:new h.MeshLambertMaterial({emissive:11025609,transparent:!0,opacity:1,side:h.DoubleSide,map:a.gridTexture,depthWrite:!1,depthTest:!1}),CUSTOM:new h.MeshLambertMaterial({emissive:4385012,transparent:!0,opacity:1,side:h.DoubleSide,map:a.gridTexture,depthWrite:!1,depthTest:!1})},handleMaterial:new h.MeshBasicMaterial({color:16777215,transparent:!0,opacity:.6,side:h.DoubleSide,depthWrite:!1,depthTest:!1}),selectedHandleMaterial:new h.MeshBasicMaterial({color:16777215,transparent:!0,opacity:1,side:h.DoubleSide,depthWrite:!1,depthTest:!0}),virtualHandleMaterial:new h.MeshBasicMaterial({color:16777215,transparent:!0,opacity:.3,side:h.DoubleSide,depthWrite:!1,depthTest:!1}),snappedHandleMaterial:new h.MeshBasicMaterial({color:3193468,transparent:!0,opacity:.9,side:h.DoubleSide,depthWrite:!1,depthTest:!1}),edgeMaterial:new h.LineBasicMaterial({color:16777215,transparent:!0,opacity:1,side:h.DoubleSide,depthWrite:!1,depthTest:!0}),rectLineMaterial:new h.LineBasicMaterial({color:4385012,transparent:!0,opacity:1,side:h.DoubleSide,depthWrite:!1,depthTest:!0})},a.siteModel=o.SiteModelRepository.data,a.sceneGroup.name="SiteModelLayer",a.gridTexture.wrapS=a.gridTexture.wrapT=h.RepeatWrapping,a.sceneGroup.add(a.meshGroup),a.sceneGroup.add(a.unselectedFloorMeshGroup),a.sceneGroup.add(a.handleGroup),a.sceneGroup.add(a.bottomLineGroup),a.sceneGroup.add(a.verticalLineGroup),a.sceneGroup.add(a.topLineGroup),a.sceneGroup.add(a.snappingLineGroup),a.sceneGroup.add(a.unselectedMeshGroup),a.sceneGroup.add(a.rectLineGroup),a.trackSignal(a.factory.ModeService.modeChanged).connect(function(t){t===p.ModeState.SITE_MODEL_EDITOR?a.factory.SiteModelRepository.initialized.then(function(){return a.createSite()}).catch(function(){}):a.clearGroups(!0)}),a.trackSignal(a.factory.SiteModelRepository.transformLocationAction).connect(function(){return a.redraw(!0)}),a.trackSignal(a.factory.SiteModelEditorService.redrawSiteModel).connect(function(t){return a.redraw(t)}),a.trackSignal(a.factory.SiteModelService.onSelect).connect(function(t,e,n){e&&a.resetUnselectedMeshes()}),a.siteModelSnapper=new u.SiteModelSnapper(a.factory,a.view,a.raycaster,a.rectLineGroup,a.snappingLineGroup,a.BOTTOM_LINE_MESH_NAME,a.RECTLINE_MESH_NAME),a}return r(e,t),e.prototype.redraw=function(t){this.factory.ModeService.isSiteModelEditorMode()&&this.createSite(t)},e.prototype.createSite=function(t){void 0===t&&(t=!1),this.clearGroups(t),this.factory.SiteModelEditorService.rectangleSnapping&&this.addRectLineHelpers();for(var e=0,n=this.siteModel;e<n.length;e++){var i=n[e];this.initSiteModelEntity(i)}0===this.siteModel.length&&this.view.invalidateScene()},e.prototype.clearGroups=function(t){void 0===t&&(t=!1),this.clearGroup(this.meshGroup,!0),this.clearGroup(this.bottomLineGroup,!0),this.clearGroup(this.verticalLineGroup,!0),this.clearGroup(this.topLineGroup,!0),this.clearGroup(this.snappingLineGroup,!0),this.clearGroup(this.handleGroup,!1),this.clearGroup(this.rectLineGroup,!0),t&&this.resetUnselectedMeshes()},e.prototype.clearGroup=function(t,e){if(e)for(var n=0,i=t.children;n<i.length;n++)i[n].geometry.dispose();t.children.length=0},e.prototype.resetUnselectedMeshes=function(){this.clearGroup(this.unselectedFloorMeshGroup,!0),this.clearGroup(this.unselectedMeshGroup,!0),this.unselectedMeshMap={}},e.prototype.initSiteModelEntity=function(t){var e=t.getPath(),n=t.getHoles();if(e&&e.length){this.createMesh(t,e,n),this.createHandles(t,e,n),this.createEdges(t,e,n);for(var i=0,r=t.children;i<r.length;i++){var o=r[i];this.initSiteModelEntity(o)}this.view.invalidateScene()}},e.prototype.createMesh=function(t,e,n){if((!0!==this.unselectedMeshMap[t.hashKey+this.EXTRUDED_MESH_NAME]||this.anyChildrenSelected(t))&&!(e.length<3)){var i=new c.SiteModelEntityMesh(this.factory,this.config,t,e,n,this.EXTRUDED_MESH_NAME);this.addMeshToGroup(this.meshGroup,i,t)}},e.prototype.createHandles=function(t,e,n){if(t.selected&&!t.inherited){this.createHandlesFromPoints(e,t);for(var i=0,r=n;i<r.length;i++){var o=r[i];this.createHandlesFromPoints(o,t)}}},e.prototype.createHandlesFromPoints=function(t,e){var n,i=this;o.forEach(t,function(r,o){0!==o||e.drawing?(i.createHandle(r,t,e,o),i.createVirtualHandle(r,n,t,e,o),n=r):n=r})},e.prototype.createHandle=function(t,e,n,i){var r=new l.SiteModelHandleMesh(this.factory,this.config,t,e,n,i,this.handleGeometry,this.siteModelSnapper);this.handleGroup.add(r)},e.prototype.createVirtualHandle=function(t,e,n,i,r){if(!i.drawing&&e){var o=(new h.Vector2).addVectors(e,t).divideScalar(2);o.virtual_=!0,this.createHandle(o,n,i,r)}},e.prototype.createEdges=function(t,e,n){this.createEdge(e,t);for(var i=0,r=n;i<r.length;i++){var o=r[i];o.length>1&&this.createEdge(o,t)}},e.prototype.createEdge=function(t,e){if(t){for(var n=t,i=!!(n.drawing||n.dragging||e.selected||e.parent&&e.parent.selected),r=new h.Geometry,o=0,a=n;o<a.length;o++){var s=a[o];r.vertices.push(new h.Vector3(s.x,s.y,void 0===e.zMin&&e.children[0]?e.children[0].zMin:e.zMin))}var c=new h.Line(r,this.config.edgeMaterial);if(c.renderOrder=6,c.visible=i,c.name=this.BOTTOM_LINE_MESH_NAME,(n.drawing||n.dragging)&&(c.userData.raycastable=!1),this.addMeshToGroup(this.bottomLineGroup,c,e),(!0!==this.unselectedMeshMap[e.hashKey+this.VERTICAL_LINE_MESH_NAME]||!0!==this.unselectedMeshMap[e.hashKey+this.TOP_LINE_MESH_NAME])&&e.zMax){for(var l=new h.Geometry,u=new h.Geometry,d=0,p=n;d<p.length;d++)s=p[d],l.vertices.push(new h.Vector3(s.x,s.y,e.zMax)),u.vertices.push(new h.Vector3(s.x,s.y,e.zMin)),u.vertices.push(new h.Vector3(s.x,s.y,e.zMax));var f=new h.LineSegments(u,this.config.edgeMaterial);f.renderOrder=6,f.visible=i,f.name=this.VERTICAL_LINE_MESH_NAME,this.addMeshToGroup(this.verticalLineGroup,f,e);var g=new h.Line(l,this.config.edgeMaterial);g.renderOrder=6,g.visible=i,g.name=this.TOP_LINE_MESH_NAME,this.addMeshToGroup(this.topLineGroup,g,e)}}},e.prototype.addMeshToGroup=function(t,e,n){n.hashKey?e.name===this.BOTTOM_LINE_MESH_NAME&&this.isSnappingCandidate(n)?(this.unselectedMeshMap[""+n.hashKey.toString()+e.name]=!1,this.snappingLineGroup.add(e)):n.selected||n.type===m.SiteModelType.FLOOR&&this.factory.SiteModelEditorService.isDraggingHeight?(this.unselectedMeshMap[""+n.hashKey.toString()+e.name]=!1,t.add(e)):this.unselectedMeshMap[""+n.hashKey.toString()+e.name]||(this.unselectedMeshMap[""+n.hashKey.toString()+e.name]=!0,(n.type!==m.SiteModelType.FLOOR||this.anyChildrenSelected(n))&&(n.type!==m.SiteModelType.CUSTOM&&n.type!==m.SiteModelType.FLOOR||this.anySiblingsSelected(n)||this.anyChildrenSelected(n))?this.unselectedMeshGroup.add(e):this.unselectedFloorMeshGroup.add(e)):t.add(e)},e.prototype.isSnappingCandidate=function(t){var e=this.factory.SiteModelEditorService.lastSelectedEntity;if(this.factory.SiteModelEditorService.isCuttingMode()){if(e===t)return!0}else if(this.factory.SiteModelEditorService.isDrawingMode()||this.factory.SiteModelEditorService.isDragging){if(e.parent===t)return!0;if(e.type===t.type&&e.parent===t.parent)return!0;if(e.type===m.SiteModelType.BUILDING&&t.type===m.SiteModelType.FREE_SPACE_NAVIGATION)return!0;if(e.type===m.SiteModelType.FREE_SPACE_NAVIGATION&&t.type===m.SiteModelType.BUILDING)return!0}return!1},e.prototype.anyChildrenSelected=function(t){return t.children.some(function(t){return t.selected})},e.prototype.anySiblingsSelected=function(t){return!!t.parent&&this.anyChildrenSelected(t.parent)},e.prototype.addRectLineHelpers=function(){var t=this.factory.SiteModelEditorService.getRectLineGeometries();if(this.clearGroup(this.rectLineGroup,!0),t)for(var e=0,n=t;e<n.length;e++){var i=n[e],r=new h.Line(i,this.config.rectLineMaterial);r.name=this.RECTLINE_MESH_NAME,this.rectLineGroup.add(r)}},e.prototype.onBeforeRenderViewport=function(t){if(this.factory.ModeService.isSiteModelEditorMode())if(t.name===g.SplitViewportName.TOP_VIEW){this.unselectedFloorMeshGroup.visible=!1;for(var n=0,i=this.handleGroup.children;n<i.length;n++){var r=i[n];s.setMeshScreenSize(t,r,e.HANDLERS_PIXEL_SIZE)}this.handleGroup.visible=!0}else this.handleGroup.visible=!1,this.unselectedFloorMeshGroup.visible=!0},e.prototype.onBeforeRender=function(){this.sceneGroup.visible=this.sceneGroup.userData.raycastable=this.factory.ModeService.isSiteModelEditorMode()},e.prototype.onClick=function(t){var e=this.view.getViewport(t.x,t.y);if(this.factory.ModeService.isSiteModelEditorMode()&&e.name===g.SplitViewportName.TOP_VIEW&&this.factory.SiteModelEditorService.isDrawingMode()){var n=this.siteModelSnapper.getLocation(t,e);return n&&this.factory.SiteModelEditorService.addPointToCurrentEntity(new h.Vector2(n.x,n.y),!1),!0}return!1},e.prototype.onDoubleClick=function(t){var e=this.view.getViewport(t.x,t.y);return!(!this.factory.ModeService.isSiteModelEditorMode()||e.name!==g.SplitViewportName.TOP_VIEW||!this.factory.SiteModelEditorService.isDrawingMode()||(this.factory.SiteModelEditorService.cancelDrawingMode(),0))},e.prototype.onMouseMove=function(t){var e=this.view.getViewport(t.x,t.y);if(this.factory.ModeService.isSiteModelEditorMode()&&e.name===g.SplitViewportName.TOP_VIEW&&this.factory.SiteModelEditorService.isDrawingMode()){var n=this.siteModelSnapper.getLocation(t,e);n&&this.factory.SiteModelEditorService.addPointToCurrentEntity(new h.Vector2(n.x,n.y),!0)}!this.factory.ModeService.isSiteModelEditorMode()||"row-resize"!==document.body.style.cursor&&"move"!==document.body.style.cursor||(document.body.style.cursor="default")},e.HANDLERS_PIXEL_SIZE=16,e}(a.SceneLayer);e.SiteModelLayer=E;var C=function(t){function e(e,n,i,r,o){var a=t.call(this)||this;return a.SiteModelRepository=e,a.SiteModelService=n,a.SiteModelEditorService=i,a.gettextCatalog=r,a.ModeService=o,a}return r(e,t),e.prototype.create=function(t,e,n){return new E(t,e,n,this)},e.ɵfac=function(t){return new(t||e)(b.ɵɵinject(w.SiteModelRepository),b.ɵɵinject(S.SiteModelService),b.ɵɵinject(x.SiteModelEditorService),b.ɵɵinject("gettextCatalog"),b.ɵɵinject(M.ModeService))},e.ɵprov=b.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(a.SceneLayerFactory);e.SiteModelLayerFactory=C,b.ɵsetClassMetadata(C,[{type:y.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:w.SiteModelRepository},{type:S.SiteModelService},{type:x.SiteModelEditorService},{type:void 0,decorators:[{type:y.Inject,args:["gettextCatalog"]}]},{type:M.ModeService}]},null),o.module("IVWebApp").service("SiteModelLayerFactory",v.downgradeInjectable(C))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(16),r=function(){function t(t,e,n){this.view=t,this.scene=e,this.sceneGroup=this.view.createSceneGroup(),this._visible=!1,this.signalConnections=new i.SignalConnections,this.visible=!n||void 0===n.visible||!!n.visible}return t.prototype.onDestroy=function(){this.signalConnections.disconnectAll(),this.scene.remove(this.sceneGroup),this.sceneGroup=void 0},t.prototype.onBeforeRender=function(t){},t.prototype.onBeforeRenderViewport=function(t){this.sceneGroup.visible=this.isVisibleInViewport(t);var e=!0;this.targetViewport&&(e=this.targetViewport===t),this.sceneGroup.userData.raycastable=e},t.prototype.onAfterRender=function(t){},t.prototype.onAfterRenderViewport=function(t){},t.prototype.onTransitionStart=function(t){},t.prototype.onTransitionEnd=function(t){},t.prototype.onCameraMoveEnd=function(t){},t.prototype.onViewportCameraMoveEnd=function(t,e){},t.prototype.onKeyDown=function(t){return!1},t.prototype.onKeyUp=function(t){return!1},t.prototype.onClick=function(t,e){return!1},t.prototype.onDoubleClick=function(t){return!1},t.prototype.onHold=function(t){return!1},t.prototype.onMouseMove=function(t){},t.prototype.onMouseWheel=function(t,e){return!1},t.prototype.onContextMenu=function(t){},t.prototype.isVisibleInViewport=function(t){return this._visible&&(!this._targetViewport||this._targetViewport===t)},t.prototype.trackSignal=function(t){var e=this;return{connect:function(n,i){var r=t.connect(n,i);return e.signalConnections.add(r),r}}},Object.defineProperty(t.prototype,"targetViewport",{get:function(){return this._targetViewport},set:function(t){this._targetViewport=t,this.view.invalidateScene()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"visible",{get:function(){return this._visible},set:function(t){if(t&&!this._visible)this.scene.add(this.sceneGroup);else{if(t||!this._visible)return;this.scene.remove(this.sceneGroup)}this._visible=t,this.visibilityChanged(),this.view.invalidateScene()},enumerable:!0,configurable:!0}),t.prototype.getActiveViewport=function(){return this._targetViewport||this.view.getDefaultViewport()},t.prototype.visibilityChanged=function(){},t.ORTHO_DEBOUNCE=1e3,t}();e.AbstractSceneLayer=r},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);e.showDeleteConfirmationModal=function(t,e,n){var r=i.element(t),o=r.scope();o.onConfirmCallback=e,n&&r.find("div.modal-body > ng-transclude > span").text(n),o.$apply(),r.modal("show")}},function(t,e,n){"use strict";var i=this&&this.__spreadArrays||function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var i=Array(t),r=0;for(e=0;e<n;e++)for(var o=arguments[e],a=0,s=o.length;a<s;a++,r++)i[r]=o[a];return i};Object.defineProperty(e,"__esModule",{value:!0}),n(1133),n(1134);var r=n(551),o=n(537),a=n(215),s=n(552),c=n(7),l=n(349),u=n(553),d=n(124),p=n(40),h=n(1136),f=n(4),g=n(546),m=n(1137),v=n(52),y=n(1138),b=n(1139),w=n(16),S=n(264),x=function(){function t(t){var e=this;this.layers=[],this.renderStats=new m.RenderStats,this.raycaster=new g.InvisibleRaycaster,this.viewports=[],this.currentViewportMode=v.SplitViewportMode.FULLSCREEN,this.screenshotModeToggled=new w.Signal,this.overlayCamera=new f.OrthographicCamera(0,0,1,1),this.overlayVector=new f.Vector3,this.lightCount=0,this._active=!0,this.renderRequested=!1,this.watchedTweens=[],this.afterRenderCallbacks=[],this.sectionTimer=new h.NoOpSectionTimer,this.lastKnownViewportCameraPositionMap=new Map,this.viewportCameraPanEndTimer=new Map,this.positionTween=void 0,this.zoomTween=void 0,this._enableOffscreenRendering=!1,this.timelineEvent=function(){},this.divContainer=new s.HTMLContainer(t);var n=this.divContainer.getCurrentWidth(),i=this.divContainer.getCurrentHeight();this.baseRenderer=this.createRenderer(n,i),this.baseDivContainer=this.divContainer,this.renderer=this.baseRenderer,this.divContainer.appendChild(this.renderer.domElement),this.scene=new f.Scene,this.underlayScene=new f.Scene,this.overlayScene=new f.Scene,this.scene.matrixAutoUpdate=!1,this.underlayScene.matrixAutoUpdate=!1,this.overlayScene.matrixAutoUpdate=!1;var r=[this.createDirectionalLight(1,0,.5,"light1"),this.createDirectionalLight(-.7,.7,.5,"light2"),this.createDirectionalLight(-.7,-.7,-.5,"light3")];this.lightCount=r.length;for(var o=0,c=r;o<c.length;o++){var u=c[o];this.scene.add(u),this.underlayScene.add(u.clone()),this.overlayScene.add(u.clone())}a.addResizeEventListener(this.divContainer.container,function(){return e.onResize()}),this.inputHandler=new l.InputHandler(this,function(t,n,i){return e.onZoomView(t,n,i)},function(t){return e.onDragViewStart(t)},function(t,n,i){return e.onDragView(t,n,i)},function(t){return e.onDragViewEnd(t)},function(){return e.onSustainedDragViewEnd()},function(t){return e.onKeyDown(t)},function(t){return e.onKeyUp(t)}),this.raycaster.params.Line.threshold=.01}return t.prototype.createRenderer=function(t,e){try{var n=new f.WebGLRenderer({preserveDrawingBuffer:!0,alpha:!0,antialias:!0});return n.autoClear=!1,n.setSize(t,e),n.sortObjects=!0,n}catch(t){throw new o.WebGlFailedException}},t.prototype.enableScreenshotMode=function(){this.screenshotRenderer||(this.screenshotDivContainer=new b.ScreenshotCanvasHtmlContainer,this.screenshotRenderer=this.createRenderer(this.screenshotDivContainer.getCurrentWidth(),this.screenshotDivContainer.getCurrentHeight()),this.screenshotDivContainer.appendChild(this.screenshotRenderer.domElement)),this.renderer=this.screenshotRenderer,this.divContainer=this.screenshotDivContainer,this.updateViewportsContainer(),this.screenshotModeToggled.emit(!0)},t.prototype.disableScreenshotMode=function(){this.renderer=this.baseRenderer,this.divContainer=this.baseDivContainer,this.updateViewportsContainer(),this.screenshotModeToggled.emit(!1)},t.prototype.isInScreenshotMode=function(){return this.renderer===this.screenshotRenderer},t.prototype.destroy=function(){for(var t=function(t){u.swallowExceptions(function(){return t.onDestroy()})},e=0,n=this.layers;e<n.length;e++)t(n[e]);this.inputHandler.destroy(),this.sectionTimerConsoleControl&&this.sectionTimerConsoleControl.dispose(),this.renderer&&this.renderer.dispose()},t.prototype.addToScene=function(t){this.layers.push(t)},t.prototype.removeFromScene=function(t){c.remove(this.layers,t)},t.prototype.getLayer=function(t){console.warn('Deprecated usage of "getLayer", use layer specific methods on the views instead. ');for(var e=0,n=this.layers;e<n.length;e++){var i=n[e];if(i instanceof t)return i}},t.prototype.getImage=function(){return this.currentImage},t.prototype.invalidateScene=function(t){var e=this;t&&this.afterRenderCallbacks.push(t),!this.renderRequested&&this._active&&(this.renderRequested=!0,requestAnimationFrame(function(){return e.renderFrame()}))},t.prototype.watchTween=function(t){this.watchedTweens.push(t),this.invalidateScene()},t.prototype.forgetTween=function(t){var e=this.watchedTweens.indexOf(t);e<0?console.error("Trying to remove non-existing tween"):(this.watchedTweens.splice(e,1),this.invalidateScene())},t.prototype.closeContextMenu=function(){this.inputHandler.closeContextMenu()},t.prototype.getViewport=function(t,e){return c.find(this.viewports,function(n){return n.contains(t,e)})||this.getDefaultViewport()},t.prototype.getViewportByName=function(t){return c.find(this.viewports,function(e){return e.info.name===t})},t.prototype.getDefaultViewport=function(){return this.viewports[0]},t.prototype.setViewportFullscreen=function(t,e){if(!(this.fullscreenViewport===t&&e||this.fullscreenViewport!==t&&!e)){this.fullscreenViewport&&(this.fullscreenViewport.left=this.fullscreenViewportSavedDimensions.left,this.fullscreenViewport.bottom=this.fullscreenViewportSavedDimensions.bottom,this.fullscreenViewport.width=this.fullscreenViewportSavedDimensions.width,this.fullscreenViewport.height=this.fullscreenViewportSavedDimensions.height),e?(this.fullscreenViewport=t,this.fullscreenViewportSavedDimensions={left:t.left,bottom:t.bottom,width:t.width,height:t.height},t.left=t.bottom=0,t.width=t.height=1):this.fullscreenViewport=this.fullscreenViewportSavedDimensions=void 0;for(var n=0,i=this.viewports;n<i.length;n++){var r=i[n];r.active=!e||r===t}this.invalidateScene()}},t.prototype.getViewportFullscreen=function(t){return this.fullscreenViewport===t},t.prototype.toggleViewportFullscreen=function(t){this.setViewportFullscreen(t,!this.getViewportFullscreen(t))},t.prototype.unsetFullscreenViewport=function(){this.fullscreenViewport&&this.setViewportFullscreen(this.fullscreenViewport,!1)},t.prototype.areMultipleViewportsActive=function(){return c.sumBy(this.viewports,function(t){return t.active?1:0})>1},t.prototype.isInTwoViewportMode=function(){return this.currentViewportMode===v.SplitViewportMode.TWO_VIEWPORTS},t.prototype.isInFourViewportMode=function(){return this.currentViewportMode===v.SplitViewportMode.FOUR_VIEWPORTS},t.prototype.centerOn=function(t,e){this.viewports.forEach(function(n){return n.cameraController.centerOn(t,e)}),this.invalidateScene()},Object.defineProperty(t.prototype,"active",{get:function(){return this._active},set:function(t){this._active=t,t&&this.invalidateScene()},enumerable:!0,configurable:!0}),t.prototype.unprojectScreenCoordinates=function(t,e,n,i){return i||(i=this.getViewport(t,e)),i.unprojectScreenCoordinates(t,e,n)},t.prototype.unprojectEvent=function(t,e){var n=r.getEventPosition(t);return this.unprojectScreenCoordinates(n.x,n.y,void 0===e?1:e)},t.prototype.getObjectsUnderCursor=function(t){var e=this.getViewport(t.x,t.y),n=e.camera;if(n instanceof f.OrthographicCamera&&n.right-n.left==0)return[];this.beforeRenderViewport(e);var r=e.normalizeCoordinates(t.x,t.y,0);this.raycaster.setFromCamera(r,n);var o=i(this.raycaster.intersectObjects(this.underlayScene.children,!0,void 0,!1),this.raycaster.intersectObjects(this.scene.children,!0,void 0,!1),this.raycaster.intersectObjects(this.overlayScene.children,!0,void 0,!1));return o.sort(function(t,e){return t.object.userData.is2D&&e.object.userData.is2D&&t.object.renderOrder!==e.object.renderOrder?e.object.renderOrder-t.object.renderOrder:t.object.userData.is2D&&!e.object.userData.is2D?-1:e.object.userData.is2D&&!t.object.userData.is2D?1:t.distance-e.distance<.001?t.object.position.distanceTo(n.position)-e.object.position.distanceTo(n.position):t.distance-e.distance}),c.uniqBy(o,function(t){return t.object.uuid})},t.prototype.getPositionOnGroundPlane=function(t,e,n,i){i||(i=this.getViewport(t,e)),void 0===n&&(n=i.camera.getWorldDirection(new f.Vector3).add(i.camera.position).z);var r=i.normalizeCoordinates(t,e,0);this.raycaster.setFromCamera(r,i.camera);var o=new f.Plane(new f.Vector3(0,0,1),-n),a=new f.Vector3;return this.raycaster.ray.intersectPlane(o,a)},t.prototype.getLastMousePosition=function(){return this.inputHandler.getLastMousePosition()},t.prototype.createSceneGroup=function(){return new f.Object3D},t.prototype.getCamera=function(){return this.getDefaultViewport().camera},t.prototype.getScreenshot=function(t,e){void 0===t&&(t="image/jpeg"),void 0===e&&(e=void 0);var n=this.renderer.domElement;return{data:n.toDataURL(t,e),height:n.clientHeight,width:n.clientWidth}},Object.defineProperty(t.prototype,"enableOffscreenRendering",{set:function(t){this._enableOffscreenRendering=t,t?this.overlayScene.userData.offscreenRenderOutput=new y.OffscreenRenderOutput:(delete this.overlayScene.userData.offscreenRenderOutput,this.offscreenRenderTarget&&(this.offscreenRenderTarget.dispose(),this.offscreenRenderTarget=void 0))},enumerable:!0,configurable:!0}),t.prototype.tweenViewPosition=function(e,n,i){var r=this,o=i&&i.duration?i.duration:t.DEFAULT_DURATION;this.positionTween&&(this.positionTween.stop(),this.forgetTween(this.positionTween)),this.positionTween=new d.Tween(e.camera.position).to({x:n.x,y:n.y},o).easing(function(t){return i&&i.easing?i.easing(t):d.Easing.Linear.None(t)}).onComplete(function(){r.forgetTween(r.positionTween),r.positionTween=void 0}).start(),this.watchTween(this.positionTween)},t.prototype.tweenViewZoom=function(e,n,i,r){var o=this,a=r&&void 0!==r.duration?r.duration:t.ZOOM_MAP_DEFAULT_DURATION;this.zoomTween&&(this.zoomTween.stop(),this.forgetTween(this.zoomTween),this.zoomTween=void 0);var s=n||e.resolution*i;s=Math.min(S.PanningCameraController.RES_MAX,Math.max(e.resMin,s)),this.zoomTween=new d.Tween(e).to({resolution:s},a).easing(function(t){return r&&r.easing?r.easing(t):d.Easing.Linear.None(t)}).onComplete(function(){o.forgetTween(o.zoomTween),o.zoomTween=void 0,o.onZoomComplete()}).start(),this.watchTween(this.zoomTween)},t.prototype.onZoomComplete=function(){},t.prototype.render=function(){this.sectionTimer.time("render");var e=this.divContainer.getCurrentWidth(),n=this.divContainer.getCurrentHeight();this.renderer.setSize(e,n);for(var i=0,r=this.viewports;i<r.length;i++){var o=r[i];if(o.active){var a=Math.floor(e*o.left),s=Math.floor(n*o.bottom),c=Math.floor(e*o.width),l=Math.floor(n*o.height);this.renderer.setViewport(a,s,c,l),this.renderer.setScissor(a,s,c,l),this.renderer.setScissorTest(!0),this.renderer.setClearColor(o.bgColor,o.bgAlpha),this.renderer.clear(),this.renderStats.reset(),o.getCamera().updateMatrixWorld(!0),this.beforeRenderViewport(o);var u=o.camera;!(o.camera instanceof f.OrthographicCamera)||this.isSceneEmpty(this.underlayScene)&&this.isSceneEmpty(this.overlayScene)||(this.overlayCamera.copy(o.camera),this.configureOverlayCamera(this.overlayCamera,t.OVERLAY_FRUSTUM_DEPTH),u=this.overlayCamera),this._enableOffscreenRendering&&o.camera instanceof f.PerspectiveCamera&&this.renderOffscreen(e,n,c,l,o.camera),this.isSceneEmpty(this.underlayScene)||(this.renderer.render(this.underlayScene,u),this.renderStats.update(this.renderer)),this.isSceneEmpty(this.scene)||(this.twoPassRenderer?this.twoPassRenderer.render(this.scene,o.camera):this.renderer.render(this.scene,o.camera),this.renderStats.update(this.renderer)),this.isSceneEmpty(this.overlayScene)||(this.renderer.clearDepth(),this.renderer.render(this.overlayScene,u),this.renderStats.update(this.renderer)),this.afterRenderViewport(o)}}this.sectionTimer.timeEnd("render")},t.prototype.renderOffscreen=function(t,e,n,i,r){var o=this.renderer.getRenderTarget();!this.offscreenRenderTarget||this.offscreenRenderTarget.width===t&&this.offscreenRenderTarget.height===e||(this.offscreenRenderTarget.dispose(),this.offscreenRenderTarget=void 0),this.offscreenRenderTarget||(this.offscreenRenderTarget=this.createRenderTarget(n,i)),this.renderer.setRenderTarget(this.offscreenRenderTarget),this.renderer.clearDepth(),this.renderer.clearColor(),this.isSceneEmpty(this.underlayScene)||(this.renderer.render(this.underlayScene,r),this.renderStats.update(this.renderer)),this.isSceneEmpty(this.scene)||(this.renderer.render(this.scene,r),this.renderStats.update(this.renderer)),this.overlayScene.userData.offscreenRenderOutput.set(this.offscreenRenderTarget.depthTexture,this.offscreenRenderTarget.texture,n,i,t-n,e-i),this.renderer.setRenderTarget(o)},t.prototype.createRenderTarget=function(t,e){var n=new f.WebGLRenderTarget(t,e);return n.texture.format=f.RGBFormat,n.texture.minFilter=f.NearestFilter,n.texture.magFilter=f.NearestFilter,n.texture.generateMipmaps=!1,n.stencilBuffer=!1,n.depthBuffer=!0,n.depthTexture=new f.DepthTexture(t,e),n.depthTexture.type=f.UnsignedShortType,n},t.prototype.isSceneEmpty=function(t){return t.children.length<=this.lightCount},t.prototype.configureOverlayCamera=function(t,e){var n=e-t.far;t.far=e,t.updateProjectionMatrix();var i=this.overlayVector;t.getWorldDirection(i),t.position.addScaledVector(i,-n/2)},t.prototype.onBeforeRender=function(){},t.prototype.onBeforeRenderViewport=function(t){},t.prototype.onAfterRender=function(){},t.prototype.onAfterRenderViewport=function(t){},t.prototype.onClick=function(t){},t.prototype.onDoubleClick=function(t){},t.prototype.onHold=function(t){return!1},t.prototype.onKeyDown=function(t){return!1},t.prototype.onKeyUp=function(t){return!1},t.prototype.onKeyboardInputApplied=function(){},t.prototype.onDragViewStart=function(t){var e=this.getViewport(t.x,t.y).cameraController.dragStart(t);return e&&this.invalidateScene(),e},t.prototype.onDragView=function(t,e,n){this.getViewport(n.x,n.y).cameraController.drag(t,e,n),this.invalidateScene()},t.prototype.onDragViewEnd=function(t){return!t||this.getViewport(t.x,t.y).cameraController.dragEnd()},t.prototype.onSustainedDragViewEnd=function(){},t.prototype.onZoomView=function(t,e,n){this.getViewport(t.x,t.y).cameraController.zoomTo(t,e,n),this.invalidateScene()},t.prototype.onCameraMoveEnd=function(){return Promise.resolve()},t.prototype.onViewportCameraMoveEnd=function(t){return Promise.resolve()},t.prototype.createDirectionalLight=function(e,n,i,r){var o=new f.DirectionalLight(t.DIRECTIONAL_LIGHT_COLOR);return o.position.set(e,n,i).normalize(),o.name=r,o},t.prototype.updateViewportsContainer=function(){var t=this;this.viewports.forEach(function(e){e.container&&(e.container=t.divContainer)})},t.prototype.renderFrame=function(){if(this.timelineEvent("renderFrameStart"),this.renderRequested=!1,this.divContainer.getCurrentWidth()&&this.divContainer.getCurrentHeight()){this.sectionTimer.time("total"),this.watchedTweens.length>0&&this.invalidateScene(),d.update(),this.beforeRender();var t=this.renderRequested;this.render(),this.renderRequested&&!t&&console.warn("FIXME: scene has been invalidated during rendering, this breaks on-demand rendering!"),this.afterRender(),this.sectionTimer.timeEnd("total"),this.timelineEvent("renderFrameEnd")}else this.invalidateScene()},t.prototype.beforeRender=function(){this.sectionTimer.time("before"),this.onBeforeRender(),this.applyKeyboardInput(),this.updateCamera();for(var t=this.getCamera(),e=function(e){e.onBeforeRender&&u.swallowExceptions(function(){return e.onBeforeRender(t)})},n=0,i=this.layers;n<i.length;n++)e(i[n]);this.sectionTimer.timeEnd("before")},t.prototype.applyKeyboardInput=function(){var t=this.getLastMousePosition();this.getViewport(t.x,t.y).cameraController.applyKeyboardInput()&&(this.invalidateScene(),this.onKeyboardInputApplied())},t.prototype.updateCamera=function(){for(var t=0,e=this.viewports;t<e.length;t++){var n=e[t];n.active&&n.cameraController.updateCamera()}},t.prototype.beforeRenderViewport=function(t){this.onBeforeRenderViewport(t);for(var e=function(e){e.onBeforeRenderViewport&&u.swallowExceptions(function(){return e.onBeforeRenderViewport(t)})},n=0,i=this.layers;n<i.length;n++)e(i[n])},t.prototype.afterRender=function(){var e=this;this.sectionTimer.time("after");for(var n=this.getCamera(),r=function(t){t.onAfterRender&&u.swallowExceptions(function(){return t.onAfterRender(n)})},o=0,a=this.layers;o<a.length;o++)r(a[o]);this.onAfterRender(),p.isPlatform(p.Platform.IOS)&&this.inputHandler.keysPressed.clear(),this.hasCameraMoved(n)&&(this.cameraPanEndTimer&&window.clearTimeout(this.cameraPanEndTimer),this.cameraPanEndTimer=window.setTimeout(function(){return e.cameraMoveEnd()},t.REFRESH_DELAY),this.lastKnownCameraPosition=n.position.clone());var s=i(this.afterRenderCallbacks);this.afterRenderCallbacks.length=0;for(var c=0,l=s;c<l.length;c++){var d=l[c];u.swallowExceptions(d)}this.sectionTimer.timeEnd("after")},t.prototype.hasCameraMoved=function(t){return!this.lastKnownCameraPosition&&0!==t.position.length()||this.lastKnownCameraPosition&&!this.lastKnownCameraPosition.equals(t.position)},t.prototype.afterRenderViewport=function(t){this.hasViewportCameraMoved(t)&&this.propogateViewportCameraMoveEndEvent(t);for(var e=function(e){e.onAfterRenderViewport&&u.swallowExceptions(function(){return e.onAfterRenderViewport(t)})},n=0,i=this.layers;n<i.length;n++)e(i[n]);this.onAfterRenderViewport(t)},t.prototype.propogateViewportCameraMoveEndEvent=function(e){var n=this;this.viewportCameraPanEndTimer.get(e.name)&&window.clearTimeout(this.viewportCameraPanEndTimer.get(e.name));var i=window.setTimeout(function(){return n.viewportCameraMoveEnd(e)},t.REFRESH_DELAY);this.viewportCameraPanEndTimer.set(e.name,i),this.lastKnownViewportCameraPositionMap.set(e.name,e.camera.position.clone())},t.prototype.viewportCameraMoveEnd=function(t){this.viewportCameraPanEndTimer.set(t.name,void 0);for(var e=this.onViewportCameraMoveEnd(t),n=function(n){if(!n.onViewportCameraMoveEnd)return"continue";u.swallowExceptions(function(){return n.onViewportCameraMoveEnd(t,e)})},i=0,r=this.layers;i<r.length;i++)n(r[i])},t.prototype.cameraMoveEnd=function(){this.cameraPanEndTimer=void 0;for(var t=this.onCameraMoveEnd(),e=function(e){e.onCameraMoveEnd&&u.swallowExceptions(function(){return e.onCameraMoveEnd(t)})},n=0,i=this.layers;n<i.length;n++)e(i[n]);t.catch(function(){})},t.prototype.transitionStart=function(t){this.timelineEvent("transitionStart"),this.currentImage=t.image;for(var e=function(e){e.onTransitionStart&&u.swallowExceptions(function(){return e.onTransitionStart(t)})},n=0,i=this.layers;n<i.length;n++)e(i[n])},t.prototype.transitionEnd=function(t){this.timelineEvent("transitionEnd");for(var e=function(e){e.onTransitionEnd&&u.swallowExceptions(function(){return e.onTransitionEnd(t)})},n=0,i=this.layers;n<i.length;n++)e(i[n])},t.prototype.onResize=function(){this.divContainer.onResize(),this.invalidateScene()},t.prototype.enableDebugMode=function(t){this.sectionTimer=t,this.timelineEvent=function(t){return console.timeStamp(t)}},t.prototype.hasViewportCameraMoved=function(t){var e=this.lastKnownViewportCameraPositionMap.get(t.name);return!e&&0!==t.camera.position.length()||e&&!e.equals(t.camera.position)},t.prototype.getCurrentCursorPosition=function(){},t.prototype.setCurrentCursorPositionForScreenPosition=function(t){return Promise.resolve()},t.OVERLAY_FRUSTUM_DEPTH=2e4,t.ZOOM_MAP_DEFAULT_DURATION=1e3,t.REFRESH_DELAY=300,t.DEFAULT_DURATION=1e3,t.DIRECTIONAL_LIGHT_COLOR=8355711,t}();e.AbstractView=x},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),r=function(){function t(t,e){this.left=0,this.bottom=0,this.width=1,this.height=1,this.bgColor=1644825,this.bgAlpha=1,this.active=!0,this.container=t,this.info=e}return Object.defineProperty(t.prototype,"camera",{get:function(){return this.cameraController.camera},enumerable:!0,configurable:!0}),t.prototype.getX=function(t){return t-this.left*this.container.getCurrentWidth()},t.prototype.getY=function(t){return t-(1-(this.bottom+this.height))*this.container.getCurrentHeight()},t.prototype.getInverseX=function(t){return t+this.left*this.container.getCurrentWidth()},t.prototype.getInverseY=function(t){return t+(1-(this.bottom+this.height))*this.container.getCurrentHeight()},t.prototype.contains=function(t,e){var n=t/this.container.getCurrentWidth(),i=1-e/this.container.getCurrentHeight();return this.active&&n>=this.left&&n<this.left+this.width&&i>=this.bottom&&i<this.bottom+this.height},Object.defineProperty(t.prototype,"screenWidth",{get:function(){return this.container.getCurrentWidth()*this.width},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"screenHeight",{get:function(){return this.container.getCurrentHeight()*this.height},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"aspect",{get:function(){return this.width/this.height*this.container.getAspectRatio()},enumerable:!0,configurable:!0}),t.prototype.setDimensions=function(t,e,n,i){this.left=t,this.bottom=e,this.width=n,this.height=i},t.prototype.getDimensions=function(){return{left:this.left,bottom:this.bottom,width:this.width,height:this.height}},t.prototype.unprojectScreenCoordinates=function(t,e,n){return this.normalizeCoordinates(t,e,void 0===n?1:n).unproject(this.camera)},t.prototype.projectScreenCoordinates=function(t,e){return e||(e=t),e.copy(t),e.project(this.camera),this.denormalizeCoordinates(e)},t.prototype.denormalizeCoordinates=function(t,e){e||(e=t);var n=this.screenWidth/2,i=this.screenHeight/2,r=(t.x+1)*n,o=(1-t.y)*i;return e.x=this.getInverseX(r),e.y=this.getInverseY(o),e.z=t.z,e},t.prototype.normalizeCoordinates=function(t,e,n){var r=this.screenWidth,o=this.screenHeight;if(0===r||0===o)return new i.Vector3(0,0,n);var a=this.getX(t)/r*2-1,s=-this.getY(e)/o*2+1;return new i.Vector3(a,s,n)},t.prototype.getWidth=function(){return this.screenWidth},t.prototype.getHeight=function(){return this.screenHeight},t.prototype.getCamera=function(){return this.camera},Object.defineProperty(t.prototype,"name",{get:function(){return this.info.name},enumerable:!0,configurable:!0}),t}();e.Viewport=r},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(t,e,n){this.name=t,this.caption=e,this.color=n}return t.prototype.getColorCSS=function(){return"#"+("000000"+(void 0!==this.color?this.color.toString(16):"")).slice(-6)},t}();e.ViewportInfo=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(9),n(1141)),o=(n(22),n(20)),a=n(6),s=n(0),c=n(0),l=n(9),u=n(22),d=function(){function t(t,e){this.RestService=t,this.SiteModelRepository=e,this.path="route"}return t.prototype.getRoute=function(t,e,n){var i=this;void 0===n&&(n=!0);var r={source_longitude:t.x,source_latitude:t.y,source_z:t.z,destination_longitude:e.x,destination_latitude:e.y,destination_z:e.z};return this.RestService.getApi(this.path,r,void 0,n).then(function(t){return i.transformResponse(t)})},t.prototype.transformResponse=function(t){for(var e=[],n=0,o=i.fromJson(t);n<o.length;n++){var a=o[n],s=new r.RouteElementEntity;s.fillFromData(a),s.instruction&&(s.instruction.siteModelEntityId&&(s.instruction.siteModelEntityName=this.getEntityName(s.instruction.siteModelEntityId)),s.instruction.fromSiteModelEntityId&&(s.instruction.fromSiteModelEntityName=this.getEntityName(s.instruction.fromSiteModelEntityId)),s.instruction.toSiteModelEntityId&&(s.instruction.toSiteModelEntityName=this.getEntityName(s.instruction.toSiteModelEntityId))),s.floorId&&(s.floor=this.SiteModelRepository.dataMap[s.floorId]),s.siteModelEntityId&&(s.siteModelEntity=this.SiteModelRepository.dataMap[s.siteModelEntityId]),e.push(s)}return e},t.prototype.getEntityName=function(t){var e=this.SiteModelRepository.dataMap[t]&&this.SiteModelRepository.dataMap[t].name;if(!o.isBlank(e))return e},t.ɵfac=function(e){return new(e||t)(c.ɵɵinject(l.RestService),c.ɵɵinject(u.SiteModelRepository))},t.ɵprov=c.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.RouteRestService=d,c.ɵsetClassMetadata(d,[{type:s.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:l.RestService},{type:u.SiteModelRepository}]},null),i.module("IVWebApp").service("RouteRestService",a.downgradeInjectable(d))},function(t,e,n){"use strict";var i=this&&this.__spreadArrays||function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var i=Array(t),r=0;for(e=0;e<n;e++)for(var o=arguments[e],a=0,s=o.length;a<s;a++,r++)i[r]=o[a];return i};Object.defineProperty(e,"__esModule",{value:!0});var r=n(2),o=n(7),a=(n(22),n(130),n(555)),s=n(556),c=n(1150),l=n(1155),u=n(1159),d=n(1163),p=n(1167),h=n(1171),f=n(1175),g=n(1179),m=(n(14),n(28),n(39),n(49),n(55)),v=n(1180),y=n(1184),b=n(113),w=n(6),S=n(0),x=n(0),M=n(22),E=n(39),C=n(130),A=n(14),T=n(28),O=n(49),_=function(){function t(t,e,n,i,r,o,a,s){this.SiteModelRepository=t,this.PoiService=e,this.injectables=new g.InstructionsInjectables,this.injectables.SiteModelRepository=this.SiteModelRepository,this.injectables.gettextCatalog=o,this.injectables.IV=a,this.injectables.UoMService=n,this.injectables.GeoTransformationService=i,this.injectables.FloorChangerService=r,this.injectables.ImageService=s,this.injectables.PoiService=e}return t.getSourceProjectionIndex=function(t){var e=t.findIndex(function(t){return t.instruction&&t.instruction.type===b.InstructionType.SOURCE_PROJECTION});return e<0?0:e},t.getDestinationProjectionIndex=function(t){var e=t.findIndex(function(t){return t.instruction&&t.instruction.type===b.InstructionType.DESTINATION_PROJECTION});return e<0?t.length-1:e},t.prototype.generate=function(e){var n=[];if(e.length<2)return n;var i=t.getSourceProjectionIndex(e),r=t.getDestinationProjectionIndex(e),c=o.slice(e,i,r+1);n.push(new a.StartInstruction(this.injectables,e[i].location,e[i].floor,this.PoiService.routeStart));var l=this.buildBetween(c);n.push.apply(n,l),n.push(new s.EndInstruction(this.injectables,e[r].location,e[r].floor,this.PoiService.routeEnd));var u=this.squashEdgeInstructions(n);return u.forEach(function(t){return t.build()}),u},t.calculateRouteLength=function(t){for(var e=0,n=0,i=t;n<i.length;n++){var r=i[n];r instanceof c.EdgeInstruction&&(e+=Math.round(r.distance))}return e},t.prototype.squashEdgeInstructions=function(e){for(var n=[],i=0;i<e.length-1;i++){var r=e[i],o=e[i+1];t.isPossibleToSquash(r,o)?i=this.squashEdges(n,e,i):(n.push(r),o instanceof s.EndInstruction&&n.push(o))}return n},t.prototype.squashEdges=function(t,e,n){for(var r,o=[],a=[];e[n]instanceof c.EdgeInstruction;n++)r=e[n],o.push.apply(o,r.stairPositions),a.push.apply(a,r.nonStairPositions);var l=r.getFloor(),u=new(c.EdgeInstruction.bind.apply(c.EdgeInstruction,i([void 0,this.injectables,l],a)));return u.stairPositions=o,t.push(u),e[n]instanceof s.EndInstruction&&t.push(e[n]),n-1},t.prototype.buildBetween=function(e){for(var n=[],i=!1,r=1;r<e.length;r++){var o=e[r],a=e[r-1];if(!t.isExitElevatorType(o)){t.isEnterStairsType(a)?i=!0:t.isExitStairsType(a)&&(i=!1);var s=new c.EdgeInstruction(this.injectables,a.floor,a.location,o.location);i&&(s.stairPositions=s.nonStairPositions,s.nonStairPositions=[]),n.push(s);var l=void 0;o.instruction&&(l=this.build(o)),l&&n.push(l)}}return n},t.prototype.build=function(t){switch(t.instruction.type){case b.InstructionType.ENTER_BUILDING:return this.buildEnterBuilding(t);case b.InstructionType.EXIT_BUILDING:return this.buildExitBuilding(t);case b.InstructionType.CHANGE_FLOOR_UP:return this.buildGenericFloorUp(t);case b.InstructionType.CHANGE_FLOOR_DOWN:return this.buildGenericFloorDown(t);case b.InstructionType.ENTER_STAIRS_UP:return this.buildStairsUp(t);case b.InstructionType.ENTER_STAIRS_DOWN:return this.buildStairsDown(t);case b.InstructionType.ENTER_ELEVATOR_UP:return this.buildElevatorUp(t);case b.InstructionType.ENTER_ELEVATOR_DOWN:return this.buildElevatorDown(t);default:return}},t.prototype.isSupportedType=function(t){var e=this.SiteModelRepository.dataMap[t];return!e||e.type===m.SiteModelType.FREE_SPACE_NAVIGATION||e.type===m.SiteModelType.BUILDING||e.type===m.SiteModelType.FLOOR},t.isExitStairsType=function(t){return t.instruction&&t.instruction.type===b.InstructionType.EXIT_STAIRS},t.isEnterStairsType=function(t){return t.instruction&&(t.instruction.type===b.InstructionType.ENTER_STAIRS_UP||t.instruction.type===b.InstructionType.ENTER_STAIRS_DOWN)},t.isExitElevatorType=function(t){return t.instruction&&t.instruction.type===b.InstructionType.EXIT_ELEVATOR},t.isPossibleToSquash=function(t,e){return t instanceof c.EdgeInstruction&&e instanceof c.EdgeInstruction},t.prototype.buildEnterBuilding=function(t){if(this.isSupportedType(t.instruction.siteModelEntityId))return new l.EnterBuildingInstruction(this.injectables,t.location,t.floor,t.instruction.siteModelEntityName)},t.prototype.buildExitBuilding=function(t){if(this.isSupportedType(t.instruction.siteModelEntityId))return new u.ExitBuildingInstruction(this.injectables,t.location,t.floor,t.instruction.siteModelEntityName)},t.prototype.buildGenericFloorUp=function(t){return new v.GenericFloorUpInstruction(this.injectables,t.location,t.floor,t.instruction.toSiteModelEntityName)},t.prototype.buildGenericFloorDown=function(t){return new y.GenericFloorDownInstruction(this.injectables,t.location,t.floor,t.instruction.toSiteModelEntityName)},t.prototype.buildStairsUp=function(t){return new d.StairsUpInstruction(this.injectables,t.location,t.floor,t.instruction.toSiteModelEntityName)},t.prototype.buildStairsDown=function(t){return new p.StairsDownInstruction(this.injectables,t.location,t.floor,t.instruction.toSiteModelEntityName)},t.prototype.buildElevatorUp=function(t){return new f.ElevatorUpInstruction(this.injectables,t.location,t.floor,t.instruction.toSiteModelEntityName)},t.prototype.buildElevatorDown=function(t){return new h.ElevatorDownInstruction(this.injectables,t.location,t.floor,t.instruction.toSiteModelEntityName)},t.ɵfac=function(e){return new(e||t)(x.ɵɵinject(M.SiteModelRepository),x.ɵɵinject(E.PoiService),x.ɵɵinject(C.UoMService),x.ɵɵinject(A.GeoTransformationService),x.ɵɵinject(T.FloorChangerService),x.ɵɵinject("gettextCatalog"),x.ɵɵinject("IV"),x.ɵɵinject(O.ImageService))},t.ɵprov=x.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.InstructionService=_,x.ɵsetClassMetadata(_,[{type:S.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:M.SiteModelRepository},{type:E.PoiService},{type:C.UoMService},{type:A.GeoTransformationService},{type:T.FloorChangerService},{type:void 0,decorators:[{type:S.Inject,args:["gettextCatalog"]}]},{type:void 0,decorators:[{type:S.Inject,args:["IV"]}]},{type:O.ImageService}]},null),r.module("IVWebApp").service("InstructionService",w.downgradeInjectable(_))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(80),a=n(7),s=n(4),c=n(107),l=function(t){function e(n,i,r,o,s,c,l){var u=t.call(this,n,i,r)||this;return u.view=n,u.IV=o,u.GeoTransformationService=s,u.AuthenticationService=l,u.debouncedUpdate=a.debounce(function(){return u.cameraInitialized&&u.updateSafe()},e.ORTHO_DEBOUNCE),u.cameraInitialized=!1,u.trackSignal(c.onFloorChange).connect(function(t){t.mayChangeLocation||u.updateSafe()}),u.trackSignal(l.onAuthenticationChanged).connect(function(){return u.updateSafe()}),u}return r(e,t),e.prototype.updateSafe=function(){this.GeoTransformationService.isInitialized()&&this.AuthenticationService.dataAccessible&&this.update()},e.prototype.onBeforeRender=function(t){if(this.isOrthographicCameraSceneReadyToBeUpdated()){var e=t;this.isCameraMovementTooSmall(e)||this.debouncedUpdate()}},e.prototype.onCameraMoveEnd=function(t){var e=this;c.promiseFinally(t,function(){e.cameraInitialized=!0}).catch(function(){return e.GeoTransformationService.initialized.then(function(){return e.debouncedUpdate()})})},e.prototype.isOrthographicCameraSceneReadyToBeUpdated=function(){if(!this.GeoTransformationService.isInitialized()||this.IV.isMoving())return!1;var t=this.getActiveViewport().camera;if(!(t instanceof s.OrthographicCamera))return!1;var e=this.getActiveViewport().screenWidth;return 0!=t.right-t.left&&0!==e},e.prototype.isCameraMovementTooSmall=function(t){var n=new s.Vector3(t.left,t.top,0).add(t.position);if(!this.previousCornerPosition)return this.previousCornerPosition=n,!1;var i=n.distanceTo(this.previousCornerPosition);return 0===i||i/t.position.distanceTo(n)<e.ORTHO_CAMERA_CORNER_RATIO_THRESHOLD||(this.previousCornerPosition=n,!1)},e.ORTHO_BOUNDS_SCALE=1.5,e.ORTHO_CAMERA_CORNER_RATIO_THRESHOLD=(e.ORTHO_BOUNDS_SCALE-1)/2,e}(o.SceneLayer);e.ScalableSceneLayer=l},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.CLICK="Click",t.MOUSE_MOVE="MouseMove"}(e.EventType||(e.EventType={}))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=(n(41),n(9),n(90),n(15),n(4)),s=(n(61),n(24),n(562)),c=n(6),l=n(0),u=(n(65),n(0)),d=n(15),p=n(41),h=n(9),f=n(65),g=n(24),m=n(61),v=n(90),y=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i,r)||this;return o.factory=r,o.transitioning=!1,o.trackSignal(o.factory.ViewMenuService.onShowPanoramasChanged).connect(function(t){t||(o.currentImage=void 0,o.clear())}),o.trackSignal(o.factory.ImageRepository.transformLocationAction).connect(function(){o.currentImage=void 0,o.clear()}),o}return r(e,t),e.prototype.onTransitionStart=function(t){if(!t.image)return this.currentImage=void 0,void this.clear();this.currentImage!==t.image&&this.factory.ViewMenuService.config.showPanoramas&&(this.currentImage=t.image,this.show(t.image,t.viewDistance),this.transitioning=!0)},e.prototype.onTransitionEnd=function(t){this.transitioning=!1,this.clearPrevious(),this.view.invalidateScene()},e.prototype.onBeforeRenderViewport=function(t){this.sceneGroup.visible=t.getCamera()instanceof a.PerspectiveCamera},e.prototype.onAfterRender=function(e){this.transitioning||t.prototype.onAfterRender.call(this,e)},e.prototype.onContextMenu=function(){var t=this;if(this.factory.ModeService.isNormalMode()&&this.view.currentImage&&this.view.currentImage.dataset.canWrite)return this.view.currentImage.hidden?{name:this.factory.gettextCatalog.getString("Unhide current location"),icon:"paste",callback:function(){return t.hideCurrentLocation(!1)}}:{name:this.factory.gettextCatalog.getString("Hide current location"),icon:"cut",callback:function(){return t.hideCurrentLocation(!0)}}},e.prototype.hideCurrentLocation=function(t){var e=this;this.view.currentImage.hidden=t,this.factory.ImageRepository.save(this.view.currentImage).catch(function(){e.view.currentImage.hidden=!t,e.factory.MessageReportingService.showMessage(e.factory.gettextCatalog.getString("Update failed"),e.factory.gettextCatalog.getString("Updating changes to server over REST interface failed. Reverting local changes to match server."))})},e}(s.CameraImageLayer);e.IvCameraImageLayer=y;var b=function(t){function e(e,n,i,r,o,a,s,c,l){var u=t.call(this,e,n,i,r)||this;return u.ConfigService=e,u.ErrorService=n,u.RestService=i,u.gettext=r,u.gettextCatalog=o,u.ViewMenuService=a,u.ModeService=s,u.MessageReportingService=c,u.ImageRepository=l,u}return r(e,t),e.prototype.create=function(t,e,n){return new y(t,e,n,this)},e.ɵfac=function(t){return new(t||e)(u.ɵɵinject(d.ConfigService),u.ɵɵinject(p.ErrorService),u.ɵɵinject(h.RestService),u.ɵɵinject("gettext"),u.ɵɵinject("gettextCatalog"),u.ɵɵinject(f.ViewMenuService),u.ɵɵinject(g.ModeService),u.ɵɵinject(m.MessageReportingService),u.ɵɵinject(v.ImageRepository))},e.ɵprov=u.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(s.CameraImageLayerFactory);e.IvCameraImageLayerFactory=b,u.ɵsetClassMetadata(b,[{type:l.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:d.ConfigService},{type:p.ErrorService},{type:h.RestService},{type:void 0,decorators:[{type:l.Inject,args:["gettext"]}]},{type:void 0,decorators:[{type:l.Inject,args:["gettextCatalog"]}]},{type:f.ViewMenuService},{type:g.ModeService},{type:m.MessageReportingService},{type:v.ImageRepository}]},null),o.module("IVWebApp").service("IvCameraImageLayerFactory",c.downgradeInjectable(b))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},a=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var s=n(80),c=n(2),l=n(67),u=(n(91),n(4)),d=(n(39),n(6)),p=n(0),h=n(563),f=n(101),g=(n(24),n(52)),m=n(0),v=n(91),y=n(39),b=n(24),w=function(t){function e(i,r,o,a){var s=t.call(this,i,r,o)||this;s.params=o,s.factory=a,s.visible=!0,s.CURSOR_MAX_PX_SIZE=50,s.materialCircle=new u.MeshBasicMaterial({color:e.CURSOR_CIRCLE_NORMAL_MODE_COLOR,side:u.DoubleSide,opacity:e.CURSOR_NORMAL_MODE_OPACITY,transparent:!0,depthTest:!1,depthWrite:!1}),s.materialCylinder=new u.MeshBasicMaterial({map:f.getTextureLoader().load(n(1199),function(){}),side:u.DoubleSide,opacity:e.CURSOR_NORMAL_MODE_OPACITY,transparent:!0,depthTest:!1,depthWrite:!1}),s.measurementTexture=f.getTextureLoader().load(n(1200),function(){}),s.sceneGroup.name="CursorLayer",s.CURSOR_MAX_PX_SIZE=o&&o.cursorMaxPxSize||s.CURSOR_MAX_PX_SIZE,s.trackSignal(s.factory.CursorService.cursorStyleChanged).connect(function(){return s.switchCursorStyle()}),s.trackSignal(s.factory.CursorService.cursorChanged).connect(function(){if(!s.pickingPoint){var t=s.factory.CursorService.cursorNormal,e=s.factory.CursorService.cursorPos;s.updateMarker(e,t)}});var c=new u.Matrix4;c.makeRotationFromEuler(new u.Euler(Math.PI/2,0,0));var l=new u.CylinderGeometry(e.CURSOR_RADIUS,e.CURSOR_RADIUS,e.CURSOR_HEIGHT,e.CURSOR_SEGMENTS,1,!0);l.applyMatrix4(c),s.markerCylinder=new u.Mesh(l,s.materialCylinder),s.markerCylinder.renderOrder=e.CURSOR_CYLINDER_RENDER_ORDER;var d=new u.CircleGeometry(e.CURSOR_RADIUS,e.CURSOR_SEGMENTS);return s.markerCircle=new u.Mesh(d,s.materialCircle),s.markerCircle.renderOrder=e.CURSOR_CIRCLE_RENDER_ORDER,s.marker=new u.Object3D,s.marker.add(s.markerCylinder),s.marker.add(s.markerCircle),s.marker.name="PickedPoint",s.marker.visible=!1,s.sceneGroup.add(s.marker),s}return r(e,t),e.prototype.onMouseMove=function(t){this.pickNextPointForScreenCoordinate(t).catch(function(){})},e.prototype.onClick=function(t){return this.factory.PoiService.movingPoi&&(this.factory.CursorService.copyCursorPose(this.factory.PoiService.movingPoi),this.factory.PoiService.poisChanged.emit()),!1},e.prototype.pickNextPointForScreenCoordinate=function(t){return this.nextPointToPick=this.factory.CursorService.unprojectScreenCoordinateWithPlane(this.view,t),this.pickingPoint?Promise.resolve():this.pickNextPoint()},e.prototype.setVisibility=function(t){this.visible=t,this.marker.visible=t,this.view.invalidateScene()},e.prototype.onBeforeRender=function(t){this.nextPointToPick&&!this.pickingPoint&&this.pickNextPoint().catch(function(){})},e.prototype.onBeforeRenderViewport=function(t){var e=this.factory.ModeService.isMeasurementsMode(),n=t.camera instanceof u.OrthographicCamera,i=t.name===g.SplitViewportName.DEFAULT_VIEW,r=this.factory.CursorService.cursorStyle===h.CursorStyle.CROSS&&n&&e;this.markerCylinder.visible=n,this.marker.visible=!(e&&i&&this.factory.CursorService.isPlaneLocked()),r?(l.setMeshScreenSize(t,this.markerCircle,this.CURSOR_MAX_PX_SIZE/2,!1),l.setMeshScreenSize(t,this.markerCylinder,this.CURSOR_MAX_PX_SIZE/2,!1)):(l.setMeshScreenSize(t,this.markerCircle,this.CURSOR_MAX_PX_SIZE,!0),l.setMeshScreenSize(t,this.markerCylinder,this.CURSOR_MAX_PX_SIZE,!0))},e.prototype.pickNextPoint=function(){return o(this,void 0,void 0,function(){var t,e;return a(this,function(n){switch(n.label){case 0:if(!this.nextPointToPick||!this.visible)return[2];t=this.nextPointToPick,this.nextPointToPick=void 0,this.pickingPoint=!0,n.label=1;case 1:return n.trys.push([1,3,,4]),[4,this.factory.CursorService.getRaycastedCoordinates(this.view,t.clone())];case 2:return e=n.sent(),this.updateMarker(e.position,e.normal),[3,4];case 3:return n.sent(),this.marker.visible&&(this.marker.visible=!1,this.view.invalidateScene()),[3,4];case 4:return this.pickingPoint=!1,[2]}})})},e.prototype.updateMarker=function(t,e){this.marker.position.copy(t);var n=0!==e.length()?t.clone().add(e):this.view.getCamera().position;this.marker.lookAt(n),this.marker.visible=this.visible,this.view.invalidateScene()},e.prototype.switchCursorStyle=function(){this.factory.CursorService.cursorStyle===h.CursorStyle.CROSS?(this.materialCircle.map=this.measurementTexture,this.materialCircle.map.anisotropy=f.ANISOTROPIC_LEVEL,this.materialCircle.opacity=e.CURSOR_CROSS_MODE_OPACITY,this.materialCylinder.opacity=e.CURSOR_CROSS_MODE_OPACITY):(this.materialCircle.map=void 0,this.materialCircle.opacity=e.CURSOR_NORMAL_MODE_OPACITY,this.materialCylinder.opacity=e.CURSOR_NORMAL_MODE_OPACITY),this.materialCircle.needsUpdate=!0,this.materialCylinder.needsUpdate=!0},e.CURSOR_CIRCLE_NORMAL_MODE_COLOR=16777215,e.CURSOR_NORMAL_MODE_OPACITY=.5,e.CURSOR_CROSS_MODE_OPACITY=.75,e.CURSOR_RADIUS=.15,e.CURSOR_SEGMENTS=24,e.CURSOR_HEIGHT=.05,e.CURSOR_CIRCLE_RENDER_ORDER=.1,e.CURSOR_CYLINDER_RENDER_ORDER=0,e}(s.SceneLayer);e.CursorLayer=w;var S=function(t){function e(e,n,i){var r=t.call(this)||this;return r.CursorService=e,r.PoiService=n,r.ModeService=i,r}return r(e,t),e.prototype.create=function(t,e,n){return new w(t,e,n,this)},e.ɵfac=function(t){return new(t||e)(m.ɵɵinject(v.CursorService),m.ɵɵinject(y.PoiService),m.ɵɵinject(b.ModeService))},e.ɵprov=m.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(s.SceneLayerFactory);e.CursorLayerFactory=S,m.ɵsetClassMetadata(S,[{type:p.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:v.CursorService},{type:y.PoiService},{type:b.ModeService}]},null),c.module("IVWebApp").service("CursorLayerFactory",d.downgradeInjectable(S))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(4),s=n(80),c=(n(182),n(91),n(20)),l=n(67);n(269),n(182),n(28),n(22),n(14);var u=n(7),d=n(8),p=(n(17),n(402)),h=(n(36),n(52)),f=n(68),g=n(24),m=(n(61),n(105)),v=n(55),y=n(6),b=n(0),w=n(395),S=(n(65),n(107)),x=n(0),M=n(91),E=n(182),C=n(269),A=n(17),T=n(65),O=n(28),_=n(22),P=n(14),I=n(36),k=n(24),D=n(61),R=function(t){function e(e,n,i){var r=t.call(this,e,n,void 0,i.IV,i.GeoTransformationService,i.FloorChangerService,i.AuthenticationService)||this;return r.view=e,r.factory=i,r.debouncedFloorUpdate=u.debounce(function(t){return r.factory.FloorChangerService.updateByFloorsInView(t.camera).catch(function(){})},w.AbstractSceneLayer.ORTHO_DEBOUNCE),r.CUBE_GEOMETRY=new a.BoxGeometry(.1,.1,.1),r.CUBE_MATERIALS=[new a.MeshLambertMaterial({color:192,transparent:!0,depthTest:!1}),new a.MeshLambertMaterial({color:49152,transparent:!0,depthTest:!1}),new a.MeshLambertMaterial({color:12582912,transparent:!0,depthTest:!1})],r.lineMaterial=new a.LineBasicMaterial({color:12615680,transparent:!0,linewidth:1,depthTest:!1}),r.nodeMeshes=new a.Object3D,r.edgeMeshes=new a.Object3D,r.updateInProgress=!1,r.pathDrawingDelegate=r.factory.NavGraphEditingService.navGraphPathDrawingDelegate,r.init3DScene(),r.initEventListeners(),r}return r(e,t),e.prototype.onViewportCameraMoveEnd=function(t,e){this.factory.ModeService.isNavGraphEditorMode()&&t.name===h.SplitViewportName.TOP_VIEW&&this.debouncedFloorUpdate(t)},e.prototype.onContextMenu=function(t){var e=this,n=this.factory.NavGraphService.getCurrentBundle();if(this.factory.ViewMenuService.config.showNavGraph&&n&&n.canWrite&&!this.pathDrawingDelegate.isPathDrawingPossible()&&this.view.viewMode!==m.SceneViewMode.Map)return{name:this.factory.gettextCatalog.getString("Create node"),icon:"add",callback:function(){var t=e.factory.CursorService.cursorPos;if(!t)return e.factory.MessageReportingService.showMessage(e.factory.gettextCatalog.getString("Node Creation Failed",void 0,"title"),e.factory.gettextCatalog.getString("Unable to fetch the current cursor location.")),void c.invalidateAngular();e.factory.NavGraphEditingService.createNode(t),c.invalidateAngular()}}},e.prototype.createNode=function(t){var e=this.newNodeMesh(t.siteModelEntity,t.location,t.id,0);this.nodeMeshes.add(e),this.handleNodeSelection(e)},e.prototype.removeNode=function(t){this.nodeMeshes.remove(t)},e.prototype.createEdge=function(t,e){var n=this.factory.NavGraphService.adjacencyList.getNodeMesh(t.id),i=this.factory.NavGraphService.adjacencyList.getNodeMesh(e.id),r=n.position,o=i.position;this.createEdgeAtLocation(r,o,t,e)},e.prototype.removeEdge=function(t){this.edgeMeshes.remove(t)},e.prototype.update=function(){this.updateNavGraph()},e.prototype.init3DScene=function(){this.sceneGroup.name="NavGraphLayer",this.sceneGroup.matrixAutoUpdate=!1,this.nodeMeshes.matrixAutoUpdate=!1,this.edgeMeshes.matrixAutoUpdate=!1,this.sceneGroup.add(this.nodeMeshes),this.sceneGroup.add(this.edgeMeshes)},e.prototype.initEventListeners=function(){var t=this;this.trackSignal(this.view.viewModeChanged).connect(function(){return t.updateSafe()}),this.trackSignal(this.factory.FloorChangerService.onFloorChange).connect(function(){return t.updateSafe()}),this.trackSignal(this.factory.ViewMenuService.onShowNavGraphChanged).connect(function(){return t.updateNavGraph(!0)}),this.trackSignal(this.factory.NavGraphService.constantsChanged).connect(function(){return t.updateSafe()}),this.trackSignal(this.factory.NavGraphService.navgraphChanged).connect(function(){return t.view.invalidateScene()}),this.trackSignal(this.factory.NavGraphService.nodeCreated).connect(function(e){t.createNode(e),t.view.invalidateScene()}),this.trackSignal(this.factory.NavGraphService.nodeRemoved).connect(function(e){t.removeNode(e),t.view.invalidateScene()}),this.trackSignal(this.factory.NavGraphService.edgeCreated).connect(function(e,n){t.createEdge(e,n),t.view.invalidateScene()}),this.trackSignal(this.factory.NavGraphService.edgeRemoved).connect(function(e){t.removeEdge(e),t.view.invalidateScene()})},e.prototype.updateNavGraph=function(t){var e=this;if(!this.factory.ViewMenuService.config.showNavGraph)return this.clear(),void this.view.invalidateScene();this.updateInProgress||(this.updateInProgress=!0,S.promiseFinally(this.factory.NavGraphService.fetch(t).then(function(){e.clear(),e.addNavGraphToScene(),e.view.invalidateScene()}),function(){return e.updateInProgress=!1}).catch(d.handleWarning))},e.prototype.clear=function(){l.removeChildrenOfObject3D(this.nodeMeshes),l.removeChildrenOfObject3D(this.edgeMeshes)},e.prototype.addNavGraphToScene=function(){var t=this,e=this.acquireCameraPosition();e.z-=this.view.getImage()?this.view.getImage().location.z-this.view.getImage().floorLocation.z:f.DEFAULT_CAMERA_HEIGHT,this.factory.NavGraphService.adjacencyList.adjacencyList.forEach(function(n){var i=n.resource.location.z-e.z,r=t.newNodeMesh(n.resource.siteModelEntity,n.resource.location,n.resource.id,i);t.nodeMeshes.add(r),n.edges.forEach(function(e,i){if(!e.redundant){var r=n.resource.location,o=t.factory.NavGraphService.adjacencyList.adjacencyList.get(i).resource.location;t.createEdgeAtLocation(r,o,e.resource.source,e.resource.target)}})}),this.factory.NavGraphService.isNavGraphPresent()&&this.factory.NavGraphEditingService.applySelection()},e.prototype.createEdgeAtLocation=function(t,e,n,i,r){void 0===r&&(r=-1);var o=new a.Geometry;o.vertices.push(t),o.vertices.push(e);var s=new a.Line(o,this.lineMaterial);s.name="navGraphEdge",s.userData={type:"navGraphEdge",id:-1,source:n,target:i},s.matrixAutoUpdate=!1,this.isNodeVisible(n.siteModelEntity,n.location)&&this.isNodeVisible(i.siteModelEntity,i.location)&&this.edgeMeshes.add(s),this.factory.NavGraphService.adjacencyList.setEdgeMesh(s)},e.prototype.newNodeMesh=function(t,e,n,i){var r=this,o=t?1:2,s=new a.Mesh(this.CUBE_GEOMETRY,this.CUBE_MATERIALS[o]);return s.position.copy(e),s.matrixAutoUpdate=!1,s.updateMatrix(),s.name="navGraphNode",s.userData={type:"navGraphNode",id:n},s.visible=this.isNodeVisible(t,s.position),this.factory.NavGraphService.adjacencyList.setNodeMesh(s),s.onClick=function(){if(!s.visible)return!1;if(r.pathDrawingDelegate.isPathDrawingPossible())return r.pathDrawingDelegate.getAnchorNode().mesh!==s&&r.factory.NavGraphEditingService.selectedNodes[f.NavGraphEditingConstantsSelectedNode.CURRENT].mesh!==s&&!!r.factory.NavGraphService.canWriteNode(s.userData.id)&&(r.pathDrawingDelegate.joinPathWithMesh(s),!0);var t=r.handleNodeSelection(s);return r.pathDrawingDelegate.updateCursor(),t},s.onDragStart=function(){return!(r.pathDrawingDelegate.isPathDrawingPossible()||!s.visible||(r.factory.NavGraphService.isMovingNodes=!0,r.factory.NavGraphEditingService.selectNode(s),r.factory.NavGraphService.selectBundleForNode(s.userData.id),c.invalidateAngular(),0))},s.onDrag=function(t,e){if(!r.pathDrawingDelegate.isPathDrawingPossible()&&r.factory.NavGraphService.canWriteNode(s.userData.id)){var n=r.view.getPositionOnGroundPlane(t.x,t.y,s.position.z,e);n&&(r.factory.NavGraphEditingService.moveNode(s,n),r.view.invalidateScene())}},s.onDragEnd=function(){r.factory.NavGraphService.isMovingNodes=!1,c.invalidateAngular()},s.onContextMenu=function(){if(r.factory.NavGraphService.canWriteNode(s.userData.id)&&!r.pathDrawingDelegate.isPathDrawingPossible()&&s.visible)return{name:r.factory.gettextCatalog.getString("Delete node"),icon:"delete",callback:function(){r.factory.NavGraphEditingService.selectNode(s),r.view.invalidateScene(),r.factory.NavGraphEditingService.deleteNode(0)}}},s},e.prototype.handleNodeSelection=function(t){return!!this.factory.NavGraphService.canWriteNode(t.userData.id)&&(this.factory.NavGraphEditingService.toggleNode(t),this.factory.NavGraphService.selectBundleForNode(t.userData.id),c.invalidateAngular(),this.view.invalidateScene(),!0)},e.prototype.isInCurrentFloors=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];for(var n=0,i=t;n<i.length;n++){var r=i[n];if(!r)return!0;if(!r.getEntityOfType(v.SiteModelType.FLOOR)||this.factory.FloorChangerService.isInCurrentFloors(r))return!0}return!1},e.prototype.isNodeVisible=function(t,e){return this.view.viewMode===m.SceneViewMode.Map?this.isInCurrentFloors(t):this.isInSightRange(e)},e.prototype.isInSightRange=function(t){var e=this.acquireCameraPosition();return e.z-=this.view.getImage()?this.view.getImage().location.z-this.view.getImage().floorLocation.z:f.DEFAULT_CAMERA_HEIGHT,Math.abs(t.z-e.z)<this.factory.NavGraphService.threshZ&&e.distanceTo(t)<this.factory.NavGraphService.thresh},e.prototype.acquireCameraPosition=function(){return this.view.getCamera().position.clone()},e.prototype.onMouseMove=function(t){if(this.factory.ModeService.currentMode===g.ModeState.NAV_GRAPH_EDITOR&&this.pathDrawingDelegate.isPathDrawingPossible()){this.pathDrawingDelegate.resetAnchorIfPossible();var e=this.view.getPositionOnGroundPlane(t.x,t.y,this.pathDrawingDelegate.getAnchorNode().mesh.position.z);if(!e)return;this.pathDrawingDelegate.drawPathAtPosition(e)}},e.prototype.onClick=function(t){if(this.factory.ModeService.currentMode===g.ModeState.NAV_GRAPH_EDITOR&&this.pathDrawingDelegate.isPathDrawingPossible()&&void 0!==this.pathDrawingDelegate.getAnchorNode()){var e=this.view.getPositionOnGroundPlane(t.x,t.y,this.pathDrawingDelegate.getAnchorNode().mesh.position.z);return!!e&&(this.pathDrawingDelegate.savePathAtPosition(e),!0)}return!1},e}(p.ScalableSceneLayer);e.NavGraphLayer=R;var L=function(t){function e(e,n,i,r,o,a,s,c,l,u,d,p,h){var f=t.call(this)||this;return f.IV=e,f.CursorService=n,f.NavGraphService=i,f.NavGraphEditingService=r,f.ViewService=o,f.ViewMenuService=a,f.FloorChangerService=s,f.SiteModelRepository=c,f.GeoTransformationService=l,f.AuthenticationService=u,f.gettextCatalog=d,f.ModeService=p,f.MessageReportingService=h,f}return r(e,t),e.prototype.create=function(t,e){return new R(t,e,this)},e.ɵfac=function(t){return new(t||e)(x.ɵɵinject("IV"),x.ɵɵinject(M.CursorService),x.ɵɵinject(E.NavGraphService),x.ɵɵinject(C.NavGraphEditingService),x.ɵɵinject(A.ViewService),x.ɵɵinject(T.ViewMenuService),x.ɵɵinject(O.FloorChangerService),x.ɵɵinject(_.SiteModelRepository),x.ɵɵinject(P.GeoTransformationService),x.ɵɵinject(I.AuthenticationService),x.ɵɵinject("gettextCatalog"),x.ɵɵinject(k.ModeService),x.ɵɵinject(D.MessageReportingService))},e.ɵprov=x.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(s.SceneLayerFactory);e.NavGraphLayerFactory=L,x.ɵsetClassMetadata(L,[{type:b.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:b.Inject,args:["IV"]}]},{type:M.CursorService},{type:E.NavGraphService},{type:C.NavGraphEditingService},{type:A.ViewService},{type:T.ViewMenuService},{type:O.FloorChangerService},{type:_.SiteModelRepository},{type:P.GeoTransformationService},{type:I.AuthenticationService},{type:void 0,decorators:[{type:b.Inject,args:["gettextCatalog"]}]},{type:k.ModeService},{type:D.MessageReportingService}]},null),o.module("IVWebApp").service("NavGraphLayerFactory",y.downgradeInjectable(L))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(70),s=(n(9),n(1206)),c=(n(75),n(268),n(6)),l=n(0),u=n(0),d=n(9),p=n(75),h=n(268),f=function(t){function e(e,n,i){var r=t.call(this,s.EdgeEntity,e)||this;return r.RestService=e,r.BundleRepository=n,r.NodeRepository=i,r.path="edges",r.injectables.BundleRepository=r.BundleRepository,r.injectables.NodeRepository=r.NodeRepository,r}return r(e,t),e.ɵfac=function(t){return new(t||e)(u.ɵɵinject(d.RestService),u.ɵɵinject(p.BundleRepository),u.ɵɵinject(h.NodeRepository))},e.ɵprov=u.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(a.RestRepository);e.EdgeRepository=f,u.ɵsetClassMetadata(f,[{type:l.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:d.RestService},{type:p.BundleRepository},{type:h.NodeRepository}]},null),o.module("IVWebApp").service("EdgeRepository",c.downgradeInjectable(f))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(9),n(6)),o=n(0),a=n(0),s=n(9),c=function(){function t(t){this.RestService=t,this.path="transform/reference_systems"}return t.prototype.search=function(t,e){return this.RestService.getApi(this.path,{query:t,type:e},void 0,!1)},t.ɵfac=function(e){return new(e||t)(a.ɵɵinject(s.RestService))},t.ɵprov=a.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.VectorMapCrsRepository=c,a.ɵsetClassMetadata(c,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:s.RestService}]},null),i.module("IVWebApp").service("VectorMapCrsRepository",r.downgradeInjectable(c))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(1235),s=n(70),c=(n(9),n(380)),l=n(382),u=(n(66),n(108)),d=n(4),p=n(381),h=n(6),f=n(0),g=n(135),m=n(0),v=n(9),y=n(66),b=function(t){function e(e,n){var i=t.call(this,a.AffineRefSysEntity,e)||this;return i.RestService=e,i.TransformService=n,i.path="affine_ref_sys",g.EntityRelationMapper.manyToOne(i,"parent","parentId",i,!0),i.entityCreated.connect(function(t){return i.registerTransforms(t)}),i.entityRemoved.connect(function(t){return i.unregisterTransform(t)}),i}return r(e,t),e.prototype.registerTransforms=function(t){for(var e=0,n=t;e<n.length;e++){var i=n[e];this.registerReferenceSystem(i)}for(var r=0,o=t;r<o.length;r++){i=o[r];try{this.registerTransform(i)}catch(t){if(!(t instanceof p.ReferenceSystemNotFoundException))throw t;console.warn("Cannot register transform for "+i.name+": "+t.message+". Skipping.")}}},e.prototype.registerReferenceSystem=function(t){t.crs=new c.ReferenceSystem(!1,this.TransformService.NAVVIS_PREFIX+":"+t.name),this.TransformService.registerReferenceSystem(t.crs)},e.prototype.registerTransform=function(t){var e;if(void 0!==t.parent)e=this.TransformService.getReferenceSystem(this.TransformService.NAVVIS_PREFIX+":"+t.parent.name);else if(t.spatialReference)e=this.TransformService.getReferenceSystem(t.spatialReference);else{if(!t.spatialReferenceString)throw new u.IVFrontendException("Affine reference system specifies no parent");e=new c.ReferenceSystem(!0,this.TransformService.NAVVIS_PREFIX+":"+t.name+"_global",void 0,t.spatialReferenceString)}var n=(new d.Matrix4).set(t.rx,-t.ry,0,t.tx,t.ry,t.rx,0,t.ty,0,0,1,t.tz,0,0,0,1);t.transform=new l.AffineTransform(t.crs,e,n),this.TransformService.registerTransform(t.transform)},e.prototype.unregisterTransform=function(t){t.crs&&this.TransformService.unregisterReferenceSystem(t.crs),t.transform&&this.TransformService.unregisterTransform(t.transform)},e.ɵfac=function(t){return new(t||e)(m.ɵɵinject(v.RestService),m.ɵɵinject(y.TransformService))},e.ɵprov=m.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(s.RestRepository);e.AffineRefSysRepository=b,m.ɵsetClassMetadata(b,[{type:f.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:v.RestService},{type:y.TransformService}]},null),o.module("IVWebApp").service("AffineRefSysRepository",h.downgradeInjectable(b))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(411),n(412),n(413),n(414),n(415),n(416),n(417),n(418),n(419),n(420),n(421);var i=n(2),r=(n(411),n(54),n(20)),o=(n(413),n(412),n(418),n(414),n(419),n(416),n(92)),a=(n(417),n(415),n(420),n(421),n(86),n(104),n(6)),s=n(0),c=n(8),l=(n(36),n(0)),u=n(54),d=n(413),p=n(416),h=n(411),f=n(418),g=n(414),m=n(420),v=n(421),y=n(415),b=n(412),w=n(417),S=n(419),x=n(86),M=n(104),E=n(36),C=function(){function t(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f){this.LicenseService=t,this.ImageApiService=e,this.LicenseApiService=n,this.PoiApiService=i,this.AboutApiService=r,this.TransformApiService=o,this.UiApiService=a,this.ShareApiService=s,this.ViewApiService=c,this.SiteModelApiService=l,this.ThirdPartyLibraryService=u,this.DatasetApiService=d,this.InstanceInformationService=p,this.RouteService=h,this.AuthenticationService=f,this.setupLegacyApi()}return t.prototype.isLicensed=function(){return this.LicenseService.isFeatureEnabled(o.LicenseFeatureType.JAVASCRIPT_API)},t.prototype.isPrivate=function(){if(this.isLicensed())return this.InstanceInformationService.getInformation().then(function(t){return t.isPrivate});window.setTimeout(r.requestAnimationFrame_,0)},Object.defineProperty(t.prototype,"about",{get:function(){var t=this;return this.getServiceChecked(function(){return t.AboutApiService})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"poi",{get:function(){var t=this;return this.getServiceChecked(function(){return t.PoiApiService})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"siteModel",{get:function(){var t=this;return this.getServiceChecked(function(){return t.SiteModelApiService})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"dataset",{get:function(){var t=this;return this.getServiceChecked(function(){return t.DatasetApiService})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"transform",{get:function(){var t=this;return this.getServiceChecked(function(){return t.TransformApiService})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"image",{get:function(){var t=this;return this.getServiceChecked(function(){return t.ImageApiService})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"view",{get:function(){var t=this;return this.getServiceChecked(function(){return t.ViewApiService})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ui",{get:function(){var t=this;return this.getServiceChecked(function(){return t.UiApiService})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"share",{get:function(){var t=this;return this.getServiceChecked(function(){return t.ShareApiService})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"license",{get:function(){var t=this;return this.getServiceChecked(function(){return t.LicenseApiService})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"lib",{get:function(){var t=this;return this.getServiceChecked(function(){return t.ThirdPartyLibraryService})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"routing",{get:function(){var t=this;return this.getServiceChecked(function(){return t.RouteService})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"auth",{get:function(){var t=this;return this.getServiceChecked(function(){return t.AuthenticationService})},enumerable:!0,configurable:!0}),t.prototype.getServiceChecked=function(t){if(this.isLicensed())return t();window.setTimeout(r.requestAnimationFrame_,0)},t.prototype.setupLegacyApi=function(){var t=this;this.LicenseService.initialized.then(function(){t.isLicensed()&&(t.legacyApi=window.IV,window.IV.api=t)}).catch(c.handleWarning)},t.ɵfac=function(e){return new(e||t)(l.ɵɵinject(u.LicenseService),l.ɵɵinject(d.ImageApiService),l.ɵɵinject(p.LicenseApiService),l.ɵɵinject(h.PoiApiService),l.ɵɵinject(f.AboutApiService),l.ɵɵinject(g.TransformApiService),l.ɵɵinject(m.UiApiService),l.ɵɵinject(v.ShareApiService),l.ɵɵinject(y.ViewApiService),l.ɵɵinject(b.SiteModelApiService),l.ɵɵinject(w.ThirdPartyLibraryService),l.ɵɵinject(S.DatasetApiService),l.ɵɵinject(x.InstanceInformationService),l.ɵɵinject(M.RouteService),l.ɵɵinject(E.AuthenticationService))},t.ɵprov=l.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.ApiService=C,l.ɵsetClassMetadata(C,[{type:s.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:u.LicenseService},{type:d.ImageApiService},{type:p.LicenseApiService},{type:h.PoiApiService},{type:f.AboutApiService},{type:g.TransformApiService},{type:m.UiApiService},{type:v.ShareApiService},{type:y.ViewApiService},{type:b.SiteModelApiService},{type:w.ThirdPartyLibraryService},{type:S.DatasetApiService},{type:x.InstanceInformationService},{type:M.RouteService},{type:E.AuthenticationService}]},null),i.module("IVWebApp").service("ApiService",a.downgradeInjectable(C))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(103),n(39),n(123),n(177),n(196),n(6)),o=n(0),a=n(0),s=n(103),c=n(39),l=n(123),u=n(177),d=n(196),p=function(){function t(t,e,n,i,r){this.repository=t,this.poiTypeRepository=n,this.poiTypeGroupRepository=r,this.service=e}return t.ɵfac=function(e){return new(e||t)(a.ɵɵinject(s.PoiRepository),a.ɵɵinject(c.PoiService),a.ɵɵinject(l.PoiTypeRepository),a.ɵɵinject(u.PoiTypeService),a.ɵɵinject(d.PoiTypeGroupRepository))},t.ɵprov=a.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.PoiApiService=p,a.ɵsetClassMetadata(p,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:s.PoiRepository},{type:c.PoiService},{type:l.PoiTypeRepository},{type:u.PoiTypeService},{type:d.PoiTypeGroupRepository}]},null),i.module("IVWebApp").service("PoiApiService",r.downgradeInjectable(p))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(22),n(55)),o=n(6),a=n(0),s=n(0),c=n(22),l=function(){function t(t){this.repository=t,this.types=r.SiteModelType}return t.ɵfac=function(e){return new(e||t)(s.ɵɵinject(c.SiteModelRepository))},t.ɵprov=s.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.SiteModelApiService=l,s.ɵsetClassMetadata(l,[{type:a.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:c.SiteModelRepository}]},null),i.module("IVWebApp").service("SiteModelApiService",o.downgradeInjectable(l))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(90),n(49),n(6)),o=n(0),a=n(0),s=n(90),c=n(49),l=function(){function t(t,e){this.repository=t,this.service=e}return t.ɵfac=function(e){return new(e||t)(a.ɵɵinject(s.ImageRepository),a.ɵɵinject(c.ImageService))},t.ɵprov=a.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.ImageApiService=l,a.ɵsetClassMetadata(l,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:s.ImageRepository},{type:c.ImageService}]},null),i.module("IVWebApp").service("ImageApiService",r.downgradeInjectable(l))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(66),n(6)),o=n(0),a=n(0),s=n(66),c=function(){function t(t){this.service=t}return t.ɵfac=function(e){return new(e||t)(a.ɵɵinject(s.TransformService))},t.ɵprov=a.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.TransformApiService=c,a.ɵsetClassMetadata(c,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:s.TransformService}]},null),i.module("IVWebApp").service("TransformApiService",r.downgradeInjectable(c))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(28),n(17),n(6)),o=n(0),a=n(0),s=n(17),c=n(28),l=function(){function t(t,e){this.ViewService=t,this.service=t,this.floorChangerService=e}return Object.defineProperty(t.prototype,"mainView",{get:function(){return this.ViewService.mainView},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"mapView",{get:function(){return this.ViewService.mapView},enumerable:!0,configurable:!0}),t.ɵfac=function(e){return new(e||t)(a.ɵɵinject(s.ViewService),a.ɵɵinject(c.FloorChangerService))},t.ɵprov=a.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.ViewApiService=l,a.ɵsetClassMetadata(l,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:s.ViewService},{type:c.FloorChangerService}]},null),i.module("IVWebApp").service("ViewApiService",r.downgradeInjectable(l))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(54),n(6)),o=n(0),a=n(0),s=n(54),c=function(){function t(t){this.service=t}return t.ɵfac=function(e){return new(e||t)(a.ɵɵinject(s.LicenseService))},t.ɵprov=a.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.LicenseApiService=c,a.ɵsetClassMetadata(c,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:s.LicenseService}]},null),i.module("IVWebApp").service("LicenseApiService",r.downgradeInjectable(c))},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),r=n(124),o=n(128),a=n(2),s=n(2),c=n(1236),l=n(6),u=n(0),d=n(0),p=function(){function e(){var e;this.THREE=i,this.TWEEN=r,this.Hammer=o,this.angular=a,this.jQuery=t,this.info=((e={})[c.ThirdPartyLibraries.THREE]={name:"Three.js",library:c.ThirdPartyLibraries.THREE,version:i.REVISION},e[c.ThirdPartyLibraries.TWEEN]={name:"TweenJS",library:c.ThirdPartyLibraries.TWEEN,version:"17.4.0"},e[c.ThirdPartyLibraries.HAMMER]={name:"Hammer.js",library:c.ThirdPartyLibraries.HAMMER,version:"1.1.3"},e[c.ThirdPartyLibraries.ANGULAR]={name:"Angular",library:c.ThirdPartyLibraries.ANGULAR,version:a.version.full},e[c.ThirdPartyLibraries.JQUERY]={name:"JQuery",library:c.ThirdPartyLibraries.JQUERY,version:t.fn.jquery},e)}return e.ɵfac=function(t){return new(t||e)},e.ɵprov=d.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}();e.ThirdPartyLibraryService=p,d.ɵsetClassMetadata(p,[{type:u.Injectable,args:[{providedIn:"root"}]}],null,null),s.module("IVWebApp").service("ThirdPartyLibraryService",l.downgradeInjectable(p))}).call(this,n(19))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(265),n(6)),o=n(0),a=n(0),s=n(265),c=function(){function t(t){this.service=t}return t.ɵfac=function(e){return new(e||t)(a.ɵɵinject(s.AboutService))},t.ɵprov=a.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.AboutApiService=c,a.ɵsetClassMetadata(c,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:s.AboutService}]},null),i.module("IVWebApp").service("AboutApiService",r.downgradeInjectable(c))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(31),n(6)),o=n(0),a=n(0),s=n(31),c=function(){function t(t){this.repository=t}return t.ɵfac=function(e){return new(e||t)(a.ɵɵinject(s.DatasetRepository))},t.ɵprov=a.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.DatasetApiService=c,a.ɵsetClassMetadata(c,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:s.DatasetRepository}]},null),i.module("IVWebApp").service("DatasetApiService",r.downgradeInjectable(c))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(38),n(38),n(50);var r=n(6),o=n(0),a=n(0),s=n(38),c=n(50),l=function(){function t(t,e){this.sidebarMenuService=t,this.languageService=e}return t.ɵfac=function(e){return new(e||t)(a.ɵɵinject(s.SidebarMenuService),a.ɵɵinject(c.LanguageService))},t.ɵprov=a.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.UiApiService=l,a.ɵsetClassMetadata(l,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:s.SidebarMenuService},{type:c.LanguageService}]},null),i.module("IVWebApp").service("UiApiService",r.downgradeInjectable(l))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(73),n(6)),o=n(0),a=n(0),s=n(73),c=function(){function t(t){this.generateShareUrl=function(){return t.generateShareUrl()}}return t.ɵfac=function(e){return new(e||t)(a.ɵɵinject(s.UrlService))},t.ɵprov=a.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.ShareApiService=c,a.ɵsetClassMetadata(c,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:s.UrlService}]},null),i.module("IVWebApp").service("ShareApiService",r.downgradeInjectable(c))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(1238),s=n(70),c=(n(9),n(31),n(135)),l=(n(14),n(6)),u=n(0),d=n(0),p=n(9),h=n(14),f=n(31),g=function(t){function e(e,n,i){var r=t.call(this,a.PoseEntity,e)||this;return r.GeoTransformationService=n,r.path="poses",r.injectables.GeoTransformationService=r.GeoTransformationService,c.EntityRelationMapper.manyToOne(r,"dataset","datasetId",i),r}return r(e,t),e.prototype.findByDatasetId=function(t){return this.find({dataset_id:t})},e.ɵfac=function(t){return new(t||e)(d.ɵɵinject(p.RestService),d.ɵɵinject(h.GeoTransformationService),d.ɵɵinject(f.DatasetRepository))},e.ɵprov=d.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(s.RestRepository);e.PoseRepository=g,d.ɵsetClassMetadata(g,[{type:u.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:p.RestService},{type:h.GeoTransformationService},{type:f.DatasetRepository}]},null),o.module("IVWebApp").service("PoseRepository",l.downgradeInjectable(g))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__spreadArrays||function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var i=Array(t),r=0;for(e=0;e<n;e++)for(var o=arguments[e],a=0,s=o.length;a<s;a++,r++)i[r]=o[a];return i};Object.defineProperty(e,"__esModule",{value:!0});var a=n(397),s=n(398),c=n(40),l=n(20),u=n(124);n(262);var d=n(200),p=n(25),h=n(4),f=n(16),g=n(255),m=n(321),v=n(264),y=n(8),b=n(399),w=n(24),S=n(218),x=n(349),M=n(67),E=function(t){function e(e,n,i,r,o,a,l,u,d,p,h,m,w,S,x,M,E,C,A,T,O,_,P,I){var k=t.call(this,e)||this;k.ViewService=n,k.CameraFOVLayerFactory=i,k.ConfigService=r,k.LocationMarkerLayerFactory=o,k.MapLayerFactory=a,k.PoiLayerFactory=l,k.PoiService=u,k.RouteLayerFactory=d,k.RouteService=p,k.IV=h,k.PolygonLayerFactory=m,k.ImageService=w,k.FloorChangerService=S,k.TrackingService=x,k.SiteModelService=M,k.LegacyService=E,k.PointCloudMenuService=C,k.DownloadPointCloudService=A,k.ModeService=T,k.gettextCatalog=O,k.UserService=_,k.VolumeClippingMapLayerFactory=P,k.onZoom=new f.Signal,r.initialized.then(function(){return k.init()}).catch(function(){});var D=new s.Viewport(k.divContainer,new b.ViewportInfo("defaultMapCamera"));return k.cameraController=new v.PanningCameraController(D),D.cameraController=k.cameraController,k.viewports.push(D),k.cameraController.camera.position.z=1e4,k.renderer.setPixelRatio(c.isPlatform(c.Platform.IOS)&&window.devicePixelRatio||1),k.scene.name="MapScene",n.onViewSwap.connect(function(t){k.active=!c.isMobileLayout()||t===g.ViewType.MAP,I.dataAccessible&&window.setTimeout(function(){return k.invalidateScene(function(){return k.FloorChangerService.updateFloors(t===g.ViewType.MAP).catch(function(){})})}),t===g.ViewType.PANORAMA&&c.isMobileLayout()&&(k.getCameraFOVLayer().visibleOnMobile=!0,I.dataAccessible&&k.PointCloudMenuService.isCloudVisible()&&k.imageOnCenter&&h.moveToImage(k.imageOnCenter).catch(y.handleWarning))}),n.secondaryViewVisibilityChanged.connect(function(){k.active=n.isMapVisible()}),n.onTransitionStart.connect(function(t){return k.transitionStart(t)}),n.onTransitionEnd.connect(function(t){return k.transitionEnd(t)}),k}return r(e,t),Object.defineProperty(e.prototype,"imageOnCenter",{get:function(){return this._imageOnCenter},enumerable:!0,configurable:!0}),e.prototype.zoomMap=function(t,e){this.tweenViewZoom(this.cameraController,void 0,t,{duration:e})},e.prototype.moveMap=function(t,e){this.tweenViewPosition(this.cameraController,t,{duration:e})},e.prototype.fitViewToBounds=function(t,n,i,r,o){var a=this.getDefaultPadding();n=n||a,i=i||a,r=r||a,o=o||a,n+=c.isMobileLayout()&&this.ViewService.isMapPrimaryView()?50:0;var s=this.getDefaultViewport(),l=M.calcCamParamsToFitBoxIntoScreen(t,s.screenWidth,s.screenHeight,n,i,r,o);0!==s.screenWidth&&0!==s.screenHeight||this.divContainer.onResize();var d={easing:function(t){return u.Easing.Cubic.InOut(t)},duration:e.MOVE_MAP_DEFAULT_DURATION};this.tweenViewPosition(this.cameraController,l.position,d),this.tweenViewZoom(this.cameraController,l.resolution,void 0,d)},e.prototype.isLocationMarkerVisible=function(){return!this.PoiService.isRoutePickingPhase()&&!this.PoiService.isRoutePhase()},e.prototype.getDefaultPadding=function(){var t=c.isMobileLayout();return(this.ViewService.isMapPrimaryView()?1:0)*(t?40:90)+10},e.prototype.getVectorMapLayer=function(){return this.layerPolygon},e.prototype.getSiteModelLayer=function(){return this.layerSiteModel},e.prototype.getLocationMarkerLayer=function(){return this.layerLocationMarker},e.prototype.getMapLayer=function(){return this.layerMap},e.prototype.getCameraFOVLayer=function(){return this.layerCameraFOV},e.prototype.getRouteLayer=function(){return this.layerRoute},e.prototype.getPoiLayer=function(){return this.layerPoi},e.prototype.getVolumeClippingMapLayer=function(){return this.layerVolumeClippingMap},e.prototype.getCamera=function(){return t.prototype.getCamera.call(this)},e.prototype.onZoomComplete=function(){t.prototype.onZoomComplete.call(this),this.fireZoomEvent()},e.prototype.onDragViewStart=function(e){var n=t.prototype.onDragViewStart.call(this,e);return n&&this.ViewService.isPanoPrimaryView()&&(this.ViewService.secondaryViewHovered=!0),this.TrackingService.trackMapDrag(this.ViewService.getPrimaryView(),this.getCamera().position),n},e.prototype.onDragViewEnd=function(e){return this.ViewService.isPanoPrimaryView()&&(this.ViewService.secondaryViewHovered=!1),t.prototype.onDragViewEnd.call(this,e)},e.prototype.onZoomView=function(e,n,i){t.prototype.onZoomView.call(this,e,n,i),this.fireZoomEvent()},e.prototype.onCameraMoveEnd=function(){var t=this;return this.ViewService.isMapPrimaryView()?(this.ImageService.getClosestImage(this.getCamera().position,50,o(this.FloorChangerService.currentFloors,[void 0])).then(function(e){return t._imageOnCenter=e}).catch(function(){return t._imageOnCenter=void 0}),this.FloorChangerService.updateFloors(!0)):Promise.reject(void 0)},e.prototype.onContextMenu=function(t){var e=this;if(this.ModeService.currentMode===w.ModeState.NORMAL&&this.UserService.canCropAndDownloadPointCloud())return{name:this.gettextCatalog.getString("Crop and Download Point Cloud",void 0,"title"),icon:"fa-download",callback:function(){var n=e.getPositionOnGroundPlane(t.x,t.y,e.floorHeight,e.getDefaultViewport());n&&(e.TrackingService.trackPointCloudDownloadEntered(S.MenuType.MapViewContext),e.DownloadPointCloudService.enterDownloadPointCloudMode(n))}}},e.prototype.onClick=function(t){var e=this,n=this.getPositionOnGroundPlane(t.x,t.y,this.floorHeight,this.getDefaultViewport());if(n)if(this.TrackingService.trackMapClick(n),this.PoiService.isRoutePickingPhase()){var i=this.PoiService.getLocationAsPoi(n);this.PoiService.openPoi(i)}else c.isMobileLayout()||this.IV.isMoving()||this.ImageService.getClosestImage(new h.Vector2(n.x,n.y),10,o(this.FloorChangerService.currentFloors,[void 0])).then(function(t){return e.IV.moveToImage(t)}).catch(y.handleWarning)},e.prototype.onDoubleClick=function(t){if(!this.positionTween){var n=this.getPositionOnGroundPlane(t.x,t.y,this.floorHeight);n&&this.moveMap(n,e.DOUBLE_CLICK_ANIMATION_DURATION)}this.zoomMap(.5,e.DOUBLE_CLICK_ANIMATION_DURATION)},e.prototype.onHold=function(t){var n=this.getPositionOnGroundPlane(t.x,t.y,this.floorHeight+e.CUSTOM_LOCATION_DEFAULT_HEIGHT,this.getDefaultViewport());if(!n)return!1;var i=this.PoiService.getLocationAsPoi(n);return this.PoiService.clickPoi(i,m.PoiClickOrigin.VIEW),l.invalidateAngular(),!0},e.prototype.init=function(){var t=this;this.ViewService.onTransitionStart.connect(function(e){return t.onTransitionStartEvent(e)}),this.ViewService.onTransitionEnd.connect(function(e){return t.onTransitionEndEvent(e)}),this.FloorChangerService.onFloorChange.connect(function(e){return t.onFloorChangedEvent(e)}),this.RouteService.onRoutePlanned.connect(function(e){return t.onRoutePlannedEvent(e)}),this.RouteService.onRouteChanged.connect(function(e){return t.onRoutePlannedEvent(e)}),this.layerPolygon=this.PolygonLayerFactory.create(this,this.scene),this.layerLocationMarker=this.LocationMarkerLayerFactory.create(this,this.scene,{circleSegments:e.CIRCLE_SEGMENTS,hideMarkersTimeout:e.HIDE_MARKERS_TIMEOUT,markerColor:new h.Color(this.ConfigService.getInteger(p.Configs.CORE_MAP_MARKER_COLOR,16777215)),markerOpacity:e.MARKER_OPACITY,locationMarkerPng:n(325),locationMarkerHighlightPng:n(325),markerHighlightOpacity:e.MARKER_HIGHLIGHT_OPACITY,markerBlending:this.ConfigService.getInteger(p.Configs.CORE_MAP_MARKER_BLENDING,h.NormalBlending),isMoveMouseToShowEnabled:function(){return t.isLocationMarkerVisible()&&!c.isMobileBrowser()},isVisibilityToggleEnabled:c.isMobileBrowser,isClickToShowEnabled:function(){return t.isLocationMarkerVisible()},isSwappingViewsEnabled:function(){return c.isMobileLayout()&&t.ViewService.canSwapViews()}}),this.layerMap=this.MapLayerFactory.create(this,this.scene),this.layerCameraFOV=this.CameraFOVLayerFactory.create(this,this.scene),this.layerRoute=this.RouteLayerFactory.create(this,this.scene,{visualization:d.RouteViewType.MAP,routeEntryHeight:function(){return t.floorHeight+e.CUSTOM_LOCATION_DEFAULT_HEIGHT}}),this.layerPoi=this.PoiLayerFactory.create(this,this.scene,{distanceThreshold:2e3,hideUnimportant:!0,poiVisibilityCheck:!1,doubleTapInterval:x.InputHandler.DOUBLE_CLICK_INTERVAL,poiNames:function(){return t.ConfigService.getBoolean(p.Configs.POI_NAMES_MAP,!1)},showCustomRoutePoints:function(){return t.PoiService.isRoutePickingPhase()||!t.PoiService.wasRouteFound}}),this.layerVolumeClippingMap=this.VolumeClippingMapLayerFactory.create(this,this.scene,{visible:!1}),this.addToScene(this.layerPolygon),this.addToScene(this.layerLocationMarker),this.addToScene(this.layerMap),this.addToScene(this.layerCameraFOV),this.addToScene(this.layerRoute),this.addToScene(this.layerPoi),this.addToScene(this.layerVolumeClippingMap);var i=this.ConfigService.getInteger(p.Configs.CORE_MAP_BG,4294967295);this.getDefaultViewport().bgColor=i>>8,this.getDefaultViewport().bgAlpha=(255&i)/255,this.cameraController.setAngle(this.ConfigService.getFloat(p.Configs.CORE_MAP_ANGLE,0)/180*Math.PI)},e.prototype.onTransitionStartEvent=function(t){var e=this;if(this.ViewService.isMapVisible()&&(t.image||t.location))if((t.siteModelEntity?Promise.resolve(t.siteModelEntity):t.location?this.SiteModelService.getCurrentFloorByPosition(t.location):t.image.siteModelEntity?Promise.resolve(t.image.siteModelEntity):this.SiteModelService.getCurrentFloorByPosition(t.image.location)).then(function(t){t&&e.FloorChangerService.changeFloorByEntity(t,!1).catch(function(){})}).catch(y.handleWarning),t.siteModelEntity){var n=t.siteModelEntity.getPath().map(function(t){return new h.Vector3(t.x,t.y,0)}),i=(new h.Box3).setFromPoints(n);this.fitViewToBounds(i)}else{var r=t.location?t.location:t.image.location;this.moveMap(r,t.duration)}},e.prototype.onTransitionEndEvent=function(t){t.image&&(this.floorHeight=t.image.floorLocation.z)},e.prototype.onFloorChangedEvent=function(t){t.currentFloors.length>0&&(this.floorHeight=t.currentFloors[0].zMin)},e.prototype.fireZoomEvent=function(){this.LegacyService.triggerEvent("zoomedMap"),this.onZoom.emit()},e.prototype.onRoutePlannedEvent=function(t){t&&t.boundingBox&&this.fitViewToBounds(t.boundingBox)},e.HIDE_MARKERS_TIMEOUT=1500,e.CIRCLE_SEGMENTS=8,e.MARKER_OPACITY=.4,e.MARKER_HIGHLIGHT_OPACITY=.7,e.CUSTOM_LOCATION_DEFAULT_HEIGHT=1.8,e.MOVE_MAP_DEFAULT_DURATION=1e3,e.DOUBLE_CLICK_ANIMATION_DURATION=200,e}(a.AbstractView);e.MapView=E},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(423);n(262),n(49),n(28),n(21),n(15),n(201),n(219),n(200),n(39),n(267),n(83),n(17),n(104),n(271),n(36),n(219);var o=n(6),a=n(0),s=(n(140),n(24),n(27),n(585),n(0)),c=n(17),l=n(219),u=n(15),d=n(201),p=n(262),h=n(267),f=n(39),g=n(200),m=n(104),v=n(49),y=n(28),b=n(21),w=n(83),S=n(271),x=n(36),M=n(140),E=n(27),C=n(585),A=n(24),T=function(){function t(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m,v,y,b,w,S,x){this.ViewService=t,this.CameraFOVLayerFactory=e,this.ConfigService=n,this.LocationMarkerLayerFactory=i,this.MapLayerFactory=r,this.PoiLayerFactory=o,this.PoiService=a,this.RouteLayerFactory=s,this.RouteService=c,this.IV=l,this.PolygonLayerFactory=u,this.ImageService=d,this.FloorChangerService=p,this.TrackingService=h,this.SiteModelService=f,this.LegacyService=g,this.PointCloudMenuService=m,this.AuthenticationService=v,this.DownloadPointCloudService=y,this.gettextCatalog=b,this.UserService=w,this.VolumeClippingMapLayerFactory=S,this.ModeService=x}return t.prototype.create=function(t){return new r.MapView(t,this.ViewService,this.CameraFOVLayerFactory,this.ConfigService,this.LocationMarkerLayerFactory,this.MapLayerFactory,this.PoiLayerFactory,this.PoiService,this.RouteLayerFactory,this.RouteService,this.IV,this.PolygonLayerFactory,this.ImageService,this.FloorChangerService,this.TrackingService,this.SiteModelService,this.LegacyService,this.PointCloudMenuService,this.DownloadPointCloudService,this.ModeService,this.gettextCatalog,this.UserService,this.VolumeClippingMapLayerFactory,this.AuthenticationService)},t.ɵfac=function(e){return new(e||t)(s.ɵɵinject(c.ViewService),s.ɵɵinject(l.CameraFOVLayerFactory),s.ɵɵinject(u.ConfigService),s.ɵɵinject(d.LocationMarkerLayerFactory),s.ɵɵinject(p.MapLayerFactory),s.ɵɵinject(h.PoiLayerFactory),s.ɵɵinject(f.PoiService),s.ɵɵinject(g.RouteLayerFactory),s.ɵɵinject(m.RouteService),s.ɵɵinject("IV"),s.ɵɵinject("PolygonLayerFactory"),s.ɵɵinject(v.ImageService),s.ɵɵinject(y.FloorChangerService),s.ɵɵinject(b.TrackingService),s.ɵɵinject(w.SiteModelService),s.ɵɵinject(S.LegacyService),s.ɵɵinject("PointCloudMenuService"),s.ɵɵinject(x.AuthenticationService),s.ɵɵinject(M.DownloadPointCloudService),s.ɵɵinject("gettextCatalog"),s.ɵɵinject(E.UserService),s.ɵɵinject(C.VolumeClippingMapLayerFactory),s.ɵɵinject(A.ModeService))},t.ɵprov=s.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.MapViewService=T,s.ɵsetClassMetadata(T,[{type:a.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:c.ViewService},{type:l.CameraFOVLayerFactory},{type:u.ConfigService},{type:d.LocationMarkerLayerFactory},{type:p.MapLayerFactory},{type:h.PoiLayerFactory},{type:f.PoiService},{type:g.RouteLayerFactory},{type:m.RouteService},{type:S.LegacyService,decorators:[{type:a.Inject,args:["IV"]}]},{type:void 0,decorators:[{type:a.Inject,args:["PolygonLayerFactory"]}]},{type:v.ImageService},{type:y.FloorChangerService},{type:b.TrackingService},{type:w.SiteModelService},{type:S.LegacyService},{type:void 0,decorators:[{type:a.Inject,args:["PointCloudMenuService"]}]},{type:x.AuthenticationService},{type:M.DownloadPointCloudService},{type:void 0,decorators:[{type:a.Inject,args:["gettextCatalog"]}]},{type:E.UserService},{type:C.VolumeClippingMapLayerFactory},{type:A.ModeService}]},null),i.module("IVWebApp").service("MapViewService",o.downgradeInjectable(T))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(9),n(27),n(36),n(6)),o=n(0),a=n(0),s=n(9),c=n(27),l=n(36),u=function(){function t(){}return t.prototype.clear=function(){this.health=void 0},t}();e.ServerStatus=u;var d=function(){function t(t,e,n){this.RestService=t,this.UserService=e,this.AuthenticationService=n,this.serverStatus=new u}return t.prototype.check=function(){return this.UserService.isAdmin()?this.performCheck():Promise.resolve(this.serverStatus)},t.prototype.getGlobalStatus=function(){return this.serverStatus.health?this.serverStatus.health.status:void 0},t.prototype.performCheck=function(){var t=this;return this.serverStatus.clear(),this.fetchServerHealth().then(function(e){return t.serverStatus.health=e,t.serverStatus}).catch(function(t){return console.warn("Could not fetch health status from the server.",t),Promise.reject(t)})},t.prototype.fetchServerHealth=function(){var t=this;return this.AuthenticationService.initialized.then(function(){return t.RestService.authorizedHttpRequest({method:"GET",url:"status/health",withCredentials:!0},!1)})},t.ɵfac=function(e){return new(e||t)(a.ɵɵinject(s.RestService),a.ɵɵinject(c.UserService),a.ɵɵinject(l.AuthenticationService))},t.ɵprov=a.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.StatusCheckService=d,a.ɵsetClassMetadata(d,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:s.RestService},{type:c.UserService},{type:l.AuthenticationService}]},null),i.module("IVWebApp").service("StatusCheckService",r.downgradeInjectable(d))},function(t,e,n){t.exports=n.p+"b54e740365e3bfa8e8ee7980c60c7d01.ic_panorama_blue.svg"},function(t,e,n){t.exports=n.p+"f538079c66f8d966f6342e46bc706bd7.ic_map_blue.svg"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(180),a=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.resultType=o.SearchResultType.SITE_MODEL,e}return r(e,t),e.prototype.copy=function(t,e){throw new Error("Method not implemented.")},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e)},e}(n(545).SearchResultEntity);e.SiteModelSearchEntity=a},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(83);var r=n(40),o=n(20);n(28),n(600);var a=n(7);n(181);var s=n(260),c=n(180),l=n(25),u=n(4),d=n(16),p=n(8),h=n(321);n(601);var f=n(107),g=function(){function e(t,e,n,i,o,a,s,c,l,u,p,h,f,g){this.PoiService=t,this.SiteModelService=e,this.$timeout=n,this.FloorChangerService=i,this.SiteModelSearchRepository=o,this.IV=a,this.UrlService=s,this.SearchService=c,this.GeoTransformationService=l,this.ConfigService=u,this.SidebarMenuService=p,this.SiteModelRepository=h,this.ViewService=f,this.TrackingService=g,this.resultsList=this.SearchService.resultsList,this.clearPaging=new d.Signal,this.dropdownMarginBottomExtended=r.isPlatform(r.Platform.IOS),this.searchPromisesInProgress=new Set,this.initEventHandlers()}return e.prototype.initEventHandlers=function(){var t=this;this.PoiService.onPoiOpen.connect(function(){return t.SearchService.clearSearchResults()})},e.prototype.search=function(t,n,i){var r=this;if(t){this.hideResultsList();var o=this.buildSearchPromises(t,e.MAX_DROPDOWN_RESULTS,e.MAX_DROPDOWN_RESULTS),s=f.promiseFinally(Promise.all(o).then(function(o){var s=o[0],l=o[1],u=n?l.filter(c):l,d=s.length,p=u.length,h=Math.min(e.MAX_DROPDOWN_RESULTS,d,Math.max(e.SME_DROPDOWN_RESULTS,e.MAX_DROPDOWN_RESULTS-p));s.length=h,u.length=Math.min(u.length,e.MAX_DROPDOWN_RESULTS-h);var f=a.map(u,function(t){return t.fakePoi});return r.PoiService.poisToDisplay=r.SearchService.addRoutePointsToArray(f),r.PoiService.isRouteMode?r.TrackingService.trackRouteInputSearch(t,u.length+s.length,i):r.TrackingService.trackSearchInputSearch(t,u.length+s.length),a.unionWith(s,u,a.isEqual)}),function(){return r.searchPromisesInProgress.delete(s)});return this.searchPromisesInProgress.add(s),s}function c(t){return-1===n.indexOf(t.id)}},e.prototype.manuallySelectResult=function(t,e,n,i){this.selectResult(t,e),this.TrackingService.trackSearchResultSelection(t,n,i)},e.prototype.selectResult=function(t,e){var n=this;void 0===e&&(e=!1),t instanceof s.PoiSearchEntity?this.PoiService.getPoiFromSearchResultAsPoi(t.fakePoi).then(function(t){n.PoiService.clickPoi(t,h.PoiClickOrigin.SEARCH)}).catch(p.handleWarning):(this.SiteModelService.selectModel(t.entity,!0),this.SearchService.clearSearchResults()),e&&(this.resultsList.selectedResult=t),r.isMobileBrowser()&&this.$timeout(function(){o.blurActiveElement()}).catch(p.handleWarning)},e.prototype.closeResult=function(t){var e=this.SiteModelService.selectedModel?c.SearchResultType.SITE_MODEL:c.SearchResultType.POI;this.SearchService.closeResult(t,e)},e.prototype.leaveSearchBox=function(t){this.SearchService.clearSearchResults(!0),this.dismissTypeaheadDropdown(!0),this.trackFocusLost(t)},e.prototype.clearSearchBox=function(t){this.searchPromisesInProgress.clear(),this.clearSearchResults(),this.dismissTypeaheadDropdown(),this.TrackingService.trackSearchInputClear(t,this.resultsList.results?this.resultsList.results.length:void 0)},e.prototype.showResultsListByKey=function(t){this.showResultsList(t)&&this.TrackingService.trackResultsListByKey(t,this.resultsList.results?this.resultsList.results.length:void 0)},e.prototype.showResultsListByClick=function(t){this.showResultsList(t)&&this.TrackingService.trackResultsListByClick(t,this.resultsList.results?this.resultsList.results.length:void 0)},e.prototype.showResultsListByMoreClick=function(t){this.showResultsList(t)&&this.TrackingService.trackResultsListByMoreClick(t,this.resultsList.results?this.resultsList.results.length:void 0)},e.prototype.searchKeyPress=function(t,e){this.TrackingService.trackTypeaheadNavigationKeys(t,e)},e.prototype.trackFocusLost=function(t){this.TrackingService.trackSearchInputBlur(t)},e.prototype.clickHideResultsButton=function(){this.hideResultsList(),this.SearchService.isAnyResultSelected()||this.TrackingService.trackHideResultsClick(),this.closeResult(!1)},e.prototype.clearSearchResults=function(t){void 0===t&&(t=!1),this.SearchService.clearSearchResults(t)},e.prototype.dismissTypeaheadDropdown=function(e){e&&!r.isMobileBrowser()||this.$timeout(function(){t(document).click()}).catch(p.handleWarning)},e.prototype.inputFocused=function(t){var e=this;this.resultsList.onSelect=function(t){return e.manuallySelectResult(t,!0,e.resultsList.query,e.resultsList.results.length)}},e.prototype.showResultsList=function(t){return this.dismissTypeaheadDropdown(),this.SearchService.clearResultsListState(),this.resultsList.query=t,!this.PoiService.openedPoi&&(this.resultsList.query?(this.searchResults(this.resultsList.query),!0):(this.hideResultsList(),!1))},e.prototype.queryChanged=function(t){t||(this.dismissTypeaheadDropdown(!1),this.SearchService.clearSearchResults(!0))},e.prototype.leaveHighlightedResult=function(){this.IV.isMoving()||(this.FloorChangerService.resetCurrentFloors(),this.resetFocusedPoi())},e.prototype.goToHighlightedResult=function(t){r.isMobileBrowser()||(t?(this.resetFocusedPoi(),t.resultType===c.SearchResultType.POI?(t=t,this.PoiService.focusedPoi=t.fakePoi,this.ViewService.mapView.moveMap(t.fakePoi.location,e.MOVE_MAP_DURATION),t.siteModelEntity&&(this.SearchService.savedFloorName||(this.SearchService.savedFloorName=this.FloorChangerService.getCurrentFloorName()),this.FloorChangerService.changeFloorByEntity(t.siteModelEntity,!1).catch(function(){}))):((t=t).entity.globalCenter&&this.ViewService.mapView.moveMap(this.GeoTransformationService.vectorToLocal(t.entity.globalCenter),e.MOVE_MAP_DURATION),this.SearchService.savedFloorName||(this.SearchService.savedFloorName=this.FloorChangerService.getCurrentFloorName()),this.FloorChangerService.changeFloorByEntity(t.entity,!1).catch(function(){}))):this.leaveHighlightedResult())},e.prototype.isSearchInProgress=function(){return this.searchPromisesInProgress.size>0},e.prototype.areAllPagesFetched=function(){return this.resultsList.areAllResultsFetched()},e.prototype.fetchPage=function(t){this.searchResults(this.resultsList.query,t)},e.prototype.hideResultsList=function(){this.SearchService.hideSearchResultsList(),this.clearPaging.emit()},e.prototype.resetFocusedPoi=function(){this.PoiService.focusedPoi&&(this.PoiService.focusedPoi=void 0)},e.prototype.searchResults=function(t,e){var n=this;void 0===e&&(e=0),this.resultsList.show=!0;var i=this.buildSearchPromises(t,20,20,20*e,20*e);Promise.all(i).then(function(t){var e=t[0],i=t[1];n.resultsList.allPoiResultsFetched=i.length<20,n.resultsList.allSiteModelResultsFetched=e.length<20;var r=a.unionWith(e,i,a.isEqual);n.updateResultsList(r);var o=a.filter(n.resultsList.results,function(t){return t.resultType===c.SearchResultType.POI}),s=a.map(o,function(t){return t.fakePoi});return n.$timeout(function(){n.fitMapToPOIs(s)},200)}).catch(p.handleWarning)},e.prototype.buildSearchPromises=function(t,e,n,i,r){return void 0===i&&(i=0),void 0===r&&(r=0),[this.ConfigService.getBoolean(l.Configs.SITE_MODEL_SEARCH_ENABLED,!1)&&!this.resultsList.allSiteModelResultsFetched?this.SiteModelSearchRepository.search(t,e,i):Promise.resolve([]),this.resultsList.allPoiResultsFetched?Promise.resolve([]):this.PoiService.search(t,n,r)]},e.prototype.updateResultsList=function(t){this.resultsList.results=this.resultsList.results||[],this.resultsList.results=this.resultsList.results.concat(t),this.SearchService.updatePoisToDisplay(),o.invalidateAngular(),this.dismissTypeaheadDropdown(),r.isMobileBrowser()&&o.blurActiveElement()},e.prototype.fitMapToPOIs=function(t){if(1===t.length)this.ViewService.mapView.moveMap(t[0].location);else if(t.length>1){var e=this.getResultsListSize(),n=this.ViewService.mapView.getDefaultPadding(),i=r.isMobileLayout(),o=this.createBoundingBox(t);if(o.getSize(new u.Vector3).lengthSq()<1e-9)this.ViewService.mapView.moveMap(t[0].location);else{var a=i?+n+ +e.height:n,s=n,c=i?n:+e.width+ +n,l=n;this.ViewService.mapView.fitViewToBounds(o,s,a,c,l)}}},e.prototype.getResultsListSize=function(){var t={width:0,height:0};if(this.SearchService.canDisplayResultsList()&&this.ViewService.isMapPrimaryView()){var e=i.element("#results-list");t.width=e.width(),t.height=this.ViewService.mapView.getDefaultViewport().height-e.position().top}return t},e.prototype.createBoundingBox=function(t){var e=t.map(function(t){return t.location});return(new u.Box3).setFromPoints(e)},e.MAX_DROPDOWN_RESULTS=5,e.SME_DROPDOWN_RESULTS=2,e.MOVE_MAP_DURATION=300,e}();e.AbstractSearchInputController=g}).call(this,n(19))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1434);var r=function(){function t(){this.restrict="E",this.templateUrl="Core/Misc/WarningDialog.html",this.scope={modalId:"=",parentController:"="}}return t.factory=function(){return function(){return new t}},t}();e.WarningDialogDirective=r,i.module("IVWebApp").directive("warningDialog",r.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1437),n(1438);var r=n(57),o=n(114),a=function(){function t(t,e,n,i){this.gettext=t,this.UserService=e,this.GroupService=n,this.StorageService=i,this.warningDialogConfig={TITLE:this.gettext("Warning Before Making Content Non-Public",void 0,"title"),TEXT:this.gettext("You intend to make content non-public. However, you do not have permissions to make it public again. This change will be irreversible for you. Would you like to continue?"),POSTFIX:"make-non-public-warning-dialog"}}return t.$inject=["gettext","UserService","GroupService","StorageService"],t.prototype.groupChanged=function(e,n,o,a){var s=t.getGroup(e,o);Number.isFinite(s)&&(this.UserService.userInfo.checkAttribute(r.GroupAttributes.CAN_MAKE_PUBLIC)||0!==a?this.saveGroupsToLocalStorage(e):0!==s&&(t.setGroup(a,e,o),this.model=e,this.modelType=n,this.groupType=o,this.actualGroup=s,i.element("#"+n+"-"+e.id+"-"+this.warningDialogConfig.POSTFIX).modal("show")))},t.prototype.warningContinueHandler=function(){t.setGroup(this.actualGroup,this.model,this.groupType),this.saveGroupsToLocalStorage(this.model),i.element("#"+this.modelType+"-"+this.model.id+"-"+this.warningDialogConfig.POSTFIX).modal("hide")},t.prototype.isGroupSelectable=function(t){var e=this.UserService.userInfo;return!(!t||!e)&&(t.id!==o.GroupService.publicGroupId||t.id===o.GroupService.publicGroupId&&e.checkAttribute(r.GroupAttributes.CAN_MAKE_PUBLIC))},t.prototype.getGroupIndent=function(t,e){var n=this.GroupService.getGroupParent(t);return n&&"".concat(e+this.getGroupIndent(n,e)),""},t.prototype.saveGroupsToLocalStorage=function(t){this.StorageService.set("iv_group_read",t.security.groupRead),this.StorageService.set("iv_group_write",t.security.groupWrite)},t.setGroup=function(t,e,n){"groupRead"===n?e.security.groupRead=t:e.security.groupWrite=t},t.getGroup=function(t,e){return"groupRead"===e?t.security.groupRead:t.security.groupWrite},t}();e.PermissionEditorController=a;var s=function(){function t(){this.restrict="E",this.templateUrl="Core/Misc/PermissionEditor.html",this.controller=a,this.controllerAs="vm",this.scope={model:"=",modelType:"=",colSpan:"@"}}return t.factory=function(){return function(){return new t}},t}();e.PermissionEditorDirective=s,i.module("IVWebApp").directive("permissionEditor",s.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(){}return t.prototype.toData=function(){var t={};return t.bundle_file_name=this.bundleFilename,t.bundle_serial=this.bundleSerial,t},t.prototype.setBundleFileName=function(t){return this.bundleFilename=t,this},t.prototype.setBundleSerial=function(t){return this.bundleSerial=t,this},t}();e.BundleManagementRequest=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(9),n(6)),o=n(0),a=n(0),s=n(9),c=function(){function t(t){this.RestService=t}return t.prototype.downloadZip=function(e){var n=t.downloadArchiveApiUrl;n+="/"+e.serial,this.RestService.directDownload(n,{})},t.downloadArchiveApiUrl="bundles/archive",t.ɵfac=function(e){return new(e||t)(a.ɵɵinject(s.RestService))},t.ɵprov=a.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.DatasetsWebArchiveService=c,a.ɵsetClassMetadata(c,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:s.RestService}]},null),i.module("IVWebApp").service("DatasetsWebArchiveService",r.downgradeInjectable(c))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(72);var i=n(2);n(435),n(616);var r=n(7),o=n(6),a=n(0),s=n(0),c=n(72),l=function(){function t(t,e){this.flowFactory=t,this.JWTTokenService=e,this.uploaders={}}return t.prototype.setDatasetQuery=function(t,e){this.uploaders[t].opts.query=e},t.prototype.getUploader=function(t,e){if(this.uploaders[t])return this.uploaders[t];var n={};return this.JWTTokenService.setJwtHeaderOnConfig(n),this.uploaders[t]=this.flowFactory.create({target:e.target,prioritizeFirstAndLastChunk:r.get(e,"prioritizeFirstAndLastChunk",!0),allowDuplicateUploads:r.get(e,"allowDuplicateUploads",!1),chunkSize:r.get(e,"chunkSize",10485760),headers:n}),this.uploaders[t]},t.prototype.setUploader=function(t,e){this.uploaders[t]=e},t.prototype.deleteUploader=function(t){delete this.uploaders[t]},t.prototype.isUploading=function(){return r.some(this.uploaders,function(t){return t.isUploading()})},t.ɵfac=function(e){return new(e||t)(s.ɵɵinject("flowFactory"),s.ɵɵinject(c.JWTTokenService))},t.ɵprov=s.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.FlowService=l,s.ɵsetClassMetadata(l,[{type:a.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:a.Inject,args:["flowFactory"]}]},{type:c.JWTTokenService}]},null),i.module("IVWebApp").service("FlowService",o.downgradeInjectable(l))},function(t,e,n){(function(t){var n;
  2048. /**
  2049. * @license MIT
  2050. */!function(i,r,o){"use strict";if(i&&r){var a=i.navigator.msPointerEnabled;s.prototype={on:function(t,e){t=t.toLowerCase(),this.events.hasOwnProperty(t)||(this.events[t]=[]),this.events[t].push(e)},off:function(t,e){var n,i,r;void 0!==t?(t=t.toLowerCase(),void 0!==e?this.events.hasOwnProperty(t)&&(i=e,(r=(n=this.events[t]).indexOf(i))>-1&&n.splice(r,1)):delete this.events[t]):this.events={}},fire:function(t,e){e=Array.prototype.slice.call(arguments),t=t.toLowerCase();var n=!1;return this.events.hasOwnProperty(t)&&f(this.events[t],function(t){n=!1===t.apply(this,e.slice(1))||n},this),"catchall"!=t&&(e.unshift("catchAll"),n=!1===this.fire.apply(this,e)||n),!n},webkitReadDataTransfer:function(t){var e=this,n=t.dataTransfer.items.length,i=[];function r(t,e){t.relativePath=e.substring(1),i.push(t),a()}function o(t){throw a(),t}function a(){0==--n&&e.addFiles(i,t)}f(t.dataTransfer.items,function(t){var e=t.webkitGetAsEntry();e?e.isFile?r(t.getAsFile(),e.fullPath):function t(e){e.readEntries(function(i){i.length?(n+=i.length,f(i,function(e){if(e.isFile){var n=e.fullPath;e.file(function(t){r(t,n)},o)}else e.isDirectory&&t(e.createReader())}),t(e)):a()},o)}(e.createReader()):a()})},generateUniqueIdentifier:function(t){var e=this.opts.generateUniqueIdentifier;if("function"==typeof e)return e(t);var n=t.relativePath||t.webkitRelativePath||t.fileName||t.name;return t.size+"-"+n.replace(/[^0-9a-zA-Z_-]/gim,"")},uploadNextChunk:function(t){var e=!1;if(this.opts.prioritizeFirstAndLastChunk&&(f(this.files,function(t){return!t.paused&&t.chunks.length&&"pending"===t.chunks[0].status()?(t.chunks[0].send(),e=!0,!1):!t.paused&&t.chunks.length>1&&"pending"===t.chunks[t.chunks.length-1].status()?(t.chunks[t.chunks.length-1].send(),e=!0,!1):void 0}),e))return e;if(f(this.files,function(t){if(t.paused||f(t.chunks,function(t){if("pending"===t.status())return t.send(),e=!0,!1}),e)return!1}),e)return!0;var n=!1;return f(this.files,function(t){if(!t.isComplete())return n=!0,!1}),n||t||p(function(){this.fire("complete")},this),!1},assignBrowse:function(t,e,n,i){t instanceof Element&&(t=[t]),f(t,function(t){var o;"INPUT"===t.tagName&&"file"===t.type?o=t:((o=r.createElement("input")).setAttribute("type","file"),h(o.style,{visibility:"hidden",position:"absolute",width:"1px",height:"1px"}),t.appendChild(o),t.addEventListener("click",function(){o.click()},!1)),this.opts.singleFile||n||o.setAttribute("multiple","multiple"),e&&o.setAttribute("webkitdirectory","webkitdirectory"),f(i,function(t,e){o.setAttribute(e,t)});var a=this;o.addEventListener("change",function(t){t.target.value&&(a.addFiles(t.target.files,t),t.target.value="")},!1)},this)},assignDrop:function(t){void 0===t.length&&(t=[t]),f(t,function(t){t.addEventListener("dragover",this.preventEvent,!1),t.addEventListener("dragenter",this.preventEvent,!1),t.addEventListener("drop",this.onDrop,!1)},this)},unAssignDrop:function(t){void 0===t.length&&(t=[t]),f(t,function(t){t.removeEventListener("dragover",this.preventEvent),t.removeEventListener("dragenter",this.preventEvent),t.removeEventListener("drop",this.onDrop)},this)},isUploading:function(){var t=!1;return f(this.files,function(e){if(e.isUploading())return t=!0,!1}),t},_shouldUploadNext:function(){var t=0,e=!0,n=this.opts.simultaneousUploads;return f(this.files,function(i){f(i.chunks,function(i){if("uploading"===i.status()&&++t>=n)return e=!1,!1})}),e&&t},upload:function(){var t=this._shouldUploadNext();if(!1!==t){this.fire("uploadStart");for(var e=!1,n=1;n<=this.opts.simultaneousUploads-t;n++)e=this.uploadNextChunk(!0)||e;e||p(function(){this.fire("complete")},this)}},resume:function(){f(this.files,function(t){t.isComplete()||t.resume()})},pause:function(){f(this.files,function(t){t.pause()})},cancel:function(){for(var t=this.files.length-1;t>=0;t--)this.files[t].cancel()},progress:function(){var t=0,e=0;return f(this.files,function(n){t+=n.progress()*n.size,e+=n.size}),e>0?t/e:0},addFile:function(t,e){this.addFiles([t],e)},addFiles:function(t,e){var n=[];f(t,function(t){if((!a||a&&t.size>0)&&(t.size%4096!=0||"."!==t.name&&"."!==t.fileName)){var i=this.generateUniqueIdentifier(t);if(this.opts.allowDuplicateUploads||!this.getFromUniqueIdentifier(i)){var r=new c(this,t,i);this.fire("fileAdded",r,e)&&n.push(r)}}},this),this.fire("filesAdded",n,e)&&(f(n,function(t){this.opts.singleFile&&this.files.length>0&&this.removeFile(this.files[0]),this.files.push(t)},this),this.fire("filesSubmitted",n,e))},removeFile:function(t){for(var e=this.files.length-1;e>=0;e--)this.files[e]===t&&(this.files.splice(e,1),t.abort(),this.fire("fileRemoved",t))},getFromUniqueIdentifier:function(t){var e=!1;return f(this.files,function(n){n.uniqueIdentifier===t&&(e=n)}),e},getSize:function(){var t=0;return f(this.files,function(e){t+=e.size}),t},sizeUploaded:function(){var t=0;return f(this.files,function(e){t+=e.sizeUploaded()}),t},timeRemaining:function(){var t=0,e=0;return f(this.files,function(n){n.paused||n.error||(t+=n.size-n.sizeUploaded(),e+=n.averageSpeed)}),t&&!e?Number.POSITIVE_INFINITY:t||e?Math.floor(t/e):0}},c.prototype={measureSpeed:function(){var t=Date.now()-this._lastProgressCallback;if(t){var e=this.flowObj.opts.speedSmoothingFactor,n=this.sizeUploaded();this.currentSpeed=Math.max((n-this._prevUploadedSize)/t*1e3,0),this.averageSpeed=e*this.currentSpeed+(1-e)*this.averageSpeed,this._prevUploadedSize=n}},chunkEvent:function(t,e,n){switch(e){case"progress":if(Date.now()-this._lastProgressCallback<this.flowObj.opts.progressCallbacksInterval)break;this.measureSpeed(),this.flowObj.fire("fileProgress",this,t),this.flowObj.fire("progress"),this._lastProgressCallback=Date.now();break;case"error":this.error=!0,this.abort(!0),this.flowObj.fire("fileError",this,n,t),this.flowObj.fire("error",n,this,t);break;case"success":if(this.error)return;this.measureSpeed(),this.flowObj.fire("fileProgress",this,t),this.flowObj.fire("progress"),this._lastProgressCallback=Date.now(),this.isComplete()&&(this.currentSpeed=0,this.averageSpeed=0,this.flowObj.fire("fileSuccess",this,n,t));break;case"retry":this.flowObj.fire("fileRetry",this,t)}},pause:function(){this.paused=!0,this.abort()},resume:function(){this.paused=!1,this.flowObj.upload()},abort:function(t){this.currentSpeed=0,this.averageSpeed=0;var e=this.chunks;t&&(this.chunks=[]),f(e,function(t){"uploading"===t.status()&&(t.abort(),this.flowObj.uploadNextChunk())},this)},cancel:function(){this.flowObj.removeFile(this)},retry:function(){this.bootstrap(),this.flowObj.upload()},bootstrap:function(){"function"==typeof this.flowObj.opts.initFileFn&&this.flowObj.opts.initFileFn(this),this.abort(!0),this.error=!1,this._prevProgress=0;var t=this.flowObj.opts.forceChunkSize?Math.ceil:Math.floor;this.chunkSize=d(this.flowObj.opts.chunkSize,this);for(var e=Math.max(t(this.size/this.chunkSize),1),n=0;n<e;n++)this.chunks.push(new u(this.flowObj,this,n))},progress:function(){if(this.error)return 1;if(1===this.chunks.length)return this._prevProgress=Math.max(this._prevProgress,this.chunks[0].progress()),this._prevProgress;var t=0;f(this.chunks,function(e){t+=e.progress()*(e.endByte-e.startByte)});var e=t/this.size;return this._prevProgress=Math.max(this._prevProgress,e>.9999?1:e),this._prevProgress},isUploading:function(){var t=!1;return f(this.chunks,function(e){if("uploading"===e.status())return t=!0,!1}),t},isComplete:function(){var t=!1;return f(this.chunks,function(e){var n=e.status();if("pending"===n||"uploading"===n||"reading"===n||1===e.preprocessState||1===e.readState)return t=!0,!1}),!t},sizeUploaded:function(){var t=0;return f(this.chunks,function(e){t+=e.sizeUploaded()}),t},timeRemaining:function(){if(this.paused||this.error)return 0;var t=this.size-this.sizeUploaded();return t&&!this.averageSpeed?Number.POSITIVE_INFINITY:t||this.averageSpeed?Math.floor(t/this.averageSpeed):0},getType:function(){return this.file.type&&this.file.type.split("/")[1]},getExtension:function(){return this.name.substr(2+(~-this.name.lastIndexOf(".")>>>0)).toLowerCase()}},u.prototype={getParams:function(){return{flowChunkNumber:this.offset+1,flowChunkSize:this.chunkSize,flowCurrentChunkSize:this.endByte-this.startByte,flowTotalSize:this.fileObj.size,flowIdentifier:this.fileObj.uniqueIdentifier,flowFilename:this.fileObj.name,flowRelativePath:this.fileObj.relativePath,flowTotalChunks:this.fileObj.chunks.length}},getTarget:function(t,e){return 0==e.length?t:(t.indexOf("?")<0?t+="?":t+="&",t+e.join("&"))},test:function(){this.xhr=new XMLHttpRequest,this.xhr.addEventListener("load",this.testHandler,!1),this.xhr.addEventListener("error",this.testHandler,!1);var t=d(this.flowObj.opts.testMethod,this.fileObj,this),e=this.prepareXhrRequest(t,!0);this.xhr.send(e)},preprocessFinished:function(){this.endByte=this.computeEndByte(),this.preprocessState=2,this.send()},readFinished:function(t){this.readState=2,this.bytes=t,this.send()},send:function(){var t=this.flowObj.opts.preprocess,e=this.flowObj.opts.readFileFn;if("function"==typeof t)switch(this.preprocessState){case 0:return this.preprocessState=1,void t(this);case 1:return}switch(this.readState){case 0:return this.readState=1,void e(this.fileObj,this.startByte,this.endByte,this.fileObj.file.type,this);case 1:return}if(!this.flowObj.opts.testChunks||this.tested){this.loaded=0,this.total=0,this.pendingRetry=!1,this.xhr=new XMLHttpRequest,this.xhr.upload.addEventListener("progress",this.progressHandler,!1),this.xhr.addEventListener("load",this.doneHandler,!1),this.xhr.addEventListener("error",this.doneHandler,!1);var n=d(this.flowObj.opts.uploadMethod,this.fileObj,this),i=this.prepareXhrRequest(n,!1,this.flowObj.opts.method,this.bytes),r=this.flowObj.opts.changeRawDataBeforeSend;"function"==typeof r&&(i=r(this,i)),this.xhr.send(i)}else this.test()},abort:function(){var t=this.xhr;this.xhr=null,t&&t.abort()},status:function(t){return 1===this.readState?"reading":this.pendingRetry||1===this.preprocessState?"uploading":this.xhr?this.xhr.readyState<4?"uploading":this.flowObj.opts.successStatuses.indexOf(this.xhr.status)>-1?"success":this.flowObj.opts.permanentErrors.indexOf(this.xhr.status)>-1||!t&&this.retries>=this.flowObj.opts.maxChunkRetries?"error":(this.abort(),"pending"):"pending"},message:function(){return this.xhr?this.xhr.responseText:""},progress:function(){if(this.pendingRetry)return 0;var t=this.status();return"success"===t||"error"===t?1:"pending"===t?0:this.total>0?this.loaded/this.total:0},sizeUploaded:function(){var t=this.endByte-this.startByte;return"success"!==this.status()&&(t=this.progress()*t),t},prepareXhrRequest:function(t,e,n,i){var r=d(this.flowObj.opts.query,this.fileObj,this,e);r=h(r||{},this.getParams());var o=d(this.flowObj.opts.target,this.fileObj,this,e),a=null;if("GET"===t||"octet"===n){var s=[];f(r,function(t,e){s.push([encodeURIComponent(e),encodeURIComponent(t)].join("="))}),o=this.getTarget(o,s),a=i||null}else a=new FormData,f(r,function(t,e){a.append(e,t)}),void 0!==i&&a.append(this.flowObj.opts.fileParameterName,i,this.filename||this.fileObj.file.name);return this.xhr.open(t,o,!0),this.xhr.withCredentials=this.flowObj.opts.withCredentials,f(d(this.flowObj.opts.headers,this.fileObj,this,e),function(t,e){this.xhr.setRequestHeader(e,t)},this),a}},s.evalOpts=d,s.extend=h,s.each=f,s.FlowFile=c,s.FlowChunk=u,s.version="<%= version %>",t&&"object"==typeof t.exports?t.exports=s:(i.Flow=s,void 0===(n=function(){return s}.apply(e,[]))||(t.exports=n))}else console.warn("Flowjs needs window and document objects to work");function s(t){if(this.support=!("undefined"==typeof File||"undefined"==typeof Blob||"undefined"==typeof FileList||!Blob.prototype.slice&&!Blob.prototype.webkitSlice&&!Blob.prototype.mozSlice),this.support){this.supportDirectory=/Chrome/.test(i.navigator.userAgent)||/Firefox/.test(i.navigator.userAgent)||/Edge/.test(i.navigator.userAgent),this.files=[],this.defaults={chunkSize:1048576,forceChunkSize:!1,simultaneousUploads:3,singleFile:!1,fileParameterName:"file",progressCallbacksInterval:500,speedSmoothingFactor:.1,query:{},headers:{},withCredentials:!1,preprocess:null,changeRawDataBeforeSend:null,method:"multipart",testMethod:"GET",uploadMethod:"POST",prioritizeFirstAndLastChunk:!1,allowDuplicateUploads:!1,target:"/",testChunks:!0,generateUniqueIdentifier:null,maxChunkRetries:0,chunkRetryInterval:null,permanentErrors:[404,413,415,500,501],successStatuses:[200,201,202],onDropStopPropagation:!1,initFileFn:null,readFileFn:l},this.opts={},this.events={};var e=this;this.onDrop=function(t){e.opts.onDropStopPropagation&&t.stopPropagation(),t.preventDefault();var n=t.dataTransfer;n.items&&n.items[0]&&n.items[0].webkitGetAsEntry?e.webkitReadDataTransfer(t):e.addFiles(n.files,t)},this.preventEvent=function(t){t.preventDefault()},this.opts=s.extend({},this.defaults,t||{})}}function c(t,e,n){this.flowObj=t,this.bytes=null,this.file=e,this.name=e.fileName||e.name,this.size=e.size,this.relativePath=e.relativePath||e.webkitRelativePath||this.name,this.uniqueIdentifier=void 0===n?t.generateUniqueIdentifier(e):n,this.chunkSize=0,this.chunks=[],this.paused=!1,this.error=!1,this.averageSpeed=0,this.currentSpeed=0,this._lastProgressCallback=Date.now(),this._prevUploadedSize=0,this._prevProgress=0,this.bootstrap()}function l(t,e,n,i,r){var o="slice";t.file.slice?o="slice":t.file.mozSlice?o="mozSlice":t.file.webkitSlice&&(o="webkitSlice"),r.readFinished(t.file[o](e,n,i))}function u(t,e,n){this.flowObj=t,this.fileObj=e,this.offset=n,this.tested=!1,this.retries=0,this.pendingRetry=!1,this.preprocessState=0,this.readState=0,this.loaded=0,this.total=0,this.chunkSize=this.fileObj.chunkSize,this.startByte=this.offset*this.chunkSize,this.filename=null,this.computeEndByte=function(){var t=Math.min(this.fileObj.size,(this.offset+1)*this.chunkSize);return this.fileObj.size-t<this.chunkSize&&!this.flowObj.opts.forceChunkSize&&(t=this.fileObj.size),t},this.endByte=this.computeEndByte(),this.xhr=null;var i=this;this.event=function(t,e){(e=Array.prototype.slice.call(arguments)).unshift(i),i.fileObj.chunkEvent.apply(i.fileObj,e)},this.progressHandler=function(t){t.lengthComputable&&(i.loaded=t.loaded,i.total=t.total),i.event("progress",t)},this.testHandler=function(t){var e=i.status(!0);"error"===e?(i.event(e,i.message()),i.flowObj.uploadNextChunk()):"success"===e?(i.tested=!0,i.event(e,i.message()),i.flowObj.uploadNextChunk()):i.fileObj.paused||(i.tested=!0,i.send())},this.doneHandler=function(t){var e=i.status();if("success"===e||"error"===e)delete this.data,i.event(e,i.message()),i.flowObj.uploadNextChunk();else if(!i.fileObj.paused){i.event("retry",i.message()),i.pendingRetry=!0,i.abort(),i.retries++;var n=i.flowObj.opts.chunkRetryInterval;null!==n?setTimeout(function(){i.send()},n):i.send()}}}function d(t,e){return"function"==typeof t&&(e=Array.prototype.slice.call(arguments),t=t.apply(null,e.slice(1))),t}function p(t,e){setTimeout(t.bind(e),0)}function h(t,e){return f(arguments,function(e){e!==t&&f(e,function(e,n){t[n]=e})}),t}function f(t,e,n){var i;if(t)if(void 0!==t.length){for(i=0;i<t.length;i++)if(!1===e.call(n,t[i],i))return}else for(i in t)if(t.hasOwnProperty(i)&&!1===e.call(n,t[i],i))return}}("undefined"!=typeof window&&window,"undefined"!=typeof document&&document)}).call(this,n(452)(t))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(6),o=n(0),a=n(283),s=n(0),c=function(){function t(t,e){var n,i;this.gettextCatalog=t,this.gettext=e,this.jobNameTranslation={},this.jobErrorTitleTranslation={},this.jobNameTranslation=((n={})[a.JobName.BUNDLE_IMPORT_JOB]=this.gettext("Import Bundle",void 0,"title"),n[a.JobName.BUNDLE_WIFI_IMPORT_JOB]=this.gettext("Import Navigation App Data",void 0,"title"),n[a.JobName.BUNDLE_NAVGRAPH_IMPORT_JOB]=this.gettext("Import Navgraph",void 0,"title"),n[a.JobName.UNZIP_AND_MERGE_JOB]=this.gettext("Unpack Archive",void 0,"title"),n[a.JobName.MAPS_AND_NAVGRAPH_GENERATOR_JOB]=this.gettext("Compute Maps and Navigation Graph",void 0,"title"),n[a.JobName.MAPS_GENERATOR_JOB]=this.gettext("Compute Maps",void 0,"title"),n[a.JobName.FLOOR_MAPS_GENERATOR_JOB]=this.gettext("Compute Floor Maps",void 0,"title"),n[a.JobName.FLOOR_MAPS_TILER_JOB]=this.gettext("Upload Maps",void 0,"title"),n[a.JobName.NAVGRAPH_GENERATOR_JOB]=this.gettext("Compute Navigation Graph",void 0,"title"),n[a.JobName.POINTCLOUD_IMPORTER_JOB]=this.gettext("Import Point Cloud",void 0,"title"),n[a.JobName.POINTCLOUD_AUTO_ALIGN_JOB]=this.gettext("Automatic Point Cloud Alignment",void 0,"title"),n[a.JobName.DOWNLOAD_DATASET_FROM_S3_JOB]=this.gettext("Copy dataset to local file system",void 0,"title"),n[a.JobName.POINT_CLOUD_CROP_JOB]=this.gettext("Crop Point Cloud",void 0,"title"),n[a.JobName.WEBDIR_UPGRADE_JOB]=this.gettext("Dataset Upgrade",void 0,"title"),n[a.JobName.VISUAL_INDEX_IMPORT_JOB]=this.gettext("Unpacking Visual Index",void 0,"title"),n),this.jobErrorTitleTranslation=((i={})[a.JobName.BUNDLE_IMPORT_JOB]=this.gettext("Error While Importing a Bundle",void 0,"title"),i[a.JobName.BUNDLE_WIFI_IMPORT_JOB]=this.gettext("Error While Importing Navigation App Data",void 0,"title"),i[a.JobName.BUNDLE_NAVGRAPH_IMPORT_JOB]=this.gettext("Error While Importing Navgraph",void 0,"title"),i[a.JobName.UNZIP_AND_MERGE_JOB]=this.gettext("Error While Unpacking the Archive",void 0,"title"),i[a.JobName.MAPS_AND_NAVGRAPH_GENERATOR_JOB]=this.gettext("Error While Creating Maps and Navgraph",void 0,"title"),i[a.JobName.MAPS_GENERATOR_JOB]=this.gettext("Error While Creating Maps",void 0,"title"),i[a.JobName.FLOOR_MAPS_GENERATOR_JOB]=this.gettext("Error While Creating Floor Maps",void 0,"title"),i[a.JobName.FLOOR_MAPS_TILER_JOB]=this.gettext("Error While Uploading Maps",void 0,"title"),i[a.JobName.NAVGRAPH_GENERATOR_JOB]=this.gettext("Error While Creating Navgraph",void 0,"title"),i[a.JobName.POINTCLOUD_IMPORTER_JOB]=this.gettext("Error While Importing a Point Cloud",void 0,"title"),i[a.JobName.POINTCLOUD_AUTO_ALIGN_JOB]=this.gettext("Error While Automatically Aligning Point Cloud",void 0,"title"),i[a.JobName.DOWNLOAD_DATASET_FROM_S3_JOB]=this.gettext("Error while copying dataset to local file system",void 0,"title"),i[a.JobName.POINT_CLOUD_CROP_JOB]=this.gettext("Error While Cropping a Point Cloud",void 0,"title"),i[a.JobName.WEBDIR_UPGRADE_JOB]=this.gettext("Error While Upgrading Datasets",void 0,"title"),i[a.JobName.VISUAL_INDEX_IMPORT_JOB]=this.gettext("Error While Uploading Visual Index",void 0,"title"),i.default=this.gettext("Error While Running the Job",void 0,"title"),i)}return t.prototype.translateJobName=function(t){return this.jobNameTranslation[t]?this.gettextCatalog.getString(this.jobNameTranslation[t],void 0,"title"):t},t.prototype.getJobErrorTitle=function(t){return this.jobErrorTitleTranslation[t]?this.gettextCatalog.getString(this.jobErrorTitleTranslation[t],void 0,"title"):this.gettextCatalog.getString(this.jobErrorTitleTranslation.default,void 0,"title")},t.ɵfac=function(e){return new(e||t)(s.ɵɵinject("gettextCatalog"),s.ɵɵinject("gettext"))},t.ɵprov=s.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.JobNameTranslatorService=c,s.ɵsetClassMetadata(c,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:o.Inject,args:["gettextCatalog"]}]},{type:void 0,decorators:[{type:o.Inject,args:["gettext"]}]}]},null),i.module("IVWebApp").service("JobNameTranslatorService",r.downgradeInjectable(c))},function(t,e,n){"use strict";n.d(e,"a",function(){return a});var i=n(119),r=n(455),o=n(333);function a(t,e){return void 0===e&&(e=i.a),Object(r.a)(function(){return Object(o.a)(t,e)})}},function(t,e,n){"use strict";n.d(e,"a",function(){return o});var i=n(250),r=n(77);function o(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var n=t[t.length-1];return Object(r.a)(n)?(t.pop(),function(e){return Object(i.a)(t,e,n)}):function(e){return Object(i.a)(t,e)}}},function(t,e,n){var i=n(1061);function r(t,e){var n=(e=e||{}).delimiter||".",r=e.maxDepth,o={};return function t(a,s,c){c=c||1,Object.keys(a).forEach(function(l){var u=a[l],d=e.safe&&Array.isArray(u),p=Object.prototype.toString.call(u),h=i(u),f=s?s+n+l:l;if(!d&&!h&&("[object Object]"===p||"[object Array]"===p)&&Object.keys(u).length&&(!e.maxDepth||c<r))return t(u,f,c+1);o[f]=u})}(t),o}t.exports=r,r.flatten=r,r.unflatten=function t(e,n){var r=(n=n||{}).delimiter||".",o=n.overwrite||!1,a={};if(i(e)||"[object Object]"!==Object.prototype.toString.call(e))return e;function s(t){var e=Number(t);return isNaN(e)||-1!==t.indexOf(".")||n.object?t:e}return Object.keys(e).sort(function(t,e){return t.length-e.length}).forEach(function(i){for(var c=i.split(r),l=s(c.shift()),u=s(c[0]),d=a;void 0!==u;){var p=Object.prototype.toString.call(d[l]),h="[object Object]"===p||"[object Array]"===p;if(!o&&!h&&void 0!==d[l])return;(o&&!h||!o&&null==d[l])&&(d[l]="number"!=typeof u||n.object?{}:[]),d=d[l],c.length>0&&(l=s(c.shift()),u=s(c[0]))}d[l]=t(e[i],n)}),a}},function(t,e,n){"use strict";n.r(e),n.d(e,"MAT_DIALOG_DATA",function(){return A}),n.d(e,"MAT_DIALOG_DEFAULT_OPTIONS",function(){return T}),n.d(e,"MAT_DIALOG_SCROLL_STRATEGY",function(){return O}),n.d(e,"MAT_DIALOG_SCROLL_STRATEGY_FACTORY",function(){return _}),n.d(e,"MAT_DIALOG_SCROLL_STRATEGY_PROVIDER",function(){return I}),n.d(e,"MAT_DIALOG_SCROLL_STRATEGY_PROVIDER_FACTORY",function(){return P}),n.d(e,"MatDialog",function(){return k}),n.d(e,"MatDialogActions",function(){return j}),n.d(e,"MatDialogClose",function(){return R}),n.d(e,"MatDialogConfig",function(){return w}),n.d(e,"MatDialogContainer",function(){return M}),n.d(e,"MatDialogContent",function(){return N}),n.d(e,"MatDialogModule",function(){return F}),n.d(e,"MatDialogRef",function(){return C}),n.d(e,"MatDialogTitle",function(){return L}),n.d(e,"matDialogAnimations",function(){return S}),n.d(e,"throwMatDialogContentAlreadyAttachedError",function(){return x});var i=n(115),r=n(69),o=n(0),a=n(47),s=n(1),c=n(37),l=n(3),u=n(32),d=n(274),p=n(93),h=n(165),f=n(221),g=n(438),m=n(30),v=n(63),y=n(60);
  2051. /**
  2052. * @license
  2053. * Copyright Google LLC All Rights Reserved.
  2054. *
  2055. * Use of this source code is governed by an MIT-style license that can be
  2056. * found in the LICENSE file at https://angular.io/license
  2057. */function b(t,e){}var w=function(){this.role="dialog",this.panelClass="",this.hasBackdrop=!0,this.backdropClass="",this.disableClose=!1,this.width="",this.height="",this.maxWidth="80vw",this.data=null,this.ariaDescribedBy=null,this.ariaLabelledBy=null,this.ariaLabel=null,this.autoFocus=!0,this.restoreFocus=!0,this.closeOnNavigation=!0},S={dialogContainer:Object(m.trigger)("dialogContainer",[Object(m.state)("void, exit",Object(m.style)({opacity:0,transform:"scale(0.7)"})),Object(m.state)("enter",Object(m.style)({transform:"none"})),Object(m.transition)("* => enter",Object(m.animate)("150ms cubic-bezier(0, 0, 0.2, 1)",Object(m.style)({transform:"none",opacity:1}))),Object(m.transition)("* => void, * => exit",Object(m.animate)("75ms cubic-bezier(0.4, 0.0, 0.2, 1)",Object(m.style)({opacity:0})))])};
  2058. /**
  2059. * @license
  2060. * Copyright Google LLC All Rights Reserved.
  2061. *
  2062. * Use of this source code is governed by an MIT-style license that can be
  2063. * found in the LICENSE file at https://angular.io/license
  2064. */
  2065. /**
  2066. * @license
  2067. * Copyright Google LLC All Rights Reserved.
  2068. *
  2069. * Use of this source code is governed by an MIT-style license that can be
  2070. * found in the LICENSE file at https://angular.io/license
  2071. */function x(){throw Error("Attempting to attach dialog content after content is already attached")}var M=function(t){function e(e,n,i,r,a){var s=t.call(this)||this;return s._elementRef=e,s._focusTrapFactory=n,s._changeDetectorRef=i,s._config=a,s._elementFocusedBeforeDialogWasOpened=null,s._state="enter",s._animationStateChanged=new o.EventEmitter,s.attachDomPortal=function(t){return s._portalOutlet.hasAttached()&&x(),s._savePreviouslyFocusedElement(),s._portalOutlet.attachDomPortal(t)},s._ariaLabelledBy=a.ariaLabelledBy||null,s._document=r,s}return Object(s.c)(e,t),e.prototype.attachComponentPortal=function(t){return this._portalOutlet.hasAttached()&&x(),this._savePreviouslyFocusedElement(),this._portalOutlet.attachComponentPortal(t)},e.prototype.attachTemplatePortal=function(t){return this._portalOutlet.hasAttached()&&x(),this._savePreviouslyFocusedElement(),this._portalOutlet.attachTemplatePortal(t)},e.prototype._recaptureFocus=function(){this._containsFocus()||this._getFocusTrap().focusInitialElement()||this._elementRef.nativeElement.focus()},e.prototype._trapFocus=function(){this._config.autoFocus?this._getFocusTrap().focusInitialElementWhenReady():this._containsFocus()||this._elementRef.nativeElement.focus()},e.prototype._restoreFocus=function(){var t=this._elementFocusedBeforeDialogWasOpened;if(this._config.restoreFocus&&t&&"function"==typeof t.focus){var e=this._document.activeElement,n=this._elementRef.nativeElement;e&&e!==this._document.body&&e!==n&&!n.contains(e)||t.focus()}this._focusTrap&&this._focusTrap.destroy()},e.prototype._savePreviouslyFocusedElement=function(){var t=this;this._document&&(this._elementFocusedBeforeDialogWasOpened=this._document.activeElement,this._elementRef.nativeElement.focus&&Promise.resolve().then(function(){return t._elementRef.nativeElement.focus()}))},e.prototype._containsFocus=function(){var t=this._elementRef.nativeElement,e=this._document.activeElement;return t===e||t.contains(e)},e.prototype._getFocusTrap=function(){return this._focusTrap||(this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement)),this._focusTrap},e.prototype._onAnimationDone=function(t){"enter"===t.toState?this._trapFocus():"exit"===t.toState&&this._restoreFocus(),this._animationStateChanged.emit(t)},e.prototype._onAnimationStart=function(t){this._animationStateChanged.emit(t)},e.prototype._startExitAnimation=function(){this._state="exit",this._changeDetectorRef.markForCheck()},e.ctorParameters=function(){return[{type:o.ElementRef},{type:v.i},{type:o.ChangeDetectorRef},{type:void 0,decorators:[{type:o.Optional},{type:o.Inject,args:[l.DOCUMENT]}]},{type:w}]},e.propDecorators={_portalOutlet:[{type:o.ViewChild,args:[r.c,{static:!0}]}]},e.ɵfac=function(t){return new(t||e)(o["ɵɵdirectiveInject"](o.ElementRef),o["ɵɵdirectiveInject"](v.i),o["ɵɵdirectiveInject"](o.ChangeDetectorRef),o["ɵɵdirectiveInject"](l.DOCUMENT,8),o["ɵɵdirectiveInject"](w))},e.ɵcmp=o["ɵɵdefineComponent"]({type:e,selectors:[["mat-dialog-container"]],viewQuery:function(t,e){var n;1&t&&o["ɵɵstaticViewQuery"](r.c,!0),2&t&&o["ɵɵqueryRefresh"](n=o["ɵɵloadQuery"]())&&(e._portalOutlet=n.first)},hostAttrs:["tabindex","-1","aria-modal","true",1,"mat-dialog-container"],hostVars:6,hostBindings:function(t,e){1&t&&o["ɵɵcomponentHostSyntheticListener"]("@dialogContainer.start",function(t){return e._onAnimationStart(t)})("@dialogContainer.done",function(t){return e._onAnimationDone(t)}),2&t&&(o["ɵɵattribute"]("id",e._id)("role",e._config.role)("aria-labelledby",e._config.ariaLabel?null:e._ariaLabelledBy)("aria-label",e._config.ariaLabel)("aria-describedby",e._config.ariaDescribedBy||null),o["ɵɵupdateSyntheticHostBinding"]("@dialogContainer",e._state))},features:[o["ɵɵInheritDefinitionFeature"]],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(t,e){1&t&&o["ɵɵtemplate"](0,b,0,0,"ng-template",0)},directives:[r.c],styles:[".mat-dialog-container{display:block;padding:24px;border-radius:4px;box-sizing:border-box;overflow:auto;outline:0;width:100%;height:100%;min-height:inherit;max-height:inherit}.cdk-high-contrast-active .mat-dialog-container{outline:solid 1px}.mat-dialog-content{display:block;margin:0 -24px;padding:0 24px;max-height:65vh;overflow:auto;-webkit-overflow-scrolling:touch}.mat-dialog-title{margin:0 0 20px;display:block}.mat-dialog-actions{padding:8px 0;display:flex;flex-wrap:wrap;min-height:52px;align-items:center;margin-bottom:-24px}.mat-dialog-actions[align=end]{justify-content:flex-end}.mat-dialog-actions[align=center]{justify-content:center}.mat-dialog-actions .mat-button-base+.mat-button-base,.mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-dialog-actions .mat-button-base+.mat-button-base,[dir=rtl] .mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"],encapsulation:2,data:{animation:[S.dialogContainer]}}),e}(r.a),E=0,C=function(){function t(t,e,n){var i=this;void 0===n&&(n="mat-dialog-"+E++),this._overlayRef=t,this._containerInstance=e,this.id=n,this.disableClose=this._containerInstance._config.disableClose,this._afterOpened=new u.a,this._afterClosed=new u.a,this._beforeClosed=new u.a,this._state=0,e._id=n,e._animationStateChanged.pipe(Object(h.a)(function(t){return"done"===t.phaseName&&"enter"===t.toState}),Object(f.a)(1)).subscribe(function(){i._afterOpened.next(),i._afterOpened.complete()}),e._animationStateChanged.pipe(Object(h.a)(function(t){return"done"===t.phaseName&&"exit"===t.toState}),Object(f.a)(1)).subscribe(function(){clearTimeout(i._closeFallbackTimeout),i._finishDialogClose()}),t.detachments().subscribe(function(){i._beforeClosed.next(i._result),i._beforeClosed.complete(),i._afterClosed.next(i._result),i._afterClosed.complete(),i.componentInstance=null,i._overlayRef.dispose()}),t.keydownEvents().pipe(Object(h.a)(function(t){return t.keyCode===y.ESCAPE&&!i.disableClose&&!Object(y.hasModifierKey)(t)})).subscribe(function(t){t.preventDefault(),i.close()}),t.backdropClick().subscribe(function(){i.disableClose?i._containerInstance._recaptureFocus():i.close()})}return t.prototype.close=function(t){var e=this;this._result=t,this._containerInstance._animationStateChanged.pipe(Object(h.a)(function(t){return"start"===t.phaseName}),Object(f.a)(1)).subscribe(function(n){e._beforeClosed.next(t),e._beforeClosed.complete(),e._overlayRef.detachBackdrop(),e._closeFallbackTimeout=setTimeout(function(){return e._finishDialogClose()},n.totalTime+100)}),this._containerInstance._startExitAnimation(),this._state=1},t.prototype.afterOpened=function(){return this._afterOpened.asObservable()},t.prototype.afterClosed=function(){return this._afterClosed.asObservable()},t.prototype.beforeClosed=function(){return this._beforeClosed.asObservable()},t.prototype.backdropClick=function(){return this._overlayRef.backdropClick()},t.prototype.keydownEvents=function(){return this._overlayRef.keydownEvents()},t.prototype.updatePosition=function(t){var e=this._getPositionStrategy();return t&&(t.left||t.right)?t.left?e.left(t.left):e.right(t.right):e.centerHorizontally(),t&&(t.top||t.bottom)?t.top?e.top(t.top):e.bottom(t.bottom):e.centerVertically(),this._overlayRef.updatePosition(),this},t.prototype.updateSize=function(t,e){return void 0===t&&(t=""),void 0===e&&(e=""),this._getPositionStrategy().width(t).height(e),this._overlayRef.updatePosition(),this},t.prototype.addPanelClass=function(t){return this._overlayRef.addPanelClass(t),this},t.prototype.removePanelClass=function(t){return this._overlayRef.removePanelClass(t),this},t.prototype.getState=function(){return this._state},t.prototype._finishDialogClose=function(){this._state=2,this._overlayRef.dispose()},t.prototype._getPositionStrategy=function(){return this._overlayRef.getConfig().positionStrategy},t}(),A=new o.InjectionToken("MatDialogData"),T=new o.InjectionToken("mat-dialog-default-options"),O=new o.InjectionToken("mat-dialog-scroll-strategy");
  2072. /**
  2073. * @license
  2074. * Copyright Google LLC All Rights Reserved.
  2075. *
  2076. * Use of this source code is governed by an MIT-style license that can be
  2077. * found in the LICENSE file at https://angular.io/license
  2078. */function _(t){return function(){return t.scrollStrategies.block()}}function P(t){return function(){return t.scrollStrategies.block()}}var I={provide:O,deps:[i.c],useFactory:P},k=function(){function t(t,e,n,i,r,o,a){var s=this;this._overlay=t,this._injector=e,this._defaultOptions=i,this._parentDialog=o,this._overlayContainer=a,this._openDialogsAtThisLevel=[],this._afterAllClosedAtThisLevel=new u.a,this._afterOpenedAtThisLevel=new u.a,this._ariaHiddenElements=new Map,this.afterAllClosed=Object(d.a)(function(){return s.openDialogs.length?s._afterAllClosed:s._afterAllClosed.pipe(Object(g.a)(void 0))}),this._scrollStrategy=r}return Object.defineProperty(t.prototype,"openDialogs",{get:function(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"afterOpened",{get:function(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"_afterAllClosed",{get:function(){var t=this._parentDialog;return t?t._afterAllClosed:this._afterAllClosedAtThisLevel},enumerable:!0,configurable:!0}),t.prototype.open=function(t,e){var n=this;if((e=function(t,e){return Object(s.a)(Object(s.a)({},e),t)}
  2079. /**
  2080. * @license
  2081. * Copyright Google LLC All Rights Reserved.
  2082. *
  2083. * Use of this source code is governed by an MIT-style license that can be
  2084. * found in the LICENSE file at https://angular.io/license
  2085. */(e,this._defaultOptions||new w)).id&&this.getDialogById(e.id))throw Error('Dialog with id "'+e.id+'" exists already. The dialog id must be unique.');var i=this._createOverlay(e),r=this._attachDialogContainer(i,e),o=this._attachDialogContent(t,r,i,e);return this.openDialogs.length||this._hideNonDialogContentFromAssistiveTechnology(),this.openDialogs.push(o),o.afterClosed().subscribe(function(){return n._removeOpenDialog(o)}),this.afterOpened.next(o),o},t.prototype.closeAll=function(){this._closeDialogs(this.openDialogs)},t.prototype.getDialogById=function(t){return this.openDialogs.find(function(e){return e.id===t})},t.prototype.ngOnDestroy=function(){this._closeDialogs(this._openDialogsAtThisLevel),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete()},t.prototype._createOverlay=function(t){var e=this._getOverlayConfig(t);return this._overlay.create(e)},t.prototype._getOverlayConfig=function(t){var e=new i.d({positionStrategy:this._overlay.position().global(),scrollStrategy:t.scrollStrategy||this._scrollStrategy(),panelClass:t.panelClass,hasBackdrop:t.hasBackdrop,direction:t.direction,minWidth:t.minWidth,minHeight:t.minHeight,maxWidth:t.maxWidth,maxHeight:t.maxHeight,disposeOnNavigation:t.closeOnNavigation});return t.backdropClass&&(e.backdropClass=t.backdropClass),e},t.prototype._attachDialogContainer=function(t,e){var n=e&&e.viewContainerRef&&e.viewContainerRef.injector,i=o.Injector.create({parent:n||this._injector,providers:[{provide:w,useValue:e}]}),a=new r.d(M,e.viewContainerRef,i,e.componentFactoryResolver);return t.attach(a).instance},t.prototype._attachDialogContent=function(t,e,n,i){var a=new C(n,e,i.id);if(t instanceof o.TemplateRef)e.attachTemplatePortal(new r.h(t,null,{$implicit:i.data,dialogRef:a}));else{var s=this._createInjector(i,a,e),c=e.attachComponentPortal(new r.d(t,i.viewContainerRef,s));a.componentInstance=c.instance}return a.updateSize(i.width,i.height).updatePosition(i.position),a},t.prototype._createInjector=function(t,e,n){var i=t&&t.viewContainerRef&&t.viewContainerRef.injector,r=[{provide:M,useValue:n},{provide:A,useValue:t.data},{provide:C,useValue:e}];return!t.direction||i&&i.get(c.Directionality,null)||r.push({provide:c.Directionality,useValue:{value:t.direction,change:Object(p.a)()}}),o.Injector.create({parent:i||this._injector,providers:r})},t.prototype._removeOpenDialog=function(t){var e=this.openDialogs.indexOf(t);e>-1&&(this.openDialogs.splice(e,1),this.openDialogs.length||(this._ariaHiddenElements.forEach(function(t,e){t?e.setAttribute("aria-hidden",t):e.removeAttribute("aria-hidden")}),this._ariaHiddenElements.clear(),this._afterAllClosed.next()))},t.prototype._hideNonDialogContentFromAssistiveTechnology=function(){var t=this._overlayContainer.getContainerElement();if(t.parentElement)for(var e=t.parentElement.children,n=e.length-1;n>-1;n--){var i=e[n];i===t||"SCRIPT"===i.nodeName||"STYLE"===i.nodeName||i.hasAttribute("aria-live")||(this._ariaHiddenElements.set(i,i.getAttribute("aria-hidden")),i.setAttribute("aria-hidden","true"))}},t.prototype._closeDialogs=function(t){for(var e=t.length;e--;)t[e].close()},t.ctorParameters=function(){return[{type:i.c},{type:o.Injector},{type:l.Location,decorators:[{type:o.Optional}]},{type:w,decorators:[{type:o.Optional},{type:o.Inject,args:[T]}]},{type:void 0,decorators:[{type:o.Inject,args:[O]}]},{type:t,decorators:[{type:o.Optional},{type:o.SkipSelf}]},{type:i.e}]},t.ɵfac=function(e){return new(e||t)(o["ɵɵinject"](i.c),o["ɵɵinject"](o.Injector),o["ɵɵinject"](l.Location,8),o["ɵɵinject"](T,8),o["ɵɵinject"](O),o["ɵɵinject"](t,12),o["ɵɵinject"](i.e))},t.ɵprov=o["ɵɵdefineInjectable"]({token:t,factory:function(e){return t.ɵfac(e)}}),t}(),D=0,R=function(){function t(t,e,n){this.dialogRef=t,this._elementRef=e,this._dialog=n,this.type="button"}return t.prototype.ngOnInit=function(){this.dialogRef||(this.dialogRef=V(this._elementRef,this._dialog.openDialogs))},t.prototype.ngOnChanges=function(t){var e=t._matDialogClose||t._matDialogCloseResult;e&&(this.dialogResult=e.currentValue)},t.ctorParameters=function(){return[{type:C,decorators:[{type:o.Optional}]},{type:o.ElementRef},{type:k}]},t.propDecorators={ariaLabel:[{type:o.Input,args:["aria-label"]}],type:[{type:o.Input}],dialogResult:[{type:o.Input,args:["mat-dialog-close"]}],_matDialogClose:[{type:o.Input,args:["matDialogClose"]}]},t.ɵfac=function(e){return new(e||t)(o["ɵɵdirectiveInject"](C,8),o["ɵɵdirectiveInject"](o.ElementRef),o["ɵɵdirectiveInject"](k))},t.ɵdir=o["ɵɵdefineDirective"]({type:t,selectors:[["","mat-dialog-close",""],["","matDialogClose",""]],hostVars:2,hostBindings:function(t,e){1&t&&o["ɵɵlistener"]("click",function(){return e.dialogRef.close(e.dialogResult)}),2&t&&o["ɵɵattribute"]("aria-label",e.ariaLabel||null)("type",e.type)},inputs:{type:"type",dialogResult:["mat-dialog-close","dialogResult"],ariaLabel:["aria-label","ariaLabel"],_matDialogClose:["matDialogClose","_matDialogClose"]},exportAs:["matDialogClose"],features:[o["ɵɵNgOnChangesFeature"]]}),t}(),L=function(){function t(t,e,n){this._dialogRef=t,this._elementRef=e,this._dialog=n,this.id="mat-dialog-title-"+D++}return t.prototype.ngOnInit=function(){var t=this;this._dialogRef||(this._dialogRef=V(this._elementRef,this._dialog.openDialogs)),this._dialogRef&&Promise.resolve().then(function(){var e=t._dialogRef._containerInstance;e&&!e._ariaLabelledBy&&(e._ariaLabelledBy=t.id)})},t.ctorParameters=function(){return[{type:C,decorators:[{type:o.Optional}]},{type:o.ElementRef},{type:k}]},t.propDecorators={id:[{type:o.Input}]},t.ɵfac=function(e){return new(e||t)(o["ɵɵdirectiveInject"](C,8),o["ɵɵdirectiveInject"](o.ElementRef),o["ɵɵdirectiveInject"](k))},t.ɵdir=o["ɵɵdefineDirective"]({type:t,selectors:[["","mat-dialog-title",""],["","matDialogTitle",""]],hostAttrs:[1,"mat-dialog-title"],hostVars:1,hostBindings:function(t,e){2&t&&o["ɵɵhostProperty"]("id",e.id)},inputs:{id:"id"},exportAs:["matDialogTitle"]}),t}(),N=function(){function t(){}return t.ɵfac=function(e){return new(e||t)},t.ɵdir=o["ɵɵdefineDirective"]({type:t,selectors:[["","mat-dialog-content",""],["mat-dialog-content"],["","matDialogContent",""]],hostAttrs:[1,"mat-dialog-content"]}),t}(),j=function(){function t(){}return t.ɵfac=function(e){return new(e||t)},t.ɵdir=o["ɵɵdefineDirective"]({type:t,selectors:[["","mat-dialog-actions",""],["mat-dialog-actions"],["","matDialogActions",""]],hostAttrs:[1,"mat-dialog-actions"]}),t}();function V(t,e){for(var n=t.nativeElement.parentElement;n&&!n.classList.contains("mat-dialog-container");)n=n.parentElement;return n?e.find(function(t){return t.id===n.id}):null}
  2086. /**
  2087. * @license
  2088. * Copyright Google LLC All Rights Reserved.
  2089. *
  2090. * Use of this source code is governed by an MIT-style license that can be
  2091. * found in the LICENSE file at https://angular.io/license
  2092. */var F=function(){function t(){}return t.ɵmod=o["ɵɵdefineNgModule"]({type:t}),t.ɵinj=o["ɵɵdefineInjector"]({factory:function(e){return new(e||t)},providers:[k,I],imports:[[i.f,r.g,a.MatCommonModule],a.MatCommonModule]}),("undefined"==typeof ngJitMode||ngJitMode)&&o["ɵɵsetNgModuleScope"](t,{declarations:function(){return[M,R,L,j,N]},imports:function(){return[i.f,r.g,a.MatCommonModule]},exports:function(){return[M,R,L,N,j,a.MatCommonModule]}}),t}();
  2093. /**
  2094. * @license
  2095. * Copyright Google LLC All Rights Reserved.
  2096. *
  2097. * Use of this source code is governed by an MIT-style license that can be
  2098. * found in the LICENSE file at https://angular.io/license
  2099. */},function(t,e,n){"use strict";n.d(e,"a",function(){return i});var i=function(){function t(){return Error.call(this),this.message="no elements in sequence",this.name="EmptyError",this}return t.prototype=Object.create(Error.prototype),t}()},function(t,e,n){"use strict";n.d(e,"a",function(){return r});var i=n(332);function r(t,e){return function(n){var r;if(r="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new o(r,e));var a=Object.create(n,i.b);return a.source=n,a.subjectFactory=r,a}}var o=function(){function t(t,e){this.subjectFactory=t,this.selector=e}return t.prototype.call=function(t,e){var n=this.selector,i=this.subjectFactory(),r=n(i).subscribe(t);return r.add(e.subscribe(i)),r},t}()},function(t,e,n){"use strict";n.d(e,"b",function(){return l}),n.d(e,"a",function(){return p});var i=n(1),r=n(78),o=n(79),a=n(176),s=n(62),c=n(76);function l(t,e,n){return void 0===n&&(n=Number.POSITIVE_INFINITY),"function"==typeof e?function(i){return i.pipe(l(function(n,i){return Object(c.a)(t(n,i)).pipe(Object(s.a)(function(t,r){return e(n,t,i,r)}))},n))}:("number"==typeof e&&(n=e),function(e){return e.lift(new u(t,n))})}var u=function(){function t(t,e){void 0===e&&(e=Number.POSITIVE_INFINITY),this.project=t,this.concurrent=e}return t.prototype.call=function(t,e){return e.subscribe(new d(t,this.project,this.concurrent))},t}(),d=function(t){function e(e,n,i){void 0===i&&(i=Number.POSITIVE_INFINITY);var r=t.call(this,e)||this;return r.project=n,r.concurrent=i,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return i.c(e,t),e.prototype._next=function(t){this.active<this.concurrent?this._tryNext(t):this.buffer.push(t)},e.prototype._tryNext=function(t){var e,n=this.index++;try{e=this.project(t,n)}catch(t){return void this.destination.error(t)}this.active++,this._innerSub(e,t,n)},e.prototype._innerSub=function(t,e,n){var i=new a.a(this,e,n),o=this.destination;o.add(i);var s=Object(r.a)(this,t,void 0,void 0,i);s!==i&&o.add(s)},e.prototype._complete=function(){this.hasCompleted=!0,0===this.active&&0===this.buffer.length&&this.destination.complete(),this.unsubscribe()},e.prototype.notifyNext=function(t,e,n,i,r){this.destination.next(e)},e.prototype.notifyComplete=function(t){var e=this.buffer;this.remove(t),this.active--,e.length>0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(o.a),p=l},function(t,e,n){"use strict";n.d(e,"b",function(){return c}),n.d(e,"a",function(){return p});var i=n(1),r=n(26),o=n(33),a=n(12),s=n(32);function c(t,e,n,i){return function(r){return r.lift(new l(t,e,n,i))}}var l=function(){function t(t,e,n,i){this.keySelector=t,this.elementSelector=e,this.durationSelector=n,this.subjectSelector=i}return t.prototype.call=function(t,e){return e.subscribe(new u(t,this.keySelector,this.elementSelector,this.durationSelector,this.subjectSelector))},t}(),u=function(t){function e(e,n,i,r,o){var a=t.call(this,e)||this;return a.keySelector=n,a.elementSelector=i,a.durationSelector=r,a.subjectSelector=o,a.groups=null,a.attemptedToUnsubscribe=!1,a.count=0,a}return i.c(e,t),e.prototype._next=function(t){var e;try{e=this.keySelector(t)}catch(t){return void this.error(t)}this._group(t,e)},e.prototype._group=function(t,e){var n=this.groups;n||(n=this.groups=new Map);var i,r=n.get(e);if(this.elementSelector)try{i=this.elementSelector(t)}catch(t){this.error(t)}else i=t;if(!r){r=this.subjectSelector?this.subjectSelector():new s.a,n.set(e,r);var o=new p(e,r,this);if(this.destination.next(o),this.durationSelector){var a=void 0;try{a=this.durationSelector(new p(e,r))}catch(t){return void this.error(t)}this.add(a.subscribe(new d(e,r,this)))}}r.closed||r.next(i)},e.prototype._error=function(t){var e=this.groups;e&&(e.forEach(function(e,n){e.error(t)}),e.clear()),this.destination.error(t)},e.prototype._complete=function(){var t=this.groups;t&&(t.forEach(function(t,e){t.complete()}),t.clear()),this.destination.complete()},e.prototype.removeGroup=function(t){this.groups.delete(t)},e.prototype.unsubscribe=function(){this.closed||(this.attemptedToUnsubscribe=!0,0===this.count&&t.prototype.unsubscribe.call(this))},e}(r.a),d=function(t){function e(e,n,i){var r=t.call(this,n)||this;return r.key=e,r.group=n,r.parent=i,r}return i.c(e,t),e.prototype._next=function(t){this.complete()},e.prototype._unsubscribe=function(){var t=this.parent,e=this.key;this.key=this.parent=null,t&&t.removeGroup(e)},e}(r.a),p=function(t){function e(e,n,i){var r=t.call(this)||this;return r.key=e,r.groupSubject=n,r.refCountSubscription=i,r}return i.c(e,t),e.prototype._subscribe=function(t){var e=new o.a,n=this.refCountSubscription,i=this.groupSubject;return n&&!n.closed&&e.add(new h(n)),e.add(i.subscribe(t)),e},e}(a.a),h=function(t){function e(e){var n=t.call(this)||this;return n.parent=e,e.count++,n}return i.c(e,t),e.prototype.unsubscribe=function(){var e=this.parent;e.closed||this.closed||(t.prototype.unsubscribe.call(this),e.count-=1,0===e.count&&e.attemptedToUnsubscribe&&e.unsubscribe())},e}(o.a)},function(t,e,n){"use strict";n.d(e,"b",function(){return u}),n.d(e,"a",function(){return d});var i=n(1),r=n(149),o=n(56),a=n(26),s=n(79),c=n(78),l=n(116);function u(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var n=t[t.length-1];return"function"==typeof n&&t.pop(),Object(r.a)(t,void 0).lift(new d(n))}var d=function(){function t(t){this.resultSelector=t}return t.prototype.call=function(t,e){return e.subscribe(new p(t,this.resultSelector))},t}(),p=function(t){function e(e,n,i){void 0===i&&(i=Object.create(null));var r=t.call(this,e)||this;return r.iterators=[],r.active=0,r.resultSelector="function"==typeof n?n:null,r.values=i,r}return i.c(e,t),e.prototype._next=function(t){var e=this.iterators;Object(o.a)(t)?e.push(new f(t)):"function"==typeof t[l.a]?e.push(new h(t[l.a]())):e.push(new g(this.destination,this,t))},e.prototype._complete=function(){var t=this.iterators,e=t.length;if(this.unsubscribe(),0!==e){this.active=e;for(var n=0;n<e;n++){var i=t[n];i.stillUnsubscribed?this.destination.add(i.subscribe(i,n)):this.active--}}else this.destination.complete()},e.prototype.notifyInactive=function(){this.active--,0===this.active&&this.destination.complete()},e.prototype.checkIterators=function(){for(var t=this.iterators,e=t.length,n=this.destination,i=0;i<e;i++)if("function"==typeof(a=t[i]).hasValue&&!a.hasValue())return;var r=!1,o=[];for(i=0;i<e;i++){var a,s=(a=t[i]).next();if(a.hasCompleted()&&(r=!0),s.done)return void n.complete();o.push(s.value)}this.resultSelector?this._tryresultSelector(o):n.next(o),r&&n.complete()},e.prototype._tryresultSelector=function(t){var e;try{e=this.resultSelector.apply(this,t)}catch(t){return void this.destination.error(t)}this.destination.next(e)},e}(a.a),h=function(){function t(t){this.iterator=t,this.nextResult=t.next()}return t.prototype.hasValue=function(){return!0},t.prototype.next=function(){var t=this.nextResult;return this.nextResult=this.iterator.next(),t},t.prototype.hasCompleted=function(){var t=this.nextResult;return t&&t.done},t}(),f=function(){function t(t){this.array=t,this.index=0,this.length=0,this.length=t.length}return t.prototype[l.a]=function(){return this},t.prototype.next=function(t){var e=this.index++,n=this.array;return e<this.length?{value:n[e],done:!1}:{value:null,done:!0}},t.prototype.hasValue=function(){return this.array.length>this.index},t.prototype.hasCompleted=function(){return this.array.length===this.index},t}(),g=function(t){function e(e,n,i){var r=t.call(this,e)||this;return r.parent=n,r.observable=i,r.stillUnsubscribed=!0,r.buffer=[],r.isComplete=!1,r}return i.c(e,t),e.prototype[l.a]=function(){return this},e.prototype.next=function(){var t=this.buffer;return 0===t.length&&this.isComplete?{value:null,done:!0}:{value:t.shift(),done:!1}},e.prototype.hasValue=function(){return this.buffer.length>0},e.prototype.hasCompleted=function(){return 0===this.buffer.length&&this.isComplete},e.prototype.notifyComplete=function(){this.buffer.length>0?(this.isComplete=!0,this.parent.notifyInactive()):this.destination.complete()},e.prototype.notifyNext=function(t,e,n,i,r){this.buffer.push(e),this.parent.checkIterators()},e.prototype.subscribe=function(t,e){return Object(c.a)(this,this.observable,this,e)},e}(s.a)},function(t,e,n){"use strict";var i=this&&this.__spreadArrays||function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var i=Array(t),r=0;for(e=0;e<n;e++)for(var o=arguments[e],a=0,s=o.length;a<s;a++,r++)i[r]=o[a];return i};Object.defineProperty(e,"__esModule",{value:!0});var r=n(0),o=n(0),a=function(){function t(){this.events=[],this._log=!1}return t.prototype.push=function(e){this._log&&console.log(e),this.events=i([e],this.events.slice(0,Math.min(t.queueLength-1,this.events.length)))},Object.defineProperty(t.prototype,"logToConsole",{set:function(t){this._log=t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"eventsQueue",{get:function(){return this.events},enumerable:!0,configurable:!0}),t.queueLength=5,t.ɵfac=function(e){return new(e||t)},t.ɵprov=o.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.DeveloperEventService=a,o.ɵsetClassMetadata(a,[{type:r.Injectable,args:[{providedIn:"root"}]}],function(){return[]},null)},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(21);var i=n(0),r=n(578),o=n(2),a=n(6),s=(n(171),n(0)),c=n(171),l=n(21),u=function(){function t(t,e){var n=this;this.MeasurementsService=t,this.TrackingService=e,this.selectedTool=new i.EventEmitter,this.MeasurementsService.measurementToolSelectionChanged.connect(function(t){return n.currentTool=t})}return t.prototype.toggleTool=function(t,e){var n=t===this.currentTool?void 0:t,i=(new r.MeasurementToolChangedEvent).withTool(n?t:this.currentTool).withStatus(!!n).withEventSource(e);this.TrackingService.trackPreDefinedEvent(i),this.selectedTool.emit(n),this.currentTool=n},t.prototype.cycleTool=function(t,e){t.contains(this.currentTool)?this.toggleTool(t.next(this.currentTool),e):this.toggleTool(t.first,e)},t.ɵfac=function(e){return new(e||t)(s.ɵɵinject(c.MeasurementsService),s.ɵɵinject(l.TrackingService))},t.ɵprov=s.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.MeasurementToolChanger=u,s.ɵsetClassMetadata(u,[{type:i.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:c.MeasurementsService},{type:l.TrackingService}]},null),o.module("IVWebApp").service("MeasurementToolChanger",a.downgradeInjectable(u))},function(t,e,n){"use strict";n.d(e,"b",function(){return a}),n.d(e,"a",function(){return c});var i=n(1),r=n(26),o=n(206);function a(t,e){return void 0===e&&(e=0),function(n){return n.lift(new s(t,e))}}var s=function(){function t(t,e){void 0===e&&(e=0),this.scheduler=t,this.delay=e}return t.prototype.call=function(t,e){return e.subscribe(new c(t,this.scheduler,this.delay))},t}(),c=function(t){function e(e,n,i){void 0===i&&(i=0);var r=t.call(this,e)||this;return r.scheduler=n,r.delay=i,r}return i.c(e,t),e.dispatch=function(t){var e=t.notification,n=t.destination;e.observe(n),this.unsubscribe()},e.prototype.scheduleMessage=function(t){this.destination.add(this.scheduler.schedule(e.dispatch,this.delay,new l(t,this.destination)))},e.prototype._next=function(t){this.scheduleMessage(o.a.createNext(t))},e.prototype._error=function(t){this.scheduleMessage(o.a.createError(t)),this.unsubscribe()},e.prototype._complete=function(){this.scheduleMessage(o.a.createComplete()),this.unsubscribe()},e}(r.a),l=function(t,e){this.notification=t,this.destination=e}},function(t,e,n){"use strict";n.d(e,"a",function(){return i});var i=function(){function t(){return Error.call(this),this.message="Timeout has occurred",this.name="TimeoutError",this}return t.prototype=Object.create(Error.prototype),t}()},function(t,e,n){"use strict";n.d(e,"a",function(){return r});var i=n(307);function r(){return Object(i.a)(1)}},function(t,e,n){"use strict";n.d(e,"a",function(){return c});var i=n(1),r=n(56),o=n(149),a=n(79),s=n(78);function c(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];if(1===t.length){if(!Object(r.a)(t[0]))return t[0];t=t[0]}return Object(o.a)(t,void 0).lift(new l)}var l=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new u(t))},t}(),u=function(t){function e(e){var n=t.call(this,e)||this;return n.hasFirst=!1,n.observables=[],n.subscriptions=[],n}return i.c(e,t),e.prototype._next=function(t){this.observables.push(t)},e.prototype._complete=function(){var t=this.observables,e=t.length;if(0===e)this.destination.complete();else{for(var n=0;n<e&&!this.hasFirst;n++){var i=t[n],r=Object(s.a)(this,i,i,n);this.subscriptions&&this.subscriptions.push(r),this.add(r)}this.observables=null}},e.prototype.notifyNext=function(t,e,n,i,r){if(!this.hasFirst){this.hasFirst=!0;for(var o=0;o<this.subscriptions.length;o++)if(o!==n){var a=this.subscriptions[o];a.unsubscribe(),this.remove(a)}this.subscriptions=null}this.destination.next(e)},e}(a.a)},function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(85),a=n(253),s=n(258),c=n(96),l=n(7),u=function(t){function e(e,n,i,r){var o=t.call(this,e)||this;return o.object=n,o.type=i,o._visible=!0,o.createdDate=new Date,o._dirty=!1,o.pov=o.object.getPointOfView(),o._name=r,o._note="",o}return r(e,t),Object.defineProperty(e.prototype,"visible",{get:function(){return this._visible},set:function(t){this.visible!==t&&(this.dirty=!0),this._visible=t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"name",{get:function(){return this._name},set:function(t){this._name!==t&&(this.dirty=!0),this._name=t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"note",{get:function(){return this._note},set:function(t){this._note!==t&&(this.dirty=!0),this._note=t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"dirty",{set:function(t){this._dirty=t},enumerable:!0,configurable:!0}),e.prototype.resolveInjectables=function(){t.prototype.resolveInjectables.call(this),this.TransformService=this.injectables.TransformService,this.UoMService=this.injectables.UoMService},e.prototype.updateOrientationForViewport=function(t){this.object&&this.object.updateOrientationForViewport(t)},e.prototype.updateScaleForViewport=function(t){this.object&&this.object.updateMeshScaleForViewport(t)},e.prototype.calculateViewOrientation=function(t){for(var e=this.getPoints().map(function(e){return s.lookAtLocToLonLat(t,e)}),n=e[0],i=n.lon,r=n.lon,o=n.lat,a=n.lat,c=1;c<e.length;c++)n=e[c],i=Math.max(i,n.lon),r=Math.min(r,n.lon),o=Math.max(o,n.lat),a=Math.min(a,n.lat);return{lon:s.meanAngle(i,r),lat:s.meanAngle(o,a)}},e.prototype.getPointOfView=function(){return this.pov},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this._visible=e.visible,this.pov=a.PointOfView.fromDto(e.point_of_view),this.createdDate=new Date(e.created_date),e.name&&(this._name=e.name),e.note&&(this._note=e.note)},e.prototype.toData=function(){return{id:this.id,name:this.name,visible:this._visible,point_of_view:this.pov?this.pov.toDto():void 0,type:this.type,geometry:this.convertPointToGeometryRest(),created_date:this.createdDate.getTime(),note:this.note}},e.prototype.markDirty=function(){this.dirty=!0},e.prototype.isSaved=function(){return void 0!==this.id&&!this._dirty},e.prototype.isMeasurementVisibleInFloors=function(t){if(this.isHovered||!t||0===t.length)return!0;var e=Number.MAX_VALUE,n=Number.MIN_VALUE;return this.getPoints().forEach(function(t){n=t.z>n?t.z:n,e=t.z<e?t.z:e}),t.some(function(t){return e<=t.zMax&&t.zMin<=n})},e.prototype.toMeasurementBinaryDto=function(){return{type:this.type,povLocation:this.pov?this.pov.location:void 0,povImageId:this.pov?this.pov.imageId:void 0,points:this.getGlobalPoints(),name:this.name}},e.prototype.fill=function(e,n,i){void 0===n&&(n=!1),void 0===i&&(i=!1),t.prototype.fill.call(this,e,i),this._name=e.name,this._note=e.note,this.value=e.value,this._visible=e._visible,this.pov=e.pov?e.pov.clone():void 0,this.createdDate=e.createdDate,this.dirty=!1,n||(this.selected=e.selected,this.isHovered=e.isHovered)},e.prototype.convertPointToGeometryRest=function(){return{coordinates:this.getCoordinates(),type:o.ToolSpec.of(this.type).type===o.ToolType.DISTANCE?"LineString":"Polygon"}},e.prototype.getCoordinates=function(){var t=this.getGlobalPoints().map(function(t){return c.VectorFactory.toArray(t)});return o.ToolSpec.of(this.type).type===o.ToolType.DISTANCE?t:this.convertToAreaCoordinates(t)},e.prototype.convertToAreaCoordinates=function(t){return t.push(t[0]),l.concat([t],[])},e}(n(102).RepositoryObject);e.Measurement=u},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(1241),n(1243),n(131);var a=n(584),s=n(8),c=n(40),l=function(t){function e(e,n){var i=t.call(this,e)||this;return i.ToolboxMenuService=n,i}return r(e,t),e.$inject=["$element","ToolboxMenuService"],e.prototype.getMenuDefaultWidth=function(){return c.isMobileLayout()?window.innerWidth-e.mobileCollapserWidth:e.menuDefaultWidth},e.prototype.getMenuCollapsedWidth=function(){return e.menuCollapsedWidth},e.prototype.getMenuCollapseThreshold=function(){return c.isMobileLayout()?(window.innerWidth-e.mobileCollapserWidth)*e.collapseFactor:e.menuCollapseThreshold},e.prototype.exit=function(){this.ToolboxMenuService.isCloseDisabled&&this.ToolboxMenuService.isCloseDisabled()||this.ToolboxMenuService.closeMenu().catch(s.handleWarning)},e.menuDefaultWidth=440,e.menuCollapsedWidth=60,e.mobileCollapserWidth=50,e.collapseFactor=.75,e.verticalToolboxMenuId="vertical-toolbox-menu",e.menuCollapseThreshold=e.menuDefaultWidth*e.collapseFactor,e}(a.VerticalMenuController);e.ToolboxMenuController=l;var u=function(){function t(){this.restrict="E",this.templateUrl="MenuUI/ToolboxMenuUI/ToolboxMenu.html",this.controller=l,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.ToolboxMenuDirective=u,o.module("IVWebApp").directive("toolboxMenu",u.factory())},function(t,e,n){"use strict";n.d(e,"a",function(){return a});var i=n(1),r=n(79),o=n(78);function a(t){return function(e){return e.lift(new s(t))}}var s=function(){function t(t){this.durationSelector=t}return t.prototype.call=function(t,e){return e.subscribe(new c(t,this.durationSelector))},t}(),c=function(t){function e(e,n){var i=t.call(this,e)||this;return i.durationSelector=n,i.hasValue=!1,i}return i.c(e,t),e.prototype._next=function(t){if(this.value=t,this.hasValue=!0,!this.throttled){var e=void 0;try{e=(0,this.durationSelector)(t)}catch(t){return this.destination.error(t)}var n=Object(o.a)(this,e);!n||n.closed?this.clearThrottle():this.add(this.throttled=n)}},e.prototype.clearThrottle=function(){var t=this.value,e=this.hasValue,n=this.throttled;n&&(this.remove(n),this.throttled=null,n.unsubscribe()),e&&(this.value=null,this.hasValue=!1,this.destination.next(t))},e.prototype.notifyNext=function(t,e,n,i){this.clearThrottle()},e.prototype.notifyComplete=function(){this.clearThrottle()},e}(r.a)},function(t,e){t.exports={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}},function(t,e,n){"use strict";var i=n(74).forEach,r=n(159),o=n(97),a=r("forEach"),s=o("forEach");t.exports=a&&s?[].forEach:function(t){return i(this,t,arguments.length>1?arguments[1]:void 0)}},function(t,e,n){var i=n(34),r=n(350),o=i["__core-js_shared__"]||r("__core-js_shared__",{});t.exports=o},function(t,e,n){var i=n(43),r=n(18),o=n(351);t.exports=!i&&!r(function(){return 7!=Object.defineProperty(o("div"),"a",{get:function(){return 7}}).a})},function(t,e,n){var i=n(352);t.exports=i&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},function(t,e,n){var i=n(58),r=n(109),o=n(238).indexOf,a=n(239);t.exports=function(t,e){var n,s=r(t),c=0,l=[];for(n in s)!i(a,n)&&i(s,n)&&l.push(n);for(;e.length>c;)i(s,n=e[c++])&&(~o(l,n)||l.push(n));return l}},function(t,e,n){var i=n(161);t.exports=i("document","documentElement")},function(t,e,n){var i=n(34),r=n(464),o=i.WeakMap;t.exports="function"==typeof o&&/native code/.test(r(o))},function(t,e,n){var i=n(458),r=Function.toString;"function"!=typeof i.inspectSource&&(i.inspectSource=function(t){return r.call(t)}),t.exports=i.inspectSource},function(t,e,n){var i=n(58),r=n(356),o=n(82),a=n(48);t.exports=function(t,e){for(var n=r(e),s=a.f,c=o.f,l=0;l<n.length;l++){var u=n[l];i(t,u)||s(t,u,c(e,u))}}},function(t,e,n){"use strict";var i,r,o,a=n(99),s=n(88),c=n(58),l=n(45),u=n(158),d=l("iterator"),p=!1;[].keys&&("next"in(o=[].keys())?(r=a(a(o)))!==Object.prototype&&(i=r):p=!0),null==i&&(i={}),u||c(i,d)||s(i,d,function(){return this}),t.exports={IteratorPrototype:i,BUGGY_SAFARI_ITERATORS:p}},function(t,e,n){var i=n(42);t.exports=function(t){if(!i(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t}},function(t,e,n){var i,r,o,a=n(34),s=n(18),c=n(133),l=n(172),u=n(462),d=n(351),p=n(469),h=a.location,f=a.setImmediate,g=a.clearImmediate,m=a.process,v=a.MessageChannel,y=a.Dispatch,b=0,w={},S=function(t){if(w.hasOwnProperty(t)){var e=w[t];delete w[t],e()}},x=function(t){return function(){S(t)}},M=function(t){S(t.data)},E=function(t){a.postMessage(t+"",h.protocol+"//"+h.host)};f&&g||(f=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return w[++b]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},i(b),b},g=function(t){delete w[t]},"process"==c(m)?i=function(t){m.nextTick(x(t))}:y&&y.now?i=function(t){y.now(x(t))}:v&&!p?(o=(r=new v).port2,r.port1.onmessage=M,i=l(o.postMessage,o,1)):!a.addEventListener||"function"!=typeof postMessage||a.importScripts||s(E)||"file:"===h.protocol?i="onreadystatechange"in d("script")?function(t){u.appendChild(d("script")).onreadystatechange=function(){u.removeChild(this),S(t)}}:function(t){setTimeout(x(t),0)}:(i=E,a.addEventListener("message",M,!1))),t.exports={set:f,clear:g}},function(t,e,n){var i=n(290);t.exports=/(iphone|ipod|ipad).*applewebkit/i.test(i)},function(t,e,n){"use strict";var i=n(291).charAt,r=n(110),o=n(355),a=r.set,s=r.getterFor("String Iterator");o(String,"String",function(t){a(this,{type:"String Iterator",string:String(t),index:0})},function(){var t,e=s(this),n=e.string,r=e.index;return r>=n.length?{value:void 0,done:!0}:(t=i(n,r),e.index+=t.length,{value:t,done:!1})})},function(t,e,n){var i=n(18),r=n(45),o=n(158),a=r("iterator");t.exports=!i(function(){var t=new URL("b?a=1&b=2&c=3","http://a"),e=t.searchParams,n="";return t.pathname="c%20d",e.forEach(function(t,i){e.delete("b"),n+=i+t}),o&&!t.toJSON||!e.sort||"http://a/c%20d?a=1&c=3"!==t.href||"3"!==e.get("c")||"a=1"!==String(new URLSearchParams("?a=1"))||!e[a]||"a"!==new URL("https://a@b").username||"b"!==new URLSearchParams(new URLSearchParams("a=b")).get("a")||"xn--e1aybc"!==new URL("http://тест").host||"#%D0%B1"!==new URL("http://a#б").hash||"a1c3"!==n||"x"!==new URL("http://x",void 0).host})},function(t,e,n){"use strict";var i=n(43),r=n(18),o=n(237),a=n(357),s=n(288),c=n(53),l=n(234),u=Object.assign,d=Object.defineProperty;t.exports=!u||r(function(){if(i&&1!==u({b:1},u(d({},"a",{enumerable:!0,get:function(){d(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},n=Symbol();return t[n]=7,"abcdefghijklmnopqrst".split("").forEach(function(t){e[t]=t}),7!=u({},t)[n]||"abcdefghijklmnopqrst"!=o(u({},e)).join("")})?function(t,e){for(var n=c(t),r=arguments.length,u=1,d=a.f,p=s.f;r>u;)for(var h,f=l(arguments[u++]),g=d?o(f).concat(d(f)):o(f),m=g.length,v=0;m>v;)h=g[v++],i&&!p.call(f,h)||(n[h]=f[h]);return n}:u},function(t,e,n){"use strict";var i=n(172),r=n(53),o=n(474),a=n(360),s=n(44),c=n(193),l=n(241);t.exports=function(t){var e,n,u,d,p,h,f=r(t),g="function"==typeof this?this:Array,m=arguments.length,v=m>1?arguments[1]:void 0,y=void 0!==v,b=l(f),w=0;if(y&&(v=i(v,m>2?arguments[2]:void 0,2)),null==b||g==Array&&a(b))for(n=new g(e=s(f.length));e>w;w++)h=y?v(f[w],w):f[w],c(n,w,h);else for(p=(d=b.call(f)).next,n=new g;!(u=p.call(d)).done;w++)h=y?o(d,v,[u.value,w],!0):u.value,c(n,w,h);return n.length=w,n}},function(t,e,n){var i=n(29);t.exports=function(t,e,n,r){try{return r?e(i(n)[0],n[1]):e(n)}catch(e){var o=t.return;throw void 0!==o&&i(o.call(t)),e}}},function(t,e,n){"use strict";n(285);var i=n(5),r=n(161),o=n(471),a=n(98),s=n(243),c=n(162),l=n(358),u=n(110),d=n(192),p=n(58),h=n(172),f=n(242),g=n(29),m=n(42),v=n(160),y=n(173),b=n(663),w=n(241),S=n(45),x=r("fetch"),M=r("Headers"),E=S("iterator"),C=u.set,A=u.getterFor("URLSearchParams"),T=u.getterFor("URLSearchParamsIterator"),O=/\+/g,_=Array(4),P=function(t){return _[t-1]||(_[t-1]=RegExp("((?:%[\\da-f]{2}){"+t+"})","gi"))},I=function(t){try{return decodeURIComponent(t)}catch(e){return t}},k=function(t){var e=t.replace(O," "),n=4;try{return decodeURIComponent(e)}catch(t){for(;n;)e=e.replace(P(n--),I);return e}},D=/[!'()~]|%20/g,R={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"},L=function(t){return R[t]},N=function(t){return encodeURIComponent(t).replace(D,L)},j=function(t,e){if(e)for(var n,i,r=e.split("&"),o=0;o<r.length;)(n=r[o++]).length&&(i=n.split("="),t.push({key:k(i.shift()),value:k(i.join("="))}))},V=function(t){this.entries.length=0,j(this.entries,t)},F=function(t,e){if(t<e)throw TypeError("Not enough arguments")},U=l(function(t,e){C(this,{type:"URLSearchParamsIterator",iterator:b(A(t).entries),kind:e})},"Iterator",function(){var t=T(this),e=t.kind,n=t.iterator.next(),i=n.value;return n.done||(n.value="keys"===e?i.key:"values"===e?i.value:[i.key,i.value]),n}),B=function(){d(this,B,"URLSearchParams");var t,e,n,i,r,o,a,s,c,l=arguments.length>0?arguments[0]:void 0,u=[];if(C(this,{type:"URLSearchParams",entries:u,updateURL:function(){},updateSearchParams:V}),void 0!==l)if(m(l))if("function"==typeof(t=w(l)))for(n=(e=t.call(l)).next;!(i=n.call(e)).done;){if((a=(o=(r=b(g(i.value))).next).call(r)).done||(s=o.call(r)).done||!o.call(r).done)throw TypeError("Expected sequence with length 2");u.push({key:a.value+"",value:s.value+""})}else for(c in l)p(l,c)&&u.push({key:c,value:l[c]+""});else j(u,"string"==typeof l?"?"===l.charAt(0)?l.slice(1):l:l+"")},z=B.prototype;s(z,{append:function(t,e){F(arguments.length,2);var n=A(this);n.entries.push({key:t+"",value:e+""}),n.updateURL()},delete:function(t){F(arguments.length,1);for(var e=A(this),n=e.entries,i=t+"",r=0;r<n.length;)n[r].key===i?n.splice(r,1):r++;e.updateURL()},get:function(t){F(arguments.length,1);for(var e=A(this).entries,n=t+"",i=0;i<e.length;i++)if(e[i].key===n)return e[i].value;return null},getAll:function(t){F(arguments.length,1);for(var e=A(this).entries,n=t+"",i=[],r=0;r<e.length;r++)e[r].key===n&&i.push(e[r].value);return i},has:function(t){F(arguments.length,1);for(var e=A(this).entries,n=t+"",i=0;i<e.length;)if(e[i++].key===n)return!0;return!1},set:function(t,e){F(arguments.length,1);for(var n,i=A(this),r=i.entries,o=!1,a=t+"",s=e+"",c=0;c<r.length;c++)(n=r[c]).key===a&&(o?r.splice(c--,1):(o=!0,n.value=s));o||r.push({key:a,value:s}),i.updateURL()},sort:function(){var t,e,n,i=A(this),r=i.entries,o=r.slice();for(r.length=0,n=0;n<o.length;n++){for(t=o[n],e=0;e<n;e++)if(r[e].key>t.key){r.splice(e,0,t);break}e===n&&r.push(t)}i.updateURL()},forEach:function(t){for(var e,n=A(this).entries,i=h(t,arguments.length>1?arguments[1]:void 0,3),r=0;r<n.length;)i((e=n[r++]).value,e.key,this)},keys:function(){return new U(this,"keys")},values:function(){return new U(this,"values")},entries:function(){return new U(this,"entries")}},{enumerable:!0}),a(z,E,z.entries),a(z,"toString",function(){for(var t,e=A(this).entries,n=[],i=0;i<e.length;)t=e[i++],n.push(N(t.key)+"="+N(t.value));return n.join("&")},{enumerable:!0}),c(B,"URLSearchParams"),i({global:!0,forced:!o},{URLSearchParams:B}),o||"function"!=typeof x||"function"!=typeof M||i({global:!0,enumerable:!0,forced:!0},{fetch:function(t){var e,n,i,r=[t];return arguments.length>1&&(e=arguments[1],m(e)&&(n=e.body,"URLSearchParams"===f(n)&&((i=e.headers?new M(e.headers):new M).has("content-type")||i.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"),e=v(e,{body:y(0,String(n)),headers:y(0,i)}))),r.push(e)),x.apply(this,r)}}),t.exports={URLSearchParams:B,getState:A}},function(t,e,n){var i=n(5),r=n(161),o=n(132),a=n(29),s=n(18),c=r("Reflect","apply"),l=Function.apply;i({target:"Reflect",stat:!0,forced:!s(function(){c(function(){})})},{apply:function(t,e,n){return o(t),a(n),c?c(t,e,n):l.call(t,e,n)}})},function(t,e,n){var i=n(5),r=n(161),o=n(132),a=n(29),s=n(42),c=n(160),l=n(478),u=n(18),d=r("Reflect","construct"),p=u(function(){function t(){}return!(d(function(){},[],t)instanceof t)}),h=!u(function(){d(function(){})}),f=p||h;i({target:"Reflect",stat:!0,forced:f,sham:f},{construct:function(t,e){o(t),a(e);var n=arguments.length<3?t:o(arguments[2]);if(h&&!p)return d(t,e,n);if(t==n){switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3])}var i=[null];return i.push.apply(i,e),new(l.apply(t,i))}var r=n.prototype,u=c(s(r)?r:Object.prototype),f=Function.apply.call(t,u,e);return s(f)?f:u}})},function(t,e,n){"use strict";var i=n(132),r=n(42),o=[].slice,a={},s=function(t,e,n){if(!(e in a)){for(var i=[],r=0;r<e;r++)i[r]="a["+r+"]";a[e]=Function("C,a","return new C("+i.join(",")+")")}return a[e](t,n)};t.exports=Function.bind||function(t){var e=i(this),n=o.call(arguments,1),a=function(){var i=n.concat(o.call(arguments));return this instanceof a?s(e,i.length,i):e.apply(t,i)};return r(e.prototype)&&(a.prototype=e.prototype),a}},function(t,e,n){var i=n(5),r=n(43),o=n(29),a=n(134),s=n(48);i({target:"Reflect",stat:!0,forced:n(18)(function(){Reflect.defineProperty(s.f({},1,{value:1}),1,{value:2})}),sham:!r},{defineProperty:function(t,e,n){o(t);var i=a(e,!0);o(n);try{return s.f(t,i,n),!0}catch(t){return!1}}})},function(t,e,n){var i=n(5),r=n(29),o=n(82).f;i({target:"Reflect",stat:!0},{deleteProperty:function(t,e){var n=o(r(t),e);return!(n&&!n.configurable)&&delete t[e]}})},function(t,e,n){var i=n(5),r=n(42),o=n(29),a=n(58),s=n(82),c=n(99);i({target:"Reflect",stat:!0},{get:function t(e,n){var i,l,u=arguments.length<3?e:arguments[2];return o(e)===u?e[n]:(i=s.f(e,n))?a(i,"value")?i.value:void 0===i.get?void 0:i.get.call(u):r(l=c(e))?t(l,n,u):void 0}})},function(t,e,n){var i=n(5),r=n(43),o=n(29),a=n(82);i({target:"Reflect",stat:!0,sham:!r},{getOwnPropertyDescriptor:function(t,e){return a.f(o(t),e)}})},function(t,e,n){var i=n(5),r=n(29),o=n(99);i({target:"Reflect",stat:!0,sham:!n(359)},{getPrototypeOf:function(t){return o(r(t))}})},function(t,e,n){n(5)({target:"Reflect",stat:!0},{has:function(t,e){return e in t}})},function(t,e,n){var i=n(5),r=n(29),o=Object.isExtensible;i({target:"Reflect",stat:!0},{isExtensible:function(t){return r(t),!o||o(t)}})},function(t,e,n){n(5)({target:"Reflect",stat:!0},{ownKeys:n(356)})},function(t,e,n){var i=n(5),r=n(161),o=n(29);i({target:"Reflect",stat:!0,sham:!n(244)},{preventExtensions:function(t){o(t);try{var e=r("Object","preventExtensions");return e&&e(t),!0}catch(t){return!1}}})},function(t,e,n){var i=n(5),r=n(29),o=n(42),a=n(58),s=n(18),c=n(48),l=n(82),u=n(99),d=n(173);i({target:"Reflect",stat:!0,forced:s(function(){var t=c.f({},"a",{configurable:!0});return!1!==Reflect.set(u(t),"a",1,t)})},{set:function t(e,n,i){var s,p,h=arguments.length<4?e:arguments[3],f=l.f(r(e),n);if(!f){if(o(p=u(e)))return t(p,n,i,h);f=d(0)}if(a(f,"value")){if(!1===f.writable||!o(h))return!1;if(s=l.f(h,n)){if(s.get||s.set||!1===s.writable)return!1;s.value=i,c.f(h,n,s)}else c.f(h,n,d(0,i));return!0}return void 0!==f.set&&(f.set.call(h,i),!0)}})},function(t,e,n){var i=n(5),r=n(29),o=n(467),a=n(191);a&&i({target:"Reflect",stat:!0},{setPrototypeOf:function(t,e){r(t),o(e);try{return a(t,e),!0}catch(t){return!1}}})},function(t,e,n){"use strict";var i=n(292),r=n(491);t.exports=i("Map",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},r)},function(t,e,n){"use strict";var i=n(48).f,r=n(160),o=n(243),a=n(172),s=n(192),c=n(245),l=n(355),u=n(246),d=n(43),p=n(194).fastKey,h=n(110),f=h.set,g=h.getterFor;t.exports={getConstructor:function(t,e,n,l){var u=t(function(t,i){s(t,u,e),f(t,{type:e,index:r(null),first:void 0,last:void 0,size:0}),d||(t.size=0),null!=i&&c(i,t[l],t,n)}),h=g(e),m=function(t,e,n){var i,r,o=h(t),a=v(t,e);return a?a.value=n:(o.last=a={index:r=p(e,!0),key:e,value:n,previous:i=o.last,next:void 0,removed:!1},o.first||(o.first=a),i&&(i.next=a),d?o.size++:t.size++,"F"!==r&&(o.index[r]=a)),t},v=function(t,e){var n,i=h(t),r=p(e);if("F"!==r)return i.index[r];for(n=i.first;n;n=n.next)if(n.key==e)return n};return o(u.prototype,{clear:function(){for(var t=h(this),e=t.index,n=t.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=void 0),delete e[n.index],n=n.next;t.first=t.last=void 0,d?t.size=0:this.size=0},delete:function(t){var e=h(this),n=v(this,t);if(n){var i=n.next,r=n.previous;delete e.index[n.index],n.removed=!0,r&&(r.next=i),i&&(i.previous=r),e.first==n&&(e.first=i),e.last==n&&(e.last=r),d?e.size--:this.size--}return!!n},forEach:function(t){for(var e,n=h(this),i=a(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:n.first;)for(i(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!v(this,t)}}),o(u.prototype,n?{get:function(t){var e=v(this,t);return e&&e.value},set:function(t,e){return m(this,0===t?0:t,e)}}:{add:function(t){return m(this,t=0===t?0:t,t)}}),d&&i(u.prototype,"size",{get:function(){return h(this).size}}),u},setStrong:function(t,e,n){var i=e+" Iterator",r=g(e),o=g(i);l(t,e,function(t,e){f(this,{type:i,target:t,state:r(t),kind:e,last:void 0})},function(){for(var t=o(this),e=t.kind,n=t.last;n&&n.removed;)n=n.previous;return t.target&&(t.last=n=n?n.next:t.state.first)?"keys"==e?{value:n.key,done:!1}:"values"==e?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})},n?"entries":"values",!n,!0),u(e)}}},function(t,e,n){"use strict";var i,r=n(34),o=n(243),a=n(194),s=n(292),c=n(493),l=n(42),u=n(110).enforce,d=n(463),p=!r.ActiveXObject&&"ActiveXObject"in r,h=Object.isExtensible,f=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},g=t.exports=s("WeakMap",f,c);if(d&&p){i=c.getConstructor(f,"WeakMap",!0),a.REQUIRED=!0;var m=g.prototype,v=m.delete,y=m.has,b=m.get,w=m.set;o(m,{delete:function(t){if(l(t)&&!h(t)){var e=u(this);return e.frozen||(e.frozen=new i),v.call(this,t)||e.frozen.delete(t)}return v.call(this,t)},has:function(t){if(l(t)&&!h(t)){var e=u(this);return e.frozen||(e.frozen=new i),y.call(this,t)||e.frozen.has(t)}return y.call(this,t)},get:function(t){if(l(t)&&!h(t)){var e=u(this);return e.frozen||(e.frozen=new i),y.call(this,t)?b.call(this,t):e.frozen.get(t)}return b.call(this,t)},set:function(t,e){if(l(t)&&!h(t)){var n=u(this);n.frozen||(n.frozen=new i),y.call(this,t)?w.call(this,t,e):n.frozen.set(t,e)}else w.call(this,t,e);return this}})}},function(t,e,n){"use strict";var i=n(243),r=n(194).getWeakData,o=n(29),a=n(42),s=n(192),c=n(245),l=n(74),u=n(58),d=n(110),p=d.set,h=d.getterFor,f=l.find,g=l.findIndex,m=0,v=function(t){return t.frozen||(t.frozen=new y)},y=function(){this.entries=[]},b=function(t,e){return f(t.entries,function(t){return t[0]===e})};y.prototype={get:function(t){var e=b(this,t);if(e)return e[1]},has:function(t){return!!b(this,t)},set:function(t,e){var n=b(this,t);n?n[1]=e:this.entries.push([t,e])},delete:function(t){var e=g(this.entries,function(e){return e[0]===t});return~e&&this.entries.splice(e,1),!!~e}},t.exports={getConstructor:function(t,e,n,l){var d=t(function(t,i){s(t,d,e),p(t,{type:e,id:m++,frozen:void 0}),null!=i&&c(i,t[l],t,n)}),f=h(e),g=function(t,e,n){var i=f(t),a=r(o(e),!0);return!0===a?v(i).set(e,n):a[i.id]=n,t};return i(d.prototype,{delete:function(t){var e=f(this);if(!a(t))return!1;var n=r(t);return!0===n?v(e).delete(t):n&&u(n,e.id)&&delete n[e.id]},has:function(t){var e=f(this);if(!a(t))return!1;var n=r(t);return!0===n?v(e).has(t):n&&u(n,e.id)}}),i(d.prototype,n?{get:function(t){var e=f(this);if(a(t)){var n=r(t);return!0===n?v(e).get(t):n?n[e.id]:void 0}},set:function(t,e){return g(this,t,e)}}:{add:function(t){return g(this,t,!0)}}),d}}},function(t,e,n){"use strict";var i=n(292),r=n(491);t.exports=i("Set",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},r)},function(t,e,n){var i=n(109),r=n(190).f,o={}.toString,a="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function(t){return a&&"[object Window]"==o.call(t)?function(t){try{return r(t)}catch(t){return a.slice()}}(t):r(i(t))}},function(t,e,n){var i=n(45);e.f=i},function(t,e,n){var i=n(43),r=n(237),o=n(109),a=n(288).f,s=function(t){return function(e){for(var n,s=o(e),c=r(s),l=c.length,u=0,d=[];l>u;)n=c[u++],i&&!a.call(s,n)||d.push(t?[n,s[n]]:s[n]);return d}};t.exports={entries:s(!0),values:s(!1)}},function(t,e){t.exports=Object.is||function(t,e){return t===e?0!==t||1/t==1/e:t!=t&&e!=e}},function(t,e,n){var i,r,o=n(34),a=n(290),s=o.process,c=s&&s.versions,l=c&&c.v8;l?r=(i=l.split("."))[0]+i[1]:a&&(!(i=a.match(/Edge\/(\d+)/))||i[1]>=74)&&(i=a.match(/Chrome\/(\d+)/))&&(r=i[1]),t.exports=r&&+r},function(t,e,n){"use strict";var i=n(53),r=n(175),o=n(44),a=Math.min;t.exports=[].copyWithin||function(t,e){var n=i(this),s=o(n.length),c=r(t,s),l=r(e,s),u=arguments.length>2?arguments[2]:void 0,d=a((void 0===u?s:r(u,s))-l,s-c),p=1;for(l<c&&c<l+d&&(p=-1,l+=d-1,c+=d-1);d-- >0;)l in n?n[c]=n[l]:delete n[c],c+=p,l+=p;return n}},function(t,e,n){"use strict";var i=n(189),r=n(44),o=n(172),a=function(t,e,n,s,c,l,u,d){for(var p,h=c,f=0,g=!!u&&o(u,d,3);f<s;){if(f in n){if(p=g?g(n[f],f,e):n[f],l>0&&i(p))h=a(t,e,p,r(p.length),h,l-1)-1;else{if(h>=9007199254740991)throw TypeError("Exceed the acceptable array length");t[h]=p}h++}f++}return h};t.exports=a},function(t,e,n){"use strict";var i=n(109),r=n(122),o=n(44),a=n(159),s=n(97),c=Math.min,l=[].lastIndexOf,u=!!l&&1/[1].lastIndexOf(1,-0)<0,d=a("lastIndexOf"),p=s("indexOf",{ACCESSORS:!0,1:0}),h=u||!d||!p;t.exports=h?function(t){if(u)return l.apply(this,arguments)||0;var e=i(this),n=o(e.length),a=n-1;for(arguments.length>1&&(a=c(a,r(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in e&&e[a]===t)return a||0;return-1}:l},function(t,e,n){"use strict";var i=n(5),r=n(298);i({target:"RegExp",proto:!0,forced:/./.exec!==r},{exec:r})},function(t,e,n){var i=n(290);t.exports=/Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(i)},function(t,e,n){var i=n(34),r=n(214).trim,o=n(301),a=i.parseInt,s=/^[+-]?0[Xx]/,c=8!==a(o+"08")||22!==a(o+"0x16");t.exports=c?function(t,e){var n=r(String(t));return a(n,e>>>0||(s.test(n)?16:10))}:a},function(t,e,n){var i=n(34),r=n(214).trim,o=n(301),a=i.parseFloat,s=1/a(o+"-0")!=-1/0;t.exports=s?function(t){var e=r(String(t)),n=a(e);return 0===n&&"-"==e.charAt(0)?-0:n}:a},function(t,e,n){var i=n(42),r=Math.floor;t.exports=function(t){return!i(t)&&isFinite(t)&&r(t)===t}},function(t,e,n){var i=n(133);t.exports=function(t){if("number"!=typeof t&&"Number"!=i(t))throw TypeError("Incorrect invocation");return+t}},function(t,e){var n=Math.log;t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:n(1+t)}},function(t,e,n){var i=n(122),r=n(44);t.exports=function(t){if(void 0===t)return 0;var e=i(t),n=r(e);if(e!==n)throw RangeError("Wrong length or index");return n}},function(t,e,n){var i=n(833);t.exports=function(t,e){var n=i(t);if(n%e)throw RangeError("Wrong offset");return n}},function(t,e,n){var i=n(53),r=n(44),o=n(241),a=n(360),s=n(172),c=n(46).aTypedArrayConstructor;t.exports=function(t){var e,n,l,u,d,p,h=i(t),f=arguments.length,g=f>1?arguments[1]:void 0,m=void 0!==g,v=o(h);if(null!=v&&!a(v))for(p=(d=v.call(h)).next,h=[];!(u=p.call(d)).done;)h.push(u.value);for(m&&f>2&&(g=s(g,arguments[2],2)),n=r(h.length),l=new(c(this))(n),e=0;n>e;e++)l[e]=m?g(h[e],e):h[e];return l}},function(t,e,n){var i,r,o;
  2100. /*!
  2101. * jQuery UI Widget 1.12.1
  2102. * http://jqueryui.com
  2103. *
  2104. * Copyright jQuery Foundation and other contributors
  2105. * Released under the MIT license.
  2106. * http://jquery.org/license
  2107. */r=[n(19),n(249)],void 0===(o="function"==typeof(i=function(t){var e,n=0,i=Array.prototype.slice;return t.cleanData=(e=t.cleanData,function(n){var i,r,o;for(o=0;null!=(r=n[o]);o++)try{(i=t._data(r,"events"))&&i.remove&&t(r).triggerHandler("remove")}catch(t){}e(n)}),t.widget=function(e,n,i){var r,o,a,s={},c=e.split(".")[0],l=c+"-"+(e=e.split(".")[1]);return i||(i=n,n=t.Widget),t.isArray(i)&&(i=t.extend.apply(null,[{}].concat(i))),t.expr[":"][l.toLowerCase()]=function(e){return!!t.data(e,l)},t[c]=t[c]||{},r=t[c][e],o=t[c][e]=function(t,e){if(!this._createWidget)return new o(t,e);arguments.length&&this._createWidget(t,e)},t.extend(o,r,{version:i.version,_proto:t.extend({},i),_childConstructors:[]}),(a=new n).options=t.widget.extend({},a.options),t.each(i,function(e,i){t.isFunction(i)?s[e]=function(){function t(){return n.prototype[e].apply(this,arguments)}function r(t){return n.prototype[e].apply(this,t)}return function(){var e,n=this._super,o=this._superApply;return this._super=t,this._superApply=r,e=i.apply(this,arguments),this._super=n,this._superApply=o,e}}():s[e]=i}),o.prototype=t.widget.extend(a,{widgetEventPrefix:r&&a.widgetEventPrefix||e},s,{constructor:o,namespace:c,widgetName:e,widgetFullName:l}),r?(t.each(r._childConstructors,function(e,n){var i=n.prototype;t.widget(i.namespace+"."+i.widgetName,o,n._proto)}),delete r._childConstructors):n._childConstructors.push(o),t.widget.bridge(e,o),o},t.widget.extend=function(e){for(var n,r,o=i.call(arguments,1),a=0,s=o.length;a<s;a++)for(n in o[a])r=o[a][n],o[a].hasOwnProperty(n)&&void 0!==r&&(t.isPlainObject(r)?e[n]=t.isPlainObject(e[n])?t.widget.extend({},e[n],r):t.widget.extend({},r):e[n]=r);return e},t.widget.bridge=function(e,n){var r=n.prototype.widgetFullName||e;t.fn[e]=function(o){var a="string"==typeof o,s=i.call(arguments,1),c=this;return a?this.length||"instance"!==o?this.each(function(){var n,i=t.data(this,r);return"instance"===o?(c=i,!1):i?t.isFunction(i[o])&&"_"!==o.charAt(0)?(n=i[o].apply(i,s))!==i&&void 0!==n?(c=n&&n.jquery?c.pushStack(n.get()):n,!1):void 0:t.error("no such method '"+o+"' for "+e+" widget instance"):t.error("cannot call methods on "+e+" prior to initialization; attempted to call method '"+o+"'")}):c=void 0:(s.length&&(o=t.widget.extend.apply(null,[o].concat(s))),this.each(function(){var e=t.data(this,r);e?(e.option(o||{}),e._init&&e._init()):t.data(this,r,new n(o,this))})),c}},t.Widget=function(){},t.Widget._childConstructors=[],t.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{classes:{},disabled:!1,create:null},_createWidget:function(e,i){i=t(i||this.defaultElement||this)[0],this.element=t(i),this.uuid=n++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=t(),this.hoverable=t(),this.focusable=t(),this.classesElementLookup={},i!==this&&(t.data(i,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===i&&this.destroy()}}),this.document=t(i.style?i.ownerDocument:i.document||i),this.window=t(this.document[0].defaultView||this.document[0].parentWindow)),this.options=t.widget.extend({},this.options,this._getCreateOptions(),e),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:t.noop,_create:t.noop,_init:t.noop,destroy:function(){var e=this;this._destroy(),t.each(this.classesElementLookup,function(t,n){e._removeClass(n,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:t.noop,widget:function(){return this.element},option:function(e,n){var i,r,o,a=e;if(0===arguments.length)return t.widget.extend({},this.options);if("string"==typeof e)if(a={},e=(i=e.split(".")).shift(),i.length){for(r=a[e]=t.widget.extend({},this.options[e]),o=0;o<i.length-1;o++)r[i[o]]=r[i[o]]||{},r=r[i[o]];if(e=i.pop(),1===arguments.length)return void 0===r[e]?null:r[e];r[e]=n}else{if(1===arguments.length)return void 0===this.options[e]?null:this.options[e];a[e]=n}return this._setOptions(a),this},_setOptions:function(t){var e;for(e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(e){var n,i,r;for(n in e)r=this.classesElementLookup[n],e[n]!==this.options.classes[n]&&r&&r.length&&(i=t(r.get()),this._removeClass(r,n),i.addClass(this._classes({element:i,keys:n,classes:e,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(e){var n=[],i=this;function r(r,o){var a,s;for(s=0;s<r.length;s++)a=i.classesElementLookup[r[s]]||t(),a=e.add?t(t.unique(a.get().concat(e.element.get()))):t(a.not(e.element).get()),i.classesElementLookup[r[s]]=a,n.push(r[s]),o&&e.classes[r[s]]&&n.push(e.classes[r[s]])}return e=t.extend({element:this.element,classes:this.options.classes||{}},e),this._on(e.element,{remove:"_untrackClassesElement"}),e.keys&&r(e.keys.match(/\S+/g)||[],!0),e.extra&&r(e.extra.match(/\S+/g)||[]),n.join(" ")},_untrackClassesElement:function(e){var n=this;t.each(n.classesElementLookup,function(i,r){-1!==t.inArray(e.target,r)&&(n.classesElementLookup[i]=t(r.not(e.target).get()))})},_removeClass:function(t,e,n){return this._toggleClass(t,e,n,!1)},_addClass:function(t,e,n){return this._toggleClass(t,e,n,!0)},_toggleClass:function(t,e,n,i){i="boolean"==typeof i?i:n;var r="string"==typeof t||null===t,o={extra:r?e:n,keys:r?t:e,element:r?this.element:t,add:i};return o.element.toggleClass(this._classes(o),i),this},_on:function(e,n,i){var r,o=this;"boolean"!=typeof e&&(i=n,n=e,e=!1),i?(n=r=t(n),this.bindings=this.bindings.add(n)):(i=n,n=this.element,r=this.widget()),t.each(i,function(i,a){function s(){if(e||!0!==o.options.disabled&&!t(this).hasClass("ui-state-disabled"))return("string"==typeof a?o[a]:a).apply(o,arguments)}"string"!=typeof a&&(s.guid=a.guid=a.guid||s.guid||t.guid++);var c=i.match(/^([\w:-]*)\s*(.*)$/),l=c[1]+o.eventNamespace,u=c[2];u?r.on(l,u,s):n.on(l,s)})},_off:function(e,n){n=(n||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.off(n).off(n),this.bindings=t(this.bindings.not(e).get()),this.focusable=t(this.focusable.not(e).get()),this.hoverable=t(this.hoverable.not(e).get())},_delay:function(t,e){var n=this;return setTimeout(function(){return("string"==typeof t?n[t]:t).apply(n,arguments)},e||0)},_hoverable:function(e){this.hoverable=this.hoverable.add(e),this._on(e,{mouseenter:function(e){this._addClass(t(e.currentTarget),null,"ui-state-hover")},mouseleave:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-hover")}})},_focusable:function(e){this.focusable=this.focusable.add(e),this._on(e,{focusin:function(e){this._addClass(t(e.currentTarget),null,"ui-state-focus")},focusout:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-focus")}})},_trigger:function(e,n,i){var r,o,a=this.options[e];if(i=i||{},(n=t.Event(n)).type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase(),n.target=this.element[0],o=n.originalEvent)for(r in o)r in n||(n[r]=o[r]);return this.element.trigger(n,i),!(t.isFunction(a)&&!1===a.apply(this.element[0],[n].concat(i))||n.isDefaultPrevented())}},t.each({show:"fadeIn",hide:"fadeOut"},function(e,n){t.Widget.prototype["_"+e]=function(i,r,o){var a;"string"==typeof r&&(r={effect:r});var s=r?!0===r||"number"==typeof r?n:r.effect||n:e;"number"==typeof(r=r||{})&&(r={duration:r}),a=!t.isEmptyObject(r),r.complete=o,r.delay&&i.delay(r.delay),a&&t.effects&&t.effects.effect[s]?i[e](r):s!==e&&i[s]?i[s](r.duration,r.easing,o):i.queue(function(n){t(this)[e](),o&&o.call(i[0]),n()})}}),t.widget})?i.apply(e,r):i)||(t.exports=o)},function(t,e,n){"use strict";function i(t,e){function n(){return!n.pred.apply(n.thisArg,arguments)}return n.pred=t,n.thisArg=e,n}n.d(e,"a",function(){return i})},function(t,e){t.exports="data:font/woff;base64,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"},function(t,e){t.exports="data:font/woff;base64,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"},function(t,e){t.exports="data:font/woff;base64,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"},function(t,e){var n,i,r=t.exports={};function o(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function s(t){if(n===setTimeout)return setTimeout(t,0);if((n===o||!n)&&setTimeout)return n=setTimeout,setTimeout(t,0);try{return n(t,0)}catch(e){try{return n.call(null,t,0)}catch(e){return n.call(this,t,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:o}catch(t){n=o}try{i="function"==typeof clearTimeout?clearTimeout:a}catch(t){i=a}}();var c,l=[],u=!1,d=-1;function p(){u&&c&&(u=!1,c.length?l=c.concat(l):d=-1,l.length&&h())}function h(){if(!u){var t=s(p);u=!0;for(var e=l.length;e;){for(c=l,l=[];++d<e;)c&&c[d].run();d=-1,e=l.length}c=null,u=!1,function(t){if(i===clearTimeout)return clearTimeout(t);if((i===a||!i)&&clearTimeout)return i=clearTimeout,clearTimeout(t);try{i(t)}catch(e){try{return i.call(null,t)}catch(e){return i.call(this,t)}}}(t)}}function f(t,e){this.fun=t,this.array=e}function g(){}r.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)e[n-1]=arguments[n];l.push(new f(t,e)),1!==l.length||u||s(h)},f.prototype.run=function(){this.fun.apply(null,this.array)},r.title="browser",r.browser=!0,r.env={},r.argv=[],r.version="",r.versions={},r.on=g,r.addListener=g,r.once=g,r.off=g,r.removeListener=g,r.removeAllListeners=g,r.emit=g,r.prependListener=g,r.prependOnceListener=g,r.listeners=function(t){return[]},r.binding=function(t){throw new Error("process.binding is not supported")},r.cwd=function(){return"/"},r.chdir=function(t){throw new Error("process.chdir is not supported")},r.umask=function(){return 0}},function(t,e,n){var i={"../Modules/MeshModule":[1672,20],"../Modules/PointCloud/PointCloudModule":[1671,25,19],"../PoiUI/CKEWrapper/CKEWrapperModule":[1673,23,21],"../ThemePanelUI/ThemePanelModule":[1678,0,1,2,3,16],"./AuditPanelModule":[1677,0,1,3,18],"./CloudProcessingModule":[1675,0,1,2,3,15],"./DeveloperModule":[1676,14,22],"./MeasurementsModule":[1674,0,2,24,17]};function r(t){if(!n.o(i,t))return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e});var e=i[t],r=e[0];return Promise.all(e.slice(1).map(n.e)).then(function(){return n.t(r,7)})}r.keys=function(){return Object.keys(i)},r.id=519,t.exports=r},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.stylesLoaded=function(){var t=document.getElementsByClassName("indoorViewer")[0];return window.getComputedStyle(t,":before").getPropertyValue("content").includes("styles-loaded")}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(){this.detectors=[],this.reporters=[]}return t.prototype.addDetectors=function(){for(var t,e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];(t=this.detectors).push.apply(t,e)},t.prototype.addReporters=function(){for(var t,e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];(t=this.reporters).push.apply(t,e)},t.prototype.wrap=function(t){var e=this;return t.then(function(t){return e.chainReset(t)}).catch(function(t){return e.chainHandle(t)})},t.prototype.reset=function(){},t.prototype.handle=function(t){for(var e=0,n=this.detectors;e<n.length;e++){var i=n[e];if(i.applies(t)){for(var r=0,o=this.reporters;r<o.length;r++)o[r].report(i.report());break}}},t.prototype.chainHandle=function(t){return this.handle(t),Promise.reject(t)},t.prototype.chainReset=function(t){return this.reset(),t},t}();e.ErrorWrapper=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(t,e){this.gettextCatalog=t,this.message=e}return t.prototype.applies=function(t){return!0},t.prototype.report=function(){return this.gettextCatalog.getString(this.message)},t}();e.GenericDetector=i},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__assign||function(){return(o=Object.assign||function(t){for(var e,n=1,i=arguments.length;n<i;n++)for(var r in e=arguments[n])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)};Object.defineProperty(e,"__esModule",{value:!0});var a=function(){function t(){}return t.prototype.toData=function(){return{offset:this.offset,site_model_entity:this.siteModelEntityIds,dataset:this.datasetIds,lon_min:this.lonMin,lon_max:this.lonMax,lat_min:this.latMin,lat_max:this.latMax,step:this.step,limit:this.limit,lon:this.lon,lat:this.lat,z:this.z,radius:this.radius,sort_by:this.sortBy,sort_order:this.sortOrder}},t}();e.RestFilter=a;var s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.toData=function(){return o(o({},t.prototype.toData.call(this)),{hidden:this.hidden,spacing:this.spacing})},e}(a);e.ImageRestFilter=s;var c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.toData=function(){return o(o({},t.prototype.toData.call(this)),{poi_type:this.poiTypeIds,poi_type_group:this.poiTypeGroupIds})},e}(a);e.PoiRestFilter=c},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});e.SecurityInfo=function(t){t&&(this.canWrite=t.can_write,this.groupRead=t.group_read,this.groupWrite=t.group_write)}},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o,a=n(198);!function(t){t.NUMBER="number",t.BOOLEAN="boolean",t.STRING="string",t.CSV="csv",t.MULTILINE="multiline",t.ENUM="enum"}(o=e.ConfigType||(e.ConfigType={})),function(t){t.APPEARANCE="appearance",t.CUSTOMIZABLE_CONTENT="customizable.content",t.FEEDBACK_TO_EMAIL="feedback.to.email",t.FUNCTIONALITY="functionality",t.LAYER_VISIBILITY="layer.visibility",t.MAIN_SCENE="main.scene",t.MAP_APPEARANCE="map.appearance",t.MENU_VISIBILITY="menu.visibility",t.OAUTH="oauth",t.STARTUP_VIEW="startup.view",t.UI_ELEMENTS="ui.elements",t.SECURITY="security"}(e.ConfigCategory||(e.ConfigCategory={}));var s=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.possibleValues=[],e}return r(e,t),e.prototype.copy=function(e,n){return void 0===n&&(n=!1),t.prototype.fill.call(this,e),this.name=e.name,this.value=e.value,this.type=e.type,this.length=e.length,this.category=e.category,this.possibleValues=e.possibleValues,this.editInForm=e.editInForm,this},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.name=e.name,this.value=e.value,this.type=e.type,this.length=e.length,this.category=e.category,this.possibleValues=e.type===o.ENUM?e.possible_values.split(","):this.possibleValues,this.editInForm=e.edit_in_form},e.prototype.toData=function(){var e={};return t.prototype.fillDto.call(this,e),e.name=this.name,e.value=this.value&&this.value.toString(),e.type=this.type,e.length=this.length,e.category=this.category,e.possible_values=this.possibleValues.join(),e.edit_in_form=this.editInForm,e},e}(a.SecureRepositoryObject);e.ConfigEntity=s},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(){}return t.dateFromEpochSeconds=function(e){return new Date(e*t.MILISECONDS_IN_SECOND)},t.epochSecondsFromDate=function(e){return e.getTime()/t.MILISECONDS_IN_SECOND},t.differenceInDays=function(e,n){var i=e.getTime()-n.getTime(),r=t.MILISECONDS_IN_SECOND*t.SECONDS_IN_MINUTE*t.MINUTES_IN_HOUR*t.HOURS_IN_DAY;return Math.ceil(i/r)},t.MILISECONDS_IN_SECOND=1e3,t.SECONDS_IN_MINUTE=60,t.MINUTES_IN_HOUR=60,t.HOURS_IN_DAY=24,t}();e.DateUtilities=i},function(t,e,n){t.exports=n.p+"generic_poi.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(96),a=n(7),s=n(377),c=n(1042),l=n(55);n(379);var u=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.children=[],e.attributes={},e.dimensionsChanged=!1,e.globalNeedsUpdate=!1,e}return r(e,t),Object.defineProperty(e.prototype,"label",{get:function(){if(this.type===l.SiteModelType.CUSTOM||this.type===l.SiteModelType.FREE_SPACE_NAVIGATION)return this.name;var t=this.gettextCatalog.getString(this.getTypeDisplayName());return this.name?t+" "+this.name:t},enumerable:!0,configurable:!0}),e.prototype.copy=function(e,n){return void 0===n&&(n=!1),t.prototype.fill.call(this,e),this.parent=e.parent,this.children=a.clone(e.children),this.type=e.type,this.name=e.name,this.polygon=a.cloneDeep(e.polygon),this.globalPolygon=a.cloneDeep(e.globalPolygon),this.zMin=e.zMin,this.globalzMin=e.globalzMin,this.zMax=e.zMax,this.globalzMax=e.globalzMax,this.center=this.center?this.center.clone():void 0,this._globalCenter=e._globalCenter?e._globalCenter.clone():void 0,this.height=e.height,this.attributes=a.cloneDeep(e.attributes),this.dimensionsChanged=e.dimensionsChanged,this.globalNeedsUpdate=e.globalNeedsUpdate,this._area=e._area,this._volume=e._volume,n||(this.drawing=e.drawing,this.selected=e.selected),this},e.prototype.resolveInjectables=function(){this.GeoTransformationService=this.injectables.GeoTransformationService,this.SiteModelTypeService=this.injectables.SiteModelTypeService,this.gettextCatalog=this.injectables.gettextCatalog},e.prototype.fillFromData=function(n){t.prototype.fillFromData.call(this,n),this.type=n.type,this.name=n.name,this.globalPolygon=n.polygon,this.globalzMin=n.z_min,this.globalzMax=n.z_max,this._globalCenter=o.VectorFactory.fromArray3(n.center),this.computeLocalFromGlobal(),this.height=void 0!==this.zMax&&void 0!==this.zMin?Math.abs(this.zMax-this.zMin):void 0,this.attributes=a.cloneDeep(n.attributes),this._area=n.area,this._volume=n.volume,this.dimensionsChanged=!1,this.globalNeedsUpdate=!1,this.children=[];for(var i=0,r=n.children;i<r.length;i++){var s=r[i],c=new e(this.injectables);c.parent=this,c.fillFromData(s),this.children.push(c)}},e.prototype.computeLocalFromGlobal=function(){this.polygon=void 0===this.globalPolygon?void 0:new s.LocalPolygon(this.GeoTransformationService,this.globalPolygon),this.zMin=void 0===this.globalzMin?void 0:this.GeoTransformationService.toLocalHeight(this.globalzMin),this.zMax=void 0===this.globalzMax?void 0:this.GeoTransformationService.toLocalHeight(this.globalzMax);var t=this.globalCenter;this.center=t?this.GeoTransformationService.vectorToLocal(t):void 0},e.prototype.toData=function(){var t,e,n,i=[];t=!this.globalNeedsUpdate&&this.globalPolygon?this.globalPolygon:void 0!==this.polygon&&this.polygon.boundary.length?this.polygon.toData():void 0,e=this.globalNeedsUpdate||void 0===this.globalzMin?void 0===this.zMin?void 0:this.GeoTransformationService.toGlobalHeight(this.zMin):this.globalzMin,n=this.globalNeedsUpdate||void 0===this.globalzMax?void 0===this.zMax?void 0:this.GeoTransformationService.toGlobalHeight(this.zMax):this.globalzMax;for(var r={id:this.id,type:this.type,name:this.name,polygon:t,z_min:e,z_max:n,children:i,center:void 0===this._globalCenter?void 0:this._globalCenter.toArray(),attributes:a.cloneDeep(this.attributes)||{},area:this._area,volume:this._volume},o=0,s=this.children;o<s.length;o++){var c=s[o];i.push(c.toData())}return r},Object.defineProperty(e.prototype,"hashKey",{get:function(){return this.$$hashKey?this.$$hashKey.replace(":","_"):void 0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"inherited",{get:function(){return void 0!==this.parent&&void 0===this.polygon},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"globalCenter",{get:function(){if(!this.dimensionsChanged){var t;this._globalCenter?t=this._globalCenter:this.parent&&(t=this.parent.globalCenter);var e=0;return void 0!==this.globalzMin&&void 0!==this.globalzMax&&(e=this.globalzMax-(this.globalzMax-this.globalzMin)/2),t&&t.setZ(e),t}},enumerable:!0,configurable:!0}),e.prototype.getPath=function(){return this.polygon&&this.polygon.boundary?this.polygon.boundary:this.parent?this.parent.getPath():void 0},e.prototype.getHoles=function(){return this.polygon&&this.polygon.boundary?this.polygon.holes:this.parent?this.parent.getHoles():void 0},Object.defineProperty(e.prototype,"area",{get:function(){if(!this.dimensionsChanged)return void 0===this._area&&this.parent?this.parent.area:this._area},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"volume",{get:function(){if(!this.dimensionsChanged)return void 0!==this.zMin&&void 0!==this.zMax?this.area*(this.zMax-this.zMin):void 0},enumerable:!0,configurable:!0}),e.prototype.onBeforeReferenceSystemChangedEvent=function(){if(this.globalNeedsUpdate&&(this.globalPolygon=void 0!==this.polygon&&this.polygon.boundary.length?this.polygon.toData():void 0,this.globalzMin=void 0===this.zMin?void 0:this.GeoTransformationService.toGlobalHeight(this.zMin),this.globalzMax=void 0===this.zMax?void 0:this.GeoTransformationService.toGlobalHeight(this.zMax),this.globalNeedsUpdate=!1),this.children&&this.children.length)for(var t=0,e=this.children;t<e.length;t++)e[t].onBeforeReferenceSystemChangedEvent()},e.prototype.onReferenceSystemChangedEvent=function(){if(this.computeLocalFromGlobal(),this.children&&this.children.length)for(var t=0,e=this.children;t<e.length;t++)e[t].onReferenceSystemChangedEvent()},e.prototype.getGlobalZMin=function(){return void 0!==this.globalzMin?this.globalzMin:this.GeoTransformationService.toGlobalHeight(this.zMin)},e.prototype.getGlobalZMax=function(){return void 0!==this.globalzMax?this.globalzMax:this.GeoTransformationService.toGlobalHeight(this.zMax)},e.prototype.getEntityOfType=function(t){return t===this.type?this:this.parent?this.parent.getEntityOfType(t):void 0},e.prototype.getChildrenOfType=function(t,e){e||(e=[]);for(var n=0,i=this.children;n<i.length;n++){var r=i[n];t===r.type?e.push(r):r.getChildrenOfType(t,e)}return e},e.prototype.getAllChildren=function(){for(var t=[],e=0,n=this.children;e<n.length;e++){var i=n[e];t.push(i),t.push.apply(t,i.getAllChildren())}return t},e.prototype.getTypeDisplayName=function(){return this.SiteModelTypeService.getTypeAttributes(this.type).displayName},e.prototype.getTypeIsChangeable=function(){return this.SiteModelTypeService.getTypeAttributes(this.type).isChangeable},e.prototype.getTypeIcon=function(){return this.SiteModelTypeService.getTypeAttributes(this.type).icon},e.prototype.getTypeIconWithBg=function(){return this.SiteModelTypeService.getTypeAttributes(this.type).iconWithBg},e}(c.TreeRepositoryObject);e.SiteModelEntity=u},function(t,e,n){t.exports=n.p+"c25767434b48e05a84a7384257d53f88.custom.svg"},function(t,e,n){t.exports=n.p+"b4f2d7448828d258f94d1819ef85364f.custom_bg.svg"},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),r=n(532),o=n(381),a=function(){function t(t,e){if(this.source=t,this.target=e,!t.geodetic||!e.geodetic)throw new o.TransformException("Geodetic transform requires two geodetic reference systems");try{this.projection=r.proj4(t.proj4def?t.proj4def:t.name,e.proj4def?e.proj4def:e.name)}catch(t){throw new o.ReferenceSystemNotFoundException('Proj.4 cannot find reference system "'+t+'"')}}return t.prototype.getInverse=function(){return new t(this.target,this.source)},t.prototype.transform=function(t){return i.Vector2,this.projection.forward(t)},t.prototype.transformQuaternion=function(t){return t},t}();e.GeodeticTransform=a},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(1669);e.proj4Factory=i.default,e.proj4Factory.defs("EPSG:99999","+proj=tmerc +lat_0=0 +lon_0=114 +k=1 +x_0=500000 +y_0=0 +ellps=GRS80 +units=m +no_defs");var r=function(){function t(t){this.proj4Transformer=t}return t.prototype.forward=function(t){var e=this.proj4Transformer.forward(t);return t.x=e.x,t.y=e.y,t},t.prototype.inverse=function(t){var e=this.proj4Transformer.inverse(t);return t.x=e.x,t.y=e.y,t},t}();e.Proj4=r,e.proj4=function(t,n){return new r(e.proj4Factory(t,n))}},function(t,e,n){"use strict";var i=this&&this.__spreadArrays||function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var i=Array(t),r=0;for(e=0;e<n;e++)for(var o=arguments[e],a=0,s=o.length;a<s;a++,r++)i[r]=o[a];return i};Object.defineProperty(e,"__esModule",{value:!0});var r=n(4),o=function(){function t(t){this.transforms=t}return Object.defineProperty(t.prototype,"source",{get:function(){return this.transforms[0].source},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"target",{get:function(){return this.transforms[this.transforms.length-1].target},enumerable:!0,configurable:!0}),t.prototype.getInverse=function(){return new t(i(this.transforms).reverse().map(function(t){return t.getInverse()}))},t.prototype.transform=function(t){return r.Vector2,this.transforms.forEach(function(e){return e.transform(t)}),t},t.prototype.transformQuaternion=function(t){return this.transforms.forEach(function(e){return e.transformQuaternion(t)}),t},t}();e.TransformChain=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(e){var n=t.call(this,e)||this;return n.repository=e,n}return r(e,t),e.prototype.action=function(){this.repository.data.forEach(function(t){return t.onReferenceSystemChangedEvent()})},e}(n(1049).RepositoryAction);e.TransformLocationRepositoryAction=o},function(t,e,n){"use strict";n.d(e,"a",function(){return s});var i=n(1),r=n(26),o=n(117),a=n(142);function s(t,e,n){return function(i){return i.lift(new c(t,e,n))}}var c=function(){function t(t,e,n){this.nextOrObserver=t,this.error=e,this.complete=n}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.nextOrObserver,this.error,this.complete))},t}(),l=function(t){function e(e,n,i,r){var s=t.call(this,e)||this;return s._tapNext=o.a,s._tapError=o.a,s._tapComplete=o.a,s._tapError=i||o.a,s._tapComplete=r||o.a,Object(a.a)(n)?(s._context=s,s._tapNext=n):n&&(s._context=n,s._tapNext=n.next||o.a,s._tapError=n.error||o.a,s._tapComplete=n.complete||o.a),s}return i.c(e,t),e.prototype._next=function(t){try{this._tapNext.call(this._context,t)}catch(t){return void this.destination.error(t)}this.destination.next(t)},e.prototype._error=function(t){try{this._tapError.call(this._context,t)}catch(t){return void this.destination.error(t)}this.destination.error(t)},e.prototype._complete=function(){try{this._tapComplete.call(this._context)}catch(t){return void this.destination.error(t)}return this.destination.complete()},e}(r.a)},function(t,e,n){"use strict";n.d(e,"a",function(){return r});var i=n(305);function r(t,e,n){var r;return r=t&&"object"==typeof t?t:{bufferSize:t,windowTime:e,refCount:!1,scheduler:n},function(t){return t.lift(function(t){var e,n,r=t.bufferSize,o=void 0===r?Number.POSITIVE_INFINITY:r,a=t.windowTime,s=void 0===a?Number.POSITIVE_INFINITY:a,c=t.refCount,l=t.scheduler,u=0,d=!1,p=!1;return function(t){var r;u++,!e||d?(d=!1,e=new i.a(o,s,l),r=e.subscribe(this),n=t.subscribe({next:function(t){e.next(t)},error:function(t){d=!0,e.error(t)},complete:function(){p=!0,n=void 0,e.complete()}})):r=e.subscribe(this),this.add(function(){u--,r.unsubscribe(),n&&!p&&c&&0===u&&(n.unsubscribe(),n=void 0,e=void 0)})}}(r))}}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});e.WebGlFailedException=function(){this.message="WebGL could not be initialized."}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(7),r=n(1068),o=n(67),a=n(101),s=n(4),c=n(210),l=n(157),u={modifier:"bold",face:"Open Sans",size:18,color:"rgba(255,255,255,1)",strokeWidth:0,strokeColor:"rgba(0,0,0,1)"},d={color:void 0,blurColor:void 0},p={width:0,color:"rgba(255,255,255,1)",cornerRadius:3},h={position:new s.Vector2(8,8),size:new s.Vector2(32,32),onLoad:void 0},f=function(){function t(t,e,n){this.text=t,this.iconPath=e,this.resource=n,this._padding={top:0,left:0,right:0,bottom:0},this.pivot=new s.Vector3(.5,.5,.5),this.offset=new s.Vector3(0,0,0),this.font=i.clone(u),this.background=i.clone(d),this.border=i.clone(p),this.icon=i.clone(h),this.fontSizeFactor=1.3,this.debugMode=!1}return Object.defineProperty(t.prototype,"padding",{get:function(){return this._padding},set:function(t){this._padding=t},enumerable:!0,configurable:!0}),Object.defineProperty(t,"initialized",{get:function(){return void 0!==t._initialized||(t._initialized=new Promise(function(t){new r(u.face,{weight:u.modifier}).load().then(function(){t(!0)}).catch(function(){t(!1)})})),t._initialized},enumerable:!0,configurable:!0}),t.prototype.createSpriteObject=function(){this.spriteObject&&this.removeSpriteObject();var e=this.createMaterial(),n=this.visibleSize.x/this.canvasSize.x,i=this.visibleSize.y/this.canvasSize.y,r=t.getPlaneGeometry(n,i);return this.spriteObject=new s.Mesh(r,e),this.alignPlaneGeometry(this.spriteObject.geometry,this.visibleSize.x,this.visibleSize.y),this.spriteObject.name="sprite",this.spriteObject.scale.set(this.visibleSize.x/this.visibleSize.y,1,1),this.spriteObject},t.prototype.updateSpriteObject=function(t){if(this.spriteObject){var e=t.getCamera();this.spriteObject.quaternion.copy(e.quaternion);var n=this.spriteObject.material.map.image;o.setMeshScreenSize(t,this.spriteObject,n.height)}},t.prototype.updateSpriteTexture=function(){l.disposeMeshMaterial(this.spriteObject),this.spriteObject.material=this.createMaterial()},t.prototype.removeSpriteObject=function(){this.spriteObject&&this.spriteObject.parent&&(this.spriteObject.material.map.dispose(),l.disposeMeshMaterial(this.spriteObject),this.spriteObject.geometry.dispose(),this.spriteObject.parent.remove(this.spriteObject),this.spriteObject=void 0)},t.prototype.createMaterial=function(){var e=this.createCanvas(),n=e.getContext("2d");n.font=this.font.modifier+" "+String(this.font.size)+"px "+this.font.face;var i=n.measureText(this.text),r=i.width>0?this._padding.right:0,a=o.nearestPow2(2*this.border.width+this._padding.left+i.width+r,"ceiling"),c=o.nearestPow2(2*this.border.width+this._padding.top+this.font.size*this.fontSizeFactor+this._padding.bottom,"ceiling");this.canvasSize=new s.Vector2(a,c),e.width=a,e.height=c,e.style.width=""+a,e.style.height=""+c,this.debugMode&&(n.fillStyle="rgba(255,0,0,0.5)",n.fillRect(0,0,e.width,e.height));var l=Math.round(2*this.border.width+this._padding.left+i.width+r),u=Math.round(2*this.border.width+this._padding.top+this.font.size*this.fontSizeFactor+this._padding.bottom);this.visibleSize=new s.Vector2(l,u);var d=Math.round(this.border.width),p=Math.round(c-u),h=Math.round(this.border.width+this._padding.left),f=Math.round(c-.5*u+.5*this.font.size/this.fontSizeFactor);return(this.background.color||this.border.width>0)&&(n.fillStyle=this.background.color,n.strokeStyle=this.border.color,o.drawRect(n,d,p,l-2*this.border.width,u-2*this.border.width,this.border.cornerRadius,void 0!==this.background.color,this.border.width>0)),n.font=this.font.modifier+" "+String(this.font.size)+"px "+this.font.face,this.background.blurColor&&(n.shadowColor=this.background.blurColor,n.shadowBlur=2,n.lineWidth=1,n.strokeStyle=this.background.blurColor,n.strokeText(this.text,h,f),n.fillText(this.text,h,f),n.shadowBlur=0),this.font.strokeWidth>0&&(n.lineWidth=this.font.strokeWidth,n.strokeStyle=this.font.strokeColor,n.strokeText(this.text,h,f)),n.lineWidth=1,n.fillStyle=this.font.color,n.fillText(this.text,h,f),this.iconPath&&this.loadImage(e,n),new s.MeshBasicMaterial({map:t.createTexture(e),depthTest:!1,depthWrite:!1,transparent:!0})},t.prototype.loadImage=function(t,e){var i=this,r=new Image,o=a.getTextureLoader().crossOrigin;o&&(r.crossOrigin=o),r.onload=function(){i.setSpriteIconTextureFromImage(r,t,e),i.icon.onLoad&&i.icon.onLoad()},r.onerror=function(){var t=n(1069);r.src&&!r.src.endsWith(t)&&(r.src=c.makeUrlAbsolute(t))},r.src=this.iconPath},Object.defineProperty(t.prototype,"fontProperties",{set:function(t){t.modifier&&(this.font.modifier=t.modifier),t.size&&(this.font.size=t.size),t.color&&(this.font.color=t.color),t.strokeWidth&&(this.font.strokeWidth=t.strokeWidth),t.strokeColor&&(this.font.strokeColor=t.strokeColor)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"backgroundProperties",{get:function(){return this.background},set:function(t){t.color&&(this.background.color=t.color),t.blurColor&&(this.background.blurColor=t.blurColor)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"borderProperties",{set:function(t){t.width&&(this.border.width=t.width),t.color&&(this.border.color=t.color),t.cornerRadius&&(this.border.cornerRadius=t.cornerRadius)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"iconProperties",{set:function(t){t.position&&(this.icon.position=t.position),t.size&&(this.icon.size=t.size),t.onLoad&&(this.icon.onLoad=t.onLoad)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"position",{set:function(t){this.spriteObject.position.copy(t)},enumerable:!0,configurable:!0}),t.getPlaneGeometry=function(t,e){for(var n=new s.PlaneGeometry(1,1,1),i=0;i<n.faces.length/2;++i)n.faceVertexUvs[0][0]=[new s.Vector2(0,e),new s.Vector2(0,0),new s.Vector2(t,e)],n.faceVertexUvs[0][1]=[new s.Vector2(0,0),new s.Vector2(t,0),new s.Vector2(t,e)];return n},t.createTexture=function(t){var e=new s.Texture(t);return e.generateMipmaps=!1,e.magFilter=s.LinearFilter,e.minFilter=s.LinearFilter,e.needsUpdate=!0,e},t.prototype.alignPlaneGeometry=function(t,e,n){var i=this.offset.clone();i.x=i.x/e,i.y=i.y/n;var r=new s.Vector3(.5,.5,.5).sub(this.pivot);r.add(i),t.translate(r.x,r.y,r.z)},t.prototype.setSpriteIconTextureFromImage=function(e,n,i,r,o){void 0===r&&(r=this.icon.position),void 0===o&&(o=this.icon.size),this.spriteObject&&(i.drawImage(e,r.x,r.y,o.x,o.y),this.spriteObject.material.map=t.createTexture(n),this.spriteObject.material.needsUpdate=!0)},t.prototype.createCanvas=function(){return document.createElement("canvas")},t}();e.PlaneSprite=f},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(4),a=n(312),s=function(t){function e(n){var i=t.call(this,{depthTest:!1,depthWrite:!1,transparent:!0,side:o.DoubleSide})||this;return i.setUniforms=a.createSetUniformsFunc(i),i.uniforms.color={value:n.color},i.uniforms.opacity={value:n.opacity},i.uniforms.obscuredColor={value:n.obscuredColor},i.uniforms.obscuredOpacity={value:n.obscuredOpacity},i.uniforms.map={value:n.map},i.uniforms.readMap={value:void 0!==n.map},i.uniforms.occlusionDistance={value:n.occlusionDistance},i.uniforms.clipDistance={value:n.clipDistance},i.uniforms.disableDepthTesting={value:!1},i.vertexShader=e.vertexShader,i.fragmentShader=e.fragmentShader,i._map=n.map,i.extensions.fragDepth=!0,i}return r(e,t),Object.defineProperty(e.prototype,"map",{get:function(){return this._map},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"disableDepthTesting",{get:function(){return this.uniforms.disableDepthTesting.value},set:function(t){this.uniforms.disableDepthTesting.value=t},enumerable:!0,configurable:!0}),e.vertexShader=n(1073),e.fragmentShader=n(1074),e}(o.ShaderMaterial);e.MeasurementMaterial=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(146),a=n(4),s=n(137),c=n(52),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.createIcon=function(){e.icon||(e.icon=s.MeasurementObject3D.createSpriteIcon(n(1082)))},e.prototype.canCreatePlane=function(){return this.points.length>=2},e.prototype.createPlane=function(){var t=this.points[0].position,e=t.clone().add(o.AreaMeasurementObject3D.Z_NORMAL);this.plane=(new a.Plane).setFromCoplanarPoints(t,this.points[1].position,e)},e.prototype.getIcon=function(){return e.icon},e.prototype.isInteractionWithPointsAllowed=function(t){return t.name!==c.SplitViewportName.TOP_VIEW},e}(o.AreaMeasurementObject3D);e.VerticalAreaMeasurementObject3D=l},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(146),a=n(4),s=function(t){function e(e,n,i){var r=t.call(this,e instanceof Array?e.slice(0,3):e,n,i)||this;return r.completionMechanismNeeded=!1,r}return r(e,t),e.prototype.addPoint=function(e,n){t.prototype.addPoint.call(this,e,n),3===this.points.length&&(t.prototype.addPoint.call(this,e,n),t.prototype.finishCreation.call(this))},e.prototype.putPointer=function(e){if(this.numberOfPoints<2)return t.prototype.putPointer.call(this,e);this.removeMeshes(this.projectionLine,this.helpLine,this.helpLine2,this.helpLine3,this.filling),this.removeTextSprite();var n=this.calculateCirclePosition(e),i=this.projectOnRectangleSide(n,this.points[0].position);this.addGuideElements(e,n,i)},e.prototype.addGuideElements=function(t,e,n){this.addProjectionLine(t,e),this.helpLine=this.addLine(this.points[1].position,e),this.helpLine2=this.addLine(e,n),this.helpLine3=this.addLine(n,this.points[0].position),this.addFilling(e,n),this.addTextSprite(e,n),this.addEdgeLabels(4,e,n)},e.prototype.dragObject=function(e,n){var i=this.points.findIndex(function(t){return t===e}),r=this.points[this.getPointIndex(i-2)],o=this.points[this.getPointIndex(i-1)],s=new a.Line3(r.position,o.position),c=this.points[this.getPointIndex(i+1)],l=new a.Line3(r.position,c.position),u=t.prototype.calculateCirclePosition.call(this,n);return e.position.copy(u),s.closestPointToPoint(u,!1,o.position),l.closestPointToPoint(u,!1,c.position),this.recreateAreaWithLinesFromPoints(),this.removeMeshes(this.projectionLine),this.addProjectionLine(u,n),this.addEdgeLabels(),!0},e.prototype.getPointIndex=function(t){var e=this.points.length;return(t+e)%e},e.prototype.calculateCirclePosition=function(e){switch(this.numberOfPoints){case 0:return t.prototype.calculateCirclePosition.call(this,e);case 1:var n=e.clone();return n.z=this.points[0].position.z,n;case 2:return this.projectOnRectangleSide(e,this.points[1].position);case 3:return this.projectOnRectangleSide(this.points[2].position,this.points[0].position);default:throw new Error("No more points are allowed!")}},e.prototype.projectOnRectangleSide=function(t,e){var n=e.clone().add((new a.Vector3).crossVectors(this.points[1].position.clone().sub(this.points[0].position),this.plane.normal));return new a.Line3(e,n).closestPointToPoint(t,!1,new a.Vector3)},e}(o.AreaMeasurementObject3D);e.RectangleMeasurementObject3D=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(4),a=n(541),s=n(137),c=n(146),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.createIcon=function(){e.icon||(e.icon=s.MeasurementObject3D.createSpriteIcon(n(1085)))},e.prototype.putPointer=function(e){if(this.numberOfPoints<2)return t.prototype.putPointer.call(this,e);this.removeMeshes(this.projectionLine,this.helpLine,this.helpLine2,this.helpLine3,this.filling),this.removeTextSprite();var n=this.points[1].position,i=this.firstPoint.position,r=this.calculateCirclePosition(e);this.addGuideElements(e,r,this.finalPoint(n,i,r))},e.prototype.calculateCirclePosition=function(e){switch(this.numberOfPoints){case 1:return this.secondPoint(e);case 2:return this.thirdPoint(e);default:return t.prototype.calculateCirclePosition.call(this,e)}},e.prototype.secondPoint=function(t){var e=this.firstPoint.position,n=t.clone(),i=e.clone();return n.z=e.z,i.z=t.z,e.distanceTo(n)>e.distanceTo(i)?n:i},e.prototype.thirdPoint=function(t){var e=this.points[1].position;if(this.firstPoint.position.z===e.z)return this.projectOnRectangleSide(t,e);var n=t.clone();return n.z=e.z,n},e.prototype.finalPoint=function(t,e,n){return t.z===e.z?this.projectOnRectangleSide(n,e):new o.Vector3(n.x,n.y,e.z)},e.prototype.canCreatePlane=function(){var t=this.points[1];return this.points.length>2||t&&this.firstPoint.position.z===t.position.z},e.prototype.createPlane=function(){if(this.canCreatePlane()){var t=this.points[1].position,e=this.firstPoint.position.z===t.z?this.points[0].position.clone().add(c.AreaMeasurementObject3D.Z_NORMAL):this.points[2].position;this.plane=(new o.Plane).setFromCoplanarPoints(this.firstPoint.position,t,e)}},e.prototype.getIcon=function(){return e.icon},e}(a.RectangleMeasurementObject3D);e.VerticalRectangleMeasurementObject3D=l},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(217),a=n(137),s=n(4),c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.getIcon=function(){return e.icon},e.prototype.createIcon=function(){e.icon||(e.icon=a.MeasurementObject3D.createSpriteIcon(n(1090)))},e.prototype.calculateCirclePosition=function(t){return new s.Vector3(this.startPoint.x,this.startPoint.y,t.z)},e}(o.DistanceMeasurementObject3D);e.VerticalDistanceMeasurementObject3D=c},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var o=n(230),a=n(1107),s=n(0),c=(n(313),n(388)),l=n(384),u=n(0),d=n(313),p=function(){function t(t){this.LanguageDetectionService=t,this.fontMap=new Map,this.fontMap.set(c.SupportedFont.JAPANESE,new a.TrueTypeFont("NotoSansCJKjp")),this.fontMap.set(c.SupportedFont.CHINESE_TRADITIONAL,new a.TrueTypeFont("NotoSansCJKtc")),this.fontMap.set(c.SupportedFont.CHINESE_SIMPLIFIED,new a.TrueTypeFont("NotoSansCJKsc")),this.fontMap.set(c.SupportedFont.CYRILLIC,new a.TrueTypeFont("PTSans")),this.fontMap.set(c.SupportedFont.DEFAULT,new a.TrueTypeFont("Helvetica"))}return t.prototype.getTrueTypeFontFromText=function(t){var e=this.LanguageDetectionService.getFontForText(t);return this.getTrueTypeFont(e)},t.prototype.getTrueTypeFont=function(t){return this.fontMap.get(t)},t.prototype.getTrueTypeFontFromUiLanguage=function(t){var e=this.mapUiLanguageToSupportedFont(t);return this.getTrueTypeFont(e)},t.prototype.loadFontFromUILanguage=function(t){return i(this,void 0,void 0,function(){var e;return r(this,function(n){return(e=this.mapUiLanguageToSupportedFont(t))===c.SupportedFont.DEFAULT&&this.getTrueTypeFont(c.SupportedFont.DEFAULT),[2,this.loadFont(e)]})})},t.prototype.loadFont=function(t){return i(this,void 0,void 0,function(){var e,n,i,o,a;return r(this,function(r){switch(r.label){case 0:if((e=this.fontMap.get(t)).data)return[2,e];switch(t){case c.SupportedFont.CHINESE_SIMPLIFIED:return[3,1];case c.SupportedFont.CHINESE_TRADITIONAL:return[3,3];case c.SupportedFont.JAPANESE:return[3,5];case c.SupportedFont.CYRILLIC:return[3,7];case c.SupportedFont.DEFAULT:return[3,9]}return[3,10];case 1:return n=e,[4,this.loadChineseSimplifiedFont()];case 2:return n.data=r.sent(),[3,10];case 3:return i=e,[4,this.loadChineseTraditionalFont()];case 4:return i.data=r.sent(),[3,10];case 5:return o=e,[4,this.loadJapaneseFont()];case 6:return o.data=r.sent(),[3,10];case 7:return a=e,[4,this.loadCyrillicFont()];case 8:return a.data=r.sent(),[3,10];case 9:return[3,10];case 10:return[2,e]}})})},t.prototype.mapUiLanguageToSupportedFont=function(t){return l.UiLanguage.CHINESE===t.key?c.SupportedFont.CHINESE_SIMPLIFIED:l.UiLanguage.CHINESE_TRADITIONAL===t.key?c.SupportedFont.CHINESE_TRADITIONAL:l.UiLanguage.JAPANESE===t.key?c.SupportedFont.JAPANESE:c.SupportedFont.DEFAULT},t.prototype.loadJapaneseFont=function(){return new Promise(function(t,e){o.runWithBaseHref(function(){return n.e(4).then(function(){t(n(1680))}.bind(null,n)).catch(e)})})},t.prototype.loadChineseSimplifiedFont=function(){return new Promise(function(t,e){o.runWithBaseHref(function(){return n.e(5).then(function(){t(n(1681))}.bind(null,n)).catch(e)})})},t.prototype.loadChineseTraditionalFont=function(){return new Promise(function(t,e){o.runWithBaseHref(function(){return n.e(6).then(function(){t(n(1682))}.bind(null,n)).catch(e)})})},t.prototype.loadCyrillicFont=function(){return new Promise(function(t,e){o.runWithBaseHref(function(){return n.e(7).then(function(){t(n(1683))}.bind(null,n)).catch(e)})})},t.ɵfac=function(e){return new(e||t)(u.ɵɵinject(d.LanguageDetectionService))},t.ɵprov=u.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.FontLoaderService=p,u.ɵsetClassMetadata(p,[{type:s.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:d.LanguageDetectionService}]},null)},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.toData=function(){throw new Error("Method not implemented.")},e.prototype.fill=function(e){t.prototype.fill.call(this,e),this.matchingTitle=e.matchingTitle,this.matchingDescription=e.matchingDescription},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.title=void 0!==e.title?e.title:"",this.matchingTitle=e.matching_title,this.matchingDescription=e.matching_description},e}(n(102).RepositoryObject);e.SearchResultEntity=o},function(t,e,n){"use strict";n.r(e),n.d(e,"InvisibleRaycaster",function(){return r});var i=n(4);function r(t,e,n,r){this.ray=new i.Ray(t,e),this.near=n||0,this.far=r||1/0,this.camera=null,this.params={Mesh:{},Line:{threshold:1},LOD:{},Points:{threshold:1},Sprite:{}},Object.defineProperties(this.params,{PointCloud:{get:function(){return console.warn("THREE.Raycaster: params.PointCloud has been renamed to params.Points."),this.Points}}})}function o(t,e){return t.distance-e.distance}function a(t,e,n,i,r){if((void 0!==r&&!0!==r||!1!==t.visible)&&!1!==t.userData.raycastable&&(t.raycast(e,n),!0===i))for(var o=t.children,s=0,c=o.length;s<c;s++)a(o[s],e,n,!0,r)}Object.assign(r.prototype,{set:function(t,e){this.ray.set(t,e)},setFromCamera:function(t,e){e&&e.isPerspectiveCamera?(this.ray.origin.setFromMatrixPosition(e.matrixWorld),this.ray.direction.set(t.x,t.y,.5).unproject(e).sub(this.ray.origin).normalize(),this.camera=e):e&&e.isOrthographicCamera?(this.ray.origin.set(t.x,t.y,(e.near+e.far)/(e.near-e.far)).unproject(e),this.ray.direction.set(0,0,-1).transformDirection(e.matrixWorld),this.camera=e):console.error("THREE.InvisibleRaycaster: Unsupported camera type.")},intersectObject:function(t,e,n,i){void 0!==n&&console.error("optionalTarget is not supported by InvisibleRaycaster");var r=[];return a(t,this,r,e,i),r.sort(o),r},intersectObjects:function(t,e,n,i){void 0!==n&&console.error("optionalTarget is not supported by InvisibleRaycaster");var r=[];if(!1===Array.isArray(t))return console.warn("THREE.InvisibleRaycaster.intersectObjects: objects is not an Array."),r;for(var s=0,c=t.length;s<c;s++)a(t[s],this,r,e,i);return r.sort(o),r}})},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(1128),r=n(4),o=function(){function t(t,e,n){this.TransformService=t,this.mapLayer=e,this.tileColor=n,this.bias=0,this.zIndex=-1,this.objectGroup=new r.Object3D,this.objectGroupAdded=!1,this.baseTile=new i.MapTile(this.mapLayer,this.objectGroup,this.tileColor),this.isTileVisibleBox=new r.Box3,this.isTileVisibleVec=new r.Vector3}return Object.defineProperty(t.prototype,"tilePresenceMap",{get:function(){},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"position",{get:function(){},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"quaternion",{get:function(){},enumerable:!0,configurable:!0}),t.prototype.updateObjectGroup=function(){this.position&&this.objectGroup.position.copy(this.position),this.quaternion&&this.objectGroup.quaternion.copy(this.quaternion),this.objectGroup.updateMatrixWorld(!0)},t.prototype.updateProjection=function(){this.transformMapToLocal||(this.transformMapToLocal=this.TransformService.getTransform(this.projection,this.TransformService.crsLocal))},t.prototype.clearProjection=function(){this.transformMapToLocal=void 0,this.projection.name!==this.TransformService.NAVVIS_LOCAL&&this.baseTile.remove()},t.prototype.update=function(t,e,n){if(this.updateProjection(),!this.isTileVisible(new r.Vector3(0,0,0),this.mapSizeM,e))return this.removeFromSceneGroup(n),!0;var i=new r.Vector3(-.5*this.mapSizeM,0,0);i.applyMatrix4(this.objectGroup.matrixWorld),i.project(t.getCamera());var o=new r.Vector3(.5*this.mapSizeM,0,0);o.applyMatrix4(this.objectGroup.matrixWorld),o.project(t.getCamera());var a=t.getWidth(),s=t.getHeight();if(a<=0||s<=0||isNaN(i.x)||isNaN(o.x))return!1;i.sub(o),i.x*=a/2,i.y*=s/2;var c=this.tileSizePx/i.length(),l=Math.ceil(-Math.log(c)/Math.log(2)-this.bias);return l=Math.max(l,0),l=Math.min(l,void 0===this.maxDepth?1/0:this.maxDepth),this.addToSceneGroup(n),this.baseTile.update(this,e,l,this.mapSizeM,0,0,"")},t.prototype.isTileVisible=function(e,n,i){if(n>t.HALF_WORLD_SIZE)return!0;var r=.5*n;return this.transformMapToLocal.transform(e),this.isTileVisibleBox.makeEmpty(),this.isTileVisibleVec.set(e.x-r,e.y-r,e.z).applyMatrix4(this.objectGroup.matrixWorld),this.isTileVisibleBox.expandByPoint(this.isTileVisibleVec),this.isTileVisibleVec.set(e.x-r,e.y+r,e.z).applyMatrix4(this.objectGroup.matrixWorld),this.isTileVisibleBox.expandByPoint(this.isTileVisibleVec),this.isTileVisibleVec.set(e.x+r,e.y-r,e.z).applyMatrix4(this.objectGroup.matrixWorld),this.isTileVisibleBox.expandByPoint(this.isTileVisibleVec),this.isTileVisibleVec.set(e.x+r,e.y+r,e.z).applyMatrix4(this.objectGroup.matrixWorld),this.isTileVisibleBox.expandByPoint(this.isTileVisibleVec),i.intersectsBox(this.isTileVisibleBox)},t.prototype.addToSceneGroup=function(t){this.objectGroupAdded||(t.add(this.objectGroup),this.objectGroupAdded=!0)},t.prototype.removeFromSceneGroup=function(t){this.baseTile.remove(),this.objectGroupAdded&&(t.remove(this.objectGroup),this.objectGroupAdded=!1)},t.HALF_WORLD_SIZE=21e6,t}();e.TiledMapBase=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(96),a=n(252),s=n(102);(e.TiledMapType||(e.TiledMapType={})).TILED_PYRAMID="TILED_PYRAMID";var c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.resolveInjectables=function(){this.GeoTransformationService=this.injectables.GeoTransformationService},e.prototype.copy=function(e){return t.prototype.fill.call(this,e),this.globalLocation=e.globalLocation?e.globalLocation.clone():void 0,this.location=e.location?e.location.clone():void 0,this.orientation=e.orientation?e.orientation.clone():void 0,this.filePath=e.filePath,this.fileName=e.fileName,this.type=e.type,this.mapSizeM=e.mapSizeM,this.tileSizePx=e.tileSizePx,this.maxDepth=e.maxDepth,this.quadtree=e.quadtree,this.floor=e.floor,this.floorId=e.floorId,this.bundle=e.bundle,this.bundleId=e.bundleId,this},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.globalLocation=o.VectorFactory.fromArray3(e.location),this.orientation=a.QuaternionFactory.fromArray(e.orientation),this.filePath=ossPrefix+sceneNum+"/"+e.file_path,this.fileName=e.file_name,this.type=e.type,this.mapSizeM=e.map_size_m,this.tileSizePx=e.tile_size_px,this.maxDepth=e.max_depth,this.quadtree=e.quadtree,this.floorId=e.floor_id,this.bundleId=e.bundle_id,this.computeLocalCoordinates()},e.prototype.toData=function(){var t={};return this.fillDto(t),t.location=o.VectorFactory.toArray(this.globalLocation),t.orientation=a.QuaternionFactory.toArray(this.orientation),t.file_path=this.filePath,t.file_name=this.fileName,t.type=this.type,t.map_size_m=this.mapSizeM,t.tile_size_px=this.tileSizePx,t.max_depth=this.maxDepth,t.quadtree=this.quadtree,t.floor_id=this.floor?this.floor.id:void 0,t.bundle_id=this.bundle.id?this.bundle.id:void 0,t},e.prototype.onReferenceSystemChangedEvent=function(){this.computeLocalCoordinates()},e.prototype.computeLocalCoordinates=function(){this.location=this.GeoTransformationService.vectorToLocal(this.globalLocation)},e}(s.RepositoryObject);e.TiledMapEntity=c},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.ID="ID",t.IMPORTANCE="IMPORTANCE",t.FILE_ID="FILE_ID"}(e.SortableField||(e.SortableField={})),function(t){t.ASCENDING="ASC",t.DESCENDING="DESC"}(e.SortOrder||(e.SortOrder={}))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},a=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}},s=this&&this.__spreadArrays||function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var i=Array(t),r=0;for(e=0;e<n;e++)for(var o=arguments[e],a=0,s=o.length;a<s;a++,r++)i[r]=o[a];return i};Object.defineProperty(e,"__esModule",{value:!0});var c=n(397),l=n(398),u=n(40),d=n(212),p=n(639),h=n(264),f=n(399),g=n(200),m=n(25),v=n(4),y=n(24),b=n(230),w=n(52);n(320);var S=n(255),x=n(8),M=n(105),E=n(68),C=n(16),A=n(261),T=n(560),O=n(233),_=n(7),P=n(218),I=n(124),k=n(349),D=n(642),R=n(20),L=n(67),N=function(t){function e(e,n,i,r,o,a,s,c,l,d,p,h,f,g,m,v,y,b,w,M,E,A,O,_,P,I,k,D,R,L,N,j,V,F,U,B,z,G,H,W,q){var K=t.call(this,e)||this;return K.ViewService=n,K.AlignmentHelpersFactory=i,K.IvCameraImageLayerFactory=r,K.VolumeClippingLayerFactory=o,K.MeasurementsLayerFactory=a,K.MagnificationLayerFactory=s,K.CursorLayerFactory=c,K.ImageService=l,K.IV=d,K.LocationMarkerLayerFactory=p,K.NavGraphLayerFactory=h,K.PolygonLayerFactory=f,K.PoiLayerFactory=g,K.PoiService=m,K.RaycastService=v,K.RouteLayerFactory=y,K.UrlService=b,K.ViewMenuService=w,K.ConfigService=M,K.PointCloudMenuService=E,K.MapLayerFactory=A,K.SiteModelLayerFactory=O,K.hotkeys=_,K.gettext=P,K.FloorChangerService=I,K.CameraFOVLayerFactory=k,K.ErrorService=D,K.ModeService=R,K.CursorService=L,K.ProgressReportService=N,K.SiteModelRepository=j,K.SystemJsNgModuleLoader=V,K.DownloadPointCloudService=F,K.TrackingService=U,K.TiledMapRepository=B,K.gettextCatalog=z,K.UserService=G,K.DatasetRepository=H,K.SiteModelService=W,K.injector=q,K.viewModeChanged=new C.Signal,K.viewportDimensionsChanged=new C.Signal,K.mapBoundingBoxPoints=void 0,K.shortcutsBound=!1,K.switchViewModeInProgress=!1,K.boundHotkeys=[],K.stateBeforeScreenshot=void 0,M.initialized.then(function(){return K.init()}).catch(function(){}),window.addEventListener("resize",function(){return K.windowResize()},!1),K.scene.name="MainScene",window.scene=K.scene,K.createPerspectiveView(),K.setCameraControlsOnDefault(T.CameraControlsMode.FIRST_PERSON),E.configShowPointCloudChanged.connect(function(){K.updateKeyboardShortcuts(),K.loadPointCloudModule().catch(x.handleWarning)}),K.ModeService.modeChanged.connect(function(){return K.updateKeyboardShortcuts()}),K.ViewMenuService.onShowMeshesChanged.connect(function(t){t&&K.loadMeshModule().catch(x.handleWarning)}),K.errorHandler=K.ErrorService.newWrapper().report().network().generic(K.gettext("An error occurred when retrieving the cursor location to create the temporary POI.")).build(),n.onViewSwap.connect(function(t){K.active=!u.isMobileLayout()||t===S.ViewType.PANORAMA,t===S.ViewType.MAP?K.closeContextMenu():u.isMobileLayout()||E.isCloudVisible()||d.moveToImage(K.currentImage).catch(x.handleWarning)}),n.secondaryViewVisibilityChanged.connect(function(){K.active=n.isPanoVisible()}),n.onTransitionStart.connect(function(t){return K.transitionStart(t)}),n.onTransitionEnd.connect(function(t){return K.transitionEnd(t)}),K}return r(e,t),e.prototype.onViewModeChange=function(t){this.updateKeyboardShortcuts(),this.adaptPointCloudVisibilityForDownloadPointCloudMode(t)},e.prototype.adaptPointCloudVisibilityForDownloadPointCloudMode=function(t){this.ModeService.isDownloadPointCloudMode()&&(t===M.SceneViewMode.Perspective&&(this.PointCloudMenuService.showPointClouds(!0),this.ViewMenuService.showPanoramas(!1)),t===M.SceneViewMode.Map&&this.showPointCloudWhenSomeFloorsDoNotHaveMaps())},e.prototype.showPointCloudWhenSomeFloorsDoNotHaveMaps=function(){var t=this;this.checkAllDatasetFloorsHaveMaps().then(function(e){return t.PointCloudMenuService.showPointClouds(!e)}).catch(x.handleWarning)},Object.defineProperty(e.prototype,"viewMode",{get:function(){return this._viewMode},enumerable:!0,configurable:!0}),e.prototype.switchViewMode=function(t,e,n){return void 0===e&&(e=!0),void 0===n&&(n=this.getCamera().position),o(this,void 0,void 0,function(){var i;return a(this,function(r){switch(r.label){case 0:if(this.switchViewModeInProgress)return[2];this.switchViewModeInProgress=!0,this.unsetFullscreenViewport(),i=this.ProgressReportService.addTask("",1,!0,!0,!1,!0,100),r.label=1;case 1:switch(r.trys.push([1,,7,8]),t){case M.SceneViewMode.Map:return[3,2];case M.SceneViewMode.Perspective:return[3,3]}return[3,3];case 2:return this.getMapLayer().targetViewport.cameraController.centerOn(n),this.setViewportFullscreen(this.getMapLayer().targetViewport,!0),this.switchViewModeInProgress=!1,[3,6];case 3:return e?[4,this.move3dCameraTo2dCameraLocation()]:[3,5];case 4:r.sent(),r.label=5;case 5:this.setViewportFullscreen(this.getDefaultViewport(),!0),r.label=6;case 6:return[3,8];case 7:return i.itemDone(),this.switchViewModeInProgress=!1,[7];case 8:return this.setViewMode(t),[2]}})})},e.prototype.setViewMode=function(t){this._viewMode=t,this.onViewModeChange(t),this.viewModeChanged.emit(t)},e.prototype.onContextMenu=function(){var t=this;if(this.ModeService.currentMode===y.ModeState.NORMAL&&this.UserService.canCropAndDownloadPointCloud())return{name:this.gettextCatalog.getString("Crop and Download Point Cloud",void 0,"title"),icon:"fa-download",callback:function(){t.TrackingService.trackPointCloudDownloadEntered(P.MenuType.MainViewContext),t.DownloadPointCloudService.enterDownloadPointCloudMode(t.getCurrentCursorPosition()?t.getCurrentCursorPosition().location:t.getCamera().position)}}},e.prototype.move3dCameraTo2dCameraLocation=function(){return o(this,void 0,void 0,function(){var t,e,n,i,r,o=this;return a(this,function(a){switch(a.label){case 0:return(t=this.getMapLayer().targetViewport)?(e=t.cameraController.camera.position,this.PointCloudMenuService.config.showPointCloud&&this.FloorChangerService.currentFloors.length>0?(n=this.currentImage?this.currentImage.location.z-this.currentImage.floorLocation.z:E.DEFAULT_CAMERA_HEIGHT,i=this.FloorChangerService.currentFloors[0].zMin,r=new v.Vector3(e.x,e.y,i+n),[4,this.SiteModelRepository.findWithin(r)]):[3,2]):[2];case 1:if(a.sent().length>0)return this.IV.moveToGeoLocation(r,!0,void 0,void 0,void 0,void 0,!0).catch(x.handleWarning),[2];a.label=2;case 2:return this.ImageService.getClosestImage(e,void 0,this.FloorChangerService.currentFloors).then(function(t){return o.IV.moveToImage(t)}).catch(x.handleWarning),[2]}})})},e.prototype.updateOrientation=function(t){this.currViewingDir.lon=t.lon,this.currViewingDir.lat=t.lat,this.invalidateScene(),this.ViewService.mapView.invalidateScene()},Object.defineProperty(e.prototype,"currViewingDir",{get:function(){if(!(this.cameraController instanceof A.OrbitCameraController))return this.cameraController.orientation},enumerable:!0,configurable:!0}),e.prototype.getViewDir=function(){return this.currViewingDir},e.prototype.updatefov=function(t){console.warn('Deprecated usage of "updatefov", use "updateFov" instead.'),this.updateFov(t)},e.prototype.updateFov=function(t){this.cameraController.fov=t,this.invalidateScene(),this.ViewService.mapView.invalidateScene()},e.prototype.getfov=function(){return console.warn('Deprecated usage of "getfov", use "getFov" instead.'),this.getFov()},e.prototype.getFov=function(){return this.cameraController.fov},e.prototype.centerOn=function(e,n){var i=this;t.prototype.centerOn.call(this,e,n),this.PointCloudMenuService.config.showPanosInPerspective&&this.ImageService.getClosestImage(this.getDefaultViewport().cameraController.camera.position).then(function(t){return i.IV.moveToImage(t,void 0)}).catch(function(){})},e.prototype.getCurrentCursorPosition=function(){return this.CursorService.getCursorData()},e.prototype.setCurrentCursorPositionForScreenPosition=function(t){return this.getCursorLayer().pickNextPointForScreenCoordinate(t)},e.prototype.getLocationMarkerLayer=function(){return this.layerLocationMarker},e.prototype.getPoiLayer=function(){return this.layerPoi},e.prototype.getCameraImageLayer=function(){return this.layerCameraImage},e.prototype.getPointCloudLayer=function(){return this.layerPointCloud},e.prototype.getPointCloudV2Layer=function(){return this.layerPointCloudV2},e.prototype.getRouteLayer=function(){return this.layerRoute},e.prototype.getNavGraphLayer=function(){return this.layerNavGraph},e.prototype.getMeasurementsLayer=function(){return this.layerMeasurements},e.prototype.getCursorLayer=function(){return this.layerCursor},e.prototype.getAlignmentHelpersLayer=function(){return this.layerAlignmentHelpers},e.prototype.getMapLayer=function(){return this.layerMap},e.prototype.getVectorMapLayer=function(){return this.layerPolygon},e.prototype.getVolumeClippingLayer=function(){return this.layerVolumeClipping},e.prototype.getCameraFOVLayer=function(){return this.layerCameraFOV},e.prototype.onBeforeRender=function(){var t=this.PointCloudMenuService.isCloudVisible(),e=!!this.layerMesh&&this.layerMesh.visible;this.cameraController.keyboardInput=t||e,this.cameraController instanceof p.FirstPersonCameraController&&(this.cameraController.translationZoom=t||e,this.cameraController.allowTranslation=t||e)},e.prototype.onDragViewStart=function(e){var n=t.prototype.onDragViewStart.call(this,e);return n&&this.ViewService.isMapPrimaryView()&&(this.ViewService.secondaryViewHovered=!0),n},e.prototype.onDragView=function(e,n,i){t.prototype.onDragView.call(this,e,n,i),this.getViewport(i.x,i.y).camera instanceof v.PerspectiveCamera&&this.ViewService.mapView.invalidateScene()},e.prototype.onDragViewEnd=function(e){return this.ViewService.isMapPrimaryView()&&(this.ViewService.secondaryViewHovered=!1),t.prototype.onDragViewEnd.call(this,e)},e.prototype.onSustainedDragViewEnd=function(){this.UrlService.updateUrl(void 0,!0)},e.prototype.onZoomView=function(e,n,i){var r=this;t.prototype.onZoomView.call(this,e,n,i),this.getViewport(e.x,e.y).camera instanceof v.PerspectiveCamera&&(window.clearTimeout(this.zoomViewTimer),this.zoomViewTimer=window.setTimeout(function(){return r.UrlService.updateUrl()},1e3),this.ViewService.mapView.invalidateScene())},e.prototype.onCameraMoveEnd=function(){return o(this,void 0,void 0,function(){var t;return a(this,function(e){return this.isInScreenshotMode()?[2]:(t=this.getCamera().position,this.currentImage&&this.currentImage.isAtPosition(t)||this.UrlService.updateUrl(),this.areOrbitCameraControlsUsed()?[2]:this.ViewService.isPanoPrimaryView()?[2,this.FloorChangerService.updateFloors(!1)]:[2,this.FloorChangerService.changeFloorByMainViewPosition()])})})},e.prototype.onDoubleClick=function(t){var e,n=this;if(!this.IV.isMoving()&&(!this.ModeService.isNavGraphEditorMode()&&!this.ModeService.isDownloadPointCloudMode()||this.viewMode!==M.SceneViewMode.Map)){var i=w.SplitViewportName.TOP_VIEW===(null===(e=this.getViewport(t.x,t.y))||void 0===e?void 0:e.info.name);this.getTargetPosition(i,t).then(function(t){return n.moveViewports.apply(n,s([i],t))}).catch(function(){n.moveTowardsEvent(t)})}},e.prototype.getTargetPosition=function(t,e){return o(this,void 0,void 0,function(){var n;return a(this,function(i){switch(i.label){case 0:return t?[2,[this.getPositionOnGroundPlane(e.x,e.y,this.floorHeight,this.getViewportByName(w.SplitViewportName.TOP_VIEW)),void 0]]:[4,this.RaycastService.getCoordinates(this,this.unprojectScreenCoordinates(e.x,e.y),!0)];case 1:return[2,[(n=i.sent()).position,n]]}})})},e.prototype.moveViewports=function(t,n,i){return o(this,void 0,void 0,function(){var r;return a(this,function(o){switch(o.label){case 0:return i&&!i.dataset.hasImages&&this.PointCloudMenuService.isCloudVisible()?[2,this.IV.moveToGeoLocation(n,!0,this.getViewDir(),void 0,void 0,i.normal,!0,void 0)]:t?[3,2]:[4,this.ImageService.getClosestImageOnFloor(n)];case 1:return r=o.sent(),[3,4];case 2:return[4,this.ImageService.getClosestImage(new v.Vector2(n.x,n.y),e.IMAGE_SEARCH_RADIUS,s(this.FloorChangerService.currentFloors,[void 0]))];case 3:r=o.sent(),o.label=4;case 4:return[2,this.IV.moveToImage(r,this.getViewDir())]}})})},e.prototype.transitionStart=function(e){var n=this.getViewportByName(w.SplitViewportName.TOP_VIEW);if(n&&n.active){var i=e.image?e.image.location:e.location;if(this.mapBoundingBoxPoints){var r=[];this.mapBoundingBoxPoints.forEach(function(t){return r.push(t,new v.Line3(t,i).at(2,new v.Vector3))}),this.mapBoundingBoxPoints=void 0;var o=L.calcCamParamsToFitBoxIntoScreen((new v.Box3).setFromPoints(r),n.screenWidth,n.screenHeight);this.tweenViewZoom(n.cameraController,o.resolution,void 0,{duration:e.duration})}this.tweenViewPosition(n.cameraController,i,{duration:e.duration})}t.prototype.transitionStart.call(this,e)},e.prototype.onHold=function(t){return!!this.ModeService.isNormalMode()&&(this.createCustomPoiOnPosition(t),!0)},e.prototype.onKeyDown=function(t){return this.invalidateScene(),!1},e.prototype.onKeyUp=function(t){return this.invalidateScene(),t.keyCode!==d.KeyEvent.DOM_VK_LEFT&&t.keyCode!==d.KeyEvent.DOM_VK_RIGHT||this.UrlService.updateUrl(void 0,!0),!1},e.prototype.onKeyboardInputApplied=function(){this.ViewService.mapView.invalidateScene()},e.prototype.init=function(){var t=this;this.ViewMenuService.onShowPanoramasChanged.connect(function(e,n){return t.onShowPanoramasChanged(e,n)}),this.FloorChangerService.onFloorChange.connect(function(e){return t.onFloorChangedEvent(e)}),this.ViewService.onTransitionEnd.connect(function(e){return t.onTransitionEndEvent(e)}),this.ConfigService.updated.connect(function(){return t.layerPoi.setPoiVisibilityCheck(t.ConfigService.getBoolean(m.Configs.POI_VISIBILITYCHECK_ENABLED,!0))}),this.layerLocationMarker=this.LocationMarkerLayerFactory.create(this,this.overlayScene,{isMoveMouseToShowEnabled:function(){return!1},isVisibilityToggleEnabled:u.isMobileBrowser,locationMarkerPng:n(561),locationMarkerHighlightPng:n(1192)}),this.layerPoi=this.PoiLayerFactory.create(this,this.overlayScene,{poiVisibilityCheck:this.ConfigService.getBoolean(m.Configs.POI_VISIBILITYCHECK_ENABLED,!0),doubleTapInterval:k.InputHandler.DOUBLE_CLICK_INTERVAL,poiNames:function(){return t.ConfigService.getBoolean(m.Configs.POI_NAMES_PANORAMAS,!1)},showCustomRoutePoints:function(){return t.PoiService.isRoutePickingPhase()||!t.PoiService.wasRouteFound}}),this.layerCameraImage=this.IvCameraImageLayerFactory.create(this,this.underlayScene),this.layerRoute=this.RouteLayerFactory.create(this,this.overlayScene,{visualization:g.RouteViewType.PANORAMA}),this.layerNavGraph=this.NavGraphLayerFactory.create(this,this.scene),this.layerCursor=this.CursorLayerFactory.create(this,this.overlayScene),this.layerAlignmentHelpers=this.AlignmentHelpersFactory.create(this,this.overlayScene),this.layerMap=this.MapLayerFactory.create(this,this.underlayScene,{visible:!1,tileColor:new v.Color(8355711)}),this.layerSiteModelPolygon=this.SiteModelLayerFactory.create(this,this.underlayScene),this.layerPolygon=this.PolygonLayerFactory.create(this,this.underlayScene,{loadEntities:!1,manualVisibility:!0}),this.layerCameraFOV=this.CameraFOVLayerFactory.create(this,this.overlayScene),this.layerMagnification=this.MagnificationLayerFactory.create(this,this.overlayScene),this.layerMeasurements=this.MeasurementsLayerFactory.create(this,this.overlayScene,{visible:!1}),this.addToScene(this.layerLocationMarker),this.addToScene(this.layerPoi),this.addToScene(this.layerCameraImage),this.addToScene(this.layerRoute),this.addToScene(this.layerNavGraph),this.addToScene(this.layerAlignmentHelpers),this.addToScene(this.layerMap),this.addToScene(this.layerSiteModelPolygon),this.addToScene(this.layerPolygon),this.addToScene(this.layerCameraFOV),this.addToScene(this.layerMeasurements),this.addToScene(this.layerCursor),this.addToScene(this.layerMagnification),this.enableKeyboardShortcuts(!0)},e.prototype.updateKeyboardShortcuts=function(){this.enableKeyboardShortcuts(!1),this.enableKeyboardShortcuts(!0)},e.prototype.enableKeyboardShortcuts=function(t){t!==this.shortcutsBound&&(this.inputHandler.ignoreKeyboardEvents=!t,this.shortcutsBound=t,t?this.bindHotkeys():this.unbindHotkeys())},e.prototype.bindHotkeys=function(){var t=this;this.hotkeys.unpause(),(this.ModeService.isNavGraphEditorMode()||this.ModeService.isDownloadPointCloudMode())&&this.viewMode===M.SceneViewMode.Map||(this.areOrbitCameraControlsUsed()||(this.bindHotkey({combo:"up",description:this.gettext("Move forward"),action:"keydown",callback:function(){return t.moveStraight(1)}}),this.bindHotkey({combo:"down",description:this.gettext("Move backward"),action:"keydown",callback:function(){return t.moveStraight(-1)}})),this.bindHotkey({combo:"left",description:this.gettext("Rotate left"),action:"keydown",callback:function(){return t.cameraController.drag(20,0)}}),this.bindHotkey({combo:"right",description:this.gettext("Rotate right"),action:"keydown",callback:function(){return t.cameraController.drag(-20,0)}})),this.viewMode===M.SceneViewMode.Map?(this.bindHotkey({combo:["A","a"],description:this.gettext("Pan left"),callback:function(){}}),this.bindHotkey({combo:["D","d"],description:this.gettext("Pan right"),callback:function(){}}),this.bindHotkey({combo:["W","w"],description:this.gettext("Pan up"),callback:function(){}}),this.bindHotkey({combo:["S","s"],description:this.gettext("Pan down"),callback:function(){}}),this.bindHotkey({combo:"shift+*",description:this.gettext("Fast panning"),callback:function(){}})):this.PointCloudMenuService.isCloudVisible()&&!this.areOrbitCameraControlsUsed()&&(this.bindHotkey({combo:["A","a"],description:this.gettext("Free flight left"),callback:function(){}}),this.bindHotkey({combo:["D","d"],description:this.gettext("Free flight right"),callback:function(){}}),this.bindHotkey({combo:["W","w"],description:this.gettext("Free flight forward"),callback:function(){}}),this.bindHotkey({combo:["S","s"],description:this.gettext("Free flight backward"),callback:function(){}}),this.bindHotkey({combo:["Q","q"],description:this.gettext("Free flight up"),callback:function(){}}),this.bindHotkey({combo:["E","e"],description:this.gettext("Free flight down"),callback:function(){}}),this.bindHotkey({combo:"shift+*",description:this.gettext("Fast free flight"),callback:function(){}}))},e.prototype.unbindHotkeys=function(){this.hotkeys.del(this.boundHotkeys),this.boundHotkeys.length=0,this.hotkeys.pause()},e.prototype.bindHotkey=function(t){var e;this.hotkeys.add(t),t.combo instanceof Array?(e=this.boundHotkeys).push.apply(e,t.combo):this.boundHotkeys.push(t.combo)},e.prototype.moveStraight=function(t){var n=this;!this.IV.isMoving()&&this.currentImage&&this.ImageService.getClosestImageInDir(this.currentImage,this.currViewingDir,t,e.MOVE_FORWARD_DISTANCE).then(function(t){return n.IV.moveToImage(t,void 0)}).catch(function(){})},e.prototype.moveTowardsEvent=function(t){var n=this,i=this.unprojectScreenCoordinates(t.x,t.y).sub(this.getCamera().position);i.z=0,i.normalize(),i.multiplyScalar(e.RAYCAST_FAIL_ASSUMED_DISTANCE),i.add(this.getCamera().position),this.ImageService.getClosestImageOnFloor(i).then(function(t){return n.IV.moveToImage(t,void 0)}).catch(function(){})},e.prototype.windowResize=function(){this.PoiService.recalculateTextEditorSize()},e.prototype.onTransitionEndEvent=function(t){t.image&&(this.floorHeight=t.image.floorLocation.z),this.FloorChangerService.updateFloors(this.ViewService.isMapPrimaryView()||this.viewMode===M.SceneViewMode.Map).catch(function(){})},e.prototype.onShowPanoramasChanged=function(t,e){var n=this;if(!e&&t){var i=this.getCamera().position;this.ImageService.getClosestImage(i,void 0,s(this.FloorChangerService.currentFloors,[void 0])).then(function(t){return n.IV.moveToImage(t)}).catch(x.handleWarning)}},e.prototype.onFloorChangedEvent=function(t){var e=this;if(t.currentFloors.length>0&&(this.floorHeight=t.currentFloors[0].zMin),t.mayChangeLocation){var n=new v.Vector2(this.getCamera().position.x,this.getCamera().position.y);this.ImageService.getClosestImage(n,void 0,t.currentFloors).then(function(t){return e.IV.moveToImage(t,void 0)}).catch(function(){0!==t.currentFloors.length&&e.PointCloudMenuService.isCloudVisible()&&e.IV.moveToGeoLocation(t.currentFloors[0].globalCenter,!1,void 0,void 0,void 0,void 0,!0,!1).catch(function(){})})}},e.prototype.createCustomPoiOnPosition=function(t){var e=this,n=this.unprojectScreenCoordinates(t.x,t.y);this.PoiService.closeAndUnhighlightPoi(),this.errorHandler.wrap(this.RaycastService.getCoordinates(this,n,!0).then(function(t){var n=e.PoiService.getLocationAsPoi(t.position);e.CursorService.updateCursor(t),e.CursorService.copyCursorPose(n),e.PoiService.openPoi(n)})).catch(function(){})},e.prototype.createPerspectiveView=function(){var t=new l.Viewport(this.divContainer,new f.ViewportInfo("defaultCamera",this.gettext("Perspective camera"),39219));t.bgColor=1644825,t.cameraController=this.cameraController,this.viewports[0]=t},e.prototype.setCameraControlsOnDefault=function(t){var e=this.getDefaultViewport();this.createCameraControls(e,t),e.cameraController=this.cameraController},e.prototype.createCameraControls=function(t,e){e!==T.CameraControlsMode.FIRST_PERSON||this.firstPersonCameraController?e!==T.CameraControlsMode.ORBIT||this.orbitCameraController||(this.orbitCameraController=new A.OrbitCameraController(t,this.inputHandler),t.cameraController=this.orbitCameraController):(this.firstPersonCameraController=new p.FirstPersonCameraController(t,this.inputHandler,this.RaycastService),t.cameraController=this.firstPersonCameraController),this.cameraController=e===T.CameraControlsMode.ORBIT?this.orbitCameraController:this.firstPersonCameraController},e.prototype.areOrbitCameraControlsUsed=function(){return this.cameraController instanceof A.OrbitCameraController},e.prototype.enableSplitScreen=function(t,e){this.setCameraControlsOnDefault(t),1===this.viewports.length&&this.createOrthographicViews(),this.setSplitViewportDimensions(e),e===w.SplitViewportMode.FOUR_VIEWPORTS||e===w.SplitViewportMode.TWO_VIEWPORTS?this.unsetFullscreenViewport():this.setViewportFullscreen(this.getDefaultViewport(),!0),this.currentViewportMode=e,this.invalidateScene()},e.prototype.disableSplitScreen=function(t){var e=this;this.setCameraControlsOnDefault(t),this.viewports.forEach(function(t){return e.setViewportFullscreen(t,!1)}),this.viewports.length=1,this.viewports[0].setDimensions(0,0,1,1),this.viewports[0].active=!0,this.currentViewportMode=w.SplitViewportMode.FULLSCREEN,this.invalidateScene()},e.prototype.createOrthographicViews=function(){this.createOrthographicView(new v.Vector3(0,1,0),new v.Vector3(0,0,-1),new f.ViewportInfo(w.SplitViewportName.TOP_VIEW,this.gettext("Top view"),16711680)),this.createOrthographicView(new v.Vector3(0,0,1),new v.Vector3(-1,0,0),new f.ViewportInfo(w.SplitViewportName.EAST_WEST_VIEW,this.gettext("Side view (E->W)"),16776960)),this.createOrthographicView(new v.Vector3(0,0,1),new v.Vector3(0,-1,0),new f.ViewportInfo(w.SplitViewportName.NORTH_SOUTH_VIEW,this.gettext("Side view (N->S)"),52479))},e.prototype.createOrthographicView=function(t,e,n){var i=new l.Viewport(this.divContainer,n),r=new h.PanningCameraController(i,this.inputHandler);r.resolution=.11,r.dragButtons.add(O.MouseButton.MIDDLE),r.keyboardInput=!0,i.cameraController=r,r.camera.near=0,r.camera.far=50,r.camera.up=t,r.camera.lookAt(e),this.viewports.push(i)},e.prototype.setSplitViewportDimensions=function(t){var e=this.getDefaultViewport(),n=this.getViewportByName(w.SplitViewportName.TOP_VIEW),i=this.getViewportByName(w.SplitViewportName.EAST_WEST_VIEW),r=this.getViewportByName(w.SplitViewportName.NORTH_SOUTH_VIEW);t===w.SplitViewportMode.TWO_VIEWPORTS?(e.setDimensions(.5,0,.5,1),n.setDimensions(0,0,.5,1),e.active=!0,n.active=!0,i.active=!1,r.active=!1):t===w.SplitViewportMode.FULLSCREEN?(e.setDimensions(0,0,1,1),this.viewports.forEach(function(t){return t.active=t===e})):(e.setDimensions(.5,.5,.5,.5),n.setDimensions(0,.5,.5,.5),i.setDimensions(.5,0,.5,.5),r.setDimensions(0,0,.5,.5),this.viewports.forEach(function(t){return t.active=!0})),this.viewportDimensionsChanged.emit()},e.prototype.loadPointCloudModule=function(){var t=this;return this.pointCloudModule?Promise.resolve():b.runWithBaseHref(function(){return t.SystemJsNgModuleLoader.load("../Modules/PointCloud/PointCloudModule#PointCloudModule").then(function(e){if(t.pointCloudModule)return Promise.resolve();var n=e.create(t.injector),i=n.injector.get(n.instance.entry);return t.pointCloudModule=i,t.layerPointCloudV2=i.createLayer(t,t.scene),t.addToScene(t.layerPointCloudV2),t.createVolumeClippingLayer(),i.createLegacyLayer(t,t.scene).then(function(e){t.layerPointCloud=e,t.addToScene(t.layerPointCloud)}).catch(function(t){"SecurityError"===t.name?console.log("PointCloudWorker not available"):console.log("PointCloudLegacy failed to load",t)})})})},e.prototype.loadMeshModule=function(){var t=this;return this.meshModule?Promise.resolve():b.runWithBaseHref(function(){return t.SystemJsNgModuleLoader.load("../Modules/MeshModule#MeshModule").then(function(e){if(!t.meshModule){var n=e.create(t.injector),i=n.injector.get(n.instance.entry);t.meshModule=i,t.layerMesh=i.createLayer(t,t.scene),t.addToScene(t.layerMesh),t.ViewMenuService.onShowMeshesChanged.emit(!0)}})})},e.prototype.isPointCloudModuleLoaded=function(){return void 0!==this.pointCloudModule},e.prototype.getCurrentViewState=function(){var t,e=this.cameraController instanceof p.FirstPersonCameraController?_.cloneDeep(this.cameraController.orientation):void 0;return{location:this.getCamera().position.clone(),orientation:e,imageId:null===(t=this.currentImage)||void 0===t?void 0:t.id,image:this.currentImage,fov:this.cameraController.fov}},e.prototype.setCurrentViewState=function(t){return o(this,void 0,void 0,function(){var e;return a(this,function(n){switch(n.label){case 0:return e=[],this.updateOrientation(t.orientation),t.fov&&this.updateFov(t.fov),this.getCamera().position.copy(t.location),this.PointCloudMenuService.config.showPointCloud&&e.push(R.signalEmitted(this.getPointCloudV2Layer().loadComplete)),t.mapBoundingBox&&this.fitMapToBounds(t.mapBoundingBox),e.push(this.updateFloorPlansForScreenshot(t.location)),this.layerCameraImage.clear(),t.image&&(this.layerCameraImage.show(t.image,void 0,0,0),e.push(R.signalEmitted(this.layerCameraImage.loadComplete))),[4,Promise.all(e)];case 1:return n.sent(),[2]}})})},e.prototype.updateFloorPlansForScreenshot=function(t){return o(this,void 0,void 0,function(){var e;return a(this,function(n){switch(n.label){case 0:return[4,this.SiteModelService.getCurrentFloorByPosition(t)];case 1:return e=n.sent(),[4,this.layerMap.displayFloorForScreenshot(this.getViewportByName(w.SplitViewportName.TOP_VIEW),e)];case 2:return n.sent(),[4,R.signalEmitted(this.getMapLayer().loadComplete)];case 3:return n.sent(),[2]}})})},e.prototype.fitMapToBounds=function(t){var e=this.getMapLayer().targetViewport,n=L.calcCamParamsToFitBoxIntoScreen(t,e.screenWidth,e.screenHeight),i=e.cameraController,r=Math.min(h.PanningCameraController.RES_MAX,Math.max(i.resMin,n.resolution));i.camera.position.copy(n.position),i.resolution=r},e.prototype.setTopViewFullscreen=function(){var t=this.getViewportByName(w.SplitViewportName.TOP_VIEW);t.setDimensions(0,0,1,1),t.active=!0,this.getDefaultViewport().active=!1},e.prototype.setTopAndPerspectiveSplit=function(){var t=this.getDefaultViewport(),e=this.getViewportByName(w.SplitViewportName.TOP_VIEW);t.setDimensions(.5,0,.5,1),e.setDimensions(0,0,.5,1),t.active=!0,e.active=!0},e.prototype.enableScreenshotMode=function(){var e;t.prototype.enableScreenshotMode.call(this);var n=this.getDefaultViewport(),i=this.getViewportByName(w.SplitViewportName.TOP_VIEW),r=i.cameraController;this.stateBeforeScreenshot={defaultViewportDimensions:n.getDimensions(),topViewportDimensions:i.getDimensions(),defaultViewportActive:n.active,topViewportActive:i.active,locationMarkersVisible:this.getLocationMarkerLayer().visible,magnifyingGlassVisible:this.layerMagnification.visible,cursorVisible:this.getCursorLayer().visible,cameraFovVisible:this.getCameraFOVLayer().visible,datasetsVisibility:this.DatasetRepository.data.reduce(function(t,e){return t.set(e.id,e.pointCloudVisible)},new Map),panningCameraResolution:r.resolution,panningCameraPosition:null===(e=this.getMapLayer().targetViewport)||void 0===e?void 0:e.camera.position.clone()},this.getLocationMarkerLayer().visible=!1,this.layerMagnification.visible=!1,this.getCursorLayer().visible=!1,this.getCameraFOVLayer().visible=!1},e.prototype.disableScreenshotMode=function(){var e=this;t.prototype.disableScreenshotMode.call(this),this.layerMap.disableScreenshotMode();var n=this.getDefaultViewport(),i=this.getViewportByName(w.SplitViewportName.TOP_VIEW);n.setDimensions(this.stateBeforeScreenshot.defaultViewportDimensions.left,this.stateBeforeScreenshot.defaultViewportDimensions.bottom,this.stateBeforeScreenshot.defaultViewportDimensions.width,this.stateBeforeScreenshot.defaultViewportDimensions.height),i.setDimensions(this.stateBeforeScreenshot.topViewportDimensions.left,this.stateBeforeScreenshot.topViewportDimensions.bottom,this.stateBeforeScreenshot.topViewportDimensions.width,this.stateBeforeScreenshot.topViewportDimensions.height),n.active=this.stateBeforeScreenshot.defaultViewportActive,i.active=this.stateBeforeScreenshot.topViewportActive,i.cameraController.resolution=this.stateBeforeScreenshot.panningCameraResolution,this.getMapLayer().targetViewport.camera.position.copy(this.stateBeforeScreenshot.panningCameraPosition),this.getLocationMarkerLayer().visible=this.stateBeforeScreenshot.locationMarkersVisible,this.layerMagnification.visible=this.stateBeforeScreenshot.magnifyingGlassVisible,this.getCursorLayer().visible=this.stateBeforeScreenshot.cursorVisible,this.getCameraFOVLayer().visible=this.stateBeforeScreenshot.cameraFovVisible,this.DatasetRepository.data.forEach(function(t){return t.pointCloudVisible=e.stateBeforeScreenshot.datasetsVisibility.get(t.id)})},e.prototype.createVolumeClippingLayer=function(){var t={pointCloudLayer:this.layerPointCloudV2,visible:this.ModeService.isDownloadPointCloudMode()&&!this.ModeService.isSwitchingMode};this.layerVolumeClipping=this.VolumeClippingLayerFactory.create(this,this.overlayScene,t),this.addToScene(this.layerVolumeClipping)},e.prototype.adjustViewportDimensions=function(t,e){void 0===e&&(e=!1),t/=this.divContainer.getCurrentWidth(),this.adjustVerticalViewportDimensions(t,e),this.invalidateScene()},e.prototype.adjustVerticalViewportDimensions=function(t,e){var n=this.getDefaultViewport(),i=this.getViewportByName(w.SplitViewportName.TOP_VIEW);e?(this.tweenViewportDimensions(i,i.left,i.bottom,this.clampDimension(i.width+t),i.height),this.tweenViewportDimensions(n,this.clampDimension(n.left+t),n.bottom,this.clampDimension(n.width-t),n.height)):(i.setDimensions(i.left,i.bottom,this.clampDimension(i.width+t),i.height),n.setDimensions(this.clampDimension(n.left+t),n.bottom,this.clampDimension(n.width-t),n.height),this.updateViewportActiveFlag(i),this.updateViewportActiveFlag(n),this.viewportDimensionsChanged.emit())},e.prototype.updateViewportActiveFlag=function(t){t.active=t.width>.001},e.prototype.tweenViewportDimensions=function(t,e,n,i,r){var o=this,a=new I.Tween(t).to({left:e,bottom:n,width:i,height:r},400).easing(I.Easing.Sinusoidal.InOut).onUpdate(function(){o.viewportDimensionsChanged.emit(),o.invalidateScene()}).onComplete(function(){o.forgetTween(a),o.updateViewportActiveFlag(t),o.viewportDimensionsChanged.emit(),o.invalidateScene()}).start();this.watchTween(a)},e.prototype.resetTwoViewportModeDimensions=function(){var t=this.getDefaultViewport(),e=this.getViewportByName(w.SplitViewportName.TOP_VIEW);t.active=!0,e.active=!0,this.tweenViewportDimensions(t,.5,0,.5,1),this.tweenViewportDimensions(e,0,0,.5,1),this.TrackingService.trackPreDefinedEvent((new D.MultiViewportResizedEvent).withViewports(0,e,t))},e.prototype.maximizeViewport=function(t){var e=this.getViewportByName(t),n=this.getViewportByName(t===w.SplitViewportName.TOP_VIEW?w.SplitViewportName.DEFAULT_VIEW:w.SplitViewportName.TOP_VIEW);e.active=!0,n.active=!1,e.setDimensions(0,0,1,1),n.setDimensions(0,0,0,1),this.viewportDimensionsChanged.emit(),this.invalidateScene()},e.prototype.checkAllDatasetFloorsHaveMaps=function(){var t=this;return this.currentFloorMaps.then(function(e){return e.length===t.FloorChangerService.currentFloors.length})},e.prototype.atLeastOneFloorHasMaps=function(){return this.currentFloorMaps.then(function(t){return t.length>0})},Object.defineProperty(e.prototype,"currentFloorMaps",{get:function(){return this.TiledMapRepository.getMapForFloors(this.FloorChangerService.currentFloors)},enumerable:!0,configurable:!0}),e.prototype.clampDimension=function(t){return Math.max(0,Math.min(t,1))},e.RAYCAST_FAIL_ASSUMED_DISTANCE=5,e.IMAGE_SEARCH_RADIUS=10,e.MOVE_FORWARD_DISTANCE=3,e}(c.AbstractView);e.MainView=N},function(t,e,n){"use strict";function i(t){return t.offsetParent}function r(t,e){var n={x:0,y:0,event:t};if(void 0===t.offsetX||navigator.userAgent.toLowerCase().indexOf("firefox")>-1){n.x=t.pageX,n.y=t.pageY;for(var r=e||i(t.target);r;)n.x-=r.offsetLeft,n.y-=r.offsetTop,r=i(r)}else n.x=t.offsetX,n.y=t.offsetY;return n}Object.defineProperty(e,"__esModule",{value:!0}),e.getEventPosition=function(t){var e=t;return void 0!==e.offsetX||void 0!==e.pageX?r(e):e.originalEvent?r(e.originalEvent):e.gesture&&e.gesture.center?r(e.gesture.center,e.target):e.touches&&e.touches.length?r(e.touches[0]):r(e.gesture.srcEvent)},e.getMouseWheelDelta=function(t){var e=t.originalEvent||t;return e.deltaY?e.deltaY/40:void 0!==e&&"wheelDelta"in e?-e.wheelDelta/120:e.detail/3}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=function(){function t(t){this.container=t,this.dimensions={width:1,height:1,aspectRatio:1},this.onResize()}return t.prototype.onResize=function(){var t=Math.floor(this.container.getBoundingClientRect().width);isNaN(t)||(this.dimensions.width=t);var e=Math.floor(this.container.getBoundingClientRect().height);isNaN(e)||(this.dimensions.height=e);var n=this.container.offsetWidth/this.container.offsetHeight;isFinite(n)&&(this.dimensions.aspectRatio=n)},t.prototype.appendChild=function(t){this.container.appendChild(t)},t.prototype.addEventCallback=function(t,e){i.element(this.container).bind(t,e)},t.prototype.getCurrentWidth=function(){return this.dimensions.width},t.prototype.getCurrentHeight=function(){return this.dimensions.height},t.prototype.getAspectRatio=function(){return this.dimensions.aspectRatio},t}();e.HTMLContainer=r},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.swallowExceptions=function(t){try{return t()}catch(t){return void console.error("Unhandled exception",t.stack)}}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(){}return t.prototype.fillFromData=function(t){this.type=t.type,this.siteModelEntityId=t.building,this.fromSiteModelEntityId=t.from,this.toSiteModelEntityId=t.to},t}();e.InstructionEntity=i},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(138),a=n(113),s=function(t){function e(e,n,i,r){return t.call(this,e,n,i,r)||this}return r(e,t),e.prototype.buildText=function(){return this.isStartPoi()?this.poi.title:this.gettextCatalog.getString("Start here",void 0,"navigation instruction")},e.prototype.buildIcons=function(){var t=this.isStartPoi()?this.poi.icon:n(1144),e=this.isStartPoi()?this.poi.icon:n(1145);return{map:n(1146),panorama:e,text:t}},e.prototype.isStartPoi=function(){return this.poi&&!this.poi.isLocationAsPoi},Object.defineProperty(e.prototype,"type",{get:function(){return a.InstructionType.START},enumerable:!0,configurable:!0}),e}(o.SpecialInstruction);e.StartInstruction=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(138),a=n(113),s=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i,r)||this;return o.poi=r,o}return r(e,t),e.prototype.buildText=function(){return this.isEndPoi()?this.poi.title:this.gettextCatalog.getString("Destination reached",void 0,"navigation instruction")},e.prototype.buildIcons=function(){var t=this.isEndPoi()?this.poi.icon:n(1147),e=this.isEndPoi()?this.poi.icon:n(1148);return{map:n(1149),panorama:e,text:t}},e.prototype.isEndPoi=function(){return this.poi&&!this.poi.isLocationAsPoi},Object.defineProperty(e.prototype,"type",{get:function(){return a.InstructionType.END},enumerable:!0,configurable:!0}),e}(o.SpecialInstruction);e.EndInstruction=s},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(315),r=n(4),o=n(85),a=function(){function t(){}return t.exportMeasurementsToByteStream=function(t){var e=this,n=[],r=0;t.forEach(function(t){var i=e.exportMeasurementToByteStream(t);r+=i.length,n.push(i)});var o=i.Buffer.allocUnsafe(r+this.SIZEOF_FORMAT_VERSION);o.writeUInt8(this.FORMAT_VERSION,this.FORMAT_VERSION_OFFSET);var a=this.SIZEOF_FORMAT_VERSION;return n.forEach(function(t){t.copy(o,a),a+=t.length}),o},t.exportMeasurementToByteStream=function(t){var e=(new TextEncoder).encode(t.name).length,n=i.Buffer.allocUnsafe((t.points.length+1)*this.BYTES_PER_POINT+this.SIZEOF_ALL+this.SIZEOF_NAME_LENGTH+e);t.povLocation?(n.writeDoubleLE(t.povLocation.x,this.X_OFFSET),n.writeDoubleLE(t.povLocation.y,this.Y_OFFSET),n.writeDoubleLE(t.povLocation.z,this.Z_OFFSET)):(n.writeDoubleLE(0,this.X_OFFSET),n.writeDoubleLE(0,this.Y_OFFSET),n.writeDoubleLE(0,this.Z_OFFSET)),t.povImageId?n.writeDoubleLE(t.povImageId,this.IMAGE_ID_OFFSET):n.writeDoubleLE(0,this.IMAGE_ID_OFFSET),n.writeInt8(o.ToolSpec.of(t.type).id,this.MEASUREMENT_TYPE_OFFSET),n.writeInt16LE(t.points.length,this.LENGTH_HEADER_OFFSET);for(var r=0;r<t.points.length;r++){var a=(r+1)*this.BYTES_PER_POINT+this.SIZEOF_ALL;n.writeDoubleLE(t.points[r].x,a+this.X_OFFSET),n.writeDoubleLE(t.points[r].y,a+this.Y_OFFSET),n.writeDoubleLE(t.points[r].z,a+this.Z_OFFSET)}var s=(t.points.length+1)*this.BYTES_PER_POINT+this.SIZEOF_ALL;return n.writeUInt16LE(e,s),n.write(t.name,s+this.SIZEOF_NAME_LENGTH,"utf-8"),n},t.importMeasurementsFromByteStream=function(t){var e=[],n=t.readUInt8(this.FORMAT_VERSION_OFFSET);if(n>this.FORMAT_VERSION)return console.log("Unsupported measurement binary format version: %d",n),e;for(var i=this.SIZEOF_FORMAT_VERSION;i<t.length;){var a=new r.Vector3(t.readDoubleLE(i+this.X_OFFSET),t.readDoubleLE(i+this.Y_OFFSET),t.readDoubleLE(i+this.Z_OFFSET));0===a.x&&0===a.y&&0===a.z&&(a=void 0);var s=t.readDoubleLE(i+this.IMAGE_ID_OFFSET);0===s&&(s=void 0);for(var c=t.readInt16LE(i+this.LENGTH_HEADER_OFFSET),l=t.readInt8(i+this.MEASUREMENT_TYPE_OFFSET),u=o.ToolSpec.getForId(l).tool,d=[],p=0;p<c;p++){var h=(p+1)*this.BYTES_PER_POINT+this.SIZEOF_ALL+i;d.push(new r.Vector3(t.readDoubleLE(h+this.X_OFFSET),t.readDoubleLE(h+this.Y_OFFSET),t.readDoubleLE(h+this.Z_OFFSET)))}i+=(d.length+1)*this.BYTES_PER_POINT+this.SIZEOF_ALL;var f=void 0;if(2===n){var g=t.readUInt16LE(i);i+=this.SIZEOF_NAME_LENGTH,f=t.toString("utf-8",i,i+=g)}e.push({type:u,povLocation:a,povImageId:s,points:d,name:f})}return e},t.FORMAT_VERSION=2,t.FORMAT_VERSION_OFFSET=0,t.X_OFFSET=0,t.Y_OFFSET=8,t.Z_OFFSET=16,t.IMAGE_ID_OFFSET=24,t.MEASUREMENT_TYPE_OFFSET=32,t.LENGTH_HEADER_OFFSET=33,t.BYTES_PER_POINT=24,t.SIZEOF_FORMAT_VERSION=1,t.SIZEOF_IMAGE_ID=8,t.SIZEOF_MEASUREMENT_TYPE=1,t.SIZEOF_LENGTH_HEADER=2,t.SIZEOF_NAME_LENGTH=2,t.SIZEOF_ALL=t.SIZEOF_IMAGE_ID+t.SIZEOF_LENGTH_HEADER+t.SIZEOF_MEASUREMENT_TYPE,t}();e.MeasurementsBinarySerializer=a},function(t,e,n){t.exports=n(1190).default,t.exports.default=t.exports},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),r=function(){function t(t){var e=document.createElement("canvas");e.width=t.width,e.height=t.height,this.context=e.getContext("2d"),this.context.drawImage(t,0,0)}return t.prototype.getDepth=function(t,e){var n=Math.round(t),i=Math.round(e);if(!(n<0||i<0||n>=this.width||i>=this.height)){var r=this.context.getImageData(n,i,1,1).data;return r[1]+r[0]/256}},Object.defineProperty(t.prototype,"width",{get:function(){return this.context.canvas.width},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"height",{get:function(){return this.context.canvas.height},enumerable:!0,configurable:!0}),t}();e.CanvasDepthImage=r;var o=function(){function t(){}return t.sample=function(e,n,r,o,a){var s=n.uv,c=s.x*(e.width-1),l=(1-s.y)*(e.height-1),u=e.getDepth(c,l);if(!u)return!1;o.copy(n.point).sub(r).normalize().multiplyScalar(u).add(r);var d=new i.Matrix3,p=new i.Vector3,h=new i.Vector3;t.makeUvToPosMap(n,d,p,h);var f=this.getNearbyPoint(e,n.point,r,s,d,p,h,-1,0),g=this.getNearbyPoint(e,n.point,r,s,d,p,h,1,0),m=this.getNearbyPoint(e,n.point,r,s,d,p,h,0,-1),v=this.getNearbyPoint(e,n.point,r,s,d,p,h,0,1);return this.planeFit(o,r,f,g,m,v,a)},t.makeUvToPosMap=function(t,e,n,r){var o=t.object.geometry,a=o.attributes.position.array,s=new i.Vector3(a[3*t.face.a],a[3*t.face.a+1],a[3*t.face.a+2]).applyMatrix4(t.object.matrixWorld),c=new i.Vector3(a[3*t.face.b],a[3*t.face.b+1],a[3*t.face.b+2]).applyMatrix4(t.object.matrixWorld),l=new i.Vector3(a[3*t.face.c],a[3*t.face.c+1],a[3*t.face.c+2]).applyMatrix4(t.object.matrixWorld);n.subVectors(s,c),r.subVectors(l,c);var u=o.attributes.uv.array,d=new i.Vector2(u[2*t.face.a],u[2*t.face.a+1]),p=new i.Vector2(u[2*t.face.b],u[2*t.face.b+1]),h=new i.Vector2(u[2*t.face.c],u[2*t.face.c+1]),f=d.sub(p),g=h.sub(p);e.set(f.x,g.x,0,f.y,g.y,0,0,0,1),e.getInverse(e)},t.getNearbyPoint=function(t,e,n,r,o,a,s,c,l){var u=new i.Vector3(c/(t.width-1),l/(t.height-1)),d=(r.x+u.x)*(t.width-1),p=(1-(r.y+u.y))*(t.height-1),h=t.getDepth(d,p);if(void 0!==h){var f=u.applyMatrix3(o);return(new i.Vector3).addScaledVector(a,f.x).addScaledVector(s,f.y).add(e).sub(n).normalize().multiplyScalar(h).add(n)}},t.planeFit=function(t,e,n,r,o,a,s){s.set(0,0,0);var c=t.clone().sub(e),l=new i.Plane;function u(e,n){e&&n&&(l.setFromCoplanarPoints(t,e,n),s.addScaledVector(l.normal,c.dot(l.normal)<0?1:-1))}return u(n,o),u(n,a),u(r,o),u(r,a),(0!==s.x||0!==s.y||0!==s.z)&&(s.normalize(),!0)},t}();e.DepthImageSampler=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.ORBIT="ORBIT",t.FIRST_PERSON="FIRST_PERSON"}(e.CameraControlsMode||(e.CameraControlsMode={}))},function(t,e,n){t.exports=n.p+"c87e88d87bbf2a8cced1ff0de447470e.circle.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(124),s=n(40),c=n(101),l=n(80),u=(n(41),n(9),n(15),n(157)),d=n(559),p=n(4),h=n(1193),f=n(25),g=n(8),m=n(6),v=n(0),y=n(7),b=n(16),w=n(0),S=n(15),x=n(41),M=n(9),E=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i)||this;return o.depthOverlaySettings={depthOpacity:0,halfDistance:5,maxDistance:50,hsv:!0},o.loadComplete=new b.Signal,o.factory=r,o.errorHandler=o.factory.ErrorService.newOnceWrapper().report().generic(o.factory.gettext("An error occurred when downloading panoramas. Please check your network connection.")).build(),o.currentView=o.createViewState(),o.prevView=o.createViewState(),o.factory.ConfigService.initialized.then(function(){o.mobileMaxRes=o.factory.ConfigService.getInteger(f.Configs.LAYERS_PANORAMA_MOBILE_MAX_RES,void 0)}).catch(g.handleWarning),o}return r(e,t),e.prototype.onDestroy=function(){h.ImageMaterial.disposeSharedTextures(),t.prototype.onDestroy.call(this)},e.prototype.show=function(t,n,i,r){var o=this;void 0===i&&(i=e.FADE_DURATION),void 0===r&&(r=e.FADE_DELAY_TIME),t.cameraHead.fetchHeadData(function(){return o.view.invalidateScene()}).then(function(){return o.createNewImageSet(t,n,i,r)}).catch(g.handleWarning)},e.prototype.clear=function(){this.destroyObjGroup(this.currentView.meshes),this.currentView=this.createViewState(),this.clearPrevious(),this.view.invalidateScene()},e.prototype.clearPrevious=function(){this.prevView.meshes.length>0&&(this.destroyObjGroup(this.prevView.meshes),this.prevView=this.createViewState())},e.prototype.createNewImageSet=function(t,n,i,r){void 0===i&&(i=e.FADE_DURATION),void 0===r&&(r=e.FADE_DELAY_TIME);var o,a=t.cameraHead,s=this.view.getCamera(),c=n<.9*s.far?n:.9*s.far;if(this.currentView.meshes.length>0&&(this.destroyObjGroup(this.prevView.meshes),this.prevView=this.currentView),this.createImageSet(t,a,c),this.prevView.meshes.length>0&&(o=this.getScaleFromRadius(this.prevView.meshes[0].geometry,c)),this.prevView.image!==t)for(var l=0,u=this.prevView.meshes;l<u.length;l++){var d=u[l];this.tweenMeshOpacity(d,0,i,r),o&&d.scale.copy(o)}for(var p=0,h=this.currentView.meshes;p<h.length;p++)d=h[p],this.tweenMeshOpacity(d,1,i,r)},e.prototype.getScaleFromRadius=function(t,e){var n=t.getAttribute("position").array[0],i=t.getAttribute("position").array[1],r=t.getAttribute("position").array[2],o=e/Math.sqrt(n*n+i*i+r*r);return new p.Vector3(o,o,o)},e.prototype.onAfterRender=function(t){this.updateImageResolution(t),this.currentView.resolutions.some(function(t){return t>0})&&y.isEqual(this.currentView.resolutions,this.currentView.resolutionsQueued)?this.loadComplete.emit(!0):this.currentView.resolutionsQueued.some(function(t){return t===e.LOAD_FAILED_RESOLUTION})&&this.loadComplete.emit(!1)},e.prototype.updateImageResolution=function(t){var e=new p.Frustum;e.setFromProjectionMatrix((new p.Matrix4).multiplyMatrices(t.projectionMatrix,t.matrixWorldInverse));for(var n=[],i=0;i<this.currentView.meshes.length;i++)e.intersectsObject(this.currentView.meshes[i])&&n.push(i);n.length>0&&this.loadImages(this.currentView.image,this.currentView.head,!0,this.onLoadComplete.bind(this),n)},e.prototype.createImageSet=function(t,e,n){this.currentView=this.createViewState(),this.currentView.image=t,this.currentView.head=e;for(var i=this.getScaleFromRadius(e.getMeshGeometries()[0],n),r=0;r<e.getMeshGeometries().length;r++){var o=this.createMesh(t,e.getMeshGeometries()[r],e.getAlphaMaskTextures()[r],r,"+"===e.blending?p.AdditiveBlending:p.NormalBlending,i);this.currentView.meshes.push(o)}for(var a=0,s=this.loadImages(t,e,!1,this.onLoadComplete.bind(this));a<s.length;a++){var c=s[a];this.sceneGroup.add(this.currentView.meshes[c.index])}},e.prototype.loadImages=function(t,n,i,r,o){var a=this,l=this.view.getCamera(),u=new p.Vector3(0,0,-1);u.transformDirection(l.matrixWorld);var d=(new p.Quaternion).copy(t.orientation).inverse().normalize();u.applyQuaternion(d);var h=[];if(i){var f=this.getHighestRes(n);l.fov*l.aspect>e.FOV_THRESHOLD&&f>0&&(s.isMobileBrowser()||this.addToLoadQueue(h,t,n,f,u,o),f--),this.addToLoadQueue(h,t,n,f,u,o)}else this.addToLoadQueue(h,t,n,0,u,o);h.sort(function(t,e){return t.resolution!==e.resolution?t.resolution-e.resolution:t.dist-e.dist});for(var g=function(n){var i=m.getImageFilename(t,n.index,n.resolution,!1);m.currentView.resolutionsQueued[n.index]=n.resolution,i=m.factory.RestService.addAuthorizationQueryParameter(i),c.getTextureLoader().load(i,function(t){a.errorHandler.reset(),r(n,t)},void 0,function(t){a.errorHandler.handle(t),a.currentView.resolutionsQueued[n.index]=e.LOAD_FAILED_RESOLUTION})},m=this,v=0,y=h;v<y.length;v++)g(S=y[v]);if(t.dataset&&t.dataset.hasDepthImages)for(var b=0,w=h;b<w.length;b++){var S=w[b],x=this.currentView.meshes[S.index];x.userData.depthImagePromise||this.loadDepthImage(S,x)}return h},e.prototype.loadDepthImage=function(t,e){var n=this,i=this.getImageFilename(t.image,t.index,0,!0);i=this.factory.RestService.addAuthorizationQueryParameter(i),e.userData.depthImagePromise=c.getTextureLoader().loadPromise(i,function(t){t.minFilter=p.NearestFilter,t.magFilter=p.NearestFilter,t.generateMipmaps=!1}).then(function(t){return e.material.depthMap=t,n.view.invalidateScene(),new d.CanvasDepthImage(t.image)}),this.errorHandler.wrap(e.userData.depthImagePromise).catch(function(){})},e.prototype.getHighestRes=function(t){var e=Math.floor(Math.log(t.resolutions)/Math.log(2));return void 0!==this.mobileMaxRes&&s.isMobileBrowser()&&(e=Math.min(e,this.mobileMaxRes)),e},e.prototype.addToLoadQueue=function(t,e,n,i,r,o){for(var a=n.getMeshGeometries(),s=0;s<a.length;s++)if(!(o&&o.indexOf(s)<0||s in this.currentView.resolutions&&this.currentView.resolutions[s]>=i||s in this.currentView.resolutionsQueued&&this.currentView.resolutionsQueued[s]>=i)){var c=a[s].boundingBox,l=c.min.x,u=c.min.y,d=c.min.z,h=c.max.x,f=c.max.y,g=c.max.z,m=new p.Vector3((l+h)/2,(u+f)/2,(d+g)/2),v=Math.abs(m.angleTo(r));t.push({dist:v,index:s,image:e,resolution:i})}},e.prototype.getImageFilename=function(t,e,n,i){var r=t.cameraHead.tiles>0?Math.floor(e/t.cameraHead.tiles):0,o=t.cameraHead.tiles>0?e%t.cameraHead.tiles:0,a=(i?t.cameraHead.depthFnFormat:t.cameraHead.fnFormat).replace(/\$ID100/g,(Number.parseInt(t.fileId,10)/100|0).toString()).replace(/\$ID/g,t.fileId).replace(/\$INDEX/g,e.toString()).replace(/\$CAM/g,r.toString()).replace(/\$RES/g,n.toString()).replace(/\$TILE/g,("00"+o.toString()).slice(-2)),s="";return i&&t.dataset.depthImageVersion&&(s="?v="+t.dataset.depthImageVersion),t.filePath+"/"+a+s},e.prototype.onLoadComplete=function(t,e){if(this.currentView.image===t.image){var n=t.index,i=this.currentView.meshes[n].material;if(void 0===this.currentView.resolutions[n])i.map=e,this.currentView.resolutions[n]=t.resolution,this.view.invalidateScene();else{var r=this.currentView.resolutions[n],o=t.resolution;r<o?(i.map.dispose(),i.map=e,this.currentView.resolutions[n]=o,this.view.invalidateScene()):e.dispose()}}else e.dispose()},e.prototype.createViewState=function(){return{meshes:[],resolutions:[],resolutionsQueued:[],image:void 0,head:void 0}},e.prototype.createMesh=function(t,e,n,i,r,o){var a=this,s=new p.Mesh(e);s.position.copy(t.location),s.quaternion.copy(t.orientation),s.scale.copy(o),s.renderOrder=-(1e6-i-Math.random()),s.name="cam-"+t.filePath+"-"+t.fileId+"-"+i.toString(),s.userData.image=t;var c=new h.ImageMaterial(r,n,this.depthOverlaySettings);return s.material=c,s.onBeforeRender=function(){c.updateCustomUniforms(a.view.renderer,a.view.getCamera())},s},e.prototype.destroyObjGroup=function(t){if(t)for(var e=0,n=t;e<n.length;e++){var i=n[e],r=i.material;void 0!==r&&(r.disposeTextures(),u.disposeMeshMaterial(i)),this.sceneGroup.remove(i)}},e.prototype.tweenMeshOpacity=function(t,e,n,i){var r=this;void 0===i&&(i=0);var o=t.material;if(0!==n||0!==i){var s=new a.Tween(o).to({imageOpacity:e},n).easing(a.Easing.Cubic.InOut.bind(this)).delay(i).onComplete(function(){return r.view.forgetTween(s)}).start();this.view.watchTween(s)}else o.imageOpacity=e},e.prototype.updateDepthOverlay=function(){for(var t=0,e=this.currentView.meshes;t<e.length;t++){var n=e[t].material;void 0!==n&&(n.depthOverlay=this.depthOverlaySettings)}this.view.invalidateScene()},e.FADE_DURATION=1e3,e.FADE_DELAY_TIME=1e3,e.FOV_THRESHOLD=60,e.LOAD_FAILED_RESOLUTION=-1,e}(l.SceneLayer);e.CameraImageLayer=E;var C=function(t){function e(e,n,i,r){var o=t.call(this)||this;return o.ConfigService=e,o.ErrorService=n,o.RestService=i,o.gettext=r,o}return r(e,t),e.prototype.create=function(t,e,n){return new E(t,e,n,this)},e.ɵfac=function(t){return new(t||e)(w.ɵɵinject(S.ConfigService),w.ɵɵinject(x.ErrorService),w.ɵɵinject(M.RestService),w.ɵɵinject("gettext"))},e.ɵprov=w.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(l.SceneLayerFactory);e.CameraImageLayerFactory=C,w.ɵsetClassMetadata(C,[{type:v.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:S.ConfigService},{type:x.ErrorService},{type:M.RestService},{type:void 0,decorators:[{type:v.Inject,args:["gettext"]}]}]},null),o.module("IVWebApp").service("CameraImageLayerFactory",m.downgradeInjectable(C))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t[t.DISK=0]="DISK",t[t.CROSS=1]="CROSS"}(e.CursorStyle||(e.CursorStyle={}))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.comparePoiImportance=function(t,e,n){return t.isLocationAsPoi?-1:e.isLocationAsPoi?1:n.has(t)?-1:n.has(e)?1:t.importance>e.importance?-1:t.importance<e.importance?1:t.id<e.id?-1:1}},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),Object.defineProperty(e.prototype,"canWrite",{get:function(){return this.bundle.canWrite},enumerable:!0,configurable:!0}),e.prototype.resolveInjectables=function(){this.BundleRepository=this.injectables.BundleRepository},e.prototype.copy=function(e,n){return void 0===n&&(n=!1),t.prototype.fill.call(this,e),this.bundle=e.bundle,this},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.bundle=this.BundleRepository.dataMap[e.bundle_id]},e.prototype.fillDto=function(e){t.prototype.fillDto.call(this,e),e.bundle_id=this.bundle.id},e}(n(102).RepositoryObject);e.AbstractNavGraphEntity=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(){}return t.prototype.merge=function(t){return!1},t}();e.EditingOperation=i},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(183),a=n(68),s=function(t){function e(e,n,i,r){var o=t.call(this,a.NavGraphEditingConstantsType.NODE)||this;return o.NavGraphService=e,o.position=n,o.bundle=i,o.undoCallback=r,o}return r(e,t),e.prototype.apply=function(){this.resource=this.NavGraphService.NodeRepository.create(),this.resource.id=this.NavGraphService.adjacencyList.createLocalId(),this.resource.location=this.position,this.resource.bundle=this.bundle,this.NavGraphService.adjacencyList.addNode(this.resource),this.NavGraphService.nodeCreated.emit(this.resource)},e.prototype.commit=function(){var t=this;return this.NavGraphService.NodeRepository.save(this.createNodeForServer(this.resource)).then(function(e){var n=e[0],i=t.resource.id;t.resource.copy(n),t.NavGraphService.adjacencyList.addNode(t.resource);var r=t.NavGraphService.adjacencyList.getNodeMesh(i);r&&(r.userData.id=t.resource.id,t.NavGraphService.adjacencyList.setNodeMesh(r));for(var o=0,a=t.NavGraphService.adjacencyList.getEdgesOfNode(i);o<a.length;o++){var s=a[o],c=s,l=t.NavGraphService.adjacencyList.getEdgeMeshBetweenNodes(s.source.id,s.target.id);t.NavGraphService.adjacencyList.removeEdge(s.source.id,s.target.id),c.source=c.source.id===i?n:c.source,c.target=c.target.id===i?n:c.target,l.userData.source=c.source,l.userData.target=c.target,t.NavGraphService.adjacencyList.addEdge(c),t.NavGraphService.adjacencyList.setEdgeMesh(l)}return t.NavGraphService.adjacencyList.removeNode(i),Promise.resolve()})},e.prototype.undo=function(){var t=this.NavGraphService.adjacencyList.getNodeMesh(this.resource.id);t&&(this.NavGraphService.nodeRemoved.emit(t),this.undoCallback&&this.undoCallback(t)),this.NavGraphService.adjacencyList.removeNode(this.resource.id)},e.prototype.getDescription=function(){return this.NavGraphService.gettextCatalog.getString("Node created")+" | "+this.NavGraphService.gettextCatalog.getString("Bundle: {{bundle}}",{bundle:this.bundle.displayName})},e.prototype.getTitle=function(){return this.getDescription()},e.prototype.createNodeForServer=function(t){var e=this.NavGraphService.NodeRepository.create();return e.copy(t),e.id=void 0,e},e}(o.NavGraphEditingOperation);e.NavGraphEditingNodeCreateOperation=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(183),a=n(68),s=function(t){function e(e,n,i,r){var o=t.call(this,a.NavGraphEditingConstantsType.EDGE)||this;return o.NavGraphService=e,o.bundle=n,o.sourceNode=i,o.targetNode=r,o}return r(e,t),e.prototype.apply=function(){this.resource=this.NavGraphService.EdgeRepository.create(),this.resource.id=this.NavGraphService.adjacencyList.createLocalId(),this.resource.bundle=this.bundle,this.resource.source=this.NavGraphService.NodeRepository.create(),this.resource.source.copy(this.sourceNode),this.resource.target=this.NavGraphService.NodeRepository.create(),this.resource.target.copy(this.targetNode),this.NavGraphService.adjacencyList.addEdge(this.resource),this.NavGraphService.edgeCreated.emit(this.sourceNode,this.targetNode)},e.prototype.commit=function(){var t=this;return this.NavGraphService.EdgeRepository.save(this.createEdgeForServer(this.resource)).then(function(e){var n=e[0],i=t.resource.source.id,r=t.resource.target.id;t.resource.copy(n);var o=t.NavGraphService.adjacencyList.getEdgeMeshBetweenNodes(t.resource.source.id,t.resource.target.id);t.NavGraphService.adjacencyList.addEdge(t.resource),o&&(o.userData.id=t.resource.id,o.userData.source=t.resource.source,o.userData.target=t.resource.target,t.NavGraphService.adjacencyList.setEdgeMesh(o)),(i<0||r<0)&&t.NavGraphService.adjacencyList.removeEdge(i,r)})},e.prototype.undo=function(){var t=this.NavGraphService.adjacencyList.getEdgeMeshBetweenNodes(this.sourceNode.id,this.targetNode.id);t&&this.NavGraphService.edgeRemoved.emit(t),this.NavGraphService.adjacencyList.removeEdge(this.sourceNode.id,this.targetNode.id)},e.prototype.getDescription=function(){return this.NavGraphService.gettextCatalog.getString("Edge created")+" | "+this.NavGraphService.gettextCatalog.getString("Bundle: {{bundle}}",{bundle:this.bundle.displayName})},e.prototype.createEdgeForServer=function(t){var e=this.NavGraphService.EdgeRepository.create();return e.copy(t),e.id=void 0,e.source.copy(this.sourceNode),e.target.copy(this.targetNode),e},e}(o.NavGraphEditingOperation);e.NavGraphEditingEdgeCreateOperation=s},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(7),r=function(){function t(){this.history=[]}return t.prototype.apply=function(t){this.history.length>0&&this.history[this.history.length-1].merge(t)||(t.apply(),this.history.push(t))},t.prototype.undo=function(){if(this.history.length>0){var t=this.history.pop();return t.undo(),t}},t.prototype.undoAll=function(){i.eachRight(this.history,function(t){return t.undo()}),this.history.length=0},t.prototype.commit=function(){return t.commitInOrder(this.history)},t.commitInOrder=function(e){return 0===e.length?Promise.resolve():e[0].commit().then(function(){return e.shift(),t.commitInOrder(e)})},t}();e.EditingHistory=r},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(566),a=n(569),s=n(7),c=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.editingOperations=[],e}return r(e,t),e.prototype.addOperation=function(t){this.editingOperations.push(t)},e.prototype.undo=function(){s.eachRight(this.editingOperations,function(t){return t.undo()})},e.prototype.apply=function(){this.editingOperations.forEach(function(t){return t.apply()})},e.prototype.commit=function(){return a.EditingHistory.commitInOrder(this.editingOperations)},e}(o.EditingOperation);e.EditingOperationCollection=c},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(80),a=n(4),s=n(2),c=n(6),l=n(322),u=n(0),d=n(67),p=n(184),h=n(124),f=(n(140),n(550)),g=n(105),m=(n(28),n(52)),v=n(7),y=n(395),b=n(261),w=n(573),S=n(0),x=n(140),M=n(28),E=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i)||this;return o.params=i,o.factory=r,o.debouncedFloorUpdate=v.debounce(function(t){return o.factory.FloorChangerService.updateByFloorsInView(t.camera).catch(function(){})},y.AbstractSceneLayer.ORTHO_DEBOUNCE),o.quaternionBackup=new a.Quaternion,o.positionBackup=new a.Vector3,o.PERSPECTIVE_ARCS_PIXEL_SIZE=142,o.axisNames=[l.ClipVolume.AXIS_X,l.ClipVolume.AXIS_Y,l.ClipVolume.AXIS_Z],o.circleNames=[l.ClipVolume.CIRCLE_X_POSITIVE,l.ClipVolume.CIRCLE_X_NEGATIVE,l.ClipVolume.CIRCLE_Y_POSITIVE,l.ClipVolume.CIRCLE_Y_NEGATIVE,l.ClipVolume.CIRCLE_Z_POSITIVE,l.ClipVolume.CIRCLE_Z_NEGATIVE,l.ClipVolume.NEGATIVE_X_POSITIVE_Y_CORNER,l.ClipVolume.POSITIVE_X_POSITIVE_Y_CORNER,l.ClipVolume.NEGATIVE_X_NEGATIVE_Y_CORNER,l.ClipVolume.POSITIVE_X_NEGATIVE_Y_CORNER],o.perspectiveArcsNames=[l.ClipVolume.ROTATION_ARC_X,l.ClipVolume.ROTATION_ARC_Y,l.ClipVolume.ROTATION_ARC_Z],o.rotationCirclesNames=[l.ClipVolume.ROTATION_CIRCLE],o.volume=new l.ClipVolume(e,function(){return o.factory.DownloadPointCloudService.onVolumeChange.emit(o.volume)},function(){o.factory.DownloadPointCloudService.onVolumeChangeEnd.emit(o.volume)}),o.trackSignal(o.factory.DownloadPointCloudService.onVolumeChangeEnd).connect(function(){o.recenterCamera()}),o.sceneGroup.add(o.volume),o.visible=i.visible,o.visible&&(o.addClipBoxToPointCloud(),o.reinitObjectsVisibility()),e instanceof f.MainView&&e.viewModeChanged.connect(function(){o.visible&&o.reinitObjectsVisibility()}),o}return r(e,t),e.prototype.onBeforeRenderViewport=function(e){this.visible&&(t.prototype.onBeforeRenderViewport.call(this,e),this.adjustForCurrentCamera(e),this.scaleHandlesAccordingToZoomLevel(e),e.getCamera()instanceof a.OrthographicCamera?this.setRotationCirclePosition(e):this.rotateRotationArcsToCamera(e.getCamera()),this.hasTheClippingVolumeChanged()&&(this.updateVolumeObjectsPositions(),this.addClipBoxToPointCloud()))},e.prototype.onViewportCameraMoveEnd=function(t,e){this.visible&&t.name===m.SplitViewportName.TOP_VIEW&&this.debouncedFloorUpdate(t)},e.prototype.setVolumePositionAndScale=function(t,e){this.volume.position.equals(t)&&e&&this.volume.getObjectByName(l.ClipVolume.BOX_NAME).scale.equals(e)||(this.volume.position.copy(t),e&&(this.volume.getObjectByName(l.ClipVolume.BOX_NAME).scale.copy(e),this.volume.getObjectByName(l.ClipVolume.BOX_FRAME_NAME).scale.copy(e),this.volume.getObjectByName(l.ClipVolume.CIRCLE_X_POSITIVE).position.copy(new a.Vector3(e.x/2,0,0)),this.volume.getObjectByName(l.ClipVolume.CIRCLE_X_NEGATIVE).position.copy(new a.Vector3(-e.x/2,0,0)),this.volume.getObjectByName(l.ClipVolume.CIRCLE_Y_POSITIVE).position.copy(new a.Vector3(0,e.y/2,0)),this.volume.getObjectByName(l.ClipVolume.CIRCLE_Y_NEGATIVE).position.copy(new a.Vector3(0,-e.y/2,0)),this.volume.getObjectByName(l.ClipVolume.CIRCLE_Z_POSITIVE).position.copy(new a.Vector3(0,0,e.z/2)),this.volume.getObjectByName(l.ClipVolume.CIRCLE_Z_NEGATIVE).position.copy(new a.Vector3(0,0,-e.z/2)),this.volume.getObjectByName(l.ClipVolume.NEGATIVE_X_POSITIVE_Y_CORNER).position.copy(new a.Vector3(-e.x/2,e.y/2,e.z/2)),this.volume.getObjectByName(l.ClipVolume.POSITIVE_X_POSITIVE_Y_CORNER).position.copy(new a.Vector3(e.x/2,e.y/2,e.z/2)),this.volume.getObjectByName(l.ClipVolume.NEGATIVE_X_NEGATIVE_Y_CORNER).position.copy(new a.Vector3(-e.x/2,-e.y/2,e.z/2)),this.volume.getObjectByName(l.ClipVolume.POSITIVE_X_NEGATIVE_Y_CORNER).position.copy(new a.Vector3(e.x/2,-e.y/2,e.z/2))),this.volume.updateMatrixWorld(!0),this.factory.DownloadPointCloudService.onVolumeChangeEnd.emit(this.volume))},e.prototype.reinitObjectsVisibility=function(){this.visibilityChangeRequested=!0,this.view.invalidateScene()},e.prototype.setRotationCirclePosition=function(t){var n=this.volume.getObjectByName(l.ClipVolume.ROTATION_CIRCLE),i=this.volume.getObjectByName(l.ClipVolume.BOX_NAME).scale,r=t.getCamera();if(r instanceof a.OrthographicCamera){var o=r.right-r.left,s=t.getWidth(),c=e.ROTATION_CIRCLE_DISTANCE_PIXEL_SIZE/s*o;n.position.copy(new a.Vector3(0,i.y/2+c,0))}},e.prototype.adjustForCurrentCamera=function(t){this.visibilityChangeRequested&&(this.visibilityChangeRequested=!1,t.getCamera()instanceof a.PerspectiveCamera?(this.setObjectVisibility(l.ClipVolume.AXIS_X,!0),this.setObjectVisibility(l.ClipVolume.AXIS_Y,!0),this.setObjectVisibility(l.ClipVolume.AXIS_Z,!0),this.setObjectVisibility(l.ClipVolume.CIRCLE_X_POSITIVE,!0),this.setObjectVisibility(l.ClipVolume.CIRCLE_X_NEGATIVE,!0),this.setObjectVisibility(l.ClipVolume.CIRCLE_Y_POSITIVE,!0),this.setObjectVisibility(l.ClipVolume.CIRCLE_Y_NEGATIVE,!0),this.setObjectVisibility(l.ClipVolume.CIRCLE_Z_POSITIVE,!0),this.setObjectVisibility(l.ClipVolume.CIRCLE_Z_NEGATIVE,!0),this.setObjectVisibility(l.ClipVolume.ROTATION_ARC_X,!0),this.setObjectVisibility(l.ClipVolume.ROTATION_ARC_Y,!0),this.setObjectVisibility(l.ClipVolume.ROTATION_ARC_Z,!0),this.setObjectVisibility(l.ClipVolume.NEGATIVE_X_POSITIVE_Y_CORNER,!1),this.setObjectVisibility(l.ClipVolume.POSITIVE_X_POSITIVE_Y_CORNER,!1),this.setObjectVisibility(l.ClipVolume.NEGATIVE_X_NEGATIVE_Y_CORNER,!1),this.setObjectVisibility(l.ClipVolume.POSITIVE_X_NEGATIVE_Y_CORNER,!1),this.setObjectVisibility(l.ClipVolume.ROTATION_CIRCLE,!1),this.setObjectVisibility(l.ClipVolume.BOX_NAME,!1),this.volume.getObjectByName(l.ClipVolume.CIRCLE_X_NEGATIVE).changeColor(l.ClipVolume.COLOR_RED),this.volume.getObjectByName(l.ClipVolume.CIRCLE_X_POSITIVE).changeColor(l.ClipVolume.COLOR_RED),this.volume.getObjectByName(l.ClipVolume.CIRCLE_Y_NEGATIVE).changeColor(l.ClipVolume.COLOR_GREEN),this.volume.getObjectByName(l.ClipVolume.CIRCLE_Y_POSITIVE).changeColor(l.ClipVolume.COLOR_GREEN)):t.getCamera()instanceof a.OrthographicCamera?(this.setObjectVisibility(l.ClipVolume.AXIS_X,!1),this.setObjectVisibility(l.ClipVolume.AXIS_Y,!1),this.setObjectVisibility(l.ClipVolume.AXIS_Z,!1),this.setObjectVisibility(l.ClipVolume.CIRCLE_X_POSITIVE,!0),this.setObjectVisibility(l.ClipVolume.CIRCLE_X_NEGATIVE,!0),this.setObjectVisibility(l.ClipVolume.CIRCLE_Y_POSITIVE,!0),this.setObjectVisibility(l.ClipVolume.CIRCLE_Y_NEGATIVE,!0),this.setObjectVisibility(l.ClipVolume.CIRCLE_Z_POSITIVE,!1),this.setObjectVisibility(l.ClipVolume.CIRCLE_Z_NEGATIVE,!1),this.setObjectVisibility(l.ClipVolume.ROTATION_ARC_X,!1),this.setObjectVisibility(l.ClipVolume.ROTATION_ARC_Y,!1),this.setObjectVisibility(l.ClipVolume.ROTATION_ARC_Z,!1),this.setObjectVisibility(l.ClipVolume.NEGATIVE_X_POSITIVE_Y_CORNER,!0),this.setObjectVisibility(l.ClipVolume.POSITIVE_X_POSITIVE_Y_CORNER,!0),this.setObjectVisibility(l.ClipVolume.NEGATIVE_X_NEGATIVE_Y_CORNER,!0),this.setObjectVisibility(l.ClipVolume.POSITIVE_X_NEGATIVE_Y_CORNER,!0),this.setObjectVisibility(l.ClipVolume.ROTATION_CIRCLE,!0),this.setObjectVisibility(l.ClipVolume.BOX_NAME,!0),this.volume.getObjectByName(l.ClipVolume.CIRCLE_X_NEGATIVE).changeColor(l.ClipVolume.COLOR_YELLOW),this.volume.getObjectByName(l.ClipVolume.CIRCLE_X_POSITIVE).changeColor(l.ClipVolume.COLOR_YELLOW),this.volume.getObjectByName(l.ClipVolume.CIRCLE_Y_NEGATIVE).changeColor(l.ClipVolume.COLOR_YELLOW),this.volume.getObjectByName(l.ClipVolume.CIRCLE_Y_POSITIVE).changeColor(l.ClipVolume.COLOR_YELLOW)):this.visible=!1)},e.prototype.setObjectVisibility=function(t,e){var n=this.volume.getObjectByName(t);n.visible=e,n.userData.raycastable=e},e.prototype.getBoxFrame=function(){return this.volume.getObjectByName(l.ClipVolume.BOX_FRAME_NAME)},e.prototype.scaleHandlesAccordingToZoomLevel=function(t){var n=this.collectMeshesToScale(this.axisNames),i=this.collectMeshesToScale(this.circleNames),r=this.collectMeshesToScale(this.perspectiveArcsNames),o=this.collectMeshesToScale(this.rotationCirclesNames);t.getCamera().updateMatrixWorld(!0),d.setMeshScreenSize(t,n,e.AXIS_PIXEL_SIZE,!1,!0),d.setMeshScreenSize(t,i,e.CIRCLES_PIXEL_SIZE,!1,!0),d.setMeshScreenSize(t,r,this.PERSPECTIVE_ARCS_PIXEL_SIZE,!1,!0),d.setMeshScreenSize(t,o,e.ROTATION_CIRCLE_PIXEL_SIZE)},e.prototype.collectMeshesToScale=function(t){for(var e=[],n=0,i=t;n<i.length;n++){var r=i[n],o=this.volume.getObjectByName(r);o&&e.push(o.children[0])}return e},e.prototype.rotateRotationArcsToCamera=function(t){if(!p.HighlightableObject3D.isDragging){var n=(new a.Matrix4).getInverse(this.volume.matrixWorld),i=t.getWorldPosition(this.volume.position.clone()).applyMatrix4(n),r=this.volume.getObjectByName(this.perspectiveArcsNames[0]),o=this.volume.getObjectByName(this.perspectiveArcsNames[1]),s=this.volume.getObjectByName(this.perspectiveArcsNames[2]);e.adjustHorizontalRotation(i,r,o,s),e.adjustVerticalRotation(i,r,o,s)}},e.prototype.updateVolumeObjectsPositions=function(){var t=this.volume.getObjectByName(l.ClipVolume.BOX_NAME).scale;this.volume.getObjectByName(l.ClipVolume.NEGATIVE_X_POSITIVE_Y_CORNER).position.set(-t.x/2,t.y/2,t.z/2),this.volume.getObjectByName(l.ClipVolume.POSITIVE_X_POSITIVE_Y_CORNER).position.set(t.x/2,t.y/2,t.z/2),this.volume.getObjectByName(l.ClipVolume.NEGATIVE_X_NEGATIVE_Y_CORNER).position.set(-t.x/2,-t.y/2,t.z/2),this.volume.getObjectByName(l.ClipVolume.POSITIVE_X_NEGATIVE_Y_CORNER).position.set(t.x/2,-t.y/2,t.z/2),this.volume.getObjectByName(l.ClipVolume.CIRCLE_X_POSITIVE).position.set(t.x/2,0,0),this.volume.getObjectByName(l.ClipVolume.CIRCLE_X_NEGATIVE).position.set(-t.x/2,0,0),this.volume.getObjectByName(l.ClipVolume.CIRCLE_Y_POSITIVE).position.set(0,t.y/2,0),this.volume.getObjectByName(l.ClipVolume.CIRCLE_Y_NEGATIVE).position.set(0,-t.y/2,0),this.volume.getObjectByName(l.ClipVolume.CIRCLE_Z_POSITIVE).position.set(0,0,t.z/2),this.volume.getObjectByName(l.ClipVolume.CIRCLE_Z_NEGATIVE).position.set(0,0,-t.z/2)},e.adjustHorizontalRotation=function(t,e,n,i){t.x>0&&t.y>=0?(e.children[0].rotation.x=0,n.children[0].rotation.x=0,i.children[0].rotation.z=0,e.rotationOrientationAdjustment=-1,n.rotationOrientationAdjustment=-1):t.x<=0&&t.y>0?(e.children[0].rotation.x=-Math.PI,n.children[0].rotation.x=0,i.children[0].rotation.z=Math.PI/2,e.rotationOrientationAdjustment=-1,n.rotationOrientationAdjustment=1):t.x<0&&t.y<=0?(e.children[0].rotation.x=-Math.PI,n.children[0].rotation.x=-Math.PI,i.children[0].rotation.z=Math.PI,e.rotationOrientationAdjustment=1,n.rotationOrientationAdjustment=1):t.x>=0&&t.y<0&&(e.children[0].rotation.x=0,n.children[0].rotation.x=-Math.PI,i.children[0].rotation.z=3*Math.PI/2,e.rotationOrientationAdjustment=1,n.rotationOrientationAdjustment=-1)},e.adjustVerticalRotation=function(t,e,n,i){t.z>=0?(e.children[0].rotation.z=0,n.children[0].rotation.z=0,i.rotationOrientationAdjustment=-1):(e.children[0].rotation.z=Math.PI/2,n.children[0].rotation.z=Math.PI/2,i.rotationOrientationAdjustment=1)},e.prototype.addClipBoxToPointCloud=function(){var t=this.getBoxFrame();if(t){t.updateWorldMatrix(!0,!1);var e={matrix:t.matrixWorld,inverse:(new a.Matrix4).getInverse(t.matrixWorld),box:void 0,position:void 0};this.params.pointCloudLayer.setClipBoxes([e])}},e.prototype.removeClipBoxes=function(){this.params.pointCloudLayer.setClipBoxes([])},e.prototype.hasTheClippingVolumeChanged=function(){var t=this.volume.quaternion.x!==this.quaternionBackup.x||this.volume.quaternion.y!==this.quaternionBackup.y||this.volume.quaternion.z!==this.quaternionBackup.z||this.volume.quaternion.w!==this.quaternionBackup.w||this.volume.position.x!==this.positionBackup.x||this.volume.position.y!==this.positionBackup.y||this.volume.position.z!==this.positionBackup.z;return t&&(this.positionBackup=this.volume.position.clone(),this.quaternionBackup=this.volume.quaternion.clone()),t},e.prototype.recenterCamera=function(){var t=this,n=this.view.getDefaultViewport().cameraController;if(n instanceof b.OrbitCameraController){var i=new h.Tween(n.target).to({x:this.volume.position.x,y:this.volume.position.y,z:this.volume.position.z},e.CAMERA_MOVE_DURATION).easing(function(t){return h.Easing.Sinusoidal.InOut(t)}).onComplete(function(){return t.view.forgetTween(i)}).start();if(this.view.watchTween(i),this.view instanceof f.MainView&&this.view.viewMode===g.SceneViewMode.Map){var r=this.view.getMapLayer(),o=new h.Tween(r.targetViewport.camera.position).to({x:this.volume.position.x,y:this.volume.position.y},e.CAMERA_MOVE_DURATION).easing(function(t){return h.Easing.Sinusoidal.InOut(t)}).onComplete(function(){return t.view.forgetTween(o)}).start();this.view.watchTween(o)}}},e.prototype.visibilityChanged=function(){var t=this;this.visible&&this.reinitObjectsVisibility(),setTimeout(function(){t.updateHotkeys()})},e.prototype.updateHotkeys=function(){this.visible?this.factory.hotkeys.add({combo:["esc"],description:this.factory.gettext("Cancel drag"),callback:function(){}}):this.factory.hotkeys.del(["esc"])},e.prototype.resetCube=function(){var t=new a.Vector3(l.ClipVolume.VOLUME_START_SCALE_X,l.ClipVolume.VOLUME_START_SCALE_Y,l.ClipVolume.VOLUME_START_SCALE_Z),e=new a.Quaternion;this.volume.quaternion.set(e.x,e.y,e.z,e.w),this.setVolumePositionAndScale(new a.Vector3(0,0,0),t)},e.CAMERA_MOVE_DURATION=500,e.AXIS_PIXEL_SIZE=190,e.CIRCLES_PIXEL_SIZE=15,e.ROTATION_CIRCLE_PIXEL_SIZE=35,e.ROTATION_CIRCLE_DISTANCE_PIXEL_SIZE=e.ROTATION_CIRCLE_PIXEL_SIZE*w.RotationCircle.EDGE_TO_CIRCLE_RATIO,e}(o.SceneLayer);e.VolumeClippingLayer=E;var C=function(t){function e(e,n,i,r){var o=t.call(this)||this;return o.DownloadPointCloudService=e,o.hotkeys=n,o.gettext=i,o.FloorChangerService=r,o}return r(e,t),e.prototype.create=function(t,e,n){return new E(t,e,n,this)},e.ɵfac=function(t){return new(t||e)(S.ɵɵinject(x.DownloadPointCloudService),S.ɵɵinject("hotkeys"),S.ɵɵinject("gettext"),S.ɵɵinject(M.FloorChangerService))},e.ɵprov=S.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(o.SceneLayerFactory);e.VolumeClippingLayerFactory=C,S.ɵsetClassMetadata(C,[{type:u.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:x.DownloadPointCloudService},{type:void 0,decorators:[{type:u.Inject,args:["hotkeys"]}]},{type:void 0,decorators:[{type:u.Inject,args:["gettext"]}]},{type:M.FloorChangerService}]},null),s.module("IVWebApp").service("VolumeClippingLayerFactory",c.downgradeInjectable(C))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(323),a=n(4),s=n(184),c=function(t){function e(e,n,i,r,o){var s=t.call(this,e,i,r)||this;return s.direction=n,s.mapViewMode=o,s.rotationOrientationAdjustment=-1,s.center=new a.Vector3(0,0,0),s}return r(e,t),e.prototype.onDragStart=function(t,e){var n;this.axisLine=this.findAxisLine(this.direction.clone()),s.HighlightableObject3D.isUsedInMapViewMode(e)?n=this.view.getPositionOnGroundPlane(t.x,t.y,void 0,e):(this.planeOnTheAxis=this.findPlaneOnTheAxis(e.getCamera().position,this.axisLine),n=o.DraggableObject3D.getMousePositionOnPlane(t,this.planeOnTheAxis,e)),n&&(this.centerToStartDraggingPosition=this.getDistanceFromCenter(n),this.parentInitialQuaternion=this.parent.quaternion.clone())},e.prototype.onDrag=function(t,e){var n=s.HighlightableObject3D.isUsedInMapViewMode(e)?this.view.getPositionOnGroundPlane(t.x,t.y,void 0,e):o.DraggableObject3D.getMousePositionOnPlane(t,this.planeOnTheAxis,e);if(n){var i=this.getDistanceFromCenter(n),r=this.getOrientatedAngle(e,i);this.rotateParentCube(r),this.view.invalidateScene()}},e.prototype.onDragCancel=function(){this.unsetRotateCursor(),this.parent.quaternion.copy(this.parentInitialQuaternion),this.parent.updateMatrixWorld(!0),this.view.invalidateScene()},e.prototype.onDragEnd=function(){this.unsetRotateCursor()},e.prototype.onMouseOver=function(){this.mapViewMode&&!s.HighlightableObject3D.isDragging&&this.setRotateCursor()},e.prototype.onMouseOut=function(){s.HighlightableObject3D.isDragging||this.unsetRotateCursor()},e.prototype.setRotateCursor=function(){var t=this.view.divContainer.container;t.classList.contains("rotate-cursor")||t.classList.add("rotate-cursor")},e.prototype.unsetRotateCursor=function(){var t=this.view.divContainer.container;t&&t.classList.remove("rotate-cursor")},e.prototype.getDistanceFromCenter=function(t){this.center.set(0,0,0);var e=this.center.applyMatrix4(this.parent.matrixWorld);return t.clone().sub(e)},e.prototype.getOrientatedAngle=function(t,e){var n,i;return s.HighlightableObject3D.isUsedInMapViewMode(t)?(n=Math.atan2(this.centerToStartDraggingPosition.clone().cross(e).dot(this.direction),this.centerToStartDraggingPosition.clone().setZ(0).dot(e.setZ(0))),i=-1):(n=this.centerToStartDraggingPosition.angleTo(e),i=Math.sign(this.centerToStartDraggingPosition.clone().cross(e).dot(this.distanceToCameraFromAxisLine.clone()))),n*i*this.rotationOrientationAdjustment},e.prototype.rotateParentCube=function(t){this.parent.quaternion.copy(this.parentInitialQuaternion),this.parent.rotateOnAxis(this.direction,t)},e}(o.DraggableObject3D);e.RotationObject=c},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(4),a=n(184),s=n(101),c=function(t){function e(n,i,r,a,s){var c=t.call(this,n,i,a,s,!0)||this;return c.circleGeometry=new o.CircleGeometry(e.RADIUS,16),c.circleOutlineGeometry=new o.CircleGeometry(e.RADIUS+.02,32),c.circlePickGeometry=new o.CircleGeometry(e.RADIUS+.1,8),c.edgeGeometry=new o.CylinderGeometry(e.EDGE_WIDTH,e.EDGE_WIDTH,e.EDGE_LENGTH),c.createObject(r),c.createObjectOutline(),c.createPickObject(),c.createEdge(r),c}return r(e,t),e.prototype.createObject=function(t){var e=this,i=new o.MeshBasicMaterial({map:s.getTextureLoader().load(n(1222),function(){return e.view.invalidateScene()}),opacity:a.HighlightableObject3D.NON_HIGHLIGHTED_OPACITY,transparent:!0});this.object=new o.Mesh(this.circleGeometry,i),this.object.renderOrder=1,this.add(this.object)},e.prototype.createObjectOutline=function(){var t=new o.MeshBasicMaterial({color:a.HighlightableObject3D.OUTLINE_COLOR,opacity:a.HighlightableObject3D.NON_HIGHLIGHTED_OPACITY,transparent:!0});this.objectOutline=new o.Mesh(this.circleOutlineGeometry,t),this.objectOutline.renderOrder=0,this.object.add(this.objectOutline)},e.prototype.createPickObject=function(){var t=new o.MeshBasicMaterial({visible:!1});this.pickObject=new o.Mesh(this.circlePickGeometry,t),this.object.add(this.pickObject)},e.prototype.createEdge=function(t){var n=new o.MeshBasicMaterial({color:t,opacity:a.HighlightableObject3D.NON_HIGHLIGHTED_OPACITY,transparent:!0}),i=new o.Mesh(this.edgeGeometry,n);i.name=e.EDGE_NAME,i.position.y=-e.RADIUS-e.EDGE_LENGTH/2,this.object.add(i)},e.EDGE_TO_CIRCLE_RATIO=1.25,e.RADIUS=.3,e.EDGE_LENGTH=e.RADIUS*e.EDGE_TO_CIRCLE_RATIO,e.EDGE_WIDTH=.01,e.EDGE_NAME="edge",e}(n(572).RotationObject);e.RotationCircle=c},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},a=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var s=n(80),c=n(0),l=n(4),u=n(2),d=n(6),p=n(171),h=n(85),f=(n(91),n(52)),g=n(563),m=n(8),v=n(137),y=(n(41),n(121),n(1228)),b=(n(24),n(14),n(17),n(253)),w=n(7),S=(n(130),n(28),n(21),n(1229)),x=n(1230),M=n(543),E=n(540),C=n(542),A=n(643),T=(n(259),n(22),n(644)),O=n(645),_=n(627),P=n(628),I=(n(447),n(146)),k=(n(27),n(387)),D=n(0),R=n(171),L=n(91),N=n(41),j=n(24),V=n(14),F=n(17),U=n(28),B=n(121),z=n(21),G=n(130),H=n(259),W=n(27),q=n(22),K=n(447),X=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i)||this;return o.factory=r,o.topViewPlane=new l.Plane(new l.Vector3(0,0,1),-p.MeasurementsService.DEFAULT_MEASUREMENT_HEIGHT),o.overrideCursorMovement=!1,o.measurementGroup=new l.Group,o.isTransitioning=!1,o.initFields(),o.assignSignalCallbacks(),o.sceneGroup.add(o.measurementGroup),o}return r(e,t),e.prototype.initFields=function(){var t=this;this.sceneGroup.name="MeasurementsLayer",this.errorWrapper=this.factory.ErrorService.createDefaultWrapper(),this.onPointHover=function(e,n){return t.factory.MeasurementsService.onMeasurementPointHovered.emit(e,n)},this.onPointClick=function(e,n){return t.factory.MeasurementsService.onMeasurementPointClicked.emit(e,n)},this.onPointDragStart=function(e,n,i,r){return!t.isToolActive()&&!t.isMeasurementForbidden(i,n.parent)&&(t.draggedMeasurement=e,t.draggedPointInitCoords=n.position.clone(),t.dragMeasurementObjectStart(e,n,i,r),!0)},this.onPointDrag=function(e,n,i,r){t.draggedMeasurement===e&&t.dragMeasurementObject(e,n,i,r)},this.onPointDragEnd=function(e,n){t.draggedMeasurement===e&&(t.draggedPointInitCoords.equals(n.position)||(t.factory.TrackingService.trackPreDefinedEvent((new A.MeasurementModifiedEvent).withModification(A.ModificationType.POINT_CHANGED)),e.markDirty()),t.draggedMeasurement=void 0,t.draggedPointInitCoords=void 0,t.dragMeasurementObjectEnd(e,n))}},e.prototype.assignSignalCallbacks=function(){var t=this;this.trackSignal(this.factory.MeasurementsService.onMeasurementHovered).connect(function(){return t.updateMeasurementObjects()}),this.trackSignal(this.factory.MeasurementsService.onMeasurementPointClicked).connect(function(e,n){return t.doMeasurement(e,n,!0).catch(m.handleWarning)}),this.trackSignal(this.factory.MeasurementsService.onMeasurementPointHovered).connect(function(e,n){t.overrideCursorMovement=e,t.isToolActive()||(t.hoveredMeasurementObject=e?n.parent:void 0),e&&t.onCursorUpdate(n?n.position:void 0)}),this.trackSignal(this.factory.MeasurementsService.measurementToolSelectionChanged).connect(function(e){return t.onToolSelectionChanged(e)}),this.trackSignal(this.factory.MeasurementsService.measurementsUpdated).connect(function(e){t.factory.ModeService.isMeasurementsMode()&&t.updateObjects(e)}),this.trackSignal(this.factory.CursorService.cursorChanged).connect(function(){var e;if(!t.overrideCursorMovement&&t.factory.ModeService.isMeasurementsMode()&&t.visible){var n=null===(e=t.factory.CursorService.getCursorData())||void 0===e?void 0:e.location;t.onCursorUpdate(n)}}),this.trackSignal(this.factory.UnitService.unitChanged).connect(function(){t.visible&&t.updateObjects(!0)}),this.trackSignal(this.factory.ViewService.mainView.screenshotModeToggled).connect(function(e){var n;e&&t.visible?(t.measurementGroup.children.length=0,(n=t.measurementGroup).add.apply(n,t.factory.MeasurementsService.measurements.map(function(t){return t.object}))):t.updateMeasurementObjects()})},e.prototype.updateObjects=function(t){t&&(this.measurementGroup.children=[],this.factory.MeasurementsService.measurements.forEach(function(t){return t.disposeObject()})),this.updateMeasurementObjects()},e.prototype.onToolSelectionChanged=function(t){this.factory.ModeService.isMeasurementsMode()&&(this.removeTemporaryMeasurement(),document.body.style.cursor="auto",void 0===t?this.factory.CursorService.setCursorStyle(g.CursorStyle.DISK):(this.factory.MeasurementsService.measurements.forEach(function(t){return t.object.markNotFresh()}),this.factory.CursorService.setCursorStyle(g.CursorStyle.CROSS)),this.currentTool=t,this.updateMeasurementObjects())},e.prototype.isToolActive=function(){return void 0!==this.factory.MeasurementsService.currentMeasurementMode},e.prototype.onBeforeRenderViewport=function(e){this.visible&&(t.prototype.onBeforeRenderViewport.call(this,e),this.measurementGroup.visible=!this.isTransitioning||e.name!==f.SplitViewportName.DEFAULT_VIEW||this.factory.PointCloudMenuService.isCloudVisible(),this.factory.MeasurementsService.measurements.forEach(function(t){t.updateOrientationForViewport(e),t.updateScaleForViewport(e)}),this.temporaryMeasurement&&(this.temporaryMeasurement.updateOrientationForViewport(e),this.temporaryMeasurement.updateMeshScaleForViewport(e)),this.updateMeasurementsVisibility(),this.measurementGroup.updateWorldMatrix(!1,!0))},e.prototype.updateMeasurementObjects=function(){var t,e;if(this.visible&&!this.factory.ViewService.mainView.isInScreenshotMode()){var n=this.factory.MeasurementsService,i=n.measurements.filter(function(t){return t.object&&t.visible}).map(function(t){return t.object});this.temporaryMeasurement&&i.push(this.temporaryMeasurement);var r=this.measurementGroup.children.filter(function(t){return t instanceof v.MeasurementObject3D}),o=w.xor(r,i),a=w.intersection(o,r);0!==a.length&&(t=this.measurementGroup).remove.apply(t,a);var s=w.intersection(o,i);0!==s.length&&(e=this.measurementGroup).add.apply(e,s);var c=n.measurements.filter(function(t){return!t.object});this.createAndAddMeasurements(c),this.setUpVisibleObject3DMouseListeners(),this.view.invalidateScene()}},e.prototype.createAndAddMeasurements=function(t){for(var e=this,n=this.factory.MeasurementsService,i=this.factory.TrackingService,r=function(t){t.createObject(),t.isSaved()&&t.object.markNotFresh(),t.object.setMouseEventCallbacks(o.onPointHover,o.onPointClick,o.onPointDragStart,o.onPointDrag,o.onPointDragEnd,function(){return n.setMeasurementHovered(t,!t.isHovered)}),t.object.onDeleteButtonClicked=function(){return n.deleteMeasurements([t]).then(function(){return i.trackPreDefinedEvent((new T.MeasurementsDeletedEvent).numberOfMeasurements(1).interactionArea(P.InteractionArea.MeasurementLabel))}).catch(m.handleWarning)},t.object.onHideButtonClicked=function(){return n.toggleVisibility([t]),i.trackPreDefinedEvent((new O.MeasurementsHiddenEvent).numberOfMeasurements(1).interactionArea(P.InteractionArea.MeasurementLabel)),Promise.resolve()},t.object.onSaveButtonClicked=function(){return n.saveMeasurements([t]).then(function(){return i.trackPreDefinedEvent((new _.MeasurementsSavedEvent).numberOfMeasurements(1).interactionArea(P.InteractionArea.MeasurementLabel))}).catch(m.handleWarning)},t.object.canUserSaveMeasurements=function(){return e.factory.UserService.canSaveMeasurements()},o.measurementGroup.add(t.object)},o=this,a=0,s=t;a<s.length;a++)r(s[a])},e.prototype.setUpVisibleObject3DMouseListeners=function(){for(var t=this.factory.MeasurementsService,e=t.measurements.filter(function(t){return t.object&&t.visible}),n=function(e){e.object.cleanUpMouseListeners(),e.isHovered&&t.measurements.forEach(function(t){e!==t&&t.object.markNotFresh()}),i.isToolActive()?e.object.setUpPointsMouseListeners():(e.object.setHovered(e.isHovered),e.object.setUpMouseListeners(e))},i=this,r=0,o=e;r<o.length;r++)n(o[r])},e.prototype.updateMeasurementsVisibility=function(){if(!this.factory.ViewService.mainView.isInScreenshotMode()){var t=this.factory.SiteModelRepository.data.length>0,e=this.factory.FloorChangerService.currentFloors;this.factory.MeasurementsService.measurements.forEach(function(n){n.object&&(n.object.visible=n.visible&&(!t||n.isMeasurementVisibleInFloors(e)))})}},e.prototype.onTransitionStart=function(t){this.isTransitioning=t.previousImage!==t.image},e.prototype.onTransitionEnd=function(t){this.isTransitioning=!1},e.prototype.onMouseMove=function(t){this.factory.ModeService.isMeasurementsMode()&&(this.updateCursorOnMouseMove(t),this.updateCursorService(t),this.isMeasurementAllowed=this.isToolActive()&&this.factory.MeasurementsService.lastMeasurementPoint()&&!this.isMeasurementForbidden(t))},e.prototype.onCursorUpdate=function(t){this.isMeasurementAllowed&&(this.temporaryMeasurement.putPointer(t),this.view.invalidateScene())},e.prototype.onClick=function(e,n){return this.visible&&this.factory.ModeService.isMeasurementsMode()?(this.handleMeasurementsClick(e,n).catch(m.handleWarning),t.prototype.onClick.call(this,e,n)):t.prototype.onClick.call(this,e,n)},e.prototype.handleMeasurementsClick=function(t,e){return o(this,void 0,void 0,function(){return a(this,function(n){if(!e)throw Error("Cursor Position is undefined.");return[2,this.doMeasurement(e,t,!1)]})})},e.prototype.visibilityChanged=function(){var t=this;this.visible?(this.updateMeasurementObjects(),this.view.invalidateScene()):(this.factory.CursorService.planeLock=void 0,this.measurementGroup.children.length=0,this.factory.MeasurementsService.measurements.forEach(function(t){return t.disposeObject()})),setTimeout(function(){t.updateHotkeys()})},e.prototype.pointOfView=function(){var t=this.factory.ViewService.mainView;return new b.PointOfView(this.factory.GeoTransformationService.vectorToGlobal(t.getCamera().position),void 0,void 0,t.getImage()&&t.getImage().isAtPosition(t.getCamera().position)?t.getImage().id:void 0)},e.prototype.removeTemporaryMeasurement=function(){this.temporaryMeasurement&&(this.measurementGroup.remove(this.temporaryMeasurement),this.temporaryMeasurement.dispose(),this.temporaryMeasurement=void 0)},e.prototype.updateCursorOnMouseMove=function(t){this.isMeasurementForbidden(t,this.hoveredMeasurementObject)?document.body.style.cursor!==k.MouseCursorStyle.NOT_ALLOWED&&(this.prevCursor=document.body.style.cursor,this.updateMouseCursorStyle(k.MouseCursorStyle.NOT_ALLOWED)):document.body.style.cursor===k.MouseCursorStyle.NOT_ALLOWED&&this.updateMouseCursorStyle(this.prevCursor)},e.prototype.updateMouseCursorStyle=function(t){document.body.style.cursor=t},e.prototype.isMeasurementForbidden=function(t,e){var n=this.factory.MeasurementsService.currentMeasurementMode,i=this.isTopView(this.view.getViewport(t.x,t.y));return n?h.ToolSpec.of(n).vertical&&i:(e instanceof M.VerticalDistanceMeasurementObject3D||e instanceof E.VerticalAreaMeasurementObject3D||e instanceof C.VerticalRectangleMeasurementObject3D)&&i},e.prototype.doMeasurement=function(t,e,n){return o(this,void 0,void 0,function(){var i,r;return a(this,function(o){switch(o.label){case 0:return i=this.factory.MeasurementsService,this.factory.ModeService.isMeasurementsMode()&&this.isToolActive()&&!this.isMeasurementForbidden(e)?(r=this.view.getViewport(e.x,e.y),[4,this.errorWrapper.wrap(i.addLastMeasurementPoint(t,r,n).catch(m.handleWarning))]):[2];case 1:return o.sent(),this.temporaryMeasurement?(this.factory.TrackingService.trackPreDefinedEvent((new x.PointAddedToMeasurementEvent).withMagnifyingGlass(this.factory.MagnificationService.isEnabled).withTool(i.currentMeasurementMode).withPointEnteredIn(r.name).withNumberOfPointInMeasurement(this.temporaryMeasurement.numberOfPoints+1)),this.temporaryMeasurement.addPoint(i.lastMeasurementPoint(),this.isTopView(r)?void 0:this.pointOfView()),this.view.invalidateScene(),[2]):(this.temporaryMeasurement=this.createMeasurementObject3D(),this.temporaryMeasurement.setMouseEventCallbacks(this.onPointHover,this.onPointClick,function(){return!1},function(){},function(){},function(){}),this.measurementGroup.add(this.temporaryMeasurement),this.factory.TrackingService.trackPreDefinedEvent((new S.MeasurementStartedEvent).pointEnteredIn(r.name).withTool(i.currentMeasurementMode).withMagnifyingGlass(this.factory.MagnificationService.isEnabled)),this.view.invalidateScene(),[2])}})})},e.prototype.dragMeasurementObjectStart=function(t,e,n,i){this.factory.CursorService.setCursorStyle(g.CursorStyle.CROSS),this.dragStartView=this.view.getViewport(n.x,n.y),this.updateMouseCursorStyle(k.MouseCursorStyle.AUTO),t.object.dragObjectStart(e)},e.prototype.dragMeasurementObject=function(t,e,n,i){var r=this;this.dragStartView.name===this.view.getViewport(n.x,n.y).name?this.factory.CursorService.getCoordinatesForScreenPosition(this.view,n).then(function(n){var o=r.isTopView(i),a=new l.Vector3(n.x,n.y,o?e.position.z:n.z),s=t.object.dragObject(e,a,o);r.updateMouseCursorStyle(s?k.MouseCursorStyle.AUTO:k.MouseCursorStyle.NOT_ALLOWED),t.updateFromObject(),r.view.invalidateScene()}).catch(m.handleWarning):this.updateMouseCursorStyle(k.MouseCursorStyle.NOT_ALLOWED)},e.prototype.dragMeasurementObjectEnd=function(t,e){this.updateMouseCursorStyle(k.MouseCursorStyle.AUTO),t.object.dragObjectEnd(e),t.updateFromObject(),this.factory.CursorService.setCursorStyle(g.CursorStyle.DISK),this.view.invalidateScene()},e.prototype.createMeasurementObject3D=function(){var t=this,e=this.factory.MeasurementsService;return new(0,h.ToolSpec.of(e.currentMeasurementMode).initializer)(e.lastMeasurementPoint(),this.factory.UoMService,function(n){e.endMeasurement(n),t.removeTemporaryMeasurement()})},e.prototype.updateCursorService=function(t){var e=this.factory.MeasurementsService,n=this.factory.CursorService;if(this.isTopView(this.view.getViewport(t.x,t.y))){n.planeLock=this.topViewPlane;var i=e.lastMeasurementPoint();n.planeLock.constant=i?-i.z:-p.MeasurementsService.DEFAULT_MEASUREMENT_HEIGHT}else n.planeLock=void 0},e.prototype.updateHotkeys=function(){var t=this,e=new y.HotKeyConfiguration(this.factory.MeasurementToolChanger,this);this.visible?e.keyBindings.forEach(function(e){return t.factory.hotkeys.add(e)}):e.keyBindings.forEach(function(e){return t.factory.hotkeys.del(e.combo)})},e.prototype.removeMostRecentPoint=function(){return this.factory.TrackingService.trackPreDefinedEvent((new x.PointRemovedFromMeasurementEvent).withTool(this.currentTool)),this.temporaryMeasurement.undoPoint()},e.prototype.cancelCurrentMeasurement=function(){return this.draggedMeasurement?(this.draggedMeasurement.object.dragObjectCancel(),this.dragMeasurementObjectEnd(this.draggedMeasurement,void 0),this.draggedMeasurement=void 0,this.draggedPointInitCoords=void 0,!1):!!this.temporaryMeasurement&&(this.removeTemporaryMeasurement(),this.factory.MeasurementsService.removeCurrentMeasurement(),this.view.invalidateScene(),!0)},e.prototype.completeCurrentAreaMeasurement=function(){return this.temporaryMeasurement instanceof I.AreaMeasurementObject3D&&this.temporaryMeasurement.finishCreation()},e.prototype.isTopView=function(t){return t.name===f.SplitViewportName.TOP_VIEW},e}(s.SceneLayer);e.MeasurementsLayer=X;var Y=function(t){function e(e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m){var v=t.call(this)||this;return v.MeasurementsService=e,v.CursorService=n,v.ErrorService=i,v.ModeService=r,v.GeoTransformationService=o,v.ViewService=a,v.FloorChangerService=s,v.MagnificationService=c,v.TrackingService=l,v.UoMService=u,v.UnitService=d,v.UserService=p,v.SiteModelRepository=h,v.MeasurementToolChanger=f,v.hotkeys=g,v.PointCloudMenuService=m,v}return r(e,t),e.prototype.create=function(t,e,n){return new X(t,e,n,this)},e.ɵfac=function(t){return new(t||e)(D.ɵɵinject(R.MeasurementsService),D.ɵɵinject(L.CursorService),D.ɵɵinject(N.ErrorService),D.ɵɵinject(j.ModeService),D.ɵɵinject(V.GeoTransformationService),D.ɵɵinject(F.ViewService),D.ɵɵinject(U.FloorChangerService),D.ɵɵinject(B.MagnificationService),D.ɵɵinject(z.TrackingService),D.ɵɵinject(G.UoMService),D.ɵɵinject(H.UnitService),D.ɵɵinject(W.UserService),D.ɵɵinject(q.SiteModelRepository),D.ɵɵinject(K.MeasurementToolChanger),D.ɵɵinject("hotkeys"),D.ɵɵinject("PointCloudMenuService"))},e.ɵprov=D.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(s.SceneLayerFactory);e.MeasurementsLayerFactory=Y,D.ɵsetClassMetadata(Y,[{type:c.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:R.MeasurementsService},{type:L.CursorService},{type:N.ErrorService},{type:j.ModeService},{type:V.GeoTransformationService},{type:F.ViewService},{type:U.FloorChangerService},{type:B.MagnificationService},{type:z.TrackingService},{type:G.UoMService},{type:H.UnitService},{type:W.UserService},{type:q.SiteModelRepository},{type:K.MeasurementToolChanger},{type:void 0,decorators:[{type:c.Inject,args:["hotkeys"]}]},{type:void 0,decorators:[{type:c.Inject,args:["PointCloudMenuService"]}]}]},null),u.module("IVWebApp").service("MeasurementsLayerFactory",d.downgradeInjectable(Y))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(453),a=n(217),s=n(85),c=function(t){function e(e,n,i,r,o){var a=t.call(this,e,n,i,r)||this;return a.object=n,a.startPoint=n.getStartPoint(),a.endPoint=n.getEndPoint(),o&&2===o.length&&(a.globalStartPoint=o[0],a.globalEndpoint=o[1]),a.value=a.length(),a.disposeObject(),a}return r(e,t),Object.defineProperty(e.prototype,"nameIfEmpty",{get:function(){return e.DEFAULT_NAME},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"globalEndpoint",{get:function(){return this._globalEndpoint?this._globalEndpoint:this.injectables.TransformService.localToGlobal.transform(this.endPoint.clone())},set:function(t){this._globalEndpoint=t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"globalStartPoint",{get:function(){return this._globalStartPoint?this._globalStartPoint:this.injectables.TransformService.localToGlobal.transform(this.startPoint.clone())},set:function(t){this._globalStartPoint=t},enumerable:!0,configurable:!0}),e.prototype.onReferenceSystemChangedEvent=function(){this.startPoint=this.injectables.TransformService.globalToLocal.transform(this.globalStartPoint.clone()),this.endPoint=this.injectables.TransformService.globalToLocal.transform(this.globalEndpoint.clone())},e.prototype.onBeforeReferenceSystemChangedEvent=function(){this._globalStartPoint||(this._globalStartPoint=this.injectables.TransformService.localToGlobal.transform(this.startPoint.clone())),this._globalEndpoint||(this._globalEndpoint=this.injectables.TransformService.localToGlobal.transform(this.endPoint.clone()))},e.prototype.updateFromObject=function(){this.startPoint=this.object.getStartPoint(),this.endPoint=this.object.getEndPoint(),this.globalStartPoint=this.injectables.TransformService.localToGlobal.transform(this.startPoint.clone()),this.globalEndpoint=this.injectables.TransformService.localToGlobal.transform(this.endPoint.clone()),this.value=this.length()},e.prototype.disposeObject=function(){this.object&&(this.object.dispose(),this.object=void 0)},e.prototype.createObject=function(){if(!this.object){var t=new(0,s.ToolSpec.of(this.type).initializer)(this.startPoint,this.UoMService);t instanceof a.DistanceMeasurementObject3D&&(this.object=t,this.object.addPoint(this.endPoint)),this.object.measurement=this}},e.prototype.getPoints=function(){return[this.startPoint,this.endPoint]},e.prototype.getGlobalPoints=function(){return[this.globalStartPoint,this.globalEndpoint]},e.prototype.copy=function(e,n,i){return t.prototype.fill.call(this,e,n,i),this.startPoint=e.startPoint.clone(),this.endPoint=e.endPoint.clone(),this},e.prototype.length=function(){if(this.globalStartPoint&&this.globalEndpoint){var t=this.injectables.TransformService.getTemporaryTransform(this.globalStartPoint.x,this.globalStartPoint.y),e=t.transform(this.globalStartPoint.clone()),n=t.transform(this.globalEndpoint.clone());return e.distanceTo(n)}},e.DEFAULT_NAME="Distance",e}(o.Measurement);e.DistanceMeasurement=c},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(453),a=n(4),s=n(146),c=n(85),l=n(258),u=function(t){function e(e,n,i,r,o){var a=t.call(this,e,n,i,r)||this;return a.points=a.object.getPointsPositions(),o&&o.length>2&&(a.globalPoints=o),a.value=a.area(),a.disposeObject(),a}return r(e,t),Object.defineProperty(e.prototype,"nameIfEmpty",{get:function(){return e.DEFAULT_NAME},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"globalPoints",{get:function(){var t=this;return this._globalPoints?this._globalPoints:this.points.map(function(e){return t.injectables.TransformService.localToGlobal.transform(e.clone())})},set:function(t){this._globalPoints=t},enumerable:!0,configurable:!0}),e.prototype.onReferenceSystemChangedEvent=function(){var t=this;this.points=this.globalPoints.map(function(e){return t.injectables.TransformService.globalToLocal.transform(e.clone())})},e.prototype.onBeforeReferenceSystemChangedEvent=function(){var t=this;this._globalPoints||(this._globalPoints=this.points.map(function(e){return t.injectables.TransformService.localToGlobal.transform(e.clone())}))},e.prototype.updateFromObject=function(){var t=this;this.points=this.object.getPointsPositions(),this.globalPoints=this.points.map(function(e){return t.injectables.TransformService.localToGlobal.transform(e.clone())}),this.value=this.area()},e.prototype.disposeObject=function(){this.object&&(this.object.dispose(),this.object=void 0)},e.prototype.createObject=function(){if(!this.object){var t=new(0,c.ToolSpec.of(this.type).initializer)(this.points,this.UoMService);t instanceof s.AreaMeasurementObject3D&&(this.object=t),this.object.measurement=this}},e.prototype.getPoints=function(){return this.points},e.prototype.getGlobalPoints=function(){return this.globalPoints},e.prototype.copy=function(e,n,i){return t.prototype.fill.call(this,e,n,i),this.points=e.points.map(function(t){return t.clone()}),this},e.prototype.area=function(){if(!(this.globalPoints.length<3)){var t=this.injectables.TransformService.getTemporaryTransform(this.globalPoints[0].x,this.globalPoints[0].y),e=this.globalPoints.map(function(e){return t.transform(e.clone())}),n=l.rotateToHorizontalPlane(e).points,i=a.ShapeUtils.area(n);return Math.abs(i)}},e.DEFAULT_NAME="Area",e}(o.Measurement);e.AreaMeasurement=u},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.elapsedTime=function(t){return this.withData("elapsedTime",t),this},e}(n(64).TrackingEvent);e.ScreenshotRenderingEvent=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(64),a=n(85),s=function(t){function e(){return t.call(this,"MeasurementToolChanged")||this}return r(e,t),e.prototype.withTool=function(t){return this.withData("tool",a.Tool[t]),this},e.prototype.withStatus=function(t){return this.withData("status",t?"selected":"deselected"),this},e.prototype.withEventSource=function(t){return this.withData("eventSource",t),this},e}(o.TrackingEvent);e.MeasurementToolChangedEvent=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__spreadArrays||function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var i=Array(t),r=0;for(e=0;e<n;e++)for(var o=arguments[e],a=0,s=o.length;a<s;a++,r++)i[r]=o[a];return i};Object.defineProperty(e,"__esModule",{value:!0});var a=n(80),s=n(0),c=n(4),l=(n(91),n(121),n(41),n(2)),u=n(6),d=(n(31),n(101)),p=n(67),h=(n(139),n(1231)),f=n(311),g=n(8),m=n(0),v=n(121),y=n(91),b=n(41),w=n(31),S=n(139),x=function(t){function e(e,n,i){var r=t.call(this,e,n)||this;return r.factory=i,r.tempPosition=new c.Vector3,r.tempPosition2=new c.Vector3,r.sceneChildren=[],r.MAGNIFIER_SIZE=200,r.MAGNIFICATION_CROSSHAIR_RENDER_ORDER=f.RenderOrder.MAGNIFICATION_CROSSHAIR,r.MAGNIFICATION_MESH_RENDER_ORDER=f.RenderOrder.MAGNIFICATION,r.MESH_JUMP_DISTANCE=300,r.POINT_MESH_DISTANCE=200,r.MAGNIFICATION_CAMERA_FAR=1.9,r.MAGNIFICATION_CAMERA_NEAR=.01,r.CIRCLE_SEGMENTS=32,r.CIRCLE_RADIUS=.5,r.MAX_LOD=8,r.MAGNIFICATION_CAMERA_DEFAULT_DISTANCE=.7,r.EMPTY_SCENE=[],r.HIGHLIGHT_COLOR=new c.Vector4(1,0,0,.6),r.sceneGroup.name="MagnificationLayer",r.setupMagnificationCameraAndMeshes(),r.loadMagnificationCrossHairTexture(),r.addSignalHandlers(),r.sceneChildren=[r.magnifier,r.magnifierCrossHair],r}return r(e,t),e.prototype.onBeforeRenderViewport=function(t){var e=this;if(this.shouldRenderForViewport(t)){this.updateMagnificationCameraFOV(),this.adjustMagnificationTexturePosition(this.lastCursorData),this.sceneGroup.children=this.sceneChildren;var n=this.getDatasetsWithSceneNodes(),i=n.map(function(t){return t.pointCloudSceneNode}),r=n.find(function(t){return t.id===e.lastCursorData.datasetId});this.pointCloudOnlyScene.children=o(i),this.renderMagnificationRenderTarget(r),p.setMeshScreenSize(t,this.magnifier,this.MAGNIFIER_SIZE),p.setMeshScreenSize(t,this.magnifierCrossHair,this.MAGNIFIER_SIZE)}else this.sceneGroup.children=this.EMPTY_SCENE},e.prototype.onMouseMove=function(e){t.prototype.onMouseMove.call(this,e),this.mouseInDefaultViewport=this.view.getDefaultViewport().contains(e.x,e.y)},e.prototype.renderMagnificationRenderTarget=function(t){this.view.renderer.setRenderTarget(this.magnificationRenderTarget),this.factory.MagnificationService.updatePointCloudsForMagnification.emit(),this.view.renderer.clear(),this.saveMaterialBlendingAndTransparency(t),this.updateMaterialsForMagnificationRender(t,c.NormalBlending,!0,!0),this.view.twoPassRenderer?this.view.twoPassRenderer.render(this.pointCloudOnlyScene,this.magnificationCamera):this.view.renderer.render(this.pointCloudOnlyScene,this.magnificationCamera),this.restoreMaterialsForMainRender(t),this.view.renderStats.update(this.view.renderer),this.view.renderer.setRenderTarget(null)},e.prototype.updateMagnificationCameraFOV=function(){var t=this.view.getCamera();t instanceof c.PerspectiveCamera&&this.magnificationCamera.fov!==t.fov&&(this.magnificationCamera.fov=t.fov/2,this.magnificationCamera.updateProjectionMatrix(),this.factory.MagnificationService.updateRayCastingCameraFrustumAndPosition())},e.prototype.updateMagnificationCamera=function(t){for(var e=t.location,n=0,i=this.getDatasetsWithSceneNodes();n<i.length;n++){var r=i[n];r.pointCloudSceneNode.pointCloudObject&&r.pointCloudSceneNode.pointCloudObject.perspectiveMaterial.highlightedPointCoordinate.copy(e)}this.tempPosition.copy(e);var o=this.tempPosition.sub(this.view.getCamera().position).normalize(),a=this.tempPosition2.copy(e),s=this.view.getCamera().position.distanceTo(e),c=s>1?this.MAGNIFICATION_CAMERA_DEFAULT_DISTANCE:s/2;this.magnificationCamera.position.copy(a.sub(o.multiplyScalar(c))),this.magnificationCamera.updateWorldMatrix(!1,!1),this.magnificationCamera.lookAt(e)},e.prototype.loadMagnificationCrossHairTexture=function(){var t=this;d.getTextureLoader().load(n(1232),function(e){t.magnifierCrossHair.material.map=e,t.magnifierCrossHair.material.needsUpdate=!0,t.view.invalidateScene()},void 0,function(t){return g.handleWarning(t.message)})},e.prototype.setupMagnificationCameraAndMeshes=function(){this.magnificationCamera=new c.PerspectiveCamera(0,1,this.MAGNIFICATION_CAMERA_NEAR,this.MAGNIFICATION_CAMERA_FAR),this.magnificationCamera.up=new c.Vector3(0,0,1),this.magnificationRenderTarget=new c.WebGLRenderTarget(this.MAGNIFIER_SIZE,this.MAGNIFIER_SIZE),this.pointCloudOnlyScene=new c.Scene,this.factory.MagnificationService.magnificationViewport.cameraController=new h.NoOpCameraController(this.factory.MagnificationService.magnificationViewport,this.magnificationCamera),e.CIRCLE_MATERIAL.map=this.magnificationRenderTarget.texture,e.CIRCLE_MATERIAL.needsUpdate=!0;var t=new c.CircleGeometry(this.CIRCLE_RADIUS,this.CIRCLE_SEGMENTS);this.magnifier=new c.Mesh(t,e.CIRCLE_MATERIAL),this.magnifierCrossHair=new c.Mesh(t,new c.MeshBasicMaterial({color:new c.Color(16777215),depthTest:!1,depthWrite:!1,transparent:!0})),this.magnifier.up=new c.Vector3(0,0,1),this.magnifierCrossHair.up=new c.Vector3(0,0,1),this.magnifier.renderOrder=this.MAGNIFICATION_MESH_RENDER_ORDER,this.magnifierCrossHair.renderOrder=this.MAGNIFICATION_CROSSHAIR_RENDER_ORDER},e.prototype.addSignalHandlers=function(){var t=this;this.trackSignal(this.factory.CursorService.cursorChanged).connect(function(){t.factory.MagnificationService.isEnabled&&(t.lastCursorData=t.factory.CursorService.getCursorData(),t.enablePointCloudsIfNotEnabled(t.lastCursorData),t.factory.MagnificationService.updateRayCastingCameraFrustumAndPosition(),t.updateMagnificationCamera(t.lastCursorData),t.enablePointHighlighting(t.lastCursorData),t.view.invalidateScene())}),this.trackSignal(this.factory.MagnificationService.magnificationModeChanged).connect(function(e){e?t.setupMagnificationMode():t.cleanUpMagnificationMode()})},e.prototype.setupMagnificationMode=function(){this.sceneGroup.children=this.sceneChildren,this.pointCloudLOD=this.factory.PointCloudMenuService.config.maxDepth,this.factory.PointCloudMenuService.config.maxDepth=this.MAX_LOD},e.prototype.cleanUpMagnificationMode=function(){this.sceneGroup.children=this.EMPTY_SCENE,this.pointCloudOnlyScene.children=[],this.factory.PointCloudMenuService.config.maxDepth=this.pointCloudLOD;var t=this.getDatasetsWithSceneNodes().map(function(t){return t.pointCloudSceneNode});this.updatePickedPointHighlighting(t,!1),this.factory.PointCloudMenuService.config.showPointCloud||this.factory.PointCloudMenuService.configShowPointCloudChanged.emit(this.factory.PointCloudMenuService.config.showPointCloud)},e.prototype.enablePointHighlighting=function(t){var e=this.getDatasetsWithSceneNodes().filter(function(e){return e.id===t.datasetId}).map(function(t){return t.pointCloudSceneNode});this.updatePickedPointHighlighting(e,!0)},e.prototype.adjustMagnificationTexturePosition=function(t){var e=t.location;this.tempPosition.copy(e);var n=this.view.getDefaultViewport().projectScreenCoordinates(this.tempPosition);n.y-this.MESH_JUMP_DISTANCE>0?n.y=n.y-this.POINT_MESH_DISTANCE:n.y=n.y+this.POINT_MESH_DISTANCE,n.z=0;var i=this.view.getDefaultViewport().unprojectScreenCoordinates(n.x,n.y,n.z);this.magnifier.position.copy(e),this.magnifierCrossHair.position.copy(e),this.magnifierCrossHair.lookAt(this.view.getCamera().position),this.magnifier.lookAt(this.view.getCamera().position),this.magnifier.position.copy(i),this.magnifierCrossHair.position.copy(i)},e.prototype.updatePickedPointHighlighting=function(t,e){for(var n=0,i=t;n<i.length;n++){var r=i[n];r.pointCloudObject&&(r.pointCloudObject.perspectiveMaterial.highlightPoint=e,r.pointCloudObject.perspectiveMaterial.highlightedPointColor.copy(this.HIGHLIGHT_COLOR))}},e.prototype.getDatasetsWithSceneNodes=function(){return this.factory.DatasetRepository.data.filter(function(t){return!!t.pointCloudSceneNode})},e.prototype.enablePointCloudsIfNotEnabled=function(t){for(var e=0,n=this.factory.DatasetRepository.data.filter(function(e){return e.id===t.datasetId});e<n.length;e++){var i=n[e];i.pointCloudVisible||(i.pointCloudVisible=!0)}},e.prototype.updateMaterialsForMagnificationRender=function(t,e,n,i){if(t&&t.pointCloudSceneNode&&t.pointCloudSceneNode.pointCloudObject){var r=t.pointCloudSceneNode;this.view.twoPassRenderer||(r.pointCloudObject.perspectiveMaterial.blending=e,r.pointCloudObject.perspectiveMaterial.transparent=n),r.pointCloudObject.perspectiveMaterial.enablePointHighlighting=i}},e.prototype.saveMaterialBlendingAndTransparency=function(t){if(t&&t.pointCloudSceneNode&&t.pointCloudSceneNode.pointCloudObject){var e=t.pointCloudSceneNode.pointCloudObject;this.currentBlending=e.perspectiveMaterial.blending,this.currentTransparency=e.perspectiveMaterial.transparent}},e.prototype.restoreMaterialsForMainRender=function(t){if(t&&t.pointCloudSceneNode&&t.pointCloudSceneNode.pointCloudObject){var e=t.pointCloudSceneNode;e.pointCloudObject.perspectiveMaterial.blending=this.currentBlending,e.pointCloudObject.perspectiveMaterial.transparent=this.currentTransparency,e.pointCloudObject.perspectiveMaterial.enablePointHighlighting=!1}},e.prototype.shouldRenderForViewport=function(t){return this.visible&&this.factory.MagnificationService.isEnabled&&this.mouseInDefaultViewport&&this.lastCursorData&&this.lastCursorData.datasetId&&t.camera instanceof c.PerspectiveCamera},e.CIRCLE_MATERIAL=new c.MeshBasicMaterial({color:new c.Color(16777215),opacity:1,depthTest:!1,depthWrite:!1,transparent:!0}),e}(a.SceneLayer);e.MagnificationLayer=x;var M=function(t){function e(e,n,i,r,o,a){var s=t.call(this)||this;return s.MagnificationService=e,s.CursorService=n,s.ErrorService=i,s.DatasetRepository=r,s.RaycastService=o,s.PointCloudMenuService=a,s}return r(e,t),e.prototype.create=function(t,e){return new x(t,e,this)},e.ɵfac=function(t){return new(t||e)(m.ɵɵinject(v.MagnificationService),m.ɵɵinject(y.CursorService),m.ɵɵinject(b.ErrorService),m.ɵɵinject(w.DatasetRepository),m.ɵɵinject(S.RaycastService),m.ɵɵinject("PointCloudMenuService"))},e.ɵprov=m.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(a.SceneLayerFactory);e.MagnificationLayerFactory=M,m.ɵsetClassMetadata(M,[{type:s.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:v.MagnificationService},{type:y.CursorService},{type:b.ErrorService},{type:w.DatasetRepository},{type:S.RaycastService},{type:void 0,decorators:[{type:s.Inject,args:["PointCloudMenuService"]}]}]},null),l.module("IVWebApp").service("MagnificationLayerFactory",u.downgradeInjectable(M))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(198),a=n(7),s=function(){function t(){this.features=0,this.vertices=0}return t.prototype.copy=function(t){this.features=t.features,this.vertices=t.vertices},t}();e.VectorMapStats=s;var c=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.vectorLayers=[],e.stats=new s,e.selected=!1,e.expanded=!1,e.editing=!1,e.manualVisibility=!1,e}return r(e,t),e.prototype.copy=function(e,n){return void 0===n&&(n=!1),t.prototype.fill.call(this,e),this.name=e.name,this.zMin=e.zMin,this.zMax=e.zMax,this.vectorLayers=a.clone(e.vectorLayers),n||(this.stats.copy(e.stats),this.selected=e.selected,this.expanded=e.expanded,this.editing=e.editing),this},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.name=e.name,this.zMin=e.z_min,this.zMax=e.z_max},e.prototype.toData=function(){var e={};return t.prototype.fillDto.call(this,e),e.name=this.name,e.z_min=this.zMin,e.z_max=this.zMax,e},e}(o.SecureRepositoryObject);e.VectorMapEntity=c},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(70),a=(n(9),n(1233)),s=n(2),c=n(6),l=n(0),u=n(0),d=n(9),p=function(t){function e(e){var n=t.call(this,a.VectorLayerEntity,e)||this;return n.RestService=e,n.path="vector_layers",n}return r(e,t),e.ɵfac=function(t){return new(t||e)(u.ɵɵinject(d.RestService))},e.ɵprov=u.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(o.RestRepository);e.VectorLayerRepository=p,u.ɵsetClassMetadata(p,[{type:l.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:d.RestService}]},null),s.module("IVWebApp").service("VectorLayerRepository",c.downgradeInjectable(p))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(6),o=n(0),a=n(4),s=n(25),c=n(52),l=(n(201),n(17),n(15),n(423)),u=n(403),d=n(20),p=n(0),h=n(17),f=n(15),g=n(201),m=function(){function t(t,e,n){this.ViewService=t,this.ConfigService=e,this.LocationMarkerLayerFactory=n}return t.prototype.addExtraLocationMarkerLayer=function(){this.locationMarkerLayer||(this.locationMarkerLayer=this.createExtraLocationMarkerLayer(),this.ViewService.mainView.addToScene(this.locationMarkerLayer),this.loadLocationMarkersImmediately())},t.prototype.removeExtraLocationMarkerLayer=function(){this.locationMarkerLayer&&(this.ViewService.mainView.removeFromScene(this.locationMarkerLayer),this.locationMarkerLayer.onDestroy(),this.locationMarkerLayer=void 0)},t.prototype.createExtraLocationMarkerLayer=function(){var t=this.ViewService.mainView,e=this.LocationMarkerLayerFactory.create(t,t.overlayScene,{circleSegments:l.MapView.CIRCLE_SEGMENTS,hideMarkersTimeout:l.MapView.HIDE_MARKERS_TIMEOUT,markerColor:new a.Color(this.ConfigService.getInteger(s.Configs.CORE_MAP_MARKER_COLOR,16777215)),markerOpacity:l.MapView.MARKER_OPACITY,locationMarkerPng:n(325),locationMarkerHighlightPng:n(325),markerHighlightOpacity:l.MapView.MARKER_HIGHLIGHT_OPACITY,markerBlending:this.ConfigService.getInteger(s.Configs.CORE_MAP_MARKER_BLENDING,a.NormalBlending),isMoveMouseToShowEnabled:function(){return!0},isVisibilityToggleEnabled:function(){return!1},isClickToShowEnabled:function(){return!0},isSwappingViewsEnabled:function(){return!1},viewportEventMask:d.buildHashMap([[c.SplitViewportName.DEFAULT_VIEW,[u.EventType.MOUSE_MOVE,u.EventType.CLICK]]])});return e.targetViewport=t.getViewportByName(c.SplitViewportName.TOP_VIEW),e},t.prototype.loadLocationMarkersImmediately=function(){var t=this,e=this.ViewService.onTransitionEnd.connect(function(){t.locationMarkerLayer.onCameraMoveEnd(Promise.reject("hack")),e.disconnect()})},t.MEASUREMENT_MODE_CONFIG_STORAGE_KEY="measurementModeConfig",t.ɵfac=function(e){return new(e||t)(p.ɵɵinject(h.ViewService),p.ɵɵinject(f.ConfigService),p.ɵɵinject(g.LocationMarkerLayerFactory))},t.ɵprov=p.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.MeasurementModeService=m,p.ɵsetClassMetadata(m,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:h.ViewService},{type:f.ConfigService},{type:g.LocationMarkerLayerFactory}]},null),i.module("IVWebApp").service("MeasurementModeService",r.downgradeInjectable(m))},function(t,e,n){t.exports=n.p+"3e431823cfdc005a6f586ce9ac2c1f2b.ic_close_sideMenu.svg"},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(40),r=function(){function t(t){this.$element=t,t.children(".vertical-menu").on("scroll",function(t){t.target.scrollLeft=0})}return Object.defineProperty(t.prototype,"displayStickyHeaders",{get:function(){return!i.isPlatform(i.Platform.IOS)},enumerable:!0,configurable:!0}),t}();e.VerticalMenuController=r},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(80),a=n(4),s=n(2),c=n(6),l=n(0),u=(n(140),n(322)),d=n(124),p=n(423),h=n(264),f=n(0),g=n(140),m=function(t){function e(e,n,i,r){var o=t.call(this,e,n)||this;return o.view=e,o.factory=r,o.CUBE_Z_INDEX_ON_MAP=1e3,o.currentTween=void 0,o.addCubeVolumeToScene(),o.trackSignal(o.factory.DownloadPointCloudService.onVolumeChange).connect(function(t){o.updateCubeVolumePositionOnMap(t),o.recenterMapOnCubePosition()}),o.visible=i.visible,o}return r(e,t),e.prototype.recenterMapOnCubePosition=function(){var t=this;this.view.getDefaultViewport().cameraController instanceof h.PanningCameraController&&this.view instanceof p.MapView&&(this.currentTween&&(this.currentTween.stop(),this.view.forgetTween(this.currentTween)),this.currentTween=new d.Tween(this.view.getCamera().position).to({x:this.cubeSelection.position.x,y:this.cubeSelection.position.y},e.CAMERA_MOVE_DURATION).easing(function(t){return d.Easing.Sinusoidal.InOut(t)}).onComplete(function(){t.view.forgetTween(t.currentTween),t.currentTween=void 0}).start(),this.view.watchTween(this.currentTween))},e.prototype.updateCubeVolumePositionOnMap=function(t){var e=t.getObjectByName(u.ClipVolume.BOX_NAME);this.cubeSelection.scale.copy(e.scale),this.cubeSelection.quaternion.copy(t.quaternion),this.cubeSelection.position.copy(t.position),this.cubeSelection.position.z=this.CUBE_Z_INDEX_ON_MAP,this.view.invalidateScene()},e.prototype.addCubeVolumeToScene=function(){var t=new a.BoxGeometry(1,1,1),n=new a.MeshBasicMaterial({color:e.COLOR_BLUE,transparent:!0,opacity:.5});this.cubeSelection=new a.Mesh(t,n),this.sceneGroup.add(this.cubeSelection),this.visible=!0},e.COLOR_BLUE=new a.Color(3381704),e.CAMERA_MOVE_DURATION=500,e}(o.SceneLayer);e.VolumeClippingMapLayer=m;var v=function(t){function e(e){var n=t.call(this)||this;return n.DownloadPointCloudService=e,n}return r(e,t),e.prototype.create=function(t,e,n){return new m(t,e,n,this)},e.ɵfac=function(t){return new(t||e)(f.ɵɵinject(g.DownloadPointCloudService))},e.ɵprov=f.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(o.SceneLayerFactory);e.VolumeClippingMapLayerFactory=v,f.ɵsetClassMetadata(v,[{type:l.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:g.DownloadPointCloudService}]},null),s.module("IVWebApp").service("VolumeClippingLayerFactory",c.downgradeInjectable(v))},function(t,e,n){var i=n(11),r=n(1259);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(1270);var i=function(){function t(){}return t.prototype.createView=function(t){try{this.view=this.create(t),this.deferred&&this.deferred.resolve(this.view)}catch(t){console.error("Cannot create view: "+t.message,t),this.deferred&&this.deferred.reject(t)}},t}();e.ViewComponent=i;var r=function(){function t(){this.restrict="E",this.controllerAs="vm",this.scope=!0,this.bindToController={deferred:"="}}return t.prototype.link=function(t,e,n,i,r){e.addClass("iv-view"),i.createView(e[0])},t}();e.ViewDirective=r},function(t,e,n){t.exports=n.p+"8cb759d0cce1070852cf832cca6738f8.navvis_logo_black.svg"},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(t,e,n,i,r,o,a,s){void 0===a&&(a=[]),void 0===s&&(s=!0),this.title=t,this.icon=e,this.template=i,this.getClass=r,this.onClick=o,this.items=a,this.compileTemplate=s}return Object.defineProperty(t.prototype,"isVisible",{get:function(){var t=this;return function(){return t._isVisible()&&(!!t.template||!!t.onClick||void 0!==t.items&&t.items.some(function(t){return t.isVisible()}))}},set:function(t){this._isVisible=t},enumerable:!0,configurable:!0}),t}();e.MenuItem=i},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(7),o=function(){function e(){this.restrict="E"}return e.factory=function(){return function(){return new e}},e.prototype.link=function(t,e,n){var i=this;this.buildElement(e,n),n.$observe("iconClass",function(){return i.buildElement(e,n)}),n.$observe("iconLigature",function(){return i.buildElement(e,n)}),n.$observe("iconPath",function(){return i.buildElement(e,n)})},e.prototype.buildElement=function(e,n){var i=t(document.createElement("i"));r.forIn(n,function(t,e){if(!e.startsWith("$")){var r=n.$attr[e];i.attr(r,t)}}),n.iconClass&&i.addClass(n.iconClass),n.iconLigature&&i.text(n.iconLigature),n.iconPath&&i.css("background","url("+n.iconPath+") no-repeat center"),e.empty().append(i)},e}();e.IconDirective=o,i.module("IVWebApp").directive("icon",o.factory())}).call(this,n(19))},function(t,e,n){t.exports=n.p+"606a77b9d6426329b81015af4b45f29a.ic_share_blue.svg"},function(t,e,n){t.exports=n.p+"77cb7d1ad94c7c7caad89b9503345a92.ic_pc_blue.svg"},function(t,e,n){t.exports=n.p+"ec16ee612335d8901c6527564b6f564d.ic_edit_blue.svg"},function(t,e,n){t.exports=n.p+"65e22ac2d38885a923e35844f4cd014d.ic_walk_blue.svg"},function(t,e){var n="I18N/TranslationEditor.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="form-group form-group-translations">\n\t<label class="control-label col-xs-12 {{ \'col-sm-\' + vm.COL_SPAN }}"\n\t translate>Language</label>\n\n\t\x3c!-- used languages --\x3e\n\t<ul class="nav nav-pills nav-pills-used-langs col-xs-6 {{ \'col-sm-\' + (8 - vm.COL_SPAN) }}"\n\t role="tablist">\n\t\t<li role="presentation"\n\t\t ng-repeat="language in vm.getUsedLanguages() | orderBy: \'key\'"\n\t\t ng-class="vm.getClass(language)"\n\t\t ng-click="vm.select(language)">\n\t\t\t<a href aria-controls="{{language.key}}"\n\t\t\t role="tab" data-toggle="tab"\n\t\t\t title="{{language.name}}">\n\t\t\t\t{{language.key.toUpperCase()}}\n\t\t\t</a>\n\t\t</li>\n\t</ul>\n\n\t<ul class="dropdown nav nav-pills nav-pills-lang-controls col-xs-6 col-sm-4">\n\t\t\x3c!-- remove an active language --\x3e\n\t\t<button type="button" class="btn btn-danger"\n\t\t ng-disabled="!vm.canRemove()"\n\t\t ng-click="vm.remove()"\n\t\t title="{{\'Delete selected language\' | translate}}">\n\t\t\t<span class="glyphicon glyphicon-trash"></span>\n\t\t</button>\n\n\t\t\x3c!-- add a new language dropdown --\x3e\n\t\t<button type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"\n\t\t class="btn btn-default" ng-click="vm.add()" ng-disabled="!vm.canAdd()">\n\t\t\t<i class="fa fa-plus"></i> <span translate>Add language</span>\n\t\t</button>\n\n\t\t\x3c!-- search input background --\x3e\n\t\t<div class="dropdown-menu"></div>\n\n\t\t\x3c!-- search language input --\x3e\n\t\t<input ng-show="vm.dropdownOpened" class="dropdown-menu"\n\t\t ng-model="vm.query"\n\t\t placeholder="{{\'Find a language\' | translate}}"\n\t\t ng-click="$event.stopPropagation()" init-focus keep-focus>\n\n\t\t\x3c!-- list of the unused languages --\x3e\n\t\t<ul class="dropdown-menu" role="menu" aria-labelledby="add-language-button">\n\t\t\t<li ng-repeat="language in vm.allDataLanguages | orderBy: \'key\' | filter: {name: vm.query} : false"\n\t\t\t ng-click=\'vm.create(language)\'>\n\t\t\t\t<a href>{{language.name}}</a>\n\t\t\t</li>\n\t\t</ul>\n\t</ul>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1338);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1340),n(1341),n(598),n(1343),n(599);var r=n(40),o=n(89),a=n(180),s=n(25),c=n(153),l=n(136),u=n(20),d=n(16),p=n(8),h=n(57),f=n(428),g=n(92),m=n(321),v=n(316),y=function(){function e(t,e,n,i,a,s,l,u,h,f,g,m,v){var y=this;this.ConfigService=t,this.LicenseService=e,this.ViewMenuService=n,this.UserService=i,this.IV=a,this.PoiService=s,this.SiteModelService=l,this.SiteModelRepository=u,this.PoiRepository=h,this.SearchService=f,this.$timeout=g,this.UnitService=m,this.ViewService=v,this.isMobileLayout=r.isMobileLayout,this.resultsList=this.SearchService.resultsList,this.MeasurementDomain=c.MeasurementDomain,this.clearPaging=new d.Signal,this.allPoisFetched=!1,this.promiseWrapper=new o.PromiseProgressWrapper,this.contentExpanded=!1,g(function(){s.onPoiOpen.connect(function(){return y.SiteModelService.deselectModel()}),s.onPoiClose.connect(function(){return y.SiteModelService.resetPreviouslySelectedModel()})}).catch(p.handleWarning)}return e.$inject=["ConfigService","LicenseService","ViewMenuService","UserService","IV","PoiService","SiteModelService","SiteModelRepository","PoiRepository","SearchService","$timeout","UnitService","ViewService"],Object.defineProperty(e.prototype,"model",{get:function(){return this._model},set:function(t){this._model=t,this.clearPois(),this._model&&this.fetchPage()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"currentUoMSystem",{get:function(){return this.UnitService.currentSystem},enumerable:!0,configurable:!0}),e.prototype.isSharingEnabled=function(){return this.ConfigService.getBoolean(s.Configs.POI_SHARE_ENABLED,!0)},e.prototype.isRoutingEnabled=function(){return this.LicenseService.isFeatureEnabled(g.LicenseFeatureType.ROUTING)&&this.ConfigService.getBoolean(s.Configs.ROUTING_ENABLED,!1)},e.prototype.arePanoramasEnabled=function(){return this.ViewMenuService.config.showPanoramas},e.prototype.isEntityEditable=function(){return this.UserService.canEditSiteModelAttributes()},e.prototype.isFullscreenEnabled=function(){return this.ConfigService.getBoolean(s.Configs.POI_FULLSCREEN,!1)},e.prototype.isTopFloatingPanel=function(){return!this.isFullscreenEnabled()&&!this.PoiService.isRouteMode&&!this.SearchService.isSearchBoxVisible()},e.prototype.isEntityOpenedFromResultList=function(){return this.model&&this.resultsList.selectedResult&&this.resultsList.selectedResult instanceof f.SiteModelSearchEntity&&this.resultsList.selectedResult.id===this.model.id},e.prototype.hasContent=function(t){return this.hasDimensions(t)||this.hasAttributes(t)||this.pois.length>0},e.prototype.hasDimensions=function(t){return this.UserService.canViewSiteModelAttributes()&&!t.dimensionsChanged},e.prototype.hasAttributes=function(t){return(this.UserService.canEditSiteModelAttributes()||this.UserService.canViewSiteModelAttributes())&&Object.keys(t.attributes).length>0},e.prototype.canToggleContentExpansion=function(t){return r.isMobileLayout()&&this.hasContent(t)&&!this.isFullscreenEnabled()},e.prototype.toggleExpandedContent=function(){this.contentExpanded=!this.contentExpanded},e.prototype.isContentExpanded=function(t){return!!this.isFullscreenEnabled()||!!this.hasContent(t)&&(!r.isMobileLayout()||this.contentExpanded)},e.prototype.canSwapViews=function(){return this.ViewService.canSwapViews()},e.prototype.canJumpToMainView=function(){return r.isMobileLayout()&&this.canSwapViews()&&this.isMapMain()},e.prototype.canJumpToMapView=function(){return r.isMobileLayout()&&this.canSwapViews()&&!this.isMapMain()},e.prototype.isMapMain=function(){return this.ViewService.isMapPrimaryView()},e.prototype.goToEntity=function(t){this.IV.moveToSiteModelEntity(t,!0).catch(p.handleWarning)},e.prototype.swapViews=function(){this.ViewService.swapViews()},e.prototype.editEntity=function(){t("#editEntityFromDetails").modal()},e.prototype.routeToEntity=function(t){this.SiteModelService.routeToEntity(t,v.RoutePoint.END)},e.prototype.goToPoi=function(t){this.SiteModelService.previouslySelectedModel=this.SiteModelService.selectedModel,this.PoiService.clickPoi(t,m.PoiClickOrigin.SITE_MODEL_DETAILS)},e.prototype.closeResult=function(){this.SearchService.closeResult(!0,a.SearchResultType.SITE_MODEL)},e.prototype.saveSitemodel=function(){!this.UserService.isAdmin()&&this.UserService.userInfo.checkAttribute(h.GroupAttributes.CAN_EDIT_SITE_MODEL_ATTRIBUTES)?this.promiseWrapper.wrap(this.SiteModelRepository.updateAttributes(this.SiteModelRepository.data)).catch(function(){}):this.promiseWrapper.wrap(this.SiteModelRepository.save(this.SiteModelRepository.data)).catch(function(){})},e.prototype.exportSiteModel=function(t,e){this.SiteModelRepository.exportSiteModel(t,e)},e.prototype.areAllPagesFetched=function(){return this.allPoisFetched},e.prototype.fetchPage=function(t){var n=this;void 0===t&&(t=0),this.PoiRepository.filter((new l.PoiRestFilterBuilder).siteModel([this._model]).limit(e.POIS_PER_PAGE).offset(t*e.POIS_PER_PAGE).build()).then(function(t){n.pois=n.pois.concat(t),n.allPoisFetched=t.length<e.POIS_PER_PAGE,u.invalidateAngular()}).catch(p.handleWarning)},e.prototype.clearPois=function(){this.pois=[],this.allPoisFetched=!1,this.clearPaging.emit()},e.POIS_PER_PAGE=30,e}();e.SiteModelDetailsController=y;var b=function(){function t(){this.restrict="E",this.templateUrl="SiteModelUI/SiteModelDetails.html",this.controller=y,this.controllerAs="vm",this.scope=!0,this.bindToController={model:"="}}return t.factory=function(){return function(){return new t}},t}();e.SiteModelDetailsDirective=b,i.module("IVWebApp").directive("siteModelDetails",b.factory())}).call(this,n(19))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(130);var r=function(){function t(){}return t.filter=["UoMService",function(t){var e=t.scopedConvert;return e.$stateful=!0,e}],t}();i.module("IVWebApp").filter("uom",r.filter)},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1344),n(1345);var r=n(180),o=function(){function t(t,e){this.SearchService=t,this.SiteModelService=e}return t.$inject=["SearchService","SiteModelService"],Object.defineProperty(t.prototype,"entity",{get:function(){return this._entity},set:function(t){this._entity=t,this.siteData=this.SiteModelService.getSiteModelData(t)},enumerable:!0,configurable:!0}),t.prototype.showEntity=function(t){return t&&t.name&&t.name.length>0&&(!this.skipEntity||t!==this.entity)},t.prototype.selectModel=function(t){this.clickable&&(this.SearchService.closeResult(!1,r.SearchResultType.POI),this.SiteModelService.selectModel(t,!0))},t}();e.SiteDataController=o;var a=function(){function t(){this.controller=o,this.controllerAs="vm",this.restrict="E",this.templateUrl="SiteModelUI/SiteData.html",this.scope=!0,this.bindToController={entity:"=",clickable:"=?",skipEntity:"=?"}}return t.factory=function(){return function(){return new t}},t}();e.SiteDataDirective=a,i.module("IVWebApp").directive("siteData",a.factory())},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(70),s=n(428),c=(n(9),n(22),n(50),n(6)),l=n(0),u=n(0),d=n(9),p=n(22),h=n(50),f=function(t){function e(e,n,i){var r=t.call(this,s.SiteModelSearchEntity,e)||this;return r.RestService=e,r.SiteModelRepository=n,r.LanguageService=i,r.path="search/site_model",r}return r(e,t),e.prototype.search=function(t,e,n){var i=this;return this.RestService.getApi(this.path,{query:t,size:e,from:n,lang:this.LanguageService.getCurrentLanguage()},void 0,!1).then(function(t){for(var e=[],n=0,r=i.transformResponse(t);n<r.length;n++){var o=r[n],a=i.SiteModelRepository.dataMap[o.id];a&&(o.entity=a,o.title=a.label,e.push(o))}return e})},e.ɵfac=function(t){return new(t||e)(u.ɵɵinject(d.RestService),u.ɵɵinject(p.SiteModelRepository),u.ɵɵinject(h.LanguageService))},e.ɵprov=u.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(a.RestRepository);e.SiteModelSearchRepository=f,u.ɵsetClassMetadata(f,[{type:l.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:d.RestService},{type:p.SiteModelRepository},{type:h.LanguageService}]},null),o.module("IVWebApp").service("SiteModelSearchRepository",c.downgradeInjectable(f))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(586);var i=n(2),r=n(210),o=function(){function t(){this.restrict="A",this.scope={loadingIndicator:"=loadingIndicator"}}return t.factory=function(){return function(){return new t}},t.prototype.link=function(t,e,i){var o,a=parseInt(i.loadingIndicatorDelay,10)||0,s=document.createElement("img");s.src=r.makeUrlAbsolute(n(94)),s.classList.add("loading-indicator"),e.parent().append(s),t.$watch("loadingIndicator",function(t){t?o=window.setTimeout(function(){s.classList.remove("hide"),e.addClass("loading-indicator-shown")},a):(s.classList.add("hide"),e.removeClass("loading-indicator-shown"),o&&(window.clearTimeout(o),o=void 0))})},t}();e.LoadingIndicatorDirective=o,i.module("IVWebApp").directive("loadingIndicator",o.factory())},function(t,e,n){t.exports=n.p+"779c92686f7ce1a44c37d5bd94191f4b.ic_search_grey.svg"},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1364);var r=function(){function t(t){this.SearchService=t}return t.$inject=["SearchService"],Object.defineProperty(t.prototype,"resultsList",{get:function(){return this.SearchService.resultsList},enumerable:!0,configurable:!0}),t}();e.TypeaheadTemplatesComponent=r;var o=function(){function t(){this.restrict="E",this.templateUrl="SearchUI/TypeaheadTemplates.html",this.controller=r,this.controllerAs="vm",this.scope={}}return t.factory=function(){return function(){return new t}},t}();e.TypeaheadTemplatesDirective=o,i.module("IVWebApp").directive("typeaheadTemplates",o.factory())},function(t,e,n){t.exports=n.p+"ea1161a0e33d6133a32c4838dc059398.ic_panorama_grey.svg"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(70),s=n(57),c=(n(9),n(27),n(6)),l=n(0),u=n(0),d=n(9),p=n(27),h=function(t){function e(e,n){var i=t.call(this,s.GroupEntity,e)||this;return i.UserService=n,i.path="groups",i}return r(e,t),e.prototype.create=function(){var e=t.prototype.create.call(this);return e.fillCurrentUsersGroups(this.UserService),e},e.prototype.findByGroupIds=function(t){var e=this;return this.RestService.getApi(this.path,{groups:t.join()}).then(function(t){return e.transformResponse(t)})},e.ɵfac=function(t){return new(t||e)(u.ɵɵinject(d.RestService),u.ɵɵinject(p.UserService))},e.ɵprov=u.ɵɵdefineInjectable({token:e,factory:e.ɵfac,providedIn:"root"}),e}(a.RestRepository);e.GroupRepository=h,u.ɵsetClassMetadata(h,[{type:l.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:d.RestService},{type:p.UserService}]},null),o.module("IVWebApp").service("GroupRepository",c.downgradeInjectable(h))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(81);n(1407);var o=n(8),a=function(){function t(t,e){this.LicenseService=t,this.SidebarMenuService=e,this.LINK='<a class="alert-link" ng-click="vm.goToInstanceKeyPage()" translate translate-context="This string will be concatenated with another one, so needs to be left lowercase.">upgrade your plan</a>'}return t.$inject=["LicenseService","SidebarMenuService"],Object.defineProperty(t.prototype,"maxUsersWithgroups",{get:function(){return this.LicenseService.license.maxUsersWithGroups},enumerable:!0,configurable:!0}),t.prototype.isUserLimitReached=function(){return this.LicenseService.isLicenseRegisteredUsersReached()},t.prototype.isUserLimitMinusOneReached=function(){return this.LicenseService.isLicenseRegisteredUsersAvailable()&&this.LicenseService.license.currentUsersWithGroups===this.LicenseService.license.maxUsersWithGroups-1},t.prototype.goToInstanceKeyPage=function(){this.SidebarMenuService.isMenuHidden=!1,this.SidebarMenuService.goToItem(this.SidebarMenuService.getItem(r.SidebarMenuItemsKey.SETTINGS_SUBSCRIPTION)).catch(o.handleWarning)},t}();e.LicenseUserLimitWarningController=a;var s=function(){function t(){this.restrict="E",this.templateUrl="LicenseWarning/LicenseUserLimitWarning.html",this.controller=a,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.LicenseUserLimitWarningDirective=s,i.module("IVWebApp").directive("licenseUserLimitWarning",s.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1460),n(1461),n(266);var r=n(143),o=function(){function t(t,e,n){this.PointCloudMenuService=t,this.AlignmentHelperService=e,this.ViewService=n,this.pointCloudConfig=this.PointCloudMenuService.config,this.AlignmentHelperService.updateViewports()}return t.$inject=["PointCloudMenuService","AlignmentHelperService","ViewService"],Object.defineProperty(t.prototype,"helperDefault",{get:function(){return this.AlignmentHelperService.helperDefault},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"helperTV",{get:function(){return this.AlignmentHelperService.helperTV},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"helperSV1",{get:function(){return this.AlignmentHelperService.helperSV1},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"helperSV2",{get:function(){return this.AlignmentHelperService.helperSV2},enumerable:!0,configurable:!0}),t.prototype.alignmentHelperChanged=function(){this.ViewService.mainView.invalidateScene()},t.prototype.settingShowPanosInPerspectiveChangedCallback=function(){this.PointCloudMenuService.configShowPanosInPerspectiveChanged.emit(this.pointCloudConfig[r.PointCloudConfig.SHOW_PANOS_IN_PERSPECTIVE])},t}();e.AlignmentHelperController=o;var a=function(){function t(){this.restrict="E",this.templateUrl="Alignment/AlignmentHelper.html",this.controller=o,this.controllerAs="vmAlignmentHelper"}return t.factory=function(){return function(){return new t}},t}();e.AlignmentHelperDirective=a,i.module("IVWebApp").directive("alignmentHelper",a.factory())},function(t,e,n){var i="PoiTypeUI/PoiTypeEditor.html",r='\x3c!-- POI Type Editor --\x3e\n<div class="modal fade" id="PoiTypeEditor" tabindex="-1" role="dialog"\n aria-labelledby="PoiTypeEditor" aria-hidden="true" data-backdrop="static">\n\t<div class="modal-dialog">\n\t\t<div class="modal-content">\n\n\t\t\t<div class="modal-header">\n\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}"\n\t\t\t\t data-dismiss="modal">\n\n\t\t\t\t<h4 ng-if="!vm.model.id" translate translate-context="title">\n\t\t\t\t\tAdd a New Category\n\t\t\t\t</h4>\n\t\t\t\t<h4 ng-if="vm.model.id" translate translate-context="title">\n\t\t\t\t\tEdit Category\n\t\t\t\t</h4>\n\t\t\t</div>\n\n\t\t\t<div class="modal-body">\n\t\t\t\t<div class="form-horizontal">\n\n\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t\x3c!-- Type name --\x3e\n\t\t\t\t\t\t<label class="col-sm-4 control-label" for="PoiTypeGroupName" translate>\n\t\t\t\t\t\t\tCategory group\n\t\t\t\t\t\t</label>\n\t\t\t\t\t\t<div class="col-sm-8">\n\t\t\t\t\t\t\t<select id="PoiTypeGroupName"\n\t\t\t\t\t\t\t class="form-control"\n\t\t\t\t\t\t\t ng-model="vm.model.poiTypeGroup"\n\t\t\t\t\t\t\t ng-options="group as vm.localize(group.name) for group in vm.writablePoiTypeGroups"\n\t\t\t\t\t\t\t style="display:block; width:100%; margin-bottom:15px">\n\t\t\t\t\t\t\t</select>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t\x3c!-- Language --\x3e\n\t\t\t\t\t<translation-editor translations="vm.model.name"\n\t\t\t\t\t selected-language="selectedLanguage">\n\t\t\t\t\t</translation-editor>\n\n\t\t\t\t\t\x3c!-- Category name --\x3e\n\t\t\t\t\t<div class="form-group" ng-class="{\'has-error\': vm.isEmpty}">\n\t\t\t\t\t\t<label class="col-sm-4 control-label" translate>\n\t\t\t\t\t\t\tName\n\t\t\t\t\t\t</label>\n\t\t\t\t\t\t<div class="col-sm-8">\n\t\t\t\t\t\t\t<input type="text" class="form-control"\n\t\t\t\t\t\t\t ng-model="vm.model.name[selectedLanguage.key]"\n\t\t\t\t\t\t\t init-focus>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="form-group" ng-if="vm.isUploadAvailable()">\n\t\t\t\t\t\t<label class="col-sm-4 control-label"\n\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\tIcon\n\t\t\t\t\t\t</label>\n\t\t\t\t\t\t<div class="col-sm-8">\n\t\t\t\t\t\t\t<img class="poiIcon"\n\t\t\t\t\t\t\t style="display: inline-block"\n\t\t\t\t\t\t\t ng-if="!!vm.model.icon"\n\t\t\t\t\t\t\t ng-src="{{vm.model.icon}}">\n\t\t\t\t\t\t\t<input-button class="btn-file panel-control-button"\n\t\t\t\t\t\t\t in-progress="vm.isUploadInProgress()">\n\t\t\t\t\t\t\t\t<i class="fa fa-upload"></i>\n\t\t\t\t\t\t\t\t<span translate>Upload icon</span>\n\t\t\t\t\t\t\t\t<input type="file"\n\t\t\t\t\t\t\t\t accept="image/jpeg, image/gif, image/png"\n\t\t\t\t\t\t\t\t ngf-select="vm.uploadIcon($files, $event)"\n\t\t\t\t\t\t\t\t ng-disabled="vm.isUploadInProgress()">\n\t\t\t\t\t\t\t</input-button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t<label class="col-sm-4 control-label" for="PoiTypeVisibilityZoomMin"\n\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\tVisible from zoom\n\t\t\t\t\t\t</label>\n\t\t\t\t\t\t<div class="col-sm-8">\n\t\t\t\t\t\t\t<input id="PoiTypeVisibilityZoomMin"\n\t\t\t\t\t\t\t class="form-control"\n\t\t\t\t\t\t\t style="width: 90%; display: inline-block"\n\t\t\t\t\t\t\t type="number"\n\t\t\t\t\t\t\t min="0" max="100" step="any"\n\t\t\t\t\t\t\t ng-model="vm.model.visibilityZoomMin">\n\t\t\t\t\t\t\t<i class="fa fa-files-o"\n\t\t\t\t\t\t\t ng-click="vm.model.visibilityZoomMin = vm.zoomLevel"\n\t\t\t\t\t\t\t title="{{\'Copy current zoom\'|translate}}"\n\t\t\t\t\t\t\t style="margin-left: 5px; cursor: pointer"></i>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t<label class="col-sm-4 control-label" for="PoiTypeVisibilityZoomMax"\n\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\tVisible up to zoom\n\t\t\t\t\t\t</label>\n\t\t\t\t\t\t<div class="col-sm-8">\n\t\t\t\t\t\t\t<input id="PoiTypeVisibilityZoomMax"\n\t\t\t\t\t\t\t class="form-control"\n\t\t\t\t\t\t\t style="width: 90%; display: inline-block"\n\t\t\t\t\t\t\t type="number"\n\t\t\t\t\t\t\t min="0" max="100" step="any"\n\t\t\t\t\t\t\t ng-model="vm.model.visibilityZoomMax">\n\t\t\t\t\t\t\t<i class="fa fa-files-o"\n\t\t\t\t\t\t\t ng-click="vm.model.visibilityZoomMax = vm.zoomLevel"\n\t\t\t\t\t\t\t title="{{\'Copy current zoom\'|translate}}"\n\t\t\t\t\t\t\t style="margin-left: 5px; cursor: pointer"></i>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="form-group" ng-if="vm.model.id">\n\t\t\t\t\t\t<label class="col-sm-4 control-label" translate>\n\t\t\t\t\t\t\tId\n\t\t\t\t\t\t</label>\n\t\t\t\t\t\t<div class="col-sm-8 radio">\x3c!-- radio to get Bootstrap\'s top padding --\x3e\n\t\t\t\t\t\t\t{{vm.model.id}}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t<span class="text-danger" ng-show="vm.isEmpty" translate>\n\t\t\t\t\tName cannot be empty\n\t\t\t\t</span>\n\t\t\t\t<span class="text-danger" ng-if="vm.error">\n\t\t\t\t\t{{vm.error.text}}: {{vm.error.statusText}} ({{vm.error.status}})\n\t\t\t\t</span>\n\t\t\t\t<div ng-if="!!vm.error.details">\n\t\t\t\t\t{{vm.error.details}}\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class="modal-footer">\n\t\t\t\t<delete-confirmation class="float-left" ng-show="vm.model.id"\n\t\t\t\t ng-click="vm.countAssociatedPois()"\n\t\t\t\t on-confirm-callback="vm.remove()">\n\t\t\t\t\t<span translate>Are you sure you want to delete this category?</span>\n\t\t\t\t\t<span ng-if="vm.isCountInProgress()" translate\n\t\t\t\t\t translate-context="As in: counting the number of items">\n\t\t\t\t\t\tCounting...\n\t\t\t\t\t</span>\n\t\t\t\t\t<span ng-if="!vm.isCountInProgress()">\n\t\t\t\t\t\t<span translate translate-n="vm.associatedPoisCount"\n\t\t\t\t\t\t translate-plural="{{$count}} POIs associated with this category will also be deleted.">\n\t\t\t\t\t\t\t1 POI associated with this category will also be deleted.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</span>\n\t\t\t\t</delete-confirmation>\n\n\t\t\t\t<cancel-button data-dismiss="modal" ng-click="vm.cancel()"></cancel-button>\n\t\t\t\t<ok-button ng-disabled="vm.isUploadInProgress()" ng-click="vm.save()"></ok-button>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e){var n="PoiTypeUI/PoiTypeGroupList.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'\x3c!-- Modals --\x3e\n<modal>\n\t<poi-type-group-editor model="vm.typeGroupEditorModel"></poi-type-group-editor>\n</modal>\n<modal>\n\t<poi-type-editor model="vm.typeEditorModel"></poi-type-editor>\n</modal>\n\n\x3c!-- Panel --\x3e\n<div class="panel panel-default panel-sticky-header no-border no-shadow"\n ng-class="{\'panel-ios\':vm.isPlatformIos()}">\n\t\x3c!-- Heading --\x3e\n\t<div class="panel-heading">\n\t\t\x3c!-- Add a new POI Type Group --\x3e\n\t\t<span ng-if="vm.canCreateGroups"\n\t\t class="poi-group-add-btn fa fa-plus"\n\t\t ng-click="vm.edit()"\n\t\t title="{{\'Add a new category group\'|translate}}"\n\t\t data-toggle="modal" data-target="#PoiTypeGroupEditor"\n\t\t aria-hidden="true">\n\t\t</span>\n\t\t\x3c!--Select/hide all types--\x3e\n\t\t<div class="btn-group float-right">\n\t\t\t\x3c!--select all types i.e. render all POIs--\x3e\n\t\t\t<button title="{{\'Select all\'|translate}}" type="button" class="btn btn-default"\n\t\t\t ng-click="vm.showAll()">\n\t\t\t\t<span class="fa fa-check-square-o" aria-hidden="true"></span>\n\t\t\t</button>\n\n\t\t\t\x3c!--hide all types i.e. dont render any POIs--\x3e\n\t\t\t<button title="{{\'Deselect all\'|translate}}" type="button" class="btn btn-default"\n\t\t\t ng-click="vm.hideAll()">\n\t\t\t\t<span class="fa fa-square-o" aria-hidden="true"></span>\n\t\t\t</button>\n\t\t</div>\n\t</div>\n\n\t\x3c!-- Body --\x3e\n\t<div class="panel-body list-group poi-type-list">\n\t\t\x3c!-- List of all the POI Type Groups --\x3e\n\t\t<div class="list-group-item poi-group"\n\t\t data-ng-repeat="group in vm.typeGroups | orderBy: vm.getPoiTypeGroupName">\n\n\t\t\t<div class="list-group-item-heading">\n\t\t\t\t\x3c!--click to setup and open a modal for editing an existing group--\x3e\n\t\t\t\t<span ng-if="group.canWrite" title="{{\'Edit category group\'|translate}}"\n\t\t\t\t ng-click="vm.edit(group)"\n\t\t\t\t data-toggle="modal" data-target="#PoiTypeGroupEditor"\n\t\t\t\t class="poi-group-edit-btn fa fa-pencil" aria-hidden="true"></span>\n\n\t\t\t\t\x3c!--group name--\x3e\n\t\t\t\t<span class="long-title poi-type-group-title" title="{{vm.localize(group.name)}}">\n\t\t\t\t\t{{vm.localize(group.name)}}\n\t\t\t\t</span>\n\t\t\t</div>\n\n\t\t\t\x3c!-- Existing POI Group with its children types.\n\t\t\t Editing types and groups and selecting which to render in 3d scene --\x3e\n\t\t\t<poi-type-list group="group" editor-model="vm.typeEditorModel"></poi-type-list>\n\t\t</div>\n\t</div>\n\t<poi-export-import></poi-export-import>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.PRESERVE="preserve",t.UPDATE="update",t.ASSIGN_NEW="assign_new"}(e.PoiImportMode||(e.PoiImportMode={}))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(230);e.loadOpenLayersMap=function(){return new Promise(function(t,e){i.runWithBaseHref(function(){return Promise.all([n.e(13),n.e(11)]).then(function(){t(n(1684).OpenLayersMap)}.bind(null,n)).catch(e)})})}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),r=n(7),o=function(){function t(t,e,n,i,r,o,a,s,c){this.AlignmentManagerService=t,this.$scope=e,this.AlignmentService=n,this.DatasetRepository=i,this.ModeService=r,this.ViewService=o,this.gettextCatalog=a,this.gettext=s,this.hotkeys=c,(this.ModeService.isGeoRegistrationMode()||this.ModeService.isDatasetAlignmentMode())&&this.initHotkeys()}return t.prototype.initHotkeys=function(){var e=this;this.hotkeys.bindTo(this.$scope).add({combo:"8",description:this.gettext("Translate -x"),callback:function(){return e.AlignmentManagerService.translate(new i.Vector3(-t.TRANSLATE_DISTANCE,0,0))}}).add({combo:"2",description:this.gettext("Translate +x"),callback:function(){return e.AlignmentManagerService.translate(new i.Vector3(t.TRANSLATE_DISTANCE,0,0))}}).add({combo:"4",description:this.gettext("Translate -y"),callback:function(){return e.AlignmentManagerService.translate(new i.Vector3(0,-t.TRANSLATE_DISTANCE,0))}}).add({combo:"6",description:this.gettext("Translate +y"),callback:function(){return e.AlignmentManagerService.translate(new i.Vector3(0,t.TRANSLATE_DISTANCE,0))}}).add({combo:"+",description:this.gettext("Translate -z"),callback:function(){return e.AlignmentManagerService.translate(new i.Vector3(0,0,-t.TRANSLATE_DISTANCE))}}).add({combo:"-",description:this.gettext("Translate +z"),callback:function(){return e.AlignmentManagerService.translate(new i.Vector3(0,0,t.TRANSLATE_DISTANCE))}}).add({combo:"7",description:this.gettext("Rotate 10° counterclockwise"),callback:function(){return e.AlignmentManagerService.rotate(.174532925)}}).add({combo:"1",description:this.gettext("Rotate 0.1° counterclockwise"),callback:function(){return e.AlignmentManagerService.rotate(.00174532925)}}).add({combo:"3",description:this.gettext("Rotate 0.1° clockwise"),callback:function(){return e.AlignmentManagerService.rotate(-.00174532925)}}).add({combo:"9",description:this.gettext("Rotate 10° clockwise"),callback:function(){return e.AlignmentManagerService.rotate(-.174532925)}}).add({combo:["G","g"],description:this.gettext("Show hovered scene in fullscreen"),callback:function(){var t=e.ViewService.mainView.getLastMousePosition(),n=e.ViewService.mainView.getViewport(t.x,t.y);n&&e.ViewService.mainView.toggleViewportFullscreen(n)}})},t.prototype.toggleSelection=function(t){this.AlignmentService.toggleSelection(t)},t.prototype.zoomToDatasets=function(t){this.AlignmentService.zoomToDatasets(t)},t.prototype.selectDatasets=function(t){this.AlignmentService.selectAll(t)},t.prototype.deselectDatasets=function(t){this.AlignmentService.deselectAll(t)},t.prototype.areAllDatasetsSelected=function(t){return this.AlignmentService.areAllDatasetsSelected(t)},t.prototype.areNoDatasetsSelected=function(t){return this.AlignmentService.areNoDatasetsSelected(t)},t.prototype.isDatasetSelected=function(t){return this.AlignmentService.isDatasetSelected(t)},t.prototype.lockDatasets=function(t){for(var e=0,n=t;e<n.length;e++)n[e].locked=!0},t.prototype.unlockDatasets=function(t){for(var e=0,n=t;e<n.length;e++)n[e].locked=!1},t.prototype.areAllDatasetsLocked=function(t){return r.every(t,function(t){return t.locked})},t.prototype.setAsPrimary=function(t){this.AlignmentService.setAsPrimary(t)},t.prototype.toggleLock=function(t){t.locked=!t.locked},t.prototype.save=function(){return this.AlignmentManagerService.save()},t.prototype.isSavingInProgress=function(){return this.AlignmentManagerService.isSavingInProgress()},t.TRANSLATE_DISTANCE=.02,t}();e.AlignmentController=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=(n(106),n(4)),o=(n(9),n(188),n(107));n(188),n(155);var a=n(8),s=n(6),c=n(0),l=n(0),u=n(106),d=n(9),p=n(188),h=n(155);e.AutomaticAlignmentState=function(){this.verticalAlignment=!0,this.applied=!1,this.inProgress=!1};var f=function(){function t(t,e,n,i,r){this.ProgressReportService=t,this.gettextCatalog=e,this.RestService=n,this.JobService=i,this.DatasetAlignmentService=r}return t.prototype.fetch=function(t){var e=this.ProgressReportService.addTask(this.gettextCatalog.getString("Automatic alignment"),1,!1,!0,!1);return t.sourceBackupMatrix=t.source.m2w_.clone(),t.inProgress=!0,o.promiseFinally(this.align(t),function(){t.inProgress=!1,e.itemDone()})},t.prototype.apply=function(t){var e=new r.Matrix4;e.set.apply(e,t.result.transform),t.source.m2w_.multiplyMatrices(t.target.m2w_,e),t.applied=!0,this.afterSourceMatrixUpdate(t)},t.prototype.undo=function(t){t.source.m2w_.copy(t.sourceBackupMatrix),t.applied=!1,this.afterSourceMatrixUpdate(t)},t.prototype.afterSourceMatrixUpdate=function(t){t.source.m2wInv_.getInverse(t.source.m2w_),t.source.updateLocationsFromMatrix(),this.DatasetAlignmentService.updateImageCoordinates(t.source).catch(a.handleWarning),t.source.updatePose(),t.source.invalidate()},t.prototype.align=function(t){var e=this,n=Array.prototype.slice.call(this.getSourceInTargetWorld(t.source,t.target).elements),i={source_dataset_name:t.source.name,target_dataset_name:t.target.name,align_vertically:t.verticalAlignment,coarse_alignment:n};return this.JobService.makeJobPromise(this.RestService.postApi("pointcloud/auto_align",i)).then(function(n){return n.success?(t.result=e.extractConverged(n.output),t.result?e.apply(t):Promise.reject(n)):Promise.reject(n)})},t.prototype.extractConverged=function(e){var n=t.OUTPUT_REGEX.exec(e);if(n&&n[0])try{return JSON.parse(n[0])}catch(t){return}},t.prototype.getSourceInTargetWorld=function(t,e){var n=new r.Matrix4;return n.multiplyMatrices(e.m2wInv_,t.m2w_),n.transpose()},t.OUTPUT_REGEX=/^{.+}$/m,t.ɵfac=function(e){return new(e||t)(l.ɵɵinject(u.ProgressReportService),l.ɵɵinject("gettextCatalog"),l.ɵɵinject(d.RestService),l.ɵɵinject(p.JobService),l.ɵɵinject(h.DatasetAlignmentService))},t.ɵprov=l.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.AutomaticAlignmentService=f,l.ɵsetClassMetadata(f,[{type:c.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:u.ProgressReportService},{type:void 0,decorators:[{type:c.Inject,args:["gettextCatalog"]}]},{type:d.RestService},{type:p.JobService},{type:h.DatasetAlignmentService}]},null),i.module("IVWebApp").service("AutomaticAlignmentService",s.downgradeInjectable(f))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(7);n(1562),n(1563);var s=n(185),c=n(223),l=n(4),u=function(t){function e(e,n,i,r,o,a,s,c,l,u,d){var p=t.call(this,c,l,u,d)||this;return p.VectorMapService=e,p.FloorChangerService=n,p.GroupService=i,p.VectorEntityRepository=r,p.IV=o,p.ViewService=a,p.GeoTransformationService=s,p.vectorEntities=r.data,p}return r(e,t),e.$inject=["VectorMapService","FloorChangerService","GroupService","VectorEntityRepository","IV","ViewService","GeoTransformationService","VectorMapRepository","gettextCatalog","$element","ErrorService"],e.prototype.toggleMapSelection=function(t){if(!t.editing){t.selected=!t.selected;for(var e=0,n=t.vectorLayers;e<n.length;e++)n[e].selected=t.selected}},e.prototype.toggleLayerSelection=function(t){t.selected=!t.selected;for(var e=0,n=this.vectorMaps;e<n.length;e++)n[e].selected=!1},e.prototype.toggleMapExpansion=function(t){t.editing||(t.expanded=!t.expanded)},e.prototype.toggleLayerVisibility=function(t){t.visible=!t.visible,this.VectorMapService.updateVisibility()},e.prototype.startEditing=function(t){t.selected&&this.toggleMapSelection(t),t.expanded=!1,t.editing=!0,this.model=a.clone(t),this.model.security=a.cloneDeep(t.security)},e.prototype.acceptEditing=function(t){var e=this;this.save().then(function(){e.VectorMapService.updateZ(e.model),e.cancelEditing(t)}).catch(function(){})},e.prototype.cancelEditing=function(t){this.model=void 0,t.editing=!1},e.prototype.isAnyEditing=function(){return e.isAnyEditing(this.vectorMaps)},e.prototype.jumpToMap=function(t){var e=t.vectorLayers[0];if(e){var n=e.vectorEntities[0];if(n){var i=n.type===c.VectorEntityType.POLYGON?n.vectorEntity.boundary[0]:n.vectorEntity.coordinates[0],r=this.ViewService.mapView.getImage()?this.ViewService.mapView.getImage().location.z:this.ViewService.mapView.getCamera().position.z;r=a.clamp(this.GeoTransformationService.toGlobalHeight(r),void 0!==t.zMin?t.zMin:-1/0,void 0!==t.zMax?t.zMax:1/0);var o=new l.Vector3(i.x,i.y,r);if(this.IV.moveToGeoLocation(o).catch(function(){}),void 0!==t.zMin&&void 0!==t.zMax){var s=this.GeoTransformationService.toLocalHeight(t.zMin),u=this.FloorChangerService.getFloorForHeight(s);u&&this.FloorChangerService.changeFloorByName(u.name).catch(function(){})}else this.FloorChangerService.changeFloorByName(t.name).catch(function(){})}}},e.getSelectedMaps=function(t){return t.filter(function(t){return t.selected})},e.getSelectedLayers=function(t,e){return t.filter(function(t){if(e)for(var n=0,i=e;n<i.length;n++){var r=i[n];if(t.vectorMap.id===r.id)return!1}return t.selected})},e.isAnyEditing=function(t){return t.some(function(t){return t.editing})},e}(s.EntityEditorController);e.VectorMapListController=u;var d=function(){function t(){this.restrict="E",this.templateUrl="VectorMapUI/VectorMapList.html",this.controller=u,this.controllerAs="vm",this.scope=!0,this.bindToController={model:"=?",vectorMaps:"="}}return t.factory=function(){return function(){return new t}},t}();e.VectorMapListDirective=d,o.module("IVWebApp").directive("vectorMapList",d.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1599),n(1600);var r=n(153),o=function(){function t(){this.DATA=r.MeasurementDomain.DATA,this.isData=!1}return Object.defineProperty(t.prototype,"percent",{get:function(){return this.used/(this.total/100)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isWarning",{get:function(){return this.percent>t.LIMIT_WARN_THRESHOLD},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isDanger",{get:function(){return this.percent>t.LIMIT_DANGER_THRESHOLD},enumerable:!0,configurable:!0}),t.LIMIT_WARN_THRESHOLD=75,t.LIMIT_DANGER_THRESHOLD=90,t}();e.LimitDisplayController=o;var a=function(){function t(){this.restrict="E",this.templateUrl="LimitDisplay/LimitDisplay.html",this.controller=o,this.controllerAs="vm",this.scope=!0,this.bindToController={total:"=",used:"=",isData:"="},this.transclude=!0}return t.factory=function(){return function(){return new t}},t}();e.LimitDisplayDirective=a,i.module("IVWebApp").directive("limitDisplay",a.factory())},function(t,e,n){(function(t){angular.module("flow.provider",[]).provider("flowFactory",function(){"use strict";this.defaults={},this.factory=function(e){return new t(e)},this.events=[],this.on=function(t,e){this.events.push([t,e])},this.$get=function(){var t=this.factory,e=this.defaults,n=this.events;return{create:function(i){var r=t(angular.extend({},e,i));return angular.forEach(n,function(t){r.on(t[0],t[1])}),r}}}}),angular.module("flow.init",["flow.provider"]).controller("flowCtrl",["$scope","$attrs","$parse","flowFactory",function(t,e,n,i){var r=angular.extend({},t.$eval(e.flowInit)),o=t.$eval(e.flowObject)||i.create(r),a=function(e){var n=Array.prototype.slice.call(arguments);n.shift();var i=t.$broadcast.apply(t,["flow::"+e,o].concat(n));if({progress:1,filesSubmitted:1,fileSuccess:1,fileError:1,complete:1}[e]&&t.$applyAsync(),i.defaultPrevented)return!1};o.on("catchAll",a),t.$on("$destroy",function(){o.off("catchAll",a)}),t.$flow=o,e.hasOwnProperty("flowName")&&(n(e.flowName).assign(t,o),t.$on("$destroy",function(){n(e.flowName).assign(t)}))}]).directive("flowInit",[function(){return{scope:!0,controller:"flowCtrl"}}]),angular.module("flow.btn",["flow.init"]).directive("flowBtn",[function(){return{restrict:"EA",scope:!1,require:"^flowInit",link:function(t,e,n){var i=n.hasOwnProperty("flowDirectory"),r=n.hasOwnProperty("flowSingleFile"),o=n.hasOwnProperty("flowAttrs")&&t.$eval(n.flowAttrs);t.$flow.assignBrowse(e,i,r,o)}}}]),angular.module("flow.dragEvents",["flow.init"]).directive("flowPreventDrop",function(){return{scope:!1,link:function(t,e,n){e.bind("drop dragover",function(t){t.preventDefault()})}}}).directive("flowDragEnter",["$timeout",function(t){return{scope:!1,link:function(e,n,i){var r,o=!1;n.bind("dragover",function(n){var a,s,c;s=!1,c=(a=n).dataTransfer||a.originalEvent.dataTransfer,angular.forEach(c&&c.types,function(t){"Files"===t&&(s=!0)}),s&&(o||(e.$apply(i.flowDragEnter),o=!0),t.cancel(r),n.preventDefault())}),n.bind("dragleave drop",function(n){t.cancel(r),r=t(function(){e.$eval(i.flowDragLeave),r=null,o=!1},100)})}}}]),angular.module("flow.drop",["flow.init"]).directive("flowDrop",function(){return{scope:!1,require:"^flowInit",link:function(t,e,n){function i(){t.$flow.assignDrop(e)}n.flowDropEnabled?t.$watch(n.flowDropEnabled,function(n){n?i():t.$flow.unAssignDrop(e)}):i()}}}),function(t){"use strict";var e=t.module("flow.events",["flow.init"]);t.forEach({fileSuccess:["$file","$message"],fileProgress:["$file"],fileAdded:["$file","$event"],filesAdded:["$files","$event"],filesSubmitted:["$files","$event"],fileRetry:["$file"],fileRemoved:["$file"],fileError:["$file","$message"],uploadStart:[],complete:[],progress:[],error:["$message","$file"]},function(n,i){var r,o="flow"+((r=i).charAt(0).toUpperCase()+r.slice(1));"flowUploadStart"==o&&(o="flowUploadStarted"),e.directive(o,[function(){return{require:"^flowInit",controller:["$scope","$attrs",function(e,r){e.$on("flow::"+i,function(){var i=Array.prototype.slice.call(arguments),a=i.shift();if(e.$flow===i.shift()){var s={};t.forEach(n,function(t,e){s[t]=i[e]}),!1===e.$eval(r[o],s)&&a.preventDefault()}})}]}}])})}(angular),angular.module("flow.img",["flow.init"]).directive("flowImg",[function(){return{scope:!1,require:"^flowInit",link:function(t,e,n){var i=n.flowImg;t.$watch(i,function(e){if(e){var i=new FileReader;i.readAsDataURL(e.file),i.onload=function(e){t.$apply(function(){n.$set("src",e.target.result)})}}})}}}]),angular.module("flow.transfers",["flow.init"]).directive("flowTransfers",[function(){return{scope:!0,require:"^flowInit",link:function(t){t.transfers=t.$flow.files}}}]),angular.module("flow",["flow.provider","flow.init","flow.events","flow.btn","flow.drop","flow.transfers","flow.img","flow.dragEvents"])}).call(this,n(435))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.coloredMaps=function(){return this.withData("type","colored"),this},e.prototype.nonColoredMaps=function(){return this.withData("type","non-colored"),this},e}(n(64).TrackingEvent);e.AbstractMapGenerationEvent=o},function(t,e){var n="Upload/Upload.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div flow-init\n flow-object="vm.uploader"\n flow-file-error="vm.uploadError($file, $message)"\n flow-file-success="vm.uploadSuccess($file, $message)"\n flow-file-progress="vm.fileProgress($file)"\n flow-files-submitted="vm.uploadFilesSubmitted($files)"\n flow-error="vm.uploadError($file, $message)">\n\n\t\x3c!-- Files selection --\x3e\n\t<div class="form-group">\n\t\t<button type="button"\n\t\t class="btn btn-primary"\n\t\t flow-btn\n\t\t flow-attrs="{accept: \'{{vm.acceptedFileTypes}}\'}">\n\t\t\t<span class="fa fa-upload" aria-hidden="true"></span>\n\t\t\t<span ng-bind-html="vm.buttonTitle">\n\t\t\t</span>\n\t\t</button>\n\t\t<em translate translate-params-accepted-file-types="vm.acceptedFileTypes">\n\t\t\tSupported formats: {{acceptedFileTypes}}\n\t\t</em>\n\t</div>\n <upload-progress uploader="vm.uploader">\n </upload-progress>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1624),n(1625);var r,o=n(20),a=n(611);!function(t){t.CUSTOM="custom",t.DATASET="dataset"}(r=e.LocationPickerMode||(e.LocationPickerMode={}));var s=function(){function t(t,e,n,o,a){var s=this;this.ConfigService=t,this.DatasetRepository=e,this.GeoRegistrationService=n,this.RestService=o,this.AlignmentService=a,this.LOCATION_PICKER_MODE_CUSTOM=r.CUSTOM,this.LOCATION_PICKER_MODE_DATASET=r.DATASET,this.addingLocation={longitude:void 0,latitude:void 0,height:void 0,orientation:void 0,referenceDatasetId:void 0},this.addressNotFound=!1,this.addressToSearch="",this.GeoRegistrationService.fetchGoogleMapsLibrary(),this.locationPickerMode=this.getDatasetsWithLocation().length?r.DATASET:r.CUSTOM,window.setTimeout(function(){i.element("#"+s.locationPickerId).on("shown.bs.modal",function(){s.initMap()})})}return t.$inject=["ConfigService","DatasetRepository","GeoRegistrationService","RestService","AlignmentService"],t.prototype.initMap=function(){var t=this;this.GeoRegistrationService.initialized.then(function(){t.olMap||t.initOLM(),t.locationPickerMode===r.DATASET?t.initDatasetMode():t.initCustomMode(),o.invalidateAngular()}).catch(function(){})},t.prototype.initOLM=function(){var t=this;a.loadOpenLayersMap().then(function(e){t.olMap=new e(t.locationPickerId+"-open-layers-map",t.GeoRegistrationService,t.ConfigService,t.RestService,t.AlignmentService),document.getElementById(t.locationPickerId).addEventListener("scroll",function(){return t.olMap.updateMapSize()}),t.olMap.addClickHandler(function(e){return t.mapClicked(e)}),t.locationReferenceDataset?t.updateMapForReferenceDataset():t.updateMapForCustomLocation(!0,!0)}).catch(function(){})},t.prototype.initDatasetMode=function(){this.locationReferenceDataset=this.getDatasetsWithLocation()[0],this.updateMapForReferenceDataset()},t.prototype.initCustomMode=function(){this.addressToSearch="",this.addressNotFound=!1,this.addingLocation.referenceDatasetId=void 0,this.olMap.updateMapSize(),this.updateMapForCustomLocation(!0,!0)},t.prototype.mapClicked=function(t){this.updateAddingLocation(t.longitude,t.latitude),this.updateMapForCustomLocation(!1,!1)},t.prototype.updateAddingLocation=function(t,e,n,i,r){this.addingLocation={longitude:t,latitude:e,height:n||0,orientation:i||0,referenceDatasetId:r},o.invalidateAngular()},t.prototype.updateMapForReferenceDataset=function(){this.locationReferenceDataset&&(this.locationPickerMode=r.DATASET,this.focusOnDataset(this.locationReferenceDataset),this.olMap&&this.olMap.toggleControl("click",!1))},t.prototype.updateMapForCustomLocation=function(t,e){this.locationPickerMode=r.CUSTOM,this.focusOnLocation(this.addingLocation,t,e),this.olMap&&this.olMap.toggleControl("click",!0)},t.prototype.focusOnDataset=function(t){this.updateAddingLocation(t.globalLocation.x,t.globalLocation.y,t.globalLocation.z,o.radiansToDegrees(t.orientation),t.id),this.focusOnLocation(this.addingLocation,!0,!0)},t.prototype.focusOnLocation=function(t,e,n){this.olMap&&(this.olMap.moveLocationMarkerTo(t),e&&this.olMap.zoomToLocation(t,n?this.getZoomLevel():void 0))},t.prototype.getZoomLevel=function(){return this.addingLocation&&this.isLocationFieldValid("longitude")&&this.isLocationFieldValid("latitude")?t.DEFAULT_ZOOM_LEVEL:0},t.prototype.isAddingLocationValid=function(){return this.isLocationFieldValid("longitude")&&this.isLocationFieldValid("latitude")&&this.isLocationFieldValid("height")&&this.isLocationFieldValid("orientation")},t.prototype.isLocationFieldValid=function(t){return Number.isFinite(this.addingLocation[t])},t.prototype.searchAddress=function(){var t=this;this.addressToSearch&&(this.addressNotFound=!1,this.GeoRegistrationService.searchAddress(this.addressToSearch).then(function(e){e.length?(t.updateAddingLocation(Number.parseFloat(e[0].longitude),Number.parseFloat(e[0].latitude)),t.updateMapForCustomLocation(!0,!0)):t.addressNotFound=!0}).catch(function(){return t.addressNotFound=!0}))},t.prototype.getDatasetsWithLocation=function(){return this.DatasetRepository.data},t.DEFAULT_ZOOM_LEVEL=17,t}();e.DatasetLocationPickerController=s;var c=function(){function t(){this.restrict="E",this.templateUrl="DatasetManagementUI/DatasetLocationPicker.html",this.controller=s,this.controllerAs="vm",this.scope=!0,this.bindToController={locationPickerId:"@",datasetsToAddNames:"@",addingLocation:"=",onAdd:"&",onCancel:"&?"}}return t.factory=function(){return function(){return new t}},t}();e.DatasetLocationPickerDirective=c,i.module("IVWebApp").directive("datasetLocationPicker",c.factory())},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(618),n(1629);var a=n(330),s=n(8),c=function(t){function e(e,n,i,r,o){return t.call(this,e,n,i,r,o)||this}return r(e,t),e.$inject=["JobListService","FlowService","StatusCheckService","MessageReportingService","gettextCatalog"],e.prototype.uploadFilesSubmitted=function(e){t.prototype.filesSubmitted.call(this,e).catch(s.handleWarning)},e}(a.AbstractUploadController);e.UploadController=c;var l=function(){function t(){this.restrict="E",this.templateUrl="Upload/Upload.html",this.controller=c,this.controllerAs="vm",this.scope=!0,this.bindToController={buttonTitle:"@",targetUrl:"@",acceptedFileTypes:"@",onFilePicked:"&?",onUploadError:"&?",onUploadSuccess:"&?"}}return t.factory=function(){return function(){return new t}},t}();e.UploadDirective=l,o.module("IVWebApp").directive("upload",l.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.PROVIDE_CONFIG="PROVIDE_CONFIG",t.IN_PROGRESS="IN_PROGRESS",t.SUCCESS="SUCCESS",t.ERROR="ERROR"}(e.ConfigState||(e.ConfigState={}))},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var o=n(25),a=n(7),s=n(20),c=n(8),l=n(152),u=function(){function t(t){this.configService=t,this.lastPersistedState={}}return t.prototype.toDictionary=function(){var t;return(t={})[o.Configs.OAUTH_HOST_URL]=this.oauthHostUrl,t[o.Configs.OAUTH_ISSUER_URL]=this.oauthIssuerUrl,t[o.Configs.OAUTH_CLIENT_ID]=this.oauthClientId,t[o.Configs.OAUTH_CLIENT_SECRET]=this.oauthClientSecret,t[o.Configs.OAUTH_REDIRECT_URLS]=this.oauthRedirectUrls,t[o.Configs.OAUTH_USE_TOKEN_GROUPS]=this.oauthUseGroupsInToken,t[o.Configs.OAUTH_GROUPS_CLAIM_ARRAY_KEY]=this.oauthGroupsClaimArrayKey,t[o.Configs.FEDERATED_USE_TOKEN_GROUPS]=this.federatedUseGroupsInToken,t[o.Configs.FEDERATED_JWK_SET_URI]=this.federatedJwkSetUri,t[o.Configs.FEDERATED_GROUPS_CLAIM_ARRAY_KEY]=this.federatedGroupsClaimArrayKey,t[o.Configs.PRIVATE_MODE_ENABLED]=this.isPrivateModeEnabled,t},t.prototype.initialize=function(){return i(this,void 0,void 0,function(){return r(this,function(t){switch(t.label){case 0:return[4,this.configService.initialized.catch(c.handleWarning)];case 1:return t.sent(),this.isPrivateModeEnabled=this.configService.getBoolean(o.Configs.PRIVATE_MODE_ENABLED,!1),this.oauthHostUrl=this.configService.getString(o.Configs.OAUTH_HOST_URL,""),this.oauthIssuerUrl=this.configService.getString(o.Configs.OAUTH_ISSUER_URL,""),this.oauthClientId=this.configService.getString(o.Configs.OAUTH_CLIENT_ID,""),this.oauthClientSecret=this.configService.getString(o.Configs.OAUTH_CLIENT_SECRET,""),this.oauthRedirectUrls=this.configService.getString(o.Configs.OAUTH_REDIRECT_URLS,""),this.oauthUseGroupsInToken=this.configService.getBoolean(o.Configs.OAUTH_USE_TOKEN_GROUPS,!1),this.oauthGroupsClaimArrayKey=this.configService.getString(o.Configs.OAUTH_GROUPS_CLAIM_ARRAY_KEY,""),this.federatedUseGroupsInToken=this.configService.getBoolean(o.Configs.FEDERATED_USE_TOKEN_GROUPS,!1),this.federatedJwkSetUri=this.configService.getString(o.Configs.FEDERATED_JWK_SET_URI,""),this.federatedGroupsClaimArrayKey=this.configService.getString(o.Configs.FEDERATED_GROUPS_CLAIM_ARRAY_KEY,""),this.savedHostPrefix=this.configService.getString(o.Configs.OAUTH_HOST_PREFIX,""),this.urlHostPrefix=l.getBaseUrl().replace(/^(?:https?:\/\/)?/i,""),this.lastPersistedState=this.toDictionary(),[2,this]}})})},t.prototype.clearOpenIdConfiguration=function(){this.oauthHostUrl="",this.oauthIssuerUrl="",this.oauthClientId="",this.oauthClientSecret="",this.oauthRedirectUrls="",this.oauthUseGroupsInToken=!1},t.prototype.isOpenIdAuthenticationConfigEmpty=function(){return[this.oauthHostUrl,this.oauthClientSecret,this.oauthIssuerUrl,this.oauthClientId].every(function(t){return s.isBlank(t)})&&!this.oauthUseGroupsInToken},t.prototype.canSave=function(){var t=[this.oauthHostUrl,this.oauthClientSecret,this.oauthIssuerUrl,this.oauthClientId].every(function(t){return!s.isBlank(t)});return this.isDirty()&&(this.isOpenIdAuthenticationConfigEmpty()||t)},t.prototype.save=function(){var t=this;return this.canSave()?(this.oauthUseGroupsInToken||this.federatedUseGroupsInToken?""===this.savedHostPrefix&&(this.configService.saveConfig(o.Configs.OAUTH_HOST_PREFIX,this.urlHostPrefix).catch(c.handleWarning),this.savedHostPrefix=this.urlHostPrefix):(this.configService.saveConfig(o.Configs.OAUTH_HOST_PREFIX,"").catch(c.handleWarning),this.savedHostPrefix=""),this.configService.saveConfigs(this.getDelta()).then(function(){return t.lastPersistedState=t.toDictionary(),t})):Promise.resolve(this)},t.prototype.isDirty=function(){return a.size(this.getDelta())>0},t.prototype.getDelta=function(){var t=this;return a.omitBy(this.toDictionary(),function(e,n){return t.lastPersistedState[n]===e})},t.factory=function(){return function(e){return new t(e).initialize()}},t}();e.AuthenticationConfiguration=u},function(t,e,n){"use strict";n.d(e,"a",function(){return a});var i=n(1),r=n(26),o=n(119);function a(t,e){return void 0===e&&(e=o.a),function(n){return n.lift(new s(t,e))}}var s=function(){function t(t,e){this.dueTime=t,this.scheduler=e}return t.prototype.call=function(t,e){return e.subscribe(new c(t,this.dueTime,this.scheduler))},t}(),c=function(t){function e(e,n,i){var r=t.call(this,e)||this;return r.dueTime=n,r.scheduler=i,r.debouncedSubscription=null,r.lastValue=null,r.hasValue=!1,r}return i.c(e,t),e.prototype._next=function(t){this.clearDebounce(),this.lastValue=t,this.hasValue=!0,this.add(this.debouncedSubscription=this.scheduler.schedule(l,this.dueTime,this))},e.prototype._complete=function(){this.debouncedNext(),this.destination.complete()},e.prototype.debouncedNext=function(){if(this.clearDebounce(),this.hasValue){var t=this.lastValue;this.lastValue=null,this.hasValue=!1,this.destination.next(t)}},e.prototype.clearDebounce=function(){var t=this.debouncedSubscription;null!==t&&(this.remove(t),t.unsubscribe(),this.debouncedSubscription=null)},e}(r.a);function l(t){t.debouncedNext()}},function(t,e,n){"use strict";n.r(e),n.d(e,"AbstractControl",function(){return gt}),n.d(e,"AbstractControlDirective",function(){return g}),n.d(e,"AbstractFormGroupDirective",function(){return xt}),n.d(e,"COMPOSITION_BUFFER_MODE",function(){return h}),n.d(e,"CheckboxControlValueAccessor",function(){return d}),n.d(e,"CheckboxRequiredValidator",function(){return Wt}),n.d(e,"ControlContainer",function(){return m}),n.d(e,"DefaultValueAccessor",function(){return f}),n.d(e,"EmailValidator",function(){return Kt}),n.d(e,"FormArray",function(){return yt}),n.d(e,"FormArrayName",function(){return Vt}),n.d(e,"FormBuilder",function(){return re}),n.d(e,"FormControl",function(){return mt}),n.d(e,"FormControlDirective",function(){return kt}),n.d(e,"FormControlName",function(){return Bt}),n.d(e,"FormGroup",function(){return vt}),n.d(e,"FormGroupDirective",function(){return Rt}),n.d(e,"FormGroupName",function(){return Nt}),n.d(e,"FormsModule",function(){return ae}),n.d(e,"MaxLengthValidator",function(){return Jt}),n.d(e,"MinLengthValidator",function(){return Yt}),n.d(e,"NG_ASYNC_VALIDATORS",function(){return C}),n.d(e,"NG_VALIDATORS",function(){return E}),n.d(e,"NG_VALUE_ACCESSOR",function(){return l}),n.d(e,"NgControl",function(){return y}),n.d(e,"NgControlStatus",function(){return S}),n.d(e,"NgControlStatusGroup",function(){return x}),n.d(e,"NgForm",function(){return St}),n.d(e,"NgModel",function(){return Ot}),n.d(e,"NgModelGroup",function(){return Ct}),n.d(e,"NgSelectOption",function(){return K}),n.d(e,"NumberValueAccessor",function(){return R}),n.d(e,"PatternValidator",function(){return $t}),n.d(e,"RadioControlValueAccessor",function(){return j}),n.d(e,"RangeValueAccessor",function(){return F}),n.d(e,"ReactiveFormsModule",function(){return se}),n.d(e,"RequiredValidator",function(){return Ht}),n.d(e,"SelectControlValueAccessor",function(){return q}),n.d(e,"SelectMultipleControlValueAccessor",function(){return Z}),n.d(e,"VERSION",function(){return oe}),n.d(e,"Validators",function(){return T}),n.d(e,"ɵInternalFormsSharedModule",function(){return ie}),n.d(e,"ɵNgNoValidate",function(){return _t}),n.d(e,"ɵNgSelectMultipleOption",function(){return J}),n.d(e,"ɵangular_packages_forms_forms_a",function(){return te}),n.d(e,"ɵangular_packages_forms_forms_b",function(){return ee}),n.d(e,"ɵangular_packages_forms_forms_ba",function(){return Gt}),n.d(e,"ɵangular_packages_forms_forms_bb",function(){return qt}),n.d(e,"ɵangular_packages_forms_forms_bc",function(){return Xt}),n.d(e,"ɵangular_packages_forms_forms_bd",function(){return Zt}),n.d(e,"ɵangular_packages_forms_forms_be",function(){return Qt}),n.d(e,"ɵangular_packages_forms_forms_c",function(){return ne}),n.d(e,"ɵangular_packages_forms_forms_d",function(){return ie}),n.d(e,"ɵangular_packages_forms_forms_e",function(){return u}),n.d(e,"ɵangular_packages_forms_forms_f",function(){return p}),n.d(e,"ɵangular_packages_forms_forms_g",function(){return b}),n.d(e,"ɵangular_packages_forms_forms_h",function(){return w}),n.d(e,"ɵangular_packages_forms_forms_i",function(){return bt}),n.d(e,"ɵangular_packages_forms_forms_j",function(){return At}),n.d(e,"ɵangular_packages_forms_forms_k",function(){return Et}),n.d(e,"ɵangular_packages_forms_forms_l",function(){return D}),n.d(e,"ɵangular_packages_forms_forms_m",function(){return L}),n.d(e,"ɵangular_packages_forms_forms_n",function(){return N}),n.d(e,"ɵangular_packages_forms_forms_o",function(){return V}),n.d(e,"ɵangular_packages_forms_forms_p",function(){return Pt}),n.d(e,"ɵangular_packages_forms_forms_q",function(){return It}),n.d(e,"ɵangular_packages_forms_forms_r",function(){return Ut}),n.d(e,"ɵangular_packages_forms_forms_s",function(){return Dt}),n.d(e,"ɵangular_packages_forms_forms_t",function(){return Lt}),n.d(e,"ɵangular_packages_forms_forms_u",function(){return jt}),n.d(e,"ɵangular_packages_forms_forms_v",function(){return H}),n.d(e,"ɵangular_packages_forms_forms_w",function(){return X}),n.d(e,"ɵangular_packages_forms_forms_x",function(){return J}),n.d(e,"ɵangular_packages_forms_forms_y",function(){return _t}),n.d(e,"ɵangular_packages_forms_forms_z",function(){return zt});var i=n(1),r=n(0),o=n(3),a=n(228),s=n(76),c=n(62),l=new r.InjectionToken("NgValueAccessor"),u={provide:l,useExisting:Object(r.forwardRef)(function(){return d}),multi:!0},d=function(){function t(t,e){this._renderer=t,this._elementRef=e,this.onChange=function(t){},this.onTouched=function(){}}return t.prototype.writeValue=function(t){this._renderer.setProperty(this._elementRef.nativeElement,"checked",t)},t.prototype.registerOnChange=function(t){this.onChange=t},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.setDisabledState=function(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)},(t=Object(i.b)([Object(i.d)("design:paramtypes",[r.Renderer2,r.ElementRef])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.Renderer2),r["ɵɵdirectiveInject"](r.ElementRef))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(t,e){1&t&&r["ɵɵlistener"]("change",function(t){return e.onChange(t.target.checked)})("blur",function(){return e.onTouched()})},features:[r["ɵɵProvidersFeature"]([u])]}),t}(),p={provide:l,useExisting:Object(r.forwardRef)(function(){return f}),multi:!0},h=new r.InjectionToken("CompositionEventMode"),f=function(){function t(t,e,n){var i;this._renderer=t,this._elementRef=e,this._compositionMode=n,this.onChange=function(t){},this.onTouched=function(){},this._composing=!1,null==this._compositionMode&&(this._compositionMode=(i=Object(o["ɵgetDOM"])()?Object(o["ɵgetDOM"])().getUserAgent():"",!/android (\d+)/.test(i.toLowerCase())))}return t.prototype.writeValue=function(t){var e=null==t?"":t;this._renderer.setProperty(this._elementRef.nativeElement,"value",e)},t.prototype.registerOnChange=function(t){this.onChange=t},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.setDisabledState=function(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)},t.prototype._handleInput=function(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)},t.prototype._compositionStart=function(){this._composing=!0},t.prototype._compositionEnd=function(t){this._composing=!1,this._compositionMode&&this.onChange(t)},(t=Object(i.b)([Object(i.e)(2,Object(r.Optional)()),Object(i.e)(2,Object(r.Inject)(h)),Object(i.d)("design:paramtypes",[r.Renderer2,r.ElementRef,Boolean])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.Renderer2),r["ɵɵdirectiveInject"](r.ElementRef),r["ɵɵdirectiveInject"](h,8))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(t,e){1&t&&r["ɵɵlistener"]("input",function(t){return e._handleInput(t.target.value)})("blur",function(){return e.onTouched()})("compositionstart",function(){return e._compositionStart()})("compositionend",function(t){return e._compositionEnd(t.target.value)})},features:[r["ɵɵProvidersFeature"]([p])]}),t}(),g=function(){function t(){}return Object.defineProperty(t.prototype,"value",{get:function(){return this.control?this.control.value:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"valid",{get:function(){return this.control?this.control.valid:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"invalid",{get:function(){return this.control?this.control.invalid:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pending",{get:function(){return this.control?this.control.pending:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"disabled",{get:function(){return this.control?this.control.disabled:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"enabled",{get:function(){return this.control?this.control.enabled:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"errors",{get:function(){return this.control?this.control.errors:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pristine",{get:function(){return this.control?this.control.pristine:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"dirty",{get:function(){return this.control?this.control.dirty:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"touched",{get:function(){return this.control?this.control.touched:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"status",{get:function(){return this.control?this.control.status:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"untouched",{get:function(){return this.control?this.control.untouched:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"statusChanges",{get:function(){return this.control?this.control.statusChanges:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"valueChanges",{get:function(){return this.control?this.control.valueChanges:null},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"path",{get:function(){return null},enumerable:!0,configurable:!0}),t.prototype.reset=function(t){void 0===t&&(t=void 0),this.control&&this.control.reset(t)},t.prototype.hasError=function(t,e){return!!this.control&&this.control.hasError(t,e)},t.prototype.getError=function(t,e){return this.control?this.control.getError(t,e):null},t.ɵfac=function(e){return new(e||t)},t.ɵdir=r["ɵɵdefineDirective"]({type:t}),t}(),m=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}Object(i.c)(e,t),Object.defineProperty(e.prototype,"formDirective",{get:function(){return null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"path",{get:function(){return null},enumerable:!0,configurable:!0}),e.ɵfac=function(t){return n(t||e)},e.ɵdir=r["ɵɵdefineDirective"]({type:e,features:[r["ɵɵInheritDefinitionFeature"]]});var n=r["ɵɵgetInheritedFactory"](e);return e}(g);
  2108. /**
  2109. * @license
  2110. * Copyright Google Inc. All Rights Reserved.
  2111. *
  2112. * Use of this source code is governed by an MIT-style license that can be
  2113. * found in the LICENSE file at https://angular.io/license
  2114. */
  2115. function v(){throw new Error("unimplemented")}var y=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._parent=null,e.name=null,e.valueAccessor=null,e._rawValidators=[],e._rawAsyncValidators=[],e}return Object(i.c)(e,t),Object.defineProperty(e.prototype,"validator",{get:function(){return v()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return v()},enumerable:!0,configurable:!0}),e}(g),b=function(){function t(t){this._cd=t}return Object.defineProperty(t.prototype,"ngClassUntouched",{get:function(){return!!this._cd.control&&this._cd.control.untouched},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngClassTouched",{get:function(){return!!this._cd.control&&this._cd.control.touched},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngClassPristine",{get:function(){return!!this._cd.control&&this._cd.control.pristine},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngClassDirty",{get:function(){return!!this._cd.control&&this._cd.control.dirty},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngClassValid",{get:function(){return!!this._cd.control&&this._cd.control.valid},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngClassInvalid",{get:function(){return!!this._cd.control&&this._cd.control.invalid},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"ngClassPending",{get:function(){return!!this._cd.control&&this._cd.control.pending},enumerable:!0,configurable:!0}),t}(),w={"[class.ng-untouched]":"ngClassUntouched","[class.ng-touched]":"ngClassTouched","[class.ng-pristine]":"ngClassPristine","[class.ng-dirty]":"ngClassDirty","[class.ng-valid]":"ngClassValid","[class.ng-invalid]":"ngClassInvalid","[class.ng-pending]":"ngClassPending"},S=function(t){function e(e){return t.call(this,e)||this}return Object(i.c)(e,t),(e=Object(i.b)([Object(i.e)(0,Object(r.Self)()),Object(i.d)("design:paramtypes",[y])],e)).ɵfac=function(t){return new(t||e)(r["ɵɵdirectiveInject"](y,2))},e.ɵdir=r["ɵɵdefineDirective"]({type:e,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(t,e){2&t&&r["ɵɵclassProp"]("ng-untouched",e.ngClassUntouched)("ng-touched",e.ngClassTouched)("ng-pristine",e.ngClassPristine)("ng-dirty",e.ngClassDirty)("ng-valid",e.ngClassValid)("ng-invalid",e.ngClassInvalid)("ng-pending",e.ngClassPending)},features:[r["ɵɵInheritDefinitionFeature"]]}),e}(b),x=function(t){function e(e){return t.call(this,e)||this}return Object(i.c)(e,t),(e=Object(i.b)([Object(i.e)(0,Object(r.Self)()),Object(i.d)("design:paramtypes",[m])],e)).ɵfac=function(t){return new(t||e)(r["ɵɵdirectiveInject"](m,2))},e.ɵdir=r["ɵɵdefineDirective"]({type:e,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:14,hostBindings:function(t,e){2&t&&r["ɵɵclassProp"]("ng-untouched",e.ngClassUntouched)("ng-touched",e.ngClassTouched)("ng-pristine",e.ngClassPristine)("ng-dirty",e.ngClassDirty)("ng-valid",e.ngClassValid)("ng-invalid",e.ngClassInvalid)("ng-pending",e.ngClassPending)},features:[r["ɵɵInheritDefinitionFeature"]]}),e}(b);
  2116. /**
  2117. * @license
  2118. * Copyright Google Inc. All Rights Reserved.
  2119. *
  2120. * Use of this source code is governed by an MIT-style license that can be
  2121. * found in the LICENSE file at https://angular.io/license
  2122. */
  2123. /**
  2124. * @license
  2125. * Copyright Google Inc. All Rights Reserved.
  2126. *
  2127. * Use of this source code is governed by an MIT-style license that can be
  2128. * found in the LICENSE file at https://angular.io/license
  2129. */function M(t){return null==t||0===t.length}var E=new r.InjectionToken("NgValidators"),C=new r.InjectionToken("NgAsyncValidators"),A=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,T=function(){function t(){}return t.min=function(t){return function(e){if(M(e.value)||M(t))return null;var n=parseFloat(e.value);return!isNaN(n)&&n<t?{min:{min:t,actual:e.value}}:null}},t.max=function(t){return function(e){if(M(e.value)||M(t))return null;var n=parseFloat(e.value);return!isNaN(n)&&n>t?{max:{max:t,actual:e.value}}:null}},t.required=function(t){return M(t.value)?{required:!0}:null},t.requiredTrue=function(t){return!0===t.value?null:{required:!0}},t.email=function(t){return M(t.value)||A.test(t.value)?null:{email:!0}},t.minLength=function(t){return function(e){if(M(e.value))return null;var n=e.value?e.value.length:0;return n<t?{minlength:{requiredLength:t,actualLength:n}}:null}},t.maxLength=function(t){return function(e){var n=e.value?e.value.length:0;return n>t?{maxlength:{requiredLength:t,actualLength:n}}:null}},t.pattern=function(e){return e?("string"==typeof e?(i="","^"!==e.charAt(0)&&(i+="^"),i+=e,"$"!==e.charAt(e.length-1)&&(i+="$"),n=new RegExp(i)):(i=e.toString(),n=e),function(t){if(M(t.value))return null;var e=t.value;return n.test(e)?null:{pattern:{requiredPattern:i,actualValue:e}}}):t.nullValidator;var n,i},t.nullValidator=function(t){return null},t.compose=function(t){if(!t)return null;var e=t.filter(O);return 0==e.length?null:function(t){return P(function(t,e){return e.map(function(e){return e(t)})}(t,e))}},t.composeAsync=function(t){if(!t)return null;var e=t.filter(O);return 0==e.length?null:function(t){var n=function(t,e){return e.map(function(e){return e(t)})}(t,e).map(_);return Object(a.a)(n).pipe(Object(c.a)(P))}},t}();function O(t){return null!=t}function _(t){var e=Object(r["ɵisPromise"])(t)?Object(s.a)(t):t;if(!Object(r["ɵisObservable"])(e))throw new Error("Expected validator to return Promise or Observable.");return e}function P(t){var e={};return t.forEach(function(t){e=null!=t?Object(i.a)(Object(i.a)({},e),t):e}),0===Object.keys(e).length?null:e}
  2130. /**
  2131. * @license
  2132. * Copyright Google Inc. All Rights Reserved.
  2133. *
  2134. * Use of this source code is governed by an MIT-style license that can be
  2135. * found in the LICENSE file at https://angular.io/license
  2136. */function I(t){return t.validate?function(e){return t.validate(e)}:t}function k(t){return t.validate?function(e){return t.validate(e)}:t}
  2137. /**
  2138. * @license
  2139. * Copyright Google Inc. All Rights Reserved.
  2140. *
  2141. * Use of this source code is governed by an MIT-style license that can be
  2142. * found in the LICENSE file at https://angular.io/license
  2143. */var D={provide:l,useExisting:Object(r.forwardRef)(function(){return R}),multi:!0},R=function(){function t(t,e){this._renderer=t,this._elementRef=e,this.onChange=function(t){},this.onTouched=function(){}}return t.prototype.writeValue=function(t){var e=null==t?"":t;this._renderer.setProperty(this._elementRef.nativeElement,"value",e)},t.prototype.registerOnChange=function(t){this.onChange=function(e){t(""==e?null:parseFloat(e))}},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.setDisabledState=function(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)},(t=Object(i.b)([Object(i.d)("design:paramtypes",[r.Renderer2,r.ElementRef])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.Renderer2),r["ɵɵdirectiveInject"](r.ElementRef))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(t,e){1&t&&r["ɵɵlistener"]("change",function(t){return e.onChange(t.target.value)})("input",function(t){return e.onChange(t.target.value)})("blur",function(){return e.onTouched()})},features:[r["ɵɵProvidersFeature"]([D])]}),t}(),L={provide:l,useExisting:Object(r.forwardRef)(function(){return j}),multi:!0},N=function(){function t(){this._accessors=[]}return t.prototype.add=function(t,e){this._accessors.push([t,e])},t.prototype.remove=function(t){for(var e=this._accessors.length-1;e>=0;--e)if(this._accessors[e][1]===t)return void this._accessors.splice(e,1)},t.prototype.select=function(t){var e=this;this._accessors.forEach(function(n){e._isSameGroup(n,t)&&n[1]!==t&&n[1].fireUncheck(t.value)})},t.prototype._isSameGroup=function(t,e){return!!t[0].control&&t[0]._parent===e._control._parent&&t[1].name===e.name},t.ɵfac=function(e){return new(e||t)},t.ɵprov=r["ɵɵdefineInjectable"]({token:t,factory:function(e){return t.ɵfac(e)}}),t}(),j=function(){function t(t,e,n,i){this._renderer=t,this._elementRef=e,this._registry=n,this._injector=i,this.onChange=function(){},this.onTouched=function(){}}return t.prototype.ngOnInit=function(){this._control=this._injector.get(y),this._checkName(),this._registry.add(this._control,this)},t.prototype.ngOnDestroy=function(){this._registry.remove(this)},t.prototype.writeValue=function(t){this._state=t===this.value,this._renderer.setProperty(this._elementRef.nativeElement,"checked",this._state)},t.prototype.registerOnChange=function(t){var e=this;this._fn=t,this.onChange=function(){t(e.value),e._registry.select(e)}},t.prototype.fireUncheck=function(t){this.writeValue(t)},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.setDisabledState=function(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)},t.prototype._checkName=function(){this.name&&this.formControlName&&this.name!==this.formControlName&&this._throwNameError(),!this.name&&this.formControlName&&(this.name=this.formControlName)},t.prototype._throwNameError=function(){throw new Error('\n If you define both a name and a formControlName attribute on your radio button, their values\n must match. Ex: <input type="radio" formControlName="food" name="food">\n ')},Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",String)],t.prototype,"name",void 0),Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",String)],t.prototype,"formControlName",void 0),Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",Object)],t.prototype,"value",void 0),(t=Object(i.b)([Object(i.d)("design:paramtypes",[r.Renderer2,r.ElementRef,N,r.Injector])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.Renderer2),r["ɵɵdirectiveInject"](r.ElementRef),r["ɵɵdirectiveInject"](N),r["ɵɵdirectiveInject"](r.Injector))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(t,e){1&t&&r["ɵɵlistener"]("change",function(){return e.onChange()})("blur",function(){return e.onTouched()})},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[r["ɵɵProvidersFeature"]([L])]}),t}(),V={provide:l,useExisting:Object(r.forwardRef)(function(){return F}),multi:!0},F=function(){function t(t,e){this._renderer=t,this._elementRef=e,this.onChange=function(t){},this.onTouched=function(){}}return t.prototype.writeValue=function(t){this._renderer.setProperty(this._elementRef.nativeElement,"value",parseFloat(t))},t.prototype.registerOnChange=function(t){this.onChange=function(e){t(""==e?null:parseFloat(e))}},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.setDisabledState=function(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)},(t=Object(i.b)([Object(i.d)("design:paramtypes",[r.Renderer2,r.ElementRef])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.Renderer2),r["ɵɵdirectiveInject"](r.ElementRef))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["input","type","range","formControlName",""],["input","type","range","formControl",""],["input","type","range","ngModel",""]],hostBindings:function(t,e){1&t&&r["ɵɵlistener"]("change",function(t){return e.onChange(t.target.value)})("input",function(t){return e.onChange(t.target.value)})("blur",function(){return e.onTouched()})},features:[r["ɵɵProvidersFeature"]([V])]}),t}(),U='\n <div [formGroup]="myGroup">\n <input formControlName="firstName">\n </div>\n\n In your class:\n\n this.myGroup = new FormGroup({\n firstName: new FormControl()\n });',B='\n <div [formGroup]="myGroup">\n <div formGroupName="person">\n <input formControlName="firstName">\n </div>\n </div>\n\n In your class:\n\n this.myGroup = new FormGroup({\n person: new FormGroup({ firstName: new FormControl() })\n });',z='\n <form>\n <div ngModelGroup="person">\n <input [(ngModel)]="person.name" name="firstName">\n </div>\n </form>',G=function(){function t(){}return t.controlParentException=function(){throw new Error("formControlName must be used with a parent formGroup directive. You'll want to add a formGroup\n directive and pass it an existing FormGroup instance (you can create one in your class).\n\n Example:\n\n "+U)},t.ngModelGroupException=function(){throw new Error('formControlName cannot be used with an ngModelGroup parent. It is only compatible with parents\n that also have a "form" prefix: formGroupName, formArrayName, or formGroup.\n\n Option 1: Update the parent to be formGroupName (reactive form strategy)\n\n '+B+"\n\n Option 2: Use ngModel instead of formControlName (template-driven strategy)\n\n "+z)},t.missingFormException=function(){throw new Error("formGroup expects a FormGroup instance. Please pass one in.\n\n Example:\n\n "+U)},t.groupParentException=function(){throw new Error("formGroupName must be used with a parent formGroup directive. You'll want to add a formGroup\n directive and pass it an existing FormGroup instance (you can create one in your class).\n\n Example:\n\n "+B)},t.arrayParentException=function(){throw new Error('formArrayName must be used with a parent formGroup directive. You\'ll want to add a formGroup\n directive and pass it an existing FormGroup instance (you can create one in your class).\n\n Example:\n\n \n <div [formGroup]="myGroup">\n <div formArrayName="cities">\n <div *ngFor="let city of cityArray.controls; index as i">\n <input [formControlName]="i">\n </div>\n </div>\n </div>\n\n In your class:\n\n this.cityArray = new FormArray([new FormControl(\'SF\')]);\n this.myGroup = new FormGroup({\n cities: this.cityArray\n });')},t.disabledAttrWarning=function(){console.warn("\n It looks like you're using the disabled attribute with a reactive form directive. If you set disabled to true\n when you set up this control in your component class, the disabled attribute will actually be set in the DOM for\n you. We recommend using this approach to avoid 'changed after checked' errors.\n \n Example: \n form = new FormGroup({\n first: new FormControl({value: 'Nancy', disabled: true}, Validators.required),\n last: new FormControl('Drew', Validators.required)\n });\n ")},t.ngModelWarning=function(t){console.warn("\n It looks like you're using ngModel on the same form field as "+t+". \n Support for using the ngModel input property and ngModelChange event with \n reactive form directives has been deprecated in Angular v6 and will be removed \n in Angular v7.\n \n For more information on this, see our API docs here:\n https://angular.io/api/forms/"+("formControl"===t?"FormControlDirective":"FormControlName")+"#use-with-ngmodel\n ")},t}(),H={provide:l,useExisting:Object(r.forwardRef)(function(){return q}),multi:!0};function W(t,e){return null==t?""+e:(e&&"object"==typeof e&&(e="Object"),(t+": "+e).slice(0,50))}var q=function(){function t(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=function(t){},this.onTouched=function(){},this._compareWith=r["ɵlooseIdentical"]}return Object.defineProperty(t.prototype,"compareWith",{set:function(t){if("function"!=typeof t)throw new Error("compareWith must be a function, but received "+JSON.stringify(t));this._compareWith=t},enumerable:!0,configurable:!0}),t.prototype.writeValue=function(t){this.value=t;var e=this._getOptionId(t);null==e&&this._renderer.setProperty(this._elementRef.nativeElement,"selectedIndex",-1);var n=W(e,t);this._renderer.setProperty(this._elementRef.nativeElement,"value",n)},t.prototype.registerOnChange=function(t){var e=this;this.onChange=function(n){e.value=e._getOptionValue(n),t(e.value)}},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.setDisabledState=function(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)},t.prototype._registerOption=function(){return(this._idCounter++).toString()},t.prototype._getOptionId=function(t){var e,n;try{for(var r=Object(i.j)(Array.from(this._optionMap.keys())),o=r.next();!o.done;o=r.next()){var a=o.value;if(this._compareWith(this._optionMap.get(a),t))return a}}catch(t){e={error:t}}finally{try{o&&!o.done&&(n=r.return)&&n.call(r)}finally{if(e)throw e.error}}return null},t.prototype._getOptionValue=function(t){var e=function(t){return t.split(":")[0]}(t);return this._optionMap.has(e)?this._optionMap.get(e):t},Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",Function),Object(i.d)("design:paramtypes",[Function])],t.prototype,"compareWith",null),(t=Object(i.b)([Object(i.d)("design:paramtypes",[r.Renderer2,r.ElementRef])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.Renderer2),r["ɵɵdirectiveInject"](r.ElementRef))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(t,e){1&t&&r["ɵɵlistener"]("change",function(t){return e.onChange(t.target.value)})("blur",function(){return e.onTouched()})},inputs:{compareWith:"compareWith"},features:[r["ɵɵProvidersFeature"]([H])]}),t}(),K=function(){function t(t,e,n){this._element=t,this._renderer=e,this._select=n,this._select&&(this.id=this._select._registerOption())}return Object.defineProperty(t.prototype,"ngValue",{set:function(t){null!=this._select&&(this._select._optionMap.set(this.id,t),this._setElementValue(W(this.id,t)),this._select.writeValue(this._select.value))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"value",{set:function(t){this._setElementValue(t),this._select&&this._select.writeValue(this._select.value)},enumerable:!0,configurable:!0}),t.prototype._setElementValue=function(t){this._renderer.setProperty(this._element.nativeElement,"value",t)},t.prototype.ngOnDestroy=function(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))},Object(i.b)([Object(r.Input)("ngValue"),Object(i.d)("design:type",Object),Object(i.d)("design:paramtypes",[Object])],t.prototype,"ngValue",null),Object(i.b)([Object(r.Input)("value"),Object(i.d)("design:type",Object),Object(i.d)("design:paramtypes",[Object])],t.prototype,"value",null),(t=Object(i.b)([Object(i.e)(2,Object(r.Optional)()),Object(i.e)(2,Object(r.Host)()),Object(i.d)("design:paramtypes",[r.ElementRef,r.Renderer2,q])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.ElementRef),r["ɵɵdirectiveInject"](r.Renderer2),r["ɵɵdirectiveInject"](q,9))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),t}(),X={provide:l,useExisting:Object(r.forwardRef)(function(){return Z}),multi:!0};function Y(t,e){return null==t?""+e:("string"==typeof e&&(e="'"+e+"'"),e&&"object"==typeof e&&(e="Object"),(t+": "+e).slice(0,50))}var Z=function(){function t(t,e){this._renderer=t,this._elementRef=e,this._optionMap=new Map,this._idCounter=0,this.onChange=function(t){},this.onTouched=function(){},this._compareWith=r["ɵlooseIdentical"]}return Object.defineProperty(t.prototype,"compareWith",{set:function(t){if("function"!=typeof t)throw new Error("compareWith must be a function, but received "+JSON.stringify(t));this._compareWith=t},enumerable:!0,configurable:!0}),t.prototype.writeValue=function(t){var e,n=this;if(this.value=t,Array.isArray(t)){var i=t.map(function(t){return n._getOptionId(t)});e=function(t,e){t._setSelected(i.indexOf(e.toString())>-1)}}else e=function(t,e){t._setSelected(!1)};this._optionMap.forEach(e)},t.prototype.registerOnChange=function(t){var e=this;this.onChange=function(n){var i=[];if(n.hasOwnProperty("selectedOptions"))for(var r=n.selectedOptions,o=0;o<r.length;o++){var a=r.item(o),s=e._getOptionValue(a.value);i.push(s)}else for(r=n.options,o=0;o<r.length;o++)(a=r.item(o)).selected&&(s=e._getOptionValue(a.value),i.push(s));e.value=i,t(i)}},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.setDisabledState=function(t){this._renderer.setProperty(this._elementRef.nativeElement,"disabled",t)},t.prototype._registerOption=function(t){var e=(this._idCounter++).toString();return this._optionMap.set(e,t),e},t.prototype._getOptionId=function(t){var e,n;try{for(var r=Object(i.j)(Array.from(this._optionMap.keys())),o=r.next();!o.done;o=r.next()){var a=o.value;if(this._compareWith(this._optionMap.get(a)._value,t))return a}}catch(t){e={error:t}}finally{try{o&&!o.done&&(n=r.return)&&n.call(r)}finally{if(e)throw e.error}}return null},t.prototype._getOptionValue=function(t){var e=function(t){return t.split(":")[0]}(t);return this._optionMap.has(e)?this._optionMap.get(e)._value:t},Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",Function),Object(i.d)("design:paramtypes",[Function])],t.prototype,"compareWith",null),(t=Object(i.b)([Object(i.d)("design:paramtypes",[r.Renderer2,r.ElementRef])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.Renderer2),r["ɵɵdirectiveInject"](r.ElementRef))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["select","multiple","","formControlName",""],["select","multiple","","formControl",""],["select","multiple","","ngModel",""]],hostBindings:function(t,e){1&t&&r["ɵɵlistener"]("change",function(t){return e.onChange(t.target)})("blur",function(){return e.onTouched()})},inputs:{compareWith:"compareWith"},features:[r["ɵɵProvidersFeature"]([X])]}),t}(),J=function(){function t(t,e,n){this._element=t,this._renderer=e,this._select=n,this._select&&(this.id=this._select._registerOption(this))}return Object.defineProperty(t.prototype,"ngValue",{set:function(t){null!=this._select&&(this._value=t,this._setElementValue(Y(this.id,t)),this._select.writeValue(this._select.value))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"value",{set:function(t){this._select?(this._value=t,this._setElementValue(Y(this.id,t)),this._select.writeValue(this._select.value)):this._setElementValue(t)},enumerable:!0,configurable:!0}),t.prototype._setElementValue=function(t){this._renderer.setProperty(this._element.nativeElement,"value",t)},t.prototype._setSelected=function(t){this._renderer.setProperty(this._element.nativeElement,"selected",t)},t.prototype.ngOnDestroy=function(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))},Object(i.b)([Object(r.Input)("ngValue"),Object(i.d)("design:type",Object),Object(i.d)("design:paramtypes",[Object])],t.prototype,"ngValue",null),Object(i.b)([Object(r.Input)("value"),Object(i.d)("design:type",Object),Object(i.d)("design:paramtypes",[Object])],t.prototype,"value",null),(t=Object(i.b)([Object(i.e)(2,Object(r.Optional)()),Object(i.e)(2,Object(r.Host)()),Object(i.d)("design:paramtypes",[r.ElementRef,r.Renderer2,Z])],t)).ɵfac=function(e){return new(e||t)(r["ɵɵdirectiveInject"](r.ElementRef),r["ɵɵdirectiveInject"](r.Renderer2),r["ɵɵdirectiveInject"](Z,9))},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),t}();
  2144. /**
  2145. * @license
  2146. * Copyright Google Inc. All Rights Reserved.
  2147. *
  2148. * Use of this source code is governed by an MIT-style license that can be
  2149. * found in the LICENSE file at https://angular.io/license
  2150. */function Q(t,e){return Object(i.h)(e.path,[t])}function $(t,e){t||it(e,"Cannot find control with"),e.valueAccessor||it(e,"No value accessor for form control with"),t.validator=T.compose([t.validator,e.validator]),t.asyncValidator=T.composeAsync([t.asyncValidator,e.asyncValidator]),e.valueAccessor.writeValue(t.value),function(t,e){e.valueAccessor.registerOnChange(function(n){t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&tt(t,e)})}(t,e),function(t,e){t.registerOnChange(function(t,n){e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(function(){t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&tt(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),e.valueAccessor.setDisabledState&&t.registerOnDisabledChange(function(t){e.valueAccessor.setDisabledState(t)}),e._rawValidators.forEach(function(e){e.registerOnValidatorChange&&e.registerOnValidatorChange(function(){return t.updateValueAndValidity()})}),e._rawAsyncValidators.forEach(function(e){e.registerOnValidatorChange&&e.registerOnValidatorChange(function(){return t.updateValueAndValidity()})})}function tt(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function et(t,e){null==t&&it(e,"Cannot find control with"),t.validator=T.compose([t.validator,e.validator]),t.asyncValidator=T.composeAsync([t.asyncValidator,e.asyncValidator])}function nt(t){return it(t,"There is no FormControl instance attached to form control element with")}function it(t,e){var n;throw n=t.path.length>1?"path: '"+t.path.join(" -> ")+"'":t.path[0]?"name: '"+t.path+"'":"unspecified name attribute",new Error(e+" "+n)}function rt(t){return null!=t?T.compose(t.map(I)):null}function ot(t){return null!=t?T.composeAsync(t.map(k)):null}function at(t,e){if(!t.hasOwnProperty("model"))return!1;var n=t.model;return!!n.isFirstChange()||!Object(r["ɵlooseIdentical"])(e,n.currentValue)}var st=[d,F,R,q,Z,j];function ct(t,e){t._syncPendingControls(),e.forEach(function(t){var e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)})}function lt(t,e){if(!e)return null;Array.isArray(e)||it(t,"Value accessor was not provided as an array for form control with");var n=void 0,i=void 0,r=void 0;return e.forEach(function(e){var o;e.constructor===f?n=e:(o=e,st.some(function(t){return o.constructor===t})?(i&&it(t,"More than one built-in value accessor matches form control with"),i=e):(r&&it(t,"More than one custom value accessor matches form control with"),r=e))}),r||i||n||(it(t,"No valid value accessor for form control with"),null)}function ut(t,e){var n=t.indexOf(e);n>-1&&t.splice(n,1)}function dt(t,e,n,i){Object(r.isDevMode)()&&"never"!==i&&((null!==i&&"once"!==i||e._ngModelWarningSentOnce)&&("always"!==i||n._ngModelWarningSent)||(G.ngModelWarning(t),e._ngModelWarningSentOnce=!0,n._ngModelWarningSent=!0))}
  2151. /**
  2152. * @license
  2153. * Copyright Google Inc. All Rights Reserved.
  2154. *
  2155. * Use of this source code is governed by an MIT-style license that can be
  2156. * found in the LICENSE file at https://angular.io/license
  2157. */function pt(t){var e=ft(t)?t.validators:t;return Array.isArray(e)?rt(e):e||null}function ht(t,e){var n=ft(e)?e.asyncValidators:t;return Array.isArray(n)?ot(n):n||null}function ft(t){return null!=t&&!Array.isArray(t)&&"object"==typeof t}var gt=function(){function t(t,e){this.validator=t,this.asyncValidator=e,this._onCollectionChange=function(){},this.pristine=!0,this.touched=!1,this._onDisabledChange=[]}return Object.defineProperty(t.prototype,"parent",{get:function(){return this._parent},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"valid",{get:function(){return"VALID"===this.status},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"invalid",{get:function(){return"INVALID"===this.status},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pending",{get:function(){return"PENDING"==this.status},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"disabled",{get:function(){return"DISABLED"===this.status},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"enabled",{get:function(){return"DISABLED"!==this.status},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"dirty",{get:function(){return!this.pristine},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"untouched",{get:function(){return!this.touched},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"updateOn",{get:function(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"},enumerable:!0,configurable:!0}),t.prototype.setValidators=function(t){this.validator=pt(t)},t.prototype.setAsyncValidators=function(t){this.asyncValidator=ht(t)},t.prototype.clearValidators=function(){this.validator=null},t.prototype.clearAsyncValidators=function(){this.asyncValidator=null},t.prototype.markAsTouched=function(t){void 0===t&&(t={}),this.touched=!0,this._parent&&!t.onlySelf&&this._parent.markAsTouched(t)},t.prototype.markAllAsTouched=function(){this.markAsTouched({onlySelf:!0}),this._forEachChild(function(t){return t.markAllAsTouched()})},t.prototype.markAsUntouched=function(t){void 0===t&&(t={}),this.touched=!1,this._pendingTouched=!1,this._forEachChild(function(t){t.markAsUntouched({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)},t.prototype.markAsDirty=function(t){void 0===t&&(t={}),this.pristine=!1,this._parent&&!t.onlySelf&&this._parent.markAsDirty(t)},t.prototype.markAsPristine=function(t){void 0===t&&(t={}),this.pristine=!0,this._pendingDirty=!1,this._forEachChild(function(t){t.markAsPristine({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)},t.prototype.markAsPending=function(t){void 0===t&&(t={}),this.status="PENDING",!1!==t.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!t.onlySelf&&this._parent.markAsPending(t)},t.prototype.disable=function(t){void 0===t&&(t={});var e=this._parentMarkedDirty(t.onlySelf);this.status="DISABLED",this.errors=null,this._forEachChild(function(e){e.disable(Object(i.a)(Object(i.a)({},t),{onlySelf:!0}))}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object(i.a)(Object(i.a)({},t),{skipPristineCheck:e})),this._onDisabledChange.forEach(function(t){return t(!0)})},t.prototype.enable=function(t){void 0===t&&(t={});var e=this._parentMarkedDirty(t.onlySelf);this.status="VALID",this._forEachChild(function(e){e.enable(Object(i.a)(Object(i.a)({},t),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors(Object(i.a)(Object(i.a)({},t),{skipPristineCheck:e})),this._onDisabledChange.forEach(function(t){return t(!1)})},t.prototype._updateAncestors=function(t){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())},t.prototype.setParent=function(t){this._parent=t},t.prototype.updateValueAndValidity=function(t){void 0===t&&(t={}),this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),"VALID"!==this.status&&"PENDING"!==this.status||this._runAsyncValidator(t.emitEvent)),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!t.onlySelf&&this._parent.updateValueAndValidity(t)},t.prototype._updateTreeValidity=function(t){void 0===t&&(t={emitEvent:!0}),this._forEachChild(function(e){return e._updateTreeValidity(t)}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})},t.prototype._setInitialStatus=function(){this.status=this._allControlsDisabled()?"DISABLED":"VALID"},t.prototype._runValidator=function(){return this.validator?this.validator(this):null},t.prototype._runAsyncValidator=function(t){var e=this;if(this.asyncValidator){this.status="PENDING";var n=_(this.asyncValidator(this));this._asyncValidationSubscription=n.subscribe(function(n){return e.setErrors(n,{emitEvent:t})})}},t.prototype._cancelExistingSubscription=function(){this._asyncValidationSubscription&&this._asyncValidationSubscription.unsubscribe()},t.prototype.setErrors=function(t,e){void 0===e&&(e={}),this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)},t.prototype.get=function(t){return function(t,e,n){if(null==e)return null;if(Array.isArray(e)||(e=e.split(".")),Array.isArray(e)&&0===e.length)return null;var i=t;return e.forEach(function(t){i=i instanceof vt?i.controls.hasOwnProperty(t)?i.controls[t]:null:i instanceof yt&&i.at(t)||null}),i}(this,t)},t.prototype.getError=function(t,e){var n=e?this.get(e):this;return n&&n.errors?n.errors[t]:null},t.prototype.hasError=function(t,e){return!!this.getError(t,e)},Object.defineProperty(t.prototype,"root",{get:function(){for(var t=this;t._parent;)t=t._parent;return t},enumerable:!0,configurable:!0}),t.prototype._updateControlsErrors=function(t){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(t)},t.prototype._initObservables=function(){this.valueChanges=new r.EventEmitter,this.statusChanges=new r.EventEmitter},t.prototype._calculateStatus=function(){return this._allControlsDisabled()?"DISABLED":this.errors?"INVALID":this._anyControlsHaveStatus("PENDING")?"PENDING":this._anyControlsHaveStatus("INVALID")?"INVALID":"VALID"},t.prototype._anyControlsHaveStatus=function(t){return this._anyControls(function(e){return e.status===t})},t.prototype._anyControlsDirty=function(){return this._anyControls(function(t){return t.dirty})},t.prototype._anyControlsTouched=function(){return this._anyControls(function(t){return t.touched})},t.prototype._updatePristine=function(t){void 0===t&&(t={}),this.pristine=!this._anyControlsDirty(),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)},t.prototype._updateTouched=function(t){void 0===t&&(t={}),this.touched=this._anyControlsTouched(),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)},t.prototype._isBoxedValue=function(t){return"object"==typeof t&&null!==t&&2===Object.keys(t).length&&"value"in t&&"disabled"in t},t.prototype._registerOnCollectionChange=function(t){this._onCollectionChange=t},t.prototype._setUpdateStrategy=function(t){ft(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)},t.prototype._parentMarkedDirty=function(t){var e=this._parent&&this._parent.dirty;return!t&&e&&!this._parent._anyControlsDirty()},t}(),mt=function(t){function e(e,n,i){void 0===e&&(e=null);var r=t.call(this,pt(n),ht(i,n))||this;return r._onChange=[],r._applyFormState(e),r._setUpdateStrategy(n),r.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),r._initObservables(),r}return Object(i.c)(e,t),e.prototype.setValue=function(t,e){var n=this;void 0===e&&(e={}),this.value=this._pendingValue=t,this._onChange.length&&!1!==e.emitModelToViewChange&&this._onChange.forEach(function(t){return t(n.value,!1!==e.emitViewToModelChange)}),this.updateValueAndValidity(e)},e.prototype.patchValue=function(t,e){void 0===e&&(e={}),this.setValue(t,e)},e.prototype.reset=function(t,e){void 0===t&&(t=null),void 0===e&&(e={}),this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1},e.prototype._updateValue=function(){},e.prototype._anyControls=function(t){return!1},e.prototype._allControlsDisabled=function(){return this.disabled},e.prototype.registerOnChange=function(t){this._onChange.push(t)},e.prototype._clearChangeFns=function(){this._onChange=[],this._onDisabledChange=[],this._onCollectionChange=function(){}},e.prototype.registerOnDisabledChange=function(t){this._onDisabledChange.push(t)},e.prototype._forEachChild=function(t){},e.prototype._syncPendingControls=function(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))},e.prototype._applyFormState=function(t){this._isBoxedValue(t)?(this.value=this._pendingValue=t.value,t.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=t},e}(gt),vt=function(t){function e(e,n,i){var r=t.call(this,pt(n),ht(i,n))||this;return r.controls=e,r._initObservables(),r._setUpdateStrategy(n),r._setUpControls(),r.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),r}return Object(i.c)(e,t),e.prototype.registerControl=function(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)},e.prototype.addControl=function(t,e){this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()},e.prototype.removeControl=function(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(function(){}),delete this.controls[t],this.updateValueAndValidity(),this._onCollectionChange()},e.prototype.setControl=function(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(function(){}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity(),this._onCollectionChange()},e.prototype.contains=function(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled},e.prototype.setValue=function(t,e){var n=this;void 0===e&&(e={}),this._checkAllValuesPresent(t),Object.keys(t).forEach(function(i){n._throwIfControlMissing(i),n.controls[i].setValue(t[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)},e.prototype.patchValue=function(t,e){var n=this;void 0===e&&(e={}),Object.keys(t).forEach(function(i){n.controls[i]&&n.controls[i].patchValue(t[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)},e.prototype.reset=function(t,e){void 0===t&&(t={}),void 0===e&&(e={}),this._forEachChild(function(n,i){n.reset(t[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)},e.prototype.getRawValue=function(){return this._reduceChildren({},function(t,e,n){return t[n]=e instanceof mt?e.value:e.getRawValue(),t})},e.prototype._syncPendingControls=function(){var t=this._reduceChildren(!1,function(t,e){return!!e._syncPendingControls()||t});return t&&this.updateValueAndValidity({onlySelf:!0}),t},e.prototype._throwIfControlMissing=function(t){if(!Object.keys(this.controls).length)throw new Error("\n There are no form controls registered with this group yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.controls[t])throw new Error("Cannot find form control with name: "+t+".")},e.prototype._forEachChild=function(t){var e=this;Object.keys(this.controls).forEach(function(n){return t(e.controls[n],n)})},e.prototype._setUpControls=function(){var t=this;this._forEachChild(function(e){e.setParent(t),e._registerOnCollectionChange(t._onCollectionChange)})},e.prototype._updateValue=function(){this.value=this._reduceValue()},e.prototype._anyControls=function(t){var e=this,n=!1;return this._forEachChild(function(i,r){n=n||e.contains(r)&&t(i)}),n},e.prototype._reduceValue=function(){var t=this;return this._reduceChildren({},function(e,n,i){return(n.enabled||t.disabled)&&(e[i]=n.value),e})},e.prototype._reduceChildren=function(t,e){var n=t;return this._forEachChild(function(t,i){n=e(n,t,i)}),n},e.prototype._allControlsDisabled=function(){var t,e;try{for(var n=Object(i.j)(Object.keys(this.controls)),r=n.next();!r.done;r=n.next()){var o=r.value;if(this.controls[o].enabled)return!1}}catch(e){t={error:e}}finally{try{r&&!r.done&&(e=n.return)&&e.call(n)}finally{if(t)throw t.error}}return Object.keys(this.controls).length>0||this.disabled},e.prototype._checkAllValuesPresent=function(t){this._forEachChild(function(e,n){if(void 0===t[n])throw new Error("Must supply a value for form control with name: '"+n+"'.")})},e}(gt),yt=function(t){function e(e,n,i){var r=t.call(this,pt(n),ht(i,n))||this;return r.controls=e,r._initObservables(),r._setUpdateStrategy(n),r._setUpControls(),r.updateValueAndValidity({onlySelf:!0,emitEvent:!1}),r}return Object(i.c)(e,t),e.prototype.at=function(t){return this.controls[t]},e.prototype.push=function(t){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity(),this._onCollectionChange()},e.prototype.insert=function(t,e){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity()},e.prototype.removeAt=function(t){this.controls[t]&&this.controls[t]._registerOnCollectionChange(function(){}),this.controls.splice(t,1),this.updateValueAndValidity()},e.prototype.setControl=function(t,e){this.controls[t]&&this.controls[t]._registerOnCollectionChange(function(){}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity(),this._onCollectionChange()},Object.defineProperty(e.prototype,"length",{get:function(){return this.controls.length},enumerable:!0,configurable:!0}),e.prototype.setValue=function(t,e){var n=this;void 0===e&&(e={}),this._checkAllValuesPresent(t),t.forEach(function(t,i){n._throwIfControlMissing(i),n.at(i).setValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)},e.prototype.patchValue=function(t,e){var n=this;void 0===e&&(e={}),t.forEach(function(t,i){n.at(i)&&n.at(i).patchValue(t,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)},e.prototype.reset=function(t,e){void 0===t&&(t=[]),void 0===e&&(e={}),this._forEachChild(function(n,i){n.reset(t[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e),this._updateTouched(e),this.updateValueAndValidity(e)},e.prototype.getRawValue=function(){return this.controls.map(function(t){return t instanceof mt?t.value:t.getRawValue()})},e.prototype.clear=function(){this.controls.length<1||(this._forEachChild(function(t){return t._registerOnCollectionChange(function(){})}),this.controls.splice(0),this.updateValueAndValidity())},e.prototype._syncPendingControls=function(){var t=this.controls.reduce(function(t,e){return!!e._syncPendingControls()||t},!1);return t&&this.updateValueAndValidity({onlySelf:!0}),t},e.prototype._throwIfControlMissing=function(t){if(!this.controls.length)throw new Error("\n There are no form controls registered with this array yet. If you're using ngModel,\n you may want to check next tick (e.g. use setTimeout).\n ");if(!this.at(t))throw new Error("Cannot find form control at index "+t)},e.prototype._forEachChild=function(t){this.controls.forEach(function(e,n){t(e,n)})},e.prototype._updateValue=function(){var t=this;this.value=this.controls.filter(function(e){return e.enabled||t.disabled}).map(function(t){return t.value})},e.prototype._anyControls=function(t){return this.controls.some(function(e){return e.enabled&&t(e)})},e.prototype._setUpControls=function(){var t=this;this._forEachChild(function(e){return t._registerControl(e)})},e.prototype._checkAllValuesPresent=function(t){this._forEachChild(function(e,n){if(void 0===t[n])throw new Error("Must supply a value for form control at index: "+n+".")})},e.prototype._allControlsDisabled=function(){var t,e;try{for(var n=Object(i.j)(this.controls),r=n.next();!r.done;r=n.next())if(r.value.enabled)return!1}catch(e){t={error:e}}finally{try{r&&!r.done&&(e=n.return)&&e.call(n)}finally{if(t)throw t.error}}return this.controls.length>0||this.disabled},e.prototype._registerControl=function(t){t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)},e}(gt),bt={provide:m,useExisting:Object(r.forwardRef)(function(){return St})},wt=Promise.resolve(null),St=function(t){function e(e,n){var i=t.call(this)||this;return i.submitted=!1,i._directives=[],i.ngSubmit=new r.EventEmitter,i.form=new vt({},rt(e),ot(n)),i}return Object(i.c)(e,t),e.prototype.ngAfterViewInit=function(){this._setUpdateStrategy()},Object.defineProperty(e.prototype,"formDirective",{get:function(){return this},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"control",{get:function(){return this.form},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"path",{get:function(){return[]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"controls",{get:function(){return this.form.controls},enumerable:!0,configurable:!0}),e.prototype.addControl=function(t){var e=this;wt.then(function(){var n=e._findContainer(t.path);t.control=n.registerControl(t.name,t.control),$(t.control,t),t.control.updateValueAndValidity({emitEvent:!1}),e._directives.push(t)})},e.prototype.getControl=function(t){return this.form.get(t.path)},e.prototype.removeControl=function(t){var e=this;wt.then(function(){var n=e._findContainer(t.path);n&&n.removeControl(t.name),ut(e._directives,t)})},e.prototype.addFormGroup=function(t){var e=this;wt.then(function(){var n=e._findContainer(t.path),i=new vt({});et(i,t),n.registerControl(t.name,i),i.updateValueAndValidity({emitEvent:!1})})},e.prototype.removeFormGroup=function(t){var e=this;wt.then(function(){var n=e._findContainer(t.path);n&&n.removeControl(t.name)})},e.prototype.getFormGroup=function(t){return this.form.get(t.path)},e.prototype.updateModel=function(t,e){var n=this;wt.then(function(){n.form.get(t.path).setValue(e)})},e.prototype.setValue=function(t){this.control.setValue(t)},e.prototype.onSubmit=function(t){return this.submitted=!0,ct(this.form,this._directives),this.ngSubmit.emit(t),!1},e.prototype.onReset=function(){this.resetForm()},e.prototype.resetForm=function(t){void 0===t&&(t=void 0),this.form.reset(t),this.submitted=!1},e.prototype._setUpdateStrategy=function(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)},e.prototype._findContainer=function(t){return t.pop(),t.length?this.form.get(t):this.form},Object(i.b)([Object(r.Input)("ngFormOptions"),Object(i.d)("design:type",Object)],e.prototype,"options",void 0),(e=Object(i.b)([Object(i.e)(0,Object(r.Optional)()),Object(i.e)(0,Object(r.Self)()),Object(i.e)(0,Object(r.Inject)(E)),Object(i.e)(1,Object(r.Optional)()),Object(i.e)(1,Object(r.Self)()),Object(i.e)(1,Object(r.Inject)(C)),Object(i.d)("design:paramtypes",[Array,Array])],e)).ɵfac=function(t){return new(t||e)(r["ɵɵdirectiveInject"](E,10),r["ɵɵdirectiveInject"](C,10))},e.ɵdir=r["ɵɵdefineDirective"]({type:e,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(t,e){1&t&&r["ɵɵlistener"]("submit",function(t){return e.onSubmit(t)})("reset",function(){return e.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[r["ɵɵProvidersFeature"]([bt]),r["ɵɵInheritDefinitionFeature"]]}),e}(m),xt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}Object(i.c)(e,t),e.prototype.ngOnInit=function(){this._checkParentType(),this.formDirective.addFormGroup(this)},e.prototype.ngOnDestroy=function(){this.formDirective&&this.formDirective.removeFormGroup(this)},Object.defineProperty(e.prototype,"control",{get:function(){return this.formDirective.getFormGroup(this)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"path",{get:function(){return Q(null==this.name?this.name:this.name.toString(),this._parent)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"formDirective",{get:function(){return this._parent?this._parent.formDirective:null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"validator",{get:function(){return rt(this._validators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return ot(this._asyncValidators)},enumerable:!0,configurable:!0}),e.prototype._checkParentType=function(){},e.ɵfac=function(t){return n(t||e)},e.ɵdir=r["ɵɵdefineDirective"]({type:e,features:[r["ɵɵInheritDefinitionFeature"]]});var n=r["ɵɵgetInheritedFactory"](e);return e}(m),Mt=function(){function t(){}return t.modelParentException=function(){throw new Error('\n ngModel cannot be used to register form controls with a parent formGroup directive. Try using\n formGroup\'s partner directive "formControlName" instead. Example:\n\n '+U+'\n\n Or, if you\'d like to avoid registering this form control, indicate that it\'s standalone in ngModelOptions:\n\n Example:\n\n \n <div [formGroup]="myGroup">\n <input formControlName="firstName">\n <input [(ngModel)]="showMoreControls" [ngModelOptions]="{standalone: true}">\n </div>\n ')},t.formGroupNameException=function(){throw new Error("\n ngModel cannot be used to register form controls with a parent formGroupName or formArrayName directive.\n\n Option 1: Use formControlName instead of ngModel (reactive strategy):\n\n "+B+"\n\n Option 2: Update ngModel's parent be ngModelGroup (template-driven strategy):\n\n "+z)},t.missingNameException=function(){throw new Error('If ngModel is used within a form tag, either the name attribute must be set or the form\n control must be defined as \'standalone\' in ngModelOptions.\n\n Example 1: <input [(ngModel)]="person.firstName" name="first">\n Example 2: <input [(ngModel)]="person.firstName" [ngModelOptions]="{standalone: true}">')},t.modelGroupParentException=function(){throw new Error("\n ngModelGroup cannot be used with a parent formGroup directive.\n\n Option 1: Use formGroupName instead of ngModelGroup (reactive strategy):\n\n "+B+"\n\n Option 2: Use a regular form tag instead of the formGroup directive (template-driven strategy):\n\n "+z)},t}(),Et={provide:m,useExisting:Object(r.forwardRef)(function(){return Ct})},Ct=function(t){function e(e,n,i){var r=t.call(this)||this;return r._parent=e,r._validators=n,r._asyncValidators=i,r}var n;return Object(i.c)(e,t),n=e,e.prototype._checkParentType=function(){this._parent instanceof n||this._parent instanceof St||Mt.modelGroupParentException()},Object(i.b)([Object(r.Input)("ngModelGroup"),Object(i.d)("design:type",String)],e.prototype,"name",void 0),(e=n=Object(i.b)([Object(i.e)(0,Object(r.Host)()),Object(i.e)(0,Object(r.SkipSelf)()),Object(i.e)(1,Object(r.Optional)()),Object(i.e)(1,Object(r.Self)()),Object(i.e)(1,Object(r.Inject)(E)),Object(i.e)(2,Object(r.Optional)()),Object(i.e)(2,Object(r.Self)()),Object(i.e)(2,Object(r.Inject)(C)),Object(i.d)("design:paramtypes",[m,Array,Array])],e)).ɵfac=function(t){return new(t||e)(r["ɵɵdirectiveInject"](m,5),r["ɵɵdirectiveInject"](E,10),r["ɵɵdirectiveInject"](C,10))},e.ɵdir=r["ɵɵdefineDirective"]({type:e,selectors:[["","ngModelGroup",""]],inputs:{name:["ngModelGroup","name"]},exportAs:["ngModelGroup"],features:[r["ɵɵProvidersFeature"]([Et]),r["ɵɵInheritDefinitionFeature"]]}),e}(xt),At={provide:y,useExisting:Object(r.forwardRef)(function(){return Ot})},Tt=Promise.resolve(null),Ot=function(t){function e(e,n,i,o){var a=t.call(this)||this;return a.control=new mt,a._registered=!1,a.update=new r.EventEmitter,a._parent=e,a._rawValidators=n||[],a._rawAsyncValidators=i||[],a.valueAccessor=lt(a,o),a}return Object(i.c)(e,t),e.prototype.ngOnChanges=function(t){this._checkForErrors(),this._registered||this._setUpControl(),"isDisabled"in t&&this._updateDisabled(t),at(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)},e.prototype.ngOnDestroy=function(){this.formDirective&&this.formDirective.removeControl(this)},Object.defineProperty(e.prototype,"path",{get:function(){return this._parent?Q(this.name,this._parent):[this.name]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"formDirective",{get:function(){return this._parent?this._parent.formDirective:null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"validator",{get:function(){return rt(this._rawValidators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return ot(this._rawAsyncValidators)},enumerable:!0,configurable:!0}),e.prototype.viewToModelUpdate=function(t){this.viewModel=t,this.update.emit(t)},e.prototype._setUpControl=function(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0},e.prototype._setUpdateStrategy=function(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)},e.prototype._isStandalone=function(){return!this._parent||!(!this.options||!this.options.standalone)},e.prototype._setUpStandalone=function(){$(this.control,this),this.control.updateValueAndValidity({emitEvent:!1})},e.prototype._checkForErrors=function(){this._isStandalone()||this._checkParentType(),this._checkName()},e.prototype._checkParentType=function(){!(this._parent instanceof Ct)&&this._parent instanceof xt?Mt.formGroupNameException():this._parent instanceof Ct||this._parent instanceof St||Mt.modelParentException()},e.prototype._checkName=function(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()||this.name||Mt.missingNameException()},e.prototype._updateValue=function(t){var e=this;Tt.then(function(){e.control.setValue(t,{emitViewToModelChange:!1})})},e.prototype._updateDisabled=function(t){var e=this,n=t.isDisabled.currentValue,i=""===n||n&&"false"!==n;Tt.then(function(){i&&!e.control.disabled?e.control.disable():!i&&e.control.disabled&&e.control.enable()})},Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",String)],e.prototype,"name",void 0),Object(i.b)([Object(r.Input)("disabled"),Object(i.d)("design:type",Boolean)],e.prototype,"isDisabled",void 0),Object(i.b)([Object(r.Input)("ngModel"),Object(i.d)("design:type",Object)],e.prototype,"model",void 0),Object(i.b)([Object(r.Input)("ngModelOptions"),Object(i.d)("design:type",Object)],e.prototype,"options",void 0),Object(i.b)([Object(r.Output)("ngModelChange"),Object(i.d)("design:type",Object)],e.prototype,"update",void 0),(e=Object(i.b)([Object(i.e)(0,Object(r.Optional)()),Object(i.e)(0,Object(r.Host)()),Object(i.e)(1,Object(r.Optional)()),Object(i.e)(1,Object(r.Self)()),Object(i.e)(1,Object(r.Inject)(E)),Object(i.e)(2,Object(r.Optional)()),Object(i.e)(2,Object(r.Self)()),Object(i.e)(2,Object(r.Inject)(C)),Object(i.e)(3,Object(r.Optional)()),Object(i.e)(3,Object(r.Self)()),Object(i.e)(3,Object(r.Inject)(l)),Object(i.d)("design:paramtypes",[m,Array,Array,Array])],e)).ɵfac=function(t){return new(t||e)(r["ɵɵdirectiveInject"](m,9),r["ɵɵdirectiveInject"](E,10),r["ɵɵdirectiveInject"](C,10),r["ɵɵdirectiveInject"](l,10))},e.ɵdir=r["ɵɵdefineDirective"]({type:e,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[r["ɵɵProvidersFeature"]([At]),r["ɵɵInheritDefinitionFeature"],r["ɵɵNgOnChangesFeature"]]}),e}(y),_t=function(){function t(){}return t.ɵfac=function(e){return new(e||t)},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),t}(),Pt=new r.InjectionToken("NgModelWithFormControlWarning"),It={provide:y,useExisting:Object(r.forwardRef)(function(){return kt})},kt=function(t){function e(e,n,i,o){var a=t.call(this)||this;return a._ngModelWarningConfig=o,a.update=new r.EventEmitter,a._ngModelWarningSent=!1,a._rawValidators=e||[],a._rawAsyncValidators=n||[],a.valueAccessor=lt(a,i),a}var n;return Object(i.c)(e,t),n=e,Object.defineProperty(e.prototype,"isDisabled",{set:function(t){G.disabledAttrWarning()},enumerable:!0,configurable:!0}),e.prototype.ngOnChanges=function(t){this._isControlChanged(t)&&($(this.form,this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this.form.updateValueAndValidity({emitEvent:!1})),at(t,this.viewModel)&&(dt("formControl",n,this,this._ngModelWarningConfig),this.form.setValue(this.model),this.viewModel=this.model)},Object.defineProperty(e.prototype,"path",{get:function(){return[]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"validator",{get:function(){return rt(this._rawValidators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return ot(this._rawAsyncValidators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"control",{get:function(){return this.form},enumerable:!0,configurable:!0}),e.prototype.viewToModelUpdate=function(t){this.viewModel=t,this.update.emit(t)},e.prototype._isControlChanged=function(t){return t.hasOwnProperty("form")},e._ngModelWarningSentOnce=!1,Object(i.b)([Object(r.Input)("formControl"),Object(i.d)("design:type",mt)],e.prototype,"form",void 0),Object(i.b)([Object(r.Input)("disabled"),Object(i.d)("design:type",Boolean),Object(i.d)("design:paramtypes",[Boolean])],e.prototype,"isDisabled",null),Object(i.b)([Object(r.Input)("ngModel"),Object(i.d)("design:type",Object)],e.prototype,"model",void 0),Object(i.b)([Object(r.Output)("ngModelChange"),Object(i.d)("design:type",Object)],e.prototype,"update",void 0),(e=n=Object(i.b)([Object(i.e)(0,Object(r.Optional)()),Object(i.e)(0,Object(r.Self)()),Object(i.e)(0,Object(r.Inject)(E)),Object(i.e)(1,Object(r.Optional)()),Object(i.e)(1,Object(r.Self)()),Object(i.e)(1,Object(r.Inject)(C)),Object(i.e)(2,Object(r.Optional)()),Object(i.e)(2,Object(r.Self)()),Object(i.e)(2,Object(r.Inject)(l)),Object(i.e)(3,Object(r.Optional)()),Object(i.e)(3,Object(r.Inject)(Pt)),Object(i.d)("design:paramtypes",[Array,Array,Array,Object])],e)).ɵfac=function(t){return new(t||e)(r["ɵɵdirectiveInject"](E,10),r["ɵɵdirectiveInject"](C,10),r["ɵɵdirectiveInject"](l,10),r["ɵɵdirectiveInject"](Pt,8))},e.ɵdir=r["ɵɵdefineDirective"]({type:e,selectors:[["","formControl",""]],inputs:{isDisabled:["disabled","isDisabled"],form:["formControl","form"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],features:[r["ɵɵProvidersFeature"]([It]),r["ɵɵInheritDefinitionFeature"],r["ɵɵNgOnChangesFeature"]]}),e}(y),Dt={provide:m,useExisting:Object(r.forwardRef)(function(){return Rt})},Rt=function(t){function e(e,n){var i=t.call(this)||this;return i._validators=e,i._asyncValidators=n,i.submitted=!1,i.directives=[],i.form=null,i.ngSubmit=new r.EventEmitter,i}return Object(i.c)(e,t),e.prototype.ngOnChanges=function(t){this._checkFormPresent(),t.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations())},Object.defineProperty(e.prototype,"formDirective",{get:function(){return this},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"control",{get:function(){return this.form},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"path",{get:function(){return[]},enumerable:!0,configurable:!0}),e.prototype.addControl=function(t){var e=this.form.get(t.path);return $(e,t),e.updateValueAndValidity({emitEvent:!1}),this.directives.push(t),e},e.prototype.getControl=function(t){return this.form.get(t.path)},e.prototype.removeControl=function(t){ut(this.directives,t)},e.prototype.addFormGroup=function(t){var e=this.form.get(t.path);et(e,t),e.updateValueAndValidity({emitEvent:!1})},e.prototype.removeFormGroup=function(t){},e.prototype.getFormGroup=function(t){return this.form.get(t.path)},e.prototype.addFormArray=function(t){var e=this.form.get(t.path);et(e,t),e.updateValueAndValidity({emitEvent:!1})},e.prototype.removeFormArray=function(t){},e.prototype.getFormArray=function(t){return this.form.get(t.path)},e.prototype.updateModel=function(t,e){this.form.get(t.path).setValue(e)},e.prototype.onSubmit=function(t){return this.submitted=!0,ct(this.form,this.directives),this.ngSubmit.emit(t),!1},e.prototype.onReset=function(){this.resetForm()},e.prototype.resetForm=function(t){void 0===t&&(t=void 0),this.form.reset(t),this.submitted=!1},e.prototype._updateDomValue=function(){var t=this;this.directives.forEach(function(e){var n=t.form.get(e.path);e.control!==n&&(function(t,e){e.valueAccessor.registerOnChange(function(){return nt(e)}),e.valueAccessor.registerOnTouched(function(){return nt(e)}),e._rawValidators.forEach(function(t){t.registerOnValidatorChange&&t.registerOnValidatorChange(null)}),e._rawAsyncValidators.forEach(function(t){t.registerOnValidatorChange&&t.registerOnValidatorChange(null)}),t&&t._clearChangeFns()}(e.control,e),n&&$(n,e),e.control=n)}),this.form._updateTreeValidity({emitEvent:!1})},e.prototype._updateRegistrations=function(){var t=this;this.form._registerOnCollectionChange(function(){return t._updateDomValue()}),this._oldForm&&this._oldForm._registerOnCollectionChange(function(){}),this._oldForm=this.form},e.prototype._updateValidators=function(){var t=rt(this._validators);this.form.validator=T.compose([this.form.validator,t]);var e=ot(this._asyncValidators);this.form.asyncValidator=T.composeAsync([this.form.asyncValidator,e])},e.prototype._checkFormPresent=function(){this.form||G.missingFormException()},Object(i.b)([Object(r.Input)("formGroup"),Object(i.d)("design:type",vt)],e.prototype,"form",void 0),Object(i.b)([Object(r.Output)(),Object(i.d)("design:type",Object)],e.prototype,"ngSubmit",void 0),(e=Object(i.b)([Object(i.e)(0,Object(r.Optional)()),Object(i.e)(0,Object(r.Self)()),Object(i.e)(0,Object(r.Inject)(E)),Object(i.e)(1,Object(r.Optional)()),Object(i.e)(1,Object(r.Self)()),Object(i.e)(1,Object(r.Inject)(C)),Object(i.d)("design:paramtypes",[Array,Array])],e)).ɵfac=function(t){return new(t||e)(r["ɵɵdirectiveInject"](E,10),r["ɵɵdirectiveInject"](C,10))},e.ɵdir=r["ɵɵdefineDirective"]({type:e,selectors:[["","formGroup",""]],hostBindings:function(t,e){1&t&&r["ɵɵlistener"]("submit",function(t){return e.onSubmit(t)})("reset",function(){return e.onReset()})},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[r["ɵɵProvidersFeature"]([Dt]),r["ɵɵInheritDefinitionFeature"],r["ɵɵNgOnChangesFeature"]]}),e}(m),Lt={provide:m,useExisting:Object(r.forwardRef)(function(){return Nt})},Nt=function(t){function e(e,n,i){var r=t.call(this)||this;return r._parent=e,r._validators=n,r._asyncValidators=i,r}return Object(i.c)(e,t),e.prototype._checkParentType=function(){Ft(this._parent)&&G.groupParentException()},Object(i.b)([Object(r.Input)("formGroupName"),Object(i.d)("design:type",Object)],e.prototype,"name",void 0),(e=Object(i.b)([Object(i.e)(0,Object(r.Optional)()),Object(i.e)(0,Object(r.Host)()),Object(i.e)(0,Object(r.SkipSelf)()),Object(i.e)(1,Object(r.Optional)()),Object(i.e)(1,Object(r.Self)()),Object(i.e)(1,Object(r.Inject)(E)),Object(i.e)(2,Object(r.Optional)()),Object(i.e)(2,Object(r.Self)()),Object(i.e)(2,Object(r.Inject)(C)),Object(i.d)("design:paramtypes",[m,Array,Array])],e)).ɵfac=function(t){return new(t||e)(r["ɵɵdirectiveInject"](m,13),r["ɵɵdirectiveInject"](E,10),r["ɵɵdirectiveInject"](C,10))},e.ɵdir=r["ɵɵdefineDirective"]({type:e,selectors:[["","formGroupName",""]],inputs:{name:["formGroupName","name"]},features:[r["ɵɵProvidersFeature"]([Lt]),r["ɵɵInheritDefinitionFeature"]]}),e}(xt),jt={provide:m,useExisting:Object(r.forwardRef)(function(){return Vt})},Vt=function(t){function e(e,n,i){var r=t.call(this)||this;return r._parent=e,r._validators=n,r._asyncValidators=i,r}return Object(i.c)(e,t),e.prototype.ngOnInit=function(){this._checkParentType(),this.formDirective.addFormArray(this)},e.prototype.ngOnDestroy=function(){this.formDirective&&this.formDirective.removeFormArray(this)},Object.defineProperty(e.prototype,"control",{get:function(){return this.formDirective.getFormArray(this)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"formDirective",{get:function(){return this._parent?this._parent.formDirective:null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"path",{get:function(){return Q(null==this.name?this.name:this.name.toString(),this._parent)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"validator",{get:function(){return rt(this._validators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return ot(this._asyncValidators)},enumerable:!0,configurable:!0}),e.prototype._checkParentType=function(){Ft(this._parent)&&G.arrayParentException()},Object(i.b)([Object(r.Input)("formArrayName"),Object(i.d)("design:type",Object)],e.prototype,"name",void 0),(e=Object(i.b)([Object(i.e)(0,Object(r.Optional)()),Object(i.e)(0,Object(r.Host)()),Object(i.e)(0,Object(r.SkipSelf)()),Object(i.e)(1,Object(r.Optional)()),Object(i.e)(1,Object(r.Self)()),Object(i.e)(1,Object(r.Inject)(E)),Object(i.e)(2,Object(r.Optional)()),Object(i.e)(2,Object(r.Self)()),Object(i.e)(2,Object(r.Inject)(C)),Object(i.d)("design:paramtypes",[m,Array,Array])],e)).ɵfac=function(t){return new(t||e)(r["ɵɵdirectiveInject"](m,13),r["ɵɵdirectiveInject"](E,10),r["ɵɵdirectiveInject"](C,10))},e.ɵdir=r["ɵɵdefineDirective"]({type:e,selectors:[["","formArrayName",""]],inputs:{name:["formArrayName","name"]},features:[r["ɵɵProvidersFeature"]([jt]),r["ɵɵInheritDefinitionFeature"]]}),e}(m);function Ft(t){return!(t instanceof Nt||t instanceof Rt||t instanceof Vt)}
  2158. /**
  2159. * @license
  2160. * Copyright Google Inc. All Rights Reserved.
  2161. *
  2162. * Use of this source code is governed by an MIT-style license that can be
  2163. * found in the LICENSE file at https://angular.io/license
  2164. */var Ut={provide:y,useExisting:Object(r.forwardRef)(function(){return Bt})},Bt=function(t){function e(e,n,i,o,a){var s=t.call(this)||this;return s._ngModelWarningConfig=a,s._added=!1,s.update=new r.EventEmitter,s._ngModelWarningSent=!1,s._parent=e,s._rawValidators=n||[],s._rawAsyncValidators=i||[],s.valueAccessor=lt(s,o),s}var n;return Object(i.c)(e,t),n=e,Object.defineProperty(e.prototype,"isDisabled",{set:function(t){G.disabledAttrWarning()},enumerable:!0,configurable:!0}),e.prototype.ngOnChanges=function(t){this._added||this._setUpControl(),at(t,this.viewModel)&&(dt("formControlName",n,this,this._ngModelWarningConfig),this.viewModel=this.model,this.formDirective.updateModel(this,this.model))},e.prototype.ngOnDestroy=function(){this.formDirective&&this.formDirective.removeControl(this)},e.prototype.viewToModelUpdate=function(t){this.viewModel=t,this.update.emit(t)},Object.defineProperty(e.prototype,"path",{get:function(){return Q(null==this.name?this.name:this.name.toString(),this._parent)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"formDirective",{get:function(){return this._parent?this._parent.formDirective:null},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"validator",{get:function(){return rt(this._rawValidators)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"asyncValidator",{get:function(){return ot(this._rawAsyncValidators)},enumerable:!0,configurable:!0}),e.prototype._checkParentType=function(){!(this._parent instanceof Nt)&&this._parent instanceof xt?G.ngModelGroupException():this._parent instanceof Nt||this._parent instanceof Rt||this._parent instanceof Vt||G.controlParentException()},e.prototype._setUpControl=function(){this._checkParentType(),this.control=this.formDirective.addControl(this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this._added=!0},e._ngModelWarningSentOnce=!1,Object(i.b)([Object(r.Input)("formControlName"),Object(i.d)("design:type",Object)],e.prototype,"name",void 0),Object(i.b)([Object(r.Input)("disabled"),Object(i.d)("design:type",Boolean),Object(i.d)("design:paramtypes",[Boolean])],e.prototype,"isDisabled",null),Object(i.b)([Object(r.Input)("ngModel"),Object(i.d)("design:type",Object)],e.prototype,"model",void 0),Object(i.b)([Object(r.Output)("ngModelChange"),Object(i.d)("design:type",Object)],e.prototype,"update",void 0),(e=n=Object(i.b)([Object(i.e)(0,Object(r.Optional)()),Object(i.e)(0,Object(r.Host)()),Object(i.e)(0,Object(r.SkipSelf)()),Object(i.e)(1,Object(r.Optional)()),Object(i.e)(1,Object(r.Self)()),Object(i.e)(1,Object(r.Inject)(E)),Object(i.e)(2,Object(r.Optional)()),Object(i.e)(2,Object(r.Self)()),Object(i.e)(2,Object(r.Inject)(C)),Object(i.e)(3,Object(r.Optional)()),Object(i.e)(3,Object(r.Self)()),Object(i.e)(3,Object(r.Inject)(l)),Object(i.e)(4,Object(r.Optional)()),Object(i.e)(4,Object(r.Inject)(Pt)),Object(i.d)("design:paramtypes",[m,Array,Array,Array,Object])],e)).ɵfac=function(t){return new(t||e)(r["ɵɵdirectiveInject"](m,13),r["ɵɵdirectiveInject"](E,10),r["ɵɵdirectiveInject"](C,10),r["ɵɵdirectiveInject"](l,10),r["ɵɵdirectiveInject"](Pt,8))},e.ɵdir=r["ɵɵdefineDirective"]({type:e,selectors:[["","formControlName",""]],inputs:{isDisabled:["disabled","isDisabled"],name:["formControlName","name"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},features:[r["ɵɵProvidersFeature"]([Ut]),r["ɵɵInheritDefinitionFeature"],r["ɵɵNgOnChangesFeature"]]}),e}(y),zt={provide:E,useExisting:Object(r.forwardRef)(function(){return Ht}),multi:!0},Gt={provide:E,useExisting:Object(r.forwardRef)(function(){return Wt}),multi:!0},Ht=function(){function t(){}return Object.defineProperty(t.prototype,"required",{get:function(){return this._required},set:function(t){this._required=null!=t&&!1!==t&&""+t!="false",this._onChange&&this._onChange()},enumerable:!0,configurable:!0}),t.prototype.validate=function(t){return this.required?T.required(t):null},t.prototype.registerOnValidatorChange=function(t){this._onChange=t},Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",Object),Object(i.d)("design:paramtypes",[Object])],t.prototype,"required",null),t.ɵfac=function(e){return new(e||t)},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(t,e){2&t&&r["ɵɵattribute"]("required",e.required?"":null)},inputs:{required:"required"},features:[r["ɵɵProvidersFeature"]([zt])]}),t}(),Wt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}Object(i.c)(e,t),e.prototype.validate=function(t){return this.required?T.requiredTrue(t):null},e.ɵfac=function(t){return n(t||e)},e.ɵdir=r["ɵɵdefineDirective"]({type:e,selectors:[["input","type","checkbox","required","","formControlName",""],["input","type","checkbox","required","","formControl",""],["input","type","checkbox","required","","ngModel",""]],hostVars:1,hostBindings:function(t,e){2&t&&r["ɵɵattribute"]("required",e.required?"":null)},features:[r["ɵɵProvidersFeature"]([Gt]),r["ɵɵInheritDefinitionFeature"]]});var n=r["ɵɵgetInheritedFactory"](e);return e}(Ht),qt={provide:E,useExisting:Object(r.forwardRef)(function(){return Kt}),multi:!0},Kt=function(){function t(){}return Object.defineProperty(t.prototype,"email",{set:function(t){this._enabled=""===t||!0===t||"true"===t,this._onChange&&this._onChange()},enumerable:!0,configurable:!0}),t.prototype.validate=function(t){return this._enabled?T.email(t):null},t.prototype.registerOnValidatorChange=function(t){this._onChange=t},Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",Object),Object(i.d)("design:paramtypes",[Object])],t.prototype,"email",null),t.ɵfac=function(e){return new(e||t)},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","email","","formControlName",""],["","email","","formControl",""],["","email","","ngModel",""]],inputs:{email:"email"},features:[r["ɵɵProvidersFeature"]([qt])]}),t}(),Xt={provide:E,useExisting:Object(r.forwardRef)(function(){return Yt}),multi:!0},Yt=function(){function t(){}return t.prototype.ngOnChanges=function(t){"minlength"in t&&(this._createValidator(),this._onChange&&this._onChange())},t.prototype.validate=function(t){return null==this.minlength?null:this._validator(t)},t.prototype.registerOnValidatorChange=function(t){this._onChange=t},t.prototype._createValidator=function(){this._validator=T.minLength("number"==typeof this.minlength?this.minlength:parseInt(this.minlength,10))},Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",Object)],t.prototype,"minlength",void 0),t.ɵfac=function(e){return new(e||t)},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","minlength","","formControlName",""],["","minlength","","formControl",""],["","minlength","","ngModel",""]],hostVars:1,hostBindings:function(t,e){2&t&&r["ɵɵattribute"]("minlength",e.minlength?e.minlength:null)},inputs:{minlength:"minlength"},features:[r["ɵɵProvidersFeature"]([Xt]),r["ɵɵNgOnChangesFeature"]]}),t}(),Zt={provide:E,useExisting:Object(r.forwardRef)(function(){return Jt}),multi:!0},Jt=function(){function t(){}return t.prototype.ngOnChanges=function(t){"maxlength"in t&&(this._createValidator(),this._onChange&&this._onChange())},t.prototype.validate=function(t){return null!=this.maxlength?this._validator(t):null},t.prototype.registerOnValidatorChange=function(t){this._onChange=t},t.prototype._createValidator=function(){this._validator=T.maxLength("number"==typeof this.maxlength?this.maxlength:parseInt(this.maxlength,10))},Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",Object)],t.prototype,"maxlength",void 0),t.ɵfac=function(e){return new(e||t)},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","maxlength","","formControlName",""],["","maxlength","","formControl",""],["","maxlength","","ngModel",""]],hostVars:1,hostBindings:function(t,e){2&t&&r["ɵɵattribute"]("maxlength",e.maxlength?e.maxlength:null)},inputs:{maxlength:"maxlength"},features:[r["ɵɵProvidersFeature"]([Zt]),r["ɵɵNgOnChangesFeature"]]}),t}(),Qt={provide:E,useExisting:Object(r.forwardRef)(function(){return $t}),multi:!0},$t=function(){function t(){}return t.prototype.ngOnChanges=function(t){"pattern"in t&&(this._createValidator(),this._onChange&&this._onChange())},t.prototype.validate=function(t){return this._validator(t)},t.prototype.registerOnValidatorChange=function(t){this._onChange=t},t.prototype._createValidator=function(){this._validator=T.pattern(this.pattern)},Object(i.b)([Object(r.Input)(),Object(i.d)("design:type",Object)],t.prototype,"pattern",void 0),t.ɵfac=function(e){return new(e||t)},t.ɵdir=r["ɵɵdefineDirective"]({type:t,selectors:[["","pattern","","formControlName",""],["","pattern","","formControl",""],["","pattern","","ngModel",""]],hostVars:1,hostBindings:function(t,e){2&t&&r["ɵɵattribute"]("pattern",e.pattern?e.pattern:null)},inputs:{pattern:"pattern"},features:[r["ɵɵProvidersFeature"]([Qt]),r["ɵɵNgOnChangesFeature"]]}),t}(),te=[_t,K,J,f,R,F,d,q,Z,j,S,x,Ht,Yt,Jt,$t,Wt,Kt],ee=[Ot,Ct,St],ne=[kt,Rt,Bt,Nt,Vt],ie=function(){function t(){}return t.ɵmod=r["ɵɵdefineNgModule"]({type:t}),t.ɵinj=r["ɵɵdefineInjector"]({factory:function(e){return new(e||t)}}),("undefined"==typeof ngJitMode||ngJitMode)&&r["ɵɵsetNgModuleScope"](t,{declarations:[_t,K,J,f,R,F,d,q,Z,j,S,x,Ht,Yt,Jt,$t,Wt,Kt],exports:[_t,K,J,f,R,F,d,q,Z,j,S,x,Ht,Yt,Jt,$t,Wt,Kt]}),t}(),re=function(){function t(){}return t.prototype.group=function(t,e){void 0===e&&(e=null);var n=this._reduceControls(t),i=null,r=null,o=void 0;return null!=e&&(
  2165. /**
  2166. * @license
  2167. * Copyright Google Inc. All Rights Reserved.
  2168. *
  2169. * Use of this source code is governed by an MIT-style license that can be
  2170. * found in the LICENSE file at https://angular.io/license
  2171. */
  2172. function(t){return void 0!==t.asyncValidators||void 0!==t.validators||void 0!==t.updateOn}(e)?(i=null!=e.validators?e.validators:null,r=null!=e.asyncValidators?e.asyncValidators:null,o=null!=e.updateOn?e.updateOn:void 0):(i=null!=e.validator?e.validator:null,r=null!=e.asyncValidator?e.asyncValidator:null)),new vt(n,{asyncValidators:r,updateOn:o,validators:i})},t.prototype.control=function(t,e,n){return new mt(t,e,n)},t.prototype.array=function(t,e,n){var i=this,r=t.map(function(t){return i._createControl(t)});return new yt(r,e,n)},t.prototype._reduceControls=function(t){var e=this,n={};return Object.keys(t).forEach(function(i){n[i]=e._createControl(t[i])}),n},t.prototype._createControl=function(t){if(t instanceof mt||t instanceof vt||t instanceof yt)return t;if(Array.isArray(t)){var e=t[0],n=t.length>1?t[1]:null,i=t.length>2?t[2]:null;return this.control(e,n,i)}return this.control(t)},t.ɵfac=function(e){return new(e||t)},t.ɵprov=r["ɵɵdefineInjectable"]({token:t,factory:function(e){return t.ɵfac(e)}}),t}(),oe=new r.Version("9.1.9"),ae=function(){function t(){}return t.ɵmod=r["ɵɵdefineNgModule"]({type:t}),t.ɵinj=r["ɵɵdefineInjector"]({factory:function(e){return new(e||t)},providers:[N],imports:[ie]}),("undefined"==typeof ngJitMode||ngJitMode)&&r["ɵɵsetNgModuleScope"](t,{declarations:[Ot,Ct,St],exports:[ie,Ot,Ct,St]}),t}(),se=function(){function t(){}var e;return e=t,t.withConfig=function(t){return{ngModule:e,providers:[{provide:Pt,useValue:t.warnOnNgModelWithFormControl}]}},t.ɵmod=r["ɵɵdefineNgModule"]({type:t}),t.ɵinj=r["ɵɵdefineInjector"]({factory:function(e){return new(e||t)},providers:[re,N],imports:[ie]}),("undefined"==typeof ngJitMode||ngJitMode)&&r["ɵɵsetNgModuleScope"](t,{declarations:[kt,Rt,Bt,Nt,Vt],exports:[ie,kt,Rt,Bt,Nt,Vt]}),t}()},function(t,e,n){"use strict";n.r(e),n.d(e,"MatAnchor",function(){return p}),n.d(e,"MatButton",function(){return d}),n.d(e,"MatButtonModule",function(){return h});var i=n(0),r=n(47),o=n(1),a=n(63),s=n(95),c=["mat-button",""],l=["*"],u=["mat-button","mat-flat-button","mat-icon-button","mat-raised-button","mat-stroked-button","mat-mini-fab","mat-fab"],d=function(t){function e(e,n,i){var r,a,s=t.call(this,e)||this;s._focusMonitor=n,s._animationMode=i,s.isRoundButton=s._hasHostAttributes("mat-fab","mat-mini-fab"),s.isIconButton=s._hasHostAttributes("mat-icon-button");try{for(var c=Object(o.j)(u),l=c.next();!l.done;l=c.next()){var d=l.value;s._hasHostAttributes(d)&&s._getHostElement().classList.add(d)}}catch(t){r={error:t}}finally{try{l&&!l.done&&(a=c.return)&&a.call(c)}finally{if(r)throw r.error}}return e.nativeElement.classList.add("mat-button-base"),s._focusMonitor.monitor(s._elementRef,!0),s.isRoundButton&&(s.color="accent"),s}return Object(o.c)(e,t),e.prototype.ngOnDestroy=function(){this._focusMonitor.stopMonitoring(this._elementRef)},e.prototype.focus=function(t,e){void 0===t&&(t="program"),this._focusMonitor.focusVia(this._getHostElement(),t,e)},e.prototype._getHostElement=function(){return this._elementRef.nativeElement},e.prototype._isRippleDisabled=function(){return this.disableRipple||this.disabled},e.prototype._hasHostAttributes=function(){for(var t=this,e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return e.some(function(e){return t._getHostElement().hasAttribute(e)})},e.ctorParameters=function(){return[{type:i.ElementRef},{type:a.h},{type:String,decorators:[{type:i.Optional},{type:i.Inject,args:[s.ANIMATION_MODULE_TYPE]}]}]},e.propDecorators={ripple:[{type:i.ViewChild,args:[r.MatRipple]}]},e.ɵfac=function(t){return new(t||e)(i["ɵɵdirectiveInject"](i.ElementRef),i["ɵɵdirectiveInject"](a.h),i["ɵɵdirectiveInject"](s.ANIMATION_MODULE_TYPE,8))},e.ɵcmp=i["ɵɵdefineComponent"]({type:e,selectors:[["button","mat-button",""],["button","mat-raised-button",""],["button","mat-icon-button",""],["button","mat-fab",""],["button","mat-mini-fab",""],["button","mat-stroked-button",""],["button","mat-flat-button",""]],viewQuery:function(t,e){var n;1&t&&i["ɵɵviewQuery"](r.MatRipple,!0),2&t&&i["ɵɵqueryRefresh"](n=i["ɵɵloadQuery"]())&&(e.ripple=n.first)},hostAttrs:[1,"mat-focus-indicator"],hostVars:3,hostBindings:function(t,e){2&t&&(i["ɵɵattribute"]("disabled",e.disabled||null),i["ɵɵclassProp"]("_mat-animation-noopable","NoopAnimations"===e._animationMode))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color"},exportAs:["matButton"],features:[i["ɵɵInheritDefinitionFeature"]],attrs:c,ngContentSelectors:l,decls:4,vars:5,consts:[[1,"mat-button-wrapper"],["matRipple","",1,"mat-button-ripple",3,"matRippleDisabled","matRippleCentered","matRippleTrigger"],[1,"mat-button-focus-overlay"]],template:function(t,e){1&t&&(i["ɵɵprojectionDef"](),i["ɵɵelementStart"](0,"span",0),i["ɵɵprojection"](1),i["ɵɵelementEnd"](),i["ɵɵelement"](2,"div",1),i["ɵɵelement"](3,"div",2)),2&t&&(i["ɵɵadvance"](2),i["ɵɵclassProp"]("mat-button-ripple-round",e.isRoundButton||e.isIconButton),i["ɵɵproperty"]("matRippleDisabled",e._isRippleDisabled())("matRippleCentered",e.isIconButton)("matRippleTrigger",e._getHostElement()))},directives:[r.MatRipple],styles:[".mat-button .mat-button-focus-overlay,.mat-icon-button .mat-button-focus-overlay{opacity:0}.mat-button:hover .mat-button-focus-overlay,.mat-stroked-button:hover .mat-button-focus-overlay{opacity:.04}@media(hover: none){.mat-button:hover .mat-button-focus-overlay,.mat-stroked-button:hover .mat-button-focus-overlay{opacity:0}}.mat-button,.mat-icon-button,.mat-stroked-button,.mat-flat-button{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-button[disabled],.mat-icon-button[disabled],.mat-stroked-button[disabled],.mat-flat-button[disabled]{cursor:default}.mat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-button.cdk-program-focused .mat-button-focus-overlay,.mat-icon-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-icon-button.cdk-program-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-program-focused .mat-button-focus-overlay,.mat-flat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-flat-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-raised-button{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-raised-button::-moz-focus-inner{border:0}.mat-raised-button[disabled]{cursor:default}.mat-raised-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-raised-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-raised-button::-moz-focus-inner{border:0}._mat-animation-noopable.mat-raised-button{transition:none;animation:none}.mat-stroked-button{border:1px solid currentColor;padding:0 15px;line-height:34px}.mat-stroked-button .mat-button-ripple.mat-ripple,.mat-stroked-button .mat-button-focus-overlay{top:-1px;left:-1px;right:-1px;bottom:-1px}.mat-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:56px;height:56px;padding:0;flex-shrink:0}.mat-fab::-moz-focus-inner{border:0}.mat-fab[disabled]{cursor:default}.mat-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-fab{transition:none;animation:none}.mat-fab .mat-button-wrapper{padding:16px 0;display:inline-block;line-height:24px}.mat-mini-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:40px;height:40px;padding:0;flex-shrink:0}.mat-mini-fab::-moz-focus-inner{border:0}.mat-mini-fab[disabled]{cursor:default}.mat-mini-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-mini-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-mini-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-mini-fab{transition:none;animation:none}.mat-mini-fab .mat-button-wrapper{padding:8px 0;display:inline-block;line-height:24px}.mat-icon-button{padding:0;min-width:0;width:40px;height:40px;flex-shrink:0;line-height:40px;border-radius:50%}.mat-icon-button i,.mat-icon-button .mat-icon{line-height:24px}.mat-button-ripple.mat-ripple,.mat-button-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-button-ripple.mat-ripple:not(:empty){transform:translateZ(0)}.mat-button-focus-overlay{opacity:0;transition:opacity 200ms cubic-bezier(0.35, 0, 0.25, 1),background-color 200ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-button-focus-overlay{transition:none}.cdk-high-contrast-active .mat-button-focus-overlay{background-color:#fff}.cdk-high-contrast-black-on-white .mat-button-focus-overlay{background-color:#000}.mat-button-ripple-round{border-radius:50%;z-index:1}.mat-button .mat-button-wrapper>*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:block;font-size:inherit;width:2.5em;height:2.5em}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}\n"],encapsulation:2,changeDetection:0}),e}(Object(r.mixinColor)(Object(r.mixinDisabled)(Object(r.mixinDisableRipple)(function(t){this._elementRef=t})))),p=function(t){function e(e,n,i){return t.call(this,n,e,i)||this}return Object(o.c)(e,t),e.prototype._haltDisabledEvents=function(t){this.disabled&&(t.preventDefault(),t.stopImmediatePropagation())},e.ctorParameters=function(){return[{type:a.h},{type:i.ElementRef},{type:String,decorators:[{type:i.Optional},{type:i.Inject,args:[s.ANIMATION_MODULE_TYPE]}]}]},e.propDecorators={tabIndex:[{type:i.Input}]},e.ɵfac=function(t){return new(t||e)(i["ɵɵdirectiveInject"](a.h),i["ɵɵdirectiveInject"](i.ElementRef),i["ɵɵdirectiveInject"](s.ANIMATION_MODULE_TYPE,8))},e.ɵcmp=i["ɵɵdefineComponent"]({type:e,selectors:[["a","mat-button",""],["a","mat-raised-button",""],["a","mat-icon-button",""],["a","mat-fab",""],["a","mat-mini-fab",""],["a","mat-stroked-button",""],["a","mat-flat-button",""]],hostAttrs:[1,"mat-focus-indicator"],hostVars:5,hostBindings:function(t,e){1&t&&i["ɵɵlistener"]("click",function(t){return e._haltDisabledEvents(t)}),2&t&&(i["ɵɵattribute"]("tabindex",e.disabled?-1:e.tabIndex||0)("disabled",e.disabled||null)("aria-disabled",e.disabled.toString()),i["ɵɵclassProp"]("_mat-animation-noopable","NoopAnimations"===e._animationMode))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex"},exportAs:["matButton","matAnchor"],features:[i["ɵɵInheritDefinitionFeature"]],attrs:c,ngContentSelectors:l,decls:4,vars:5,consts:[[1,"mat-button-wrapper"],["matRipple","",1,"mat-button-ripple",3,"matRippleDisabled","matRippleCentered","matRippleTrigger"],[1,"mat-button-focus-overlay"]],template:function(t,e){1&t&&(i["ɵɵprojectionDef"](),i["ɵɵelementStart"](0,"span",0),i["ɵɵprojection"](1),i["ɵɵelementEnd"](),i["ɵɵelement"](2,"div",1),i["ɵɵelement"](3,"div",2)),2&t&&(i["ɵɵadvance"](2),i["ɵɵclassProp"]("mat-button-ripple-round",e.isRoundButton||e.isIconButton),i["ɵɵproperty"]("matRippleDisabled",e._isRippleDisabled())("matRippleCentered",e.isIconButton)("matRippleTrigger",e._getHostElement()))},directives:[r.MatRipple],styles:[".mat-button .mat-button-focus-overlay,.mat-icon-button .mat-button-focus-overlay{opacity:0}.mat-button:hover .mat-button-focus-overlay,.mat-stroked-button:hover .mat-button-focus-overlay{opacity:.04}@media(hover: none){.mat-button:hover .mat-button-focus-overlay,.mat-stroked-button:hover .mat-button-focus-overlay{opacity:0}}.mat-button,.mat-icon-button,.mat-stroked-button,.mat-flat-button{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-button[disabled],.mat-icon-button[disabled],.mat-stroked-button[disabled],.mat-flat-button[disabled]{cursor:default}.mat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-button.cdk-program-focused .mat-button-focus-overlay,.mat-icon-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-icon-button.cdk-program-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-program-focused .mat-button-focus-overlay,.mat-flat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-flat-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-raised-button{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-raised-button::-moz-focus-inner{border:0}.mat-raised-button[disabled]{cursor:default}.mat-raised-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-raised-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-raised-button::-moz-focus-inner{border:0}._mat-animation-noopable.mat-raised-button{transition:none;animation:none}.mat-stroked-button{border:1px solid currentColor;padding:0 15px;line-height:34px}.mat-stroked-button .mat-button-ripple.mat-ripple,.mat-stroked-button .mat-button-focus-overlay{top:-1px;left:-1px;right:-1px;bottom:-1px}.mat-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:56px;height:56px;padding:0;flex-shrink:0}.mat-fab::-moz-focus-inner{border:0}.mat-fab[disabled]{cursor:default}.mat-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-fab{transition:none;animation:none}.mat-fab .mat-button-wrapper{padding:16px 0;display:inline-block;line-height:24px}.mat-mini-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:40px;height:40px;padding:0;flex-shrink:0}.mat-mini-fab::-moz-focus-inner{border:0}.mat-mini-fab[disabled]{cursor:default}.mat-mini-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-mini-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-mini-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-mini-fab{transition:none;animation:none}.mat-mini-fab .mat-button-wrapper{padding:8px 0;display:inline-block;line-height:24px}.mat-icon-button{padding:0;min-width:0;width:40px;height:40px;flex-shrink:0;line-height:40px;border-radius:50%}.mat-icon-button i,.mat-icon-button .mat-icon{line-height:24px}.mat-button-ripple.mat-ripple,.mat-button-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-button-ripple.mat-ripple:not(:empty){transform:translateZ(0)}.mat-button-focus-overlay{opacity:0;transition:opacity 200ms cubic-bezier(0.35, 0, 0.25, 1),background-color 200ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-button-focus-overlay{transition:none}.cdk-high-contrast-active .mat-button-focus-overlay{background-color:#fff}.cdk-high-contrast-black-on-white .mat-button-focus-overlay{background-color:#000}.mat-button-ripple-round{border-radius:50%;z-index:1}.mat-button .mat-button-wrapper>*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:block;font-size:inherit;width:2.5em;height:2.5em}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}\n"],encapsulation:2,changeDetection:0}),e}(d),h=function(){function t(){}return t.ɵmod=i["ɵɵdefineNgModule"]({type:t}),t.ɵinj=i["ɵɵdefineInjector"]({factory:function(e){return new(e||t)},imports:[[r.MatRippleModule,r.MatCommonModule],r.MatCommonModule]}),("undefined"==typeof ngJitMode||ngJitMode)&&i["ɵɵsetNgModuleScope"](t,{declarations:function(){return[d,p]},imports:function(){return[r.MatRippleModule,r.MatCommonModule]},exports:function(){return[d,p,r.MatCommonModule]}}),t}()},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var o=n(0),a=n(85),s=(n(130),n(3)),c=(n(313),n(544),n(388)),l=(n(50),n(20)),u=n(1108),d=n(0),p=n(130),h=n(313),f=n(544),g=n(50),m=function(){function t(t,e,i,r,o){this.UoMService=t,this.LanguageDetectionService=e,this.FontLoaderService=i,this.LanguageService=r,this.gettextCatalog=o,this.buildingIcon=new Uint8Array(n(1109)),this.roomIcon=new Uint8Array(n(1113)),this.floorIcon=new Uint8Array(n(1114)),this.navvisLogo="data:image/jpg;base64,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OlHev5WOtAH9U7dOlfytkAYpnSv6p8UAIBmv5WSc1/VP0xX8rFAH9U55pNtfys0UAf1TEkHFfyskYNAOKCcmgD+qckgdK/laKgd/zpvSv6p8daAG556dfWnDkdK/lZzX9UwGKAFooooAKKKKACiiigBO9fysV/VP3r+VigD+qiv5V+1f1Tk4r+VkigBKKMUYoA/qor+Vf0r+qiv5V/SgD+qfOMV/KwRg1/VMVzilAIAGaAAnAyaM5FBPHWv5Wu2PTvQAnrX9U9fysGv6pgc0ALRSE4o3UABIHWgHIpCMmv5Wsj0oASgda/qnz7ig/UUAGQBQDkU0jnrX8rZ69KAEAya/qnzmkPIIzSYxQB/K361/VN1phBr+Vw9elACV/VP3r+Viv6p+9AASB1oByKa3Jzz9K/lbJ56UAIBk1/VODmggkEZpANpoAXvX8rFf1T5+tfysEYoA/qor+Vfriv6p81/K1jFADcUEYNf1SnPX9K/lbI56flQB/VPRRRQAUUUUAFFFFACd6/lYr+qfvX8rFAH9U55oAxX8rFFAH9U+PYUY9hX8rFFAH9U5JAzjNfyskYwfekBwaMkmgD+qcdKWkHSloA/lXzSg5PNJR0oA/qlPp696cOnpX8rINf1TAYoARuh4z9K/lbxxnt6U0HBoyfWgD+qXJHvX8rZA9aTNf1T9KAP5WByetOx3zTQcV/VPjFAH8rQHFf1SDkdPzr+VrJBpCcmgAHJ607HHX86aDiv6psYzQAhPbH504DjpX8rOa/qmAxQB/Kzgetf1SbsnGPxpxGRRtHpQB/K105pp61/VOQK/lYJzQB/VPQelfysUDrQA7p3FJj3r+qYdKWgD+Vgdetf1SA896cRkUYAFACYz1pQMdq/lYPWigD+qiiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigD//2Q==",this.DATE_FORMAT="yyyy-MM-dd HH:mm:ss",this.FILENAME_DATE_FORMAT="yyyy-MM-dd_HH_mm_ss",this.DOCUMENT_SIZE=[2480,3508],this.BORDER=110,this.CONTENT_INITIAL_V_OFFSET=280,this.FOOTER_V_OFFSET=2540,this.MEASUREMENT_ENTRY_V_OFFSET=1140,this.TITLE_IV_V_OFFSET=this.BORDER+60,this.NAVVIS_LOGO_H_OFFSET=1400,this.NAVVIS_LOGO_DIM_W=364,this.NAVVIS_LOGO_DIM_H=88,this.EXPORT_ALL_V_OFFSET=220,this.MTEXT_H_OFFSET=this.BORDER+30,this.MLINK_V_OFFSET=80,this.MLINK_H_OFFSET=this.BORDER+30,this.ICON_DIM_WH=64,this.ICON_TEXT_V_OFFSET=40,this.BUILDING_ICON_H_OFFSET=this.BORDER+15,this.BUILDING_TEXT_H_OFFSET=this.BORDER+80,this.FLOOR_ICON_H_OFFSET=this.BORDER+535,this.FLOOR_TEXT_H_OFFSET=this.BORDER+610,this.ROOM_ICON_H_OFFSET=this.BORDER+1055,this.ROOM_TEXT_H_OFFSET=this.BORDER+1130,this.FRAME_V_OFFSET=10,this.FRAME_H_OFFSET=this.BORDER+30,this.FRAME_DIM_W=1560,this.FRAME_DIM_H=920,this.MEASUREMENT_V_OFFSET=10,this.MEASUREMENT_H_OFFSET=this.BORDER+40,this.MEASUREMENT_DIM_W=1200,this.MEASUREMENT_DIM_H=900,this.NOTES_FRAME_H_OFFSET=this.MEASUREMENT_H_OFFSET+this.MEASUREMENT_DIM_W+10,this.NOTES_FRAME_V_OFFSET=30,this.NOTES_FRAME_DIM_W=330,this.NOTES_FRAME_DIM_H=870,this.NOTES_TEXT_H_OFFSET=this.BORDER+1260,this.NOTES_TITLE_V_OFFSET=20,this.NOTES_TEXT_V_OFFSET=60,this.NOTEST_TEXT_MAX_WIDTH=310,this.FOOTER_LINE_LENGTH=1620,this.FOOTER_TEXT_V_OFFSET=40,this.FOOTER_DATE_H_OFFSET=this.BORDER+30,this.FOOTER_PAGE_H_OFFSET=this.BORDER+1460,this.CORDER_RADIUS=10,this.TITLE_IV_TEXT_COLOR="#333333",this.TITLE_IV_TEXT_SIZE=90,this.EXPORT_ALL_TEXT_SIZE=40,this.EXPORT_ALL_TEXT_COLOR="#0066BB",this.ICON_TEXT_COLOR="#555555",this.ICON_TEXT_SIZE=30,this.FRAME_FILL_COLOR="#DDDDDD",this.NOTES_FILL_COLOR="#EFEFEF",this.NOTES_TITLE_TEXT_SIZE=40,this.NOTES_TITLE_TEXT_COLOR="#444444",this.NOTES_CONTENT_TEXT_SIZE=30,this.NOTES_CONTENT_TEXT_COLOR="#666666",this.MTEXT_TEXT_SIZE=40,this.MTEXT_TEXT_COLOR="#555555",this.MLINK_TEXT_SIZE=30,this.MLINK_TEXT_COLOR="#0066BB",this.FOOTER_LINE_COLOR="#BBBBBB",this.FOOTER_TEXT_SIZE=30,this.FOOTER_TEXT_COLOR="#333333",this.DOCUMENT_FONT="Helvetica"}return t.prototype.exportMeasurements=function(t,e){return i(this,void 0,void 0,function(){var n,i,o,a,c,l,d,p,h=this;return r(this,function(r){switch(r.label){case 0:return n=new u({orientation:"p",unit:"px",format:this.DOCUMENT_SIZE,putOnlyUsedFonts:!0}),[4,this.resolveFonts(t,n)];case 1:return r.sent(),i=Math.ceil(t.length/2),o=new s.DatePipe("en").transform(new Date,this.DATE_FORMAT),a="measurement_export_"+new s.DatePipe("en").transform(new Date,this.FILENAME_DATE_FORMAT)+".pdf",c=this.addGtmMetadataForTracking(e),this.renderExportAllLink(n,c,this.EXPORT_ALL_V_OFFSET),l=this.CONTENT_INITIAL_V_OFFSET,d=0,p=!1,t.forEach(function(e){d++,h.renderMeasurement(n,e,l),p||(h.renderHeader(n),h.renderFooter(n,Math.ceil(d/2),i,o,h.FOOTER_V_OFFSET),p=!0),l+=h.MEASUREMENT_ENTRY_V_OFFSET,d%2==0&&d<t.length&&(p=!1,n.addPage(h.DOCUMENT_SIZE,"p"),l=h.CONTENT_INITIAL_V_OFFSET)}),n.save(a),[2]}})})},t.prototype.addGtmMetadataForTracking=function(e){var n=new URL(e);return n.searchParams.append(t.SHARE_LINK_SOURCE,"true"),n.toString()},t.prototype.renderHeader=function(t){t.setFont(this.DOCUMENT_FONT,"normal"),t.setFontSize(this.TITLE_IV_TEXT_SIZE),t.setTextColor(this.TITLE_IV_TEXT_COLOR),t.text("4DKanKan",this.BORDER,this.TITLE_IV_V_OFFSET),console.log(this.navvisLogo)},t.prototype.renderExportAllLink=function(t,e,n){l.isBlank(e)||(this.setFontFromUiLanguage(t),t.setTextColor(this.EXPORT_ALL_TEXT_COLOR),t.setFontSize(this.EXPORT_ALL_TEXT_SIZE),t.textWithLink(this.gettextCatalog.getString("Open all measurements in 4DKanKan"),this.BORDER,n,{url:e}))},t.prototype.renderMeasurement=function(t,e,n){var i=e.location&&(e.location.floor||e.location.room||e.location.building);t.setFontSize(this.MTEXT_TEXT_SIZE),t.setTextColor(this.MTEXT_TEXT_COLOR),this.setFontForText(e.measurement.name,t);var r=a.ToolSpec.of(e.measurement.type).type===a.ToolType.AREA?"area":"distance",o=e.measurement.name+": "+this.UoMService.convert(e.measurement.value,r,2,void 0,void 0,!0);t.text(o,this.MTEXT_H_OFFSET,n,{maxWidth:this.FRAME_DIM_W}),n+=(Math.ceil((t.getTextWidth(o)+15)/this.FRAME_DIM_W)-1)*this.MTEXT_TEXT_SIZE,t.setFontSize(this.ICON_TEXT_SIZE),t.setTextColor(this.ICON_TEXT_COLOR),this.setFontFromUiLanguage(t),e.location.building=null,e.location.floor=null,e.location.room=null,i&&(e.location.building&&(t.addImage(this.buildingIcon,"PNG",this.BUILDING_ICON_H_OFFSET,n,this.ICON_DIM_WH,this.ICON_DIM_WH),t.text(e.location.building,this.BUILDING_TEXT_H_OFFSET,n+this.ICON_TEXT_V_OFFSET)),e.location.floor&&(t.addImage(this.floorIcon,"PNG",this.FLOOR_ICON_H_OFFSET,n,this.ICON_DIM_WH,this.ICON_DIM_WH),t.text(e.location.floor,this.FLOOR_TEXT_H_OFFSET,n+this.ICON_TEXT_V_OFFSET)),e.location.room&&(t.addImage(this.roomIcon,"PNG",this.ROOM_ICON_H_OFFSET,n,this.ICON_DIM_WH,this.ICON_DIM_WH),t.text(e.location.room,this.ROOM_TEXT_H_OFFSET,n+this.ICON_TEXT_V_OFFSET))),n+=this.MLINK_V_OFFSET,this.setFontFromUiLanguage(t),t.setTextColor(this.MLINK_TEXT_COLOR),t.setFontSize(this.MLINK_TEXT_SIZE);var s=this.addGtmMetadataForTracking(e.url.value);t.textWithLink(this.gettextCatalog.getString("Open this measurement in 4DKanKan"),this.MLINK_H_OFFSET,n,{url:s}),n+=this.FRAME_V_OFFSET,t.setFillColor(this.FRAME_FILL_COLOR),t.roundedRect(this.FRAME_H_OFFSET,n,this.FRAME_DIM_W,this.FRAME_DIM_H,this.CORDER_RADIUS,this.CORDER_RADIUS,"F"),n+=this.MEASUREMENT_V_OFFSET,t.addImage(e.screenshot.data,"image/jpeg;base64",this.MEASUREMENT_H_OFFSET,n,this.MEASUREMENT_DIM_W,this.MEASUREMENT_DIM_H),t.setFillColor(this.NOTES_FILL_COLOR),t.roundedRect(this.NOTES_FRAME_H_OFFSET,n+this.NOTES_FRAME_V_OFFSET,this.NOTES_FRAME_DIM_W,this.NOTES_FRAME_DIM_H,this.CORDER_RADIUS,this.CORDER_RADIUS,"F"),this.setFontFromUiLanguage(t),t.setFontSize(this.NOTES_TITLE_TEXT_SIZE),t.setTextColor(this.NOTES_TITLE_TEXT_COLOR),t.text(this.gettextCatalog.getString("Notes"),this.NOTES_TEXT_H_OFFSET,n+this.NOTES_TITLE_V_OFFSET),this.setFontForText(e.measurement.note,t),t.setFontSize(this.NOTES_CONTENT_TEXT_SIZE),t.setTextColor(this.NOTES_CONTENT_TEXT_COLOR),t.text(e.measurement.note,this.NOTES_TEXT_H_OFFSET,n+this.NOTES_TEXT_V_OFFSET,{maxWidth:this.NOTEST_TEXT_MAX_WIDTH})},t.prototype.renderFooter=function(t,e,n,i,r){t.setDrawColor(this.FOOTER_LINE_COLOR),this.setFontFromUiLanguage(t),t.line(this.BORDER,r,this.BORDER+this.FOOTER_LINE_LENGTH,r),r+=this.FOOTER_TEXT_V_OFFSET,t.setFontSize(this.FOOTER_TEXT_SIZE),t.setTextColor(this.FOOTER_TEXT_COLOR),t.text(i,this.FOOTER_DATE_H_OFFSET,r),t.text(this.gettextCatalog.getString("Page {{page}} of {{pageCount}}",{page:e,pageCount:n}),this.FOOTER_PAGE_H_OFFSET,r)},t.prototype.resolveFonts=function(t,e){return i(this,void 0,void 0,function(){var n,i,o,a,s,l,u,d,p,h,f,g,m=this;return r(this,function(r){switch(r.label){case 0:for(n=t.map(function(t){return m.LanguageDetectionService.getFontForText(t.measurement.note)}),i=t.map(function(t){return m.LanguageDetectionService.getFontForText(t.measurement.name)}),o=i.concat(n).filter(function(t,e,n){return n.indexOf(t)===e}),a=[],s=0,l=o;s<l.length;s++)(u=l[s])!==c.SupportedFont.DEFAULT&&a.push(this.FontLoaderService.loadFont(u));return d=this.LanguageService.getCurrentUiLanguage(),a.push(this.FontLoaderService.loadFontFromUILanguage(d)),[4,Promise.all(a)];case 1:for(p=r.sent(),h=0,f=p;h<f.length;h++)g=f[h],!e.existsFileInVFS(g.name+".ttf")&&g.data&&(e.addFileToVFS(g.name+".ttf",g.data),e.addFont(g.name+".ttf",g.name,g.weight));return[2]}})})},t.prototype.setFontForText=function(t,e){var n=this.FontLoaderService.getTrueTypeFontFromText(t);e.setFont(n.name,n.weight)},t.prototype.setFontFromUiLanguage=function(t){var e=this.LanguageService.getCurrentUiLanguage(),n=this.FontLoaderService.getTrueTypeFontFromUiLanguage(e);t.setFont(n.name,n.weight)},t.SHARE_LINK_SOURCE="pdf",t.ɵfac=function(e){return new(e||t)(d.ɵɵinject(p.UoMService),d.ɵɵinject(h.LanguageDetectionService),d.ɵɵinject(f.FontLoaderService),d.ɵɵinject(g.LanguageService),d.ɵɵinject("gettextCatalog"))},t.ɵprov=d.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.MeasurementPdfExportService=m,d.ɵsetClassMetadata(m,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:p.UoMService},{type:h.LanguageDetectionService},{type:f.FontLoaderService},{type:g.LanguageService},{type:void 0,decorators:[{type:o.Inject,args:["gettextCatalog"]}]}]},null)},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return t.call(this,"MeasurementsSaved")||this}return r(e,t),e.prototype.numberOfMeasurements=function(t){return this.withData("numberOfMeasurementsSaved",t),this},e.prototype.interactionArea=function(t){return this.withData("interactionArea",t),this},e}(n(64).TrackingEvent);e.MeasurementsSavedEvent=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.SideMenu="side-menu",t.MeasurementLabel="measurement-label",t.SaveDiscardDialog="save-discard-dialog"}(e.InteractionArea||(e.InteractionArea={}))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(0),r=(n(31),n(22),n(7)),o=n(2),a=n(6),s=n(16),c=(n(28),n(0)),l=n(31),u=n(22),d=n(28),p=function(){function t(t,e,n){var i=this;this.DatasetRepository=t,this.FloorChangerService=n,this.mappingUpdated=new s.Signal,this.datasetsBySiteModelId={},t.entityCreated.connect(function(){return i.updateMapping()}),t.entityRemoved.connect(function(){return i.updateMapping()}),e.entityCreated.connect(function(){return i.updateMapping()}),e.entityRemoved.connect(function(){return i.updateMapping()}),this.updateMapping()}return t.prototype.getDatasetsFromChildren=function(t){for(var e=t.getAllChildren(),n=new Set,i=0,r=e;i<r.length;i++){var o=r[i];(this.datasetsBySiteModelId[o.id]||[]).forEach(function(t){return n.add(t)})}return Array.from(n)},t.prototype.getDatasetsFromCurrentFloors=function(){for(var t=new Set,e=0,n=this.FloorChangerService.currentFloors;e<n.length;e++){var i=n[e];this.datasetsBySiteModelId[i.id].forEach(function(e){return t.add(e)})}return Array.from(t)},t.prototype.getDatasetsWhereMostSpecificIs=function(t){var e=this.datasetsBySiteModelId[t.id];return r.filter(e,function(e){return!r.some(e.siteModelEntities,function(e){return t.children.indexOf(e)>=0})})},t.prototype.updateMapping=function(){this.datasetsBySiteModelId={};for(var t=0,e=this.DatasetRepository.data;t<e.length;t++)for(var n=e[t],i=0,r=n.siteModelEntities;i<r.length;i++){var o=r[i];this.setDatasetMapping(o,n);for(var a=o.parent;void 0!==a;a=a.parent)this.setDatasetMapping(a,n)}this.mappingUpdated.emit()},t.prototype.setDatasetMapping=function(t,e){var n=this.datasetsBySiteModelId[t.id]||[];n.push(e),this.datasetsBySiteModelId[t.id]=n},t.ɵfac=function(e){return new(e||t)(c.ɵɵinject(l.DatasetRepository),c.ɵɵinject(u.SiteModelRepository),c.ɵɵinject(d.FloorChangerService))},t.ɵprov=c.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.SiteModelToDatasetsService=p,c.ɵsetClassMetadata(p,[{type:i.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:l.DatasetRepository},{type:u.SiteModelRepository},{type:d.FloorChangerService}]},null),o.module("IVWebApp").service("SiteModelToDatasetsService",a.downgradeInjectable(p))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.COMMA=",",t.TAB="t",t.SEMICOLON=";"}(e.CsvSeparators||(e.CsvSeparators={}))},function(t,e,n){"use strict";n.d(e,"a",function(){return o});var i=n(1),r=n(26);function o(t,e){return function(n){return n.lift(new a(t,e))}}var a=function(){function t(t,e){this.compare=t,this.keySelector=e}return t.prototype.call=function(t,e){return e.subscribe(new s(t,this.compare,this.keySelector))},t}(),s=function(t){function e(e,n,i){var r=t.call(this,e)||this;return r.keySelector=i,r.hasKey=!1,"function"==typeof n&&(r.compare=n),r}return i.c(e,t),e.prototype.compare=function(t,e){return t===e},e.prototype._next=function(t){var e;try{var n=this.keySelector;e=n?n(t):t}catch(t){return this.destination.error(t)}var i=!1;if(this.hasKey)try{i=(0,this.compare)(this.key,e)}catch(t){return this.destination.error(t)}else this.hasKey=!0;i||(this.key=e,this.destination.next(t))},e}(r.a)},function(t,e,n){"use strict";n.d(e,"a",function(){return s});var i=n(442),r=n(304),o=n(32);function a(){return new o.a}function s(){return function(t){return Object(r.a)()(Object(i.a)(a)(t))}}},function(t,e,n){t.exports=n.p+"26d42670fca53057cc00c607b592274b.building.svg"},function(t,e,n){t.exports=n.p+"361e54c9d7f4cc3587719df1a583dcd2.floor.svg"},function(t,e,n){t.exports=n.p+"3b09f08ed2cb099cda5e3ba021ef52a6.room.svg"},function(t,e,n){"use strict";n.d(e,"a",function(){return o});var i=n(1),r=n(26);function o(t){return void 0===t&&(t=-1),function(e){return e.lift(new a(t,e))}}var a=function(){function t(t,e){this.count=t,this.source=e}return t.prototype.call=function(t,e){return e.subscribe(new s(t,this.count,this.source))},t}(),s=function(t){function e(e,n,i){var r=t.call(this,e)||this;return r.count=n,r.source=i,r}return i.c(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=this.source,i=this.count;if(0===i)return t.prototype.error.call(this,e);i>-1&&(this.count=i-1),n.subscribe(this._unsubscribeAndRecycle())}},e}(r.a)},function(t,e,n){"use strict";n.d(e,"a",function(){return s});var i=n(1),r=n(79),o=n(176),a=n(78);function s(t){return function(e){var n=new c(t),i=e.lift(n);return n.caught=i}}var c=function(){function t(t){this.selector=t}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.selector,this.caught))},t}(),l=function(t){function e(e,n,i){var r=t.call(this,e)||this;return r.selector=n,r.caught=i,r}return i.c(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=void 0;try{n=this.selector(e,this.caught)}catch(e){return void t.prototype.error.call(this,e)}this._unsubscribeAndRecycle();var i=new o.a(this,void 0,void 0);this.add(i);var r=Object(a.a)(this,n,void 0,void 0,i);r!==i&&this.add(r)}},e}(r.a)},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),(e.UrlRouteParameter||(e.UrlRouteParameter={})).PROCESSING_TASKS="processing-tasks"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o,a=n(317),s=n(393),c=n(4),l=n(233),u=n(8),d=n(20),p=n(7);!function(t){t[t.ROTATE=0]="ROTATE",t[t.ORBIT=1]="ORBIT",t[t.PAN=2]="PAN"}(o||(o={}));var h=function(t){function e(e,n,i){var r,a,s=t.call(this,e)||this;return s.inputHandler=n,s.RaycastService=i,s.orientation={lon:0,lat:0},s.fov=100,s.keyboardInput=!1,s.allowTranslation=!1,s.translationZoom=!1,s.dragStartMethods=((r={})[o.ROTATE]=function(){return!0},r[o.ORBIT]=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return s.orbitStart.apply(s,t)},r[o.PAN]=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return s.panStart.apply(s,t)},r),s.dragMethods=((a={})[o.ROTATE]=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return s.rotate.apply(s,t)},a[o.ORBIT]=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return s.orbit.apply(s,t)},a[o.PAN]=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return s.pan.apply(s,t)},a),s.tempVector=new c.Vector3,s.tempMatrixT=new c.Matrix4,s.tempMatrixTi=new c.Matrix4,s.tempMatrixRz=new c.Matrix4,s.tempMatrixRxy=new c.Matrix4,s._camera=new c.PerspectiveCamera(s.verticalFOV,e.aspect,.1,100),s._camera.up=new c.Vector3(0,0,1),s}return r(e,t),Object.defineProperty(e.prototype,"camera",{get:function(){return this._camera},enumerable:!0,configurable:!0}),e.prototype.updateCamera=function(){var t=Math.PI/2-this.orientation.lat,e=this.orientation.lon,n=this.tempVector.set(this._camera.position.x+Math.sin(t)*Math.cos(e),this._camera.position.y+Math.sin(t)*Math.sin(e),this._camera.position.z+Math.cos(t));this._camera.lookAt(n),this.clampFOV(),this._camera.fov=this.verticalFOV,this._camera.aspect=this.viewport.aspect,this._camera.updateProjectionMatrix()},Object.defineProperty(e.prototype,"horizontalFOV",{get:function(){var t=this.viewport.aspect;return t>=1?this.fov:this.fov*t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"verticalFOV",{get:function(){var t=this.viewport.aspect;return t>=1?this.fov/t:this.fov},enumerable:!0,configurable:!0}),e.prototype.dragStart=function(t){var e=void 0===t.event.button||t.event.button===l.MouseButton.LEFT;return e&&t.event.shiftKey||t.event.button===l.MouseButton.RIGHT?this.dragOperation=o.PAN:e&&(t.event.metaKey||t.event.ctrlKey)||t.event.button===l.MouseButton.MIDDLE?this.dragOperation=o.ORBIT:this.dragOperation=o.ROTATE,this.dragStartMethods[this.dragOperation](t)},e.prototype.drag=function(t,e,n){this.dragMethods[this.dragOperation](t,e,n)},e.prototype.zoomTo=function(t,e,n){!this.translationZoom||t.event.shiftKey?this.zoomWithFOV(n,e,t):this.zoomWithTranslation(n,e,t)},e.prototype.centerOn=function(t){this._camera.position.copy(t)},e.prototype.applyKeyboardInput=function(){return!!this.keyboardInput&&s.applyKeyboardInputToCamera(this.inputHandler,this.camera)},e.prototype.rotate=function(t,n,i){if(0!==this.viewport.screenWidth&&0!==this.viewport.screenHeight){var r=t/this.viewport.screenWidth,o=n/this.viewport.screenHeight,a=this.horizontalFOV/180*Math.PI,s=a/this.viewport.aspect;this.orientation.lon+=r*a,this.orientation.lat+=o*s,this.orientation.lat=p.clamp(this.orientation.lat,e.MIN_ELEVATION,e.MAX_ELEVATION)}},e.prototype.orbitStart=function(t){var e=this;if(!this.allowTranslation)return!1;var n=this.viewport.unprojectScreenCoordinates(t.x,t.y);return this.orbitPoint=void 0,this.RaycastService.getCoordinates(this.inputHandler.view,n,!0).then(function(t){return e.orbitPoint=t.position}).catch(u.handleWarning),!0},e.prototype.orbit=function(t,n,i){if(this.orbitPoint){var r=this.horizontalFOV/180*Math.PI*e.ORBIT_SCALE,o=r/this.viewport.aspect,a=-n/this.viewport.screenHeight*o;a+this.orientation.lat>e.MAX_ELEVATION?a=e.MAX_ELEVATION-this.orientation.lat:a+this.orientation.lat<e.MIN_ELEVATION&&(a=e.MIN_ELEVATION-this.orientation.lat);var s=this.tempMatrixT.makeTranslation(this.orbitPoint.x,this.orbitPoint.y,this.orbitPoint.z),c=this.tempMatrixTi.getInverse(s),l=this.tempMatrixRz.makeRotationZ(-t/this.viewport.screenWidth*r),u=this.tempMatrixRxy.makeRotationAxis(this.tempVector.setFromMatrixColumn(this.camera.matrixWorld,0),a),d=s.multiply(l).multiply(u).multiply(c);this.camera.applyMatrix4(d);var p=this.camera.getWorldDirection(this.tempVector);this.orientation.lon=Math.atan2(p.y,p.x),this.orientation.lat=Math.asin(p.z)}},e.prototype.panStart=function(t){var n=this;if(!this.allowTranslation)return!1;var i=this.viewport.normalizeCoordinates(t.x,t.y,1).clone().unproject(this.viewport.camera);return this.panDistancePerPixel=void 0,this.RaycastService.getCoordinates(this.inputHandler.view,i,!0).then(function(t){var e=t.position.clone().project(n.camera);e.x+=2/n.viewport.screenWidth,e.unproject(n.camera),n.panDistancePerPixel=t.position.distanceTo(e)}).catch(function(){return n.panDistancePerPixel=e.DEFAULT_PAN_DISTANCE_PER_PIXEL}),!0},e.prototype.pan=function(t,e,n){this.panDistancePerPixel&&(this.camera.position.addScaledVector(this.tempVector.setFromMatrixColumn(this.camera.matrixWorld,0),-t*this.panDistancePerPixel),this.camera.position.addScaledVector(this.tempVector.setFromMatrixColumn(this.camera.matrixWorld,1),e*this.panDistancePerPixel))},e.prototype.zoomWithFOV=function(t,n,i){var r=this.fov;this.fov=t?r/n:r+n*e.WHEEL_SCALE_FOV,this.clampFOV();var o=(this.fov-r)/180*Math.PI,a=this.viewport.normalizeCoordinates(i.x,i.y,0),s=this.viewport.aspect;this.orientation.lon+=.5*(s>=1?o:o*s)*a.x,this.orientation.lat-=.5*(s>=1?o/s:o)*a.y},e.prototype.zoomWithTranslation=function(t,n,i){var r,o=this.inputHandler.view.unprojectScreenCoordinates(i.x,i.y).sub(this.camera.position);o.normalize(),r=t?(n>=1?n-1:-1/n+1)*e.PINCH_SPEED:-n/e.WHEEL_SCALE_TRANSLATE,this.camera.position.addScaledVector(o,r)},e.prototype.clampFOV=function(){var t=this.viewport.aspect;if(t>=1){var n=Math.min(e.MAX_HFOV,this.fov),i=Math.min(e.MAX_VFOV,this.fov/t);this.fov=Math.max(Math.min(n,i*t),e.MIN_FOV)}else n=Math.min(e.MAX_HFOV,this.fov*t),i=Math.min(e.MAX_VFOV,this.fov),this.fov=Math.max(Math.min(n/t,i),e.MIN_FOV)},e.MIN_FOV=20,e.MAX_HFOV=150,e.MAX_VFOV=100,e.WHEEL_SCALE_FOV=6,e.WHEEL_SCALE_TRANSLATE=2,e.PINCH_SPEED=10,e.DEFAULT_PAN_DISTANCE_PER_PIXEL=.01,e.ORBIT_SCALE=5,e.MAX_ELEVATION=d.degreesToRadians(85),e.MIN_ELEVATION=d.degreesToRadians(-85),e}(a.CameraController);e.FirstPersonCameraController=h},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(20),r=function(){function t(t,e,n,i,r,o,a,s){this.taskId=t,this.name=e,this.doneItems=0,this.numItems=n,this.percentage=0,this.modal=i,this.hideProgress=r,this.compact=o,this.removeCallback=s,this.transparent=a}return t.prototype.setName=function(t){this.name=t,i.invalidateAngular()},t.prototype.itemDone=function(t){this.doneItems+=void 0===t?1:t,this.percentage=100*this.doneItems/this.numItems,this.percentage>=100&&this.removeCallback(this)},t.prototype.addItems=function(t){this.numItems+=t,this.percentage=100*this.doneItems/this.numItems,i.invalidateAngular()},t.prototype.setPercentage=function(t){this.percentage=t,this.percentage>=100&&this.removeCallback(this)},t.prototype.incrementPercentage=function(t){var e=this.percentage+t;this.setPercentage(e)},t.prototype.isComplete=function(){return this.percentage>=100},t}();e.ProgressReportTask=r},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(t,e){this.count=t,this.value=e}return Object.defineProperty(t.prototype,"length",{get:function(){return this.value.length},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isValidLengthForAllBrowsers",{get:function(){return this.length<=t.MAX_LENGTH},enumerable:!0,configurable:!0}),t.MAX_LENGTH=2048,t}();e.MeasurementUrl=i},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return t.call(this,"MultiViewportResized")||this}return r(e,t),e.prototype.withViewports=function(t){for(var e=this,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];return n.forEach(function(n){return e.withData(n.name,n.screenWidth>=t?"shown":"hidden")}),this},e}(n(64).TrackingEvent);e.MultiViewportResizedEvent=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o,a=n(64);!function(t){t[t.RENAME=0]="RENAME",t[t.POINT_CHANGED=1]="POINT_CHANGED",t[t.ANNOTATED=2]="ANNOTATED"}(o=e.ModificationType||(e.ModificationType={}));var s=function(t){function e(){return t.call(this,"MeasurementModified")||this}return r(e,t),e.prototype.withModification=function(t){return this.withData("modification",o[t]),this},e}(a.TrackingEvent);e.MeasurementModifiedEvent=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return t.call(this,"MeasurementsDeleted")||this}return r(e,t),e.prototype.numberOfMeasurements=function(t){return this.withData("numberOfMeasurementsDeleted",t),this},e.prototype.interactionArea=function(t){return this.withData("interactionArea",t),this},e}(n(64).TrackingEvent);e.MeasurementsDeletedEvent=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return t.call(this,"MeasurementHidden")||this}return r(e,t),e.prototype.numberOfMeasurements=function(t){return this.withData("numberOfMeasurementsHidden",t),this},e.prototype.interactionArea=function(t){return this.withData("interactionArea",t),this},e}(n(64).TrackingEvent);e.MeasurementsHiddenEvent=o},function(t,e,n){"use strict";function i(t,e,n,i,o,s,c){this.queue=[],this.max_depth=e,this.res=n;var l=0;this.root=new r(1,o,s,c),this.queue.push(this.root);for(var u=0,d=0,p=0,h=0;this.queue.length;){var f=this.queue.shift();if(l>=t.length)throw"Premature end of octree data";var g=f.keys[3];g<e?a(f,g,this.queue,t[l++]):g==e?(u=t[l++],d=f.keys[0]<<1,p=f.keys[1]<<1,h=f.keys[2]<<1,1&u&&i(this,f.children[0],d,p,h),2&u&&i(this,f.children[1],d,p,h+1),4&u&&i(this,f.children[2],d,p+1,h),8&u&&i(this,f.children[3],d,p+1,h+1),16&u&&i(this,f.children[4],d+1,p,h),32&u&&i(this,f.children[5],d+1,p,h+1),64&u&&i(this,f.children[6],d+1,p+1,h),128&u&&i(this,f.children[7],d+1,p+1,h+1)):console.error("shouldn't be here...")}}function r(t,e,n,i){this.children=new Array(8),this.keys=new Int32Array(4),this.keys[0]=e,this.keys[1]=n,this.keys[2]=i,this.keys[3]=t}function o(t){return t.keys[3]}function a(t,e,n,i){var o=t.keys[0]<<1,a=t.keys[1]<<1,s=t.keys[2]<<1,c=null,l=e+1;1&i&&(c=new r(l,o,a,s),t.children[0]=c,n.push(c)),2&i&&(c=new r(l,o,a,s+1),t.children[1]=c,n.push(c)),4&i&&(c=new r(l,o,a+1,s),t.children[2]=c,n.push(c)),8&i&&(c=new r(l,o,a+1,s+1),t.children[3]=c,n.push(c)),16&i&&(c=new r(l,o+1,a,s),t.children[4]=c,n.push(c)),32&i&&(c=new r(l,o+1,a,s+1),t.children[5]=c,n.push(c)),64&i&&(c=new r(l,o+1,a+1,s),t.children[6]=c,n.push(c)),128&i&&(c=new r(l,o+1,a+1,s+1),t.children[7]=c,n.push(c))}n.r(e),n.d(e,"Octree",function(){return i}),n.d(e,"getDepth",function(){return o})},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(0),r=n(2),o=n(6),a=n(610),s=n(0),c=n(168),l=n(624);function u(t,e){if(1&t){var n=s.ɵɵgetCurrentView();s.ɵɵelementStart(0,"div",1),s.ɵɵelementStart(1,"label",2),s.ɵɵtext(2),s.ɵɵelementEnd(),s.ɵɵelementStart(3,"form",3),s.ɵɵelementStart(4,"label",4),s.ɵɵelementStart(5,"input",5),s.ɵɵlistener("click",function(){s.ɵɵrestoreView(n);var t=s.ɵɵnextContext();return t.onImportModeChange.emit(t.modes.PRESERVE)}),s.ɵɵelementEnd(),s.ɵɵelementStart(6,"span"),s.ɵɵtext(7),s.ɵɵelementEnd(),s.ɵɵelementEnd(),s.ɵɵelementStart(8,"label",4),s.ɵɵelementStart(9,"input",5),s.ɵɵlistener("click",function(){s.ɵɵrestoreView(n);var t=s.ɵɵnextContext();return t.onImportModeChange.emit(t.modes.UPDATE)}),s.ɵɵelementEnd(),s.ɵɵelementStart(10,"span"),s.ɵɵtext(11),s.ɵɵelementEnd(),s.ɵɵelementEnd(),s.ɵɵelementStart(12,"label",4),s.ɵɵelementStart(13,"input",5),s.ɵɵlistener("click",function(){s.ɵɵrestoreView(n);var t=s.ɵɵnextContext();return t.onImportModeChange.emit(t.modes.ASSIGN_NEW)}),s.ɵɵelementEnd(),s.ɵɵelementStart(14,"span"),s.ɵɵtext(15),s.ɵɵelementEnd(),s.ɵɵelementEnd(),s.ɵɵelementEnd(),s.ɵɵelementEnd()}if(2&t){var i=e.$implicit,r=s.ɵɵnextContext();s.ɵɵadvance(2),s.ɵɵtextInterpolate1(" ",i("Import IDs")," "),s.ɵɵadvance(3),s.ɵɵproperty("checked",r.selectedMode==r.modes.PRESERVE),s.ɵɵadvance(2),s.ɵɵtextInterpolate1(" ",i("Yes, abort import if ID exists")," "),s.ɵɵadvance(2),s.ɵɵproperty("checked",r.selectedMode==r.modes.UPDATE),s.ɵɵadvance(2),s.ɵɵtextInterpolate1(" ",i("Yes, update existing POI with same ID")," "),s.ɵɵadvance(2),s.ɵɵproperty("checked",r.selectedMode==r.modes.ASSIGN_NEW),s.ɵɵadvance(2),s.ɵɵtextInterpolate1(" ",i("No, assign new IDs")," ")}}var d=function(){function t(){this.onImportModeChange=new i.EventEmitter,this.selectedMode=a.PoiImportMode.PRESERVE,this.modes=a.PoiImportMode}return t.ɵfac=function(e){return new(e||t)},t.ɵcmp=s.ɵɵdefineComponent({type:t,selectors:[["poi-import"]],inputs:{selectedMode:"selectedMode"},outputs:{onImportModeChange:"onImportModeChange"},decls:1,vars:0,consts:[["class","form-group",4,"transloco"],[1,"form-group"],[1,"col-sm-3","control-label"],[1,"col-sm-9"],[1,"id-radio"],["type","radio","name","ids",3,"checked","click"]],template:function(t,e){1&t&&s.ɵɵtemplate(0,u,16,7,"div",0)},directives:[c.TranslocoDirective,l.ɵangular_packages_forms_forms_y,l.NgControlStatusGroup,l.NgForm],styles:[".id-radio[_ngcontent-%COMP%]{display:block;padding-top:7px;position:relative;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}"]}),t}();e.PoiImportModeComponent=d,s.ɵsetClassMetadata(d,[{type:i.Component,args:[{selector:"poi-import",templateUrl:"PoiImportMode.ng.html",styleUrls:["PoiImportMode.ng.scss"]}]}],null,{onImportModeChange:[{type:i.Output}],selectedMode:[{type:i.Input}]}),r.module("IVWebApp").directive("poiImportMode",o.downgradeComponent({component:d}))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(0),r=n(2),o=n(6),a=(n(121),n(578)),s=n(85),c=(n(21),n(0)),l=n(121),u=n(21),d=n(168);function p(t,e){if(1&t){var n=c.ɵɵgetCurrentView();c.ɵɵelementContainerStart(0),c.ɵɵelementStart(1,"button",1),c.ɵɵlistener("click",function(){return c.ɵɵrestoreView(n),c.ɵɵnextContext().toggleMagnificationGlass()}),c.ɵɵelementStart(2,"div",2),c.ɵɵnamespaceSVG(),c.ɵɵelementStart(3,"svg",3),c.ɵɵelement(4,"path",4),c.ɵɵelementEnd(),c.ɵɵelementEnd(),c.ɵɵelementEnd(),c.ɵɵelementContainerEnd()}if(2&t){var i=e.$implicit,r=c.ɵɵnextContext();c.ɵɵadvance(1),c.ɵɵclassProp("active",r.isActive()),c.ɵɵproperty("title",i("Magnifier")),c.ɵɵadvance(1),c.ɵɵclassProp("active",r.isActive())}}var h=function(){function t(t,e){this.MagnificationService=t,this.TrackingService=e}return t.prototype.toggleMagnificationGlass=function(){this.MagnificationService.toggleMagnification(),this.TrackingService.trackPreDefinedEvent((new a.MeasurementToolChangedEvent).withTool(s.Tool.MAGNIFIER).withStatus(this.isActive()))},t.prototype.isActive=function(){return this.MagnificationService.isEnabled},t.ɵfac=function(e){return new(e||t)(c.ɵɵdirectiveInject(l.MagnificationService),c.ɵɵdirectiveInject(u.TrackingService))},t.ɵcmp=c.ɵɵdefineComponent({type:t,selectors:[["magnification-toggle"]],decls:1,vars:0,consts:[[4,"transloco"],[1,"btn","btn-default",3,"title","click"],[1,"magnification-icon"],["width","20","height","20","viewBox","0 0 20 20","fill","none","xmlns","http://www.w3.org/2000/svg"],["fill-rule","evenodd","clip-rule","evenodd","d","M9 17.9381V13H11V17.9381C14.6187 17.4869 17.4869 14.6187 17.9381 11H13V9H17.9381C17.4869 5.38128 14.6187 2.51314 11 2.06189V7H9V2.06189C5.38128 2.51314 2.51314 5.38128 2.06189 9H7V11H2.06189C2.51314 14.6187 5.38128 17.4869 9 17.9381ZM10 20C15.5228 20 20 15.5228 20 10C20 4.47715 15.5228 0 10 0C4.47715 0 0 4.47715 0 10C0 15.5228 4.47715 20 10 20Z","fill","currentColor"]],template:function(t,e){1&t&&c.ɵɵtemplate(0,p,5,5,"ng-container",0)},directives:[d.TranslocoDirective],styles:[".magnification-icon[_ngcontent-%COMP%]{color:#333332}.magnification-icon.active[_ngcontent-%COMP%]{color:#3398c7}"]}),t}();e.MagnificationToggleComponent=h,c.ɵsetClassMetadata(h,[{type:i.Component,args:[{selector:"magnification-toggle",templateUrl:"MagnificationToggle.ng.html",styleUrls:["MagnificationToggle.ng.scss"]}]}],function(){return[{type:l.MagnificationService},{type:u.TrackingService}]},null),r.module("IVWebApp").directive("magnificationToggle",o.downgradeComponent({component:h}))},function(t,e,n){"use strict";var i=this&&this.__spreadArrays||function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var i=Array(t),r=0;for(e=0;e<n;e++)for(var o=arguments[e],a=0,s=o.length;a<s;a++,r++)i[r]=o[a];return i};Object.defineProperty(e,"__esModule",{value:!0});var r=n(0),o=(n(440),n(114),n(1658)),a=n(2),s=n(6),c=n(197),l=(n(622),n(0)),u=n(114),d=n(440),p=n(168),h=n(3),f=n(625),g=["groupMappingInfoModalBody"];function m(t,e){if(1&t&&(l.ɵɵelementStart(0,"li"),l.ɵɵtext(1),l.ɵɵelementEnd()),2&t){var n=e.$implicit;l.ɵɵadvance(1),l.ɵɵtextInterpolate1(" ",n," ")}}function v(t,e){if(1&t&&(l.ɵɵelementContainerStart(0),l.ɵɵelementStart(1,"h2",3),l.ɵɵtext(2),l.ɵɵelementEnd(),l.ɵɵelementStart(3,"mat-dialog-content"),l.ɵɵelementStart(4,"p"),l.ɵɵtext(5),l.ɵɵelementEnd(),l.ɵɵelementStart(6,"p"),l.ɵɵtext(7),l.ɵɵelementEnd(),l.ɵɵelementStart(8,"div",4),l.ɵɵelementStart(9,"div",5),l.ɵɵelementStart(10,"h4"),l.ɵɵtext(11),l.ɵɵelementEnd(),l.ɵɵelementStart(12,"ul"),l.ɵɵtemplate(13,m,2,1,"li",6),l.ɵɵelementEnd(),l.ɵɵelementEnd(),l.ɵɵelementEnd(),l.ɵɵelementEnd(),l.ɵɵelementStart(14,"mat-dialog-actions",7),l.ɵɵelementStart(15,"button",8),l.ɵɵtext(16),l.ɵɵelementEnd(),l.ɵɵelementStart(17,"button",9),l.ɵɵtext(18),l.ɵɵelementEnd(),l.ɵɵelementStart(19,"button",9),l.ɵɵtext(20),l.ɵɵelementEnd(),l.ɵɵelementEnd(),l.ɵɵelementContainerEnd()),2&t){var n=e.$implicit,i=l.ɵɵnextContext(2);l.ɵɵadvance(2),l.ɵɵtextInterpolate(n("Open ID group mapping")),l.ɵɵadvance(3),l.ɵɵtextInterpolate1(" ",n("Create these groups in your OIDC system of record ensuring you create a mapper to a claim array matching your selector in BOTH your identity and access tokens.")," "),l.ɵɵadvance(2),l.ɵɵtextInterpolate1(" ",n("Your administrator may then assign membership within the OIDC system of record. Users will have the rights and privileges assigned to members of that group when they log in.")," "),l.ɵɵadvance(4),l.ɵɵtextInterpolate(n("4DKanKan Groups")),l.ɵɵadvance(2),l.ɵɵproperty("ngForOf",i.qualifiedGroups),l.ɵɵadvance(3),l.ɵɵtextInterpolate(n("Cancel")),l.ɵɵadvance(1),l.ɵɵproperty("mat-dialog-close",i.fileType.CSV),l.ɵɵadvance(1),l.ɵɵtextInterpolate1(" ",n("Export CSV"),""),l.ɵɵadvance(1),l.ɵɵproperty("mat-dialog-close",i.fileType.JSON),l.ɵɵadvance(1),l.ɵɵtextInterpolate1(" ",n("Export JSON"),"")}}function y(t,e){1&t&&l.ɵɵtemplate(0,v,21,10,"ng-container",2)}var b=function(){function t(t,e){this.GroupService=t,this.MatDialog=e,this.fileType=c.FileType}return Object.defineProperty(t.prototype,"qualifiedGroups",{get:function(){var t=this;return this.GroupService.getGroupsAsArray().map(function(e){return t.instancePrefix+e.name})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"qualifiedGroupsJson",{get:function(){return JSON.stringify({groups:this.qualifiedGroups})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"qualifiedGroupsCsv",{get:function(){return i(["groupName"],this.qualifiedGroups).join("\n")},enumerable:!0,configurable:!0}),t.prototype.openGroupDigest=function(t){var e=this;this.MatDialog.open(this.groupMappingInfoModalBody,o.ModalStyleLarge.default()).afterClosed().subscribe(function(t){t&&e.exportFile(t)}),t.preventDefault()},Object.defineProperty(t.prototype,"instancePrefix",{get:function(){return""!==this.config.savedHostPrefix?this.config.savedHostPrefix:this.config.urlHostPrefix},enumerable:!0,configurable:!0}),t.prototype.exportFile=function(t){var e=t===c.FileType.JSON?this.qualifiedGroupsJson:this.qualifiedGroupsCsv,n=document.createElement("a"),i=new Blob([e],{type:"text/plain"});n.href=URL.createObjectURL(i),n.download="groups."+t,n.click()},t.ɵfac=function(e){return new(e||t)(l.ɵɵdirectiveInject(u.GroupService),l.ɵɵdirectiveInject(d.MatDialog))},t.ɵcmp=l.ɵɵdefineComponent({type:t,selectors:[["user-auth-group-digest"]],viewQuery:function(t,e){var n;1&t&&l.ɵɵviewQuery(g,!0),2&t&&l.ɵɵqueryRefresh(n=l.ɵɵloadQuery())&&(e.groupMappingInfoModalBody=n.first)},inputs:{config:"config"},decls:4,vars:0,consts:[[1,"material-icons",3,"click"],["groupMappingInfoModalBody",""],[4,"transloco"],["mat-dialog-title",""],["layout","row",1,"group-container"],["layout","column"],[4,"ngFor","ngForOf"],["align","end"],["mat-stroked-button","","mat-dialog-close",""],["mat-flat-button","","color","primary",3,"mat-dialog-close"]],template:function(t,e){1&t&&(l.ɵɵelementStart(0,"i",0),l.ɵɵlistener("click",function(t){return e.openGroupDigest(t)}),l.ɵɵtext(1,"info"),l.ɵɵelementEnd(),l.ɵɵtemplate(2,y,1,0,"ng-template",null,1,l.ɵɵtemplateRefExtractor))},directives:[p.TranslocoDirective,d.MatDialogTitle,d.MatDialogContent,h.NgForOf,d.MatDialogActions,f.MatButton,d.MatDialogClose],styles:["i[_ngcontent-%COMP%]{margin-left:5px;vertical-align:middle}ul[_ngcontent-%COMP%]{border-radius:10px;background-color:#f5f5f5;padding:20px}li[_ngcontent-%COMP%]{list-style:none}div.group-container[_ngcontent-%COMP%]{margin-top:18px}"]}),t}();e.UserAuthGroupDigestComponent=b,l.ɵsetClassMetadata(b,[{type:r.Component,args:[{selector:"user-auth-group-digest",templateUrl:"./UserAuthGroupDigest.ng.html",styleUrls:["./UserAuthGroupDigest.ng.scss"]}]}],function(){return[{type:u.GroupService},{type:d.MatDialog}]},{config:[{type:r.Input}],groupMappingInfoModalBody:[{type:r.ViewChild,args:["groupMappingInfoModalBody",{static:!1}]}]}),a.module("IVWebApp").directive("userAuthGroupDigest",s.downgradeComponent({component:b}))},function(t,e,n){"use strict";n.d(e,"a",function(){return o});var i=n(1),r=n(26);function o(){return function(t){return t.lift(new a)}}var a=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new s(t))},t}(),s=function(t){function e(e){var n=t.call(this,e)||this;return n.hasPrev=!1,n}return i.c(e,t),e.prototype._next=function(t){var e;this.hasPrev?e=[this.prev,t]:this.hasPrev=!0,this.prev=t,e&&this.destination.next(e)},e}(r.a)},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(652);var i=n(230),r=[];window.IV={loaded:function(t){return r.push(t)},bootstrapped:function(t){return window.IV.bootstrapCallbacks.push(t)},bootstrapCallbacks:[]},n(869),n(948),n(1667),i.runWithBaseHref(function(){return Promise.all([n.e(0),n.e(1),n.e(2),n.e(12),n.e(10)]).then(function(){window.IV.bootstrapApp=n(1670).bootstrapApp,window.IV.loaded=function(t){return t()},r.forEach(function(t){return t()}),r.length=0}.bind(null,n)).catch(void 0)})},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(653),n(654),n(665),n(666),n(667),n(678),n(867),n(868)},function(t,e,n){var i=function(t){"use strict";var e=Object.prototype,n=e.hasOwnProperty,i="function"==typeof Symbol?Symbol:{},r=i.iterator||"@@iterator",o=i.asyncIterator||"@@asyncIterator",a=i.toStringTag||"@@toStringTag";function s(t,e,n){return Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{s({},"")}catch(t){s=function(t,e,n){return t[e]=n}}function c(t,e,n,i){var r=e&&e.prototype instanceof d?e:d,o=Object.create(r.prototype),a=new M(i||[]);return o._invoke=function(t,e,n){var i="suspendedStart";return function(r,o){if("executing"===i)throw new Error("Generator is already running");if("completed"===i){if("throw"===r)throw o;return{value:void 0,done:!0}}for(n.method=r,n.arg=o;;){var a=n.delegate;if(a){var s=w(a,n);if(s){if(s===u)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if("suspendedStart"===i)throw i="completed",n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);i="executing";var c=l(t,e,n);if("normal"===c.type){if(i=n.done?"completed":"suspendedYield",c.arg===u)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(i="completed",n.method="throw",n.arg=c.arg)}}}(t,n,a),o}function l(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(t){return{type:"throw",arg:t}}}t.wrap=c;var u={};function d(){}function p(){}function h(){}var f={};f[r]=function(){return this};var g=Object.getPrototypeOf,m=g&&g(g(E([])));m&&m!==e&&n.call(m,r)&&(f=m);var v=h.prototype=d.prototype=Object.create(f);function y(t){["next","throw","return"].forEach(function(e){s(t,e,function(t){return this._invoke(e,t)})})}function b(t,e){var i;this._invoke=function(r,o){function a(){return new e(function(i,a){!function i(r,o,a,s){var c=l(t[r],t,o);if("throw"!==c.type){var u=c.arg,d=u.value;return d&&"object"==typeof d&&n.call(d,"__await")?e.resolve(d.__await).then(function(t){i("next",t,a,s)},function(t){i("throw",t,a,s)}):e.resolve(d).then(function(t){u.value=t,a(u)},function(t){return i("throw",t,a,s)})}s(c.arg)}(r,o,i,a)})}return i=i?i.then(a,a):a()}}function w(t,e){var n=t.iterator[e.method];if(void 0===n){if(e.delegate=null,"throw"===e.method){if(t.iterator.return&&(e.method="return",e.arg=void 0,w(t,e),"throw"===e.method))return u;e.method="throw",e.arg=new TypeError("The iterator does not provide a 'throw' method")}return u}var i=l(n,t.iterator,e.arg);if("throw"===i.type)return e.method="throw",e.arg=i.arg,e.delegate=null,u;var r=i.arg;return r?r.done?(e[t.resultName]=r.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,u):r:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,u)}function S(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function x(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function M(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(S,this),this.reset(!0)}function E(t){if(t){var e=t[r];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var i=-1,o=function e(){for(;++i<t.length;)if(n.call(t,i))return e.value=t[i],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:C}}function C(){return{value:void 0,done:!0}}return p.prototype=v.constructor=h,h.constructor=p,p.displayName=s(h,a,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===p||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,h):(t.__proto__=h,s(t,a,"GeneratorFunction")),t.prototype=Object.create(v),t},t.awrap=function(t){return{__await:t}},y(b.prototype),b.prototype[o]=function(){return this},t.AsyncIterator=b,t.async=function(e,n,i,r,o){void 0===o&&(o=Promise);var a=new b(c(e,n,i,r),o);return t.isGeneratorFunction(n)?a:a.next().then(function(t){return t.done?t.value:a.next()})},y(v),s(v,a,"Generator"),v[r]=function(){return this},v.toString=function(){return"[object Generator]"},t.keys=function(t){var e=[];for(var n in t)e.push(n);return e.reverse(),function n(){for(;e.length;){var i=e.pop();if(i in t)return n.value=i,n.done=!1,n}return n.done=!0,n}},t.values=E,M.prototype={constructor:M,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!t)for(var e in this)"t"===e.charAt(0)&&n.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function i(n,i){return a.type="throw",a.arg=t,e.next=n,i&&(e.method="next",e.arg=void 0),!!i}for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r],a=o.completion;if("root"===o.tryLoc)return i("end");if(o.tryLoc<=this.prev){var s=n.call(o,"catchLoc"),c=n.call(o,"finallyLoc");if(s&&c){if(this.prev<o.catchLoc)return i(o.catchLoc,!0);if(this.prev<o.finallyLoc)return i(o.finallyLoc)}else if(s){if(this.prev<o.catchLoc)return i(o.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return i(o.finallyLoc)}}}},abrupt:function(t,e){for(var i=this.tryEntries.length-1;i>=0;--i){var r=this.tryEntries[i];if(r.tryLoc<=this.prev&&n.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var o=r;break}}o&&("break"===t||"continue"===t)&&o.tryLoc<=e&&e<=o.finallyLoc&&(o=null);var a=o?o.completion:{};return a.type=t,a.arg=e,o?(this.method="next",this.next=o.finallyLoc,u):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),u},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),x(n),u}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var i=n.completion;if("throw"===i.type){var r=i.arg;x(n)}return r}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,n){return this.delegate={iterator:E(t),resultName:e,nextLoc:n},"next"===this.method&&(this.arg=void 0),u}},t}(t.exports);try{regeneratorRuntime=i}catch(t){Function("r","regeneratorRuntime = r")(i)}},function(t,e,n){n(655),n(656),n(657),n(658),n(660),n(661),n(664),n(475);var i=n(286);t.exports=i},function(t,e,n){var i=n(34),r=n(456),o=n(457),a=n(88);for(var s in r){var c=i[s],l=c&&c.prototype;if(l&&l.forEach!==o)try{a(l,"forEach",o)}catch(t){l.forEach=o}}},function(t,e,n){var i=n(34),r=n(456),o=n(285),a=n(88),s=n(45),c=s("iterator"),l=s("toStringTag"),u=o.values;for(var d in r){var p=i[d],h=p&&p.prototype;if(h){if(h[c]!==u)try{a(h,c,u)}catch(t){h[c]=u}if(h[l]||a(h,l,d),r[d])for(var f in o)if(h[f]!==o[f])try{a(h,f,o[f])}catch(t){h[f]=o[f]}}}},function(t,e,n){var i=n(5),r=n(34),o=n(468);i({global:!0,bind:!0,enumerable:!0,forced:!r.setImmediate||!r.clearImmediate},{setImmediate:o.set,clearImmediate:o.clear})},function(t,e,n){var i=n(5),r=n(34),o=n(659),a=n(133),s=r.process,c="process"==a(s);i({global:!0,enumerable:!0,noTargetGet:!0},{queueMicrotask:function(t){var e=c&&s.domain;o(e?e.bind(t):t)}})},function(t,e,n){var i,r,o,a,s,c,l,u,d=n(34),p=n(82).f,h=n(133),f=n(468).set,g=n(469),m=d.MutationObserver||d.WebKitMutationObserver,v=d.process,y=d.Promise,b="process"==h(v),w=p(d,"queueMicrotask"),S=w&&w.value;S||(i=function(){var t,e;for(b&&(t=v.domain)&&t.exit();r;){e=r.fn,r=r.next;try{e()}catch(t){throw r?a():o=void 0,t}}o=void 0,t&&t.enter()},b?a=function(){v.nextTick(i)}:m&&!g?(s=!0,c=document.createTextNode(""),new m(i).observe(c,{characterData:!0}),a=function(){c.data=s=!s}):y&&y.resolve?(l=y.resolve(void 0),u=l.then,a=function(){u.call(l,i)}):a=function(){f.call(d,i)}),t.exports=S||function(t){var e={fn:t,next:void 0};o&&(o.next=e),r||(r=e,a()),o=e}},function(t,e,n){var i=n(5),r=n(34),o=n(290),a=[].slice,s=function(t){return function(e,n){var i=arguments.length>2,r=i?a.call(arguments,2):void 0;return t(i?function(){("function"==typeof e?e:Function(e)).apply(this,r)}:e,n)}};i({global:!0,bind:!0,forced:/MSIE .\./.test(o)},{setTimeout:s(r.setTimeout),setInterval:s(r.setInterval)})},function(t,e,n){"use strict";n(470);var i,r=n(5),o=n(43),a=n(471),s=n(34),c=n(353),l=n(98),u=n(192),d=n(58),p=n(472),h=n(473),f=n(291).codeAt,g=n(662),m=n(162),v=n(475),y=n(110),b=s.URL,w=v.URLSearchParams,S=v.getState,x=y.set,M=y.getterFor("URL"),E=Math.floor,C=Math.pow,A=/[A-Za-z]/,T=/[\d+-.A-Za-z]/,O=/\d/,_=/^(0x|0X)/,P=/^[0-7]+$/,I=/^\d+$/,k=/^[\dA-Fa-f]+$/,D=/[\u0000\u0009\u000A\u000D #%/:?@[\\]]/,R=/[\u0000\u0009\u000A\u000D #/:?@[\\]]/,L=/^[\u0000-\u001F ]+|[\u0000-\u001F ]+$/g,N=/[\u0009\u000A\u000D]/g,j=function(t,e){var n,i,r;if("["==e.charAt(0)){if("]"!=e.charAt(e.length-1))return"Invalid host";if(!(n=F(e.slice(1,-1))))return"Invalid host";t.host=n}else if(K(t)){if(e=g(e),D.test(e))return"Invalid host";if(null===(n=V(e)))return"Invalid host";t.host=n}else{if(R.test(e))return"Invalid host";for(n="",i=h(e),r=0;r<i.length;r++)n+=W(i[r],B);t.host=n}},V=function(t){var e,n,i,r,o,a,s,c=t.split(".");if(c.length&&""==c[c.length-1]&&c.pop(),(e=c.length)>4)return t;for(n=[],i=0;i<e;i++){if(""==(r=c[i]))return t;if(o=10,r.length>1&&"0"==r.charAt(0)&&(o=_.test(r)?16:8,r=r.slice(8==o?1:2)),""===r)a=0;else{if(!(10==o?I:8==o?P:k).test(r))return t;a=parseInt(r,o)}n.push(a)}for(i=0;i<e;i++)if(a=n[i],i==e-1){if(a>=C(256,5-e))return null}else if(a>255)return null;for(s=n.pop(),i=0;i<n.length;i++)s+=n[i]*C(256,3-i);return s},F=function(t){var e,n,i,r,o,a,s,c=[0,0,0,0,0,0,0,0],l=0,u=null,d=0,p=function(){return t.charAt(d)};if(":"==p()){if(":"!=t.charAt(1))return;d+=2,u=++l}for(;p();){if(8==l)return;if(":"!=p()){for(e=n=0;n<4&&k.test(p());)e=16*e+parseInt(p(),16),d++,n++;if("."==p()){if(0==n)return;if(d-=n,l>6)return;for(i=0;p();){if(r=null,i>0){if(!("."==p()&&i<4))return;d++}if(!O.test(p()))return;for(;O.test(p());){if(o=parseInt(p(),10),null===r)r=o;else{if(0==r)return;r=10*r+o}if(r>255)return;d++}c[l]=256*c[l]+r,2!=++i&&4!=i||l++}if(4!=i)return;break}if(":"==p()){if(d++,!p())return}else if(p())return;c[l++]=e}else{if(null!==u)return;d++,u=++l}}if(null!==u)for(a=l-u,l=7;0!=l&&a>0;)s=c[l],c[l--]=c[u+a-1],c[u+--a]=s;else if(8!=l)return;return c},U=function(t){var e,n,i,r;if("number"==typeof t){for(e=[],n=0;n<4;n++)e.unshift(t%256),t=E(t/256);return e.join(".")}if("object"==typeof t){for(e="",i=function(t){for(var e=null,n=1,i=null,r=0,o=0;o<8;o++)0!==t[o]?(r>n&&(e=i,n=r),i=null,r=0):(null===i&&(i=o),++r);return r>n&&(e=i,n=r),e}(t),n=0;n<8;n++)r&&0===t[n]||(r&&(r=!1),i===n?(e+=n?":":"::",r=!0):(e+=t[n].toString(16),n<7&&(e+=":")));return"["+e+"]"}return t},B={},z=p({},B,{" ":1,'"':1,"<":1,">":1,"`":1}),G=p({},z,{"#":1,"?":1,"{":1,"}":1}),H=p({},G,{"/":1,":":1,";":1,"=":1,"@":1,"[":1,"\\":1,"]":1,"^":1,"|":1}),W=function(t,e){var n=f(t,0);return n>32&&n<127&&!d(e,t)?t:encodeURIComponent(t)},q={ftp:21,file:null,http:80,https:443,ws:80,wss:443},K=function(t){return d(q,t.scheme)},X=function(t){return""!=t.username||""!=t.password},Y=function(t){return!t.host||t.cannotBeABaseURL||"file"==t.scheme},Z=function(t,e){var n;return 2==t.length&&A.test(t.charAt(0))&&(":"==(n=t.charAt(1))||!e&&"|"==n)},J=function(t){var e;return t.length>1&&Z(t.slice(0,2))&&(2==t.length||"/"===(e=t.charAt(2))||"\\"===e||"?"===e||"#"===e)},Q=function(t){var e=t.path,n=e.length;!n||"file"==t.scheme&&1==n&&Z(e[0],!0)||e.pop()},$=function(t){return"."===t||"%2e"===t.toLowerCase()},tt={},et={},nt={},it={},rt={},ot={},at={},st={},ct={},lt={},ut={},dt={},pt={},ht={},ft={},gt={},mt={},vt={},yt={},bt={},wt={},St=function(t,e,n,r){var o,a,s,c,l,u=n||tt,p=0,f="",g=!1,m=!1,v=!1;for(n||(t.scheme="",t.username="",t.password="",t.host=null,t.port=null,t.path=[],t.query=null,t.fragment=null,t.cannotBeABaseURL=!1,e=e.replace(L,"")),e=e.replace(N,""),o=h(e);p<=o.length;){switch(a=o[p],u){case tt:if(!a||!A.test(a)){if(n)return"Invalid scheme";u=nt;continue}f+=a.toLowerCase(),u=et;break;case et:if(a&&(T.test(a)||"+"==a||"-"==a||"."==a))f+=a.toLowerCase();else{if(":"!=a){if(n)return"Invalid scheme";f="",u=nt,p=0;continue}if(n&&(K(t)!=d(q,f)||"file"==f&&(X(t)||null!==t.port)||"file"==t.scheme&&!t.host))return;if(t.scheme=f,n)return void(K(t)&&q[t.scheme]==t.port&&(t.port=null));f="","file"==t.scheme?u=ht:K(t)&&r&&r.scheme==t.scheme?u=it:K(t)?u=st:"/"==o[p+1]?(u=rt,p++):(t.cannotBeABaseURL=!0,t.path.push(""),u=yt)}break;case nt:if(!r||r.cannotBeABaseURL&&"#"!=a)return"Invalid scheme";if(r.cannotBeABaseURL&&"#"==a){t.scheme=r.scheme,t.path=r.path.slice(),t.query=r.query,t.fragment="",t.cannotBeABaseURL=!0,u=wt;break}u="file"==r.scheme?ht:ot;continue;case it:if("/"!=a||"/"!=o[p+1]){u=ot;continue}u=ct,p++;break;case rt:if("/"==a){u=lt;break}u=vt;continue;case ot:if(t.scheme=r.scheme,a==i)t.username=r.username,t.password=r.password,t.host=r.host,t.port=r.port,t.path=r.path.slice(),t.query=r.query;else if("/"==a||"\\"==a&&K(t))u=at;else if("?"==a)t.username=r.username,t.password=r.password,t.host=r.host,t.port=r.port,t.path=r.path.slice(),t.query="",u=bt;else{if("#"!=a){t.username=r.username,t.password=r.password,t.host=r.host,t.port=r.port,t.path=r.path.slice(),t.path.pop(),u=vt;continue}t.username=r.username,t.password=r.password,t.host=r.host,t.port=r.port,t.path=r.path.slice(),t.query=r.query,t.fragment="",u=wt}break;case at:if(!K(t)||"/"!=a&&"\\"!=a){if("/"!=a){t.username=r.username,t.password=r.password,t.host=r.host,t.port=r.port,u=vt;continue}u=lt}else u=ct;break;case st:if(u=ct,"/"!=a||"/"!=f.charAt(p+1))continue;p++;break;case ct:if("/"!=a&&"\\"!=a){u=lt;continue}break;case lt:if("@"==a){g&&(f="%40"+f),g=!0,s=h(f);for(var y=0;y<s.length;y++){var b=s[y];if(":"!=b||v){var w=W(b,H);v?t.password+=w:t.username+=w}else v=!0}f=""}else if(a==i||"/"==a||"?"==a||"#"==a||"\\"==a&&K(t)){if(g&&""==f)return"Invalid authority";p-=h(f).length+1,f="",u=ut}else f+=a;break;case ut:case dt:if(n&&"file"==t.scheme){u=gt;continue}if(":"!=a||m){if(a==i||"/"==a||"?"==a||"#"==a||"\\"==a&&K(t)){if(K(t)&&""==f)return"Invalid host";if(n&&""==f&&(X(t)||null!==t.port))return;if(c=j(t,f))return c;if(f="",u=mt,n)return;continue}"["==a?m=!0:"]"==a&&(m=!1),f+=a}else{if(""==f)return"Invalid host";if(c=j(t,f))return c;if(f="",u=pt,n==dt)return}break;case pt:if(!O.test(a)){if(a==i||"/"==a||"?"==a||"#"==a||"\\"==a&&K(t)||n){if(""!=f){var S=parseInt(f,10);if(S>65535)return"Invalid port";t.port=K(t)&&S===q[t.scheme]?null:S,f=""}if(n)return;u=mt;continue}return"Invalid port"}f+=a;break;case ht:if(t.scheme="file","/"==a||"\\"==a)u=ft;else{if(!r||"file"!=r.scheme){u=vt;continue}if(a==i)t.host=r.host,t.path=r.path.slice(),t.query=r.query;else if("?"==a)t.host=r.host,t.path=r.path.slice(),t.query="",u=bt;else{if("#"!=a){J(o.slice(p).join(""))||(t.host=r.host,t.path=r.path.slice(),Q(t)),u=vt;continue}t.host=r.host,t.path=r.path.slice(),t.query=r.query,t.fragment="",u=wt}}break;case ft:if("/"==a||"\\"==a){u=gt;break}r&&"file"==r.scheme&&!J(o.slice(p).join(""))&&(Z(r.path[0],!0)?t.path.push(r.path[0]):t.host=r.host),u=vt;continue;case gt:if(a==i||"/"==a||"\\"==a||"?"==a||"#"==a){if(!n&&Z(f))u=vt;else if(""==f){if(t.host="",n)return;u=mt}else{if(c=j(t,f))return c;if("localhost"==t.host&&(t.host=""),n)return;f="",u=mt}continue}f+=a;break;case mt:if(K(t)){if(u=vt,"/"!=a&&"\\"!=a)continue}else if(n||"?"!=a)if(n||"#"!=a){if(a!=i&&(u=vt,"/"!=a))continue}else t.fragment="",u=wt;else t.query="",u=bt;break;case vt:if(a==i||"/"==a||"\\"==a&&K(t)||!n&&("?"==a||"#"==a)){if(".."===(l=(l=f).toLowerCase())||"%2e."===l||".%2e"===l||"%2e%2e"===l?(Q(t),"/"==a||"\\"==a&&K(t)||t.path.push("")):$(f)?"/"==a||"\\"==a&&K(t)||t.path.push(""):("file"==t.scheme&&!t.path.length&&Z(f)&&(t.host&&(t.host=""),f=f.charAt(0)+":"),t.path.push(f)),f="","file"==t.scheme&&(a==i||"?"==a||"#"==a))for(;t.path.length>1&&""===t.path[0];)t.path.shift();"?"==a?(t.query="",u=bt):"#"==a&&(t.fragment="",u=wt)}else f+=W(a,G);break;case yt:"?"==a?(t.query="",u=bt):"#"==a?(t.fragment="",u=wt):a!=i&&(t.path[0]+=W(a,B));break;case bt:n||"#"!=a?a!=i&&("'"==a&&K(t)?t.query+="%27":t.query+="#"==a?"%23":W(a,B)):(t.fragment="",u=wt);break;case wt:a!=i&&(t.fragment+=W(a,z))}p++}},xt=function(t){var e,n,i=u(this,xt,"URL"),r=arguments.length>1?arguments[1]:void 0,a=String(t),s=x(i,{type:"URL"});if(void 0!==r)if(r instanceof xt)e=M(r);else if(n=St(e={},String(r)))throw TypeError(n);if(n=St(s,a,null,e))throw TypeError(n);var c=s.searchParams=new w,l=S(c);l.updateSearchParams(s.query),l.updateURL=function(){s.query=String(c)||null},o||(i.href=Et.call(i),i.origin=Ct.call(i),i.protocol=At.call(i),i.username=Tt.call(i),i.password=Ot.call(i),i.host=_t.call(i),i.hostname=Pt.call(i),i.port=It.call(i),i.pathname=kt.call(i),i.search=Dt.call(i),i.searchParams=Rt.call(i),i.hash=Lt.call(i))},Mt=xt.prototype,Et=function(){var t=M(this),e=t.scheme,n=t.username,i=t.password,r=t.host,o=t.port,a=t.path,s=t.query,c=t.fragment,l=e+":";return null!==r?(l+="//",X(t)&&(l+=n+(i?":"+i:"")+"@"),l+=U(r),null!==o&&(l+=":"+o)):"file"==e&&(l+="//"),l+=t.cannotBeABaseURL?a[0]:a.length?"/"+a.join("/"):"",null!==s&&(l+="?"+s),null!==c&&(l+="#"+c),l},Ct=function(){var t=M(this),e=t.scheme,n=t.port;if("blob"==e)try{return new URL(e.path[0]).origin}catch(t){return"null"}return"file"!=e&&K(t)?e+"://"+U(t.host)+(null!==n?":"+n:""):"null"},At=function(){return M(this).scheme+":"},Tt=function(){return M(this).username},Ot=function(){return M(this).password},_t=function(){var t=M(this),e=t.host,n=t.port;return null===e?"":null===n?U(e):U(e)+":"+n},Pt=function(){var t=M(this).host;return null===t?"":U(t)},It=function(){var t=M(this).port;return null===t?"":String(t)},kt=function(){var t=M(this),e=t.path;return t.cannotBeABaseURL?e[0]:e.length?"/"+e.join("/"):""},Dt=function(){var t=M(this).query;return t?"?"+t:""},Rt=function(){return M(this).searchParams},Lt=function(){var t=M(this).fragment;return t?"#"+t:""},Nt=function(t,e){return{get:t,set:e,configurable:!0,enumerable:!0}};if(o&&c(Mt,{href:Nt(Et,function(t){var e=M(this),n=String(t),i=St(e,n);if(i)throw TypeError(i);S(e.searchParams).updateSearchParams(e.query)}),origin:Nt(Ct),protocol:Nt(At,function(t){var e=M(this);St(e,String(t)+":",tt)}),username:Nt(Tt,function(t){var e=M(this),n=h(String(t));if(!Y(e)){e.username="";for(var i=0;i<n.length;i++)e.username+=W(n[i],H)}}),password:Nt(Ot,function(t){var e=M(this),n=h(String(t));if(!Y(e)){e.password="";for(var i=0;i<n.length;i++)e.password+=W(n[i],H)}}),host:Nt(_t,function(t){var e=M(this);e.cannotBeABaseURL||St(e,String(t),ut)}),hostname:Nt(Pt,function(t){var e=M(this);e.cannotBeABaseURL||St(e,String(t),dt)}),port:Nt(It,function(t){var e=M(this);Y(e)||(""==(t=String(t))?e.port=null:St(e,t,pt))}),pathname:Nt(kt,function(t){var e=M(this);e.cannotBeABaseURL||(e.path=[],St(e,t+"",mt))}),search:Nt(Dt,function(t){var e=M(this);""==(t=String(t))?e.query=null:("?"==t.charAt(0)&&(t=t.slice(1)),e.query="",St(e,t,bt)),S(e.searchParams).updateSearchParams(e.query)}),searchParams:Nt(Rt),hash:Nt(Lt,function(t){var e=M(this);""!=(t=String(t))?("#"==t.charAt(0)&&(t=t.slice(1)),e.fragment="",St(e,t,wt)):e.fragment=null})}),l(Mt,"toJSON",function(){return Et.call(this)},{enumerable:!0}),l(Mt,"toString",function(){return Et.call(this)},{enumerable:!0}),b){var jt=b.createObjectURL,Vt=b.revokeObjectURL;jt&&l(xt,"createObjectURL",function(t){return jt.apply(b,arguments)}),Vt&&l(xt,"revokeObjectURL",function(t){return Vt.apply(b,arguments)})}m(xt,"URL"),r({global:!0,forced:!a,sham:!o},{URL:xt})},function(t,e,n){"use strict";var i=/[^\0-\u007E]/,r=/[.\u3002\uFF0E\uFF61]/g,o="Overflow: input needs wider integers to process",a=Math.floor,s=String.fromCharCode,c=function(t){return t+22+75*(t<26)},l=function(t,e,n){var i=0;for(t=n?a(t/700):t>>1,t+=a(t/e);t>455;i+=36)t=a(t/35);return a(i+36*t/(t+38))},u=function(t){var e,n,i=[],r=(t=function(t){for(var e=[],n=0,i=t.length;n<i;){var r=t.charCodeAt(n++);if(r>=55296&&r<=56319&&n<i){var o=t.charCodeAt(n++);56320==(64512&o)?e.push(((1023&r)<<10)+(1023&o)+65536):(e.push(r),n--)}else e.push(r)}return e}(t)).length,u=128,d=0,p=72;for(e=0;e<t.length;e++)(n=t[e])<128&&i.push(s(n));var h=i.length,f=h;for(h&&i.push("-");f<r;){var g=2147483647;for(e=0;e<t.length;e++)(n=t[e])>=u&&n<g&&(g=n);var m=f+1;if(g-u>a((2147483647-d)/m))throw RangeError(o);for(d+=(g-u)*m,u=g,e=0;e<t.length;e++){if((n=t[e])<u&&++d>2147483647)throw RangeError(o);if(n==u){for(var v=d,y=36;;y+=36){var b=y<=p?1:y>=p+26?26:y-p;if(v<b)break;var w=v-b,S=36-b;i.push(s(c(b+w%S))),v=a(w/S)}i.push(s(c(v))),p=l(d,m,f==h),d=0,++f}}++d,++u}return i.join("")};t.exports=function(t){var e,n,o=[],a=t.toLowerCase().replace(r,".").split(".");for(e=0;e<a.length;e++)n=a[e],o.push(i.test(n)?"xn--"+u(n):n);return o.join(".")}},function(t,e,n){var i=n(29),r=n(241);t.exports=function(t){var e=r(t);if("function"!=typeof e)throw TypeError(String(t)+" is not iterable");return i(e.call(t))}},function(t,e,n){"use strict";n(5)({target:"URL",proto:!0,enumerable:!0},{toJSON:function(){return URL.prototype.toString.call(this)}})},function(t,e){[Element.prototype,CharacterData.prototype,DocumentType.prototype].filter(Boolean).forEach(function(t){t.hasOwnProperty("remove")||Object.defineProperty(t,"remove",{configurable:!0,enumerable:!0,writable:!0,value:function(){this.parentNode&&this.parentNode.removeChild(this)}})})},function(t,e,n){"use strict";n.r(e),n.d(e,"Headers",function(){return f}),n.d(e,"Request",function(){return S}),n.d(e,"Response",function(){return M}),n.d(e,"DOMException",function(){return C}),n.d(e,"fetch",function(){return A});var i="undefined"!=typeof self?self:void 0,r="URLSearchParams"in i,o="Symbol"in i&&"iterator"in Symbol,a="FileReader"in i&&"Blob"in i&&function(){try{return new Blob,!0}catch(t){return!1}}(),s="FormData"in i,c="ArrayBuffer"in i;if(c)var l=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],u=ArrayBuffer.isView||function(t){return t&&l.indexOf(Object.prototype.toString.call(t))>-1};function d(t){if("string"!=typeof t&&(t=String(t)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(t)||""===t)throw new TypeError("Invalid character in header field name");return t.toLowerCase()}function p(t){return"string"!=typeof t&&(t=String(t)),t}function h(t){var e={next:function(){var e=t.shift();return{done:void 0===e,value:e}}};return o&&(e[Symbol.iterator]=function(){return e}),e}function f(t){this.map={},t instanceof f?t.forEach(function(t,e){this.append(e,t)},this):Array.isArray(t)?t.forEach(function(t){this.append(t[0],t[1])},this):t&&Object.getOwnPropertyNames(t).forEach(function(e){this.append(e,t[e])},this)}function g(t){if(t.bodyUsed)return Promise.reject(new TypeError("Already read"));t.bodyUsed=!0}function m(t){return new Promise(function(e,n){t.onload=function(){e(t.result)},t.onerror=function(){n(t.error)}})}function v(t){var e=new FileReader,n=m(e);return e.readAsArrayBuffer(t),n}function y(t){if(t.slice)return t.slice(0);var e=new Uint8Array(t.byteLength);return e.set(new Uint8Array(t)),e.buffer}function b(){return this.bodyUsed=!1,this._initBody=function(t){var e;this.bodyUsed=this.bodyUsed,this._bodyInit=t,t?"string"==typeof t?this._bodyText=t:a&&Blob.prototype.isPrototypeOf(t)?this._bodyBlob=t:s&&FormData.prototype.isPrototypeOf(t)?this._bodyFormData=t:r&&URLSearchParams.prototype.isPrototypeOf(t)?this._bodyText=t.toString():c&&a&&(e=t)&&DataView.prototype.isPrototypeOf(e)?(this._bodyArrayBuffer=y(t.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):c&&(ArrayBuffer.prototype.isPrototypeOf(t)||u(t))?this._bodyArrayBuffer=y(t):this._bodyText=t=Object.prototype.toString.call(t):this._bodyText="",this.headers.get("content-type")||("string"==typeof t?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r&&URLSearchParams.prototype.isPrototypeOf(t)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},a&&(this.blob=function(){var t=g(this);if(t)return t;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?g(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(v)}),this.text=function(){var t,e,n,i=g(this);if(i)return i;if(this._bodyBlob)return t=this._bodyBlob,n=m(e=new FileReader),e.readAsText(t),n;if(this._bodyArrayBuffer)return Promise.resolve(function(t){for(var e=new Uint8Array(t),n=new Array(e.length),i=0;i<e.length;i++)n[i]=String.fromCharCode(e[i]);return n.join("")}(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},s&&(this.formData=function(){return this.text().then(x)}),this.json=function(){return this.text().then(JSON.parse)},this}f.prototype.append=function(t,e){t=d(t),e=p(e);var n=this.map[t];this.map[t]=n?n+", "+e:e},f.prototype.delete=function(t){delete this.map[d(t)]},f.prototype.get=function(t){return t=d(t),this.has(t)?this.map[t]:null},f.prototype.has=function(t){return this.map.hasOwnProperty(d(t))},f.prototype.set=function(t,e){this.map[d(t)]=p(e)},f.prototype.forEach=function(t,e){for(var n in this.map)this.map.hasOwnProperty(n)&&t.call(e,this.map[n],n,this)},f.prototype.keys=function(){var t=[];return this.forEach(function(e,n){t.push(n)}),h(t)},f.prototype.values=function(){var t=[];return this.forEach(function(e){t.push(e)}),h(t)},f.prototype.entries=function(){var t=[];return this.forEach(function(e,n){t.push([n,e])}),h(t)},o&&(f.prototype[Symbol.iterator]=f.prototype.entries);var w=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];function S(t,e){var n,i,r=(e=e||{}).body;if(t instanceof S){if(t.bodyUsed)throw new TypeError("Already read");this.url=t.url,this.credentials=t.credentials,e.headers||(this.headers=new f(t.headers)),this.method=t.method,this.mode=t.mode,this.signal=t.signal,r||null==t._bodyInit||(r=t._bodyInit,t.bodyUsed=!0)}else this.url=String(t);if(this.credentials=e.credentials||this.credentials||"same-origin",!e.headers&&this.headers||(this.headers=new f(e.headers)),this.method=(i=(n=e.method||this.method||"GET").toUpperCase(),w.indexOf(i)>-1?i:n),this.mode=e.mode||this.mode||null,this.signal=e.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&r)throw new TypeError("Body not allowed for GET or HEAD requests");if(this._initBody(r),!("GET"!==this.method&&"HEAD"!==this.method||"no-store"!==e.cache&&"no-cache"!==e.cache)){var o=/([?&])_=[^&]*/;o.test(this.url)?this.url=this.url.replace(o,"$1_="+(new Date).getTime()):this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}function x(t){var e=new FormData;return t.trim().split("&").forEach(function(t){if(t){var n=t.split("="),i=n.shift().replace(/\+/g," "),r=n.join("=").replace(/\+/g," ");e.append(decodeURIComponent(i),decodeURIComponent(r))}}),e}function M(t,e){e||(e={}),this.type="default",this.status=void 0===e.status?200:e.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in e?e.statusText:"",this.headers=new f(e.headers),this.url=e.url||"",this._initBody(t)}S.prototype.clone=function(){return new S(this,{body:this._bodyInit})},b.call(S.prototype),b.call(M.prototype),M.prototype.clone=function(){return new M(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new f(this.headers),url:this.url})},M.error=function(){var t=new M(null,{status:0,statusText:""});return t.type="error",t};var E=[301,302,303,307,308];M.redirect=function(t,e){if(-1===E.indexOf(e))throw new RangeError("Invalid status code");return new M(null,{status:e,headers:{location:t}})};var C=i.DOMException;function A(t,e){return new Promise(function(n,r){var o=new S(t,e);if(o.signal&&o.signal.aborted)return r(new C("Aborted","AbortError"));var s=new XMLHttpRequest;function l(){s.abort()}s.onload=function(){var t,e,i={status:s.status,statusText:s.statusText,headers:(t=s.getAllResponseHeaders()||"",e=new f,t.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach(function(t){var n=t.split(":"),i=n.shift().trim();if(i){var r=n.join(":").trim();e.append(i,r)}}),e)};i.url="responseURL"in s?s.responseURL:i.headers.get("X-Request-URL");var r="response"in s?s.response:s.responseText;setTimeout(function(){n(new M(r,i))},0)},s.onerror=function(){setTimeout(function(){r(new TypeError("Network request failed"))},0)},s.ontimeout=function(){setTimeout(function(){r(new TypeError("Network request failed"))},0)},s.onabort=function(){setTimeout(function(){r(new C("Aborted","AbortError"))},0)},s.open(o.method,function(t){try{return""===t&&i.location.href?i.location.href:t}catch(e){return t}}(o.url),!0),"include"===o.credentials?s.withCredentials=!0:"omit"===o.credentials&&(s.withCredentials=!1),"responseType"in s&&(a?s.responseType="blob":c&&o.headers.get("Content-Type")&&-1!==o.headers.get("Content-Type").indexOf("application/octet-stream")&&(s.responseType="arraybuffer")),o.headers.forEach(function(t,e){s.setRequestHeader(e,t)}),o.signal&&(o.signal.addEventListener("abort",l),s.onreadystatechange=function(){4===s.readyState&&o.signal.removeEventListener("abort",l)}),s.send(void 0===o._bodyInit?null:o._bodyInit)})}"function"!=typeof C&&((C=function(t,e){this.message=t,this.name=e;var n=Error(t);this.stack=n.stack}).prototype=Object.create(Error.prototype),C.prototype.constructor=C),A.polyfill=!0,i.fetch||(i.fetch=A,i.Headers=f,i.Request=S,i.Response=M)},function(t,e,n){var i=n(668);n(669),n(670),n(671),n(672),n(673),n(674),n(675),n(676),n(677),t.exports=i},function(t,e,n){n(476),n(477),n(479),n(480),n(481),n(482),n(483),n(484),n(485),n(486),n(487),n(488),n(489);var i=n(286);t.exports=i.Reflect},function(t,e,n){var i=n(5),r=n(163),o=n(29),a=r.toKey,s=r.set;i({target:"Reflect",stat:!0},{defineMetadata:function(t,e,n){var i=arguments.length<4?void 0:a(arguments[3]);s(t,e,o(n),i)}})},function(t,e,n){var i=n(5),r=n(163),o=n(29),a=r.toKey,s=r.getMap,c=r.store;i({target:"Reflect",stat:!0},{deleteMetadata:function(t,e){var n=arguments.length<3?void 0:a(arguments[2]),i=s(o(e),n,!1);if(void 0===i||!i.delete(t))return!1;if(i.size)return!0;var r=c.get(e);return r.delete(n),!!r.size||c.delete(e)}})},function(t,e,n){var i=n(5),r=n(163),o=n(29),a=n(99),s=r.has,c=r.get,l=r.toKey,u=function(t,e,n){if(s(t,e,n))return c(t,e,n);var i=a(e);return null!==i?u(t,i,n):void 0};i({target:"Reflect",stat:!0},{getMetadata:function(t,e){var n=arguments.length<3?void 0:l(arguments[2]);return u(t,o(e),n)}})},function(t,e,n){var i=n(5),r=n(494),o=n(163),a=n(29),s=n(99),c=n(245),l=o.keys,u=o.toKey,d=function(t,e){var n=l(t,e),i=s(t);if(null===i)return n;var o,a,u=d(i,e);return u.length?n.length?(o=new r(n.concat(u)),c(o,(a=[]).push,a),a):u:n};i({target:"Reflect",stat:!0},{getMetadataKeys:function(t){var e=arguments.length<2?void 0:u(arguments[1]);return d(a(t),e)}})},function(t,e,n){var i=n(5),r=n(163),o=n(29),a=r.get,s=r.toKey;i({target:"Reflect",stat:!0},{getOwnMetadata:function(t,e){var n=arguments.length<3?void 0:s(arguments[2]);return a(t,o(e),n)}})},function(t,e,n){var i=n(5),r=n(163),o=n(29),a=r.keys,s=r.toKey;i({target:"Reflect",stat:!0},{getOwnMetadataKeys:function(t){var e=arguments.length<2?void 0:s(arguments[1]);return a(o(t),e)}})},function(t,e,n){var i=n(5),r=n(163),o=n(29),a=n(99),s=r.has,c=r.toKey,l=function(t,e,n){if(s(t,e,n))return!0;var i=a(e);return null!==i&&l(t,i,n)};i({target:"Reflect",stat:!0},{hasMetadata:function(t,e){var n=arguments.length<3?void 0:c(arguments[2]);return l(t,o(e),n)}})},function(t,e,n){var i=n(5),r=n(163),o=n(29),a=r.has,s=r.toKey;i({target:"Reflect",stat:!0},{hasOwnMetadata:function(t,e){var n=arguments.length<3?void 0:s(arguments[2]);return a(t,o(e),n)}})},function(t,e,n){var i=n(5),r=n(163),o=n(29),a=r.toKey,s=r.set;i({target:"Reflect",stat:!0},{metadata:function(t,e){return function(n,i){s(t,e,o(n),a(i))}}})},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(679),n(680),n(681),n(682),n(683),n(684),n(685),n(686),n(687),n(688),n(689),n(690),n(691),n(692),n(693),n(694),n(695),n(696),n(697),n(698),n(699),n(700),n(701),n(702),n(703),n(704),n(705),n(706),n(707),n(708),n(709),n(710),n(711),n(712),n(713),n(714),n(716),n(717),n(718),n(719),n(720),n(721),n(722),n(723),n(724),n(725),n(726),n(727),n(728),n(729),n(730),n(731),n(732),n(733),n(734),n(735),n(736),n(737),n(738),n(739),n(740),n(741),n(742),n(743),n(744),n(745),n(746),n(747),n(748),n(749),n(750),n(285),n(751),n(752),n(753),n(754),n(755),n(756),n(757),n(758),n(759),n(760),n(761),n(762),n(763),n(764),n(765),n(766),n(767),n(470),n(768),n(769),n(770),n(771),n(772),n(773),n(774),n(775),n(776),n(777),n(778),n(779),n(780),n(781),n(503),n(782),n(783),n(784),n(785),n(786),n(787),n(788),n(790),n(791),n(792),n(793),n(794),n(795),n(796),n(797),n(798),n(799),n(800),n(801),n(802),n(803),n(804),n(805),n(806),n(808),n(809),n(810),n(811),n(812),n(813),n(814),n(815),n(816),n(817),n(818),n(819),n(820),n(822),n(823),n(825),n(490),n(494),n(492),n(826),n(827),n(829),n(830),n(831),n(832),n(834),n(835),n(836),n(837),n(838),n(839),n(840),n(841),n(842),n(843),n(844),n(845),n(846),n(847),n(848),n(849),n(850),n(851),n(852),n(853),n(854),n(855),n(856),n(857),n(858),n(859),n(860),n(861),n(862),n(863),n(864),n(865),n(866),n(476),n(477),n(479),n(480),n(481),n(482),n(483),n(484),n(485),n(486),n(487),n(488),n(489)},function(t,e,n){"use strict";var i=n(5),r=n(34),o=n(161),a=n(158),s=n(43),c=n(352),l=n(460),u=n(18),d=n(58),p=n(189),h=n(42),f=n(29),g=n(53),m=n(109),v=n(134),y=n(173),b=n(160),w=n(237),S=n(190),x=n(495),M=n(357),E=n(82),C=n(48),A=n(288),T=n(88),O=n(98),_=n(284),P=n(287),I=n(239),k=n(236),D=n(45),R=n(496),L=n(100),N=n(162),j=n(110),V=n(74).forEach,F=P("hidden"),U=D("toPrimitive"),B=j.set,z=j.getterFor("Symbol"),G=Object.prototype,H=r.Symbol,W=o("JSON","stringify"),q=E.f,K=C.f,X=x.f,Y=A.f,Z=_("symbols"),J=_("op-symbols"),Q=_("string-to-symbol-registry"),$=_("symbol-to-string-registry"),tt=_("wks"),et=r.QObject,nt=!et||!et.prototype||!et.prototype.findChild,it=s&&u(function(){return 7!=b(K({},"a",{get:function(){return K(this,"a",{value:7}).a}})).a})?function(t,e,n){var i=q(G,e);i&&delete G[e],K(t,e,n),i&&t!==G&&K(G,e,i)}:K,rt=function(t,e){var n=Z[t]=b(H.prototype);return B(n,{type:"Symbol",tag:t,description:e}),s||(n.description=e),n},ot=l?function(t){return"symbol"==typeof t}:function(t){return Object(t)instanceof H},at=function(t,e,n){t===G&&at(J,e,n),f(t);var i=v(e,!0);return f(n),d(Z,i)?(n.enumerable?(d(t,F)&&t[F][i]&&(t[F][i]=!1),n=b(n,{enumerable:y(0,!1)})):(d(t,F)||K(t,F,y(1,{})),t[F][i]=!0),it(t,i,n)):K(t,i,n)},st=function(t,e){f(t);var n=m(e),i=w(n).concat(dt(n));return V(i,function(e){s&&!ct.call(n,e)||at(t,e,n[e])}),t},ct=function(t){var e=v(t,!0),n=Y.call(this,e);return!(this===G&&d(Z,e)&&!d(J,e))&&(!(n||!d(this,e)||!d(Z,e)||d(this,F)&&this[F][e])||n)},lt=function(t,e){var n=m(t),i=v(e,!0);if(n!==G||!d(Z,i)||d(J,i)){var r=q(n,i);return!r||!d(Z,i)||d(n,F)&&n[F][i]||(r.enumerable=!0),r}},ut=function(t){var e=X(m(t)),n=[];return V(e,function(t){d(Z,t)||d(I,t)||n.push(t)}),n},dt=function(t){var e=t===G,n=X(e?J:m(t)),i=[];return V(n,function(t){!d(Z,t)||e&&!d(G,t)||i.push(Z[t])}),i};c||(O((H=function(){if(this instanceof H)throw TypeError("Symbol is not a constructor");var t=arguments.length&&void 0!==arguments[0]?String(arguments[0]):void 0,e=k(t),n=function(t){this===G&&n.call(J,t),d(this,F)&&d(this[F],e)&&(this[F][e]=!1),it(this,e,y(1,t))};return s&&nt&&it(G,e,{configurable:!0,set:n}),rt(e,t)}).prototype,"toString",function(){return z(this).tag}),O(H,"withoutSetter",function(t){return rt(k(t),t)}),A.f=ct,C.f=at,E.f=lt,S.f=x.f=ut,M.f=dt,R.f=function(t){return rt(D(t),t)},s&&(K(H.prototype,"description",{configurable:!0,get:function(){return z(this).description}}),a||O(G,"propertyIsEnumerable",ct,{unsafe:!0}))),i({global:!0,wrap:!0,forced:!c,sham:!c},{Symbol:H}),V(w(tt),function(t){L(t)}),i({target:"Symbol",stat:!0,forced:!c},{for:function(t){var e=String(t);if(d(Q,e))return Q[e];var n=H(e);return Q[e]=n,$[n]=e,n},keyFor:function(t){if(!ot(t))throw TypeError(t+" is not a symbol");if(d($,t))return $[t]},useSetter:function(){nt=!0},useSimple:function(){nt=!1}}),i({target:"Object",stat:!0,forced:!c,sham:!s},{create:function(t,e){return void 0===e?b(t):st(b(t),e)},defineProperty:at,defineProperties:st,getOwnPropertyDescriptor:lt}),i({target:"Object",stat:!0,forced:!c},{getOwnPropertyNames:ut,getOwnPropertySymbols:dt}),i({target:"Object",stat:!0,forced:u(function(){M.f(1)})},{getOwnPropertySymbols:function(t){return M.f(g(t))}}),W&&i({target:"JSON",stat:!0,forced:!c||u(function(){var t=H();return"[null]"!=W([t])||"{}"!=W({a:t})||"{}"!=W(Object(t))})},{stringify:function(t,e,n){for(var i,r=[t],o=1;arguments.length>o;)r.push(arguments[o++]);if(i=e,(h(e)||void 0!==t)&&!ot(t))return p(e)||(e=function(t,e){if("function"==typeof i&&(e=i.call(this,t,e)),!ot(e))return e}),r[1]=e,W.apply(null,r)}}),H.prototype[U]||T(H.prototype,U,H.prototype.valueOf),N(H,"Symbol"),I[F]=!0},function(t,e,n){n(100)("asyncIterator")},function(t,e,n){"use strict";var i=n(5),r=n(43),o=n(34),a=n(58),s=n(42),c=n(48).f,l=n(465),u=o.Symbol;if(r&&"function"==typeof u&&(!("description"in u.prototype)||void 0!==u().description)){var d={},p=function(){var t=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),e=this instanceof p?new u(t):void 0===t?u():u(t);return""===t&&(d[e]=!0),e};l(p,u);var h=p.prototype=u.prototype;h.constructor=p;var f=h.toString,g="Symbol(test)"==String(u("test")),m=/^Symbol\((.*)\)[^)]+$/;c(h,"description",{configurable:!0,get:function(){var t=s(this)?this.valueOf():this,e=f.call(t);if(a(d,t))return"";var n=g?e.slice(7,-1):e.replace(m,"$1");return""===n?void 0:n}}),i({global:!0,forced:!0},{Symbol:p})}},function(t,e,n){n(100)("hasInstance")},function(t,e,n){n(100)("isConcatSpreadable")},function(t,e,n){n(100)("iterator")},function(t,e,n){n(100)("match")},function(t,e,n){n(100)("matchAll")},function(t,e,n){n(100)("replace")},function(t,e,n){n(100)("search")},function(t,e,n){n(100)("species")},function(t,e,n){n(100)("split")},function(t,e,n){n(100)("toPrimitive")},function(t,e,n){n(100)("toStringTag")},function(t,e,n){n(100)("unscopables")},function(t,e,n){var i=n(5),r=n(472);i({target:"Object",stat:!0,forced:Object.assign!==r},{assign:r})},function(t,e,n){n(5)({target:"Object",stat:!0,sham:!n(43)},{create:n(160)})},function(t,e,n){var i=n(5),r=n(43);i({target:"Object",stat:!0,forced:!r,sham:!r},{defineProperty:n(48).f})},function(t,e,n){var i=n(5),r=n(43);i({target:"Object",stat:!0,forced:!r,sham:!r},{defineProperties:n(353)})},function(t,e,n){var i=n(5),r=n(497).entries;i({target:"Object",stat:!0},{entries:function(t){return r(t)}})},function(t,e,n){var i=n(5),r=n(244),o=n(18),a=n(42),s=n(194).onFreeze,c=Object.freeze;i({target:"Object",stat:!0,forced:o(function(){c(1)}),sham:!r},{freeze:function(t){return c&&a(t)?c(s(t)):t}})},function(t,e,n){var i=n(5),r=n(245),o=n(193);i({target:"Object",stat:!0},{fromEntries:function(t){var e={};return r(t,function(t,n){o(e,t,n)},void 0,!0),e}})},function(t,e,n){var i=n(5),r=n(18),o=n(109),a=n(82).f,s=n(43),c=r(function(){a(1)});i({target:"Object",stat:!0,forced:!s||c,sham:!s},{getOwnPropertyDescriptor:function(t,e){return a(o(t),e)}})},function(t,e,n){var i=n(5),r=n(43),o=n(356),a=n(109),s=n(82),c=n(193);i({target:"Object",stat:!0,sham:!r},{getOwnPropertyDescriptors:function(t){for(var e,n,i=a(t),r=s.f,l=o(i),u={},d=0;l.length>d;)void 0!==(n=r(i,e=l[d++]))&&c(u,e,n);return u}})},function(t,e,n){var i=n(5),r=n(18),o=n(495).f;i({target:"Object",stat:!0,forced:r(function(){return!Object.getOwnPropertyNames(1)})},{getOwnPropertyNames:o})},function(t,e,n){var i=n(5),r=n(18),o=n(53),a=n(99),s=n(359);i({target:"Object",stat:!0,forced:r(function(){a(1)}),sham:!s},{getPrototypeOf:function(t){return a(o(t))}})},function(t,e,n){n(5)({target:"Object",stat:!0},{is:n(498)})},function(t,e,n){var i=n(5),r=n(18),o=n(42),a=Object.isExtensible;i({target:"Object",stat:!0,forced:r(function(){a(1)})},{isExtensible:function(t){return!!o(t)&&(!a||a(t))}})},function(t,e,n){var i=n(5),r=n(18),o=n(42),a=Object.isFrozen;i({target:"Object",stat:!0,forced:r(function(){a(1)})},{isFrozen:function(t){return!o(t)||!!a&&a(t)}})},function(t,e,n){var i=n(5),r=n(18),o=n(42),a=Object.isSealed;i({target:"Object",stat:!0,forced:r(function(){a(1)})},{isSealed:function(t){return!o(t)||!!a&&a(t)}})},function(t,e,n){var i=n(5),r=n(53),o=n(237);i({target:"Object",stat:!0,forced:n(18)(function(){o(1)})},{keys:function(t){return o(r(t))}})},function(t,e,n){var i=n(5),r=n(42),o=n(194).onFreeze,a=n(244),s=n(18),c=Object.preventExtensions;i({target:"Object",stat:!0,forced:s(function(){c(1)}),sham:!a},{preventExtensions:function(t){return c&&r(t)?c(o(t)):t}})},function(t,e,n){var i=n(5),r=n(42),o=n(194).onFreeze,a=n(244),s=n(18),c=Object.seal;i({target:"Object",stat:!0,forced:s(function(){c(1)}),sham:!a},{seal:function(t){return c&&r(t)?c(o(t)):t}})},function(t,e,n){n(5)({target:"Object",stat:!0},{setPrototypeOf:n(191)})},function(t,e,n){var i=n(5),r=n(497).values;i({target:"Object",stat:!0},{values:function(t){return r(t)}})},function(t,e,n){var i=n(361),r=n(98),o=n(715);i||r(Object.prototype,"toString",o,{unsafe:!0})},function(t,e,n){"use strict";var i=n(361),r=n(242);t.exports=i?{}.toString:function(){return"[object "+r(this)+"]"}},function(t,e,n){"use strict";var i=n(5),r=n(43),o=n(294),a=n(53),s=n(132),c=n(48);r&&i({target:"Object",proto:!0,forced:o},{__defineGetter__:function(t,e){c.f(a(this),t,{get:s(e),enumerable:!0,configurable:!0})}})},function(t,e,n){"use strict";var i=n(5),r=n(43),o=n(294),a=n(53),s=n(132),c=n(48);r&&i({target:"Object",proto:!0,forced:o},{__defineSetter__:function(t,e){c.f(a(this),t,{set:s(e),enumerable:!0,configurable:!0})}})},function(t,e,n){"use strict";var i=n(5),r=n(43),o=n(294),a=n(53),s=n(134),c=n(99),l=n(82).f;r&&i({target:"Object",proto:!0,forced:o},{__lookupGetter__:function(t){var e,n=a(this),i=s(t,!0);do{if(e=l(n,i))return e.get}while(n=c(n))}})},function(t,e,n){"use strict";var i=n(5),r=n(43),o=n(294),a=n(53),s=n(134),c=n(99),l=n(82).f;r&&i({target:"Object",proto:!0,forced:o},{__lookupSetter__:function(t){var e,n=a(this),i=s(t,!0);do{if(e=l(n,i))return e.set}while(n=c(n))}})},function(t,e,n){n(5)({target:"Function",proto:!0},{bind:n(478)})},function(t,e,n){var i=n(43),r=n(48).f,o=Function.prototype,a=o.toString,s=/^\s*function ([^ (]*)/;i&&!("name"in o)&&r(o,"name",{configurable:!0,get:function(){try{return a.call(this).match(s)[1]}catch(t){return""}}})},function(t,e,n){"use strict";var i=n(42),r=n(48),o=n(99),a=n(45)("hasInstance"),s=Function.prototype;a in s||r.f(s,a,{value:function(t){if("function"!=typeof this||!i(t))return!1;if(!i(this.prototype))return t instanceof this;for(;t=o(t);)if(this.prototype===t)return!0;return!1}})},function(t,e,n){var i=n(5),r=n(473);i({target:"Array",stat:!0,forced:!n(362)(function(t){Array.from(t)})},{from:r})},function(t,e,n){n(5)({target:"Array",stat:!0},{isArray:n(189)})},function(t,e,n){"use strict";var i=n(5),r=n(18),o=n(193);i({target:"Array",stat:!0,forced:r(function(){function t(){}return!(Array.of.call(t)instanceof t)})},{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)o(n,t,arguments[t++]);return n.length=e,n}})},function(t,e,n){"use strict";var i=n(5),r=n(18),o=n(189),a=n(42),s=n(53),c=n(44),l=n(193),u=n(235),d=n(247),p=n(45),h=n(499),f=p("isConcatSpreadable"),g=h>=51||!r(function(){var t=[];return t[f]=!1,t.concat()[0]!==t}),m=d("concat"),v=function(t){if(!a(t))return!1;var e=t[f];return void 0!==e?!!e:o(t)};i({target:"Array",proto:!0,forced:!g||!m},{concat:function(t){var e,n,i,r,o,a=s(this),d=u(a,0),p=0;for(e=-1,i=arguments.length;e<i;e++)if(o=-1===e?a:arguments[e],v(o)){if(p+(r=c(o.length))>9007199254740991)throw TypeError("Maximum allowed index exceeded");for(n=0;n<r;n++,p++)n in o&&l(d,p,o[n])}else{if(p>=9007199254740991)throw TypeError("Maximum allowed index exceeded");l(d,p++,o)}return d.length=p,d}})},function(t,e,n){var i=n(5),r=n(500),o=n(174);i({target:"Array",proto:!0},{copyWithin:r}),o("copyWithin")},function(t,e,n){"use strict";var i=n(5),r=n(74).every,o=n(159),a=n(97),s=o("every"),c=a("every");i({target:"Array",proto:!0,forced:!s||!c},{every:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}})},function(t,e,n){var i=n(5),r=n(363),o=n(174);i({target:"Array",proto:!0},{fill:r}),o("fill")},function(t,e,n){"use strict";var i=n(5),r=n(74).filter,o=n(247),a=n(97),s=o("filter"),c=a("filter");i({target:"Array",proto:!0,forced:!s||!c},{filter:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}})},function(t,e,n){"use strict";var i=n(5),r=n(74).find,o=n(174),a=n(97),s=!0,c=a("find");"find"in[]&&Array(1).find(function(){s=!1}),i({target:"Array",proto:!0,forced:s||!c},{find:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}}),o("find")},function(t,e,n){"use strict";var i=n(5),r=n(74).findIndex,o=n(174),a=n(97),s=!0,c=a("findIndex");"findIndex"in[]&&Array(1).findIndex(function(){s=!1}),i({target:"Array",proto:!0,forced:s||!c},{findIndex:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}}),o("findIndex")},function(t,e,n){"use strict";var i=n(5),r=n(501),o=n(53),a=n(44),s=n(122),c=n(235);i({target:"Array",proto:!0},{flat:function(){var t=arguments.length?arguments[0]:void 0,e=o(this),n=a(e.length),i=c(e,0);return i.length=r(i,e,e,n,0,void 0===t?1:s(t)),i}})},function(t,e,n){"use strict";var i=n(5),r=n(501),o=n(53),a=n(44),s=n(132),c=n(235);i({target:"Array",proto:!0},{flatMap:function(t){var e,n=o(this),i=a(n.length);return s(t),(e=c(n,0)).length=r(e,n,n,i,0,1,t,arguments.length>1?arguments[1]:void 0),e}})},function(t,e,n){"use strict";var i=n(5),r=n(457);i({target:"Array",proto:!0,forced:[].forEach!=r},{forEach:r})},function(t,e,n){"use strict";var i=n(5),r=n(238).includes,o=n(174);i({target:"Array",proto:!0,forced:!n(97)("indexOf",{ACCESSORS:!0,1:0})},{includes:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}}),o("includes")},function(t,e,n){"use strict";var i=n(5),r=n(238).indexOf,o=n(159),a=n(97),s=[].indexOf,c=!!s&&1/[1].indexOf(1,-0)<0,l=o("indexOf"),u=a("indexOf",{ACCESSORS:!0,1:0});i({target:"Array",proto:!0,forced:c||!l||!u},{indexOf:function(t){return c?s.apply(this,arguments)||0:r(this,t,arguments.length>1?arguments[1]:void 0)}})},function(t,e,n){"use strict";var i=n(5),r=n(234),o=n(109),a=n(159),s=[].join,c=r!=Object,l=a("join",",");i({target:"Array",proto:!0,forced:c||!l},{join:function(t){return s.call(o(this),void 0===t?",":t)}})},function(t,e,n){var i=n(5),r=n(502);i({target:"Array",proto:!0,forced:r!==[].lastIndexOf},{lastIndexOf:r})},function(t,e,n){"use strict";var i=n(5),r=n(74).map,o=n(247),a=n(97),s=o("map"),c=a("map");i({target:"Array",proto:!0,forced:!s||!c},{map:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}})},function(t,e,n){"use strict";var i=n(5),r=n(295).left,o=n(159),a=n(97),s=o("reduce"),c=a("reduce",{1:0});i({target:"Array",proto:!0,forced:!s||!c},{reduce:function(t){return r(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},function(t,e,n){"use strict";var i=n(5),r=n(295).right,o=n(159),a=n(97),s=o("reduceRight"),c=a("reduce",{1:0});i({target:"Array",proto:!0,forced:!s||!c},{reduceRight:function(t){return r(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},function(t,e,n){"use strict";var i=n(5),r=n(189),o=[].reverse,a=[1,2];i({target:"Array",proto:!0,forced:String(a)===String(a.reverse())},{reverse:function(){return r(this)&&(this.length=this.length),o.call(this)}})},function(t,e,n){"use strict";var i=n(5),r=n(42),o=n(189),a=n(175),s=n(44),c=n(109),l=n(193),u=n(45),d=n(247),p=n(97),h=d("slice"),f=p("slice",{ACCESSORS:!0,0:0,1:2}),g=u("species"),m=[].slice,v=Math.max;i({target:"Array",proto:!0,forced:!h||!f},{slice:function(t,e){var n,i,u,d=c(this),p=s(d.length),h=a(t,p),f=a(void 0===e?p:e,p);if(o(d)&&("function"!=typeof(n=d.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[g])&&(n=void 0):n=void 0,n===Array||void 0===n))return m.call(d,h,f);for(i=new(void 0===n?Array:n)(v(f-h,0)),u=0;h<f;h++,u++)h in d&&l(i,u,d[h]);return i.length=u,i}})},function(t,e,n){"use strict";var i=n(5),r=n(74).some,o=n(159),a=n(97),s=o("some"),c=a("some");i({target:"Array",proto:!0,forced:!s||!c},{some:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}})},function(t,e,n){"use strict";var i=n(5),r=n(132),o=n(53),a=n(18),s=n(159),c=[],l=c.sort,u=a(function(){c.sort(void 0)}),d=a(function(){c.sort(null)}),p=s("sort");i({target:"Array",proto:!0,forced:u||!d||!p},{sort:function(t){return void 0===t?l.call(o(this)):l.call(o(this),r(t))}})},function(t,e,n){"use strict";var i=n(5),r=n(175),o=n(122),a=n(44),s=n(53),c=n(235),l=n(193),u=n(247),d=n(97),p=u("splice"),h=d("splice",{ACCESSORS:!0,0:0,1:2}),f=Math.max,g=Math.min;i({target:"Array",proto:!0,forced:!p||!h},{splice:function(t,e){var n,i,u,d,p,h,m=s(this),v=a(m.length),y=r(t,v),b=arguments.length;if(0===b?n=i=0:1===b?(n=0,i=v-y):(n=b-2,i=g(f(o(e),0),v-y)),v+n-i>9007199254740991)throw TypeError("Maximum allowed length exceeded");for(u=c(m,i),d=0;d<i;d++)(p=y+d)in m&&l(u,d,m[p]);if(u.length=i,n<i){for(d=y;d<v-i;d++)h=d+n,(p=d+i)in m?m[h]=m[p]:delete m[h];for(d=v;d>v-i+n;d--)delete m[d-1]}else if(n>i)for(d=v-i;d>y;d--)h=d+n-1,(p=d+i-1)in m?m[h]=m[p]:delete m[h];for(d=0;d<n;d++)m[d+y]=arguments[d+2];return m.length=v-i+n,u}})},function(t,e,n){n(246)("Array")},function(t,e,n){n(174)("flat")},function(t,e,n){n(174)("flatMap")},function(t,e,n){var i=n(5),r=n(175),o=String.fromCharCode,a=String.fromCodePoint;i({target:"String",stat:!0,forced:!!a&&1!=a.length},{fromCodePoint:function(t){for(var e,n=[],i=arguments.length,a=0;i>a;){if(e=+arguments[a++],r(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?o(e):o(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},function(t,e,n){var i=n(5),r=n(109),o=n(44);i({target:"String",stat:!0},{raw:function(t){for(var e=r(t.raw),n=o(e.length),i=arguments.length,a=[],s=0;n>s;)a.push(String(e[s++])),s<i&&a.push(String(arguments[s]));return a.join("")}})},function(t,e,n){"use strict";var i=n(5),r=n(291).codeAt;i({target:"String",proto:!0},{codePointAt:function(t){return r(this,t)}})},function(t,e,n){"use strict";var i,r=n(5),o=n(82).f,a=n(44),s=n(364),c=n(87),l=n(365),u=n(158),d="".endsWith,p=Math.min,h=l("endsWith");r({target:"String",proto:!0,forced:!(!u&&!h&&(i=o(String.prototype,"endsWith"),i&&!i.writable)||h)},{endsWith:function(t){var e=String(c(this));s(t);var n=arguments.length>1?arguments[1]:void 0,i=a(e.length),r=void 0===n?i:p(a(n),i),o=String(t);return d?d.call(e,o,r):e.slice(r-o.length,r)===o}})},function(t,e,n){"use strict";var i=n(5),r=n(364),o=n(87);i({target:"String",proto:!0,forced:!n(365)("includes")},{includes:function(t){return!!~String(o(this)).indexOf(r(t),arguments.length>1?arguments[1]:void 0)}})},function(t,e,n){"use strict";var i=n(297),r=n(29),o=n(44),a=n(87),s=n(299),c=n(300);i("match",1,function(t,e,n){return[function(e){var n=a(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,n):new RegExp(e)[t](String(n))},function(t){var i=n(e,t,this);if(i.done)return i.value;var a=r(t),l=String(this);if(!a.global)return c(a,l);var u=a.unicode;a.lastIndex=0;for(var d,p=[],h=0;null!==(d=c(a,l));){var f=String(d[0]);p[h]=f,""===f&&(a.lastIndex=s(l,o(a.lastIndex),u)),h++}return 0===h?null:p}]})},function(t,e,n){"use strict";var i=n(5),r=n(358),o=n(87),a=n(44),s=n(132),c=n(29),l=n(133),u=n(296),d=n(248),p=n(88),h=n(18),f=n(45),g=n(195),m=n(299),v=n(110),y=n(158),b=f("matchAll"),w=v.set,S=v.getterFor("RegExp String Iterator"),x=RegExp.prototype,M=x.exec,E="".matchAll,C=!!E&&!h(function(){"a".matchAll(/./)}),A=r(function(t,e,n,i){w(this,{type:"RegExp String Iterator",regexp:t,string:e,global:n,unicode:i,done:!1})},"RegExp String",function(){var t=S(this);if(t.done)return{value:void 0,done:!0};var e=t.regexp,n=t.string,i=function(t,e){var n,i=t.exec;if("function"==typeof i){if("object"!=typeof(n=i.call(t,e)))throw TypeError("Incorrect exec result");return n}return M.call(t,e)}(e,n);return null===i?{value:void 0,done:t.done=!0}:t.global?(""==String(i[0])&&(e.lastIndex=m(n,a(e.lastIndex),t.unicode)),{value:i,done:!1}):(t.done=!0,{value:i,done:!1})}),T=function(t){var e,n,i,r,o,s,l=c(this),u=String(t);return e=g(l,RegExp),void 0===(n=l.flags)&&l instanceof RegExp&&!("flags"in x)&&(n=d.call(l)),i=void 0===n?"":String(n),r=new e(e===RegExp?l.source:l,i),o=!!~i.indexOf("g"),s=!!~i.indexOf("u"),r.lastIndex=a(l.lastIndex),new A(r,u,o,s)};i({target:"String",proto:!0,forced:C},{matchAll:function(t){var e,n,i,r=o(this);if(null!=t){if(u(t)&&!~String(o("flags"in x?t.flags:d.call(t))).indexOf("g"))throw TypeError("`.matchAll` does not allow non-global regexes");if(C)return E.apply(r,arguments);if(void 0===(n=t[b])&&y&&"RegExp"==l(t)&&(n=T),null!=n)return s(n).call(t,r)}else if(C)return E.apply(r,arguments);return e=String(r),i=new RegExp(t,"g"),y?T.call(i,e):i[b](e)}}),y||b in x||p(x,b,T)},function(t,e,n){"use strict";var i=n(5),r=n(367).end;i({target:"String",proto:!0,forced:n(504)},{padEnd:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}})},function(t,e,n){"use strict";var i=n(5),r=n(367).start;i({target:"String",proto:!0,forced:n(504)},{padStart:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}})},function(t,e,n){n(5)({target:"String",proto:!0},{repeat:n(368)})},function(t,e,n){"use strict";var i=n(297),r=n(29),o=n(53),a=n(44),s=n(122),c=n(87),l=n(299),u=n(300),d=Math.max,p=Math.min,h=Math.floor,f=/\$([$&'`]|\d\d?|<[^>]*>)/g,g=/\$([$&'`]|\d\d?)/g;i("replace",2,function(t,e,n,i){var m=i.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,v=i.REPLACE_KEEPS_$0,y=m?"$":"$0";return[function(n,i){var r=c(this),o=null==n?void 0:n[t];return void 0!==o?o.call(n,r,i):e.call(String(r),n,i)},function(t,i){if(!m&&v||"string"==typeof i&&-1===i.indexOf(y)){var o=n(e,t,this,i);if(o.done)return o.value}var c=r(t),h=String(this),f="function"==typeof i;f||(i=String(i));var g=c.global;if(g){var w=c.unicode;c.lastIndex=0}for(var S=[];;){var x=u(c,h);if(null===x)break;if(S.push(x),!g)break;""===String(x[0])&&(c.lastIndex=l(h,a(c.lastIndex),w))}for(var M,E="",C=0,A=0;A<S.length;A++){x=S[A];for(var T=String(x[0]),O=d(p(s(x.index),h.length),0),_=[],P=1;P<x.length;P++)_.push(void 0===(M=x[P])?M:String(M));var I=x.groups;if(f){var k=[T].concat(_,O,h);void 0!==I&&k.push(I);var D=String(i.apply(void 0,k))}else D=b(T,h,O,_,I,i);O>=C&&(E+=h.slice(C,O)+D,C=O+T.length)}return E+h.slice(C)}];function b(t,n,i,r,a,s){var c=i+t.length,l=r.length,u=g;return void 0!==a&&(a=o(a),u=f),e.call(s,u,function(e,o){var s;switch(o.charAt(0)){case"$":return"$";case"&":return t;case"`":return n.slice(0,i);case"'":return n.slice(c);case"<":s=a[o.slice(1,-1)];break;default:var u=+o;if(0===u)return e;if(u>l){var d=h(u/10);return 0===d?e:d<=l?void 0===r[d-1]?o.charAt(1):r[d-1]+o.charAt(1):e}s=r[u-1]}return void 0===s?"":s})}})},function(t,e,n){"use strict";var i=n(297),r=n(29),o=n(87),a=n(498),s=n(300);i("search",1,function(t,e,n){return[function(e){var n=o(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,n):new RegExp(e)[t](String(n))},function(t){var i=n(e,t,this);if(i.done)return i.value;var o=r(t),c=String(this),l=o.lastIndex;a(l,0)||(o.lastIndex=0);var u=s(o,c);return a(o.lastIndex,l)||(o.lastIndex=l),null===u?-1:u.index}]})},function(t,e,n){"use strict";var i=n(297),r=n(296),o=n(29),a=n(87),s=n(195),c=n(299),l=n(44),u=n(300),d=n(298),p=n(18),h=[].push,f=Math.min,g=!p(function(){return!RegExp(4294967295,"y")});i("split",2,function(t,e,n){var i;return i="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,n){var i=String(a(this)),o=void 0===n?4294967295:n>>>0;if(0===o)return[];if(void 0===t)return[i];if(!r(t))return e.call(i,t,o);for(var s,c,l,u=[],p=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),f=0,g=new RegExp(t.source,p+"g");(s=d.call(g,i))&&!((c=g.lastIndex)>f&&(u.push(i.slice(f,s.index)),s.length>1&&s.index<i.length&&h.apply(u,s.slice(1)),l=s[0].length,f=c,u.length>=o));)g.lastIndex===s.index&&g.lastIndex++;return f===i.length?!l&&g.test("")||u.push(""):u.push(i.slice(f)),u.length>o?u.slice(0,o):u}:"0".split(void 0,0).length?function(t,n){return void 0===t&&0===n?[]:e.call(this,t,n)}:e,[function(e,n){var r=a(this),o=null==e?void 0:e[t];return void 0!==o?o.call(e,r,n):i.call(String(r),e,n)},function(t,r){var a=n(i,t,this,r,i!==e);if(a.done)return a.value;var d=o(t),p=String(this),h=s(d,RegExp),m=d.unicode,v=(d.ignoreCase?"i":"")+(d.multiline?"m":"")+(d.unicode?"u":"")+(g?"y":"g"),y=new h(g?d:"^(?:"+d.source+")",v),b=void 0===r?4294967295:r>>>0;if(0===b)return[];if(0===p.length)return null===u(y,p)?[p]:[];for(var w=0,S=0,x=[];S<p.length;){y.lastIndex=g?S:0;var M,E=u(y,g?p:p.slice(S));if(null===E||(M=f(l(y.lastIndex+(g?0:S)),p.length))===w)S=c(p,S,m);else{if(x.push(p.slice(w,S)),x.length===b)return x;for(var C=1;C<=E.length-1;C++)if(x.push(E[C]),x.length===b)return x;S=w=M}}return x.push(p.slice(w)),x}]},!g)},function(t,e,n){"use strict";var i,r=n(5),o=n(82).f,a=n(44),s=n(364),c=n(87),l=n(365),u=n(158),d="".startsWith,p=Math.min,h=l("startsWith");r({target:"String",proto:!0,forced:!(!u&&!h&&(i=o(String.prototype,"startsWith"),i&&!i.writable)||h)},{startsWith:function(t){var e=String(c(this));s(t);var n=a(p(arguments.length>1?arguments[1]:void 0,e.length)),i=String(t);return d?d.call(e,i,n):e.slice(n,n+i.length)===i}})},function(t,e,n){"use strict";var i=n(5),r=n(214).trim;i({target:"String",proto:!0,forced:n(369)("trim")},{trim:function(){return r(this)}})},function(t,e,n){"use strict";var i=n(5),r=n(214).start,o=n(369)("trimStart"),a=o?function(){return r(this)}:"".trimStart;i({target:"String",proto:!0,forced:o},{trimStart:a,trimLeft:a})},function(t,e,n){"use strict";var i=n(5),r=n(214).end,o=n(369)("trimEnd"),a=o?function(){return r(this)}:"".trimEnd;i({target:"String",proto:!0,forced:o},{trimEnd:a,trimRight:a})},function(t,e,n){"use strict";var i=n(5),r=n(111);i({target:"String",proto:!0,forced:n(112)("anchor")},{anchor:function(t){return r(this,"a","name",t)}})},function(t,e,n){"use strict";var i=n(5),r=n(111);i({target:"String",proto:!0,forced:n(112)("big")},{big:function(){return r(this,"big","","")}})},function(t,e,n){"use strict";var i=n(5),r=n(111);i({target:"String",proto:!0,forced:n(112)("blink")},{blink:function(){return r(this,"blink","","")}})},function(t,e,n){"use strict";var i=n(5),r=n(111);i({target:"String",proto:!0,forced:n(112)("bold")},{bold:function(){return r(this,"b","","")}})},function(t,e,n){"use strict";var i=n(5),r=n(111);i({target:"String",proto:!0,forced:n(112)("fixed")},{fixed:function(){return r(this,"tt","","")}})},function(t,e,n){"use strict";var i=n(5),r=n(111);i({target:"String",proto:!0,forced:n(112)("fontcolor")},{fontcolor:function(t){return r(this,"font","color",t)}})},function(t,e,n){"use strict";var i=n(5),r=n(111);i({target:"String",proto:!0,forced:n(112)("fontsize")},{fontsize:function(t){return r(this,"font","size",t)}})},function(t,e,n){"use strict";var i=n(5),r=n(111);i({target:"String",proto:!0,forced:n(112)("italics")},{italics:function(){return r(this,"i","","")}})},function(t,e,n){"use strict";var i=n(5),r=n(111);i({target:"String",proto:!0,forced:n(112)("link")},{link:function(t){return r(this,"a","href",t)}})},function(t,e,n){"use strict";var i=n(5),r=n(111);i({target:"String",proto:!0,forced:n(112)("small")},{small:function(){return r(this,"small","","")}})},function(t,e,n){"use strict";var i=n(5),r=n(111);i({target:"String",proto:!0,forced:n(112)("strike")},{strike:function(){return r(this,"strike","","")}})},function(t,e,n){"use strict";var i=n(5),r=n(111);i({target:"String",proto:!0,forced:n(112)("sub")},{sub:function(){return r(this,"sub","","")}})},function(t,e,n){"use strict";var i=n(5),r=n(111);i({target:"String",proto:!0,forced:n(112)("sup")},{sup:function(){return r(this,"sup","","")}})},function(t,e,n){var i=n(43),r=n(34),o=n(289),a=n(293),s=n(48).f,c=n(190).f,l=n(296),u=n(248),d=n(366),p=n(98),h=n(18),f=n(110).set,g=n(246),m=n(45)("match"),v=r.RegExp,y=v.prototype,b=/a/g,w=/a/g,S=new v(b)!==b,x=d.UNSUPPORTED_Y;if(i&&o("RegExp",!S||x||h(function(){return w[m]=!1,v(b)!=b||v(w)==w||"/a/i"!=v(b,"i")}))){for(var M=function(t,e){var n,i=this instanceof M,r=l(t),o=void 0===e;if(!i&&r&&t.constructor===M&&o)return t;S?r&&!o&&(t=t.source):t instanceof M&&(o&&(e=u.call(t)),t=t.source),x&&(n=!!e&&e.indexOf("y")>-1)&&(e=e.replace(/y/g,""));var s=a(S?new v(t,e):v(t,e),i?this:y,M);return x&&n&&f(s,{sticky:n}),s},E=function(t){t in M||s(M,t,{configurable:!0,get:function(){return v[t]},set:function(e){v[t]=e}})},C=c(v),A=0;C.length>A;)E(C[A++]);y.constructor=M,M.prototype=y,p(r,"RegExp",M)}g("RegExp")},function(t,e,n){var i=n(43),r=n(48),o=n(248),a=n(366).UNSUPPORTED_Y;i&&("g"!=/./g.flags||a)&&r.f(RegExp.prototype,"flags",{configurable:!0,get:o})},function(t,e,n){"use strict";var i=n(98),r=n(29),o=n(18),a=n(248),s=RegExp.prototype,c=s.toString,l=o(function(){return"/a/b"!=c.call({source:"a",flags:"b"})}),u="toString"!=c.name;(l||u)&&i(RegExp.prototype,"toString",function(){var t=r(this),e=String(t.source),n=t.flags;return"/"+e+"/"+String(void 0===n&&t instanceof RegExp&&!("flags"in s)?a.call(t):n)},{unsafe:!0})},function(t,e,n){var i=n(5),r=n(505);i({global:!0,forced:parseInt!=r},{parseInt:r})},function(t,e,n){var i=n(5),r=n(506);i({global:!0,forced:parseFloat!=r},{parseFloat:r})},function(t,e,n){"use strict";var i=n(43),r=n(34),o=n(289),a=n(98),s=n(58),c=n(133),l=n(293),u=n(134),d=n(18),p=n(160),h=n(190).f,f=n(82).f,g=n(48).f,m=n(214).trim,v=r.Number,y=v.prototype,b="Number"==c(p(y)),w=function(t){var e,n,i,r,o,a,s,c,l=u(t,!1);if("string"==typeof l&&l.length>2)if(43===(e=(l=m(l)).charCodeAt(0))||45===e){if(88===(n=l.charCodeAt(2))||120===n)return NaN}else if(48===e){switch(l.charCodeAt(1)){case 66:case 98:i=2,r=49;break;case 79:case 111:i=8,r=55;break;default:return+l}for(a=(o=l.slice(2)).length,s=0;s<a;s++)if((c=o.charCodeAt(s))<48||c>r)return NaN;return parseInt(o,i)}return+l};if(o("Number",!v(" 0o1")||!v("0b1")||v("+0x1"))){for(var S,x=function(t){var e=arguments.length<1?0:t,n=this;return n instanceof x&&(b?d(function(){y.valueOf.call(n)}):"Number"!=c(n))?l(new v(w(e)),n,x):w(e)},M=i?h(v):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),E=0;M.length>E;E++)s(v,S=M[E])&&!s(x,S)&&g(x,S,f(v,S));x.prototype=y,y.constructor=x,a(r,"Number",x)}},function(t,e,n){n(5)({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)})},function(t,e,n){n(5)({target:"Number",stat:!0},{isFinite:n(789)})},function(t,e,n){var i=n(34).isFinite;t.exports=Number.isFinite||function(t){return"number"==typeof t&&i(t)}},function(t,e,n){n(5)({target:"Number",stat:!0},{isInteger:n(507)})},function(t,e,n){n(5)({target:"Number",stat:!0},{isNaN:function(t){return t!=t}})},function(t,e,n){var i=n(5),r=n(507),o=Math.abs;i({target:"Number",stat:!0},{isSafeInteger:function(t){return r(t)&&o(t)<=9007199254740991}})},function(t,e,n){n(5)({target:"Number",stat:!0},{MAX_SAFE_INTEGER:9007199254740991})},function(t,e,n){n(5)({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991})},function(t,e,n){var i=n(5),r=n(506);i({target:"Number",stat:!0,forced:Number.parseFloat!=r},{parseFloat:r})},function(t,e,n){var i=n(5),r=n(505);i({target:"Number",stat:!0,forced:Number.parseInt!=r},{parseInt:r})},function(t,e,n){"use strict";var i=n(5),r=n(122),o=n(508),a=n(368),s=n(18),c=1..toFixed,l=Math.floor,u=function(t,e,n){return 0===e?n:e%2==1?u(t,e-1,n*t):u(t*t,e/2,n)};i({target:"Number",proto:!0,forced:c&&("0.000"!==8e-5.toFixed(3)||"1"!==.9.toFixed(0)||"1.25"!==1.255.toFixed(2)||"1000000000000000128"!==(0xde0b6b3a7640080).toFixed(0))||!s(function(){c.call({})})},{toFixed:function(t){var e,n,i,s,c=o(this),d=r(t),p=[0,0,0,0,0,0],h="",f="0",g=function(t,e){for(var n=-1,i=e;++n<6;)i+=t*p[n],p[n]=i%1e7,i=l(i/1e7)},m=function(t){for(var e=6,n=0;--e>=0;)n+=p[e],p[e]=l(n/t),n=n%t*1e7},v=function(){for(var t=6,e="";--t>=0;)if(""!==e||0===t||0!==p[t]){var n=String(p[t]);e=""===e?n:e+a.call("0",7-n.length)+n}return e};if(d<0||d>20)throw RangeError("Incorrect fraction digits");if(c!=c)return"NaN";if(c<=-1e21||c>=1e21)return String(c);if(c<0&&(h="-",c=-c),c>1e-21)if(n=(e=function(t){for(var e=0,n=c*u(2,69,1);n>=4096;)e+=12,n/=4096;for(;n>=2;)e+=1,n/=2;return e}()-69)<0?c*u(2,-e,1):c/u(2,e,1),n*=4503599627370496,(e=52-e)>0){for(g(0,n),i=d;i>=7;)g(1e7,0),i-=7;for(g(u(10,i,1),0),i=e-1;i>=23;)m(1<<23),i-=23;m(1<<i),g(1,1),m(2),f=v()}else g(0,n),g(1<<-e,0),f=v()+a.call("0",d);return d>0?h+((s=f.length)<=d?"0."+a.call("0",d-s)+f:f.slice(0,s-d)+"."+f.slice(s-d)):h+f}})},function(t,e,n){"use strict";var i=n(5),r=n(18),o=n(508),a=1..toPrecision;i({target:"Number",proto:!0,forced:r(function(){return"1"!==a.call(1,void 0)})||!r(function(){a.call({})})},{toPrecision:function(t){return void 0===t?a.call(o(this)):a.call(o(this),t)}})},function(t,e,n){var i=n(5),r=n(509),o=Math.acosh,a=Math.log,s=Math.sqrt,c=Math.LN2;i({target:"Math",stat:!0,forced:!o||710!=Math.floor(o(Number.MAX_VALUE))||o(1/0)!=1/0},{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?a(t)+c:r(t-1+s(t-1)*s(t+1))}})},function(t,e,n){var i=n(5),r=Math.asinh,o=Math.log,a=Math.sqrt;i({target:"Math",stat:!0,forced:!(r&&1/r(0)>0)},{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):o(e+a(e*e+1)):e}})},function(t,e,n){var i=n(5),r=Math.atanh,o=Math.log;i({target:"Math",stat:!0,forced:!(r&&1/r(-0)<0)},{atanh:function(t){return 0==(t=+t)?t:o((1+t)/(1-t))/2}})},function(t,e,n){var i=n(5),r=n(370),o=Math.abs,a=Math.pow;i({target:"Math",stat:!0},{cbrt:function(t){return r(t=+t)*a(o(t),1/3)}})},function(t,e,n){var i=n(5),r=Math.floor,o=Math.log,a=Math.LOG2E;i({target:"Math",stat:!0},{clz32:function(t){return(t>>>=0)?31-r(o(t+.5)*a):32}})},function(t,e,n){var i=n(5),r=n(302),o=Math.cosh,a=Math.abs,s=Math.E;i({target:"Math",stat:!0,forced:!o||o(710)===1/0},{cosh:function(t){var e=r(a(t)-1)+1;return(e+1/(e*s*s))*(s/2)}})},function(t,e,n){var i=n(5),r=n(302);i({target:"Math",stat:!0,forced:r!=Math.expm1},{expm1:r})},function(t,e,n){n(5)({target:"Math",stat:!0},{fround:n(807)})},function(t,e,n){var i=n(370),r=Math.abs,o=Math.pow,a=o(2,-52),s=o(2,-23),c=o(2,127)*(2-s),l=o(2,-126);t.exports=Math.fround||function(t){var e,n,o=r(t),u=i(t);return o<l?u*(o/l/s+1/a-1/a)*l*s:(n=(e=(1+s/a)*o)-(e-o))>c||n!=n?u*(1/0):u*n}},function(t,e,n){var i=n(5),r=Math.hypot,o=Math.abs,a=Math.sqrt;i({target:"Math",stat:!0,forced:!!r&&r(1/0,NaN)!==1/0},{hypot:function(t,e){for(var n,i,r=0,s=0,c=arguments.length,l=0;s<c;)l<(n=o(arguments[s++]))?(r=r*(i=l/n)*i+1,l=n):r+=n>0?(i=n/l)*i:n;return l===1/0?1/0:l*a(r)}})},function(t,e,n){var i=n(5),r=n(18),o=Math.imul;i({target:"Math",stat:!0,forced:r(function(){return-5!=o(4294967295,5)||2!=o.length})},{imul:function(t,e){var n=+t,i=+e,r=65535&n,o=65535&i;return 0|r*o+((65535&n>>>16)*o+r*(65535&i>>>16)<<16>>>0)}})},function(t,e,n){var i=n(5),r=Math.log,o=Math.LOG10E;i({target:"Math",stat:!0},{log10:function(t){return r(t)*o}})},function(t,e,n){n(5)({target:"Math",stat:!0},{log1p:n(509)})},function(t,e,n){var i=n(5),r=Math.log,o=Math.LN2;i({target:"Math",stat:!0},{log2:function(t){return r(t)/o}})},function(t,e,n){n(5)({target:"Math",stat:!0},{sign:n(370)})},function(t,e,n){var i=n(5),r=n(18),o=n(302),a=Math.abs,s=Math.exp,c=Math.E;i({target:"Math",stat:!0,forced:r(function(){return-2e-17!=Math.sinh(-2e-17)})},{sinh:function(t){return a(t=+t)<1?(o(t)-o(-t))/2:(s(t-1)-s(-t-1))*(c/2)}})},function(t,e,n){var i=n(5),r=n(302),o=Math.exp;i({target:"Math",stat:!0},{tanh:function(t){var e=r(t=+t),n=r(-t);return e==1/0?1:n==1/0?-1:(e-n)/(o(t)+o(-t))}})},function(t,e,n){n(162)(Math,"Math",!0)},function(t,e,n){var i=n(5),r=Math.ceil,o=Math.floor;i({target:"Math",stat:!0},{trunc:function(t){return(t>0?o:r)(t)}})},function(t,e,n){n(5)({target:"Date",stat:!0},{now:function(){return(new Date).getTime()}})},function(t,e,n){"use strict";var i=n(5),r=n(18),o=n(53),a=n(134);i({target:"Date",proto:!0,forced:r(function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})})},{toJSON:function(t){var e=o(this),n=a(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},function(t,e,n){var i=n(5),r=n(821);i({target:"Date",proto:!0,forced:Date.prototype.toISOString!==r},{toISOString:r})},function(t,e,n){"use strict";var i=n(18),r=n(367).start,o=Math.abs,a=Date.prototype,s=a.getTime,c=a.toISOString;t.exports=i(function(){return"0385-07-25T07:06:39.999Z"!=c.call(new Date(-50000000000001))})||!i(function(){c.call(new Date(NaN))})?function(){if(!isFinite(s.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+r(o(t),n?6:4,0)+"-"+r(this.getUTCMonth()+1,2,0)+"-"+r(this.getUTCDate(),2,0)+"T"+r(this.getUTCHours(),2,0)+":"+r(this.getUTCMinutes(),2,0)+":"+r(this.getUTCSeconds(),2,0)+"."+r(e,3,0)+"Z"}:c},function(t,e,n){var i=n(98),r=Date.prototype,o=r.toString,a=r.getTime;new Date(NaN)+""!="Invalid Date"&&i(r,"toString",function(){var t=a.call(this);return t==t?o.call(this):"Invalid Date"})},function(t,e,n){var i=n(88),r=n(824),o=n(45)("toPrimitive"),a=Date.prototype;o in a||i(a,o,r)},function(t,e,n){"use strict";var i=n(29),r=n(134);t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return r(i(this),"number"!==t)}},function(t,e,n){var i=n(34);n(162)(i.JSON,"JSON",!0)},function(t,e,n){"use strict";n(292)("WeakSet",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},n(493))},function(t,e,n){"use strict";var i=n(5),r=n(34),o=n(303),a=n(246),s=o.ArrayBuffer;i({global:!0,forced:r.ArrayBuffer!==s},{ArrayBuffer:s}),a("ArrayBuffer")},function(t,e){var n=Math.abs,i=Math.pow,r=Math.floor,o=Math.log,a=Math.LN2;t.exports={pack:function(t,e,s){var c,l,u,d=new Array(s),p=8*s-e-1,h=(1<<p)-1,f=h>>1,g=23===e?i(2,-24)-i(2,-77):0,m=t<0||0===t&&1/t<0?1:0,v=0;for((t=n(t))!=t||t===1/0?(l=t!=t?1:0,c=h):(c=r(o(t)/a),t*(u=i(2,-c))<1&&(c--,u*=2),(t+=c+f>=1?g/u:g*i(2,1-f))*u>=2&&(c++,u/=2),c+f>=h?(l=0,c=h):c+f>=1?(l=(t*u-1)*i(2,e),c+=f):(l=t*i(2,f-1)*i(2,e),c=0));e>=8;d[v++]=255&l,l/=256,e-=8);for(c=c<<e|l,p+=e;p>0;d[v++]=255&c,c/=256,p-=8);return d[--v]|=128*m,d},unpack:function(t,e){var n,r=t.length,o=8*r-e-1,a=(1<<o)-1,s=a>>1,c=o-7,l=r-1,u=t[l--],d=127&u;for(u>>=7;c>0;d=256*d+t[l],l--,c-=8);for(n=d&(1<<-c)-1,d>>=-c,c+=e;c>0;n=256*n+t[l],l--,c-=8);if(0===d)d=1-s;else{if(d===a)return n?NaN:u?-1/0:1/0;n+=i(2,e),d-=s}return(u?-1:1)*n*i(2,d-e)}}},function(t,e,n){var i=n(5),r=n(46);i({target:"ArrayBuffer",stat:!0,forced:!r.NATIVE_ARRAY_BUFFER_VIEWS},{isView:r.isView})},function(t,e,n){"use strict";var i=n(5),r=n(18),o=n(303),a=n(29),s=n(175),c=n(44),l=n(195),u=o.ArrayBuffer,d=o.DataView,p=u.prototype.slice;i({target:"ArrayBuffer",proto:!0,unsafe:!0,forced:r(function(){return!new u(2).slice(1,void 0).byteLength})},{slice:function(t,e){if(void 0!==p&&void 0===e)return p.call(a(this),t);for(var n=a(this).byteLength,i=s(t,n),r=s(void 0===e?n:e,n),o=new(l(this,u))(c(r-i)),h=new d(this),f=new d(o),g=0;i<r;)f.setUint8(g++,h.getUint8(i++));return o}})},function(t,e,n){var i=n(5),r=n(303);i({global:!0,forced:!n(371)},{DataView:r.DataView})},function(t,e,n){n(164)("Int8",function(t){return function(e,n,i){return t(this,e,n,i)}})},function(t,e,n){var i=n(122);t.exports=function(t){var e=i(t);if(e<0)throw RangeError("The argument can't be less than 0");return e}},function(t,e,n){n(164)("Uint8",function(t){return function(e,n,i){return t(this,e,n,i)}})},function(t,e,n){n(164)("Uint8",function(t){return function(e,n,i){return t(this,e,n,i)}},!0)},function(t,e,n){n(164)("Int16",function(t){return function(e,n,i){return t(this,e,n,i)}})},function(t,e,n){n(164)("Uint16",function(t){return function(e,n,i){return t(this,e,n,i)}})},function(t,e,n){n(164)("Int32",function(t){return function(e,n,i){return t(this,e,n,i)}})},function(t,e,n){n(164)("Uint32",function(t){return function(e,n,i){return t(this,e,n,i)}})},function(t,e,n){n(164)("Float32",function(t){return function(e,n,i){return t(this,e,n,i)}})},function(t,e,n){n(164)("Float64",function(t){return function(e,n,i){return t(this,e,n,i)}})},function(t,e,n){"use strict";var i=n(372);(0,n(46).exportTypedArrayStaticMethod)("from",n(512),i)},function(t,e,n){"use strict";var i=n(46),r=n(372),o=i.aTypedArrayConstructor;(0,i.exportTypedArrayStaticMethod)("of",function(){for(var t=0,e=arguments.length,n=new(o(this))(e);e>t;)n[t]=arguments[t++];return n},r)},function(t,e,n){"use strict";var i=n(46),r=n(500),o=i.aTypedArray;(0,i.exportTypedArrayMethod)("copyWithin",function(t,e){return r.call(o(this),t,e,arguments.length>2?arguments[2]:void 0)})},function(t,e,n){"use strict";var i=n(46),r=n(74).every,o=i.aTypedArray;(0,i.exportTypedArrayMethod)("every",function(t){return r(o(this),t,arguments.length>1?arguments[1]:void 0)})},function(t,e,n){"use strict";var i=n(46),r=n(363),o=i.aTypedArray;(0,i.exportTypedArrayMethod)("fill",function(t){return r.apply(o(this),arguments)})},function(t,e,n){"use strict";var i=n(46),r=n(74).filter,o=n(195),a=i.aTypedArray,s=i.aTypedArrayConstructor;(0,i.exportTypedArrayMethod)("filter",function(t){for(var e=r(a(this),t,arguments.length>1?arguments[1]:void 0),n=o(this,this.constructor),i=0,c=e.length,l=new(s(n))(c);c>i;)l[i]=e[i++];return l})},function(t,e,n){"use strict";var i=n(46),r=n(74).find,o=i.aTypedArray;(0,i.exportTypedArrayMethod)("find",function(t){return r(o(this),t,arguments.length>1?arguments[1]:void 0)})},function(t,e,n){"use strict";var i=n(46),r=n(74).findIndex,o=i.aTypedArray;(0,i.exportTypedArrayMethod)("findIndex",function(t){return r(o(this),t,arguments.length>1?arguments[1]:void 0)})},function(t,e,n){"use strict";var i=n(46),r=n(74).forEach,o=i.aTypedArray;(0,i.exportTypedArrayMethod)("forEach",function(t){r(o(this),t,arguments.length>1?arguments[1]:void 0)})},function(t,e,n){"use strict";var i=n(46),r=n(238).includes,o=i.aTypedArray;(0,i.exportTypedArrayMethod)("includes",function(t){return r(o(this),t,arguments.length>1?arguments[1]:void 0)})},function(t,e,n){"use strict";var i=n(46),r=n(238).indexOf,o=i.aTypedArray;(0,i.exportTypedArrayMethod)("indexOf",function(t){return r(o(this),t,arguments.length>1?arguments[1]:void 0)})},function(t,e,n){"use strict";var i=n(34),r=n(46),o=n(285),a=n(45)("iterator"),s=i.Uint8Array,c=o.values,l=o.keys,u=o.entries,d=r.aTypedArray,p=r.exportTypedArrayMethod,h=s&&s.prototype[a],f=!!h&&("values"==h.name||null==h.name),g=function(){return c.call(d(this))};p("entries",function(){return u.call(d(this))}),p("keys",function(){return l.call(d(this))}),p("values",g,!f),p(a,g,!f)},function(t,e,n){"use strict";var i=n(46),r=i.aTypedArray,o=i.exportTypedArrayMethod,a=[].join;o("join",function(t){return a.apply(r(this),arguments)})},function(t,e,n){"use strict";var i=n(46),r=n(502),o=i.aTypedArray;(0,i.exportTypedArrayMethod)("lastIndexOf",function(t){return r.apply(o(this),arguments)})},function(t,e,n){"use strict";var i=n(46),r=n(74).map,o=n(195),a=i.aTypedArray,s=i.aTypedArrayConstructor;(0,i.exportTypedArrayMethod)("map",function(t){return r(a(this),t,arguments.length>1?arguments[1]:void 0,function(t,e){return new(s(o(t,t.constructor)))(e)})})},function(t,e,n){"use strict";var i=n(46),r=n(295).left,o=i.aTypedArray;(0,i.exportTypedArrayMethod)("reduce",function(t){return r(o(this),t,arguments.length,arguments.length>1?arguments[1]:void 0)})},function(t,e,n){"use strict";var i=n(46),r=n(295).right,o=i.aTypedArray;(0,i.exportTypedArrayMethod)("reduceRight",function(t){return r(o(this),t,arguments.length,arguments.length>1?arguments[1]:void 0)})},function(t,e,n){"use strict";var i=n(46),r=i.aTypedArray,o=i.exportTypedArrayMethod,a=Math.floor;o("reverse",function(){for(var t,e=r(this).length,n=a(e/2),i=0;i<n;)t=this[i],this[i++]=this[--e],this[e]=t;return this})},function(t,e,n){"use strict";var i=n(46),r=n(44),o=n(511),a=n(53),s=n(18),c=i.aTypedArray;(0,i.exportTypedArrayMethod)("set",function(t){c(this);var e=o(arguments.length>1?arguments[1]:void 0,1),n=this.length,i=a(t),s=r(i.length),l=0;if(s+e>n)throw RangeError("Wrong length");for(;l<s;)this[e+l]=i[l++]},s(function(){new Int8Array(1).set({})}))},function(t,e,n){"use strict";var i=n(46),r=n(195),o=n(18),a=i.aTypedArray,s=i.aTypedArrayConstructor,c=i.exportTypedArrayMethod,l=[].slice;c("slice",function(t,e){for(var n=l.call(a(this),t,e),i=r(this,this.constructor),o=0,c=n.length,u=new(s(i))(c);c>o;)u[o]=n[o++];return u},o(function(){new Int8Array(1).slice()}))},function(t,e,n){"use strict";var i=n(46),r=n(74).some,o=i.aTypedArray;(0,i.exportTypedArrayMethod)("some",function(t){return r(o(this),t,arguments.length>1?arguments[1]:void 0)})},function(t,e,n){"use strict";var i=n(46),r=i.aTypedArray,o=i.exportTypedArrayMethod,a=[].sort;o("sort",function(t){return a.call(r(this),t)})},function(t,e,n){"use strict";var i=n(46),r=n(44),o=n(175),a=n(195),s=i.aTypedArray;(0,i.exportTypedArrayMethod)("subarray",function(t,e){var n=s(this),i=n.length,c=o(t,i);return new(a(n,n.constructor))(n.buffer,n.byteOffset+c*n.BYTES_PER_ELEMENT,r((void 0===e?i:o(e,i))-c))})},function(t,e,n){"use strict";var i=n(34),r=n(46),o=n(18),a=i.Int8Array,s=r.aTypedArray,c=r.exportTypedArrayMethod,l=[].toLocaleString,u=[].slice,d=!!a&&o(function(){l.call(new a(1))});c("toLocaleString",function(){return l.apply(d?u.call(s(this)):s(this),arguments)},o(function(){return[1,2].toLocaleString()!=new a([1,2]).toLocaleString()})||!o(function(){a.prototype.toLocaleString.call([1,2])}))},function(t,e,n){"use strict";var i=n(46).exportTypedArrayMethod,r=n(18),o=n(34).Uint8Array,a=o&&o.prototype||{},s=[].toString,c=[].join;r(function(){s.call({})})&&(s=function(){return c.call(this)});var l=a.toString!=s;i("toString",s,l)},function(t,e){
  2173. /*! @source http://purl.eligrey.com/github/classList.js/blob/master/classList.js */
  2174. "document"in self&&("classList"in document.createElement("_")&&(!document.createElementNS||"classList"in document.createElementNS("http://www.w3.org/2000/svg","g"))?function(){"use strict";var t=document.createElement("_");if(t.classList.add("c1","c2"),!t.classList.contains("c2")){var e=function(t){var e=DOMTokenList.prototype[t];DOMTokenList.prototype[t]=function(t){var n,i=arguments.length;for(n=0;n<i;n++)t=arguments[n],e.call(this,t)}};e("add"),e("remove")}if(t.classList.toggle("c3",!1),t.classList.contains("c3")){var n=DOMTokenList.prototype.toggle;DOMTokenList.prototype.toggle=function(t,e){return 1 in arguments&&!this.contains(t)==!e?e:n.call(this,t)}}t=null}():function(t){"use strict";if("Element"in t){var e=t.Element.prototype,n=Object,i=String.prototype.trim||function(){return this.replace(/^\s+|\s+$/g,"")},r=Array.prototype.indexOf||function(t){for(var e=0,n=this.length;e<n;e++)if(e in this&&this[e]===t)return e;return-1},o=function(t,e){this.name=t,this.code=DOMException[t],this.message=e},a=function(t,e){if(""===e)throw new o("SYNTAX_ERR","An invalid or illegal string was specified");if(/\s/.test(e))throw new o("INVALID_CHARACTER_ERR","String contains an invalid character");return r.call(t,e)},s=function(t){for(var e=i.call(t.getAttribute("class")||""),n=e?e.split(/\s+/):[],r=0,o=n.length;r<o;r++)this.push(n[r]);this._updateClassName=function(){t.setAttribute("class",this.toString())}},c=s.prototype=[],l=function(){return new s(this)};if(o.prototype=Error.prototype,c.item=function(t){return this[t]||null},c.contains=function(t){return-1!==a(this,t+="")},c.add=function(){var t,e=arguments,n=0,i=e.length,r=!1;do{t=e[n]+"",-1===a(this,t)&&(this.push(t),r=!0)}while(++n<i);r&&this._updateClassName()},c.remove=function(){var t,e,n=arguments,i=0,r=n.length,o=!1;do{for(t=n[i]+"",e=a(this,t);-1!==e;)this.splice(e,1),o=!0,e=a(this,t)}while(++i<r);o&&this._updateClassName()},c.toggle=function(t,e){t+="";var n=this.contains(t),i=n?!0!==e&&"remove":!1!==e&&"add";return i&&this[i](t),!0===e||!1===e?e:!n},c.toString=function(){return this.join(" ")},n.defineProperty){var u={get:l,enumerable:!0,configurable:!0};try{n.defineProperty(e,"classList",u)}catch(t){-2146823252===t.number&&(u.enumerable=!1,n.defineProperty(e,"classList",u))}}else n.prototype.__defineGetter__&&e.__defineGetter__("classList",l)}}(self))},function(t,e,n){(function(i){var r,o;
  2175. /**
  2176. * @license Angular v9.1.0-next.4+61.sha-e552591.with-local-changes
  2177. * (c) 2010-2020 Google LLC. https://angular.io/
  2178. * License: MIT
  2179. */void 0===(o="function"==typeof(r=function(){"use strict";
  2180. /**
  2181. * @license
  2182. * Copyright Google Inc. All Rights Reserved.
  2183. *
  2184. * Use of this source code is governed by an MIT-style license that can be
  2185. * found in the LICENSE file at https://angular.io/license
  2186. */!function(t){var e=t.performance;function n(t){e&&e.mark&&e.mark(t)}function i(t,n){e&&e.measure&&e.measure(t,n)}n("Zone");var r=t.__Zone_symbol_prefix||"__zone_symbol__";function o(t){return r+t}var a=!0===t[o("forceDuplicateZoneCheck")];if(t.Zone){if(a||"function"!=typeof t.Zone.__symbol__)throw new Error("Zone already loaded.");return t.Zone}var s=function(){function e(t,e){this._parent=t,this._name=e?e.name||"unnamed":"<root>",this._properties=e&&e.properties||{},this._zoneDelegate=new u(this,this._parent&&this._parent._zoneDelegate,e)}return e.assertZonePatched=function(){if(t.Promise!==_.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")},Object.defineProperty(e,"root",{get:function(){for(var t=e.current;t.parent;)t=t.parent;return t},enumerable:!0,configurable:!0}),Object.defineProperty(e,"current",{get:function(){return I.zone},enumerable:!0,configurable:!0}),Object.defineProperty(e,"currentTask",{get:function(){return k},enumerable:!0,configurable:!0}),e.__load_patch=function(r,o){if(_.hasOwnProperty(r)){if(a)throw Error("Already loaded patch: "+r)}else if(!t["__Zone_disable_"+r]){var s="Zone:"+r;n(s),_[r]=o(t,e,P),i(s,s)}},Object.defineProperty(e.prototype,"parent",{get:function(){return this._parent},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"name",{get:function(){return this._name},enumerable:!0,configurable:!0}),e.prototype.get=function(t){var e=this.getZoneWith(t);if(e)return e._properties[t]},e.prototype.getZoneWith=function(t){for(var e=this;e;){if(e._properties.hasOwnProperty(t))return e;e=e._parent}return null},e.prototype.fork=function(t){if(!t)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,t)},e.prototype.wrap=function(t,e){if("function"!=typeof t)throw new Error("Expecting function got: "+t);var n=this._zoneDelegate.intercept(this,t,e),i=this;return function(){return i.runGuarded(n,this,arguments,e)}},e.prototype.run=function(t,e,n,i){I={parent:I,zone:this};try{return this._zoneDelegate.invoke(this,t,e,n,i)}finally{I=I.parent}},e.prototype.runGuarded=function(t,e,n,i){void 0===e&&(e=null),I={parent:I,zone:this};try{try{return this._zoneDelegate.invoke(this,t,e,n,i)}catch(t){if(this._zoneDelegate.handleError(this,t))throw t}}finally{I=I.parent}},e.prototype.runTask=function(t,e,n){if(t.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(t.zone||b).name+"; Execution: "+this.name+")");if(t.state!==w||t.type!==O&&t.type!==T){var i=t.state!=M;i&&t._transitionTo(M,x),t.runCount++;var r=k;k=t,I={parent:I,zone:this};try{t.type==T&&t.data&&!t.data.isPeriodic&&(t.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,t,e,n)}catch(t){if(this._zoneDelegate.handleError(this,t))throw t}}finally{t.state!==w&&t.state!==C&&(t.type==O||t.data&&t.data.isPeriodic?i&&t._transitionTo(x,M):(t.runCount=0,this._updateTaskCount(t,-1),i&&t._transitionTo(w,M,w))),I=I.parent,k=r}}},e.prototype.scheduleTask=function(t){if(t.zone&&t.zone!==this)for(var e=this;e;){if(e===t.zone)throw Error("can not reschedule task to "+this.name+" which is descendants of the original zone "+t.zone.name);e=e.parent}t._transitionTo(S,w);var n=[];t._zoneDelegates=n,t._zone=this;try{t=this._zoneDelegate.scheduleTask(this,t)}catch(e){throw t._transitionTo(C,S,w),this._zoneDelegate.handleError(this,e),e}return t._zoneDelegates===n&&this._updateTaskCount(t,1),t.state==S&&t._transitionTo(x,S),t},e.prototype.scheduleMicroTask=function(t,e,n,i){return this.scheduleTask(new d(A,t,e,n,i,void 0))},e.prototype.scheduleMacroTask=function(t,e,n,i,r){return this.scheduleTask(new d(T,t,e,n,i,r))},e.prototype.scheduleEventTask=function(t,e,n,i,r){return this.scheduleTask(new d(O,t,e,n,i,r))},e.prototype.cancelTask=function(t){if(t.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(t.zone||b).name+"; Execution: "+this.name+")");t._transitionTo(E,x,M);try{this._zoneDelegate.cancelTask(this,t)}catch(e){throw t._transitionTo(C,E),this._zoneDelegate.handleError(this,e),e}return this._updateTaskCount(t,-1),t._transitionTo(w,E),t.runCount=0,t},e.prototype._updateTaskCount=function(t,e){var n=t._zoneDelegates;-1==e&&(t._zoneDelegates=null);for(var i=0;i<n.length;i++)n[i]._updateTaskCount(t.type,e)},e}();s.__symbol__=o;var c,l={name:"",onHasTask:function(t,e,n,i){return t.hasTask(n,i)},onScheduleTask:function(t,e,n,i){return t.scheduleTask(n,i)},onInvokeTask:function(t,e,n,i,r,o){return t.invokeTask(n,i,r,o)},onCancelTask:function(t,e,n,i){return t.cancelTask(n,i)}},u=function(){function t(t,e,n){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=t,this._parentDelegate=e,this._forkZS=n&&(n&&n.onFork?n:e._forkZS),this._forkDlgt=n&&(n.onFork?e:e._forkDlgt),this._forkCurrZone=n&&(n.onFork?this.zone:e._forkCurrZone),this._interceptZS=n&&(n.onIntercept?n:e._interceptZS),this._interceptDlgt=n&&(n.onIntercept?e:e._interceptDlgt),this._interceptCurrZone=n&&(n.onIntercept?this.zone:e._interceptCurrZone),this._invokeZS=n&&(n.onInvoke?n:e._invokeZS),this._invokeDlgt=n&&(n.onInvoke?e:e._invokeDlgt),this._invokeCurrZone=n&&(n.onInvoke?this.zone:e._invokeCurrZone),this._handleErrorZS=n&&(n.onHandleError?n:e._handleErrorZS),this._handleErrorDlgt=n&&(n.onHandleError?e:e._handleErrorDlgt),this._handleErrorCurrZone=n&&(n.onHandleError?this.zone:e._handleErrorCurrZone),this._scheduleTaskZS=n&&(n.onScheduleTask?n:e._scheduleTaskZS),this._scheduleTaskDlgt=n&&(n.onScheduleTask?e:e._scheduleTaskDlgt),this._scheduleTaskCurrZone=n&&(n.onScheduleTask?this.zone:e._scheduleTaskCurrZone),this._invokeTaskZS=n&&(n.onInvokeTask?n:e._invokeTaskZS),this._invokeTaskDlgt=n&&(n.onInvokeTask?e:e._invokeTaskDlgt),this._invokeTaskCurrZone=n&&(n.onInvokeTask?this.zone:e._invokeTaskCurrZone),this._cancelTaskZS=n&&(n.onCancelTask?n:e._cancelTaskZS),this._cancelTaskDlgt=n&&(n.onCancelTask?e:e._cancelTaskDlgt),this._cancelTaskCurrZone=n&&(n.onCancelTask?this.zone:e._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;var i=n&&n.onHasTask,r=e&&e._hasTaskZS;(i||r)&&(this._hasTaskZS=i?n:l,this._hasTaskDlgt=e,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=t,n.onScheduleTask||(this._scheduleTaskZS=l,this._scheduleTaskDlgt=e,this._scheduleTaskCurrZone=this.zone),n.onInvokeTask||(this._invokeTaskZS=l,this._invokeTaskDlgt=e,this._invokeTaskCurrZone=this.zone),n.onCancelTask||(this._cancelTaskZS=l,this._cancelTaskDlgt=e,this._cancelTaskCurrZone=this.zone))}return t.prototype.fork=function(t,e){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,t,e):new s(t,e)},t.prototype.intercept=function(t,e,n){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,t,e,n):e},t.prototype.invoke=function(t,e,n,i,r){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,t,e,n,i,r):e.apply(n,i)},t.prototype.handleError=function(t,e){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,t,e)},t.prototype.scheduleTask=function(t,e){var n=e;if(this._scheduleTaskZS)this._hasTaskZS&&n._zoneDelegates.push(this._hasTaskDlgtOwner),(n=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,t,e))||(n=e);else if(e.scheduleFn)e.scheduleFn(e);else{if(e.type!=A)throw new Error("Task is missing scheduleFn.");v(e)}return n},t.prototype.invokeTask=function(t,e,n,i){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,t,e,n,i):e.callback.apply(n,i)},t.prototype.cancelTask=function(t,e){var n;if(this._cancelTaskZS)n=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,t,e);else{if(!e.cancelFn)throw Error("Task is not cancelable");n=e.cancelFn(e)}return n},t.prototype.hasTask=function(t,e){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,t,e)}catch(e){this.handleError(t,e)}},t.prototype._updateTaskCount=function(t,e){var n=this._taskCounts,i=n[t],r=n[t]=i+e;if(r<0)throw new Error("More tasks executed then were scheduled.");if(0==i||0==r){var o={microTask:n.microTask>0,macroTask:n.macroTask>0,eventTask:n.eventTask>0,change:t};this.hasTask(this.zone,o)}},t}(),d=function(){function e(n,i,r,o,a,s){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=n,this.source=i,this.data=o,this.scheduleFn=a,this.cancelFn=s,!r)throw new Error("callback is not defined");this.callback=r;var c=this;n===O&&o&&o.useG?this.invoke=e.invokeTask:this.invoke=function(){return e.invokeTask.call(t,c,this,arguments)}}return e.invokeTask=function(t,e,n){t||(t=this),D++;try{return t.runCount++,t.zone.runTask(t,e,n)}finally{1==D&&y(),D--}},Object.defineProperty(e.prototype,"zone",{get:function(){return this._zone},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"state",{get:function(){return this._state},enumerable:!0,configurable:!0}),e.prototype.cancelScheduleRequest=function(){this._transitionTo(w,S)},e.prototype._transitionTo=function(t,e,n){if(this._state!==e&&this._state!==n)throw new Error(this.type+" '"+this.source+"': can not transition to '"+t+"', expecting state '"+e+"'"+(n?" or '"+n+"'":"")+", was '"+this._state+"'.");this._state=t,t==w&&(this._zoneDelegates=null)},e.prototype.toString=function(){return this.data&&void 0!==this.data.handleId?this.data.handleId.toString():Object.prototype.toString.call(this)},e.prototype.toJSON=function(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}},e}(),p=o("setTimeout"),h=o("Promise"),f=o("then"),g=[],m=!1;function v(e){if(0===D&&0===g.length)if(c||t[h]&&(c=t[h].resolve(0)),c){var n=c[f];n||(n=c.then),n.call(c,y)}else t[p](y,0);e&&g.push(e)}function y(){if(!m){for(m=!0;g.length;){var t=g;g=[];for(var e=0;e<t.length;e++){var n=t[e];try{n.zone.runTask(n,null,null)}catch(t){P.onUnhandledError(t)}}}P.microtaskDrainDone(),m=!1}}var b={name:"NO ZONE"},w="notScheduled",S="scheduling",x="scheduled",M="running",E="canceling",C="unknown",A="microTask",T="macroTask",O="eventTask",_={},P={symbol:o,currentZoneFrame:function(){return I},onUnhandledError:R,microtaskDrainDone:R,scheduleMicroTask:v,showUncaughtError:function(){return!s[o("ignoreConsoleErrorUncaughtError")]},patchEventTarget:function(){return[]},patchOnProperties:R,patchMethod:function(){return R},bindArguments:function(){return[]},patchThen:function(){return R},patchMacroTask:function(){return R},setNativePromise:function(t){t&&"function"==typeof t.resolve&&(c=t.resolve(0))},patchEventPrototype:function(){return R},isIEOrEdge:function(){return!1},getGlobalObjects:function(){},ObjectDefineProperty:function(){return R},ObjectGetOwnPropertyDescriptor:function(){},ObjectCreate:function(){},ArraySlice:function(){return[]},patchClass:function(){return R},wrapWithCurrentZone:function(){return R},filterProperties:function(){return[]},attachOriginToPatched:function(){return R},_redefineProperty:function(){return R},patchCallbacks:function(){return R}},I={parent:null,zone:new s(null,null)},k=null,D=0;function R(){}i("Zone","Zone"),t.Zone=s}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||i),
  2187. /**
  2188. * @license
  2189. * Copyright Google Inc. All Rights Reserved.
  2190. *
  2191. * Use of this source code is governed by an MIT-style license that can be
  2192. * found in the LICENSE file at https://angular.io/license
  2193. */
  2194. Zone.__load_patch("ZoneAwarePromise",function(t,e,n){var i=Object.getOwnPropertyDescriptor,r=Object.defineProperty,o=n.symbol,a=[],s=!0===t[o("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],c=o("Promise"),l=o("then");n.onUnhandledError=function(t){if(n.showUncaughtError()){var e=t&&t.rejection;e?console.error("Unhandled Promise rejection:",e instanceof Error?e.message:e,"; Zone:",t.zone.name,"; Task:",t.task&&t.task.source,"; Value:",e,e instanceof Error?e.stack:void 0):console.error(t)}},n.microtaskDrainDone=function(){for(var t=function(){var t=a.shift();try{t.zone.runGuarded(function(){throw t})}catch(t){!function(t){n.onUnhandledError(t);try{var i=e[u];"function"==typeof i&&i.call(this,t)}catch(t){}}(t)}};a.length;)t()};var u=o("unhandledPromiseRejectionHandler");function d(t){return t&&t.then}function p(t){return t}function h(t){return A.reject(t)}var f=o("state"),g=o("value"),m=o("finally"),v=o("parentPromiseValue"),y=o("parentPromiseState");function b(t,e){return function(n){try{S(t,e,n)}catch(e){S(t,!1,e)}}}var w=o("currentTaskTrace");function S(t,i,o){var c,l=(c=!1,function(t){return function(){c||(c=!0,t.apply(null,arguments))}});if(t===o)throw new TypeError("Promise resolved with itself");if(null===t[f]){var u=null;try{"object"!=typeof o&&"function"!=typeof o||(u=o&&o.then)}catch(e){return l(function(){S(t,!1,e)})(),t}if(!1!==i&&o instanceof A&&o.hasOwnProperty(f)&&o.hasOwnProperty(g)&&null!==o[f])M(o),S(t,o[f],o[g]);else if(!1!==i&&"function"==typeof u)try{u.call(o,l(b(t,i)),l(b(t,!1)))}catch(e){l(function(){S(t,!1,e)})()}else{t[f]=i;var d=t[g];if(t[g]=o,t[m]===m&&!0===i&&(t[f]=t[y],t[g]=t[v]),!1===i&&o instanceof Error){var p=e.currentTask&&e.currentTask.data&&e.currentTask.data.__creationTrace__;p&&r(o,w,{configurable:!0,enumerable:!1,writable:!0,value:p})}for(var h=0;h<d.length;)E(t,d[h++],d[h++],d[h++],d[h++]);if(0==d.length&&0==i){t[f]=0;var x=o;if(!s)try{throw new Error("Uncaught (in promise): "+function(t){return t&&t.toString===Object.prototype.toString?(t.constructor&&t.constructor.name||"")+": "+JSON.stringify(t):t?t.toString():Object.prototype.toString.call(t)}(o)+(o&&o.stack?"\n"+o.stack:""))}catch(t){x=t}x.rejection=o,x.promise=t,x.zone=e.current,x.task=e.currentTask,a.push(x),n.scheduleMicroTask()}}}return t}var x=o("rejectionHandledHandler");function M(t){if(0===t[f]){try{var n=e[x];n&&"function"==typeof n&&n.call(this,{rejection:t[g],promise:t})}catch(t){}t[f]=!1;for(var i=0;i<a.length;i++)t===a[i].promise&&a.splice(i,1)}}function E(t,e,n,i,r){M(t);var o=t[f],a=o?"function"==typeof i?i:p:"function"==typeof r?r:h;e.scheduleMicroTask("Promise.then",function(){try{var i=t[g],r=!!n&&m===n[m];r&&(n[v]=i,n[y]=o);var s=e.run(a,void 0,r&&a!==h&&a!==p?[]:[i]);S(n,!0,s)}catch(t){S(n,!1,t)}},n)}var C=function(){},A=function(){function t(e){if(!(this instanceof t))throw new Error("Must be an instanceof Promise.");this[f]=null,this[g]=[];try{e&&e(b(this,!0),b(this,!1))}catch(t){S(this,!1,t)}}return t.toString=function(){return"function ZoneAwarePromise() { [native code] }"},t.resolve=function(t){return S(new this(null),!0,t)},t.reject=function(t){return S(new this(null),!1,t)},t.race=function(t){var e,n,i=new this(function(t,i){e=t,n=i});function r(t){e(t)}function o(t){n(t)}for(var a=0,s=t;a<s.length;a++){var c=s[a];d(c)||(c=this.resolve(c)),c.then(r,o)}return i},t.all=function(e){return t.allWithCallback(e)},t.allSettled=function(e){return(this&&this.prototype instanceof t?this:t).allWithCallback(e,{thenCallback:function(t){return{status:"fulfilled",value:t}},errorCallback:function(t){return{status:"rejected",reason:t}}})},t.allWithCallback=function(t,e){for(var n,i,r=new this(function(t,e){n=t,i=e}),o=2,a=0,s=[],c=function(t){d(t)||(t=l.resolve(t));var r=a;try{t.then(function(t){s[r]=e?e.thenCallback(t):t,0==--o&&n(s)},function(t){e?(s[r]=e.errorCallback(t),0==--o&&n(s)):i(t)})}catch(t){i(t)}o++,a++},l=this,u=0,p=t;u<p.length;u++)c(p[u]);return 0==(o-=2)&&n(s),r},Object.defineProperty(t.prototype,Symbol.toStringTag,{get:function(){return"Promise"},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,Symbol.species,{get:function(){return t},enumerable:!0,configurable:!0}),t.prototype.then=function(n,i){var r=this.constructor[Symbol.species];r&&"function"==typeof r||(r=this.constructor||t);var o=new r(C),a=e.current;return null==this[f]?this[g].push(a,o,n,i):E(this,a,o,n,i),o},t.prototype.catch=function(t){return this.then(null,t)},t.prototype.finally=function(n){var i=this.constructor[Symbol.species];i&&"function"==typeof i||(i=t);var r=new i(C);r[m]=m;var o=e.current;return null==this[f]?this[g].push(o,r,n,n):E(this,o,r,n,n),r},t}();A.resolve=A.resolve,A.reject=A.reject,A.race=A.race,A.all=A.all;var T=t[c]=t.Promise,O=e.__symbol__("ZoneAwarePromise"),_=i(t,"Promise");_&&!_.configurable||(_&&delete _.writable,_&&delete _.value,_||(_={configurable:!0,enumerable:!0}),_.get=function(){return t[O]?t[O]:t[c]},_.set=function(e){e===A?t[O]=e:(t[c]=e,e.prototype[l]||k(e),n.setNativePromise(e))},r(t,"Promise",_)),t.Promise=A;var P,I=o("thenPatched");function k(t){var e=t.prototype,n=i(e,"then");if(!n||!1!==n.writable&&n.configurable){var r=e.then;e[l]=r,t.prototype.then=function(t,e){var n=this;return new A(function(t,e){r.call(n,t,e)}).then(t,e)},t[I]=!0}}if(n.patchThen=k,T){k(T);var D=t.fetch;"function"==typeof D&&(t[n.symbol("fetch")]=D,t.fetch=(P=D,function(){var t=P.apply(this,arguments);if(t instanceof A)return t;var e=t.constructor;return e[I]||k(e),t}))}return Promise[e.__symbol__("uncaughtPromiseErrors")]=a,A});
  2195. /**
  2196. * @license
  2197. * Copyright Google Inc. All Rights Reserved.
  2198. *
  2199. * Use of this source code is governed by an MIT-style license that can be
  2200. * found in the LICENSE file at https://angular.io/license
  2201. */
  2202. var t=Object.getOwnPropertyDescriptor,e=Object.defineProperty,n=Object.getPrototypeOf,r=Object.create,o=Array.prototype.slice,a=Zone.__symbol__("addEventListener"),s=Zone.__symbol__("removeEventListener"),c=Zone.__symbol__("");function l(t,e){return Zone.current.wrap(t,e)}function u(t,e,n,i,r){return Zone.current.scheduleMacroTask(t,e,n,i,r)}var d=Zone.__symbol__,p="undefined"!=typeof window,h=p?window:void 0,f=p&&h||"object"==typeof self&&self||i,g=[null];function m(t,e){for(var n=t.length-1;n>=0;n--)"function"==typeof t[n]&&(t[n]=l(t[n],e+"_"+n));return t}function v(t){return!t||!1!==t.writable&&!("function"==typeof t.get&&void 0===t.set)}var y="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,b=!("nw"in f)&&void 0!==f.process&&"[object process]"==={}.toString.call(f.process),w=!b&&!y&&!(!p||!h.HTMLElement),S=void 0!==f.process&&"[object process]"==={}.toString.call(f.process)&&!y&&!(!p||!h.HTMLElement),x={},M=function(t){if(t=t||f.event){var e=x[t.type];e||(e=x[t.type]=d("ON_PROPERTY"+t.type));var n,i=this||t.target||f,r=i[e];if(w&&i===h&&"error"===t.type){var o=t;!0===(n=r&&r.call(this,o.message,o.filename,o.lineno,o.colno,o.error))&&t.preventDefault()}else null==(n=r&&r.apply(this,arguments))||n||t.preventDefault();return n}};function E(n,i,r){var o=t(n,i);if(!o&&r&&t(r,i)&&(o={enumerable:!0,configurable:!0}),o&&o.configurable){var a=d("on"+i+"patched");if(!n.hasOwnProperty(a)||!n[a]){delete o.writable,delete o.value;var s=o.get,c=o.set,l=i.substr(2),u=x[l];u||(u=x[l]=d("ON_PROPERTY"+l)),o.set=function(t){var e=this;e||n!==f||(e=f),e&&(e[u]&&e.removeEventListener(l,M),c&&c.apply(e,g),"function"==typeof t?(e[u]=t,e.addEventListener(l,M,!1)):e[u]=null)},o.get=function(){var t=this;if(t||n!==f||(t=f),!t)return null;var e=t[u];if(e)return e;if(s){var r=s&&s.call(this);if(r)return o.set.call(this,r),"function"==typeof t.removeAttribute&&t.removeAttribute(i),r}return null},e(n,i,o),n[a]=!0}}}function C(t,e,n){if(e)for(var i=0;i<e.length;i++)E(t,"on"+e[i],n);else{var r=[];for(var o in t)"on"==o.substr(0,2)&&r.push(o);for(var a=0;a<r.length;a++)E(t,r[a],n)}}var A=d("originalInstance");function T(t){var n=f[t];if(n){f[d(t)]=n,f[t]=function(){var e=m(arguments,t);switch(e.length){case 0:this[A]=new n;break;case 1:this[A]=new n(e[0]);break;case 2:this[A]=new n(e[0],e[1]);break;case 3:this[A]=new n(e[0],e[1],e[2]);break;case 4:this[A]=new n(e[0],e[1],e[2],e[3]);break;default:throw new Error("Arg list too long.")}},P(f[t],n);var i,r=new n(function(){});for(i in r)"XMLHttpRequest"===t&&"responseBlob"===i||function(n){"function"==typeof r[n]?f[t].prototype[n]=function(){return this[A][n].apply(this[A],arguments)}:e(f[t].prototype,n,{set:function(e){"function"==typeof e?(this[A][n]=l(e,t+"."+n),P(this[A][n],e)):this[A][n]=e},get:function(){return this[A][n]}})}(i);for(i in n)"prototype"!==i&&n.hasOwnProperty(i)&&(f[t][i]=n[i])}}function O(e,i,r){for(var o=e;o&&!o.hasOwnProperty(i);)o=n(o);!o&&e[i]&&(o=e);var a=d(i),s=null;if(o&&!(s=o[a])&&(s=o[a]=o[i],v(o&&t(o,i)))){var c=r(s,a,i);o[i]=function(){return c(this,arguments)},P(o[i],s)}return s}function _(t,e,n){var i=null;function r(t){var e=t.data;return e.args[e.cbIdx]=function(){t.invoke.apply(this,arguments)},i.apply(e.target,e.args),t}i=O(t,e,function(t){return function(e,i){var o=n(e,i);return o.cbIdx>=0&&"function"==typeof i[o.cbIdx]?u(o.name,i[o.cbIdx],o,r):t.apply(e,i)}})}function P(t,e){t[d("OriginalDelegate")]=e}var I=!1,k=!1;function D(){if(I)return k;I=!0;try{var t=h.navigator.userAgent;-1===t.indexOf("MSIE ")&&-1===t.indexOf("Trident/")&&-1===t.indexOf("Edge/")||(k=!0)}catch(t){}return k}
  2203. /**
  2204. * @license
  2205. * Copyright Google Inc. All Rights Reserved.
  2206. *
  2207. * Use of this source code is governed by an MIT-style license that can be
  2208. * found in the LICENSE file at https://angular.io/license
  2209. */Zone.__load_patch("toString",function(t){var e=Function.prototype.toString,n=d("OriginalDelegate"),i=d("Promise"),r=d("Error"),o=function(){if("function"==typeof this){var o=this[n];if(o)return"function"==typeof o?e.call(o):Object.prototype.toString.call(o);if(this===Promise){var a=t[i];if(a)return e.call(a)}if(this===Error){var s=t[r];if(s)return e.call(s)}}return e.call(this)};o[n]=e,Function.prototype.toString=o;var a=Object.prototype.toString;Object.prototype.toString=function(){return this instanceof Promise?"[object Promise]":a.call(this)}});
  2210. /**
  2211. * @license
  2212. * Copyright Google Inc. All Rights Reserved.
  2213. *
  2214. * Use of this source code is governed by an MIT-style license that can be
  2215. * found in the LICENSE file at https://angular.io/license
  2216. */
  2217. var R=!1;if("undefined"!=typeof window)try{var L=Object.defineProperty({},"passive",{get:function(){R=!0}});window.addEventListener("test",L,L),window.removeEventListener("test",L,L)}catch(t){R=!1}var N={useG:!0},j={},V={},F=new RegExp("^"+c+"(\\w+)(true|false)$"),U=d("propagationStopped");function B(t,e){var n=(e?e(t):t)+"false",i=(e?e(t):t)+"true",r=c+n,o=c+i;j[t]={},j[t].false=r,j[t].true=o}function z(t,e,i){var r=i&&i.add||"addEventListener",o=i&&i.rm||"removeEventListener",a=i&&i.listeners||"eventListeners",s=i&&i.rmAll||"removeAllListeners",l=d(r),u="."+r+":",p=function(t,e,n){if(!t.isRemoved){var i=t.callback;"object"==typeof i&&i.handleEvent&&(t.callback=function(t){return i.handleEvent(t)},t.originalDelegate=i),t.invoke(t,e,[n]);var r=t.options;if(r&&"object"==typeof r&&r.once){var a=t.originalDelegate?t.originalDelegate:t.callback;e[o].call(e,n.type,a,r)}}},h=function(e){if(e=e||t.event){var n=this||e.target||t,i=n[j[e.type].false];if(i)if(1===i.length)p(i[0],n,e);else for(var r=i.slice(),o=0;o<r.length&&(!e||!0!==e[U]);o++)p(r[o],n,e)}},f=function(e){if(e=e||t.event){var n=this||e.target||t,i=n[j[e.type].true];if(i)if(1===i.length)p(i[0],n,e);else for(var r=i.slice(),o=0;o<r.length&&(!e||!0!==e[U]);o++)p(r[o],n,e)}};function g(e,i){if(!e)return!1;var p=!0;i&&void 0!==i.useG&&(p=i.useG);var g=i&&i.vh,m=!0;i&&void 0!==i.chkDup&&(m=i.chkDup);var v=!1;i&&void 0!==i.rt&&(v=i.rt);for(var y=e;y&&!y.hasOwnProperty(r);)y=n(y);if(!y&&e[r]&&(y=e),!y)return!1;if(y[l])return!1;var w,S=i&&i.eventNameToString,x={},M=y[l]=y[r],E=y[d(o)]=y[o],C=y[d(a)]=y[a],A=y[d(s)]=y[s];i&&i.prepend&&(w=y[d(i.prepend)]=y[i.prepend]);var T=p?function(t){if(!x.isExisting)return M.call(x.target,x.eventName,x.capture?f:h,x.options)}:function(t){return M.call(x.target,x.eventName,t.invoke,x.options)},O=p?function(t){if(!t.isRemoved){var e=j[t.eventName],n=void 0;e&&(n=e[t.capture?"true":"false"]);var i=n&&t.target[n];if(i)for(var r=0;r<i.length;r++)if(i[r]===t){i.splice(r,1),t.isRemoved=!0,0===i.length&&(t.allRemoved=!0,t.target[n]=null);break}}if(t.allRemoved)return E.call(t.target,t.eventName,t.capture?f:h,t.options)}:function(t){return E.call(t.target,t.eventName,t.invoke,t.options)},_=i&&i.diff?i.diff:function(t,e){var n=typeof e;return"function"===n&&t.callback===e||"object"===n&&t.originalDelegate===e},I=Zone[d("BLACK_LISTED_EVENTS")],k=t[d("PASSIVE_EVENTS")],D=function(e,n,r,o,a,s){return void 0===a&&(a=!1),void 0===s&&(s=!1),function(){var c=this||t,l=arguments[0];i&&i.transferEventName&&(l=i.transferEventName(l));var u=arguments[1];if(!u)return e.apply(this,arguments);if(b&&"uncaughtException"===l)return e.apply(this,arguments);var d=!1;if("function"!=typeof u){if(!u.handleEvent)return e.apply(this,arguments);d=!0}if(!g||g(e,u,c,arguments)){var h=R&&!!k&&-1!==k.indexOf(l),f=function(t,e){return!R&&"object"==typeof t&&t?!!t.capture:R&&e?"boolean"==typeof t?{capture:t,passive:!0}:t?"object"==typeof t&&!1!==t.passive?Object.assign(Object.assign({},t),{passive:!0}):t:{passive:!0}:t}(arguments[2],h);if(I)for(var v=0;v<I.length;v++)if(l===I[v])return h?e.call(c,l,u,f):e.apply(this,arguments);var y=!!f&&("boolean"==typeof f||f.capture),w=!(!f||"object"!=typeof f)&&f.once,M=Zone.current,E=j[l];E||(B(l,S),E=j[l]);var C,A=E[y?"true":"false"],T=c[A],O=!1;if(T){if(O=!0,m)for(v=0;v<T.length;v++)if(_(T[v],u))return}else T=c[A]=[];var P=c.constructor.name,D=V[P];D&&(C=D[l]),C||(C=P+n+(S?S(l):l)),x.options=f,w&&(x.options.once=!1),x.target=c,x.capture=y,x.eventName=l,x.isExisting=O;var L=p?N:void 0;L&&(L.taskData=x);var F=M.scheduleEventTask(C,u,L,r,o);return x.target=null,L&&(L.taskData=null),w&&(f.once=!0),(R||"boolean"!=typeof F.options)&&(F.options=f),F.target=c,F.capture=y,F.eventName=l,d&&(F.originalDelegate=u),s?T.unshift(F):T.push(F),a?c:void 0}}};return y[r]=D(M,u,T,O,v),w&&(y.prependListener=D(w,".prependListener:",function(t){return w.call(x.target,x.eventName,t.invoke,x.options)},O,v,!0)),y[o]=function(){var e=this||t,n=arguments[0];i&&i.transferEventName&&(n=i.transferEventName(n));var r=arguments[2],o=!!r&&("boolean"==typeof r||r.capture),a=arguments[1];if(!a)return E.apply(this,arguments);if(!g||g(E,a,e,arguments)){var s,l=j[n];l&&(s=l[o?"true":"false"]);var u=s&&e[s];if(u)for(var d=0;d<u.length;d++){var p=u[d];if(_(p,a)){if(u.splice(d,1),p.isRemoved=!0,0===u.length&&(p.allRemoved=!0,e[s]=null,"string"==typeof n))e[c+"ON_PROPERTY"+n]=null;return p.zone.cancelTask(p),v?e:void 0}}return E.apply(this,arguments)}},y[a]=function(){var e=this||t,n=arguments[0];i&&i.transferEventName&&(n=i.transferEventName(n));for(var r=[],o=G(e,S?S(n):n),a=0;a<o.length;a++){var s=o[a],c=s.originalDelegate?s.originalDelegate:s.callback;r.push(c)}return r},y[s]=function(){var e=this||t,n=arguments[0];if(n){i&&i.transferEventName&&(n=i.transferEventName(n));var r=j[n];if(r){var a=r.false,c=r.true,l=e[a],u=e[c];if(l){var d=l.slice();for(g=0;g<d.length;g++){var p=(h=d[g]).originalDelegate?h.originalDelegate:h.callback;this[o].call(this,n,p,h.options)}}if(u)for(d=u.slice(),g=0;g<d.length;g++){var h;p=(h=d[g]).originalDelegate?h.originalDelegate:h.callback,this[o].call(this,n,p,h.options)}}}else{for(var f=Object.keys(e),g=0;g<f.length;g++){var m=f[g],y=F.exec(m),b=y&&y[1];b&&"removeListener"!==b&&this[s].call(this,b)}this[s].call(this,"removeListener")}if(v)return this},P(y[r],M),P(y[o],E),A&&P(y[s],A),C&&P(y[a],C),!0}for(var m=[],v=0;v<e.length;v++)m[v]=g(e[v],i);return m}function G(t,e){if(!e){var n=[];for(var i in t){var r=F.exec(i),o=r&&r[1];if(o&&(!e||o===e)){var a=t[i];if(a)for(var s=0;s<a.length;s++)n.push(a[s])}}return n}var c=j[e];c||(B(e),c=j[e]);var l=t[c.false],u=t[c.true];return l?u?l.concat(u):l.slice():u?u.slice():[]}function H(t,e){var n=t.Event;n&&n.prototype&&e.patchMethod(n.prototype,"stopImmediatePropagation",function(t){return function(e,n){e[U]=!0,t&&t.apply(e,n)}})}
  2218. /**
  2219. * @license
  2220. * Copyright Google Inc. All Rights Reserved.
  2221. *
  2222. * Use of this source code is governed by an MIT-style license that can be
  2223. * found in the LICENSE file at https://angular.io/license
  2224. */function W(t,e,n,i,r){var o=Zone.__symbol__(i);if(!e[o]){var a=e[o]=e[i];e[i]=function(o,s,c){return s&&s.prototype&&r.forEach(function(e){var r=n+"."+i+"::"+e,o=s.prototype;if(o.hasOwnProperty(e)){var a=t.ObjectGetOwnPropertyDescriptor(o,e);a&&a.value?(a.value=t.wrapWithCurrentZone(a.value,r),t._redefineProperty(s.prototype,e,a)):o[e]&&(o[e]=t.wrapWithCurrentZone(o[e],r))}else o[e]&&(o[e]=t.wrapWithCurrentZone(o[e],r))}),a.call(e,o,s,c)},t.attachOriginToPatched(e[i],a)}}
  2225. /**
  2226. * @license
  2227. * Copyright Google Inc. All Rights Reserved.
  2228. *
  2229. * Use of this source code is governed by an MIT-style license that can be
  2230. * found in the LICENSE file at https://angular.io/license
  2231. */var q,K,X,Y,Z,J=["absolutedeviceorientation","afterinput","afterprint","appinstalled","beforeinstallprompt","beforeprint","beforeunload","devicelight","devicemotion","deviceorientation","deviceorientationabsolute","deviceproximity","hashchange","languagechange","message","mozbeforepaint","offline","online","paint","pageshow","pagehide","popstate","rejectionhandled","storage","unhandledrejection","unload","userproximity","vrdisplayconnected","vrdisplaydisconnected","vrdisplaypresentchange"],Q=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],$=["load"],tt=["blur","error","focus","load","resize","scroll","messageerror"],et=["bounce","finish","start"],nt=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],it=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],rt=["close","error","open","message"],ot=["error","message"],at=["abort","animationcancel","animationend","animationiteration","auxclick","beforeinput","blur","cancel","canplay","canplaythrough","change","compositionstart","compositionupdate","compositionend","cuechange","click","close","contextmenu","curechange","dblclick","drag","dragend","dragenter","dragexit","dragleave","dragover","drop","durationchange","emptied","ended","error","focus","focusin","focusout","gotpointercapture","input","invalid","keydown","keypress","keyup","load","loadstart","loadeddata","loadedmetadata","lostpointercapture","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","orientationchange","pause","play","playing","pointercancel","pointerdown","pointerenter","pointerleave","pointerlockchange","mozpointerlockchange","webkitpointerlockerchange","pointerlockerror","mozpointerlockerror","webkitpointerlockerror","pointermove","pointout","pointerover","pointerup","progress","ratechange","reset","resize","scroll","seeked","seeking","select","selectionchange","selectstart","show","sort","stalled","submit","suspend","timeupdate","volumechange","touchcancel","touchmove","touchstart","touchend","transitioncancel","transitionend","waiting","wheel"].concat(["webglcontextrestored","webglcontextlost","webglcontextcreationerror"],["autocomplete","autocompleteerror"],["toggle"],["afterscriptexecute","beforescriptexecute","DOMContentLoaded","freeze","fullscreenchange","mozfullscreenchange","webkitfullscreenchange","msfullscreenchange","fullscreenerror","mozfullscreenerror","webkitfullscreenerror","msfullscreenerror","readystatechange","visibilitychange","resume"],J,["beforecopy","beforecut","beforepaste","copy","cut","paste","dragstart","loadend","animationstart","search","transitionrun","transitionstart","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend"],["activate","afterupdate","ariarequest","beforeactivate","beforedeactivate","beforeeditfocus","beforeupdate","cellchange","controlselect","dataavailable","datasetchanged","datasetcomplete","errorupdate","filterchange","layoutcomplete","losecapture","move","moveend","movestart","propertychange","resizeend","resizestart","rowenter","rowexit","rowsdelete","rowsinserted","command","compassneedscalibration","deactivate","help","mscontentzoom","msmanipulationstatechanged","msgesturechange","msgesturedoubletap","msgestureend","msgesturehold","msgesturestart","msgesturetap","msgotpointercapture","msinertiastart","mslostpointercapture","mspointercancel","mspointerdown","mspointerenter","mspointerhover","mspointerleave","mspointermove","mspointerout","mspointerover","mspointerup","pointerout","mssitemodejumplistitemremoved","msthumbnailclick","stop","storagecommit"]);function st(t,e,n){if(!n||0===n.length)return e;var i=n.filter(function(e){return e.target===t});if(!i||0===i.length)return e;var r=i[0].ignoreProperties;return e.filter(function(t){return-1===r.indexOf(t)})}function ct(t,e,n,i){t&&C(t,st(t,e,n),i)}function lt(t,e){if((!b||S)&&!Zone[t.symbol("patchEvents")]){var i="undefined"!=typeof WebSocket,r=e.__Zone_ignore_on_properties;if(w){var o=window,a=function(){try{var t=h.navigator.userAgent;if(-1!==t.indexOf("MSIE ")||-1!==t.indexOf("Trident/"))return!0}catch(t){}return!1}?[{target:o,ignoreProperties:["error"]}]:[];ct(o,at.concat(["messageerror"]),r?r.concat(a):r,n(o)),ct(Document.prototype,at,r),void 0!==o.SVGElement&&ct(o.SVGElement.prototype,at,r),ct(Element.prototype,at,r),ct(HTMLElement.prototype,at,r),ct(HTMLMediaElement.prototype,Q,r),ct(HTMLFrameSetElement.prototype,J.concat(tt),r),ct(HTMLBodyElement.prototype,J.concat(tt),r),ct(HTMLFrameElement.prototype,$,r),ct(HTMLIFrameElement.prototype,$,r);var s=o.HTMLMarqueeElement;s&&ct(s.prototype,et,r);var c=o.Worker;c&&ct(c.prototype,ot,r)}var l=e.XMLHttpRequest;l&&ct(l.prototype,nt,r);var u=e.XMLHttpRequestEventTarget;u&&ct(u&&u.prototype,nt,r),"undefined"!=typeof IDBIndex&&(ct(IDBIndex.prototype,it,r),ct(IDBRequest.prototype,it,r),ct(IDBOpenDBRequest.prototype,it,r),ct(IDBDatabase.prototype,it,r),ct(IDBTransaction.prototype,it,r),ct(IDBCursor.prototype,it,r)),i&&ct(WebSocket.prototype,rt,r)}}
  2232. /**
  2233. * @license
  2234. * Copyright Google Inc. All Rights Reserved.
  2235. *
  2236. * Use of this source code is governed by an MIT-style license that can be
  2237. * found in the LICENSE file at https://angular.io/license
  2238. */function ut(t,e,n){var i=n.configurable;return ht(t,e,n=pt(t,e,n),i)}function dt(t,e){return t&&t[Z]&&t[Z][e]}function pt(t,e,n){return Object.isFrozen(n)||(n.configurable=!0),n.configurable||(t[Z]||Object.isFrozen(t)||K(t,Z,{writable:!0,value:{}}),t[Z]&&(t[Z][e]=!0)),n}function ht(t,e,n,i){try{return K(t,e,n)}catch(o){if(!n.configurable)throw o;void 0===i?delete n.configurable:n.configurable=i;try{return K(t,e,n)}catch(i){var r=null;try{r=JSON.stringify(n)}catch(t){r=n.toString()}console.log("Attempting to configure '"+e+"' with descriptor '"+r+"' on object '"+t+"' and got error, giving up: "+i)}}}
  2239. /**
  2240. * @license
  2241. * Copyright Google Inc. All Rights Reserved.
  2242. *
  2243. * Use of this source code is governed by an MIT-style license that can be
  2244. * found in the LICENSE file at https://angular.io/license
  2245. */Zone.__load_patch("util",function(n,i,a){a.patchOnProperties=C,a.patchMethod=O,a.bindArguments=m,a.patchMacroTask=_;var s=i.__symbol__("BLACK_LISTED_EVENTS"),u=i.__symbol__("UNPATCHED_EVENTS");n[u]&&(n[s]=n[u]),n[s]&&(i[s]=i[u]=n[s]),a.patchEventPrototype=H,a.patchEventTarget=z,a.isIEOrEdge=D,a.ObjectDefineProperty=e,a.ObjectGetOwnPropertyDescriptor=t,a.ObjectCreate=r,a.ArraySlice=o,a.patchClass=T,a.wrapWithCurrentZone=l,a.filterProperties=st,a.attachOriginToPatched=P,a._redefineProperty=Object.defineProperty,a.patchCallbacks=W,a.getGlobalObjects=function(){return{globalSources:V,zoneSymbolEventNames:j,eventNames:at,isBrowser:w,isMix:S,isNode:b,TRUE_STR:"true",FALSE_STR:"false",ZONE_SYMBOL_PREFIX:c,ADD_EVENT_LISTENER_STR:"addEventListener",REMOVE_EVENT_LISTENER_STR:"removeEventListener"}}}),
  2246. /**
  2247. * @license
  2248. * Copyright Google Inc. All Rights Reserved.
  2249. *
  2250. * Use of this source code is governed by an MIT-style license that can be
  2251. * found in the LICENSE file at https://angular.io/license
  2252. */
  2253. function(t){var e=t.__Zone_symbol_prefix||"__zone_symbol__";t[e+"legacyPatch"]=function(){var e=t.Zone;e.__load_patch("defineProperty",function(t,e,n){n._redefineProperty=ut,q=Zone.__symbol__,K=Object[q("defineProperty")]=Object.defineProperty,X=Object[q("getOwnPropertyDescriptor")]=Object.getOwnPropertyDescriptor,Y=Object.create,Z=q("unconfigurables"),Object.defineProperty=function(t,e,n){if(dt(t,e))throw new TypeError("Cannot assign to read only property '"+e+"' of "+t);var i=n.configurable;return"prototype"!==e&&(n=pt(t,e,n)),ht(t,e,n,i)},Object.defineProperties=function(t,e){return Object.keys(e).forEach(function(n){Object.defineProperty(t,n,e[n])}),t},Object.create=function(t,e){return"object"!=typeof e||Object.isFrozen(e)||Object.keys(e).forEach(function(n){e[n]=pt(t,n,e[n])}),Y(t,e)},Object.getOwnPropertyDescriptor=function(t,e){var n=X(t,e);return n&&dt(t,e)&&(n.configurable=!1),n}}),e.__load_patch("registerElement",function(t,e,n){!function(t,e){var n=e.getGlobalObjects(),i=n.isBrowser,r=n.isMix;(i||r)&&"registerElement"in t.document&&e.patchCallbacks(e,document,"Document","registerElement",["createdCallback","attachedCallback","detachedCallback","attributeChangedCallback"])}(t,n)}),e.__load_patch("EventTargetLegacy",function(t,e,n){(function(t,e){var n=e.getGlobalObjects(),i=n.eventNames,r=n.globalSources,o=n.zoneSymbolEventNames,a=n.TRUE_STR,s=n.FALSE_STR,c=n.ZONE_SYMBOL_PREFIX,l="ApplicationCache,EventSource,FileReader,InputMethodContext,MediaController,MessagePort,Node,Performance,SVGElementInstance,SharedWorker,TextTrack,TextTrackCue,TextTrackList,WebKitNamedFlow,Window,Worker,WorkerGlobalScope,XMLHttpRequest,XMLHttpRequestEventTarget,XMLHttpRequestUpload,IDBRequest,IDBOpenDBRequest,IDBDatabase,IDBTransaction,IDBCursor,DBIndex,WebSocket".split(","),u=[],d=t.wtf,p="Anchor,Area,Audio,BR,Base,BaseFont,Body,Button,Canvas,Content,DList,Directory,Div,Embed,FieldSet,Font,Form,Frame,FrameSet,HR,Head,Heading,Html,IFrame,Image,Input,Keygen,LI,Label,Legend,Link,Map,Marquee,Media,Menu,Meta,Meter,Mod,OList,Object,OptGroup,Option,Output,Paragraph,Pre,Progress,Quote,Script,Select,Source,Span,Style,TableCaption,TableCell,TableCol,Table,TableRow,TableSection,TextArea,Title,Track,UList,Unknown,Video".split(",");d?u=p.map(function(t){return"HTML"+t+"Element"}).concat(l):t.EventTarget?u.push("EventTarget"):u=l;for(var h=t.__Zone_disable_IE_check||!1,f=t.__Zone_enable_cross_context_check||!1,g=e.isIEOrEdge(),m="function __BROWSERTOOLS_CONSOLE_SAFEFUNC() { [native code] }",v={MSPointerCancel:"pointercancel",MSPointerDown:"pointerdown",MSPointerEnter:"pointerenter",MSPointerHover:"pointerhover",MSPointerLeave:"pointerleave",MSPointerMove:"pointermove",MSPointerOut:"pointerout",MSPointerOver:"pointerover",MSPointerUp:"pointerup"},y=0;y<i.length;y++){var b=c+((E=i[y])+s),w=c+(E+a);o[E]={},o[E][s]=b,o[E][a]=w}for(y=0;y<p.length;y++)for(var S=p[y],x=r[S]={},M=0;M<i.length;M++){var E;x[E=i[M]]=S+".addEventListener:"+E}var C=[];for(y=0;y<u.length;y++){var A=t[u[y]];C.push(A&&A.prototype)}e.patchEventTarget(t,C,{vh:function(t,e,n,i){if(!h&&g){if(f)try{var r;if("[object FunctionWrapper]"===(r=e.toString())||r==m)return t.apply(n,i),!1}catch(e){return t.apply(n,i),!1}else if("[object FunctionWrapper]"===(r=e.toString())||r==m)return t.apply(n,i),!1}else if(f)try{e.toString()}catch(e){return t.apply(n,i),!1}return!0},transferEventName:function(t){return v[t]||t}}),Zone[e.symbol("patchEventTarget")]=!!t.EventTarget}
  2254. /**
  2255. * @license
  2256. * Copyright Google Inc. All Rights Reserved.
  2257. *
  2258. * Use of this source code is governed by an MIT-style license that can be
  2259. * found in the LICENSE file at https://angular.io/license
  2260. */
  2261. /**
  2262. * @license
  2263. * Copyright Google Inc. All Rights Reserved.
  2264. *
  2265. * Use of this source code is governed by an MIT-style license that can be
  2266. * found in the LICENSE file at https://angular.io/license
  2267. */)(t,n),function(t,e){var n=t.getGlobalObjects(),i=n.isNode,r=n.isMix;if((!i||r)&&!function(t,e){var n=t.getGlobalObjects(),i=n.isBrowser,r=n.isMix;if((i||r)&&!t.ObjectGetOwnPropertyDescriptor(HTMLElement.prototype,"onclick")&&"undefined"!=typeof Element){var o=t.ObjectGetOwnPropertyDescriptor(Element.prototype,"onclick");if(o&&!o.configurable)return!1;if(o){t.ObjectDefineProperty(Element.prototype,"onclick",{enumerable:!0,configurable:!0,get:function(){return!0}});var a=!!document.createElement("div").onclick;return t.ObjectDefineProperty(Element.prototype,"onclick",o),a}}var s=e.XMLHttpRequest;if(!s)return!1;var c=s.prototype,l=t.ObjectGetOwnPropertyDescriptor(c,"onreadystatechange");if(l)return t.ObjectDefineProperty(c,"onreadystatechange",{enumerable:!0,configurable:!0,get:function(){return!0}}),a=!!(d=new s).onreadystatechange,t.ObjectDefineProperty(c,"onreadystatechange",l||{}),a;var u=t.symbol("fake");t.ObjectDefineProperty(c,"onreadystatechange",{enumerable:!0,configurable:!0,get:function(){return this[u]},set:function(t){this[u]=t}});var d=new s,p=function(){};return d.onreadystatechange=p,a=d[u]===p,d.onreadystatechange=null,a}(t,e)){var o="undefined"!=typeof WebSocket;!function(t){for(var e=t.getGlobalObjects().eventNames,n=t.symbol("unbound"),i=function(i){var r=e[i],o="on"+r;self.addEventListener(r,function(e){var i,r,a=e.target;for(r=a?a.constructor.name+"."+o:"unknown."+o;a;)a[o]&&!a[o][n]&&((i=t.wrapWithCurrentZone(a[o],r))[n]=a[o],a[o]=i),a=a.parentElement},!0)},r=0;r<e.length;r++)i(r)}
  2268. /**
  2269. * @license
  2270. * Copyright Google Inc. All Rights Reserved.
  2271. *
  2272. * Use of this source code is governed by an MIT-style license that can be
  2273. * found in the LICENSE file at https://angular.io/license
  2274. */(t),t.patchClass("XMLHttpRequest"),o&&function(t,e){var n=t.getGlobalObjects(),i=n.ADD_EVENT_LISTENER_STR,r=n.REMOVE_EVENT_LISTENER_STR,o=e.WebSocket;e.EventTarget||t.patchEventTarget(e,[o.prototype]),e.WebSocket=function(e,n){var a,s,c=arguments.length>1?new o(e,n):new o(e),l=t.ObjectGetOwnPropertyDescriptor(c,"onmessage");return l&&!1===l.configurable?(a=t.ObjectCreate(c),s=c,[i,r,"send","close"].forEach(function(e){a[e]=function(){var n=t.ArraySlice.call(arguments);if(e===i||e===r){var o=n.length>0?n[0]:void 0;if(o){var s=Zone.__symbol__("ON_PROPERTY"+o);c[s]=a[s]}}return c[e].apply(c,n)}})):a=c,t.patchOnProperties(a,["close","error","message","open"],s),a};var a=e.WebSocket;for(var s in o)a[s]=o[s]}(t,e),Zone[t.symbol("patchEvents")]=!0}}(n,t)})}}("undefined"!=typeof window?window:void 0!==i?i:"undefined"!=typeof self?self:{});
  2275. /**
  2276. * @license
  2277. * Copyright Google Inc. All Rights Reserved.
  2278. *
  2279. * Use of this source code is governed by an MIT-style license that can be
  2280. * found in the LICENSE file at https://angular.io/license
  2281. */
  2282. var ft=d("zoneTask");function gt(t,e,n,i){var r=null,o=null;n+=i;var a={};function s(e){var n=e.data;return n.args[0]=function(){try{e.invoke.apply(this,arguments)}finally{e.data&&e.data.isPeriodic||("number"==typeof n.handleId?delete a[n.handleId]:n.handleId&&(n.handleId[ft]=null))}},n.handleId=r.apply(t,n.args),e}function c(t){return o(t.data.handleId)}r=O(t,e+=i,function(n){return function(r,o){if("function"==typeof o[0]){var l={isPeriodic:"Interval"===i,delay:"Timeout"===i||"Interval"===i?o[1]||0:void 0,args:o},d=u(e,o[0],l,s,c);if(!d)return d;var p=d.data.handleId;return"number"==typeof p?a[p]=d:p&&(p[ft]=d),p&&p.ref&&p.unref&&"function"==typeof p.ref&&"function"==typeof p.unref&&(d.ref=p.ref.bind(p),d.unref=p.unref.bind(p)),"number"==typeof p||p?p:d}return n.apply(t,o)}}),o=O(t,n,function(e){return function(n,i){var r,o=i[0];"number"==typeof o?r=a[o]:(r=o&&o[ft])||(r=o),r&&"string"==typeof r.type?"notScheduled"!==r.state&&(r.cancelFn&&r.data.isPeriodic||0===r.runCount)&&("number"==typeof o?delete a[o]:o&&(o[ft]=null),r.zone.cancelTask(r)):e.apply(t,i)}})}
  2283. /**
  2284. * @license
  2285. * Copyright Google Inc. All Rights Reserved.
  2286. *
  2287. * Use of this source code is governed by an MIT-style license that can be
  2288. * found in the LICENSE file at https://angular.io/license
  2289. */
  2290. /**
  2291. * @license
  2292. * Copyright Google Inc. All Rights Reserved.
  2293. *
  2294. * Use of this source code is governed by an MIT-style license that can be
  2295. * found in the LICENSE file at https://angular.io/license
  2296. */
  2297. /**
  2298. * @license
  2299. * Copyright Google Inc. All Rights Reserved.
  2300. *
  2301. * Use of this source code is governed by an MIT-style license that can be
  2302. * found in the LICENSE file at https://angular.io/license
  2303. */
  2304. Zone.__load_patch("legacy",function(t){var e=t[Zone.__symbol__("legacyPatch")];e&&e()}),Zone.__load_patch("timers",function(t){gt(t,"set","clear","Timeout"),gt(t,"set","clear","Interval"),gt(t,"set","clear","Immediate")}),Zone.__load_patch("requestAnimationFrame",function(t){gt(t,"request","cancel","AnimationFrame"),gt(t,"mozRequest","mozCancel","AnimationFrame"),gt(t,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",function(t,e){for(var n=["alert","prompt","confirm"],i=0;i<n.length;i++)O(t,n[i],function(n,i,r){return function(i,o){return e.current.run(n,t,o,r)}})}),Zone.__load_patch("EventTarget",function(t,e,n){!function(t,e){e.patchEventPrototype(t,e)}(t,n),function(t,e){if(!Zone[e.symbol("patchEventTarget")]){for(var n=e.getGlobalObjects(),i=n.eventNames,r=n.zoneSymbolEventNames,o=n.TRUE_STR,a=n.FALSE_STR,s=n.ZONE_SYMBOL_PREFIX,c=0;c<i.length;c++){var l=i[c],u=s+(l+a),d=s+(l+o);r[l]={},r[l][a]=u,r[l][o]=d}var p=t.EventTarget;if(p&&p.prototype)e.patchEventTarget(t,[p&&p.prototype])}}(t,n);var i=t.XMLHttpRequestEventTarget;i&&i.prototype&&n.patchEventTarget(t,[i.prototype]),T("MutationObserver"),T("WebKitMutationObserver"),T("IntersectionObserver"),T("FileReader")}),Zone.__load_patch("on_property",function(t,e,n){lt(n,t)}),Zone.__load_patch("customElements",function(t,e,n){!function(t,e){var n=e.getGlobalObjects(),i=n.isBrowser,r=n.isMix;(i||r)&&t.customElements&&"customElements"in t&&e.patchCallbacks(e,t.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(t,n)}),Zone.__load_patch("XHR",function(t,e){!function(t){var p=t.XMLHttpRequest;if(p){var h=p.prototype,f=h[a],g=h[s];if(!f){var m=t.XMLHttpRequestEventTarget;if(m){var v=m.prototype;f=v[a],g=v[s]}}var y=O(h,"open",function(){return function(t,e){return t[i]=0==e[2],t[c]=e[1],y.apply(t,e)}}),b=d("fetchTaskAborting"),w=d("fetchTaskScheduling"),S=O(h,"send",function(){return function(t,n){if(!0===e.current[w])return S.apply(t,n);if(t[i])return S.apply(t,n);var r={target:t,url:t[c],isPeriodic:!1,args:n,aborted:!1},o=u("XMLHttpRequest.send",E,r,M,C);t&&!0===t[l]&&!r.aborted&&"scheduled"===o.state&&o.invoke()}}),x=O(h,"abort",function(){return function(t,i){var r=t[n];if(r&&"string"==typeof r.type){if(null==r.cancelFn||r.data&&r.data.aborted)return;r.zone.cancelTask(r)}else if(!0===e.current[b])return x.apply(t,i)}})}function M(t){var i=t.data,c=i.target;c[o]=!1,c[l]=!1;var u=c[r];f||(f=c[a],g=c[s]),u&&g.call(c,"readystatechange",u);var d=c[r]=function(){if(c.readyState===c.DONE)if(!i.aborted&&c[o]&&"scheduled"===t.state){var n=c[e.__symbol__("loadfalse")];if(n&&n.length>0){var r=t.invoke;t.invoke=function(){for(var n=c[e.__symbol__("loadfalse")],o=0;o<n.length;o++)n[o]===t&&n.splice(o,1);i.aborted||"scheduled"!==t.state||r.call(t)},n.push(t)}else t.invoke()}else i.aborted||!1!==c[o]||(c[l]=!0)};return f.call(c,"readystatechange",d),c[n]||(c[n]=t),S.apply(c,i.args),c[o]=!0,t}function E(){}function C(t){var e=t.data;return e.aborted=!0,x.apply(e.target,e.args)}}(t);var n=d("xhrTask"),i=d("xhrSync"),r=d("xhrListener"),o=d("xhrScheduled"),c=d("xhrURL"),l=d("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",function(e){e.navigator&&e.navigator.geolocation&&function(e,n){for(var i=e.constructor.name,r=function(r){var o=n[r],a=e[o];if(a){if(!v(t(e,o)))return"continue";e[o]=function(t){var e=function(){return t.apply(this,m(arguments,i+"."+o))};return P(e,t),e}(a)}},o=0;o<n.length;o++)r(o)}(e.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",function(t,e){function n(e){return function(n){G(t,e).forEach(function(i){var r=t.PromiseRejectionEvent;if(r){var o=new r(e,{promise:n.promise,reason:n.rejection});i.invoke(o)}})}}t.PromiseRejectionEvent&&(e[d("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),e[d("rejectionHandledHandler")]=n("rejectionhandled"))})})?r.call(e,n,e,t):r)||(t.exports=o)}).call(this,n(213))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(870),n(883),n(890),n(899),n(900),n(904),n(906),n(908),n(910),n(918),n(2),n(925),n(927),n(928),n(930),n(932),n(934),n(935),n(937),n(939),n(940),n(942),n(944),n(945),n(947),n(129)},function(t,e,n){n(871),n(872),n(873),n(874),n(875),n(876),n(877),n(878),n(879),n(880),n(881),n(882)},function(t,e,n){(function(t){!function(t){"use strict";t.fn.emulateTransitionEnd=function(e){var n=!1,i=this;return t(this).one("bsTransitionEnd",function(){n=!0}),setTimeout(function(){n||t(i).trigger(t.support.transition.end)},e),this},t(function(){t.support.transition=function(){var t=document.createElement("bootstrap"),e={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var n in e)if(void 0!==t.style[n])return{end:e[n]};return!1}(),t.support.transition&&(t.event.special.bsTransitionEnd={bindType:t.support.transition.end,delegateType:t.support.transition.end,handle:function(e){if(t(e.target).is(this))return e.handleObj.handler.apply(this,arguments)}})})}(t)}).call(this,n(19))},function(t,e,n){(function(t){!function(t){"use strict";var e='[data-dismiss="alert"]',n=function(n){t(n).on("click",e,this.close)};n.VERSION="3.4.1",n.TRANSITION_DURATION=150,n.prototype.close=function(e){var i=t(this),r=i.attr("data-target");r||(r=(r=i.attr("href"))&&r.replace(/.*(?=#[^\s]*$)/,"")),r="#"===r?[]:r;var o=t(document).find(r);function a(){o.detach().trigger("closed.bs.alert").remove()}e&&e.preventDefault(),o.length||(o=i.closest(".alert")),o.trigger(e=t.Event("close.bs.alert")),e.isDefaultPrevented()||(o.removeClass("in"),t.support.transition&&o.hasClass("fade")?o.one("bsTransitionEnd",a).emulateTransitionEnd(n.TRANSITION_DURATION):a())};var i=t.fn.alert;t.fn.alert=function(e){return this.each(function(){var i=t(this),r=i.data("bs.alert");r||i.data("bs.alert",r=new n(this)),"string"==typeof e&&r[e].call(i)})},t.fn.alert.Constructor=n,t.fn.alert.noConflict=function(){return t.fn.alert=i,this},t(document).on("click.bs.alert.data-api",e,n.prototype.close)}(t)}).call(this,n(19))},function(t,e,n){(function(t){!function(t){"use strict";var e=function(n,i){this.$element=t(n),this.options=t.extend({},e.DEFAULTS,i),this.isLoading=!1};function n(n){return this.each(function(){var i=t(this),r=i.data("bs.button"),o="object"==typeof n&&n;r||i.data("bs.button",r=new e(this,o)),"toggle"==n?r.toggle():n&&r.setState(n)})}e.VERSION="3.4.1",e.DEFAULTS={loadingText:"loading..."},e.prototype.setState=function(e){var n="disabled",i=this.$element,r=i.is("input")?"val":"html",o=i.data();e+="Text",null==o.resetText&&i.data("resetText",i[r]()),setTimeout(t.proxy(function(){i[r](null==o[e]?this.options[e]:o[e]),"loadingText"==e?(this.isLoading=!0,i.addClass(n).attr(n,n).prop(n,!0)):this.isLoading&&(this.isLoading=!1,i.removeClass(n).removeAttr(n).prop(n,!1))},this),0)},e.prototype.toggle=function(){var t=!0,e=this.$element.closest('[data-toggle="buttons"]');if(e.length){var n=this.$element.find("input");"radio"==n.prop("type")?(n.prop("checked")&&(t=!1),e.find(".active").removeClass("active"),this.$element.addClass("active")):"checkbox"==n.prop("type")&&(n.prop("checked")!==this.$element.hasClass("active")&&(t=!1),this.$element.toggleClass("active")),n.prop("checked",this.$element.hasClass("active")),t&&n.trigger("change")}else this.$element.attr("aria-pressed",!this.$element.hasClass("active")),this.$element.toggleClass("active")};var i=t.fn.button;t.fn.button=n,t.fn.button.Constructor=e,t.fn.button.noConflict=function(){return t.fn.button=i,this},t(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(e){var i=t(e.target).closest(".btn");n.call(i,"toggle"),t(e.target).is('input[type="radio"], input[type="checkbox"]')||(e.preventDefault(),i.is("input,button")?i.trigger("focus"):i.find("input:visible,button:visible").first().trigger("focus"))}).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',function(e){t(e.target).closest(".btn").toggleClass("focus",/^focus(in)?$/.test(e.type))})}(t)}).call(this,n(19))},function(t,e,n){(function(t){!function(t){"use strict";var e=function(e,n){this.$element=t(e),this.$indicators=this.$element.find(".carousel-indicators"),this.options=n,this.paused=null,this.sliding=null,this.interval=null,this.$active=null,this.$items=null,this.options.keyboard&&this.$element.on("keydown.bs.carousel",t.proxy(this.keydown,this)),"hover"==this.options.pause&&!("ontouchstart"in document.documentElement)&&this.$element.on("mouseenter.bs.carousel",t.proxy(this.pause,this)).on("mouseleave.bs.carousel",t.proxy(this.cycle,this))};function n(n){return this.each(function(){var i=t(this),r=i.data("bs.carousel"),o=t.extend({},e.DEFAULTS,i.data(),"object"==typeof n&&n),a="string"==typeof n?n:o.slide;r||i.data("bs.carousel",r=new e(this,o)),"number"==typeof n?r.to(n):a?r[a]():o.interval&&r.pause().cycle()})}e.VERSION="3.4.1",e.TRANSITION_DURATION=600,e.DEFAULTS={interval:5e3,pause:"hover",wrap:!0,keyboard:!0},e.prototype.keydown=function(t){if(!/input|textarea/i.test(t.target.tagName)){switch(t.which){case 37:this.prev();break;case 39:this.next();break;default:return}t.preventDefault()}},e.prototype.cycle=function(e){return e||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(t.proxy(this.next,this),this.options.interval)),this},e.prototype.getItemIndex=function(t){return this.$items=t.parent().children(".item"),this.$items.index(t||this.$active)},e.prototype.getItemForDirection=function(t,e){var n=this.getItemIndex(e);if(("prev"==t&&0===n||"next"==t&&n==this.$items.length-1)&&!this.options.wrap)return e;var i=(n+("prev"==t?-1:1))%this.$items.length;return this.$items.eq(i)},e.prototype.to=function(t){var e=this,n=this.getItemIndex(this.$active=this.$element.find(".item.active"));if(!(t>this.$items.length-1||t<0))return this.sliding?this.$element.one("slid.bs.carousel",function(){e.to(t)}):n==t?this.pause().cycle():this.slide(t>n?"next":"prev",this.$items.eq(t))},e.prototype.pause=function(e){return e||(this.paused=!0),this.$element.find(".next, .prev").length&&t.support.transition&&(this.$element.trigger(t.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},e.prototype.next=function(){if(!this.sliding)return this.slide("next")},e.prototype.prev=function(){if(!this.sliding)return this.slide("prev")},e.prototype.slide=function(n,i){var r=this.$element.find(".item.active"),o=i||this.getItemForDirection(n,r),a=this.interval,s="next"==n?"left":"right",c=this;if(o.hasClass("active"))return this.sliding=!1;var l=o[0],u=t.Event("slide.bs.carousel",{relatedTarget:l,direction:s});if(this.$element.trigger(u),!u.isDefaultPrevented()){if(this.sliding=!0,a&&this.pause(),this.$indicators.length){this.$indicators.find(".active").removeClass("active");var d=t(this.$indicators.children()[this.getItemIndex(o)]);d&&d.addClass("active")}var p=t.Event("slid.bs.carousel",{relatedTarget:l,direction:s});return t.support.transition&&this.$element.hasClass("slide")?(o.addClass(n),"object"==typeof o&&o.length&&o[0].offsetWidth,r.addClass(s),o.addClass(s),r.one("bsTransitionEnd",function(){o.removeClass([n,s].join(" ")).addClass("active"),r.removeClass(["active",s].join(" ")),c.sliding=!1,setTimeout(function(){c.$element.trigger(p)},0)}).emulateTransitionEnd(e.TRANSITION_DURATION)):(r.removeClass("active"),o.addClass("active"),this.sliding=!1,this.$element.trigger(p)),a&&this.cycle(),this}};var i=t.fn.carousel;t.fn.carousel=n,t.fn.carousel.Constructor=e,t.fn.carousel.noConflict=function(){return t.fn.carousel=i,this};var r=function(e){var i=t(this),r=i.attr("href");r&&(r=r.replace(/.*(?=#[^\s]+$)/,""));var o=i.attr("data-target")||r,a=t(document).find(o);if(a.hasClass("carousel")){var s=t.extend({},a.data(),i.data()),c=i.attr("data-slide-to");c&&(s.interval=!1),n.call(a,s),c&&a.data("bs.carousel").to(c),e.preventDefault()}};t(document).on("click.bs.carousel.data-api","[data-slide]",r).on("click.bs.carousel.data-api","[data-slide-to]",r),t(window).on("load",function(){t('[data-ride="carousel"]').each(function(){var e=t(this);n.call(e,e.data())})})}(t)}).call(this,n(19))},function(t,e,n){(function(t){!function(t){"use strict";var e=function(n,i){this.$element=t(n),this.options=t.extend({},e.DEFAULTS,i),this.$trigger=t('[data-toggle="collapse"][href="#'+n.id+'"],[data-toggle="collapse"][data-target="#'+n.id+'"]'),this.transitioning=null,this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger),this.options.toggle&&this.toggle()};function n(e){var n,i=e.attr("data-target")||(n=e.attr("href"))&&n.replace(/.*(?=#[^\s]+$)/,"");return t(document).find(i)}function i(n){return this.each(function(){var i=t(this),r=i.data("bs.collapse"),o=t.extend({},e.DEFAULTS,i.data(),"object"==typeof n&&n);!r&&o.toggle&&/show|hide/.test(n)&&(o.toggle=!1),r||i.data("bs.collapse",r=new e(this,o)),"string"==typeof n&&r[n]()})}e.VERSION="3.4.1",e.TRANSITION_DURATION=350,e.DEFAULTS={toggle:!0},e.prototype.dimension=function(){return this.$element.hasClass("width")?"width":"height"},e.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var n,r=this.$parent&&this.$parent.children(".panel").children(".in, .collapsing");if(!(r&&r.length&&(n=r.data("bs.collapse"))&&n.transitioning)){var o=t.Event("show.bs.collapse");if(this.$element.trigger(o),!o.isDefaultPrevented()){r&&r.length&&(i.call(r,"hide"),n||r.data("bs.collapse",null));var a=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[a](0).attr("aria-expanded",!0),this.$trigger.removeClass("collapsed").attr("aria-expanded",!0),this.transitioning=1;var s=function(){this.$element.removeClass("collapsing").addClass("collapse in")[a](""),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!t.support.transition)return s.call(this);var c=t.camelCase(["scroll",a].join("-"));this.$element.one("bsTransitionEnd",t.proxy(s,this)).emulateTransitionEnd(e.TRANSITION_DURATION)[a](this.$element[0][c])}}}},e.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var n=t.Event("hide.bs.collapse");if(this.$element.trigger(n),!n.isDefaultPrevented()){var i=this.dimension();this.$element[i](this.$element[i]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse in").attr("aria-expanded",!1),this.$trigger.addClass("collapsed").attr("aria-expanded",!1),this.transitioning=1;var r=function(){this.transitioning=0,this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse")};if(!t.support.transition)return r.call(this);this.$element[i](0).one("bsTransitionEnd",t.proxy(r,this)).emulateTransitionEnd(e.TRANSITION_DURATION)}}},e.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()},e.prototype.getParent=function(){return t(document).find(this.options.parent).find('[data-toggle="collapse"][data-parent="'+this.options.parent+'"]').each(t.proxy(function(e,i){var r=t(i);this.addAriaAndCollapsedClass(n(r),r)},this)).end()},e.prototype.addAriaAndCollapsedClass=function(t,e){var n=t.hasClass("in");t.attr("aria-expanded",n),e.toggleClass("collapsed",!n).attr("aria-expanded",n)};var r=t.fn.collapse;t.fn.collapse=i,t.fn.collapse.Constructor=e,t.fn.collapse.noConflict=function(){return t.fn.collapse=r,this},t(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(e){var r=t(this);r.attr("data-target")||e.preventDefault();var o=n(r),a=o.data("bs.collapse")?"toggle":r.data();i.call(o,a)})}(t)}).call(this,n(19))},function(t,e,n){(function(t){!function(t){"use strict";var e='[data-toggle="dropdown"]',n=function(e){t(e).on("click.bs.dropdown",this.toggle)};function i(e){var n=e.attr("data-target");n||(n=(n=e.attr("href"))&&/#[A-Za-z]/.test(n)&&n.replace(/.*(?=#[^\s]*$)/,""));var i="#"!==n?t(document).find(n):null;return i&&i.length?i:e.parent()}function r(n){n&&3===n.which||(t(".dropdown-backdrop").remove(),t(e).each(function(){var e=t(this),r=i(e),o={relatedTarget:this};r.hasClass("open")&&(n&&"click"==n.type&&/input|textarea/i.test(n.target.tagName)&&t.contains(r[0],n.target)||(r.trigger(n=t.Event("hide.bs.dropdown",o)),n.isDefaultPrevented()||(e.attr("aria-expanded","false"),r.removeClass("open").trigger(t.Event("hidden.bs.dropdown",o)))))}))}n.VERSION="3.4.1",n.prototype.toggle=function(e){var n=t(this);if(!n.is(".disabled, :disabled")){var o=i(n),a=o.hasClass("open");if(r(),!a){"ontouchstart"in document.documentElement&&!o.closest(".navbar-nav").length&&t(document.createElement("div")).addClass("dropdown-backdrop").insertAfter(t(this)).on("click",r);var s={relatedTarget:this};if(o.trigger(e=t.Event("show.bs.dropdown",s)),e.isDefaultPrevented())return;n.trigger("focus").attr("aria-expanded","true"),o.toggleClass("open").trigger(t.Event("shown.bs.dropdown",s))}return!1}},n.prototype.keydown=function(n){if(/(38|40|27|32)/.test(n.which)&&!/input|textarea/i.test(n.target.tagName)){var r=t(this);if(n.preventDefault(),n.stopPropagation(),!r.is(".disabled, :disabled")){var o=i(r),a=o.hasClass("open");if(!a&&27!=n.which||a&&27==n.which)return 27==n.which&&o.find(e).trigger("focus"),r.trigger("click");var s=o.find(".dropdown-menu li:not(.disabled):visible a");if(s.length){var c=s.index(n.target);38==n.which&&c>0&&c--,40==n.which&&c<s.length-1&&c++,~c||(c=0),s.eq(c).trigger("focus")}}}};var o=t.fn.dropdown;t.fn.dropdown=function(e){return this.each(function(){var i=t(this),r=i.data("bs.dropdown");r||i.data("bs.dropdown",r=new n(this)),"string"==typeof e&&r[e].call(i)})},t.fn.dropdown.Constructor=n,t.fn.dropdown.noConflict=function(){return t.fn.dropdown=o,this},t(document).on("click.bs.dropdown.data-api",r).on("click.bs.dropdown.data-api",".dropdown form",function(t){t.stopPropagation()}).on("click.bs.dropdown.data-api",e,n.prototype.toggle).on("keydown.bs.dropdown.data-api",e,n.prototype.keydown).on("keydown.bs.dropdown.data-api",".dropdown-menu",n.prototype.keydown)}(t)}).call(this,n(19))},function(t,e,n){(function(t){!function(t){"use strict";var e=function(e,n){this.options=n,this.$body=t(document.body),this.$element=t(e),this.$dialog=this.$element.find(".modal-dialog"),this.$backdrop=null,this.isShown=null,this.originalBodyPad=null,this.scrollbarWidth=0,this.ignoreBackdropClick=!1,this.fixedContent=".navbar-fixed-top, .navbar-fixed-bottom",this.options.remote&&this.$element.find(".modal-content").load(this.options.remote,t.proxy(function(){this.$element.trigger("loaded.bs.modal")},this))};function n(n,i){return this.each(function(){var r=t(this),o=r.data("bs.modal"),a=t.extend({},e.DEFAULTS,r.data(),"object"==typeof n&&n);o||r.data("bs.modal",o=new e(this,a)),"string"==typeof n?o[n](i):a.show&&o.show(i)})}e.VERSION="3.4.1",e.TRANSITION_DURATION=300,e.BACKDROP_TRANSITION_DURATION=150,e.DEFAULTS={backdrop:!0,keyboard:!0,show:!0},e.prototype.toggle=function(t){return this.isShown?this.hide():this.show(t)},e.prototype.show=function(n){var i=this,r=t.Event("show.bs.modal",{relatedTarget:n});this.$element.trigger(r),this.isShown||r.isDefaultPrevented()||(this.isShown=!0,this.checkScrollbar(),this.setScrollbar(),this.$body.addClass("modal-open"),this.escape(),this.resize(),this.$element.on("click.dismiss.bs.modal",'[data-dismiss="modal"]',t.proxy(this.hide,this)),this.$dialog.on("mousedown.dismiss.bs.modal",function(){i.$element.one("mouseup.dismiss.bs.modal",function(e){t(e.target).is(i.$element)&&(i.ignoreBackdropClick=!0)})}),this.backdrop(function(){var r=t.support.transition&&i.$element.hasClass("fade");i.$element.parent().length||i.$element.appendTo(i.$body),i.$element.show().scrollTop(0),i.adjustDialog(),r&&i.$element[0].offsetWidth,i.$element.addClass("in"),i.enforceFocus();var o=t.Event("shown.bs.modal",{relatedTarget:n});r?i.$dialog.one("bsTransitionEnd",function(){i.$element.trigger("focus").trigger(o)}).emulateTransitionEnd(e.TRANSITION_DURATION):i.$element.trigger("focus").trigger(o)}))},e.prototype.hide=function(n){n&&n.preventDefault(),n=t.Event("hide.bs.modal"),this.$element.trigger(n),this.isShown&&!n.isDefaultPrevented()&&(this.isShown=!1,this.escape(),this.resize(),t(document).off("focusin.bs.modal"),this.$element.removeClass("in").off("click.dismiss.bs.modal").off("mouseup.dismiss.bs.modal"),this.$dialog.off("mousedown.dismiss.bs.modal"),t.support.transition&&this.$element.hasClass("fade")?this.$element.one("bsTransitionEnd",t.proxy(this.hideModal,this)).emulateTransitionEnd(e.TRANSITION_DURATION):this.hideModal())},e.prototype.enforceFocus=function(){t(document).off("focusin.bs.modal").on("focusin.bs.modal",t.proxy(function(t){document===t.target||this.$element[0]===t.target||this.$element.has(t.target).length||this.$element.trigger("focus")},this))},e.prototype.escape=function(){this.isShown&&this.options.keyboard?this.$element.on("keydown.dismiss.bs.modal",t.proxy(function(t){27==t.which&&this.hide()},this)):this.isShown||this.$element.off("keydown.dismiss.bs.modal")},e.prototype.resize=function(){this.isShown?t(window).on("resize.bs.modal",t.proxy(this.handleUpdate,this)):t(window).off("resize.bs.modal")},e.prototype.hideModal=function(){var t=this;this.$element.hide(),this.backdrop(function(){t.$body.removeClass("modal-open"),t.resetAdjustments(),t.resetScrollbar(),t.$element.trigger("hidden.bs.modal")})},e.prototype.removeBackdrop=function(){this.$backdrop&&this.$backdrop.remove(),this.$backdrop=null},e.prototype.backdrop=function(n){var i=this,r=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var o=t.support.transition&&r;if(this.$backdrop=t(document.createElement("div")).addClass("modal-backdrop "+r).appendTo(this.$body),this.$element.on("click.dismiss.bs.modal",t.proxy(function(t){this.ignoreBackdropClick?this.ignoreBackdropClick=!1:t.target===t.currentTarget&&("static"==this.options.backdrop?this.$element[0].focus():this.hide())},this)),o&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),!n)return;o?this.$backdrop.one("bsTransitionEnd",n).emulateTransitionEnd(e.BACKDROP_TRANSITION_DURATION):n()}else if(!this.isShown&&this.$backdrop){this.$backdrop.removeClass("in");var a=function(){i.removeBackdrop(),n&&n()};t.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one("bsTransitionEnd",a).emulateTransitionEnd(e.BACKDROP_TRANSITION_DURATION):a()}else n&&n()},e.prototype.handleUpdate=function(){this.adjustDialog()},e.prototype.adjustDialog=function(){var t=this.$element[0].scrollHeight>document.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&t?this.scrollbarWidth:"",paddingRight:this.bodyIsOverflowing&&!t?this.scrollbarWidth:""})},e.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:"",paddingRight:""})},e.prototype.checkScrollbar=function(){var t=window.innerWidth;if(!t){var e=document.documentElement.getBoundingClientRect();t=e.right-Math.abs(e.left)}this.bodyIsOverflowing=document.body.clientWidth<t,this.scrollbarWidth=this.measureScrollbar()},e.prototype.setScrollbar=function(){var e=parseInt(this.$body.css("padding-right")||0,10);this.originalBodyPad=document.body.style.paddingRight||"";var n=this.scrollbarWidth;this.bodyIsOverflowing&&(this.$body.css("padding-right",e+n),t(this.fixedContent).each(function(e,i){var r=i.style.paddingRight,o=t(i).css("padding-right");t(i).data("padding-right",r).css("padding-right",parseFloat(o)+n+"px")}))},e.prototype.resetScrollbar=function(){this.$body.css("padding-right",this.originalBodyPad),t(this.fixedContent).each(function(e,n){var i=t(n).data("padding-right");t(n).removeData("padding-right"),n.style.paddingRight=i||""})},e.prototype.measureScrollbar=function(){var t=document.createElement("div");t.className="modal-scrollbar-measure",this.$body.append(t);var e=t.offsetWidth-t.clientWidth;return this.$body[0].removeChild(t),e};var i=t.fn.modal;t.fn.modal=n,t.fn.modal.Constructor=e,t.fn.modal.noConflict=function(){return t.fn.modal=i,this},t(document).on("click.bs.modal.data-api",'[data-toggle="modal"]',function(e){var i=t(this),r=i.attr("href"),o=i.attr("data-target")||r&&r.replace(/.*(?=#[^\s]+$)/,""),a=t(document).find(o),s=a.data("bs.modal")?"toggle":t.extend({remote:!/#/.test(r)&&r},a.data(),i.data());i.is("a")&&e.preventDefault(),a.one("show.bs.modal",function(t){t.isDefaultPrevented()||a.one("hidden.bs.modal",function(){i.is(":visible")&&i.trigger("focus")})}),n.call(a,s,this)})}(t)}).call(this,n(19))},function(t,e,n){(function(t){!function(t){"use strict";var e=["sanitize","whiteList","sanitizeFn"],n=["background","cite","href","itemtype","longdesc","poster","src","xlink:href"],i=/^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi,r=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i;function o(e,o){var a=e.nodeName.toLowerCase();if(-1!==t.inArray(a,o))return-1===t.inArray(a,n)||Boolean(e.nodeValue.match(i)||e.nodeValue.match(r));for(var s=t(o).filter(function(t,e){return e instanceof RegExp}),c=0,l=s.length;c<l;c++)if(a.match(s[c]))return!0;return!1}function a(e,n,i){if(0===e.length)return e;if(i&&"function"==typeof i)return i(e);if(!document.implementation||!document.implementation.createHTMLDocument)return e;var r=document.implementation.createHTMLDocument("sanitization");r.body.innerHTML=e;for(var a=t.map(n,function(t,e){return e}),s=t(r.body).find("*"),c=0,l=s.length;c<l;c++){var u=s[c],d=u.nodeName.toLowerCase();if(-1!==t.inArray(d,a))for(var p=t.map(u.attributes,function(t){return t}),h=[].concat(n["*"]||[],n[d]||[]),f=0,g=p.length;f<g;f++)o(p[f],h)||u.removeAttribute(p[f].nodeName);else u.parentNode.removeChild(u)}return r.body.innerHTML}var s=function(t,e){this.type=null,this.options=null,this.enabled=null,this.timeout=null,this.hoverState=null,this.$element=null,this.inState=null,this.init("tooltip",t,e)};s.VERSION="3.4.1",s.TRANSITION_DURATION=150,s.DEFAULTS={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0},sanitize:!0,sanitizeFn:null,whiteList:{"*":["class","dir","id","lang","role",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]}},s.prototype.init=function(e,n,i){if(this.enabled=!0,this.type=e,this.$element=t(n),this.options=this.getOptions(i),this.$viewport=this.options.viewport&&t(document).find(t.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(var r=this.options.trigger.split(" "),o=r.length;o--;){var a=r[o];if("click"==a)this.$element.on("click."+this.type,this.options.selector,t.proxy(this.toggle,this));else if("manual"!=a){var s="hover"==a?"mouseenter":"focusin",c="hover"==a?"mouseleave":"focusout";this.$element.on(s+"."+this.type,this.options.selector,t.proxy(this.enter,this)),this.$element.on(c+"."+this.type,this.options.selector,t.proxy(this.leave,this))}}this.options.selector?this._options=t.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},s.prototype.getDefaults=function(){return s.DEFAULTS},s.prototype.getOptions=function(n){var i=this.$element.data();for(var r in i)i.hasOwnProperty(r)&&-1!==t.inArray(r,e)&&delete i[r];return(n=t.extend({},this.getDefaults(),i,n)).delay&&"number"==typeof n.delay&&(n.delay={show:n.delay,hide:n.delay}),n.sanitize&&(n.template=a(n.template,n.whiteList,n.sanitizeFn)),n},s.prototype.getDelegateOptions=function(){var e={},n=this.getDefaults();return this._options&&t.each(this._options,function(t,i){n[t]!=i&&(e[t]=i)}),e},s.prototype.enter=function(e){var n=e instanceof this.constructor?e:t(e.currentTarget).data("bs."+this.type);if(n||(n=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,n)),e instanceof t.Event&&(n.inState["focusin"==e.type?"focus":"hover"]=!0),n.tip().hasClass("in")||"in"==n.hoverState)n.hoverState="in";else{if(clearTimeout(n.timeout),n.hoverState="in",!n.options.delay||!n.options.delay.show)return n.show();n.timeout=setTimeout(function(){"in"==n.hoverState&&n.show()},n.options.delay.show)}},s.prototype.isInStateTrue=function(){for(var t in this.inState)if(this.inState[t])return!0;return!1},s.prototype.leave=function(e){var n=e instanceof this.constructor?e:t(e.currentTarget).data("bs."+this.type);if(n||(n=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,n)),e instanceof t.Event&&(n.inState["focusout"==e.type?"focus":"hover"]=!1),!n.isInStateTrue()){if(clearTimeout(n.timeout),n.hoverState="out",!n.options.delay||!n.options.delay.hide)return n.hide();n.timeout=setTimeout(function(){"out"==n.hoverState&&n.hide()},n.options.delay.hide)}},s.prototype.show=function(){var e=t.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(e);var n=t.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(e.isDefaultPrevented()||!n)return;var i=this,r=this.tip(),o=this.getUID(this.type);this.setContent(),r.attr("id",o),this.$element.attr("aria-describedby",o),this.options.animation&&r.addClass("fade");var a="function"==typeof this.options.placement?this.options.placement.call(this,r[0],this.$element[0]):this.options.placement,c=/\s?auto?\s?/i,l=c.test(a);l&&(a=a.replace(c,"")||"top"),r.detach().css({top:0,left:0,display:"block"}).addClass(a).data("bs."+this.type,this),this.options.container?r.appendTo(t(document).find(this.options.container)):r.insertAfter(this.$element),this.$element.trigger("inserted.bs."+this.type);var u=this.getPosition(),d=r[0].offsetWidth,p=r[0].offsetHeight;if(l){var h=a,f=this.getPosition(this.$viewport);a="bottom"==a&&u.bottom+p>f.bottom?"top":"top"==a&&u.top-p<f.top?"bottom":"right"==a&&u.right+d>f.width?"left":"left"==a&&u.left-d<f.left?"right":a,r.removeClass(h).addClass(a)}var g=this.getCalculatedOffset(a,u,d,p);this.applyPlacement(g,a);var m=function(){var t=i.hoverState;i.$element.trigger("shown.bs."+i.type),i.hoverState=null,"out"==t&&i.leave(i)};t.support.transition&&this.$tip.hasClass("fade")?r.one("bsTransitionEnd",m).emulateTransitionEnd(s.TRANSITION_DURATION):m()}},s.prototype.applyPlacement=function(e,n){var i=this.tip(),r=i[0].offsetWidth,o=i[0].offsetHeight,a=parseInt(i.css("margin-top"),10),s=parseInt(i.css("margin-left"),10);isNaN(a)&&(a=0),isNaN(s)&&(s=0),e.top+=a,e.left+=s,t.offset.setOffset(i[0],t.extend({using:function(t){i.css({top:Math.round(t.top),left:Math.round(t.left)})}},e),0),i.addClass("in");var c=i[0].offsetWidth,l=i[0].offsetHeight;"top"==n&&l!=o&&(e.top=e.top+o-l);var u=this.getViewportAdjustedDelta(n,e,c,l);u.left?e.left+=u.left:e.top+=u.top;var d=/top|bottom/.test(n),p=d?2*u.left-r+c:2*u.top-o+l,h=d?"offsetWidth":"offsetHeight";i.offset(e),this.replaceArrow(p,i[0][h],d)},s.prototype.replaceArrow=function(t,e,n){this.arrow().css(n?"left":"top",50*(1-t/e)+"%").css(n?"top":"left","")},s.prototype.setContent=function(){var t=this.tip(),e=this.getTitle();this.options.html?(this.options.sanitize&&(e=a(e,this.options.whiteList,this.options.sanitizeFn)),t.find(".tooltip-inner").html(e)):t.find(".tooltip-inner").text(e),t.removeClass("fade in top bottom left right")},s.prototype.hide=function(e){var n=this,i=t(this.$tip),r=t.Event("hide.bs."+this.type);function o(){"in"!=n.hoverState&&i.detach(),n.$element&&n.$element.removeAttr("aria-describedby").trigger("hidden.bs."+n.type),e&&e()}if(this.$element.trigger(r),!r.isDefaultPrevented())return i.removeClass("in"),t.support.transition&&i.hasClass("fade")?i.one("bsTransitionEnd",o).emulateTransitionEnd(s.TRANSITION_DURATION):o(),this.hoverState=null,this},s.prototype.fixTitle=function(){var t=this.$element;(t.attr("title")||"string"!=typeof t.attr("data-original-title"))&&t.attr("data-original-title",t.attr("title")||"").attr("title","")},s.prototype.hasContent=function(){return this.getTitle()},s.prototype.getPosition=function(e){var n=(e=e||this.$element)[0],i="BODY"==n.tagName,r=n.getBoundingClientRect();null==r.width&&(r=t.extend({},r,{width:r.right-r.left,height:r.bottom-r.top}));var o=window.SVGElement&&n instanceof window.SVGElement,a=i?{top:0,left:0}:o?null:e.offset(),s={scroll:i?document.documentElement.scrollTop||document.body.scrollTop:e.scrollTop()},c=i?{width:t(window).width(),height:t(window).height()}:null;return t.extend({},r,s,c,a)},s.prototype.getCalculatedOffset=function(t,e,n,i){return"bottom"==t?{top:e.top+e.height,left:e.left+e.width/2-n/2}:"top"==t?{top:e.top-i,left:e.left+e.width/2-n/2}:"left"==t?{top:e.top+e.height/2-i/2,left:e.left-n}:{top:e.top+e.height/2-i/2,left:e.left+e.width}},s.prototype.getViewportAdjustedDelta=function(t,e,n,i){var r={top:0,left:0};if(!this.$viewport)return r;var o=this.options.viewport&&this.options.viewport.padding||0,a=this.getPosition(this.$viewport);if(/right|left/.test(t)){var s=e.top-o-a.scroll,c=e.top+o-a.scroll+i;s<a.top?r.top=a.top-s:c>a.top+a.height&&(r.top=a.top+a.height-c)}else{var l=e.left-o,u=e.left+o+n;l<a.left?r.left=a.left-l:u>a.right&&(r.left=a.left+a.width-u)}return r},s.prototype.getTitle=function(){var t=this.$element,e=this.options;return t.attr("data-original-title")||("function"==typeof e.title?e.title.call(t[0]):e.title)},s.prototype.getUID=function(t){do{t+=~~(1e6*Math.random())}while(document.getElementById(t));return t},s.prototype.tip=function(){if(!this.$tip&&(this.$tip=t(this.options.template),1!=this.$tip.length))throw new Error(this.type+" `template` option must consist of exactly 1 top-level element!");return this.$tip},s.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},s.prototype.enable=function(){this.enabled=!0},s.prototype.disable=function(){this.enabled=!1},s.prototype.toggleEnabled=function(){this.enabled=!this.enabled},s.prototype.toggle=function(e){var n=this;e&&((n=t(e.currentTarget).data("bs."+this.type))||(n=new this.constructor(e.currentTarget,this.getDelegateOptions()),t(e.currentTarget).data("bs."+this.type,n))),e?(n.inState.click=!n.inState.click,n.isInStateTrue()?n.enter(n):n.leave(n)):n.tip().hasClass("in")?n.leave(n):n.enter(n)},s.prototype.destroy=function(){var t=this;clearTimeout(this.timeout),this.hide(function(){t.$element.off("."+t.type).removeData("bs."+t.type),t.$tip&&t.$tip.detach(),t.$tip=null,t.$arrow=null,t.$viewport=null,t.$element=null})},s.prototype.sanitizeHtml=function(t){return a(t,this.options.whiteList,this.options.sanitizeFn)};var c=t.fn.tooltip;t.fn.tooltip=function(e){return this.each(function(){var n=t(this),i=n.data("bs.tooltip"),r="object"==typeof e&&e;!i&&/destroy|hide/.test(e)||(i||n.data("bs.tooltip",i=new s(this,r)),"string"==typeof e&&i[e]())})},t.fn.tooltip.Constructor=s,t.fn.tooltip.noConflict=function(){return t.fn.tooltip=c,this}}(t)}).call(this,n(19))},function(t,e,n){(function(t){!function(t){"use strict";var e=function(t,e){this.init("popover",t,e)};if(!t.fn.tooltip)throw new Error("Popover requires tooltip.js");e.VERSION="3.4.1",e.DEFAULTS=t.extend({},t.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:'<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'}),(e.prototype=t.extend({},t.fn.tooltip.Constructor.prototype)).constructor=e,e.prototype.getDefaults=function(){return e.DEFAULTS},e.prototype.setContent=function(){var t=this.tip(),e=this.getTitle(),n=this.getContent();if(this.options.html){var i=typeof n;this.options.sanitize&&(e=this.sanitizeHtml(e),"string"===i&&(n=this.sanitizeHtml(n))),t.find(".popover-title").html(e),t.find(".popover-content").children().detach().end()["string"===i?"html":"append"](n)}else t.find(".popover-title").text(e),t.find(".popover-content").children().detach().end().text(n);t.removeClass("fade top bottom left right in"),t.find(".popover-title").html()||t.find(".popover-title").hide()},e.prototype.hasContent=function(){return this.getTitle()||this.getContent()},e.prototype.getContent=function(){var t=this.$element,e=this.options;return t.attr("data-content")||("function"==typeof e.content?e.content.call(t[0]):e.content)},e.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};var n=t.fn.popover;t.fn.popover=function(n){return this.each(function(){var i=t(this),r=i.data("bs.popover"),o="object"==typeof n&&n;!r&&/destroy|hide/.test(n)||(r||i.data("bs.popover",r=new e(this,o)),"string"==typeof n&&r[n]())})},t.fn.popover.Constructor=e,t.fn.popover.noConflict=function(){return t.fn.popover=n,this}}(t)}).call(this,n(19))},function(t,e,n){(function(t){!function(t){"use strict";function e(n,i){this.$body=t(document.body),this.$scrollElement=t(n).is(document.body)?t(window):t(n),this.options=t.extend({},e.DEFAULTS,i),this.selector=(this.options.target||"")+" .nav li > a",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on("scroll.bs.scrollspy",t.proxy(this.process,this)),this.refresh(),this.process()}function n(n){return this.each(function(){var i=t(this),r=i.data("bs.scrollspy"),o="object"==typeof n&&n;r||i.data("bs.scrollspy",r=new e(this,o)),"string"==typeof n&&r[n]()})}e.VERSION="3.4.1",e.DEFAULTS={offset:10},e.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},e.prototype.refresh=function(){var e=this,n="offset",i=0;this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight(),t.isWindow(this.$scrollElement[0])||(n="position",i=this.$scrollElement.scrollTop()),this.$body.find(this.selector).map(function(){var e=t(this),r=e.data("target")||e.attr("href"),o=/^#./.test(r)&&t(r);return o&&o.length&&o.is(":visible")&&[[o[n]().top+i,r]]||null}).sort(function(t,e){return t[0]-e[0]}).each(function(){e.offsets.push(this[0]),e.targets.push(this[1])})},e.prototype.process=function(){var t,e=this.$scrollElement.scrollTop()+this.options.offset,n=this.getScrollHeight(),i=this.options.offset+n-this.$scrollElement.height(),r=this.offsets,o=this.targets,a=this.activeTarget;if(this.scrollHeight!=n&&this.refresh(),e>=i)return a!=(t=o[o.length-1])&&this.activate(t);if(a&&e<r[0])return this.activeTarget=null,this.clear();for(t=r.length;t--;)a!=o[t]&&e>=r[t]&&(void 0===r[t+1]||e<r[t+1])&&this.activate(o[t])},e.prototype.activate=function(e){this.activeTarget=e,this.clear();var n=this.selector+'[data-target="'+e+'"],'+this.selector+'[href="'+e+'"]',i=t(n).parents("li").addClass("active");i.parent(".dropdown-menu").length&&(i=i.closest("li.dropdown").addClass("active")),i.trigger("activate.bs.scrollspy")},e.prototype.clear=function(){t(this.selector).parentsUntil(this.options.target,".active").removeClass("active")};var i=t.fn.scrollspy;t.fn.scrollspy=n,t.fn.scrollspy.Constructor=e,t.fn.scrollspy.noConflict=function(){return t.fn.scrollspy=i,this},t(window).on("load.bs.scrollspy.data-api",function(){t('[data-spy="scroll"]').each(function(){var e=t(this);n.call(e,e.data())})})}(t)}).call(this,n(19))},function(t,e,n){(function(t){!function(t){"use strict";var e=function(e){this.element=t(e)};function n(n){return this.each(function(){var i=t(this),r=i.data("bs.tab");r||i.data("bs.tab",r=new e(this)),"string"==typeof n&&r[n]()})}e.VERSION="3.4.1",e.TRANSITION_DURATION=150,e.prototype.show=function(){var e=this.element,n=e.closest("ul:not(.dropdown-menu)"),i=e.data("target");if(i||(i=(i=e.attr("href"))&&i.replace(/.*(?=#[^\s]*$)/,"")),!e.parent("li").hasClass("active")){var r=n.find(".active:last a"),o=t.Event("hide.bs.tab",{relatedTarget:e[0]}),a=t.Event("show.bs.tab",{relatedTarget:r[0]});if(r.trigger(o),e.trigger(a),!a.isDefaultPrevented()&&!o.isDefaultPrevented()){var s=t(document).find(i);this.activate(e.closest("li"),n),this.activate(s,s.parent(),function(){r.trigger({type:"hidden.bs.tab",relatedTarget:e[0]}),e.trigger({type:"shown.bs.tab",relatedTarget:r[0]})})}}},e.prototype.activate=function(n,i,r){var o=i.find("> .active"),a=r&&t.support.transition&&(o.length&&o.hasClass("fade")||!!i.find("> .fade").length);function s(){o.removeClass("active").find("> .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!1),n.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded",!0),a?(n[0].offsetWidth,n.addClass("in")):n.removeClass("fade"),n.parent(".dropdown-menu").length&&n.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!0),r&&r()}o.length&&a?o.one("bsTransitionEnd",s).emulateTransitionEnd(e.TRANSITION_DURATION):s(),o.removeClass("in")};var i=t.fn.tab;t.fn.tab=n,t.fn.tab.Constructor=e,t.fn.tab.noConflict=function(){return t.fn.tab=i,this};var r=function(e){e.preventDefault(),n.call(t(this),"show")};t(document).on("click.bs.tab.data-api",'[data-toggle="tab"]',r).on("click.bs.tab.data-api",'[data-toggle="pill"]',r)}(t)}).call(this,n(19))},function(t,e,n){(function(t){!function(t){"use strict";var e=function(n,i){this.options=t.extend({},e.DEFAULTS,i);var r=this.options.target===e.DEFAULTS.target?t(this.options.target):t(document).find(this.options.target);this.$target=r.on("scroll.bs.affix.data-api",t.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",t.proxy(this.checkPositionWithEventLoop,this)),this.$element=t(n),this.affixed=null,this.unpin=null,this.pinnedOffset=null,this.checkPosition()};function n(n){return this.each(function(){var i=t(this),r=i.data("bs.affix"),o="object"==typeof n&&n;r||i.data("bs.affix",r=new e(this,o)),"string"==typeof n&&r[n]()})}e.VERSION="3.4.1",e.RESET="affix affix-top affix-bottom",e.DEFAULTS={offset:0,target:window},e.prototype.getState=function(t,e,n,i){var r=this.$target.scrollTop(),o=this.$element.offset(),a=this.$target.height();if(null!=n&&"top"==this.affixed)return r<n&&"top";if("bottom"==this.affixed)return null!=n?!(r+this.unpin<=o.top)&&"bottom":!(r+a<=t-i)&&"bottom";var s=null==this.affixed,c=s?r:o.top;return null!=n&&r<=n?"top":null!=i&&c+(s?a:e)>=t-i&&"bottom"},e.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(e.RESET).addClass("affix");var t=this.$target.scrollTop(),n=this.$element.offset();return this.pinnedOffset=n.top-t},e.prototype.checkPositionWithEventLoop=function(){setTimeout(t.proxy(this.checkPosition,this),1)},e.prototype.checkPosition=function(){if(this.$element.is(":visible")){var n=this.$element.height(),i=this.options.offset,r=i.top,o=i.bottom,a=Math.max(t(document).height(),t(document.body).height());"object"!=typeof i&&(o=r=i),"function"==typeof r&&(r=i.top(this.$element)),"function"==typeof o&&(o=i.bottom(this.$element));var s=this.getState(a,n,r,o);if(this.affixed!=s){null!=this.unpin&&this.$element.css("top","");var c="affix"+(s?"-"+s:""),l=t.Event(c+".bs.affix");if(this.$element.trigger(l),l.isDefaultPrevented())return;this.affixed=s,this.unpin="bottom"==s?this.getPinnedOffset():null,this.$element.removeClass(e.RESET).addClass(c).trigger(c.replace("affix","affixed")+".bs.affix")}"bottom"==s&&this.$element.offset({top:a-n-o})}};var i=t.fn.affix;t.fn.affix=n,t.fn.affix.Constructor=e,t.fn.affix.noConflict=function(){return t.fn.affix=i,this},t(window).on("load",function(){t('[data-spy="affix"]').each(function(){var e=t(this),i=e.data();i.offset=i.offset||{},null!=i.offsetBottom&&(i.offset.bottom=i.offsetBottom),null!=i.offsetTop&&(i.offset.top=i.offsetTop),n.call(e,i)})})}(t)}).call(this,n(19))},function(t,e,n){var i=n(11),r=n(884);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){var i=n(10),r=n(211),o=n(885),a=n(886),s=n(887),c=n(888),l=n(889);e=i(!1);var u=r(o),d=r(a),p=r(s),h=r(c),f=r(l);e.push([t.i,'/*!\n * Bootstrap v3.4.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n *//*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;-moz-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,:after,:before{color:#000!important;text-shadow:none!important;background:transparent!important;-webkit-box-shadow:none!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #ddd!important}}@font-face{font-family:Glyphicons Halflings;src:url('+u+");src:url("+u+') format("embedded-opentype"),url('+d+') format("woff2"),url('+p+') format("woff"),url('+h+') format("truetype"),url('+f+') format("svg")}.glyphicon{position:relative;top:1px;display:inline-block;font-family:Glyphicons Halflings;font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\\002a"}.glyphicon-plus:before{content:"\\002b"}.glyphicon-eur:before,.glyphicon-euro:before{content:"\\20ac"}.glyphicon-minus:before{content:"\\2212"}.glyphicon-cloud:before{content:"\\2601"}.glyphicon-envelope:before{content:"\\2709"}.glyphicon-pencil:before{content:"\\270f"}.glyphicon-glass:before{content:"\\e001"}.glyphicon-music:before{content:"\\e002"}.glyphicon-search:before{content:"\\e003"}.glyphicon-heart:before{content:"\\e005"}.glyphicon-star:before{content:"\\e006"}.glyphicon-star-empty:before{content:"\\e007"}.glyphicon-user:before{content:"\\e008"}.glyphicon-film:before{content:"\\e009"}.glyphicon-th-large:before{content:"\\e010"}.glyphicon-th:before{content:"\\e011"}.glyphicon-th-list:before{content:"\\e012"}.glyphicon-ok:before{content:"\\e013"}.glyphicon-remove:before{content:"\\e014"}.glyphicon-zoom-in:before{content:"\\e015"}.glyphicon-zoom-out:before{content:"\\e016"}.glyphicon-off:before{content:"\\e017"}.glyphicon-signal:before{content:"\\e018"}.glyphicon-cog:before{content:"\\e019"}.glyphicon-trash:before{content:"\\e020"}.glyphicon-home:before{content:"\\e021"}.glyphicon-file:before{content:"\\e022"}.glyphicon-time:before{content:"\\e023"}.glyphicon-road:before{content:"\\e024"}.glyphicon-download-alt:before{content:"\\e025"}.glyphicon-download:before{content:"\\e026"}.glyphicon-upload:before{content:"\\e027"}.glyphicon-inbox:before{content:"\\e028"}.glyphicon-play-circle:before{content:"\\e029"}.glyphicon-repeat:before{content:"\\e030"}.glyphicon-refresh:before{content:"\\e031"}.glyphicon-list-alt:before{content:"\\e032"}.glyphicon-lock:before{content:"\\e033"}.glyphicon-flag:before{content:"\\e034"}.glyphicon-headphones:before{content:"\\e035"}.glyphicon-volume-off:before{content:"\\e036"}.glyphicon-volume-down:before{content:"\\e037"}.glyphicon-volume-up:before{content:"\\e038"}.glyphicon-qrcode:before{content:"\\e039"}.glyphicon-barcode:before{content:"\\e040"}.glyphicon-tag:before{content:"\\e041"}.glyphicon-tags:before{content:"\\e042"}.glyphicon-book:before{content:"\\e043"}.glyphicon-bookmark:before{content:"\\e044"}.glyphicon-print:before{content:"\\e045"}.glyphicon-camera:before{content:"\\e046"}.glyphicon-font:before{content:"\\e047"}.glyphicon-bold:before{content:"\\e048"}.glyphicon-italic:before{content:"\\e049"}.glyphicon-text-height:before{content:"\\e050"}.glyphicon-text-width:before{content:"\\e051"}.glyphicon-align-left:before{content:"\\e052"}.glyphicon-align-center:before{content:"\\e053"}.glyphicon-align-right:before{content:"\\e054"}.glyphicon-align-justify:before{content:"\\e055"}.glyphicon-list:before{content:"\\e056"}.glyphicon-indent-left:before{content:"\\e057"}.glyphicon-indent-right:before{content:"\\e058"}.glyphicon-facetime-video:before{content:"\\e059"}.glyphicon-picture:before{content:"\\e060"}.glyphicon-map-marker:before{content:"\\e062"}.glyphicon-adjust:before{content:"\\e063"}.glyphicon-tint:before{content:"\\e064"}.glyphicon-edit:before{content:"\\e065"}.glyphicon-share:before{content:"\\e066"}.glyphicon-check:before{content:"\\e067"}.glyphicon-move:before{content:"\\e068"}.glyphicon-step-backward:before{content:"\\e069"}.glyphicon-fast-backward:before{content:"\\e070"}.glyphicon-backward:before{content:"\\e071"}.glyphicon-play:before{content:"\\e072"}.glyphicon-pause:before{content:"\\e073"}.glyphicon-stop:before{content:"\\e074"}.glyphicon-forward:before{content:"\\e075"}.glyphicon-fast-forward:before{content:"\\e076"}.glyphicon-step-forward:before{content:"\\e077"}.glyphicon-eject:before{content:"\\e078"}.glyphicon-chevron-left:before{content:"\\e079"}.glyphicon-chevron-right:before{content:"\\e080"}.glyphicon-plus-sign:before{content:"\\e081"}.glyphicon-minus-sign:before{content:"\\e082"}.glyphicon-remove-sign:before{content:"\\e083"}.glyphicon-ok-sign:before{content:"\\e084"}.glyphicon-question-sign:before{content:"\\e085"}.glyphicon-info-sign:before{content:"\\e086"}.glyphicon-screenshot:before{content:"\\e087"}.glyphicon-remove-circle:before{content:"\\e088"}.glyphicon-ok-circle:before{content:"\\e089"}.glyphicon-ban-circle:before{content:"\\e090"}.glyphicon-arrow-left:before{content:"\\e091"}.glyphicon-arrow-right:before{content:"\\e092"}.glyphicon-arrow-up:before{content:"\\e093"}.glyphicon-arrow-down:before{content:"\\e094"}.glyphicon-share-alt:before{content:"\\e095"}.glyphicon-resize-full:before{content:"\\e096"}.glyphicon-resize-small:before{content:"\\e097"}.glyphicon-exclamation-sign:before{content:"\\e101"}.glyphicon-gift:before{content:"\\e102"}.glyphicon-leaf:before{content:"\\e103"}.glyphicon-fire:before{content:"\\e104"}.glyphicon-eye-open:before{content:"\\e105"}.glyphicon-eye-close:before{content:"\\e106"}.glyphicon-warning-sign:before{content:"\\e107"}.glyphicon-plane:before{content:"\\e108"}.glyphicon-calendar:before{content:"\\e109"}.glyphicon-random:before{content:"\\e110"}.glyphicon-comment:before{content:"\\e111"}.glyphicon-magnet:before{content:"\\e112"}.glyphicon-chevron-up:before{content:"\\e113"}.glyphicon-chevron-down:before{content:"\\e114"}.glyphicon-retweet:before{content:"\\e115"}.glyphicon-shopping-cart:before{content:"\\e116"}.glyphicon-folder-close:before{content:"\\e117"}.glyphicon-folder-open:before{content:"\\e118"}.glyphicon-resize-vertical:before{content:"\\e119"}.glyphicon-resize-horizontal:before{content:"\\e120"}.glyphicon-hdd:before{content:"\\e121"}.glyphicon-bullhorn:before{content:"\\e122"}.glyphicon-bell:before{content:"\\e123"}.glyphicon-certificate:before{content:"\\e124"}.glyphicon-thumbs-up:before{content:"\\e125"}.glyphicon-thumbs-down:before{content:"\\e126"}.glyphicon-hand-right:before{content:"\\e127"}.glyphicon-hand-left:before{content:"\\e128"}.glyphicon-hand-up:before{content:"\\e129"}.glyphicon-hand-down:before{content:"\\e130"}.glyphicon-circle-arrow-right:before{content:"\\e131"}.glyphicon-circle-arrow-left:before{content:"\\e132"}.glyphicon-circle-arrow-up:before{content:"\\e133"}.glyphicon-circle-arrow-down:before{content:"\\e134"}.glyphicon-globe:before{content:"\\e135"}.glyphicon-wrench:before{content:"\\e136"}.glyphicon-tasks:before{content:"\\e137"}.glyphicon-filter:before{content:"\\e138"}.glyphicon-briefcase:before{content:"\\e139"}.glyphicon-fullscreen:before{content:"\\e140"}.glyphicon-dashboard:before{content:"\\e141"}.glyphicon-paperclip:before{content:"\\e142"}.glyphicon-heart-empty:before{content:"\\e143"}.glyphicon-link:before{content:"\\e144"}.glyphicon-phone:before{content:"\\e145"}.glyphicon-pushpin:before{content:"\\e146"}.glyphicon-usd:before{content:"\\e148"}.glyphicon-gbp:before{content:"\\e149"}.glyphicon-sort:before{content:"\\e150"}.glyphicon-sort-by-alphabet:before{content:"\\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\\e152"}.glyphicon-sort-by-order:before{content:"\\e153"}.glyphicon-sort-by-order-alt:before{content:"\\e154"}.glyphicon-sort-by-attributes:before{content:"\\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\\e156"}.glyphicon-unchecked:before{content:"\\e157"}.glyphicon-expand:before{content:"\\e158"}.glyphicon-collapse-down:before{content:"\\e159"}.glyphicon-collapse-up:before{content:"\\e160"}.glyphicon-log-in:before{content:"\\e161"}.glyphicon-flash:before{content:"\\e162"}.glyphicon-log-out:before{content:"\\e163"}.glyphicon-new-window:before{content:"\\e164"}.glyphicon-record:before{content:"\\e165"}.glyphicon-save:before{content:"\\e166"}.glyphicon-open:before{content:"\\e167"}.glyphicon-saved:before{content:"\\e168"}.glyphicon-import:before{content:"\\e169"}.glyphicon-export:before{content:"\\e170"}.glyphicon-send:before{content:"\\e171"}.glyphicon-floppy-disk:before{content:"\\e172"}.glyphicon-floppy-saved:before{content:"\\e173"}.glyphicon-floppy-remove:before{content:"\\e174"}.glyphicon-floppy-save:before{content:"\\e175"}.glyphicon-floppy-open:before{content:"\\e176"}.glyphicon-credit-card:before{content:"\\e177"}.glyphicon-transfer:before{content:"\\e178"}.glyphicon-cutlery:before{content:"\\e179"}.glyphicon-header:before{content:"\\e180"}.glyphicon-compressed:before{content:"\\e181"}.glyphicon-earphone:before{content:"\\e182"}.glyphicon-phone-alt:before{content:"\\e183"}.glyphicon-tower:before{content:"\\e184"}.glyphicon-stats:before{content:"\\e185"}.glyphicon-sd-video:before{content:"\\e186"}.glyphicon-hd-video:before{content:"\\e187"}.glyphicon-subtitles:before{content:"\\e188"}.glyphicon-sound-stereo:before{content:"\\e189"}.glyphicon-sound-dolby:before{content:"\\e190"}.glyphicon-sound-5-1:before{content:"\\e191"}.glyphicon-sound-6-1:before{content:"\\e192"}.glyphicon-sound-7-1:before{content:"\\e193"}.glyphicon-copyright-mark:before{content:"\\e194"}.glyphicon-registration-mark:before{content:"\\e195"}.glyphicon-cloud-download:before{content:"\\e197"}.glyphicon-cloud-upload:before{content:"\\e198"}.glyphicon-tree-conifer:before{content:"\\e199"}.glyphicon-tree-deciduous:before{content:"\\e200"}.glyphicon-cd:before{content:"\\e201"}.glyphicon-save-file:before{content:"\\e202"}.glyphicon-open-file:before{content:"\\e203"}.glyphicon-level-up:before{content:"\\e204"}.glyphicon-copy:before{content:"\\e205"}.glyphicon-paste:before{content:"\\e206"}.glyphicon-alert:before{content:"\\e209"}.glyphicon-equalizer:before{content:"\\e210"}.glyphicon-king:before{content:"\\e211"}.glyphicon-queen:before{content:"\\e212"}.glyphicon-pawn:before{content:"\\e213"}.glyphicon-bishop:before{content:"\\e214"}.glyphicon-knight:before{content:"\\e215"}.glyphicon-baby-formula:before{content:"\\e216"}.glyphicon-tent:before{content:"\\26fa"}.glyphicon-blackboard:before{content:"\\e218"}.glyphicon-bed:before{content:"\\e219"}.glyphicon-apple:before{content:"\\f8ff"}.glyphicon-erase:before{content:"\\e221"}.glyphicon-hourglass:before{content:"\\231b"}.glyphicon-lamp:before{content:"\\e223"}.glyphicon-duplicate:before{content:"\\e224"}.glyphicon-piggy-bank:before{content:"\\e225"}.glyphicon-scissors:before{content:"\\e226"}.glyphicon-bitcoin:before,.glyphicon-btc:before,.glyphicon-xbt:before{content:"\\e227"}.glyphicon-jpy:before,.glyphicon-yen:before{content:"\\00a5"}.glyphicon-rub:before,.glyphicon-ruble:before{content:"\\20bd"}.glyphicon-scale:before{content:"\\e230"}.glyphicon-ice-lolly:before{content:"\\e231"}.glyphicon-ice-lolly-tasted:before{content:"\\e232"}.glyphicon-education:before{content:"\\e233"}.glyphicon-option-horizontal:before{content:"\\e234"}.glyphicon-option-vertical:before{content:"\\e235"}.glyphicon-menu-hamburger:before{content:"\\e236"}.glyphicon-modal-window:before{content:"\\e237"}.glyphicon-oil:before{content:"\\e238"}.glyphicon-grain:before{content:"\\e239"}.glyphicon-sunglasses:before{content:"\\e240"}.glyphicon-text-size:before{content:"\\e241"}.glyphicon-text-color:before{content:"\\e242"}.glyphicon-text-background:before{content:"\\e243"}.glyphicon-object-align-top:before{content:"\\e244"}.glyphicon-object-align-bottom:before{content:"\\e245"}.glyphicon-object-align-horizontal:before{content:"\\e246"}.glyphicon-object-align-left:before{content:"\\e247"}.glyphicon-object-align-vertical:before{content:"\\e248"}.glyphicon-object-align-right:before{content:"\\e249"}.glyphicon-triangle-right:before{content:"\\e250"}.glyphicon-triangle-left:before{content:"\\e251"}.glyphicon-triangle-bottom:before{content:"\\e252"}.glyphicon-triangle-top:before{content:"\\e253"}.glyphicon-console:before{content:"\\e254"}.glyphicon-superscript:before{content:"\\e255"}.glyphicon-subscript:before{content:"\\e256"}.glyphicon-menu-left:before{content:"\\e257"}.glyphicon-menu-right:before{content:"\\e258"}.glyphicon-menu-down:before{content:"\\e259"}.glyphicon-menu-up:before{content:"\\e260"}*,:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#333;background-color:#fff}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#337ab7;text-decoration:none}a:focus,a:hover{color:#23527c;text-decoration:underline}a:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.carousel-inner>.item>a>img,.carousel-inner>.item>img,.img-responsive,.thumbnail>img,.thumbnail a>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{padding:4px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:inline-block;max-width:100%;height:auto}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}[role=button]{cursor:pointer}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-weight:400;line-height:1;color:#777}.h1,.h2,.h3,h1,h2,h3{margin-top:20px;margin-bottom:10px}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small{font-size:65%}.h4,.h5,.h6,h4,h5,h6{margin-top:10px;margin-bottom:10px}.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-size:75%}.h1,h1{font-size:36px}.h2,h2{font-size:30px}.h3,h3{font-size:24px}.h4,h4{font-size:18px}.h5,h5{font-size:14px}.h6,h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.small,small{font-size:85%}.mark,mark{padding:.2em;background-color:#fcf8e3}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#337ab7}a.text-primary:focus,a.text-primary:hover{color:#286090}.text-success{color:#3c763d}a.text-success:focus,a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:focus,a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:focus,a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:focus,a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#337ab7}a.bg-primary:focus,a.bg-primary:hover{background-color:#286090}.bg-success{background-color:#dff0d8}a.bg-success:focus,a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:focus,a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:focus,a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:focus,a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ol,ul{margin-top:0;margin-bottom:10px}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}.list-inline,.list-unstyled{padding-left:0;list-style:none}.list-inline{margin-left:-5px}.list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-top:0;margin-bottom:20px}dd,dt{line-height:1.42857143}dt{font-weight:700}dd{margin-left:0}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[data-original-title],abbr[title]{cursor:help}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote ol:last-child,blockquote p:last-child,blockquote ul:last-child{margin-bottom:0}blockquote .small,blockquote footer,blockquote small{display:block;font-size:80%;line-height:1.42857143;color:#777}blockquote .small:before,blockquote footer:before,blockquote small:before{content:"\\2014 \\00A0"}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;text-align:right;border-right:5px solid #eee;border-left:0}.blockquote-reverse .small:before,.blockquote-reverse footer:before,.blockquote-reverse small:before,blockquote.pull-right .small:before,blockquote.pull-right footer:before,blockquote.pull-right small:before{content:""}.blockquote-reverse .small:after,.blockquote-reverse footer:after,.blockquote-reverse small:after,blockquote.pull-right .small:after,blockquote.pull-right footer:after,blockquote.pull-right small:after{content:"\\00A0 \\2014"}address{margin-bottom:20px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,Courier New,monospace}code{color:#c7254e;background-color:#f9f2f4;border-radius:4px}code,kbd{padding:2px 4px;font-size:90%}kbd{color:#fff;background-color:#333;border-radius:3px;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.25);box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}kbd kbd{padding:0;font-size:100%;font-weight:700;-webkit-box-shadow:none;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{margin-right:-15px;margin-left:-15px}.row-no-gutters{margin-right:0;margin-left:0}.row-no-gutters [class*=col-]{padding-right:0;padding-left:0}.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}table{background-color:transparent}table col[class*=col-]{position:static;display:table-column;float:none}table td[class*=col-],table th[class*=col-]{position:static;display:table-cell;float:none}caption{padding-top:8px;padding-bottom:8px;color:#777}caption,th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>tbody>tr>td,.table>tbody>tr>th,.table>tfoot>tr>td,.table>tfoot>tr>th,.table>thead>tr>td,.table>thead>tr>th{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>td,.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>td,.table>thead:first-child>tr:first-child>th{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>tbody>tr>td,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>td,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>thead>tr>th{padding:5px}.table-bordered,.table-bordered>tbody>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border:1px solid #ddd}.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border-bottom-width:2px}.table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover,.table>tbody>tr.active>td,.table>tbody>tr.active>th,.table>tbody>tr>td.active,.table>tbody>tr>th.active,.table>tfoot>tr.active>td,.table>tfoot>tr.active>th,.table>tfoot>tr>td.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>thead>tr.active>th,.table>thead>tr>td.active,.table>thead>tr>th.active{background-color:#f5f5f5}.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr.active:hover>th,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover{background-color:#e8e8e8}.table>tbody>tr.success>td,.table>tbody>tr.success>th,.table>tbody>tr>td.success,.table>tbody>tr>th.success,.table>tfoot>tr.success>td,.table>tfoot>tr.success>th,.table>tfoot>tr>td.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>thead>tr.success>th,.table>thead>tr>td.success,.table>thead>tr>th.success{background-color:#dff0d8}.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover{background-color:#d0e9c6}.table>tbody>tr.info>td,.table>tbody>tr.info>th,.table>tbody>tr>td.info,.table>tbody>tr>th.info,.table>tfoot>tr.info>td,.table>tfoot>tr.info>th,.table>tfoot>tr>td.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>thead>tr.info>th,.table>thead>tr>td.info,.table>thead>tr>th.info{background-color:#d9edf7}.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr.info:hover>th,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover{background-color:#c4e3f3}.table>tbody>tr.warning>td,.table>tbody>tr.warning>th,.table>tbody>tr>td.warning,.table>tbody>tr>th.warning,.table>tfoot>tr.warning>td,.table>tfoot>tr.warning>th,.table>tfoot>tr>td.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>thead>tr.warning>th,.table>thead>tr>td.warning,.table>thead>tr>th.warning{background-color:#fcf8e3}.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover{background-color:#faf2cc}.table>tbody>tr.danger>td,.table>tbody>tr.danger>th,.table>tbody>tr>td.danger,.table>tbody>tr>th.danger,.table>tfoot>tr.danger>td,.table>tfoot>tr.danger>th,.table>tfoot>tr>td.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>thead>tr.danger>th,.table>thead>tr>td.danger,.table>thead>tr>th.danger{background-color:#f2dede}.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover{background-color:#ebcccc}.table-responsive{min-height:.01%;overflow-x:auto}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>thead>tr>th{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}fieldset{min-width:0;margin:0}fieldset,legend{padding:0;border:0}legend{display:block;width:100%;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border-bottom:1px solid #e5e5e5}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:700}input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none}input[type=checkbox],input[type=radio]{margin:4px 0 0;margin-top:1px\\9;line-height:normal}fieldset[disabled] input[type=checkbox],fieldset[disabled] input[type=radio],input[type=checkbox].disabled,input[type=checkbox][disabled],input[type=radio].disabled,input[type=radio][disabled]{cursor:not-allowed}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=checkbox]:focus,input[type=file]:focus,input[type=radio]:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{padding-top:7px}.form-control,output{display:block;font-size:14px;line-height:1.42857143;color:#555}.form-control{width:100%;height:34px;padding:6px 12px;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;-o-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;-webkit-transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control::-ms-expand{background-color:transparent;border:0}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:#eee;opacity:1}.form-control[disabled],fieldset[disabled] .form-control{cursor:not-allowed}textarea.form-control{height:auto}@media screen and (-webkit-min-device-pixel-ratio:0){input[type=date].form-control,input[type=datetime-local].form-control,input[type=month].form-control,input[type=time].form-control{line-height:34px}.input-group-sm input[type=date],.input-group-sm input[type=datetime-local],.input-group-sm input[type=month],.input-group-sm input[type=time],input[type=date].input-sm,input[type=datetime-local].input-sm,input[type=month].input-sm,input[type=time].input-sm{line-height:30px}.input-group-lg input[type=date],.input-group-lg input[type=datetime-local],.input-group-lg input[type=month],.input-group-lg input[type=time],input[type=date].input-lg,input[type=datetime-local].input-lg,input[type=month].input-lg,input[type=time].input-lg{line-height:46px}}.form-group{margin-bottom:15px}.checkbox,.radio{position:relative;display:block;margin-top:10px;margin-bottom:10px}.checkbox.disabled label,.radio.disabled label,fieldset[disabled] .checkbox label,fieldset[disabled] .radio label{cursor:not-allowed}.checkbox label,.radio label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.checkbox-inline input[type=checkbox],.checkbox input[type=checkbox],.radio-inline input[type=radio],.radio input[type=radio]{position:absolute;margin-top:4px\\9;margin-left:-20px}.checkbox+.checkbox,.radio+.radio{margin-top:-5px}.checkbox-inline,.radio-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.checkbox-inline.disabled,.radio-inline.disabled,fieldset[disabled] .checkbox-inline,fieldset[disabled] .radio-inline{cursor:not-allowed}.checkbox-inline+.checkbox-inline,.radio-inline+.radio-inline{margin-top:0;margin-left:10px}.form-control-static{min-height:34px;padding-top:7px;padding-bottom:7px;margin-bottom:0}.form-control-static.input-lg,.form-control-static.input-sm{padding-right:0;padding-left:0}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}select[multiple].input-sm,textarea.input-sm{height:auto}.form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.form-group-sm select.form-control{height:30px;line-height:30px}.form-group-sm select[multiple].form-control,.form-group-sm textarea.form-control{height:auto}.form-group-sm .form-control-static{height:30px;min-height:32px;padding:6px 10px;font-size:12px;line-height:1.5}.input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-lg{height:46px;line-height:46px}select[multiple].input-lg,textarea.input-lg{height:auto}.form-group-lg .form-control{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.form-group-lg select.form-control{height:46px;line-height:46px}.form-group-lg select[multiple].form-control,.form-group-lg textarea.form-control{height:auto}.form-group-lg .form-control-static{height:46px;min-height:38px;padding:11px 16px;font-size:18px;line-height:1.3333333}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:34px;height:34px;line-height:34px;text-align:center;pointer-events:none}.form-group-lg .form-control+.form-control-feedback,.input-group-lg+.form-control-feedback,.input-lg+.form-control-feedback{width:46px;height:46px;line-height:46px}.form-group-sm .form-control+.form-control-feedback,.input-group-sm+.form-control-feedback,.input-sm+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .checkbox,.has-success .checkbox-inline,.has-success.checkbox-inline label,.has-success.checkbox label,.has-success .control-label,.has-success .help-block,.has-success .radio,.has-success .radio-inline,.has-success.radio-inline label,.has-success.radio label{color:#3c763d}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.has-success .form-control-feedback{color:#3c763d}.has-warning .checkbox,.has-warning .checkbox-inline,.has-warning.checkbox-inline label,.has-warning.checkbox label,.has-warning .control-label,.has-warning .help-block,.has-warning .radio,.has-warning .radio-inline,.has-warning.radio-inline label,.has-warning.radio label{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .checkbox,.has-error .checkbox-inline,.has-error.checkbox-inline label,.has-error.checkbox label,.has-error .control-label,.has-error .help-block,.has-error .radio,.has-error .radio-inline,.has-error.radio-inline label,.has-error.radio label{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.has-error .form-control-feedback{color:#a94442}.has-feedback label~.form-control-feedback{top:25px}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static{display:inline-block}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .form-control,.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .checkbox,.form-inline .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .checkbox label,.form-inline .radio label{padding-left:0}.form-inline .checkbox input[type=checkbox],.form-inline .radio input[type=radio]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .checkbox,.form-horizontal .checkbox-inline,.form-horizontal .radio,.form-horizontal .radio-inline{padding-top:7px;margin-top:0;margin-bottom:0}.form-horizontal .checkbox,.form-horizontal .radio{min-height:27px}.form-horizontal .form-group{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.form-horizontal .control-label{padding-top:7px;margin-bottom:0;text-align:right}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:11px;font-size:18px}}@media (min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:6px;font-size:12px}}.btn{display:inline-block;margin-bottom:0;font-weight:400;text-align:center;white-space:nowrap;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid transparent;padding:6px 12px;font-size:14px;line-height:1.42857143;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn.active.focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn:active:focus,.btn:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.focus,.btn:focus,.btn:hover{color:#333;text-decoration:none}.btn.active,.btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;filter:alpha(opacity=65);opacity:.65;-webkit-box-shadow:none;box-shadow:none}a.btn.disabled,fieldset[disabled] a.btn{pointer-events:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default.focus,.btn-default:focus{color:#333;background-color:#e6e6e6;border-color:#8c8c8c}.btn-default:hover{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{color:#333;background-color:#e6e6e6;background-image:none;border-color:#adadad}.btn-default.active.focus,.btn-default.active:focus,.btn-default.active:hover,.btn-default:active.focus,.btn-default:active:focus,.btn-default:active:hover,.open>.dropdown-toggle.btn-default.focus,.open>.dropdown-toggle.btn-default:focus,.open>.dropdown-toggle.btn-default:hover{color:#333;background-color:#d4d4d4;border-color:#8c8c8c}.btn-default.disabled.focus,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled].focus,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#337ab7;border-color:#2e6da4}.btn-primary.focus,.btn-primary:focus{color:#fff;background-color:#286090;border-color:#122b40}.btn-primary:hover{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#286090;background-image:none;border-color:#204d74}.btn-primary.active.focus,.btn-primary.active:focus,.btn-primary.active:hover,.btn-primary:active.focus,.btn-primary:active:focus,.btn-primary:active:hover,.open>.dropdown-toggle.btn-primary.focus,.open>.dropdown-toggle.btn-primary:focus,.open>.dropdown-toggle.btn-primary:hover{color:#fff;background-color:#204d74;border-color:#122b40}.btn-primary.disabled.focus,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled].focus,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#337ab7;border-color:#2e6da4}.btn-primary .badge{color:#337ab7;background-color:#fff}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success.focus,.btn-success:focus{color:#fff;background-color:#449d44;border-color:#255625}.btn-success:hover{color:#fff;background-color:#449d44;border-color:#398439}.btn-success.active,.btn-success:active,.open>.dropdown-toggle.btn-success{color:#fff;background-color:#449d44;background-image:none;border-color:#398439}.btn-success.active.focus,.btn-success.active:focus,.btn-success.active:hover,.btn-success:active.focus,.btn-success:active:focus,.btn-success:active:hover,.open>.dropdown-toggle.btn-success.focus,.open>.dropdown-toggle.btn-success:focus,.open>.dropdown-toggle.btn-success:hover{color:#fff;background-color:#398439;border-color:#255625}.btn-success.disabled.focus,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled].focus,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.btn-success .badge{color:#5cb85c;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info.focus,.btn-info:focus{color:#fff;background-color:#31b0d5;border-color:#1b6d85}.btn-info:hover{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info.active,.btn-info:active,.open>.dropdown-toggle.btn-info{color:#fff;background-color:#31b0d5;background-image:none;border-color:#269abc}.btn-info.active.focus,.btn-info.active:focus,.btn-info.active:hover,.btn-info:active.focus,.btn-info:active:focus,.btn-info:active:hover,.open>.dropdown-toggle.btn-info.focus,.open>.dropdown-toggle.btn-info:focus,.open>.dropdown-toggle.btn-info:hover{color:#fff;background-color:#269abc;border-color:#1b6d85}.btn-info.disabled.focus,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled].focus,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning.focus,.btn-warning:focus{color:#fff;background-color:#ec971f;border-color:#985f0d}.btn-warning:hover{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning.active,.btn-warning:active,.open>.dropdown-toggle.btn-warning{color:#fff;background-color:#ec971f;background-image:none;border-color:#d58512}.btn-warning.active.focus,.btn-warning.active:focus,.btn-warning.active:hover,.btn-warning:active.focus,.btn-warning:active:focus,.btn-warning:active:hover,.open>.dropdown-toggle.btn-warning.focus,.open>.dropdown-toggle.btn-warning:focus,.open>.dropdown-toggle.btn-warning:hover{color:#fff;background-color:#d58512;border-color:#985f0d}.btn-warning.disabled.focus,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled].focus,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger.focus,.btn-danger:focus{color:#fff;background-color:#c9302c;border-color:#761c19}.btn-danger:hover{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#c9302c;background-image:none;border-color:#ac2925}.btn-danger.active.focus,.btn-danger.active:focus,.btn-danger.active:hover,.btn-danger:active.focus,.btn-danger:active:focus,.btn-danger:active:hover,.open>.dropdown-toggle.btn-danger.focus,.open>.dropdown-toggle.btn-danger:focus,.open>.dropdown-toggle.btn-danger:hover{color:#fff;background-color:#ac2925;border-color:#761c19}.btn-danger.disabled.focus,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled].focus,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{font-weight:400;color:#337ab7;border-radius:0}.btn-link,.btn-link.active,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:active,.btn-link:focus,.btn-link:hover{border-color:transparent}.btn-link:focus,.btn-link:hover{color:#23527c;text-decoration:underline;background-color:transparent}.btn-link[disabled]:focus,.btn-link[disabled]:hover,fieldset[disabled] .btn-link:focus,fieldset[disabled] .btn-link:hover{color:#777;text-decoration:none}.btn-group-lg>.btn,.btn-lg{padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.btn-group-sm>.btn,.btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-xs>.btn,.btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-property:height,visibility;-o-transition-property:height,visibility;transition-property:height,visibility;-webkit-transition-duration:.35s;-o-transition-duration:.35s;transition-duration:.35s;-webkit-transition-timing-function:ease;-o-transition-timing-function:ease;transition-timing-function:ease}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-top:4px solid\\9;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown,.dropup{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175)}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#333;white-space:nowrap}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{color:#262626;text-decoration:none;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;background-color:#337ab7;outline:0}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{color:#777}.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false)}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{right:0;left:auto}.dropdown-menu-left{right:auto;left:0}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143;color:#777;white-space:nowrap}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{content:"";border-top:0;border-bottom:4px dashed;border-bottom:4px solid\\9}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:2px}@media (min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}.navbar-right .dropdown-menu-left{right:auto;left:0}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;float:left}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:2}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar .btn,.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-bottom-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-top-right-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle=buttons]>.btn-group>.btn input[type=checkbox],[data-toggle=buttons]>.btn-group>.btn input[type=radio],[data-toggle=buttons]>.btn input[type=checkbox],[data-toggle=buttons]>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group .form-control:focus{z-index:3}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn,textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn,textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type=checkbox],.input-group-addon input[type=radio]{margin-top:0}.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn-group:not(:last-child)>.btn,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group .form-control:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group-addon:last-child,.input-group-btn:first-child>.btn-group:not(:first-child)>.btn,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group .form-control:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{font-size:0;white-space:nowrap}.input-group-btn,.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:active,.input-group-btn>.btn:focus,.input-group-btn>.btn:hover{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{z-index:2;margin-left:-1px}.nav{padding-left:0;margin-bottom:0;list-style:none}.nav>li,.nav>li>a{position:relative;display:block}.nav>li>a{padding:10px 15px}.nav>li>a:focus,.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#777}.nav>li.disabled>a:focus,.nav>li.disabled>a:hover{color:#777;text-decoration:none;cursor:not-allowed;background-color:transparent}.nav .open>a,.nav .open>a:focus,.nav .open>a:hover{background-color:#eee;border-color:#337ab7}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:focus,.nav-tabs>li.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid;border-color:#ddd #ddd transparent}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:focus,.nav-pills>li.active>a:hover{color:#fff;background-color:#337ab7}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}@media (min-width:768px){.navbar{border-radius:4px}}@media (min-width:768px){.navbar-header{float:left}}.navbar-collapse{padding-right:15px;padding-left:15px;overflow-x:visible;border-top:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1);-webkit-overflow-scrolling:touch}.navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;-webkit-box-shadow:none;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse{padding-right:0;padding-left:0}}.navbar-fixed-bottom,.navbar-fixed-top{position:fixed;right:0;left:0;z-index:1030}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:340px}@media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:200px}}@media (min-width:768px){.navbar-fixed-bottom,.navbar-fixed-top{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.navbar-brand{float:left;height:50px;padding:15px;font-size:18px;line-height:20px}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-brand>img{display:block}@media (min-width:768px){.navbar>.container-fluid .navbar-brand,.navbar>.container .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-right:15px;margin-top:8px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;-webkit-box-shadow:none;box-shadow:none}.navbar-nav .open .dropdown-menu .dropdown-header,.navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:focus,.navbar-nav .open .dropdown-menu>li>a:hover{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.navbar-form{padding:10px 15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1),0 1px 0 hsla(0,0%,100%,.1);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1),0 1px 0 hsla(0,0%,100%,.1);margin:8px -15px}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .form-control,.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .checkbox,.navbar-form .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .checkbox label,.navbar-form .radio label{padding-left:0}.navbar-form .checkbox input[type=checkbox],.navbar-form .radio input[type=radio]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-left-radius:0;border-top-right-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{margin-bottom:0;border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-right:15px;margin-left:15px}}@media (min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important;margin-right:-15px}.navbar-right~.navbar-right{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:focus,.navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-nav>li>a,.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a:focus,.navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:focus,.navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:focus,.navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:focus,.navbar-default .navbar-nav>.open>a:hover{color:#555;background-color:#e7e7e7}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#ccc;background-color:transparent}}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:focus,.navbar-default .navbar-toggle:hover{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:focus,.navbar-default .btn-link:hover{color:#333}.navbar-default .btn-link[disabled]:focus,.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:focus,fieldset[disabled] .navbar-default .btn-link:hover{color:#ccc}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#9d9d9d}.navbar-inverse .navbar-brand:focus,.navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>li>a,.navbar-inverse .navbar-text{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a:focus,.navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:focus,.navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:focus,.navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:focus,.navbar-inverse .navbar-nav>.open>a:hover{color:#fff;background-color:#080808}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#444;background-color:transparent}}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:focus,.navbar-inverse .navbar-toggle:hover{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-link{color:#9d9d9d}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#9d9d9d}.navbar-inverse .btn-link:focus,.navbar-inverse .btn-link:hover{color:#fff}.navbar-inverse .btn-link[disabled]:focus,.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:focus,fieldset[disabled] .navbar-inverse .btn-link:hover{color:#444}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\\00a0"}.breadcrumb>.active{color:#777}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.42857143;color:#337ab7;text-decoration:none;background-color:#fff;border:1px solid #ddd}.pagination>li>a:focus,.pagination>li>a:hover,.pagination>li>span:focus,.pagination>li>span:hover{z-index:2;color:#23527c;background-color:#eee;border-color:#ddd}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-top-left-radius:4px;border-bottom-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.pagination>.active>a,.pagination>.active>a:focus,.pagination>.active>a:hover,.pagination>.active>span,.pagination>.active>span:focus,.pagination>.active>span:hover{z-index:3;color:#fff;cursor:default;background-color:#337ab7;border-color:#337ab7}.pagination>.disabled>a,.pagination>.disabled>a:focus,.pagination>.disabled>a:hover,.pagination>.disabled>span,.pagination>.disabled>span:focus,.pagination>.disabled>span:hover{color:#777;cursor:not-allowed;background-color:#fff;border-color:#ddd}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px;line-height:1.3333333}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-top-left-radius:6px;border-bottom-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px;line-height:1.5}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-top-left-radius:3px;border-bottom-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:focus,.pager li>a:hover{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:focus,.pager .disabled>a:hover,.pager .disabled>span{color:#777;cursor:not-allowed;background-color:#fff}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}a.label:focus,a.label:hover{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#777}.label-default[href]:focus,.label-default[href]:hover{background-color:#5e5e5e}.label-primary{background-color:#337ab7}.label-primary[href]:focus,.label-primary[href]:hover{background-color:#286090}.label-success{background-color:#5cb85c}.label-success[href]:focus,.label-success[href]:hover{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:focus,.label-info[href]:hover{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:focus,.label-warning[href]:hover{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:focus,.label-danger[href]:hover{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:middle;background-color:#777;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-group-xs>.btn .badge,.btn-xs .badge{top:0;padding:1px 5px}a.badge:focus,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#337ab7;background-color:#fff}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding-top:30px;padding-bottom:30px;margin-bottom:30px;background-color:#eee}.jumbotron,.jumbotron .h1,.jumbotron h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.jumbotron>hr{border-top-color:#d5d5d5}.container-fluid .jumbotron,.container .jumbotron{padding-right:15px;padding-left:15px;border-radius:6px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container-fluid .jumbotron,.container .jumbotron{padding-right:60px;padding-left:60px}.jumbotron .h1,.jumbotron h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:border .2s ease-in-out;-o-transition:border .2s ease-in-out;transition:border .2s ease-in-out}.thumbnail>img,.thumbnail a>img{margin-right:auto;margin-left:auto}a.thumbnail.active,a.thumbnail:focus,a.thumbnail:hover{border-color:#337ab7}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:700}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{0%{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{0%{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{0%{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#337ab7;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress-bar-striped,.progress-striped .progress-bar{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:-o-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 25%,transparent 50%,hsla(0,0%,100%,.15) 50%,hsla(0,0%,100%,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);-webkit-background-size:40px 40px;background-size:40px 40px}.progress-bar.active,.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:-o-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 25%,transparent 50%,hsla(0,0%,100%,.15) 50%,hsla(0,0%,100%,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:-o-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 25%,transparent 50%,hsla(0,0%,100%,.15) 50%,hsla(0,0%,100%,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:-o-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 25%,transparent 50%,hsla(0,0%,100%,.15) 50%,hsla(0,0%,100%,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-image:-o-linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 25%,transparent 50%,hsla(0,0%,100%,.15) 50%,hsla(0,0%,100%,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent)}.media{margin-top:15px}.media:first-child{margin-top:0}.media,.media-body{overflow:hidden;zoom:1}.media-body{width:10000px}.media-object{display:block}.media-object.img-thumbnail{max-width:none}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-body,.media-left,.media-right{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{padding-left:0;margin-bottom:20px}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.list-group-item.disabled,.list-group-item.disabled:focus,.list-group-item.disabled:hover{color:#777;cursor:not-allowed;background-color:#eee}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{z-index:2;color:#fff;background-color:#337ab7;border-color:#337ab7}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:focus .list-group-item-text,.list-group-item.active:hover .list-group-item-text{color:#c7ddef}a.list-group-item,button.list-group-item{color:#555}a.list-group-item .list-group-item-heading,button.list-group-item .list-group-item-heading{color:#333}a.list-group-item:focus,a.list-group-item:hover,button.list-group-item:focus,button.list-group-item:hover{color:#555;text-decoration:none;background-color:#f5f5f5}button.list-group-item{width:100%;text-align:left}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success,button.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading,button.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:focus,a.list-group-item-success:hover,button.list-group-item-success:focus,button.list-group-item-success:hover{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:focus,a.list-group-item-success.active:hover,button.list-group-item-success.active,button.list-group-item-success.active:focus,button.list-group-item-success.active:hover{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info,button.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading,button.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:focus,a.list-group-item-info:hover,button.list-group-item-info:focus,button.list-group-item-info:hover{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:focus,a.list-group-item-info.active:hover,button.list-group-item-info.active,button.list-group-item-info.active:focus,button.list-group-item-info.active:hover{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning,button.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading,button.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:focus,a.list-group-item-warning:hover,button.list-group-item-warning:focus,button.list-group-item-warning:hover{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:focus,a.list-group-item-warning.active:hover,button.list-group-item-warning.active,button.list-group-item-warning.active:focus,button.list-group-item-warning.active:hover{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger,button.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading,button.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:focus,a.list-group-item-danger:hover,button.list-group-item-danger:focus,button.list-group-item-danger:hover{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:focus,a.list-group-item-danger.active:hover,button.list-group-item-danger.active,button.list-group-item-danger.active:focus,button.list-group-item-danger.active:hover{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05)}.panel-body{padding:15px}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-left-radius:3px;border-top-right-radius:3px}.panel-heading>.dropdown .dropdown-toggle,.panel-title{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px}.panel-title>.small,.panel-title>.small>a,.panel-title>a,.panel-title>small,.panel-title>small>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-left-radius:3px;border-top-right-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child{border-top-left-radius:0;border-top-right-radius:0}.list-group+.panel-footer,.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.panel>.panel-collapse>.table,.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel>.panel-collapse>.table caption,.panel>.table-responsive>.table caption,.panel>.table caption{padding-right:15px;padding-left:15px}.panel>.table-responsive:first-child>.table:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table:first-child>thead:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table-responsive:last-child>.table:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child td,.panel>.table>tbody:first-child>tr:first-child th{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th{border-bottom:0}.panel>.table-responsive{margin-bottom:0;border:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.list-group,.panel-group .panel-heading+.panel-collapse>.panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#337ab7}.panel-primary>.panel-heading{color:#fff;background-color:#337ab7;border-color:#337ab7}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#337ab7}.panel-primary>.panel-heading .badge{color:#337ab7;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#337ab7}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;filter:alpha(opacity=20);opacity:.2}.close:focus,.close:hover{color:#000;text-decoration:none;cursor:pointer;filter:alpha(opacity=50);opacity:.5}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.modal,.modal-open{overflow:hidden}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:none;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translateY(-25%);-ms-transform:translateY(-25%);-o-transform:translateY(-25%);transform:translateY(-25%);-webkit-transition:-webkit-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out,-o-transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0);-ms-transform:translate(0);-o-transform:translate(0);transform:translate(0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;background-clip:padding-box;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5);outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{filter:alpha(opacity=0);opacity:0}.modal-backdrop.in{filter:alpha(opacity=50);opacity:.5}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;filter:alpha(opacity=0);opacity:0}.tooltip.in{filter:alpha(opacity=90);opacity:.9}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{right:5px}.tooltip.top-left .tooltip-arrow,.tooltip.top-right .tooltip-arrow{bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{left:5px}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:14px;background-color:#fff;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2)}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover>.arrow{border-width:11px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow:after{content:"";border-width:10px}.popover.top>.arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,.25);border-bottom-width:0}.popover.top>.arrow:after{bottom:1px;margin-left:-10px;content:" ";border-top-color:#fff;border-bottom-width:0}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,.25);border-left-width:0}.popover.right>.arrow:after{bottom:-10px;left:1px;content:" ";border-right-color:#fff;border-left-width:0}.popover.bottom>.arrow{top:-11px;left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25)}.popover.bottom>.arrow:after{top:1px;margin-left:-10px;content:" ";border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.left>.arrow:after{right:1px;bottom:-10px;content:" ";border-right-width:0;border-left-color:#fff}.popover-title{padding:8px 14px;margin:0;font-size:14px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.carousel,.carousel-inner{position:relative}.carousel-inner{width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:left .6s ease-in-out;-o-transition:.6s ease-in-out left;transition:left .6s ease-in-out}.carousel-inner>.item>a>img,.carousel-inner>.item>img{line-height:1}@media (-webkit-transform-3d),(transform-3d){.carousel-inner>.item{-webkit-transition:-webkit-transform .6s ease-in-out;-o-transition:-o-transform .6s ease-in-out;transition:-webkit-transform .6s ease-in-out;transition:transform .6s ease-in-out;transition:transform .6s ease-in-out,-webkit-transform .6s ease-in-out,-o-transform .6s ease-in-out;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.carousel-inner>.item.active.right,.carousel-inner>.item.next{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);left:0}.carousel-inner>.item.active.left,.carousel-inner>.item.prev{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);left:0}.carousel-inner>.item.active,.carousel-inner>.item.next.left,.carousel-inner>.item.prev.right{-webkit-transform:translateZ(0);transform:translateZ(0);left:0}}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6);background-color:transparent;filter:alpha(opacity=50);opacity:.5}.carousel-control.left{background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5),rgba(0,0,0,.0001));background-image:-o-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(rgba(0,0,0,.0001)));background-image:linear-gradient(90deg,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001));filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#80000000",endColorstr="#00000000",GradientType=1);background-repeat:repeat-x}.carousel-control.right{right:0;left:auto;background-image:-webkit-linear-gradient(left,rgba(0,0,0,.0001),rgba(0,0,0,.5));background-image:-o-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.0001)),to(rgba(0,0,0,.5)));background-image:linear-gradient(90deg,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5));filter:progid:DXImageTransform.Microsoft.gradient(startColorstr="#00000000",endColorstr="#80000000",GradientType=1);background-repeat:repeat-x}.carousel-control:focus,.carousel-control:hover{color:#fff;text-decoration:none;outline:0;filter:alpha(opacity=90);opacity:.9}.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block;margin-top:-10px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{left:50%;margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{right:50%;margin-right:-10px}.carousel-control .icon-next,.carousel-control .icon-prev{width:20px;height:20px;font-family:serif;line-height:1}.carousel-control .icon-prev:before{content:"\\2039"}.carousel-control .icon-next:before{content:"\\203a"}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;background-color:#000\\9;background-color:transparent;border:1px solid #fff;border-radius:10px}.carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{width:30px;height:30px;margin-top:-10px;font-size:30px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{margin-right:-10px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.btn-group-vertical>.btn-group:after,.btn-group-vertical>.btn-group:before,.btn-toolbar:after,.btn-toolbar:before,.clearfix:after,.clearfix:before,.container-fluid:after,.container-fluid:before,.container:after,.container:before,.dl-horizontal dd:after,.dl-horizontal dd:before,.form-horizontal .form-group:after,.form-horizontal .form-group:before,.modal-footer:after,.modal-footer:before,.modal-header:after,.modal-header:before,.nav:after,.nav:before,.navbar-collapse:after,.navbar-collapse:before,.navbar-header:after,.navbar-header:before,.navbar:after,.navbar:before,.pager:after,.pager:before,.panel-body:after,.panel-body:before,.row:after,.row:before{display:table;content:" "}.btn-group-vertical>.btn-group:after,.btn-toolbar:after,.clearfix:after,.container-fluid:after,.container:after,.dl-horizontal dd:after,.form-horizontal .form-group:after,.modal-footer:after,.modal-header:after,.nav:after,.navbar-collapse:after,.navbar-header:after,.navbar:after,.pager:after,.panel-body:after,.row:after{clear:both}.center-block{display:block;margin-right:auto;margin-left:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none!important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-lg,.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block,.visible-md,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-sm,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-xs,.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block{display:none!important}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table!important}tr.visible-xs{display:table-row!important}td.visible-xs,th.visible-xs{display:table-cell!important}}@media (max-width:767px){.visible-xs-block{display:block!important}}@media (max-width:767px){.visible-xs-inline{display:inline!important}}@media (max-width:767px){.visible-xs-inline-block{display:inline-block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table!important}tr.visible-sm{display:table-row!important}td.visible-sm,th.visible-sm{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-block{display:block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline{display:inline!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline-block{display:inline-block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table!important}tr.visible-md{display:table-row!important}td.visible-md,th.visible-md{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-block{display:block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline{display:inline!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline-block{display:inline-block!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table!important}tr.visible-lg{display:table-row!important}td.visible-lg,th.visible-lg{display:table-cell!important}}@media (min-width:1200px){.visible-lg-block{display:block!important}}@media (min-width:1200px){.visible-lg-inline{display:inline!important}}@media (min-width:1200px){.visible-lg-inline-block{display:inline-block!important}}@media (max-width:767px){.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-lg{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:block!important}table.visible-print{display:table!important}tr.visible-print{display:table-row!important}td.visible-print,th.visible-print{display:table-cell!important}}.visible-print-block{display:none!important}@media print{.visible-print-block{display:block!important}}.visible-print-inline{display:none!important}@media print{.visible-print-inline{display:inline!important}}.visible-print-inline-block{display:none!important}@media print{.visible-print-inline-block{display:inline-block!important}}@media print{.hidden-print{display:none!important}}',""]),t.exports=e},function(t,e,n){t.exports=n.p+"f4769f9bdb7466be65088239c12046d1.glyphicons-halflings-regular.eot"},function(t,e){t.exports="data:font/woff2;base64,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"},function(t,e){t.exports="data:font/woff;base64,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"},function(t,e,n){t.exports=n.p+"e18bbf611f2a2e43afc071aa2f4e1512.glyphicons-halflings-regular.ttf"},function(t,e,n){t.exports=n.p+"f0ea477ef046ba5fef9249ec3172903e.glyphicons-halflings-regular.svg"},function(t,e,n){n(891)},function(t,e,n){var i=n(11),r=n(892);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){var i=n(10),r=n(211),o=n(893),a=n(894),s=n(895),c=n(896),l=n(897),u=n(898);e=i(!1);var d=r(o),p=r(a,{hash:"?#iefix&v=4.7.0"}),h=r(s),f=r(c),g=r(l),m=r(u,{hash:"#fontawesomeregular"});e.push([t.i,'.fa-border{padding:.2em .25em .15em;border:solid 0.08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-fw{width:1.28571em;text-align:center}.fa-glass:before{content:""}.fa-music:before{content:""}.fa-search:before{content:""}.fa-envelope-o:before{content:""}.fa-heart:before{content:""}.fa-star:before{content:""}.fa-star-o:before{content:""}.fa-user:before{content:""}.fa-film:before{content:""}.fa-th-large:before{content:""}.fa-th:before{content:""}.fa-th-list:before{content:""}.fa-check:before{content:""}.fa-remove:before,.fa-close:before,.fa-times:before{content:""}.fa-search-plus:before{content:""}.fa-search-minus:before{content:""}.fa-power-off:before{content:""}.fa-signal:before{content:""}.fa-gear:before,.fa-cog:before{content:""}.fa-trash-o:before{content:""}.fa-home:before{content:""}.fa-file-o:before{content:""}.fa-clock-o:before{content:""}.fa-road:before{content:""}.fa-download:before{content:""}.fa-arrow-circle-o-down:before{content:""}.fa-arrow-circle-o-up:before{content:""}.fa-inbox:before{content:""}.fa-play-circle-o:before{content:""}.fa-rotate-right:before,.fa-repeat:before{content:""}.fa-refresh:before{content:""}.fa-list-alt:before{content:""}.fa-lock:before{content:""}.fa-flag:before{content:""}.fa-headphones:before{content:""}.fa-volume-off:before{content:""}.fa-volume-down:before{content:""}.fa-volume-up:before{content:""}.fa-qrcode:before{content:""}.fa-barcode:before{content:""}.fa-tag:before{content:""}.fa-tags:before{content:""}.fa-book:before{content:""}.fa-bookmark:before{content:""}.fa-print:before{content:""}.fa-camera:before{content:""}.fa-font:before{content:""}.fa-bold:before{content:""}.fa-italic:before{content:""}.fa-text-height:before{content:""}.fa-text-width:before{content:""}.fa-align-left:before{content:""}.fa-align-center:before{content:""}.fa-align-right:before{content:""}.fa-align-justify:before{content:""}.fa-list:before{content:""}.fa-dedent:before,.fa-outdent:before{content:""}.fa-indent:before{content:""}.fa-video-camera:before{content:""}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:""}.fa-pencil:before{content:""}.fa-map-marker:before{content:""}.fa-adjust:before{content:""}.fa-tint:before{content:""}.fa-edit:before,.fa-pencil-square-o:before{content:""}.fa-share-square-o:before{content:""}.fa-check-square-o:before{content:""}.fa-arrows:before{content:""}.fa-step-backward:before{content:""}.fa-fast-backward:before{content:""}.fa-backward:before{content:""}.fa-play:before{content:""}.fa-pause:before{content:""}.fa-stop:before{content:""}.fa-forward:before{content:""}.fa-fast-forward:before{content:""}.fa-step-forward:before{content:""}.fa-eject:before{content:""}.fa-chevron-left:before{content:""}.fa-chevron-right:before{content:""}.fa-plus-circle:before{content:""}.fa-minus-circle:before{content:""}.fa-times-circle:before{content:""}.fa-check-circle:before{content:""}.fa-question-circle:before{content:""}.fa-info-circle:before{content:""}.fa-crosshairs:before{content:""}.fa-times-circle-o:before{content:""}.fa-check-circle-o:before{content:""}.fa-ban:before{content:""}.fa-arrow-left:before{content:""}.fa-arrow-right:before{content:""}.fa-arrow-up:before{content:""}.fa-arrow-down:before{content:""}.fa-mail-forward:before,.fa-share:before{content:""}.fa-expand:before{content:""}.fa-compress:before{content:""}.fa-plus:before{content:""}.fa-minus:before{content:""}.fa-asterisk:before{content:""}.fa-exclamation-circle:before{content:""}.fa-gift:before{content:""}.fa-leaf:before{content:""}.fa-fire:before{content:""}.fa-eye:before{content:""}.fa-eye-slash:before{content:""}.fa-warning:before,.fa-exclamation-triangle:before{content:""}.fa-plane:before{content:""}.fa-calendar:before{content:""}.fa-random:before{content:""}.fa-comment:before{content:""}.fa-magnet:before{content:""}.fa-chevron-up:before{content:""}.fa-chevron-down:before{content:""}.fa-retweet:before{content:""}.fa-shopping-cart:before{content:""}.fa-folder:before{content:""}.fa-folder-open:before{content:""}.fa-arrows-v:before{content:""}.fa-arrows-h:before{content:""}.fa-bar-chart-o:before,.fa-bar-chart:before{content:""}.fa-twitter-square:before{content:""}.fa-facebook-square:before{content:""}.fa-camera-retro:before{content:""}.fa-key:before{content:""}.fa-gears:before,.fa-cogs:before{content:""}.fa-comments:before{content:""}.fa-thumbs-o-up:before{content:""}.fa-thumbs-o-down:before{content:""}.fa-star-half:before{content:""}.fa-heart-o:before{content:""}.fa-sign-out:before{content:""}.fa-linkedin-square:before{content:""}.fa-thumb-tack:before{content:""}.fa-external-link:before{content:""}.fa-sign-in:before{content:""}.fa-trophy:before{content:""}.fa-github-square:before{content:""}.fa-upload:before{content:""}.fa-lemon-o:before{content:""}.fa-phone:before{content:""}.fa-square-o:before{content:""}.fa-bookmark-o:before{content:""}.fa-phone-square:before{content:""}.fa-twitter:before{content:""}.fa-facebook-f:before,.fa-facebook:before{content:""}.fa-github:before{content:""}.fa-unlock:before{content:""}.fa-credit-card:before{content:""}.fa-feed:before,.fa-rss:before{content:""}.fa-hdd-o:before{content:""}.fa-bullhorn:before{content:""}.fa-bell:before{content:""}.fa-certificate:before{content:""}.fa-hand-o-right:before{content:""}.fa-hand-o-left:before{content:""}.fa-hand-o-up:before{content:""}.fa-hand-o-down:before{content:""}.fa-arrow-circle-left:before{content:""}.fa-arrow-circle-right:before{content:""}.fa-arrow-circle-up:before{content:""}.fa-arrow-circle-down:before{content:""}.fa-globe:before{content:""}.fa-wrench:before{content:""}.fa-tasks:before{content:""}.fa-filter:before{content:""}.fa-briefcase:before{content:""}.fa-arrows-alt:before{content:""}.fa-group:before,.fa-users:before{content:""}.fa-chain:before,.fa-link:before{content:""}.fa-cloud:before{content:""}.fa-flask:before{content:""}.fa-cut:before,.fa-scissors:before{content:""}.fa-copy:before,.fa-files-o:before{content:""}.fa-paperclip:before{content:""}.fa-save:before,.fa-floppy-o:before{content:""}.fa-square:before{content:""}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:""}.fa-list-ul:before{content:""}.fa-list-ol:before{content:""}.fa-strikethrough:before{content:""}.fa-underline:before{content:""}.fa-table:before{content:""}.fa-magic:before{content:""}.fa-truck:before{content:""}.fa-pinterest:before{content:""}.fa-pinterest-square:before{content:""}.fa-google-plus-square:before{content:""}.fa-google-plus:before{content:""}.fa-money:before{content:""}.fa-caret-down:before{content:""}.fa-caret-up:before{content:""}.fa-caret-left:before{content:""}.fa-caret-right:before{content:""}.fa-columns:before{content:""}.fa-unsorted:before,.fa-sort:before{content:""}.fa-sort-down:before,.fa-sort-desc:before{content:""}.fa-sort-up:before,.fa-sort-asc:before{content:""}.fa-envelope:before{content:""}.fa-linkedin:before{content:""}.fa-rotate-left:before,.fa-undo:before{content:""}.fa-legal:before,.fa-gavel:before{content:""}.fa-dashboard:before,.fa-tachometer:before{content:""}.fa-comment-o:before{content:""}.fa-comments-o:before{content:""}.fa-flash:before,.fa-bolt:before{content:""}.fa-sitemap:before{content:""}.fa-umbrella:before{content:""}.fa-paste:before,.fa-clipboard:before{content:""}.fa-lightbulb-o:before{content:""}.fa-exchange:before{content:""}.fa-cloud-download:before{content:""}.fa-cloud-upload:before{content:""}.fa-user-md:before{content:""}.fa-stethoscope:before{content:""}.fa-suitcase:before{content:""}.fa-bell-o:before{content:""}.fa-coffee:before{content:""}.fa-cutlery:before{content:""}.fa-file-text-o:before{content:""}.fa-building-o:before{content:""}.fa-hospital-o:before{content:""}.fa-ambulance:before{content:""}.fa-medkit:before{content:""}.fa-fighter-jet:before{content:""}.fa-beer:before{content:""}.fa-h-square:before{content:""}.fa-plus-square:before{content:""}.fa-angle-double-left:before{content:""}.fa-angle-double-right:before{content:""}.fa-angle-double-up:before{content:""}.fa-angle-double-down:before{content:""}.fa-angle-left:before{content:""}.fa-angle-right:before{content:""}.fa-angle-up:before{content:""}.fa-angle-down:before{content:""}.fa-desktop:before{content:""}.fa-laptop:before{content:""}.fa-tablet:before{content:""}.fa-mobile-phone:before,.fa-mobile:before{content:""}.fa-circle-o:before{content:""}.fa-quote-left:before{content:""}.fa-quote-right:before{content:""}.fa-spinner:before{content:""}.fa-circle:before{content:""}.fa-mail-reply:before,.fa-reply:before{content:""}.fa-github-alt:before{content:""}.fa-folder-o:before{content:""}.fa-folder-open-o:before{content:""}.fa-smile-o:before{content:""}.fa-frown-o:before{content:""}.fa-meh-o:before{content:""}.fa-gamepad:before{content:""}.fa-keyboard-o:before{content:""}.fa-flag-o:before{content:""}.fa-flag-checkered:before{content:""}.fa-terminal:before{content:""}.fa-code:before{content:""}.fa-mail-reply-all:before,.fa-reply-all:before{content:""}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:""}.fa-location-arrow:before{content:""}.fa-crop:before{content:""}.fa-code-fork:before{content:""}.fa-unlink:before,.fa-chain-broken:before{content:""}.fa-question:before{content:""}.fa-info:before{content:""}.fa-exclamation:before{content:""}.fa-superscript:before{content:""}.fa-subscript:before{content:""}.fa-eraser:before{content:""}.fa-puzzle-piece:before{content:""}.fa-microphone:before{content:""}.fa-microphone-slash:before{content:""}.fa-shield:before{content:""}.fa-calendar-o:before{content:""}.fa-fire-extinguisher:before{content:""}.fa-rocket:before{content:""}.fa-maxcdn:before{content:""}.fa-chevron-circle-left:before{content:""}.fa-chevron-circle-right:before{content:""}.fa-chevron-circle-up:before{content:""}.fa-chevron-circle-down:before{content:""}.fa-html5:before{content:""}.fa-css3:before{content:""}.fa-anchor:before{content:""}.fa-unlock-alt:before{content:""}.fa-bullseye:before{content:""}.fa-ellipsis-h:before{content:""}.fa-ellipsis-v:before{content:""}.fa-rss-square:before{content:""}.fa-play-circle:before{content:""}.fa-ticket:before{content:""}.fa-minus-square:before{content:""}.fa-minus-square-o:before{content:""}.fa-level-up:before{content:""}.fa-level-down:before{content:""}.fa-check-square:before{content:""}.fa-pencil-square:before{content:""}.fa-external-link-square:before{content:""}.fa-share-square:before{content:""}.fa-compass:before{content:""}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:""}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:""}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:""}.fa-euro:before,.fa-eur:before{content:""}.fa-gbp:before{content:""}.fa-dollar:before,.fa-usd:before{content:""}.fa-rupee:before,.fa-inr:before{content:""}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:""}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:""}.fa-won:before,.fa-krw:before{content:""}.fa-bitcoin:before,.fa-btc:before{content:""}.fa-file:before{content:""}.fa-file-text:before{content:""}.fa-sort-alpha-asc:before{content:""}.fa-sort-alpha-desc:before{content:""}.fa-sort-amount-asc:before{content:""}.fa-sort-amount-desc:before{content:""}.fa-sort-numeric-asc:before{content:""}.fa-sort-numeric-desc:before{content:""}.fa-thumbs-up:before{content:""}.fa-thumbs-down:before{content:""}.fa-youtube-square:before{content:""}.fa-youtube:before{content:""}.fa-xing:before{content:""}.fa-xing-square:before{content:""}.fa-youtube-play:before{content:""}.fa-dropbox:before{content:""}.fa-stack-overflow:before{content:""}.fa-instagram:before{content:""}.fa-flickr:before{content:""}.fa-adn:before{content:""}.fa-bitbucket:before{content:""}.fa-bitbucket-square:before{content:""}.fa-tumblr:before{content:""}.fa-tumblr-square:before{content:""}.fa-long-arrow-down:before{content:""}.fa-long-arrow-up:before{content:""}.fa-long-arrow-left:before{content:""}.fa-long-arrow-right:before{content:""}.fa-apple:before{content:""}.fa-windows:before{content:""}.fa-android:before{content:""}.fa-linux:before{content:""}.fa-dribbble:before{content:""}.fa-skype:before{content:""}.fa-foursquare:before{content:""}.fa-trello:before{content:""}.fa-female:before{content:""}.fa-male:before{content:""}.fa-gittip:before,.fa-gratipay:before{content:""}.fa-sun-o:before{content:""}.fa-moon-o:before{content:""}.fa-archive:before{content:""}.fa-bug:before{content:""}.fa-vk:before{content:""}.fa-weibo:before{content:""}.fa-renren:before{content:""}.fa-pagelines:before{content:""}.fa-stack-exchange:before{content:""}.fa-arrow-circle-o-right:before{content:""}.fa-arrow-circle-o-left:before{content:""}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:""}.fa-dot-circle-o:before{content:""}.fa-wheelchair:before{content:""}.fa-vimeo-square:before{content:""}.fa-turkish-lira:before,.fa-try:before{content:""}.fa-plus-square-o:before{content:""}.fa-space-shuttle:before{content:""}.fa-slack:before{content:""}.fa-envelope-square:before{content:""}.fa-wordpress:before{content:""}.fa-openid:before{content:""}.fa-institution:before,.fa-bank:before,.fa-university:before{content:""}.fa-mortar-board:before,.fa-graduation-cap:before{content:""}.fa-yahoo:before{content:""}.fa-google:before{content:""}.fa-reddit:before{content:""}.fa-reddit-square:before{content:""}.fa-stumbleupon-circle:before{content:""}.fa-stumbleupon:before{content:""}.fa-delicious:before{content:""}.fa-digg:before{content:""}.fa-pied-piper-pp:before{content:""}.fa-pied-piper-alt:before{content:""}.fa-drupal:before{content:""}.fa-joomla:before{content:""}.fa-language:before{content:""}.fa-fax:before{content:""}.fa-building:before{content:""}.fa-child:before{content:""}.fa-paw:before{content:""}.fa-spoon:before{content:""}.fa-cube:before{content:""}.fa-cubes:before{content:""}.fa-behance:before{content:""}.fa-behance-square:before{content:""}.fa-steam:before{content:""}.fa-steam-square:before{content:""}.fa-recycle:before{content:""}.fa-automobile:before,.fa-car:before{content:""}.fa-cab:before,.fa-taxi:before{content:""}.fa-tree:before{content:""}.fa-spotify:before{content:""}.fa-deviantart:before{content:""}.fa-soundcloud:before{content:""}.fa-database:before{content:""}.fa-file-pdf-o:before{content:""}.fa-file-word-o:before{content:""}.fa-file-excel-o:before{content:""}.fa-file-powerpoint-o:before{content:""}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:""}.fa-file-zip-o:before,.fa-file-archive-o:before{content:""}.fa-file-sound-o:before,.fa-file-audio-o:before{content:""}.fa-file-movie-o:before,.fa-file-video-o:before{content:""}.fa-file-code-o:before{content:""}.fa-vine:before{content:""}.fa-codepen:before{content:""}.fa-jsfiddle:before{content:""}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:""}.fa-circle-o-notch:before{content:""}.fa-ra:before,.fa-resistance:before,.fa-rebel:before{content:""}.fa-ge:before,.fa-empire:before{content:""}.fa-git-square:before{content:""}.fa-git:before{content:""}.fa-y-combinator-square:before,.fa-yc-square:before,.fa-hacker-news:before{content:""}.fa-tencent-weibo:before{content:""}.fa-qq:before{content:""}.fa-wechat:before,.fa-weixin:before{content:""}.fa-send:before,.fa-paper-plane:before{content:""}.fa-send-o:before,.fa-paper-plane-o:before{content:""}.fa-history:before{content:""}.fa-circle-thin:before{content:""}.fa-header:before{content:""}.fa-paragraph:before{content:""}.fa-sliders:before{content:""}.fa-share-alt:before{content:""}.fa-share-alt-square:before{content:""}.fa-bomb:before{content:""}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:""}.fa-tty:before{content:""}.fa-binoculars:before{content:""}.fa-plug:before{content:""}.fa-slideshare:before{content:""}.fa-twitch:before{content:""}.fa-yelp:before{content:""}.fa-newspaper-o:before{content:""}.fa-wifi:before{content:""}.fa-calculator:before{content:""}.fa-paypal:before{content:""}.fa-google-wallet:before{content:""}.fa-cc-visa:before{content:""}.fa-cc-mastercard:before{content:""}.fa-cc-discover:before{content:""}.fa-cc-amex:before{content:""}.fa-cc-paypal:before{content:""}.fa-cc-stripe:before{content:""}.fa-bell-slash:before{content:""}.fa-bell-slash-o:before{content:""}.fa-trash:before{content:""}.fa-copyright:before{content:""}.fa-at:before{content:""}.fa-eyedropper:before{content:""}.fa-paint-brush:before{content:""}.fa-birthday-cake:before{content:""}.fa-area-chart:before{content:""}.fa-pie-chart:before{content:""}.fa-line-chart:before{content:""}.fa-lastfm:before{content:""}.fa-lastfm-square:before{content:""}.fa-toggle-off:before{content:""}.fa-toggle-on:before{content:""}.fa-bicycle:before{content:""}.fa-bus:before{content:""}.fa-ioxhost:before{content:""}.fa-angellist:before{content:""}.fa-cc:before{content:""}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:""}.fa-meanpath:before{content:""}.fa-buysellads:before{content:""}.fa-connectdevelop:before{content:""}.fa-dashcube:before{content:""}.fa-forumbee:before{content:""}.fa-leanpub:before{content:""}.fa-sellsy:before{content:""}.fa-shirtsinbulk:before{content:""}.fa-simplybuilt:before{content:""}.fa-skyatlas:before{content:""}.fa-cart-plus:before{content:""}.fa-cart-arrow-down:before{content:""}.fa-diamond:before{content:""}.fa-ship:before{content:""}.fa-user-secret:before{content:""}.fa-motorcycle:before{content:""}.fa-street-view:before{content:""}.fa-heartbeat:before{content:""}.fa-venus:before{content:""}.fa-mars:before{content:""}.fa-mercury:before{content:""}.fa-intersex:before,.fa-transgender:before{content:""}.fa-transgender-alt:before{content:""}.fa-venus-double:before{content:""}.fa-mars-double:before{content:""}.fa-venus-mars:before{content:""}.fa-mars-stroke:before{content:""}.fa-mars-stroke-v:before{content:""}.fa-mars-stroke-h:before{content:""}.fa-neuter:before{content:""}.fa-genderless:before{content:""}.fa-facebook-official:before{content:""}.fa-pinterest-p:before{content:""}.fa-whatsapp:before{content:""}.fa-server:before{content:""}.fa-user-plus:before{content:""}.fa-user-times:before{content:""}.fa-hotel:before,.fa-bed:before{content:""}.fa-viacoin:before{content:""}.fa-train:before{content:""}.fa-subway:before{content:""}.fa-medium:before{content:""}.fa-yc:before,.fa-y-combinator:before{content:""}.fa-optin-monster:before{content:""}.fa-opencart:before{content:""}.fa-expeditedssl:before{content:""}.fa-battery-4:before,.fa-battery:before,.fa-battery-full:before{content:""}.fa-battery-3:before,.fa-battery-three-quarters:before{content:""}.fa-battery-2:before,.fa-battery-half:before{content:""}.fa-battery-1:before,.fa-battery-quarter:before{content:""}.fa-battery-0:before,.fa-battery-empty:before{content:""}.fa-mouse-pointer:before{content:""}.fa-i-cursor:before{content:""}.fa-object-group:before{content:""}.fa-object-ungroup:before{content:""}.fa-sticky-note:before{content:""}.fa-sticky-note-o:before{content:""}.fa-cc-jcb:before{content:""}.fa-cc-diners-club:before{content:""}.fa-clone:before{content:""}.fa-balance-scale:before{content:""}.fa-hourglass-o:before{content:""}.fa-hourglass-1:before,.fa-hourglass-start:before{content:""}.fa-hourglass-2:before,.fa-hourglass-half:before{content:""}.fa-hourglass-3:before,.fa-hourglass-end:before{content:""}.fa-hourglass:before{content:""}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:""}.fa-hand-stop-o:before,.fa-hand-paper-o:before{content:""}.fa-hand-scissors-o:before{content:""}.fa-hand-lizard-o:before{content:""}.fa-hand-spock-o:before{content:""}.fa-hand-pointer-o:before{content:""}.fa-hand-peace-o:before{content:""}.fa-trademark:before{content:""}.fa-registered:before{content:""}.fa-creative-commons:before{content:""}.fa-gg:before{content:""}.fa-gg-circle:before{content:""}.fa-tripadvisor:before{content:""}.fa-odnoklassniki:before{content:""}.fa-odnoklassniki-square:before{content:""}.fa-get-pocket:before{content:""}.fa-wikipedia-w:before{content:""}.fa-safari:before{content:""}.fa-chrome:before{content:""}.fa-firefox:before{content:""}.fa-opera:before{content:""}.fa-internet-explorer:before{content:""}.fa-tv:before,.fa-television:before{content:""}.fa-contao:before{content:""}.fa-500px:before{content:""}.fa-amazon:before{content:""}.fa-calendar-plus-o:before{content:""}.fa-calendar-minus-o:before{content:""}.fa-calendar-times-o:before{content:""}.fa-calendar-check-o:before{content:""}.fa-industry:before{content:""}.fa-map-pin:before{content:""}.fa-map-signs:before{content:""}.fa-map-o:before{content:""}.fa-map:before{content:""}.fa-commenting:before{content:""}.fa-commenting-o:before{content:""}.fa-houzz:before{content:""}.fa-vimeo:before{content:""}.fa-black-tie:before{content:""}.fa-fonticons:before{content:""}.fa-reddit-alien:before{content:""}.fa-edge:before{content:""}.fa-credit-card-alt:before{content:""}.fa-codiepie:before{content:""}.fa-modx:before{content:""}.fa-fort-awesome:before{content:""}.fa-usb:before{content:""}.fa-product-hunt:before{content:""}.fa-mixcloud:before{content:""}.fa-scribd:before{content:""}.fa-pause-circle:before{content:""}.fa-pause-circle-o:before{content:""}.fa-stop-circle:before{content:""}.fa-stop-circle-o:before{content:""}.fa-shopping-bag:before{content:""}.fa-shopping-basket:before{content:""}.fa-hashtag:before{content:""}.fa-bluetooth:before{content:""}.fa-bluetooth-b:before{content:""}.fa-percent:before{content:""}.fa-gitlab:before{content:""}.fa-wpbeginner:before{content:""}.fa-wpforms:before{content:""}.fa-envira:before{content:""}.fa-universal-access:before{content:""}.fa-wheelchair-alt:before{content:""}.fa-question-circle-o:before{content:""}.fa-blind:before{content:""}.fa-audio-description:before{content:""}.fa-volume-control-phone:before{content:""}.fa-braille:before{content:""}.fa-assistive-listening-systems:before{content:""}.fa-asl-interpreting:before,.fa-american-sign-language-interpreting:before{content:""}.fa-deafness:before,.fa-hard-of-hearing:before,.fa-deaf:before{content:""}.fa-glide:before{content:""}.fa-glide-g:before{content:""}.fa-signing:before,.fa-sign-language:before{content:""}.fa-low-vision:before{content:""}.fa-viadeo:before{content:""}.fa-viadeo-square:before{content:""}.fa-snapchat:before{content:""}.fa-snapchat-ghost:before{content:""}.fa-snapchat-square:before{content:""}.fa-pied-piper:before{content:""}.fa-first-order:before{content:""}.fa-yoast:before{content:""}.fa-themeisle:before{content:""}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:""}.fa-fa:before,.fa-font-awesome:before{content:""}.fa-handshake-o:before{content:""}.fa-envelope-open:before{content:""}.fa-envelope-open-o:before{content:""}.fa-linode:before{content:""}.fa-address-book:before{content:""}.fa-address-book-o:before{content:""}.fa-vcard:before,.fa-address-card:before{content:""}.fa-vcard-o:before,.fa-address-card-o:before{content:""}.fa-user-circle:before{content:""}.fa-user-circle-o:before{content:""}.fa-user-o:before{content:""}.fa-id-badge:before{content:""}.fa-drivers-license:before,.fa-id-card:before{content:""}.fa-drivers-license-o:before,.fa-id-card-o:before{content:""}.fa-quora:before{content:""}.fa-free-code-camp:before{content:""}.fa-telegram:before{content:""}.fa-thermometer-4:before,.fa-thermometer:before,.fa-thermometer-full:before{content:""}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:""}.fa-thermometer-2:before,.fa-thermometer-half:before{content:""}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:""}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:""}.fa-shower:before{content:""}.fa-bathtub:before,.fa-s15:before,.fa-bath:before{content:""}.fa-podcast:before{content:""}.fa-window-maximize:before{content:""}.fa-window-minimize:before{content:""}.fa-window-restore:before{content:""}.fa-times-rectangle:before,.fa-window-close:before{content:""}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:""}.fa-bandcamp:before{content:""}.fa-grav:before{content:""}.fa-etsy:before{content:""}.fa-imdb:before{content:""}.fa-ravelry:before{content:""}.fa-eercast:before{content:""}.fa-microchip:before{content:""}.fa-snowflake-o:before{content:""}.fa-superpowers:before{content:""}.fa-wpexplorer:before{content:""}.fa-meetup:before{content:""}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-ul{padding-left:0;margin-left:2.14286em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14286em;width:2.14286em;top:.14286em;text-align:center}.fa-li.fa-lg{left:-1.85714em}@font-face{font-family:\'FontAwesome\';src:url('+d+");src:url("+p+') format("embedded-opentype"),url('+h+') format("woff2"),url('+f+') format("woff"),url('+g+') format("truetype"),url('+m+') format("svg");font-weight:normal;font-style:normal}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}\n',""]),t.exports=e},function(t,e,n){t.exports=n.p+"674f50d287a8c48dc19ba404d20fe713.fontawesome-webfont.eot"},function(t,e,n){t.exports=n.p+"674f50d287a8c48dc19ba404d20fe713.fontawesome-webfont.eot"},function(t,e){t.exports="data:font/woff2;base64,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"},function(t,e){t.exports="data:font/woff;base64,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"},function(t,e,n){t.exports=n.p+"b06871f281fee6b241d60582ae9369b9.fontawesome-webfont.ttf"},function(t,e,n){t.exports=n.p+"760bd83ee04dff470e0277f3eb7deebe.fontawesome-webfont.svg"},function(t,e,n){
  2305. /*! iNoBounce - v0.1.6
  2306. * https://github.com/lazd/iNoBounce/
  2307. * Copyright (c) 2013 Larry Davis <lazdnet@gmail.com>; Licensed BSD */
  2308. !function(e){var n=0,i=!1,r=!1;try{var o=Object.defineProperty({},"passive",{get:function(){r=!0}});window.addEventListener("test",null,o)}catch(t){}var a=function(t){var e=t.target,i=window.innerWidth/window.document.documentElement.clientWidth;if(!(t.touches.length>1||1!==i)){for(;e!==document.body&&e!==document;){var r=window.getComputedStyle(e);if(!r)break;if("INPUT"===e.nodeName&&"range"===e.getAttribute("type"))return;var o=r.getPropertyValue("-webkit-overflow-scrolling"),a=r.getPropertyValue("overflow-y"),s=parseInt(r.getPropertyValue("height"),10),c="touch"===o&&("auto"===a||"scroll"===a),l=e.scrollHeight>e.offsetHeight;if(c&&l){var u=t.touches?t.touches[0].screenY:t.screenY,d=n<=u&&0===e.scrollTop,p=n>=u&&e.scrollHeight-e.scrollTop===s;return void((d||p)&&t.preventDefault())}e=e.parentNode}t.preventDefault()}},s=function(t){n=t.touches?t.touches[0].screenY:t.screenY},c=function(){window.addEventListener("touchstart",s,!!r&&{passive:!1}),window.addEventListener("touchmove",a,!!r&&{passive:!1}),i=!0},l=document.createElement("div");document.documentElement.appendChild(l),l.style.WebkitOverflowScrolling="touch";var u="getComputedStyle"in window&&"touch"===window.getComputedStyle(l)["-webkit-overflow-scrolling"];document.documentElement.removeChild(l),u&&c();var d={enable:c,disable:function(){window.removeEventListener("touchstart",s,!1),window.removeEventListener("touchmove",a,!1),i=!1},isEnabled:function(){return i}};t.exports&&(t.exports=d),"function"==typeof e.define?(0,e.define)("iNoBounce",[],function(){return d}):e.iNoBounce=d}(this)},function(t,e,n){var i,r,o;
  2309. /*!
  2310. * jQuery UI Slider 1.12.1
  2311. * http://jqueryui.com
  2312. *
  2313. * Copyright jQuery Foundation and other contributors
  2314. * Released under the MIT license.
  2315. * http://jquery.org/license
  2316. */r=[n(19),n(901),n(903),n(249),n(513)],void 0===(o="function"==typeof(i=function(t){return t.widget("ui.slider",t.ui.mouse,{version:"1.12.1",widgetEventPrefix:"slide",options:{animate:!1,classes:{"ui-slider":"ui-corner-all","ui-slider-handle":"ui-corner-all","ui-slider-range":"ui-corner-all ui-widget-header"},distance:0,max:100,min:0,orientation:"horizontal",range:!1,step:1,value:0,values:null,change:null,slide:null,start:null,stop:null},numPages:5,_create:function(){this._keySliding=!1,this._mouseSliding=!1,this._animateOff=!0,this._handleIndex=null,this._detectOrientation(),this._mouseInit(),this._calculateNewMax(),this._addClass("ui-slider ui-slider-"+this.orientation,"ui-widget ui-widget-content"),this._refresh(),this._animateOff=!1},_refresh:function(){this._createRange(),this._createHandles(),this._setupEvents(),this._refreshValue()},_createHandles:function(){var e,n,i=this.options,r=this.element.find(".ui-slider-handle"),o=[];for(n=i.values&&i.values.length||1,r.length>n&&(r.slice(n).remove(),r=r.slice(0,n)),e=r.length;e<n;e++)o.push("<span tabindex='0'></span>");this.handles=r.add(t(o.join("")).appendTo(this.element)),this._addClass(this.handles,"ui-slider-handle","ui-state-default"),this.handle=this.handles.eq(0),this.handles.each(function(e){t(this).data("ui-slider-handle-index",e).attr("tabIndex",0)})},_createRange:function(){var e=this.options;e.range?(!0===e.range&&(e.values?e.values.length&&2!==e.values.length?e.values=[e.values[0],e.values[0]]:t.isArray(e.values)&&(e.values=e.values.slice(0)):e.values=[this._valueMin(),this._valueMin()]),this.range&&this.range.length?(this._removeClass(this.range,"ui-slider-range-min ui-slider-range-max"),this.range.css({left:"",bottom:""})):(this.range=t("<div>").appendTo(this.element),this._addClass(this.range,"ui-slider-range")),"min"!==e.range&&"max"!==e.range||this._addClass(this.range,"ui-slider-range-"+e.range)):(this.range&&this.range.remove(),this.range=null)},_setupEvents:function(){this._off(this.handles),this._on(this.handles,this._handleEvents),this._hoverable(this.handles),this._focusable(this.handles)},_destroy:function(){this.handles.remove(),this.range&&this.range.remove(),this._mouseDestroy()},_mouseCapture:function(e){var n,i,r,o,a,s,c,l=this,u=this.options;return!u.disabled&&(this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()},this.elementOffset=this.element.offset(),n={x:e.pageX,y:e.pageY},i=this._normValueFromMouse(n),r=this._valueMax()-this._valueMin()+1,this.handles.each(function(e){var n=Math.abs(i-l.values(e));(r>n||r===n&&(e===l._lastChangedValue||l.values(e)===u.min))&&(r=n,o=t(this),a=e)}),!1!==this._start(e,a)&&(this._mouseSliding=!0,this._handleIndex=a,this._addClass(o,null,"ui-state-active"),o.trigger("focus"),s=o.offset(),c=!t(e.target).parents().addBack().is(".ui-slider-handle"),this._clickOffset=c?{left:0,top:0}:{left:e.pageX-s.left-o.width()/2,top:e.pageY-s.top-o.height()/2-(parseInt(o.css("borderTopWidth"),10)||0)-(parseInt(o.css("borderBottomWidth"),10)||0)+(parseInt(o.css("marginTop"),10)||0)},this.handles.hasClass("ui-state-hover")||this._slide(e,a,i),this._animateOff=!0,!0))},_mouseStart:function(){return!0},_mouseDrag:function(t){var e={x:t.pageX,y:t.pageY},n=this._normValueFromMouse(e);return this._slide(t,this._handleIndex,n),!1},_mouseStop:function(t){return this._removeClass(this.handles,null,"ui-state-active"),this._mouseSliding=!1,this._stop(t,this._handleIndex),this._change(t,this._handleIndex),this._handleIndex=null,this._clickOffset=null,this._animateOff=!1,!1},_detectOrientation:function(){this.orientation="vertical"===this.options.orientation?"vertical":"horizontal"},_normValueFromMouse:function(t){var e,n,i,r,o;return"horizontal"===this.orientation?(e=this.elementSize.width,n=t.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)):(e=this.elementSize.height,n=t.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)),(i=n/e)>1&&(i=1),i<0&&(i=0),"vertical"===this.orientation&&(i=1-i),r=this._valueMax()-this._valueMin(),o=this._valueMin()+i*r,this._trimAlignValue(o)},_uiHash:function(t,e,n){var i={handle:this.handles[t],handleIndex:t,value:void 0!==e?e:this.value()};return this._hasMultipleValues()&&(i.value=void 0!==e?e:this.values(t),i.values=n||this.values()),i},_hasMultipleValues:function(){return this.options.values&&this.options.values.length},_start:function(t,e){return this._trigger("start",t,this._uiHash(e))},_slide:function(t,e,n){var i,r=this.value(),o=this.values();this._hasMultipleValues()&&(i=this.values(e?0:1),r=this.values(e),2===this.options.values.length&&!0===this.options.range&&(n=0===e?Math.min(i,n):Math.max(i,n)),o[e]=n),n!==r&&!1!==this._trigger("slide",t,this._uiHash(e,n,o))&&(this._hasMultipleValues()?this.values(e,n):this.value(n))},_stop:function(t,e){this._trigger("stop",t,this._uiHash(e))},_change:function(t,e){this._keySliding||this._mouseSliding||(this._lastChangedValue=e,this._trigger("change",t,this._uiHash(e)))},value:function(t){return arguments.length?(this.options.value=this._trimAlignValue(t),this._refreshValue(),void this._change(null,0)):this._value()},values:function(e,n){var i,r,o;if(arguments.length>1)return this.options.values[e]=this._trimAlignValue(n),this._refreshValue(),void this._change(null,e);if(!arguments.length)return this._values();if(!t.isArray(arguments[0]))return this._hasMultipleValues()?this._values(e):this.value();for(i=this.options.values,r=arguments[0],o=0;o<i.length;o+=1)i[o]=this._trimAlignValue(r[o]),this._change(null,o);this._refreshValue()},_setOption:function(e,n){var i,r=0;switch("range"===e&&!0===this.options.range&&("min"===n?(this.options.value=this._values(0),this.options.values=null):"max"===n&&(this.options.value=this._values(this.options.values.length-1),this.options.values=null)),t.isArray(this.options.values)&&(r=this.options.values.length),this._super(e,n),e){case"orientation":this._detectOrientation(),this._removeClass("ui-slider-horizontal ui-slider-vertical")._addClass("ui-slider-"+this.orientation),this._refreshValue(),this.options.range&&this._refreshRange(n),this.handles.css("horizontal"===n?"bottom":"left","");break;case"value":this._animateOff=!0,this._refreshValue(),this._change(null,0),this._animateOff=!1;break;case"values":for(this._animateOff=!0,this._refreshValue(),i=r-1;i>=0;i--)this._change(null,i);this._animateOff=!1;break;case"step":case"min":case"max":this._animateOff=!0,this._calculateNewMax(),this._refreshValue(),this._animateOff=!1;break;case"range":this._animateOff=!0,this._refresh(),this._animateOff=!1}},_setOptionDisabled:function(t){this._super(t),this._toggleClass(null,"ui-state-disabled",!!t)},_value:function(){var t=this.options.value;return this._trimAlignValue(t)},_values:function(t){var e,n,i;if(arguments.length)return e=this.options.values[t],this._trimAlignValue(e);if(this._hasMultipleValues()){for(n=this.options.values.slice(),i=0;i<n.length;i+=1)n[i]=this._trimAlignValue(n[i]);return n}return[]},_trimAlignValue:function(t){if(t<=this._valueMin())return this._valueMin();if(t>=this._valueMax())return this._valueMax();var e=this.options.step>0?this.options.step:1,n=(t-this._valueMin())%e,i=t-n;return 2*Math.abs(n)>=e&&(i+=n>0?e:-e),parseFloat(i.toFixed(5))},_calculateNewMax:function(){var t=this.options.max,e=this._valueMin(),n=this.options.step;(t=Math.round((t-e)/n)*n+e)>this.options.max&&(t-=n),this.max=parseFloat(t.toFixed(this._precision()))},_precision:function(){var t=this._precisionOf(this.options.step);return null!==this.options.min&&(t=Math.max(t,this._precisionOf(this.options.min))),t},_precisionOf:function(t){var e=t.toString(),n=e.indexOf(".");return-1===n?0:e.length-n-1},_valueMin:function(){return this.options.min},_valueMax:function(){return this.max},_refreshRange:function(t){"vertical"===t&&this.range.css({width:"",left:""}),"horizontal"===t&&this.range.css({height:"",bottom:""})},_refreshValue:function(){var e,n,i,r,o,a=this.options.range,s=this.options,c=this,l=!this._animateOff&&s.animate,u={};this._hasMultipleValues()?this.handles.each(function(i){n=(c.values(i)-c._valueMin())/(c._valueMax()-c._valueMin())*100,u["horizontal"===c.orientation?"left":"bottom"]=n+"%",t(this).stop(1,1)[l?"animate":"css"](u,s.animate),!0===c.options.range&&("horizontal"===c.orientation?(0===i&&c.range.stop(1,1)[l?"animate":"css"]({left:n+"%"},s.animate),1===i&&c.range[l?"animate":"css"]({width:n-e+"%"},{queue:!1,duration:s.animate})):(0===i&&c.range.stop(1,1)[l?"animate":"css"]({bottom:n+"%"},s.animate),1===i&&c.range[l?"animate":"css"]({height:n-e+"%"},{queue:!1,duration:s.animate}))),e=n}):(i=this.value(),r=this._valueMin(),o=this._valueMax(),n=o!==r?(i-r)/(o-r)*100:0,u["horizontal"===this.orientation?"left":"bottom"]=n+"%",this.handle.stop(1,1)[l?"animate":"css"](u,s.animate),"min"===a&&"horizontal"===this.orientation&&this.range.stop(1,1)[l?"animate":"css"]({width:n+"%"},s.animate),"max"===a&&"horizontal"===this.orientation&&this.range.stop(1,1)[l?"animate":"css"]({width:100-n+"%"},s.animate),"min"===a&&"vertical"===this.orientation&&this.range.stop(1,1)[l?"animate":"css"]({height:n+"%"},s.animate),"max"===a&&"vertical"===this.orientation&&this.range.stop(1,1)[l?"animate":"css"]({height:100-n+"%"},s.animate))},_handleEvents:{keydown:function(e){var n,i,r,o=t(e.target).data("ui-slider-handle-index");switch(e.keyCode){case t.ui.keyCode.HOME:case t.ui.keyCode.END:case t.ui.keyCode.PAGE_UP:case t.ui.keyCode.PAGE_DOWN:case t.ui.keyCode.UP:case t.ui.keyCode.RIGHT:case t.ui.keyCode.DOWN:case t.ui.keyCode.LEFT:if(e.preventDefault(),!this._keySliding&&(this._keySliding=!0,this._addClass(t(e.target),null,"ui-state-active"),!1===this._start(e,o)))return}switch(r=this.options.step,n=i=this._hasMultipleValues()?this.values(o):this.value(),e.keyCode){case t.ui.keyCode.HOME:i=this._valueMin();break;case t.ui.keyCode.END:i=this._valueMax();break;case t.ui.keyCode.PAGE_UP:i=this._trimAlignValue(n+(this._valueMax()-this._valueMin())/this.numPages);break;case t.ui.keyCode.PAGE_DOWN:i=this._trimAlignValue(n-(this._valueMax()-this._valueMin())/this.numPages);break;case t.ui.keyCode.UP:case t.ui.keyCode.RIGHT:if(n===this._valueMax())return;i=this._trimAlignValue(n+r);break;case t.ui.keyCode.DOWN:case t.ui.keyCode.LEFT:if(n===this._valueMin())return;i=this._trimAlignValue(n-r)}this._slide(e,o,i)},keyup:function(e){var n=t(e.target).data("ui-slider-handle-index");this._keySliding&&(this._keySliding=!1,this._stop(e,n),this._change(e,n),this._removeClass(t(e.target),null,"ui-state-active"))}}})})?i.apply(e,r):i)||(t.exports=o)},function(t,e,n){var i,r,o;
  2317. /*!
  2318. * jQuery UI Mouse 1.12.1
  2319. * http://jqueryui.com
  2320. *
  2321. * Copyright jQuery Foundation and other contributors
  2322. * Released under the MIT license.
  2323. * http://jquery.org/license
  2324. */r=[n(19),n(902),n(249),n(513)],void 0===(o="function"==typeof(i=function(t){var e=!1;return t(document).on("mouseup",function(){e=!1}),t.widget("ui.mouse",{version:"1.12.1",options:{cancel:"input, textarea, button, select, option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.on("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).on("click."+this.widgetName,function(n){if(!0===t.data(n.target,e.widgetName+".preventClickEvent"))return t.removeData(n.target,e.widgetName+".preventClickEvent"),n.stopImmediatePropagation(),!1}),this.started=!1},_mouseDestroy:function(){this.element.off("."+this.widgetName),this._mouseMoveDelegate&&this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(n){if(!e){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(n),this._mouseDownEvent=n;var i=this,r=1===n.which,o=!("string"!=typeof this.options.cancel||!n.target.nodeName)&&t(n.target).closest(this.options.cancel).length;return!(r&&!o&&this._mouseCapture(n)&&(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){i.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(n)&&this._mouseDelayMet(n)&&(this._mouseStarted=!1!==this._mouseStart(n),!this._mouseStarted)?(n.preventDefault(),0):(!0===t.data(n.target,this.widgetName+".preventClickEvent")&&t.removeData(n.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return i._mouseMove(t)},this._mouseUpDelegate=function(t){return i._mouseUp(t)},this.document.on("mousemove."+this.widgetName,this._mouseMoveDelegate).on("mouseup."+this.widgetName,this._mouseUpDelegate),n.preventDefault(),e=!0,0)))}},_mouseMove:function(e){if(this._mouseMoved){if(t.ui.ie&&(!document.documentMode||document.documentMode<9)&&!e.button)return this._mouseUp(e);if(!e.which)if(e.originalEvent.altKey||e.originalEvent.ctrlKey||e.originalEvent.metaKey||e.originalEvent.shiftKey)this.ignoreMissingWhich=!0;else if(!this.ignoreMissingWhich)return this._mouseUp(e)}return(e.which||e.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(e),e.preventDefault()):(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=!1!==this._mouseStart(this._mouseDownEvent,e),this._mouseStarted?this._mouseDrag(e):this._mouseUp(e)),!this._mouseStarted)},_mouseUp:function(n){this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,n.target===this._mouseDownEvent.target&&t.data(n.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(n)),this._mouseDelayTimer&&(clearTimeout(this._mouseDelayTimer),delete this._mouseDelayTimer),this.ignoreMissingWhich=!1,e=!1,n.preventDefault()},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}})})?i.apply(e,r):i)||(t.exports=o)},function(t,e,n){var i,r,o;r=[n(19),n(249)],void 0===(o="function"==typeof(i=function(t){return t.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase())})?i.apply(e,r):i)||(t.exports=o)},function(t,e,n){var i,r,o;
  2325. /*!
  2326. * jQuery UI Keycode 1.12.1
  2327. * http://jqueryui.com
  2328. *
  2329. * Copyright jQuery Foundation and other contributors
  2330. * Released under the MIT license.
  2331. * http://jquery.org/license
  2332. */r=[n(19),n(249)],void 0===(o="function"==typeof(i=function(t){return t.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38}})?i.apply(e,r):i)||(t.exports=o)},function(t,e,n){var i=n(11),r=n(905);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,'/*!\n * jQuery UI CSS Framework 1.12.1\n * http://jqueryui.com\n *\n * Copyright jQuery Foundation and other contributors\n * Released under the MIT license.\n * http://jquery.org/license\n *\n * http://api.jqueryui.com/category/theming/\n */.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:after,.ui-helper-clearfix:before{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important;pointer-events:none}.ui-icon{display:inline-block;vertical-align:middle;margin-top:-.25em;position:relative;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-icon-block{left:50%;margin-left:-8px;display:block}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}',""]),t.exports=e},function(t,e,n){var i=n(11),r=n(907);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,'/*!\n * jQuery UI Menu 1.12.1\n * http://jqueryui.com\n *\n * Copyright jQuery Foundation and other contributors\n * Released under the MIT license.\n * http://jquery.org/license\n *\n * http://api.jqueryui.com/menu/#theming\n */.ui-menu{list-style:none;padding:0;margin:0;display:block;outline:0}.ui-menu .ui-menu{position:absolute}.ui-menu .ui-menu-item{margin:0;cursor:pointer;list-style-image:url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")}.ui-menu .ui-menu-item-wrapper{position:relative;padding:3px 1em 3px .4em}.ui-menu .ui-menu-divider{margin:5px 0;height:0;font-size:0;line-height:0;border-width:1px 0 0}.ui-menu .ui-state-active,.ui-menu .ui-state-focus{margin:-1px}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item-wrapper{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.ui-menu .ui-menu-icon{left:auto;right:0}',""]),t.exports=e},function(t,e,n){var i=n(11),r=n(909);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"/*!\n * jQuery UI Slider 1.12.1\n * http://jqueryui.com\n *\n * Copyright jQuery Foundation and other contributors\n * Released under the MIT license.\n * http://jquery.org/license\n *\n * http://api.jqueryui.com/slider/#theming\n */.ui-slider{position:relative;text-align:left}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default;-ms-touch-action:none;touch-action:none}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0}.ui-slider.ui-state-disabled .ui-slider-handle,.ui-slider.ui-state-disabled .ui-slider-range{filter:inherit}.ui-slider-horizontal{height:.8em}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em}.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.ui-slider-horizontal .ui-slider-range-min{left:0}.ui-slider-horizontal .ui-slider-range-max{right:0}.ui-slider-vertical{width:.8em;height:100px}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em}.ui-slider-vertical .ui-slider-range{left:0;width:100%}.ui-slider-vertical .ui-slider-range-min{bottom:0}.ui-slider-vertical .ui-slider-range-max{top:0}",""]),t.exports=e},function(t,e,n){var i=n(11),r=n(911);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){var i=n(10),r=n(211),o=n(912),a=n(913),s=n(914),c=n(915),l=n(916),u=n(917);e=i(!1);var d=r(o),p=r(a),h=r(s),f=r(c),g=r(l),m=r(u);e.push([t.i,"/*!\n * jQuery UI CSS Framework 1.12.1\n * http://jqueryui.com\n *\n * Copyright jQuery Foundation and other contributors\n * Released under the MIT license.\n * http://jquery.org/license\n *\n * http://api.jqueryui.com/category/theming/\n *\n * To view and modify this theme, visit http://jqueryui.com/themeroller/\n */.ui-widget{font-family:Arial,Helvetica,sans-serif}.ui-widget,.ui-widget .ui-widget{font-size:1em}.ui-widget button,.ui-widget input,.ui-widget select,.ui-widget textarea{font-family:Arial,Helvetica,sans-serif;font-size:1em}.ui-widget.ui-widget-content{border:1px solid #c5c5c5}.ui-widget-content{border:1px solid #ddd;background:#fff;color:#333}.ui-widget-content a{color:#333}.ui-widget-header{border:1px solid #ddd;background:#e9e9e9;color:#333;font-weight:700}.ui-widget-header a{color:#333}.ui-button,.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default,html .ui-button.ui-state-disabled:active,html .ui-button.ui-state-disabled:hover{border:1px solid #c5c5c5;background:#f6f6f6;font-weight:400;color:#454545}.ui-button,.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited,a.ui-button,a:link.ui-button,a:visited.ui-button{color:#454545;text-decoration:none}.ui-button:focus,.ui-button:hover,.ui-state-focus,.ui-state-hover,.ui-widget-content .ui-state-focus,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-focus,.ui-widget-header .ui-state-hover{border:1px solid #ccc;background:#ededed;font-weight:400;color:#2b2b2b}.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited,.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,a.ui-button:focus,a.ui-button:hover{color:#2b2b2b;text-decoration:none}.ui-visual-focus{box-shadow:0 0 3px 1px #5e9ed6}.ui-button.ui-state-active:hover,.ui-button:active,.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active,a.ui-button:active{border:1px solid #003eff;background:#007fff;font-weight:400;color:#fff}.ui-icon-background,.ui-state-active .ui-icon-background{border:#003eff;background-color:#fff}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#fff;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #dad55e;background:#fffa90;color:#777620}.ui-state-checked{border:1px solid #dad55e;background:#fffa90}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#777620}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #f1a899;background:#fddfdf;color:#5f3f3f}.ui-state-error-text,.ui-state-error a,.ui-widget-content .ui-state-error-text,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error-text,.ui-widget-header .ui-state-error a{color:#5f3f3f}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:700}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:400}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon,.ui-widget-header .ui-icon{background-image:url("+d+")}.ui-button:focus .ui-icon,.ui-button:hover .ui-icon,.ui-state-focus .ui-icon,.ui-state-hover .ui-icon{background-image:url("+p+")}.ui-button:active .ui-icon,.ui-state-active .ui-icon{background-image:url("+h+")}.ui-button .ui-state-highlight.ui-icon,.ui-state-highlight .ui-icon{background-image:url("+f+")}.ui-state-error-text .ui-icon,.ui-state-error .ui-icon{background-image:url("+g+")}.ui-button .ui-icon{background-image:url("+m+")}.ui-icon-blank{background-position:16px 16px}.ui-icon-caret-1-n{background-position:0 0}.ui-icon-caret-1-ne{background-position:-16px 0}.ui-icon-caret-1-e{background-position:-32px 0}.ui-icon-caret-1-se{background-position:-48px 0}.ui-icon-caret-1-s{background-position:-65px 0}.ui-icon-caret-1-sw{background-position:-80px 0}.ui-icon-caret-1-w{background-position:-96px 0}.ui-icon-caret-1-nw{background-position:-112px 0}.ui-icon-caret-2-n-s{background-position:-128px 0}.ui-icon-caret-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-65px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-65px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:1px -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-first,.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-left,.ui-corner-tl,.ui-corner-top{border-top-left-radius:3px}.ui-corner-all,.ui-corner-right,.ui-corner-top,.ui-corner-tr{border-top-right-radius:3px}.ui-corner-all,.ui-corner-bl,.ui-corner-bottom,.ui-corner-left{border-bottom-left-radius:3px}.ui-corner-all,.ui-corner-bottom,.ui-corner-br,.ui-corner-right{border-bottom-right-radius:3px}.ui-widget-overlay{background:#aaa;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{-webkit-box-shadow:0 0 5px #666;box-shadow:0 0 5px #666}",""]),t.exports=e},function(t,e,n){t.exports=n.p+"76baf8c70d54788b05689a3441df2125.ui-icons_444444_256x240.png"},function(t,e,n){t.exports=n.p+"ff83be97b68650c300987cabfedddb4b.ui-icons_555555_256x240.png"},function(t,e,n){t.exports=n.p+"8c2b9b2d1663cac5767de402f99ee9e6.ui-icons_ffffff_256x240.png"},function(t,e,n){t.exports=n.p+"c276a51dd43d1390ac61d8bc391c4298.ui-icons_777620_256x240.png"},function(t,e,n){t.exports=n.p+"6eb114d4b5970b7687d905856041f8f2.ui-icons_cc0000_256x240.png"},function(t,e,n){t.exports=n.p+"13c92dba972e349233fc55076ddac378.ui-icons_777777_256x240.png"},function(t,e,n){var i=n(11),r=n(919);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){var i=n(10),r=n(211),o=n(920),a=n(921),s=n(922),c=n(923);e=i(!1);var l=r(o),u=r(a),d=r(s),p=r(c);e.push([t.i,"/*!\r\n * jQuery contextMenu - Plugin for simple contextMenu handling\r\n *\r\n * Version: v2.9.0\r\n *\r\n * Authors: Björn Brala (SWIS.nl), Rodney Rehm, Addy Osmani (patches for FF)\r\n * Web: http://swisnl.github.io/jQuery-contextMenu/\r\n *\r\n * Copyright (c) 2011-2019 SWIS BV and contributors\r\n *\r\n * Licensed under\r\n * MIT License http://www.opensource.org/licenses/mit-license\r\n *\r\n * Date: 2019-10-13T13:09:56.297Z\r\n */@-webkit-keyframes cm-spin{0%{-webkit-transform:translateY(-50%) rotate(0deg);transform:translateY(-50%) rotate(0deg)}to{-webkit-transform:translateY(-50%) rotate(359deg);transform:translateY(-50%) rotate(359deg)}}@-o-keyframes cm-spin{0%{-webkit-transform:translateY(-50%) rotate(0deg);-o-transform:translateY(-50%) rotate(0deg);transform:translateY(-50%) rotate(0deg)}to{-webkit-transform:translateY(-50%) rotate(359deg);-o-transform:translateY(-50%) rotate(359deg);transform:translateY(-50%) rotate(359deg)}}@keyframes cm-spin{0%{-webkit-transform:translateY(-50%) rotate(0deg);-o-transform:translateY(-50%) rotate(0deg);transform:translateY(-50%) rotate(0deg)}to{-webkit-transform:translateY(-50%) rotate(359deg);-o-transform:translateY(-50%) rotate(359deg);transform:translateY(-50%) rotate(359deg)}}@font-face{font-family:context-menu-icons;font-style:normal;font-weight:400;src:url("+l+");src:url("+l+') format("embedded-opentype"),url('+u+') format("woff2"),url('+d+') format("woff"),url('+p+') format("truetype")}.context-menu-icon-add:before{content:"\\EA01"}.context-menu-icon-copy:before{content:"\\EA02"}.context-menu-icon-cut:before{content:"\\EA03"}.context-menu-icon-delete:before{content:"\\EA04"}.context-menu-icon-edit:before{content:"\\EA05"}.context-menu-icon-loading:before{content:"\\EA06"}.context-menu-icon-paste:before{content:"\\EA07"}.context-menu-icon-quit:before{content:"\\EA08"}.context-menu-icon:before{position:absolute;top:50%;left:0;width:2em;font-family:context-menu-icons;font-size:1em;font-style:normal;font-weight:400;line-height:1;color:#2980b9;text-align:center;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.context-menu-icon.context-menu-hover:before{color:#fff}.context-menu-icon.context-menu-disabled:before{color:#bbb}.context-menu-icon.context-menu-icon-loading:before{-webkit-animation:cm-spin 2s infinite;-o-animation:cm-spin 2s infinite;animation:cm-spin 2s infinite}.context-menu-icon.context-menu-icon--fa{display:list-item;font-family:inherit;line-height:inherit}.context-menu-icon.context-menu-icon--fa:before{position:absolute;top:50%;left:0;width:2em;font-family:FontAwesome;font-size:1em;font-style:normal;font-weight:400;line-height:1;color:#2980b9;text-align:center;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.context-menu-icon.context-menu-icon--fa.context-menu-hover:before{color:#fff}.context-menu-icon.context-menu-icon--fa.context-menu-disabled:before{color:#bbb}.context-menu-icon.context-menu-icon--fa5{display:list-item;font-family:inherit;line-height:inherit}.context-menu-icon.context-menu-icon--fa5 i,.context-menu-icon.context-menu-icon--fa5 svg{position:absolute;top:.3em;left:.5em;color:#2980b9}.context-menu-icon.context-menu-icon--fa5.context-menu-hover>i,.context-menu-icon.context-menu-icon--fa5.context-menu-hover>svg{color:#fff}.context-menu-icon.context-menu-icon--fa5.context-menu-disabled i,.context-menu-icon.context-menu-icon--fa5.context-menu-disabled svg{color:#bbb}.context-menu-list{position:absolute;display:inline-block;min-width:13em;max-width:26em;padding:.25em 0;margin:.3em;font-family:inherit;font-size:inherit;list-style-type:none;background:#fff;border:1px solid #bebebe;border-radius:.2em;-webkit-box-shadow:0 2px 5px rgba(0,0,0,.5);box-shadow:0 2px 5px rgba(0,0,0,.5)}.context-menu-item{position:relative;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;padding:.2em 2em;color:#2f2f2f;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#fff}.context-menu-separator{padding:0;margin:.35em 0;border-bottom:1px solid #e6e6e6}.context-menu-item>label>input,.context-menu-item>label>textarea{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.context-menu-item.context-menu-hover{color:#fff;cursor:pointer;background-color:#2980b9}.context-menu-item.context-menu-disabled{color:#bbb;cursor:default;background-color:#fff}.context-menu-input.context-menu-hover{color:#2f2f2f;cursor:default}.context-menu-submenu:after{position:absolute;top:50%;right:.5em;z-index:1;width:0;height:0;content:"";border-color:transparent transparent transparent #2f2f2f;border-style:solid;border-width:.25em 0 .25em .25em;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%)}.context-menu-item.context-menu-input{padding:.3em .6em}.context-menu-input>label>*{vertical-align:top}.context-menu-input>label>input[type=checkbox],.context-menu-input>label>input[type=radio]{position:relative;top:.12em;margin-right:.4em}.context-menu-input>label{margin:0}.context-menu-input>label,.context-menu-input>label>input[type=text],.context-menu-input>label>select,.context-menu-input>label>textarea{display:block;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.context-menu-input>label>textarea{height:7em}.context-menu-item>.context-menu-list{top:.3em;right:-.3em;display:none}.context-menu-item.context-menu-visible>.context-menu-list{display:block}.context-menu-accesskey{text-decoration:underline}',""]),t.exports=e},function(t,e,n){t.exports=n.p+"e520b99c951e913f1da6f8d3617a9760.context-menu-icons.eot"},function(t,e){t.exports="data:font/woff2;base64,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"},function(t,e){t.exports="data:font/woff;base64,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"},function(t,e,n){t.exports=n.p+"885689f80535baa2c394e2b2cdc2b2eb.context-menu-icons.ttf"},function(t,e,n){(function(t){
  2333. /**
  2334. * @license AngularJS v1.8.0
  2335. * (c) 2010-2020 Google, Inc. http://angularjs.org
  2336. * License: MIT
  2337. */
  2338. !function(e){"use strict";var n={objectMaxDepth:5,urlErrorParamsEnabled:!0};function i(t){if(!U(t))return n;F(t.objectMaxDepth)&&(n.objectMaxDepth=r(t.objectMaxDepth)?t.objectMaxDepth:NaN),F(t.urlErrorParamsEnabled)&&J(t.urlErrorParamsEnabled)&&(n.urlErrorParamsEnabled=t.urlErrorParamsEnabled)}function r(t){return G(t)&&t>0}function o(t,e){e=e||Error;var i="https://errors.angularjs.org/1.8.0/",r=i.replace(".","\\.")+"[\\s\\S]*",o=new RegExp(r,"g");return function(){var r,a,s=arguments[0],c=arguments[1],l="["+(t?t+":":"")+s+"] ",u=pt(arguments,2).map(function(t){return Gt(t,n.objectMaxDepth)});if(l+=c.replace(/\{\d+\}/g,function(t){var e=+t.slice(1,-1);return e<u.length?u[e].replace(o,""):t}),l+="\n"+i+(t?t+"/":"")+s,n.urlErrorParamsEnabled)for(a=0,r="?";a<u.length;a++,r="&")l+=r+"p"+a+"="+encodeURIComponent(u[a]);return new e(l)}}var a,s,c,l,u=/^\/(.+)\/([a-z]*)$/,d=Object.prototype.hasOwnProperty,p=function(t){return z(t)?t.toLowerCase():t},h=function(t){return z(t)?t.toUpperCase():t},f=[].slice,g=[].splice,m=[].push,v=Object.prototype.toString,y=Object.getPrototypeOf,b=o("ng"),w=e.angular||(e.angular={}),S=0;function x(t){if(null==t||Y(t))return!1;if(W(t)||z(t)||s&&t instanceof s)return!0;var e="length"in Object(t)&&t.length;return G(e)&&(e>=0&&e-1 in t||"function"==typeof t.item)}function M(t,e,n){var i,r;if(t)if(K(t))for(i in t)"prototype"!==i&&"length"!==i&&"name"!==i&&t.hasOwnProperty(i)&&e.call(n,t[i],i,t);else if(W(t)||x(t)){var o="object"!=typeof t;for(i=0,r=t.length;i<r;i++)(o||i in t)&&e.call(n,t[i],i,t)}else if(t.forEach&&t.forEach!==M)t.forEach(e,n,t);else if(B(t))for(i in t)e.call(n,t[i],i,t);else if("function"==typeof t.hasOwnProperty)for(i in t)t.hasOwnProperty(i)&&e.call(n,t[i],i,t);else for(i in t)d.call(t,i)&&e.call(n,t[i],i,t);return t}function E(t,e,n){for(var i=Object.keys(t).sort(),r=0;r<i.length;r++)e.call(n,t[i[r]],i[r]);return i}function C(t){return function(e,n){t(n,e)}}function A(){return++S}function T(t,e){e?t.$$hashKey=e:delete t.$$hashKey}function O(t,e,n){for(var i=t.$$hashKey,r=0,o=e.length;r<o;++r){var a=e[r];if(U(a)||K(a))for(var s=Object.keys(a),c=0,l=s.length;c<l;c++){var u=s[c],d=a[u];n&&U(d)?H(d)?t[u]=new Date(d.valueOf()):X(d)?t[u]=new RegExp(d):d.nodeName?t[u]=d.cloneNode(!0):nt(d)?t[u]=d.clone():"__proto__"!==u&&(U(t[u])||(t[u]=W(d)?[]:{}),O(t[u],[d],!0)):t[u]=d}}return T(t,i),t}function _(t){return O(t,f.call(arguments,1),!1)}function P(t){return O(t,f.call(arguments,1),!0)}function I(t){return parseInt(t,10)}a=e.document.documentMode;var k=Number.isNaN||function(t){return t!=t};function D(t,e){return _(Object.create(t),e)}function R(){}function L(t){return t}function N(t){return function(){return t}}function j(t){return K(t.toString)&&t.toString!==v}function V(t){return void 0===t}function F(t){return void 0!==t}function U(t){return null!==t&&"object"==typeof t}function B(t){return null!==t&&"object"==typeof t&&!y(t)}function z(t){return"string"==typeof t}function G(t){return"number"==typeof t}function H(t){return"[object Date]"===v.call(t)}function W(t){return Array.isArray(t)||t instanceof Array}function q(t){switch(v.call(t)){case"[object Error]":case"[object Exception]":case"[object DOMException]":return!0;default:return t instanceof Error}}function K(t){return"function"==typeof t}function X(t){return"[object RegExp]"===v.call(t)}function Y(t){return t&&t.window===t}function Z(t){return t&&t.$evalAsync&&t.$watch}function J(t){return"boolean"==typeof t}function Q(t){return t&&K(t.then)}R.$inject=[],L.$inject=[];var $=/^\[object (?:Uint8|Uint8Clamped|Uint16|Uint32|Int8|Int16|Int32|Float32|Float64)Array]$/,tt=function(t){return z(t)?t.trim():t},et=function(t){return t.replace(/([-()[\]{}+?*.$^|,:#<!\\])/g,"\\$1").replace(/\x08/g,"\\x08")};function nt(t){return!(!t||!(t.nodeName||t.prop&&t.attr&&t.find))}function it(t){return p(t.nodeName||t[0]&&t[0].nodeName)}function rt(t,e){return-1!==Array.prototype.indexOf.call(t,e)}function ot(t,e){var n=t.indexOf(e);return n>=0&&t.splice(n,1),n}function at(t,e,n){var i,o,a=[],s=[];if(n=r(n)?n:NaN,e){if((o=e)&&G(o.length)&&$.test(v.call(o))||(i=e,"[object ArrayBuffer]"===v.call(i)))throw b("cpta","Can't copy! TypedArray destination cannot be mutated.");if(t===e)throw b("cpi","Can't copy! Source and destination are identical.");return W(e)?e.length=0:M(e,function(t,n){"$$hashKey"!==n&&delete e[n]}),a.push(t),s.push(e),c(t,e,n)}return l(t,n);function c(t,e,n){if(--n<0)return"...";var i,r=e.$$hashKey;if(W(t))for(var o=0,a=t.length;o<a;o++)e.push(l(t[o],n));else if(B(t))for(i in t)e[i]=l(t[i],n);else if(t&&"function"==typeof t.hasOwnProperty)for(i in t)t.hasOwnProperty(i)&&(e[i]=l(t[i],n));else for(i in t)d.call(t,i)&&(e[i]=l(t[i],n));return T(e,r),e}function l(t,e){if(!U(t))return t;var n=a.indexOf(t);if(-1!==n)return s[n];if(Y(t)||Z(t))throw b("cpws","Can't copy! Making copies of Window or Scope instances is not supported.");var i=!1,r=function(t){switch(v.call(t)){case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Float32Array]":case"[object Float64Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return new t.constructor(l(t.buffer),t.byteOffset,t.length);case"[object ArrayBuffer]":if(!t.slice){var e=new ArrayBuffer(t.byteLength);return new Uint8Array(e).set(new Uint8Array(t)),e}return t.slice(0);case"[object Boolean]":case"[object Number]":case"[object String]":case"[object Date]":return new t.constructor(t.valueOf());case"[object RegExp]":var n=new RegExp(t.source,t.toString().match(/[^/]*$/)[0]);return n.lastIndex=t.lastIndex,n;case"[object Blob]":return new t.constructor([t],{type:t.type})}if(K(t.cloneNode))return t.cloneNode(!0)}(t);return void 0===r&&(r=W(t)?[]:Object.create(y(t)),i=!0),a.push(t),s.push(r),i?c(t,r,e):r}}function st(t,e){return t===e||t!=t&&e!=e}function ct(t,e){if(t===e)return!0;if(null===t||null===e)return!1;if(t!=t&&e!=e)return!0;var n,i,r,o=typeof t;if(o===typeof e&&"object"===o){if(!W(t)){if(H(t))return!!H(e)&&st(t.getTime(),e.getTime());if(X(t))return!!X(e)&&t.toString()===e.toString();if(Z(t)||Z(e)||Y(t)||Y(e)||W(e)||H(e)||X(e))return!1;for(i in r=Ft(),t)if("$"!==i.charAt(0)&&!K(t[i])){if(!ct(t[i],e[i]))return!1;r[i]=!0}for(i in e)if(!(i in r)&&"$"!==i.charAt(0)&&F(e[i])&&!K(e[i]))return!1;return!0}if(!W(e))return!1;if((n=t.length)===e.length){for(i=0;i<n;i++)if(!ct(t[i],e[i]))return!1;return!0}}return!1}var lt=function(){if(!F(lt.rules)){var t=e.document.querySelector("[ng-csp]")||e.document.querySelector("[data-ng-csp]");if(t){var n=t.getAttribute("ng-csp")||t.getAttribute("data-ng-csp");lt.rules={noUnsafeEval:!n||-1!==n.indexOf("no-unsafe-eval"),noInlineStyle:!n||-1!==n.indexOf("no-inline-style")}}else lt.rules={noUnsafeEval:function(){try{return new Function(""),!1}catch(t){return!0}}(),noInlineStyle:!1}}return lt.rules},ut=function(){if(F(ut.name_))return ut.name_;var t,n,i,r,o=At.length;for(n=0;n<o;++n)if(i=At[n],t=e.document.querySelector("["+i.replace(":","\\:")+"jq]")){r=t.getAttribute(i+"jq");break}return ut.name_=r};function dt(t,e,n){return t.concat(f.call(e,n))}function pt(t,e){return f.call(t,e||0)}function ht(t,e){var n=arguments.length>2?pt(arguments,2):[];return!K(e)||e instanceof RegExp?e:n.length?function(){return arguments.length?e.apply(t,dt(n,arguments,0)):e.apply(t,n)}:function(){return arguments.length?e.apply(t,arguments):e.call(t)}}function ft(t,n){var i=n;return"string"==typeof t&&"$"===t.charAt(0)&&"$"===t.charAt(1)?i=void 0:Y(n)?i="$WINDOW":n&&e.document===n?i="$DOCUMENT":Z(n)&&(i="$SCOPE"),i}function gt(t,e){if(!V(t))return G(e)||(e=e?2:null),JSON.stringify(t,ft,e)}function mt(t){return z(t)?JSON.parse(t):t}var vt=/:/g;function yt(t,e){t=t.replace(vt,"");var n=Date.parse("Jan 01, 1970 00:00:00 "+t)/6e4;return k(n)?e:n}function bt(t,e){return(t=new Date(t.getTime())).setMinutes(t.getMinutes()+e),t}function wt(t,e,n){n=n?-1:1;var i=t.getTimezoneOffset();return bt(t,n*(yt(e,i)-i))}function St(t){t=s(t).clone().empty();var e=s("<div></div>").append(t).html();try{return t[0].nodeType===Bt?p(e):e.match(/^(<[^>]+>)/)[1].replace(/^<([\w-]+)/,function(t,e){return"<"+p(e)})}catch(t){return p(e)}}function xt(t){try{return decodeURIComponent(t)}catch(t){}}function Mt(t){var e={};return M((t||"").split("&"),function(t){var n,i,r;t&&(i=t=t.replace(/\+/g,"%20"),-1!==(n=t.indexOf("="))&&(i=t.substring(0,n),r=t.substring(n+1)),F(i=xt(i))&&(r=!F(r)||xt(r),d.call(e,i)?W(e[i])?e[i].push(r):e[i]=[e[i],r]:e[i]=r))}),e}function Et(t){return Ct(t,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function Ct(t,e){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,e?"%20":"+")}var At=["ng-","data-ng-","ng:","x-ng-"],Tt=function(t){var n=t.currentScript;if(!n)return!0;if(!(n instanceof e.HTMLScriptElement||n instanceof e.SVGScriptElement))return!1;var i=n.attributes;return[i.getNamedItem("src"),i.getNamedItem("href"),i.getNamedItem("xlink:href")].every(function(e){if(!e)return!0;if(!e.value)return!1;var n=t.createElement("a");if(n.href=e.value,t.location.origin===n.origin)return!0;switch(n.protocol){case"http:":case"https:":case"ftp:":case"blob:":case"file:":case"data:":return!0;default:return!1}})}(e.document);function Ot(t,n,i){U(i)||(i={}),i=_({strictDi:!1},i);var r=function(){if((t=s(t)).injector()){var r=t[0]===e.document?"document":St(t);throw b("btstrpd","App already bootstrapped with this element '{0}'",r.replace(/</,"&lt;").replace(/>/,"&gt;"))}(n=n||[]).unshift(["$provide",function(e){e.value("$rootElement",t)}]),i.debugInfoEnabled&&n.push(["$compileProvider",function(t){t.debugInfoEnabled(!0)}]),n.unshift("ng");var o=Je(n,i.strictDi);return o.invoke(["$rootScope","$rootElement","$compile","$injector",function(t,e,n,i){t.$apply(function(){e.data("$injector",i),n(e)(t)})}]),o},o=/^NG_ENABLE_DEBUG_INFO!/,a=/^NG_DEFER_BOOTSTRAP!/;if(e&&o.test(e.name)&&(i.debugInfoEnabled=!0,e.name=e.name.replace(o,"")),e&&!a.test(e.name))return r();e.name=e.name.replace(a,""),w.resumeBootstrap=function(t){return M(t,function(t){n.push(t)}),r()},K(w.resumeDeferredBootstrap)&&w.resumeDeferredBootstrap()}function _t(){e.name="NG_ENABLE_DEBUG_INFO!"+e.name,e.location.reload()}function Pt(t){var e=w.element(t).injector();if(!e)throw b("test","no injector found for element argument to getTestability");return e.get("$$testability")}var It=/[A-Z]/g;function kt(t,e){return e=e||"_",t.replace(It,function(t,n){return(n?e:"")+t.toLowerCase()})}var Dt=!1;function Rt(){pe.legacyXHTMLReplacement=!0}function Lt(t,e,n){if(!t)throw b("areq","Argument '{0}' is {1}",e||"?",n||"required");return t}function Nt(t,e,n){return n&&W(t)&&(t=t[t.length-1]),Lt(K(t),e,"not a function, got "+(t&&"object"==typeof t?t.constructor.name||"Object":typeof t)),t}function jt(t,e){if("hasOwnProperty"===t)throw b("badname","hasOwnProperty is not a valid {0} name",e)}function Vt(t){for(var e,n=t[0],i=t[t.length-1],r=1;n!==i&&(n=n.nextSibling);r++)(e||t[r]!==n)&&(e||(e=s(f.call(t,0,r))),e.push(n));return e||t}function Ft(){return Object.create(null)}function Ut(t){if(null==t)return"";switch(typeof t){case"string":break;case"number":t=""+t;break;default:t=!j(t)||W(t)||H(t)?gt(t):t.toString()}return t}var Bt=3;function zt(t,e){if(W(t)){e=e||[];for(var n=0,i=t.length;n<i;n++)e[n]=t[n]}else if(U(t))for(var r in e=e||{},t)"$"===r.charAt(0)&&"$"===r.charAt(1)||(e[r]=t[r]);return e||t}function Gt(t,e){return"function"==typeof t?t.toString().replace(/ \{[\s\S]*$/,""):V(t)?"undefined":"string"!=typeof t?function(t,e){var n=[];return r(e)&&(t=w.copy(t,null,e)),JSON.stringify(t,function(t,e){if(U(e=ft(t,e))){if(n.indexOf(e)>=0)return"...";n.push(e)}return e})}(t,e):t}var Ht={full:"1.8.0",major:1,minor:8,dot:0,codeName:"nested-vaccination"};pe.expando="ng339";var Wt=pe.cache={},qt=1;pe._data=function(t){return this.cache[t[this.expando]]||{}};var Kt=/-([a-z])/g,Xt=/^-ms-/,Yt={mouseleave:"mouseout",mouseenter:"mouseover"},Zt=o("jqLite");function Jt(t,e){return e.toUpperCase()}function Qt(t){return t.replace(Kt,Jt)}var $t=/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,te=/<|&#?\w+;/,ee=/<([\w:-]+)/,ne=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,ie={thead:["table"],col:["colgroup","table"],tr:["tbody","table"],td:["tr","tbody","table"]};ie.tbody=ie.tfoot=ie.colgroup=ie.caption=ie.thead,ie.th=ie.td;var re={option:[1,'<select multiple="multiple">',"</select>"],_default:[0,"",""]};for(var oe in ie){var ae=ie[oe],se=ae.slice().reverse();re[oe]=[se.length,"<"+se.join("><")+">","</"+ae.join("></")+">"]}function ce(t){return!te.test(t)}function le(t){var e=t.nodeType;return 1===e||!e||9===e}function ue(t,n){var i,r,o,s,c,l=n.createDocumentFragment(),u=[];if(ce(t))u.push(n.createTextNode(t));else{if(i=l.appendChild(n.createElement("div")),r=(ee.exec(t)||["",""])[1].toLowerCase(),s=pe.legacyXHTMLReplacement?t.replace(ne,"<$1></$2>"):t,a<10)for(o=re[r]||re._default,i.innerHTML=o[1]+s+o[2],c=o[0];c--;)i=i.firstChild;else{for(c=(o=ie[r]||[]).length;--c>-1;)i.appendChild(e.document.createElement(o[c])),i=i.firstChild;i.innerHTML=s}u=dt(u,i.childNodes),(i=l.firstChild).textContent=""}return l.textContent="",l.innerHTML="",M(u,function(t){l.appendChild(t)}),l}re.optgroup=re.option;var de=e.Node.prototype.contains||function(t){return!!(16&this.compareDocumentPosition(t))};function pe(t){if(t instanceof pe)return t;var n,i,r,o;if(z(t)&&(t=tt(t),n=!0),!(this instanceof pe)){if(n&&"<"!==t.charAt(0))throw Zt("nosel","Looking up elements via selectors is not supported by jqLite! See: http://docs.angularjs.org/api/angular.element");return new pe(t)}n?Ee(this,(i=t,r=r||e.document,(o=$t.exec(i))?[r.createElement(o[1])]:(o=ue(i,r))?o.childNodes:[])):K(t)?_e(t):Ee(this,t)}function he(t){return t.cloneNode(!0)}function fe(t,e){!e&&le(t)&&s.cleanData([t]),t.querySelectorAll&&s.cleanData(t.querySelectorAll("*"))}function ge(t){var e;for(e in t)return!1;return!0}function me(t){var e=t.ng339,n=e&&Wt[e],i=n&&n.events,r=n&&n.data;r&&!ge(r)||i&&!ge(i)||(delete Wt[e],t.ng339=void 0)}function ve(t,e,n,i){if(F(i))throw Zt("offargs","jqLite#off() does not support the `selector` argument");var r=be(t),o=r&&r.events,a=r&&r.handle;if(a){if(e){var s=function(e){var i=o[e];F(n)&&ot(i||[],n),F(n)&&i&&i.length>0||(t.removeEventListener(e,a),delete o[e])};M(e.split(" "),function(t){s(t),Yt[t]&&s(Yt[t])})}else for(e in o)"$destroy"!==e&&t.removeEventListener(e,a),delete o[e];me(t)}}function ye(t,e){var n=t.ng339,i=n&&Wt[n];i&&(e?delete i.data[e]:i.data={},me(t))}function be(t,e){var n=t.ng339,i=n&&Wt[n];return e&&!i&&(t.ng339=n=++qt,i=Wt[n]={events:{},data:{},handle:void 0}),i}function we(t,e,n){if(le(t)){var i,r=F(n),o=!r&&e&&!U(e),a=!e,s=be(t,!o),c=s&&s.data;if(r)c[Qt(e)]=n;else{if(a)return c;if(o)return c&&c[Qt(e)];for(i in e)c[Qt(i)]=e[i]}}}function Se(t,e){return!!t.getAttribute&&(" "+(t.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").indexOf(" "+e+" ")>-1}function xe(t,e){if(e&&t.setAttribute){var n=(" "+(t.getAttribute("class")||"")+" ").replace(/[\n\t]/g," "),i=n;M(e.split(" "),function(t){t=tt(t),i=i.replace(" "+t+" "," ")}),i!==n&&t.setAttribute("class",tt(i))}}function Me(t,e){if(e&&t.setAttribute){var n=(" "+(t.getAttribute("class")||"")+" ").replace(/[\n\t]/g," "),i=n;M(e.split(" "),function(t){t=tt(t),-1===i.indexOf(" "+t+" ")&&(i+=t+" ")}),i!==n&&t.setAttribute("class",tt(i))}}function Ee(t,e){if(e)if(e.nodeType)t[t.length++]=e;else{var n=e.length;if("number"==typeof n&&e.window!==e){if(n)for(var i=0;i<n;i++)t[t.length++]=e[i]}else t[t.length++]=e}}function Ce(t,e){return Ae(t,"$"+(e||"ngController")+"Controller")}function Ae(t,e,n){9===t.nodeType&&(t=t.documentElement);for(var i=W(e)?e:[e];t;){for(var r=0,o=i.length;r<o;r++)if(F(n=s.data(t,i[r])))return n;t=t.parentNode||11===t.nodeType&&t.host}}function Te(t){for(fe(t,!0);t.firstChild;)t.removeChild(t.firstChild)}function Oe(t,e){e||fe(t);var n=t.parentNode;n&&n.removeChild(t)}function _e(t){function n(){e.document.removeEventListener("DOMContentLoaded",n),e.removeEventListener("load",n),t()}"complete"===e.document.readyState?e.setTimeout(t):(e.document.addEventListener("DOMContentLoaded",n),e.addEventListener("load",n))}var Pe=pe.prototype={ready:_e,toString:function(){var t=[];return M(this,function(e){t.push(""+e)}),"["+t.join(", ")+"]"},eq:function(t){return s(t>=0?this[t]:this[this.length+t])},length:0,push:m,sort:[].sort,splice:[].splice},Ie={};M("multiple,selected,checked,disabled,readOnly,required,open".split(","),function(t){Ie[p(t)]=t});var ke={};M("input,select,option,textarea,button,form,details".split(","),function(t){ke[t]=!0});var De={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern",ngStep:"step"};function Re(t,e){var n=Ie[e.toLowerCase()];return n&&ke[it(t)]&&n}function Le(t,e,n){n.call(t,e)}function Ne(t,e,n){var i=e.relatedTarget;i&&(i===t||de.call(t,i))||n.call(t,e)}function je(){this.$get=function(){return _(pe,{hasClass:function(t,e){return t.attr&&(t=t[0]),Se(t,e)},addClass:function(t,e){return t.attr&&(t=t[0]),Me(t,e)},removeClass:function(t,e){return t.attr&&(t=t[0]),xe(t,e)}})}}function Ve(t,e){var n=t&&t.$$hashKey;if(n)return"function"==typeof n&&(n=t.$$hashKey()),n;var i=typeof t;return"function"===i||"object"===i&&null!==t?t.$$hashKey=i+":"+(e||A)():i+":"+t}M({data:we,removeData:ye,hasData:function(t){for(var e in Wt[t.ng339])return!0;return!1},cleanData:function(t){for(var e=0,n=t.length;e<n;e++)ye(t[e]),ve(t[e])}},function(t,e){pe[e]=t}),M({data:we,inheritedData:Ae,scope:function(t){return s.data(t,"$scope")||Ae(t.parentNode||t,["$isolateScope","$scope"])},isolateScope:function(t){return s.data(t,"$isolateScope")||s.data(t,"$isolateScopeNoTemplate")},controller:Ce,injector:function(t){return Ae(t,"$injector")},removeAttr:function(t,e){t.removeAttribute(e)},hasClass:Se,css:function(t,e,n){if(e=Qt(e.replace(Xt,"ms-")),!F(n))return t.style[e];t.style[e]=n},attr:function(t,e,n){var i,r=t.nodeType;if(r!==Bt&&2!==r&&8!==r&&t.getAttribute){var o=p(e),a=Ie[o];if(!F(n))return i=t.getAttribute(e),a&&null!==i&&(i=o),null===i?void 0:i;null===n||!1===n&&a?t.removeAttribute(e):t.setAttribute(e,a?o:n)}},prop:function(t,e,n){if(!F(n))return t[e];t[e]=n},text:function(){return t.$dv="",t;function t(t,e){if(V(e)){var n=t.nodeType;return 1===n||n===Bt?t.textContent:""}t.textContent=e}}(),val:function(t,e){if(V(e)){if(t.multiple&&"select"===it(t)){var n=[];return M(t.options,function(t){t.selected&&n.push(t.value||t.text)}),n}return t.value}t.value=e},html:function(t,e){if(V(e))return t.innerHTML;fe(t,!0),t.innerHTML=e},empty:Te},function(t,e){pe.prototype[e]=function(e,n){var i,r,o=this.length;if(t!==Te&&V(2===t.length&&t!==Se&&t!==Ce?e:n)){if(U(e)){for(i=0;i<o;i++)if(t===we)t(this[i],e);else for(r in e)t(this[i],r,e[r]);return this}for(var a=t.$dv,s=V(a)?Math.min(o,1):o,c=0;c<s;c++){var l=t(this[c],e,n);a=a?a+l:l}return a}for(i=0;i<o;i++)t(this[i],e,n);return this}}),M({removeData:ye,on:function(t,e,n,i){if(F(i))throw Zt("onargs","jqLite#on() does not support the `selector` or `eventData` parameters");if(le(t)){var r=be(t,!0),o=r.events,a=r.handle;a||(a=r.handle=function(t,e){var n=function(n,i){n.isDefaultPrevented=function(){return n.defaultPrevented};var r=e[i||n.type],o=r?r.length:0;if(o){if(V(n.immediatePropagationStopped)){var a=n.stopImmediatePropagation;n.stopImmediatePropagation=function(){n.immediatePropagationStopped=!0,n.stopPropagation&&n.stopPropagation(),a&&a.call(n)}}n.isImmediatePropagationStopped=function(){return!0===n.immediatePropagationStopped};var s=r.specialHandlerWrapper||Le;o>1&&(r=zt(r));for(var c=0;c<o;c++)n.isImmediatePropagationStopped()||s(t,n,r[c])}};return n.elem=t,n}(t,o));for(var s=e.indexOf(" ")>=0?e.split(" "):[e],c=s.length,l=function(e,i,r){var s=o[e];s||((s=o[e]=[]).specialHandlerWrapper=i,"$destroy"===e||r||t.addEventListener(e,a)),s.push(n)};c--;)e=s[c],Yt[e]?(l(Yt[e],Ne),l(e,void 0,!0)):l(e)}},off:ve,one:function(t,e,n){(t=s(t)).on(e,function i(){t.off(e,n),t.off(e,i)}),t.on(e,n)},replaceWith:function(t,e){var n,i=t.parentNode;fe(t),M(new pe(e),function(e){n?i.insertBefore(e,n.nextSibling):i.replaceChild(e,t),n=e})},children:function(t){var e=[];return M(t.childNodes,function(t){1===t.nodeType&&e.push(t)}),e},contents:function(t){return t.contentDocument||t.childNodes||[]},append:function(t,e){var n=t.nodeType;if(1===n||11===n)for(var i=0,r=(e=new pe(e)).length;i<r;i++){var o=e[i];t.appendChild(o)}},prepend:function(t,e){if(1===t.nodeType){var n=t.firstChild;M(new pe(e),function(e){t.insertBefore(e,n)})}},wrap:function(t,e){var n,i,r;n=t,i=s(e).eq(0).clone()[0],(r=n.parentNode)&&r.replaceChild(i,n),i.appendChild(n)},remove:Oe,detach:function(t){Oe(t,!0)},after:function(t,e){var n=t,i=t.parentNode;if(i)for(var r=0,o=(e=new pe(e)).length;r<o;r++){var a=e[r];i.insertBefore(a,n.nextSibling),n=a}},addClass:Me,removeClass:xe,toggleClass:function(t,e,n){e&&M(e.split(" "),function(e){var i=n;V(i)&&(i=!Se(t,e)),(i?Me:xe)(t,e)})},parent:function(t){var e=t.parentNode;return e&&11!==e.nodeType?e:null},next:function(t){return t.nextElementSibling},find:function(t,e){return t.getElementsByTagName?t.getElementsByTagName(e):[]},clone:he,triggerHandler:function(t,e,n){var i,r,o,a=e.type||e,s=be(t),c=s&&s.events,l=c&&c[a];l&&(i={preventDefault:function(){this.defaultPrevented=!0},isDefaultPrevented:function(){return!0===this.defaultPrevented},stopImmediatePropagation:function(){this.immediatePropagationStopped=!0},isImmediatePropagationStopped:function(){return!0===this.immediatePropagationStopped},stopPropagation:R,type:a,target:t},e.type&&(i=_(i,e)),r=zt(l),o=n?[i].concat(n):[i],M(r,function(e){i.isImmediatePropagationStopped()||e.apply(t,o)}))}},function(t,e){pe.prototype[e]=function(e,n,i){for(var r,o=0,a=this.length;o<a;o++)V(r)?F(r=t(this[o],e,n,i))&&(r=s(r)):Ee(r,t(this[o],e,n,i));return F(r)?r:this}}),pe.prototype.bind=pe.prototype.on,pe.prototype.unbind=pe.prototype.off;var Fe=Object.create(null);function Ue(){this._keys=[],this._values=[],this._lastKey=NaN,this._lastIndex=-1}Ue.prototype={_idx:function(t){return t!==this._lastKey&&(this._lastKey=t,this._lastIndex=this._keys.indexOf(t)),this._lastIndex},_transformKey:function(t){return k(t)?Fe:t},get:function(t){t=this._transformKey(t);var e=this._idx(t);if(-1!==e)return this._values[e]},has:function(t){return t=this._transformKey(t),-1!==this._idx(t)},set:function(t,e){t=this._transformKey(t);var n=this._idx(t);-1===n&&(n=this._lastIndex=this._keys.length),this._keys[n]=t,this._values[n]=e},delete:function(t){t=this._transformKey(t);var e=this._idx(t);return-1!==e&&(this._keys.splice(e,1),this._values.splice(e,1),this._lastKey=NaN,this._lastIndex=-1,!0)}};var Be=Ue,ze=[function(){this.$get=[function(){return Be}]}],Ge=/^([^(]+?)=>/,He=/^[^(]*\(\s*([^)]*)\)/m,We=/,/,qe=/^\s*(_?)(\S+?)\1\s*$/,Ke=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/gm,Xe=o("$injector");function Ye(t){return Function.prototype.toString.call(t)}function Ze(t){var e=Ye(t).replace(Ke,"");return e.match(Ge)||e.match(He)}function Je(t,e){e=!0===e;var n={},i=[],r=new Be,o={$provide:{provider:h(f),factory:h(g),service:h(function(t,e){return g(t,["$injector",function(t){return t.instantiate(e)}])}),value:h(function(t,e){return g(t,N(e),!1)}),constant:h(function(t,e){jt(t,"constant"),o[t]=e,c[t]=e}),decorator:function(t,e){var n=s.get(t+"Provider"),i=n.$get;n.$get=function(){var t=d.invoke(i,n);return d.invoke(e,null,{$delegate:t})}}}},s=o.$injector=v(o,function(t,e){throw w.isString(e)&&i.push(e),Xe("unpr","Unknown provider: {0}",i.join(" <- "))}),c={},u=v(c,function(t,e){var n=s.get(t+"Provider",e);return d.invoke(n.$get,n,void 0,t)}),d=u;o.$injectorProvider={$get:N(u)},d.modules=s.modules=Ft();var p=m(t);return(d=u.get("$injector")).strictDi=e,M(p,function(t){t&&d.invoke(t)}),d.loadNewModules=function(t){M(m(t),function(t){t&&d.invoke(t)})},d;function h(t){return function(e,n){if(!U(e))return t(e,n);M(e,C(t))}}function f(t,e){if(jt(t,"service"),(K(e)||W(e))&&(e=s.instantiate(e)),!e.$get)throw Xe("pget","Provider '{0}' must define $get factory method.",t);return o[t+"Provider"]=e}function g(t,e,n){return f(t,{$get:!1!==n?function(t,e){return function(){var n=d.invoke(e,this);if(V(n))throw Xe("undef","Provider '{0}' must return a value from $get factory method.",t);return n}}(t,e):e})}function m(t){Lt(V(t)||W(t),"modulesToLoad","not an array");var e,n=[];return M(t,function(t){if(!r.get(t)){r.set(t,!0);try{z(t)?(e=l(t),d.modules[t]=e,n=n.concat(m(e.requires)).concat(e._runBlocks),i(e._invokeQueue),i(e._configBlocks)):K(t)||W(t)?n.push(s.invoke(t)):Nt(t,"module")}catch(e){throw W(t)&&(t=t[t.length-1]),e.message&&e.stack&&-1===e.stack.indexOf(e.message)&&(e=e.message+"\n"+e.stack),Xe("modulerr","Failed to instantiate module {0} due to:\n{1}",t,e.stack||e.message||e)}}function i(t){var e,n;for(e=0,n=t.length;e<n;e++){var i=t[e],r=s.get(i[0]);r[i[1]].apply(r,i[2])}}}),n}function v(t,r){function s(e,o){if(t.hasOwnProperty(e)){if(t[e]===n)throw Xe("cdep","Circular dependency found: {0}",e+" <- "+i.join(" <- "));return t[e]}try{return i.unshift(e),t[e]=n,t[e]=r(e,o),t[e]}catch(i){throw t[e]===n&&delete t[e],i}finally{i.shift()}}function c(t,n,i){for(var r=[],o=Je.$$annotate(t,e,i),a=0,c=o.length;a<c;a++){var l=o[a];if("string"!=typeof l)throw Xe("itkn","Incorrect injection token! Expected service name as string, got {0}",l);r.push(n&&n.hasOwnProperty(l)?n[l]:s(l,i))}return r}return{invoke:function(t,e,n,i){"string"==typeof n&&(i=n,n=null);var r=c(t,n,i);return W(t)&&(t=t[t.length-1]),function(t){if(a||"function"!=typeof t)return!1;var e=t.$$ngIsClass;return J(e)||(e=t.$$ngIsClass=/^class\b/.test(Ye(t))),e}(t)?(r.unshift(null),new(Function.prototype.bind.apply(t,r))):t.apply(e,r)},instantiate:function(t,e,n){var i=W(t)?t[t.length-1]:t,r=c(t,e,n);return r.unshift(null),new(Function.prototype.bind.apply(i,r))},get:s,annotate:Je.$$annotate,has:function(e){return o.hasOwnProperty(e+"Provider")||t.hasOwnProperty(e)}}}}function Qe(){var t=!0;this.disableAutoScrolling=function(){t=!1},this.$get=["$window","$location","$rootScope",function(n,i,r){var o=n.document;function a(t){if(t){t.scrollIntoView();var e=function(){var t=c.yOffset;if(K(t))t=t();else if(nt(t)){var e=t[0];t="fixed"!==n.getComputedStyle(e).position?0:e.getBoundingClientRect().bottom}else G(t)||(t=0);return t}();if(e){var i=t.getBoundingClientRect().top;n.scrollBy(0,i-e)}}else n.scrollTo(0,0)}function c(t){var e,n,r;(t=z(t)?t:G(t)?t.toString():i.hash())?(e=o.getElementById(t))?a(e):(n=o.getElementsByName(t),r=null,Array.prototype.some.call(n,function(t){if("a"===it(t))return r=t,!0}),(e=r)?a(e):"top"===t&&a(null)):a(null)}return t&&r.$watch(function(){return i.hash()},function(t,n){var i,o;t===n&&""===t||(i=function(){r.$evalAsync(c)},"complete"===(o=o||e).document.readyState?o.setTimeout(i):s(o).on("load",i))}),c}]}Je.$$annotate=function(t,e,n){var i,r;if("function"==typeof t){if(!(i=t.$inject)){if(i=[],t.length){if(e)throw z(n)&&n||(n=t.name||function(t){var e=Ze(t);return e?"function("+(e[1]||"").replace(/[\s\r\n]+/," ")+")":"fn"}(t)),Xe("strictdi","{0} is not using explicit annotation and cannot be invoked in strict mode",n);M(Ze(t)[1].split(We),function(t){t.replace(qe,function(t,e,n){i.push(n)})})}t.$inject=i}}else W(t)?(Nt(t[r=t.length-1],"fn"),i=t.slice(0,r)):Nt(t,"fn",!0);return i};var $e=o("$animate");function tn(t,e){return t||e?t?e?(W(t)&&(t=t.join(" ")),W(e)&&(e=e.join(" ")),t+" "+e):t:e:""}function en(t){return U(t)?t:{}}var nn=function(){this.$get=R},rn=function(){var t=new Be,e=[];this.$get=["$$AnimateRunner","$rootScope",function(n,i){return{enabled:R,on:R,off:R,pin:R,push:function(a,s,c,l){l&&l(),(c=c||{}).from&&a.css(c.from),c.to&&a.css(c.to),(c.addClass||c.removeClass)&&function(n,a,s){var c=t.get(n)||{},l=r(c,a,!0),u=r(c,s,!1);(l||u)&&(t.set(n,c),e.push(n),1===e.length&&i.$$postDigest(o))}(a,c.addClass,c.removeClass);var u=new n;return u.complete(),u}};function r(t,e,n){var i=!1;return e&&M(e=z(e)?e.split(" "):W(e)?e:[],function(e){e&&(i=!0,t[e]=n)}),i}function o(){M(e,function(e){var n=t.get(e);if(n){var i=function(t){z(t)&&(t=t.split(" "));var e=Ft();return M(t,function(t){t.length&&(e[t]=!0)}),e}(e.attr("class")),r="",o="";M(n,function(t,e){t!==!!i[e]&&(t?r+=(r.length?" ":"")+e:o+=(o.length?" ":"")+e)}),M(e,function(t){r&&Me(t,r),o&&xe(t,o)}),t.delete(e)}}),e.length=0}}]},on=["$provide",function(t){var e=this,n=null,i=null;this.$$registeredAnimations=Object.create(null),this.register=function(n,i){if(n&&"."!==n.charAt(0))throw $e("notcsel","Expecting class selector starting with '.' got '{0}'.",n);var r=n+"-animation";e.$$registeredAnimations[n.substr(1)]=r,t.factory(r,i)},this.customFilter=function(t){return 1===arguments.length&&(i=K(t)?t:null),i},this.classNameFilter=function(t){if(1===arguments.length&&(n=t instanceof RegExp?t:null)&&new RegExp("[(\\s|\\/)]ng-animate[(\\s|\\/)]").test(n.toString()))throw n=null,$e("nongcls",'$animateProvider.classNameFilter(regex) prohibits accepting a regex value which matches/contains the "{0}" CSS class.',"ng-animate");return n},this.$get=["$$animateQueue",function(t){function e(t,e,n){if(n){var i=function(t){for(var e=0;e<t.length;e++){var n=t[e];if(1===n.nodeType)return n}}(n);!i||i.parentNode||i.previousElementSibling||(n=null)}n?n.after(t):e.prepend(t)}return{on:t.on,off:t.off,pin:t.pin,enabled:t.enabled,cancel:function(t){t.cancel&&t.cancel()},enter:function(n,i,r,o){return i=i&&s(i),r=r&&s(r),e(n,i=i||r.parent(),r),t.push(n,"enter",en(o))},move:function(n,i,r,o){return i=i&&s(i),r=r&&s(r),e(n,i=i||r.parent(),r),t.push(n,"move",en(o))},leave:function(e,n){return t.push(e,"leave",en(n),function(){e.remove()})},addClass:function(e,n,i){return(i=en(i)).addClass=tn(i.addclass,n),t.push(e,"addClass",i)},removeClass:function(e,n,i){return(i=en(i)).removeClass=tn(i.removeClass,n),t.push(e,"removeClass",i)},setClass:function(e,n,i,r){return(r=en(r)).addClass=tn(r.addClass,n),r.removeClass=tn(r.removeClass,i),t.push(e,"setClass",r)},animate:function(e,n,i,r,o){return(o=en(o)).from=o.from?_(o.from,n):n,o.to=o.to?_(o.to,i):i,r=r||"ng-inline-animate",o.tempClasses=tn(o.tempClasses,r),t.push(e,"animate",o)}}}]}],an=function(){this.$get=["$$rAF",function(t){var e=[];function n(n){e.push(n),e.length>1||t(function(){for(var t=0;t<e.length;t++)e[t]();e=[]})}return function(){var t=!1;return n(function(){t=!0}),function(e){t?e():n(e)}}}]},sn=function(){this.$get=["$q","$sniffer","$$animateAsyncRun","$$isDocumentHidden","$timeout",function(t,e,n,i,r){function o(t){this.setHost(t);var e=n();this._doneCallbacks=[],this._tick=function(t){i()?function(t){r(t,0,!1)}(t):e(t)},this._state=0}return o.chain=function(t,e){var n=0;!function i(){n!==t.length?t[n](function(t){!1!==t?(n++,i()):e(!1)}):e(!0)}()},o.all=function(t,e){var n=0,i=!0;function r(r){i=i&&r,++n===t.length&&e(i)}M(t,function(t){t.done(r)})},o.prototype={setHost:function(t){this.host=t||{}},done:function(t){2===this._state?t():this._doneCallbacks.push(t)},progress:R,getPromise:function(){if(!this.promise){var e=this;this.promise=t(function(t,n){e.done(function(e){!1===e?n():t()})})}return this.promise},then:function(t,e){return this.getPromise().then(t,e)},catch:function(t){return this.getPromise().catch(t)},finally:function(t){return this.getPromise().finally(t)},pause:function(){this.host.pause&&this.host.pause()},resume:function(){this.host.resume&&this.host.resume()},end:function(){this.host.end&&this.host.end(),this._resolve(!0)},cancel:function(){this.host.cancel&&this.host.cancel(),this._resolve(!1)},complete:function(t){var e=this;0===e._state&&(e._state=1,e._tick(function(){e._resolve(t)}))},_resolve:function(t){2!==this._state&&(M(this._doneCallbacks,function(e){e(t)}),this._doneCallbacks.length=0,this._state=2)}},o}]},cn=function(){this.$get=["$$rAF","$q","$$AnimateRunner",function(t,e,n){return function(e,i){var r=i||{};r.$$prepared||(r=at(r)),r.cleanupStyles&&(r.from=r.to=null),r.from&&(e.css(r.from),r.from=null);var o,a=new n;return{start:s,end:s};function s(){return t(function(){r.addClass&&(e.addClass(r.addClass),r.addClass=null),r.removeClass&&(e.removeClass(r.removeClass),r.removeClass=null),r.to&&(e.css(r.to),r.to=null),o||a.complete(),o=!0}),a}}}]};function ln(){this.$get=["$window","$log","$sniffer","$document","$$taskTrackerFactory",function(t,e,n,i,r){return new function(t,e,n,i,r){var o=this,a=t.location,c=t.history,l=t.setTimeout,u=t.clearTimeout,d={},p=r(n);o.isMock=!1,o.$$completeOutstandingRequest=p.completeTask,o.$$incOutstandingRequestCount=p.incTaskCount,o.notifyWhenNoOutstandingRequests=p.notifyWhenNoPendingTasks;var h,f,g=a.href,m=e.find("base"),v=null,y=i.history?function(){try{return c.state}catch(t){}}:R;E(),o.url=function(e,n,r){if(V(r)&&(r=null),a!==t.location&&(a=t.location),c!==t.history&&(c=t.history),e){var s=f===r;if(e=rr(e).href,g===e&&(!i.history||s))return o;var l=g&&ri(g)===ri(e);return g=e,f=r,!i.history||l&&s?(l||(v=e),n?a.replace(e):l?a.hash=function(t){var e=t.indexOf("#");return-1===e?"":t.substr(e)}(e):a.href=e,a.href!==e&&(v=e)):(c[n?"replaceState":"pushState"](r,"",e),E()),v&&(v=e),o}return(v||a.href).replace(/#$/,"")},o.state=function(){return h};var b=[],w=!1;function S(){v=null,C()}var x=null;function E(){ct(h=V(h=y())?null:h,x)&&(h=x),x=h,f=h}function C(){var t=f;E(),g===o.url()&&t===h||(g=o.url(),f=h,M(b,function(t){t(o.url(),h)}))}o.onUrlChange=function(e){return w||(i.history&&s(t).on("popstate",S),s(t).on("hashchange",S),w=!0),b.push(e),e},o.$$applicationDestroyed=function(){s(t).off("hashchange popstate",S)},o.$$checkUrlChange=C,o.baseHref=function(){var t=m.attr("href");return t?t.replace(/^(https?:)?\/\/[^/]*/,""):""},o.defer=function(t,e,n){var i;return e=e||0,n=n||p.DEFAULT_TASK_TYPE,p.incTaskCount(n),i=l(function(){delete d[i],p.completeTask(t,n)},e),d[i]=n,i},o.defer.cancel=function(t){if(d.hasOwnProperty(t)){var e=d[t];return delete d[t],u(t),p.completeTask(R,e),!0}return!1}}(t,i,e,n,r)}]}function un(){this.$get=function(){var t={};function e(e,n){if(e in t)throw o("$cacheFactory")("iid","CacheId '{0}' is already taken!",e);var i=0,r=_({},n,{id:e}),a=Ft(),s=n&&n.capacity||Number.MAX_VALUE,c=Ft(),l=null,u=null;return t[e]={put:function(t,e){if(!V(e))return s<Number.MAX_VALUE&&d(c[t]||(c[t]={key:t})),t in a||i++,a[t]=e,i>s&&this.remove(u.key),e},get:function(t){if(s<Number.MAX_VALUE){var e=c[t];if(!e)return;d(e)}return a[t]},remove:function(t){if(s<Number.MAX_VALUE){var e=c[t];if(!e)return;e===l&&(l=e.p),e===u&&(u=e.n),p(e.n,e.p),delete c[t]}t in a&&(delete a[t],i--)},removeAll:function(){a=Ft(),i=0,c=Ft(),l=u=null},destroy:function(){a=null,r=null,c=null,delete t[e]},info:function(){return _({},r,{size:i})}};function d(t){t!==l&&(u?u===t&&(u=t.n):u=t,p(t.n,t.p),p(t,l),(l=t).n=null)}function p(t,e){t!==e&&(t&&(t.p=e),e&&(e.n=t))}}return e.info=function(){var e={};return M(t,function(t,n){e[n]=t.info()}),e},e.get=function(e){return t[e]},e}}function dn(){this.$get=["$cacheFactory",function(t){return t("templates")}]}var pn=o("$compile"),hn=new function(){};function fn(t,n){var i={},r=/^\s*directive:\s*([\w-]+)\s+(.*)$/,o=/(([\w-]+)(?::([^;]+))?;?)/,c=function(t){var e,n={},i="ngSrc,ngSrcset,src,srcset".split(",");for(e=0;e<i.length;e++)n[i[e]]=!0;return n}(),l=/^(?:(\^\^?)?(\?)?(\^\^?)?)?/,u=/^(on[a-z]+|formaction)$/,h=Ft();function f(t,e,n){var i=/^([@&]|[=<](\*?))(\??)\s*([\w$]*)$/,r=Ft();return M(t,function(t,o){if((t=t.trim())in h)r[o]=h[t];else{var a=t.match(i);if(!a)throw pn("iscp","Invalid {3} for directive '{0}'. Definition: {... {1}: '{2}' ...}",e,o,t,n?"controller bindings definition":"isolate scope definition");r[o]={mode:a[1][0],collection:"*"===a[2],optional:"?"===a[3],attrName:a[4]||o},a[4]&&(h[t]=r[o])}}),r}function g(t,e){var n={isolateScope:null,bindToController:null};if(U(t.scope)&&(!0===t.bindToController?(n.bindToController=f(t.scope,e,!0),n.isolateScope={}):n.isolateScope=f(t.scope,e,!1)),U(t.bindToController)&&(n.bindToController=f(t.bindToController,e,!0)),n.bindToController&&!t.controller)throw pn("noctrl","Cannot bind to controller without directive '{0}'s controller.",e);return n}this.directive=function e(n,r){return Lt(n,"name"),jt(n,"directive"),z(n)?(function(t){var e=t.charAt(0);if(!e||e!==p(e))throw pn("baddir","Directive/Component name '{0}' is invalid. The first character must be a lowercase letter",t);if(t!==t.trim())throw pn("baddir","Directive/Component name '{0}' is invalid. The name should not contain leading or trailing whitespaces",t)}(n),Lt(r,"directiveFactory"),i.hasOwnProperty(n)||(i[n]=[],t.factory(n+"Directive",["$injector","$exceptionHandler",function(t,e){var r=[];return M(i[n],function(i,o){try{var a=t.invoke(i);K(a)?a={compile:N(a)}:!a.compile&&a.link&&(a.compile=N(a.link)),a.priority=a.priority||0,a.index=o,a.name=a.name||n,a.require=function(t){var e=t.require||t.controller&&t.name;return!W(e)&&U(e)&&M(e,function(t,n){var i=t.match(l);t.substring(i[0].length)||(e[n]=i[0]+n)}),e}(a),a.restrict=function(t,e){if(t&&(!z(t)||!/[EACM]/.test(t)))throw pn("badrestrict","Restrict property '{0}' of directive '{1}' is invalid",t,e);return t||"EA"}(a.restrict,n),a.$$moduleName=i.$$moduleName,r.push(a)}catch(t){e(t)}}),r}])),i[n].push(r)):M(n,C(e)),this},this.component=function t(e,n){if(!z(e))return M(e,C(ht(this,t))),this;var i=n.controller||function(){};function r(t){function e(e){return K(e)||W(e)?function(n,i){return t.invoke(e,this,{$element:n,$attrs:i})}:e}var r=n.template||n.templateUrl?n.template:"",o={controller:i,controllerAs:function(t,e){if(e&&z(e))return e;if(z(t)){var n=xn.exec(t);if(n)return n[3]}}(n.controller)||n.controllerAs||"$ctrl",template:e(r),templateUrl:e(n.templateUrl),transclude:n.transclude,scope:{},bindToController:n.bindings||{},restrict:"E",require:n.require};return M(n,function(t,e){"$"===e.charAt(0)&&(o[e]=t)}),o}return M(n,function(t,e){"$"===e.charAt(0)&&(r[e]=t,K(i)&&(i[e]=t))}),r.$inject=["$injector"],this.directive(e,r)},this.aHrefSanitizationWhitelist=function(t){return F(t)?(n.aHrefSanitizationWhitelist(t),this):n.aHrefSanitizationWhitelist()},this.imgSrcSanitizationWhitelist=function(t){return F(t)?(n.imgSrcSanitizationWhitelist(t),this):n.imgSrcSanitizationWhitelist()};var m=!0;this.debugInfoEnabled=function(t){return F(t)?(m=t,this):m};var y=!1;this.strictComponentBindingsEnabled=function(t){return F(t)?(y=t,this):y};var b=10;this.onChangesTtl=function(t){return arguments.length?(b=t,this):b};var w=!0;this.commentDirectivesEnabled=function(t){return arguments.length?(w=t,this):w};var S=!0;this.cssClassDirectivesEnabled=function(t){return arguments.length?(S=t,this):S};var x=Ft();this.addPropertySecurityContext=function(t,e,n){var i=t.toLowerCase()+"|"+e.toLowerCase();if(i in x&&x[i]!==n)throw pn("ctxoverride","Property context '{0}.{1}' already set to '{2}', cannot override to '{3}'.",t,e,x[i],n);return x[i]=n,this},function(){function t(t,e){M(e,function(e){x[e.toLowerCase()]=t})}t(Bi.HTML,["iframe|srcdoc","*|innerHTML","*|outerHTML"]),t(Bi.CSS,["*|style"]),t(Bi.URL,["area|href","area|ping","a|href","a|ping","blockquote|cite","body|background","del|cite","input|src","ins|cite","q|cite"]),t(Bi.MEDIA_URL,["audio|src","img|src","img|srcset","source|src","source|srcset","track|src","video|src","video|poster"]),t(Bi.RESOURCE_URL,["*|formAction","applet|code","applet|codebase","base|href","embed|src","frame|src","form|action","head|profile","html|manifest","iframe|src","link|href","media|src","object|codebase","object|data","script|src"])}(),this.$get=["$injector","$interpolate","$exceptionHandler","$templateRequest","$parse","$controller","$rootScope","$sce","$animate",function(t,n,h,f,E,C,A,T,O){var P,I=/^\w/,k=e.document.createElement("div"),N=w,j=S,F=b;function B(){try{if(!--F)throw P=void 0,pn("infchng","{0} $onChanges() iterations reached. Aborting!\n",b);A.$apply(function(){for(var t=0,e=P.length;t<e;++t)try{P[t]()}catch(t){h(t)}P=void 0})}finally{F++}}function G(t,e){if(!t)return t;if(!z(t))throw pn("srcset",'Can\'t pass trusted values to `{0}`: "{1}"',e,t.toString());for(var n="",i=tt(t),r=/\s/.test(i)?/(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/:/(,)/,o=i.split(r),a=Math.floor(o.length/2),s=0;s<a;s++){var c=2*s;n+=T.getTrustedMediaUrl(tt(o[c])),n+=" "+tt(o[c+1])}var l=tt(o[2*s]).split(/\s/);return n+=T.getTrustedMediaUrl(tt(l[0])),2===l.length&&(n+=" "+tt(l[1])),n}function H(t,e){if(e){var n,i,r,o=Object.keys(e);for(n=0,i=o.length;n<i;n++)this[r=o[n]]=e[r]}else this.$attr={};this.$$element=t}function X(t,e){try{t.addClass(e)}catch(t){}}H.prototype={$normalize:yn,$addClass:function(t){t&&t.length>0&&O.addClass(this.$$element,t)},$removeClass:function(t){t&&t.length>0&&O.removeClass(this.$$element,t)},$updateClass:function(t,e){var n=bn(t,e);n&&n.length&&O.addClass(this.$$element,n);var i=bn(e,t);i&&i.length&&O.removeClass(this.$$element,i)},$set:function(t,e,n,i){var r=Re(this.$$element[0],t),o=function(t){return De[t]}(t),a=t;r?(this.$$element.prop(t,e),i=r):o&&(this[o]=e,a=o),this[t]=e,i?this.$attr[t]=i:(i=this.$attr[t])||(this.$attr[t]=i=kt(t,"-")),"img"===it(this.$$element)&&"srcset"===t&&(this[t]=e=G(e,"$set('srcset', value)")),!1!==n&&(null===e||V(e)?this.$$element.removeAttr(i):I.test(i)?r&&!1===e?this.$$element.removeAttr(i):this.$$element.attr(i,e):function(t,e,n){k.innerHTML="<span "+e+">";var i=k.firstChild.attributes,r=i[0];i.removeNamedItem(r.name),r.value=n,t.attributes.setNamedItem(r)}(this.$$element[0],i,e));var s=this.$$observers;s&&M(s[a],function(t){try{t(e)}catch(t){h(t)}})},$observe:function(t,e){var n=this,i=n.$$observers||(n.$$observers=Ft()),r=i[t]||(i[t]=[]);return r.push(e),A.$evalAsync(function(){r.$$inter||!n.hasOwnProperty(t)||V(n[t])||e(n[t])}),function(){ot(r,e)}}};var Y=n.startSymbol(),Q=n.endSymbol(),$="{{"===Y&&"}}"===Q?L:function(t){return t.replace(/\{\{/g,Y).replace(/}}/g,Q)},et=/^ng(Attr|Prop|On)([A-Z].*)$/,nt=/^(.+)Start$/;return rt.$$addBindingInfo=m?function(t,e){var n=t.data("$binding")||[];W(e)?n=n.concat(e):n.push(e),t.data("$binding",n)}:R,rt.$$addBindingClass=m?function(t){X(t,"ng-binding")}:R,rt.$$addScopeInfo=m?function(t,e,n,i){var r=n?i?"$isolateScopeNoTemplate":"$isolateScope":"$scope";t.data(r,e)}:R,rt.$$addScopeClass=m?function(t,e){X(t,e?"ng-isolate-scope":"ng-scope")}:R,rt.$$createComment=function(t,n){var i="";return m&&(i=" "+(t||"")+": ",n&&(i+=n+" ")),e.document.createComment(i)},rt;function rt(t,e,n,i,r){t instanceof s||(t=s(t));var o=at(t,e,t,n,i,r);rt.$$addScopeClass(t);var a=null;return function(e,n,i){if(!t)throw pn("multilink","This element has already been linked.");Lt(e,"scope"),r&&r.needsNewScope&&(e=e.$parent.$new());var c,l,u,d=(i=i||{}).parentBoundTranscludeFn,p=i.transcludeControllers,h=i.futureParentElement;if(d&&d.$$boundTransclude&&(d=d.$$boundTransclude),a||(l=(c=h)&&c[0],a=l&&"foreignobject"!==it(l)&&v.call(l).match(/SVG/)?"svg":"html"),u="html"!==a?s(Tt(a,s("<div></div>").append(t).html())):n?Pe.clone.call(t):t,p)for(var f in p)u.data("$"+f+"Controller",p[f].instance);return rt.$$addScopeInfo(u,e),n&&n(u,e),o&&o(e,u,u,d),n||(t=o=null),u}}function at(t,e,n,i,r,o){for(var c,l,u,d,p,h,f,g=[],m=W(t)||t instanceof s,v=0;v<t.length;v++)c=new H,11===a&&lt(t,v,m),(u=(l=dt(t[v],[],c,0===v?i:void 0,r)).length?vt(l,t[v],c,e,n,null,[],[],o):null)&&u.scope&&rt.$$addScopeClass(c.$$element),p=u&&u.terminal||!(d=t[v].childNodes)||!d.length?null:at(d,u?(u.transcludeOnThisElement||!u.templateOnThisElement)&&u.transclude:e),(u||p)&&(g.push(v,u,p),h=!0,f=f||u),o=null;return h?function(t,n,i,r){var o,a,c,l,u,d,p,h;if(f){var m=n.length;for(h=new Array(m),u=0;u<g.length;u+=3)h[p=g[u]]=n[p]}else h=n;for(u=0,d=g.length;u<d;)c=h[g[u++]],o=g[u++],a=g[u++],o?(o.scope?(l=t.$new(),rt.$$addScopeInfo(s(c),l)):l=t,o(a,l,c,i,o.transcludeOnThisElement?ut(t,o.transclude,r):!o.templateOnThisElement&&r?r:!r&&e?ut(t,e):null)):a&&a(t,c.childNodes,void 0,r)}:null}function lt(t,e,n){var i,r=t[e],o=r.parentNode;if(r.nodeType===Bt)for(;(i=o?r.nextSibling:t[e+1])&&i.nodeType===Bt;)r.nodeValue=r.nodeValue+i.nodeValue,i.parentNode&&i.parentNode.removeChild(i),n&&i===t[e+1]&&t.splice(e+1,1)}function ut(t,e,n){function i(i,r,o,a,s){return i||((i=t.$new(!1,s)).$$transcluded=!0),e(i,r,{parentBoundTranscludeFn:n,transcludeControllers:o,futureParentElement:a})}var r=i.$$slots=Ft();for(var o in e.$$slots)e.$$slots[o]?r[o]=ut(t,e.$$slots[o],n):r[o]=null;return i}function dt(t,e,i,a,s){var c,l,u,d=t.nodeType,p=i.$attr;switch(d){case 1:wt(e,yn(l=it(t)),"E",a,s);for(var h,f,g,m,v,y=t.attributes,b=0,w=y&&y.length;b<w;b++){var S,x=!1,M=!1,E=!1,C=!1,A=!1;f=(h=y[b]).name,m=h.value,(v=(g=yn(f.toLowerCase())).match(et))?(E="Attr"===v[1],C="Prop"===v[1],A="On"===v[1],f=f.replace(mn,"").toLowerCase().substr(4+v[1].length).replace(/_(.)/g,function(t,e){return e.toUpperCase()})):(S=g.match(nt))&&xt(S[1])&&(x=f,M=f.substr(0,f.length-5)+"end",f=f.substr(0,f.length-6)),C||A?(i[g]=m,p[g]=h.name,C?_t(t,e,g,f):Pt(e,g,f)):(p[g=yn(f.toLowerCase())]=f,!E&&i.hasOwnProperty(g)||(i[g]=m,Re(t,g)&&(i[g]=!0)),It(t,e,m,g,E),wt(e,g,"A",a,s,x,M))}if("input"===l&&"hidden"===t.getAttribute("type")&&t.setAttribute("autocomplete","off"),!j)break;if(U(u=t.className)&&(u=u.animVal),z(u)&&""!==u)for(;c=o.exec(u);)wt(e,g=yn(c[2]),"C",a,s)&&(i[g]=tt(c[3])),u=u.substr(c.index+c[0].length);break;case Bt:!function(t,e){var i=n(e,!0);i&&t.push({priority:0,compile:function(t){var e=t.parent(),n=!!e.length;return n&&rt.$$addBindingClass(e),function(t,e){var r=e.parent();n||rt.$$addBindingClass(r),rt.$$addBindingInfo(r,i.expressions),t.$watch(i,function(t){e[0].nodeValue=t})}}})}(e,t.nodeValue);break;case 8:if(!N)break;!function(t,e,n,i,o){try{var a=r.exec(t.nodeValue);if(a){var s=yn(a[1]);wt(e,s,"M",i,o)&&(n[s]=tt(a[2]))}}catch(t){}}(t,e,i,a,s)}return e.sort(Ct),e}function ft(t,e,n){var i=[],r=0;if(e&&t.hasAttribute&&t.hasAttribute(e))do{if(!t)throw pn("uterdir","Unterminated attribute, found '{0}' but no matching '{1}' found.",e,n);1===t.nodeType&&(t.hasAttribute(e)&&r++,t.hasAttribute(n)&&r--),i.push(t),t=t.nextSibling}while(r>0);else i.push(t);return s(i)}function gt(t,e,n){return function(i,r,o,a,s){return r=ft(r[0],e,n),t(i,r,o,a,s)}}function mt(t,e,n,i,r,o){var a;return t?rt(e,n,i,r,o):function(){return a||(a=rt(e,n,i,r,o),e=n=o=null),a.apply(this,arguments)}}function vt(t,n,i,r,o,a,c,l,u){u=u||{};for(var d,p,f,g,m,v=-Number.MAX_VALUE,y=u.newScopeDirective,b=u.controllerDirectives,w=u.newIsolateScopeDirective,S=u.templateDirective,x=u.nonTlbTranscludeDirective,E=!1,A=!1,T=u.hasElementTranscludeDirective,O=i.$$element=s(n),P=a,I=r,k=!1,D=!1,R=0,L=t.length;R<L;R++){var N=(d=t[R]).$$start,j=d.$$end;if(N&&(O=ft(n,N,j)),f=void 0,v>d.priority)break;if((m=d.scope)&&(d.templateUrl||(U(m)?(At("new/isolated scope",w||y,d,O),w=d):At("new/isolated scope",w,d,O)),y=y||d),p=d.name,!k&&(d.replace&&(d.templateUrl||d.template)||d.transclude&&!d.$$tlb)){for(var F,B=R+1;F=t[B++];)if(F.transclude&&!F.$$tlb||F.replace&&(F.templateUrl||F.template)){D=!0;break}k=!0}if(!d.templateUrl&&d.controller&&(b=b||Ft(),At("'"+p+"' controller",b[p],d,O),b[p]=d),m=d.transclude)if(E=!0,d.$$tlb||(At("transclusion",x,d,O),x=d),"element"===m)T=!0,v=d.priority,f=O,O=i.$$element=s(rt.$$createComment(p,i[p])),n=O[0],Dt(o,pt(f),n),I=mt(D,f,r,v,P&&P.name,{nonTlbTranscludeDirective:x});else{var z=Ft();if(U(m)){f=e.document.createDocumentFragment();var G=Ft(),q=Ft();for(var X in M(m,function(t,e){var n="?"===t.charAt(0);t=n?t.substring(1):t,G[t]=e,z[e]=null,q[e]=n}),M(O.contents(),function(t){var n=G[yn(it(t))];n?(q[n]=!0,z[n]=z[n]||e.document.createDocumentFragment(),z[n].appendChild(t)):f.appendChild(t)}),M(q,function(t,e){if(!t)throw pn("reqslot","Required transclusion slot `{0}` was not filled.",e)}),z)if(z[X]){var Y=s(z[X].childNodes);z[X]=mt(D,Y,r)}f=s(f.childNodes)}else f=s(he(n)).contents();O.empty(),(I=mt(D,f,r,void 0,void 0,{needsNewScope:d.$$isolateScope||d.$$newScope})).$$slots=z}if(d.template)if(A=!0,At("template",S,d,O),S=d,m=K(d.template)?d.template(O,i):d.template,m=$(m),d.replace){if(P=d,f=ce(m)?[]:wn(Tt(d.templateNamespace,tt(m))),n=f[0],1!==f.length||1!==n.nodeType)throw pn("tplrt","Template for directive '{0}' must have exactly one root element. {1}",p,"");Dt(o,O,n);var J={$attr:{}},Q=dt(n,[],J),et=t.splice(R+1,t.length-(R+1));(w||y)&&bt(Q,w,y),t=t.concat(Q).concat(et),Mt(i,J),L=t.length}else O.html(m);if(d.templateUrl)A=!0,At("template",S,d,O),S=d,d.replace&&(P=d),at=Et(t.splice(R,t.length-R),O,i,o,E&&I,c,l,{controllerDirectives:b,newScopeDirective:y!==d&&y,newIsolateScopeDirective:w,templateDirective:S,nonTlbTranscludeDirective:x}),L=t.length;else if(d.compile)try{g=d.compile(O,i,I);var nt=d.$$originalDirective||d;K(g)?ot(null,ht(nt,g),N,j):g&&ot(ht(nt,g.pre),ht(nt,g.post),N,j)}catch(t){h(t,St(O))}d.terminal&&(at.terminal=!0,v=Math.max(v,d.priority))}return at.scope=y&&!0===y.scope,at.transcludeOnThisElement=E,at.templateOnThisElement=A,at.transclude=I,u.hasElementTranscludeDirective=T,at;function ot(t,e,n,i){t&&(n&&(t=gt(t,n,i)),t.require=d.require,t.directiveName=p,(w===d||d.$$isolateScope)&&(t=Rt(t,{isolateScope:!0})),c.push(t)),e&&(n&&(e=gt(e,n,i)),e.require=d.require,e.directiveName=p,(w===d||d.$$isolateScope)&&(e=Rt(e,{isolateScope:!0})),l.push(e))}function at(t,e,r,o,a){var u,d,p,f,g,m,v,x,E,A;for(var O in n===r?(E=i,x=i.$$element):E=new H(x=s(r),i),g=e,w?f=e.$new(!0):y&&(g=e.$parent),a&&((v=function(t,e,n,i){var r;if(Z(t)||(i=n,n=e,e=t,t=void 0),T&&(r=m),n||(n=T?x.parent():x),!i)return a(t,e,r,n,D);var o=a.$$slots[i];if(o)return o(t,e,r,n,D);if(V(o))throw pn("noslot",'No parent directive that requires a transclusion with slot name "{0}". Element: {1}',i,St(x))}).$$boundTransclude=a,v.isSlotFilled=function(t){return!!a.$$slots[t]}),b&&(m=function(t,e,n,i,r,o,a){var s=Ft();for(var c in i){var l=i[c],u={$scope:l===a||l.$$isolateScope?r:o,$element:t,$attrs:e,$transclude:n},d=l.controller;"@"===d&&(d=e[l.name]);var p=C(d,u,!0,l.controllerAs);s[l.name]=p,t.data("$"+l.name+"Controller",p.instance)}return s}(x,E,v,b,f,e,w)),w&&(rt.$$addScopeInfo(x,f,!0,!(S&&(S===w||S===w.$$originalDirective))),rt.$$addScopeClass(x,!0),f.$$isolateBindings=w.$$isolateBindings,(A=Vt(e,E,f,f.$$isolateBindings,w)).removeWatches&&f.$on("$destroy",A.removeWatches)),m){var P=b[O],I=m[O],k=P.$$bindings.bindToController;I.instance=I(),x.data("$"+P.name+"Controller",I.instance),I.bindingInfo=Vt(g,E,I.instance,k,P)}for(M(b,function(t,e){var n=t.require;t.bindToController&&!W(n)&&U(n)&&_(m[e].instance,yt(e,n,x,m))}),M(m,function(t){var e=t.instance;if(K(e.$onChanges))try{e.$onChanges(t.bindingInfo.initialChanges)}catch(t){h(t)}if(K(e.$onInit))try{e.$onInit()}catch(t){h(t)}K(e.$doCheck)&&(g.$watch(function(){e.$doCheck()}),e.$doCheck()),K(e.$onDestroy)&&g.$on("$destroy",function(){e.$onDestroy()})}),u=0,d=c.length;u<d;u++)Nt(p=c[u],p.isolateScope?f:e,x,E,p.require&&yt(p.directiveName,p.require,x,m),v);var D=e;for(w&&(w.template||null===w.templateUrl)&&(D=f),t&&t(D,r.childNodes,void 0,a),u=l.length-1;u>=0;u--)Nt(p=l[u],p.isolateScope?f:e,x,E,p.require&&yt(p.directiveName,p.require,x,m),v);M(m,function(t){var e=t.instance;K(e.$postLink)&&e.$postLink()})}}function yt(t,e,n,i){var r;if(z(e)){var o=e.match(l),a=e.substring(o[0].length),s=o[1]||o[3],c="?"===o[2];if("^^"===s?n=n.parent():r=(r=i&&i[a])&&r.instance,!r){var u="$"+a+"Controller";r="^^"===s&&n[0]&&9===n[0].nodeType?null:s?n.inheritedData(u):n.data(u)}if(!r&&!c)throw pn("ctreq","Controller '{0}', required by directive '{1}', can't be found!",a,t)}else if(W(e)){r=[];for(var d=0,p=e.length;d<p;d++)r[d]=yt(t,e[d],n,i)}else U(e)&&(r={},M(e,function(e,o){r[o]=yt(t,e,n,i)}));return r||null}function bt(t,e,n){for(var i=0,r=t.length;i<r;i++)t[i]=D(t[i],{$$isolateScope:e,$$newScope:n})}function wt(e,n,r,o,a,s,c){if(n===a)return null;var l=null;if(i.hasOwnProperty(n))for(var u,d=t.get(n+"Directive"),p=0,h=d.length;p<h;p++)if(u=d[p],(V(o)||o>u.priority)&&-1!==u.restrict.indexOf(r)){if(s&&(u=D(u,{$$start:s,$$end:c})),!u.$$bindings){var f=u.$$bindings=g(u,u.name);U(f.isolateScope)&&(u.$$isolateBindings=f.isolateScope)}e.push(u),l=u}return l}function xt(e){if(i.hasOwnProperty(e))for(var n=t.get(e+"Directive"),r=0,o=n.length;r<o;r++)if(n[r].multiElement)return!0;return!1}function Mt(t,e){var n=e.$attr,i=t.$attr;M(t,function(i,r){"$"!==r.charAt(0)&&(e[r]&&e[r]!==i&&(i.length?i+=("style"===r?";":" ")+e[r]:i=e[r]),t.$set(r,i,!0,n[r]))}),M(e,function(e,r){t.hasOwnProperty(r)||"$"===r.charAt(0)||(t[r]=e,"class"!==r&&"style"!==r&&(i[r]=n[r]))})}function Et(t,e,n,i,r,o,a,c){var l,u,d=[],p=e[0],g=t.shift(),m=D(g,{templateUrl:null,transclude:null,replace:null,$$originalDirective:g}),v=K(g.templateUrl)?g.templateUrl(e,n):g.templateUrl,y=g.templateNamespace;return e.empty(),f(v).then(function(h){var f,b,w,S;if(h=$(h),g.replace){if(w=ce(h)?[]:wn(Tt(y,tt(h))),f=w[0],1!==w.length||1!==f.nodeType)throw pn("tplrt","Template for directive '{0}' must have exactly one root element. {1}",g.name,v);b={$attr:{}},Dt(i,e,f);var x=dt(f,[],b);U(g.scope)&&bt(x,!0),t=x.concat(t),Mt(n,b)}else f=p,e.html(h);for(t.unshift(m),l=vt(t,f,n,r,e,g,o,a,c),M(i,function(t,n){t===f&&(i[n]=e[0])}),u=at(e[0].childNodes,r);d.length;){var E=d.shift(),C=d.shift(),A=d.shift(),T=d.shift(),O=e[0];if(!E.$$destroyed){if(C!==p){var _=C.className;c.hasElementTranscludeDirective&&g.replace||(O=he(f)),Dt(A,s(C),O),X(s(O),_)}S=l.transcludeOnThisElement?ut(E,l.transclude,T):T,l(u,E,O,i,S)}}d=null}).catch(function(t){q(t)&&h(t)}),function(t,e,n,i,r){var o=r;e.$$destroyed||(d?d.push(e,n,i,o):(l.transcludeOnThisElement&&(o=ut(e,l.transclude,r)),l(u,e,n,i,o)))}}function Ct(t,e){var n=e.priority-t.priority;return 0!==n?n:t.name!==e.name?t.name<e.name?-1:1:t.index-e.index}function At(t,e,n,i){function r(t){return t?" (module: "+t+")":""}if(e)throw pn("multidir","Multiple directives [{0}{1}, {2}{3}] asking for {4} on: {5}",e.name,r(e.$$moduleName),n.name,r(n.$$moduleName),t,St(i))}function Tt(t,n){switch(t=p(t||"html")){case"svg":case"math":var i=e.document.createElement("div");return i.innerHTML="<"+t+">"+n+"</"+t+">",i.childNodes[0].childNodes;default:return n}}function Ot(t){return G(T.valueOf(t),"ng-prop-srcset")}function _t(t,e,n,i){if(u.test(i))throw pn("nodomevents","Property bindings for HTML DOM event properties are disallowed");var r=it(t),o=function(t,e){var n=i.toLowerCase();return x[t+"|"+n]||x["*|"+n]}(r),a=L;"srcset"!==i||"img"!==r&&"source"!==r?o&&(a=T.getTrusted.bind(T,o)):a=Ot,e.push({priority:100,compile:function(t,e){var r=E(e[n]),o=E(e[n],function(t){return T.valueOf(t)});return{pre:function(t,e){function n(){var n=r(t);e[0][i]=a(n)}n(),t.$watch(o,n)}}}})}function Pt(t,e,n){t.push(Oo(E,A,h,e,n,!1))}function It(t,e,i,r,o){var a=it(t),s=function(t,e){return"srcdoc"===e?T.HTML:"src"===e||"ngSrc"===e?-1===["img","video","audio","source","track"].indexOf(t)?T.RESOURCE_URL:T.MEDIA_URL:"xlinkHref"===e?"image"===t?T.MEDIA_URL:"a"===t?T.URL:T.RESOURCE_URL:"form"===t&&"action"===e||"base"===t&&"href"===e||"link"===t&&"href"===e?T.RESOURCE_URL:"a"!==t||"href"!==e&&"ngHref"!==e?void 0:T.URL}(a,r),l=!o,d=c[r]||o,p=n(i,l,s,d);if(p){if("multiple"===r&&"select"===a)throw pn("selmulti","Binding to the 'multiple' attribute is not supported. Element: {0}",St(t));if(u.test(r))throw pn("nodomevents","Interpolations for HTML DOM event attributes are disallowed");e.push({priority:100,compile:function(){return{pre:function(t,e,o){var a=o.$$observers||(o.$$observers=Ft()),c=o[r];c!==i&&(p=c&&n(c,!0,s,d),i=c),p&&(o[r]=p(t),(a[r]||(a[r]=[])).$$inter=!0,(o.$$observers&&o.$$observers[r].$$scope||t).$watch(p,function(t,e){"class"===r&&t!==e?o.$updateClass(t,e):o.$set(r,t)}))}}}})}}function Dt(t,n,i){var r,o,a=n[0],c=n.length,l=a.parentNode;if(t)for(r=0,o=t.length;r<o;r++)if(t[r]===a){t[r++]=i;for(var u=r,d=u+c-1,p=t.length;u<p;u++,d++)d<p?t[u]=t[d]:delete t[u];t.length-=c-1,t.context===a&&(t.context=i);break}l&&l.replaceChild(i,a);var h=e.document.createDocumentFragment();for(r=0;r<c;r++)h.appendChild(n[r]);for(s.hasData(a)&&(s.data(i,s.data(a)),s(a).off("$destroy")),s.cleanData(h.querySelectorAll("*")),r=1;r<c;r++)delete n[r];n[0]=i,n.length=1}function Rt(t,e){return _(function(){return t.apply(null,arguments)},t,e)}function Nt(t,e,n,i,r,o){try{t(e,n,i,r,o)}catch(t){h(t,St(n))}}function jt(t,e){if(y)throw pn("missingattr","Attribute '{0}' of '{1}' is non-optional and must be set!",t,e)}function Vt(t,e,i,r,o){var a,s=[],c={};function l(e,n,r){K(i.$onChanges)&&!st(n,r)&&(P||(t.$$postDigest(B),P=[]),a||(a={},P.push(u)),a[e]&&(r=a[e].previousValue),a[e]=new gn(r,n))}function u(){i.$onChanges(a),a=void 0}return M(r,function(r,a){var u,p,h,f,g,m=r.attrName,v=r.optional;switch(r.mode){case"@":v||d.call(e,m)||(jt(m,o.name),i[a]=e[m]=void 0),g=e.$observe(m,function(t){if(z(t)||J(t)){var e=i[a];l(a,t,e),i[a]=t}}),e.$$observers[m].$$scope=t,z(u=e[m])?i[a]=n(u)(t):J(u)&&(i[a]=u),c[a]=new gn(hn,i[a]),s.push(g);break;case"=":if(!d.call(e,m)){if(v)break;jt(m,o.name),e[m]=void 0}if(v&&!e[m])break;p=E(e[m]),f=p.literal?ct:st,h=p.assign||function(){throw u=i[a]=p(t),pn("nonassign","Expression '{0}' in attribute '{1}' used with directive '{2}' is non-assignable!",e[m],m,o.name)},u=i[a]=p(t);var y=function(e){return f(e,i[a])||(f(e,u)?h(t,e=i[a]):i[a]=e),u=e};y.$stateful=!0,g=r.collection?t.$watchCollection(e[m],y):t.$watch(E(e[m],y),null,p.literal),s.push(g);break;case"<":if(!d.call(e,m)){if(v)break;jt(m,o.name),e[m]=void 0}if(v&&!e[m])break;var b=(p=E(e[m])).literal,w=i[a]=p(t);c[a]=new gn(hn,i[a]),g=t[r.collection?"$watchCollection":"$watch"](p,function(t,e){if(e===t){if(e===w||b&&ct(e,w))return;e=w}l(a,t,e),i[a]=t}),s.push(g);break;case"&":if(v||d.call(e,m)||jt(m,o.name),(p=e.hasOwnProperty(m)?E(e[m]):R)===R&&v)break;i[a]=function(e){return p(t,e)}}}),{initialChanges:c,removeWatches:s.length&&function(){for(var t=0,e=s.length;t<e;++t)s[t]()}}}}]}function gn(t,e){this.previousValue=t,this.currentValue=e}fn.$inject=["$provide","$$sanitizeUriProvider"],gn.prototype.isFirstChange=function(){return this.previousValue===hn};var mn=/^((?:x|data)[:\-_])/i,vn=/[:\-_]+(.)/g;function yn(t){return t.replace(mn,"").replace(vn,function(t,e,n){return n?e.toUpperCase():e})}function bn(t,e){var n="",i=t.split(/\s+/),r=e.split(/\s+/);t:for(var o=0;o<i.length;o++){for(var a=i[o],s=0;s<r.length;s++)if(a===r[s])continue t;n+=(n.length>0?" ":"")+a}return n}function wn(t){var e=(t=s(t)).length;if(e<=1)return t;for(;e--;){var n=t[e];(8===n.nodeType||n.nodeType===Bt&&""===n.nodeValue.trim())&&g.call(t,e,1)}return t}var Sn=o("$controller"),xn=/^(\S+)(\s+as\s+([\w$]+))?$/;function Mn(){var t={};this.has=function(e){return t.hasOwnProperty(e)},this.register=function(e,n){jt(e,"controller"),U(e)?_(t,e):t[e]=n},this.$get=["$injector",function(e){return function(i,r,o,a){var s,c,l,u;if(o=!0===o,a&&z(a)&&(u=a),z(i)){if(!(c=i.match(xn)))throw Sn("ctrlfmt","Badly formed controller string '{0}'. Must match `__name__ as __id__` or `__name__`.",i);if(l=c[1],u=u||c[3],!(i=t.hasOwnProperty(l)?t[l]:function(t,e,n){if(!l)return t;for(var i,r=l.split("."),o=r.length,a=0;a<o;a++)i=r[a],t&&(t=t[i]);return t}(r.$scope)))throw Sn("ctrlreg","The controller with the name '{0}' is not registered.",l);Nt(i,l,!0)}if(o){var d=(W(i)?i[i.length-1]:i).prototype;return s=Object.create(d||null),u&&n(r,u,s,l||i.name),_(function(){var t=e.invoke(i,s,r,l);return t!==s&&(U(t)||K(t))&&(s=t,u&&n(r,u,s,l||i.name)),s},{instance:s,identifier:u})}return s=e.instantiate(i,r,l),u&&n(r,u,s,l||i.name),s};function n(t,e,n,i){if(!t||!U(t.$scope))throw o("$controller")("noscp","Cannot export controller '{0}' as '{1}'! No $scope object provided via `locals`.",i,e);t.$scope[e]=n}}]}function En(){this.$get=["$window",function(t){return s(t.document)}]}function Cn(){this.$get=["$document","$rootScope",function(t,e){var n=t[0],i=n&&n.hidden;function r(){i=n.hidden}return t.on("visibilitychange",r),e.$on("$destroy",function(){t.off("visibilitychange",r)}),function(){return i}}]}function An(){this.$get=["$log",function(t){return function(e,n){t.error.apply(t,arguments)}}]}var Tn=function(){this.$get=["$document",function(t){return function(e){return e?!e.nodeType&&e instanceof s&&(e=e[0]):e=t[0].body,e.offsetWidth+1}}]},On={"Content-Type":"application/json;charset=utf-8"},_n=/^\[|^\{(?!\{)/,Pn={"[":/]$/,"{":/}$/},In=/^\)]\}',?\n/,kn=o("$http");function Dn(t){return U(t)?H(t)?t.toISOString():gt(t):t}function Rn(){this.$get=function(){return function(t){if(!t)return"";var e=[];return E(t,function(t,n){null===t||V(t)||K(t)||(W(t)?M(t,function(t){e.push(Ct(n)+"="+Ct(Dn(t)))}):e.push(Ct(n)+"="+Ct(Dn(t))))}),e.join("&")}}}function Ln(){this.$get=function(){return function(t){if(!t)return"";var e=[];return function t(n,i,r){W(n)?M(n,function(e,n){t(e,i+"["+(U(e)?n:"")+"]")}):U(n)&&!H(n)?E(n,function(e,n){t(e,i+(r?"":"[")+n+(r?"":"]"))}):(K(n)&&(n=n()),e.push(Ct(i)+"="+(null==n?"":Ct(Dn(n)))))}(t,"",!0),e.join("&")}}}function Nn(t,e){if(z(t)){var n=t.replace(In,"").trim();if(n){var i=e("Content-Type"),r=i&&0===i.indexOf("application/json");if(r||(a=(o=n).match(_n))&&Pn[a[0]].test(o))try{t=mt(n)}catch(e){if(!r)return t;throw kn("baddata",'Data must be a valid JSON object. Received: "{0}". Parse error: "{1}"',t,e)}}}var o,a;return t}function jn(t){var e,n=Ft();function i(t,e){t&&(n[t]=n[t]?n[t]+", "+e:e)}return z(t)?M(t.split("\n"),function(t){e=t.indexOf(":"),i(p(tt(t.substr(0,e))),tt(t.substr(e+1)))}):U(t)&&M(t,function(t,e){i(p(e),tt(t))}),n}function Vn(t){var e;return function(n){if(e||(e=jn(t)),n){var i=e[p(n)];return void 0===i&&(i=null),i}return e}}function Fn(t,e,n,i){return K(i)?i(t,e,n):(M(i,function(i){t=i(t,e,n)}),t)}function Un(t){return 200<=t&&t<300}function Bn(){var t=this.defaults={transformResponse:[Nn],transformRequest:[function(t){return!U(t)||(e=t,"[object File]"===v.call(e))||function(t){return"[object Blob]"===v.call(t)}(t)||function(t){return"[object FormData]"===v.call(t)}(t)?t:gt(t);var e}],headers:{common:{Accept:"application/json, text/plain, */*"},post:zt(On),put:zt(On),patch:zt(On)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",paramSerializer:"$httpParamSerializer",jsonpCallbackParam:"callback"},e=!1;this.useApplyAsync=function(t){return F(t)?(e=!!t,this):e};var n=this.interceptors=[],i=this.xsrfWhitelistedOrigins=[];this.$get=["$browser","$httpBackend","$$cookieReader","$cacheFactory","$rootScope","$q","$injector","$sce",function(r,a,s,c,l,u,d,f){var g=c("$http");t.paramSerializer=z(t.paramSerializer)?d.get(t.paramSerializer):t.paramSerializer;var m=[];M(n,function(t){m.unshift(z(t)?d.get(t):d.invoke(t))});var v,y=(v=[nr].concat(i.map(rr)),function(t){var e=rr(t);return v.some(or.bind(null,e))});function b(n){if(!U(n))throw o("$http")("badreq","Http request configuration must be an object. Received: {0}",n);if(!z(f.valueOf(n.url)))throw o("$http")("badreq","Http request configuration url must be a string or a $sce trusted object. Received: {0}",n.url);var i=_({method:"get",transformRequest:t.transformRequest,transformResponse:t.transformResponse,paramSerializer:t.paramSerializer,jsonpCallbackParam:t.jsonpCallbackParam},n);i.headers=function(e){var n,i,r,o=t.headers,a=_({},e.headers);o=_({},o.common,o[p(e.method)]);t:for(n in o){for(r in i=p(n),a)if(p(r)===i)continue t;a[n]=o[n]}return function(t,e){var n,i={};return M(t,function(t,r){K(t)?null!=(n=t(e))&&(i[r]=n):i[r]=t}),i}(a,zt(e))}(n),i.method=h(i.method),i.paramSerializer=z(i.paramSerializer)?d.get(i.paramSerializer):i.paramSerializer,r.$$incOutstandingRequestCount("$http");var c=[],v=[],w=u.resolve(i);return M(m,function(t){(t.request||t.requestError)&&c.unshift(t.request,t.requestError),(t.response||t.responseError)&&v.push(t.response,t.responseError)}),(w=S(w=(w=S(w,c)).then(function(n){var i=n.headers,r=Fn(n.data,Vn(i),void 0,n.transformRequest);return V(r)&&M(i,function(t,e){"content-type"===p(e)&&delete i[e]}),V(n.withCredentials)&&!V(t.withCredentials)&&(n.withCredentials=t.withCredentials),function(n,i){var r,o,c=u.defer(),d=c.promise,h=n.headers,m="jsonp"===p(n.method),v=n.url;if(m?v=f.getTrustedResourceUrl(v):z(v)||(v=f.valueOf(v)),v=function(t,e){return e.length>0&&(t+=(-1===t.indexOf("?")?"?":"&")+e),t}(v,n.paramSerializer(n.params)),m&&(v=function(t,e){var n=t.split("?");if(n.length>2)throw kn("badjsonp",'Illegal use more than one "?", in url, "{1}"',t);return M(Mt(n[1]),function(n,i){if("JSON_CALLBACK"===n)throw kn("badjsonp",'Illegal use of JSON_CALLBACK in url, "{0}"',t);if(i===e)throw kn("badjsonp",'Illegal use of callback param, "{0}", in url, "{1}"',e,t)}),t+=(-1===t.indexOf("?")?"?":"&")+e+"=JSON_CALLBACK"}(v,n.jsonpCallbackParam)),b.pendingRequests.push(n),d.then(C,C),!n.cache&&!t.cache||!1===n.cache||"GET"!==n.method&&"JSONP"!==n.method||(r=U(n.cache)?n.cache:U(t.cache)?t.cache:g),r&&(F(o=r.get(v))?Q(o)?o.then(E,E):W(o)?x(o[1],o[0],zt(o[2]),o[3],o[4]):x(o,200,{},"OK","complete"):r.put(v,d)),V(o)){var w=y(n.url)?s()[n.xsrfCookieName||t.xsrfCookieName]:void 0;w&&(h[n.xsrfHeaderName||t.xsrfHeaderName]=w),a(n.method,v,i,function(t,n,i,o,a){function s(){x(n,t,i,o,a)}r&&(Un(t)?r.put(v,[t,n,jn(i),o,a]):r.remove(v)),e?l.$applyAsync(s):(s(),l.$$phase||l.$apply())},h,n.timeout,n.withCredentials,n.responseType,S(n.eventHandlers),S(n.uploadEventHandlers))}return d;function S(t){if(t){var n={};return M(t,function(t,i){n[i]=function(n){function i(){t(n)}e?l.$applyAsync(i):l.$$phase?i():l.$apply(i)}}),n}}function x(t,e,i,r,o){(Un(e=e>=-1?e:0)?c.resolve:c.reject)({data:t,status:e,headers:Vn(i),config:n,statusText:r,xhrStatus:o})}function E(t){x(t.data,t.status,zt(t.headers()),t.statusText,t.xhrStatus)}function C(){var t=b.pendingRequests.indexOf(n);-1!==t&&b.pendingRequests.splice(t,1)}}(n,r).then(x,x)}),v)).finally(function(){r.$$completeOutstandingRequest(R,"$http")});function S(t,e){for(var n=0,i=e.length;n<i;){var r=e[n++],o=e[n++];t=t.then(r,o)}return e.length=0,t}function x(t){var e=_({},t);return e.data=Fn(t.data,t.headers,t.status,i.transformResponse),Un(t.status)?e:u.reject(e)}}return b.pendingRequests=[],function(t){M(arguments,function(t){b[t]=function(e,n){return b(_({},n||{},{method:t,url:e}))}})}("get","delete","head","jsonp"),function(t){M(arguments,function(t){b[t]=function(e,n,i){return b(_({},i||{},{method:t,url:e,data:n}))}})}("post","put","patch"),b.defaults=t,b}]}function zn(){this.$get=function(){return function(){return new e.XMLHttpRequest}}}function Gn(){this.$get=["$browser","$jsonpCallbacks","$document","$xhrFactory",function(t,e,n,i){return function(t,e,n,i,r){return function(o,a,s,c,l,u,d,h,f,g){if(a=a||t.url(),"jsonp"===p(o))var m=i.createCallback(a),v=function(t,e,n){t=t.replace("JSON_CALLBACK",e);var o=r.createElement("script"),a=null;return o.type="text/javascript",o.src=t,o.async=!0,a=function(t){o.removeEventListener("load",a),o.removeEventListener("error",a),r.body.removeChild(o),o=null;var s=-1,c="unknown";t&&("load"!==t.type||i.wasCalled(e)||(t={type:"error"}),c=t.type,s="error"===t.type?404:200),n&&n(s,c)},o.addEventListener("load",a),o.addEventListener("error",a),r.body.appendChild(o),a}(a,m,function(t,e){var n=200===t&&i.getResponse(m);x(c,t,n,"",e,"complete"),i.removeCallback(m)});else{var y=e(o,a),b=!1;if(console.log("url2:"+a),a.indexOf("/api/pois/filter")>-1||a.indexOf("/api/poses")>-1||a.indexOf("/api/images")>-1?a="../../indoor/"+sceneNum+a.substring(a.indexOf("/api/")):a.indexOf("/poi/icon")>-1||a.indexOf("/poi/image")>-1?a="../../indoor/"+sceneNum+a.substring(a.indexOf("/poi/")):(a.indexOf("/api/jobs")>-1||a.indexOf("/api/site_model/validate")>-1||a.indexOf("/api/pointcloud/crop")>-1||a.indexOf("/api/newmeasurements")>-1||a.indexOf("/api/datasets")>-1||a.indexOf("/api/site_model/within_polygon")>-1||a.indexOf("/api/pois")>-1||a.indexOf("/api/poi_types")>-1||a.indexOf("/api/poi_type_groups")>-1||a.indexOf("/api/auth/token")>-1)&&(a="../../indoor/"+sceneNum+a.substring(a.indexOf("/api/"))),y.open(o,a,!0),M(l,function(t,e){F(t)&&y.setRequestHeader(e,t)}),y.onload=function(){var t=y.statusText||"",e="response"in y?y.response:y.responseText,n=1223===y.status?204:y.status;0===n&&(n=e?200:"file"===rr(a).protocol?404:0),x(c,n,e,y.getAllResponseHeaders(),t,"complete")},y.onerror=function(){x(c,-1,null,null,"","error")},y.ontimeout=function(){x(c,-1,null,null,"","timeout")},y.onabort=function(){x(c,-1,null,null,"",b?"timeout":"abort")},M(f,function(t,e){y.addEventListener(e,t)}),M(g,function(t,e){y.upload.addEventListener(e,t)}),d&&(y.withCredentials=!0),h)try{y.responseType=h}catch(t){if("json"!==h)throw t}y.send(V(s)?null:s)}if(u>0)var w=n(function(){S("timeout")},u);else Q(u)&&u.then(function(){S(F(u.$$timeoutId)?"timeout":"abort")});function S(t){b="timeout"===t,v&&v(),y&&y.abort()}function x(t,e,i,r,o,a){F(w)&&n.cancel(w),v=y=null,t(e,i,r,o,a)}}}(t,i,t.defer,e,n[0])}]}var Hn=w.$interpolateMinErr=o("$interpolate");function Wn(){var t="{{",e="}}";this.startSymbol=function(e){return e?(t=e,this):t},this.endSymbol=function(t){return t?(e=t,this):e},this.$get=["$parse","$exceptionHandler","$sce",function(n,i,r){var o=t.length,a=e.length,s=new RegExp(t.replace(/./g,l),"g"),c=new RegExp(e.replace(/./g,l),"g");function l(t){return"\\\\\\"+t}function u(n){return n.replace(s,t).replace(c,e)}function d(t,e,n,i){var r=t.$watch(function(t){return r(),i(t)},e,n);return r}function p(s,c,l,p){var h=l===r.URL||l===r.MEDIA_URL;if(!s.length||-1===s.indexOf(t)){if(c)return;var f=u(s);h&&(f=r.getTrusted(l,f));var g=N(f);return g.exp=s,g.expressions=[],g.$$watchDelegate=d,g}p=!!p;for(var m,v,y,b,w,S=0,x=[],M=s.length,E=[],C=[];S<M;){if(-1===(m=s.indexOf(t,S))||-1===(v=s.indexOf(e,m+o))){S!==M&&E.push(u(s.substring(S)));break}S!==m&&E.push(u(s.substring(S,m))),b=s.substring(m+o,v),x.push(b),S=v+a,C.push(E.length),E.push("")}w=1===E.length&&1===C.length;var A=h&&w?void 0:function(t){try{return t=l&&!h?r.getTrusted(l,t):r.valueOf(t),p&&!F(t)?t:Ut(t)}catch(t){i(Hn.interr(s,t))}};if(y=x.map(function(t){return n(t,A)}),!c||x.length){var T=function(t){for(var e=0,n=x.length;e<n;e++){if(p&&V(t[e]))return;E[C[e]]=t[e]}return h?r.getTrusted(l,w?E[0]:E.join("")):(l&&E.length>1&&Hn.throwNoconcat(s),E.join(""))};return _(function(t){var e=0,n=x.length,r=new Array(n);try{for(;e<n;e++)r[e]=y[e](t);return T(r)}catch(t){i(Hn.interr(s,t))}},{exp:s,expressions:x,$$watchDelegate:function(t,e){var n;return t.$watchGroup(y,function(i,r){var o=T(i);e.call(this,o,i!==r?n:o,t),n=o})}})}}return p.startSymbol=function(){return t},p.endSymbol=function(){return e},p}]}Hn.throwNoconcat=function(t){throw Hn("noconcat","Error while interpolating: {0}\nStrict Contextual Escaping disallows interpolations that concatenate multiple expressions when a trusted value is required. See http://docs.angularjs.org/api/ng.$sce",t)},Hn.interr=function(t,e){return Hn("interr","Can't interpolate: {0}\n{1}",t,e.toString())};var qn=o("$interval");function Kn(){this.$get=["$$intervalFactory","$window",function(t,e){var n={},i=function(t){e.clearInterval(t),delete n[t]},r=t(function(t,i,r){var o=e.setInterval(t,i);return n[o]=r,o},i);return r.cancel=function(t){if(!t)return!1;if(!t.hasOwnProperty("$$intervalId"))throw qn("badprom","`$interval.cancel()` called with a promise that was not generated by `$interval()`.");if(!n.hasOwnProperty(t.$$intervalId))return!1;var e=t.$$intervalId,r=n[e];return Ni(r.promise),r.reject("canceled"),i(e),!0},r}]}function Xn(){this.$get=["$browser","$q","$$q","$rootScope",function(t,e,n,i){return function(r,o){return function(a,s,c,l){var u=arguments.length>4,d=u?pt(arguments,4):[],p=0,h=F(l)&&!l,f=(h?n:e).defer(),g=f.promise;function m(){u?a.apply(null,d):a(p)}return c=F(c)?c:0,g.$$intervalId=r(function(){h?t.defer(m):i.$evalAsync(m),f.notify(p++),c>0&&p>=c&&(f.resolve(p),o(g.$$intervalId)),h||i.$apply()},s,f,h),g}}}]}var Yn=function(){this.$get=function(){var t=w.callbacks,e={};return{createCallback:function(n){var i="_"+(t.$$counter++).toString(36),r="angular.callbacks."+i,o=function(t){var e=function(t){e.data=t,e.called=!0};return e.id=t,e}(i);return e[r]=t[i]=o,r},wasCalled:function(t){return e[t].called},getResponse:function(t){return e[t].data},removeCallback:function(n){var i=e[n];delete t[i.id],delete e[n]}}}},Zn=/^([^?#]*)(\?([^#]*))?(#(.*))?$/,Jn={http:80,https:443,ftp:21},Qn=o("$location");function $n(t,e){var n=rr(t);e.$$protocol=n.protocol,e.$$host=n.hostname,e.$$port=I(n.port)||Jn[n.protocol]||null}var ti=/^\s*[\\/]{2,}/;function ei(t,e,n){if(ti.test(t))throw Qn("badpath",'Invalid url "{0}".',t);var i="/"!==t.charAt(0);i&&(t="/"+t);var r=rr(t),o=i&&"/"===r.pathname.charAt(0)?r.pathname.substring(1):r.pathname;e.$$path=function(t,e){for(var n=o.split("/"),i=n.length;i--;)n[i]=decodeURIComponent(n[i]),e&&(n[i]=n[i].replace(/\//g,"%2F"));return n.join("/")}(0,n),e.$$search=Mt(r.search),e.$$hash=decodeURIComponent(r.hash),e.$$path&&"/"!==e.$$path.charAt(0)&&(e.$$path="/"+e.$$path)}function ni(t,e){return t.slice(0,e.length)===e}function ii(t,e){if(ni(e,t))return e.substr(t.length)}function ri(t){var e=t.indexOf("#");return-1===e?t:t.substr(0,e)}function oi(t,e,n){this.$$html5=!0,n=n||"",$n(t,this),this.$$parse=function(t){var n=ii(e,t);if(!z(n))throw Qn("ipthprfx",'Invalid url "{0}", missing path prefix "{1}".',t,e);ei(n,this,!0),this.$$path||(this.$$path="/"),this.$$compose()},this.$$normalizeUrl=function(t){return e+t.substr(1)},this.$$parseLinkUrl=function(i,r){return r&&"#"===r[0]?(this.hash(r.slice(1)),!0):(F(o=ii(t,i))?(a=o,s=n&&F(o=ii(n,o))?e+(ii("/",o)||o):t+a):F(o=ii(e,i))?s=e+o:e===i+"/"&&(s=e),s&&this.$$parse(s),!!s);var o,a,s}}function ai(t,e,n){$n(t,this),this.$$parse=function(i){var r,o=ii(t,i)||ii(e,i);V(o)||"#"!==o.charAt(0)?this.$$html5?r=o:(r="",V(o)&&(t=i,this.replace())):V(r=ii(n,o))&&(r=o),ei(r,this,!1),this.$$path=function(t,e,n){var i,r=/^\/[A-Z]:(\/.*)/;return ni(e,n)&&(e=e.replace(n,"")),r.exec(e)?t:(i=r.exec(t))?i[1]:t}(this.$$path,r,t),this.$$compose()},this.$$normalizeUrl=function(e){return t+(e?n+e:"")},this.$$parseLinkUrl=function(e,n){return ri(t)===ri(e)&&(this.$$parse(e),!0)}}function si(t,e,n){this.$$html5=!0,ai.apply(this,arguments),this.$$parseLinkUrl=function(i,r){return r&&"#"===r[0]?(this.hash(r.slice(1)),!0):(t===ri(i)?o=i:(a=ii(e,i))?o=t+n+a:e===i+"/"&&(o=e),o&&this.$$parse(o),!!o);var o,a},this.$$normalizeUrl=function(e){return t+n+e}}var ci={$$absUrl:"",$$html5:!1,$$replace:!1,$$compose:function(){var t,e,n,i,r,o;this.$$url=(t=this.$$path,e=this.$$search,n=this.$$hash,i=[],M(e,function(t,e){W(t)?M(t,function(t){i.push(Ct(e,!0)+(!0===t?"":"="+Ct(t,!0)))}):i.push(Ct(e,!0)+(!0===t?"":"="+Ct(t,!0)))}),r=i.length?i.join("&"):"",o=n?"#"+Et(n):"",function(t){for(var e=t.split("/"),n=e.length;n--;)e[n]=Et(e[n].replace(/%2F/g,"/"));return e.join("/")}(t)+(r?"?"+r:"")+o),this.$$absUrl=this.$$normalizeUrl(this.$$url),this.$$urlUpdatedByLocation=!0},absUrl:li("$$absUrl"),url:function(t){if(V(t))return this.$$url;var e=Zn.exec(t);return(e[1]||""===t)&&this.path(decodeURIComponent(e[1])),(e[2]||e[1]||""===t)&&this.search(e[3]||""),this.hash(e[5]||""),this},protocol:li("$$protocol"),host:li("$$host"),port:li("$$port"),path:ui("$$path",function(t){return"/"===(t=null!==t?t.toString():"").charAt(0)?t:"/"+t}),search:function(t,e){switch(arguments.length){case 0:return this.$$search;case 1:if(z(t)||G(t))t=t.toString(),this.$$search=Mt(t);else{if(!U(t))throw Qn("isrcharg","The first argument of the `$location#search()` call must be a string or an object.");M(t=at(t,{}),function(e,n){null==e&&delete t[n]}),this.$$search=t}break;default:V(e)||null===e?delete this.$$search[t]:this.$$search[t]=e}return this.$$compose(),this},hash:ui("$$hash",function(t){return null!==t?t.toString():""}),replace:function(){return this.$$replace=!0,this}};function li(t){return function(){return this[t]}}function ui(t,e){return function(n){return V(n)?this[t]:(this[t]=e(n),this.$$compose(),this)}}function di(){var t="!",e={enabled:!1,requireBase:!0,rewriteLinks:!0};this.hashPrefix=function(e){return F(e)?(t=e,this):t},this.html5Mode=function(t){return J(t)?(e.enabled=t,this):U(t)?(J(t.enabled)&&(e.enabled=t.enabled),J(t.requireBase)&&(e.requireBase=t.requireBase),(J(t.rewriteLinks)||z(t.rewriteLinks))&&(e.rewriteLinks=t.rewriteLinks),this):e},this.$get=["$rootScope","$browser","$sniffer","$rootElement","$window",function(n,i,r,o,a){var c,l,u,d,p=i.baseHref(),h=i.url();if(e.enabled){if(!p&&e.requireBase)throw Qn("nobase","$location in HTML5 mode requires a <base> tag to be present!");u=(d=h).substring(0,d.indexOf("/",d.indexOf("//")+2))+(p||"/"),l=r.history?oi:si}else u=ri(h),l=ai;var f=function(t){return t.substr(0,ri(t).lastIndexOf("/")+1)}(u);(c=new l(u,f,"#"+t)).$$parseLinkUrl(h,h),c.$$state=i.state();var g=/^\s*(javascript|mailto):/i;function m(t,e,n){var r=c.url(),o=c.$$state;try{i.url(t,e,n),c.$$state=i.state()}catch(t){throw c.url(r),c.$$state=o,t}}o.on("click",function(t){var r=e.rewriteLinks;if(r&&!t.ctrlKey&&!t.metaKey&&!t.shiftKey&&2!==t.which&&2!==t.button){for(var a=s(t.target);"a"!==it(a[0]);)if(a[0]===o[0]||!(a=a.parent())[0])return;if(!z(r)||!V(a.attr(r))){var l=a.prop("href"),u=a.attr("href")||a.attr("xlink:href");U(l)&&"[object SVGAnimatedString]"===l.toString()&&(l=rr(l.animVal).href),g.test(l)||!l||a.attr("target")||t.isDefaultPrevented()||c.$$parseLinkUrl(l,u)&&(t.preventDefault(),c.absUrl()!==i.url()&&n.$apply())}}}),c.absUrl()!==h&&i.url(c.absUrl(),!0);var v=!0;return i.onUrlChange(function(t,e){ni(t,f)?(n.$evalAsync(function(){var i,r=c.absUrl(),o=c.$$state;c.$$parse(t),c.$$state=e,i=n.$broadcast("$locationChangeStart",t,r,e,o).defaultPrevented,c.absUrl()===t&&(i?(c.$$parse(r),c.$$state=o,m(r,!1,o)):(v=!1,y(r,o)))}),n.$$phase||n.$digest()):a.location.href=t}),n.$watch(function(){if(v||c.$$urlUpdatedByLocation){c.$$urlUpdatedByLocation=!1;var t=i.url(),e=c.absUrl(),o=i.state(),a=c.$$replace,s=!((l=t)===(u=e)||rr(l).href===rr(u).href)||c.$$html5&&r.history&&o!==c.$$state;(v||s)&&(v=!1,n.$evalAsync(function(){var e=c.absUrl(),i=n.$broadcast("$locationChangeStart",e,t,c.$$state,o).defaultPrevented;c.absUrl()===e&&(i?(c.$$parse(t),c.$$state=o):(s&&m(e,a,o===c.$$state?null:c.$$state),y(t,o)))}))}var l,u;c.$$replace=!1}),c;function y(t,e){n.$broadcast("$locationChangeSuccess",c.absUrl(),t,c.$$state,e)}}]}function pi(){var t=!0,e=this;this.debugEnabled=function(e){return F(e)?(t=e,this):t},this.$get=["$window",function(n){var i,r=a||/\bEdge\//.test(n.navigator&&n.navigator.userAgent);return{log:o("log"),info:o("info"),warn:o("warn"),error:o("error"),debug:(i=o("debug"),function(){t&&i.apply(e,arguments)})};function o(t){var e=n.console||{},i=e[t]||e.log||R;return function(){var t=[];return M(arguments,function(e){t.push(function(t){return q(t)&&(t.stack&&r?t=t.message&&-1===t.stack.indexOf(t.message)?"Error: "+t.message+"\n"+t.stack:t.stack:t.sourceURL&&(t=t.message+"\n"+t.sourceURL+":"+t.line)),t}(e))}),Function.prototype.apply.call(i,e,t)}}}]}M([si,ai,oi],function(t){t.prototype=Object.create(ci),t.prototype.state=function(e){if(!arguments.length)return this.$$state;if(t!==oi||!this.$$html5)throw Qn("nostate","History API state support is available only in HTML5 mode and only in browsers supporting HTML5 History API");return this.$$state=V(e)?null:e,this.$$urlUpdatedByLocation=!0,this}});var hi=o("$parse"),fi={}.constructor.prototype.valueOf;function gi(t){return t+""}var mi=Ft();M("+ - * / % === !== == != < > <= >= && || ! = |".split(" "),function(t){mi[t]=!0});var vi={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'},yi=function(t){this.options=t};yi.prototype={constructor:yi,lex:function(t){for(this.text=t,this.index=0,this.tokens=[];this.index<this.text.length;){var e=this.text.charAt(this.index);if('"'===e||"'"===e)this.readString(e);else if(this.isNumber(e)||"."===e&&this.isNumber(this.peek()))this.readNumber();else if(this.isIdentifierStart(this.peekMultichar()))this.readIdent();else if(this.is(e,"(){}[].,;:?"))this.tokens.push({index:this.index,text:e}),this.index++;else if(this.isWhitespace(e))this.index++;else{var n=e+this.peek(),i=n+this.peek(2),r=mi[e],o=mi[n],a=mi[i];if(r||o||a){var s=a?i:o?n:e;this.tokens.push({index:this.index,text:s,operator:!0}),this.index+=s.length}else this.throwError("Unexpected next character ",this.index,this.index+1)}}return this.tokens},is:function(t,e){return-1!==e.indexOf(t)},peek:function(t){var e=t||1;return this.index+e<this.text.length&&this.text.charAt(this.index+e)},isNumber:function(t){return"0"<=t&&t<="9"&&"string"==typeof t},isWhitespace:function(t){return" "===t||"\r"===t||"\t"===t||"\n"===t||"\v"===t||" "===t},isIdentifierStart:function(t){return this.options.isIdentifierStart?this.options.isIdentifierStart(t,this.codePointAt(t)):this.isValidIdentifierStart(t)},isValidIdentifierStart:function(t){return"a"<=t&&t<="z"||"A"<=t&&t<="Z"||"_"===t||"$"===t},isIdentifierContinue:function(t){return this.options.isIdentifierContinue?this.options.isIdentifierContinue(t,this.codePointAt(t)):this.isValidIdentifierContinue(t)},isValidIdentifierContinue:function(t,e){return this.isValidIdentifierStart(t,e)||this.isNumber(t)},codePointAt:function(t){return 1===t.length?t.charCodeAt(0):(t.charCodeAt(0)<<10)+t.charCodeAt(1)-56613888},peekMultichar:function(){var t=this.text.charAt(this.index),e=this.peek();if(!e)return t;var n=t.charCodeAt(0),i=e.charCodeAt(0);return n>=55296&&n<=56319&&i>=56320&&i<=57343?t+e:t},isExpOperator:function(t){return"-"===t||"+"===t||this.isNumber(t)},throwError:function(t,e,n){n=n||this.index;var i=F(e)?"s "+e+"-"+this.index+" ["+this.text.substring(e,n)+"]":" "+n;throw hi("lexerr","Lexer Error: {0} at column{1} in expression [{2}].",t,i,this.text)},readNumber:function(){for(var t="",e=this.index;this.index<this.text.length;){var n=p(this.text.charAt(this.index));if("."===n||this.isNumber(n))t+=n;else{var i=this.peek();if("e"===n&&this.isExpOperator(i))t+=n;else if(this.isExpOperator(n)&&i&&this.isNumber(i)&&"e"===t.charAt(t.length-1))t+=n;else{if(!this.isExpOperator(n)||i&&this.isNumber(i)||"e"!==t.charAt(t.length-1))break;this.throwError("Invalid exponent")}}this.index++}this.tokens.push({index:e,text:t,constant:!0,value:Number(t)})},readIdent:function(){var t=this.index;for(this.index+=this.peekMultichar().length;this.index<this.text.length;){var e=this.peekMultichar();if(!this.isIdentifierContinue(e))break;this.index+=e.length}this.tokens.push({index:t,text:this.text.slice(t,this.index),identifier:!0})},readString:function(t){var e=this.index;this.index++;for(var n="",i=t,r=!1;this.index<this.text.length;){var o=this.text.charAt(this.index);if(i+=o,r){if("u"===o){var a=this.text.substring(this.index+1,this.index+5);a.match(/[\da-f]{4}/i)||this.throwError("Invalid unicode escape [\\u"+a+"]"),this.index+=4,n+=String.fromCharCode(parseInt(a,16))}else n+=vi[o]||o;r=!1}else if("\\"===o)r=!0;else{if(o===t)return this.index++,void this.tokens.push({index:e,text:i,constant:!0,value:n});n+=o}this.index++}this.throwError("Unterminated quote",e)}};var bi=function(t,e){this.lexer=t,this.options=e};function wi(t,e){return void 0!==t?t:e}function Si(t,e){return void 0===t?e:void 0===e?t:t+e}function xi(t,e,n){var i,r,o,a=t.isPure=function(t,e){switch(t.type){case bi.MemberExpression:if(t.computed)return!1;break;case bi.UnaryExpression:return 1;case bi.BinaryExpression:return"+"!==t.operator&&1;case bi.CallExpression:return!1}return void 0===e?2:e}(t,n);switch(t.type){case bi.Program:i=!0,M(t.body,function(t){xi(t.expression,e,a),i=i&&t.expression.constant}),t.constant=i;break;case bi.Literal:t.constant=!0,t.toWatch=[];break;case bi.UnaryExpression:xi(t.argument,e,a),t.constant=t.argument.constant,t.toWatch=t.argument.toWatch;break;case bi.BinaryExpression:xi(t.left,e,a),xi(t.right,e,a),t.constant=t.left.constant&&t.right.constant,t.toWatch=t.left.toWatch.concat(t.right.toWatch);break;case bi.LogicalExpression:xi(t.left,e,a),xi(t.right,e,a),t.constant=t.left.constant&&t.right.constant,t.toWatch=t.constant?[]:[t];break;case bi.ConditionalExpression:xi(t.test,e,a),xi(t.alternate,e,a),xi(t.consequent,e,a),t.constant=t.test.constant&&t.alternate.constant&&t.consequent.constant,t.toWatch=t.constant?[]:[t];break;case bi.Identifier:t.constant=!1,t.toWatch=[t];break;case bi.MemberExpression:xi(t.object,e,a),t.computed&&xi(t.property,e,a),t.constant=t.object.constant&&(!t.computed||t.property.constant),t.toWatch=t.constant?[]:[t];break;case bi.CallExpression:o=!!t.filter&&function(t,e){return!t(e).$stateful}(e,t.callee.name),i=o,r=[],M(t.arguments,function(t){xi(t,e,a),i=i&&t.constant,r.push.apply(r,t.toWatch)}),t.constant=i,t.toWatch=o?r:[t];break;case bi.AssignmentExpression:xi(t.left,e,a),xi(t.right,e,a),t.constant=t.left.constant&&t.right.constant,t.toWatch=[t];break;case bi.ArrayExpression:i=!0,r=[],M(t.elements,function(t){xi(t,e,a),i=i&&t.constant,r.push.apply(r,t.toWatch)}),t.constant=i,t.toWatch=r;break;case bi.ObjectExpression:i=!0,r=[],M(t.properties,function(t){xi(t.value,e,a),i=i&&t.value.constant,r.push.apply(r,t.value.toWatch),t.computed&&(xi(t.key,e,!1),i=i&&t.key.constant,r.push.apply(r,t.key.toWatch))}),t.constant=i,t.toWatch=r;break;case bi.ThisExpression:case bi.LocalsExpression:t.constant=!1,t.toWatch=[]}}function Mi(t){if(1===t.length){var e=t[0].expression,n=e.toWatch;return 1!==n.length||n[0]!==e?n:void 0}}function Ei(t){return t.type===bi.Identifier||t.type===bi.MemberExpression}function Ci(t){if(1===t.body.length&&Ei(t.body[0].expression))return{type:bi.AssignmentExpression,left:t.body[0].expression,right:{type:bi.NGValueParameter},operator:"="}}function Ai(t){this.$filter=t}function Ti(t){this.$filter=t}function Oi(t,e,n){this.ast=new bi(t,n),this.astCompiler=n.csp?new Ti(e):new Ai(e)}function _i(t){return K(t.valueOf)?t.valueOf():fi.call(t)}function Pi(){var t,e,n=Ft(),i={true:!0,false:!1,null:null,undefined:void 0};this.addLiteral=function(t,e){i[t]=e},this.setIdentifierFns=function(n,i){return t=n,e=i,this},this.$get=["$filter",function(r){var o={csp:lt().noUnsafeEval,literals:at(i),isIdentifierStart:K(t)&&t,isIdentifierContinue:K(e)&&e};return a.$$getAst=function(t){return new Oi(new yi(o),r,o).getAst(t).ast},a;function a(t,e){var i,a;switch(typeof t){case"string":return t=t.trim(),(i=n[a=t])||(i=new Oi(new yi(o),r,o).parse(t),n[a]=p(i)),h(i,e);case"function":return h(t,e);default:return h(R,e)}}function s(t,e,n){return null==t||null==e?t===e:!("object"==typeof t&&"object"==typeof(t=_i(t))&&!n)&&(t===e||t!=t&&e!=e)}function c(t,e,n,i,r){var o,a=i.inputs;if(1===a.length){var c=s;return a=a[0],t.$watch(function(t){var e=a(t);return s(e,c,a.isPure)||(o=i(t,void 0,void 0,[e]),c=e&&_i(e)),o},e,n,r)}for(var l=[],u=[],d=0,p=a.length;d<p;d++)l[d]=s,u[d]=null;return t.$watch(function(t){for(var e=!1,n=0,r=a.length;n<r;n++){var c=a[n](t);(e||(e=!s(c,l[n],a[n].isPure)))&&(u[n]=c,l[n]=c&&_i(c))}return e&&(o=i(t,void 0,void 0,u)),o},e,n,r)}function l(t,e,n,i,r){var o,a,s=i.literal?u:F,c=i.$$intercepted||i,l=i.$$interceptor||L,d=i.inputs&&!c.inputs;return f.literal=i.literal,f.constant=i.constant,f.inputs=i.inputs,p(f),o=t.$watch(f,e,n,r);function h(){s(a)&&o()}function f(t,e,n,i){return a=d&&i?i[0]:c(t,e,n,i),s(a)&&t.$$postDigest(h),l(a)}}function u(t){var e=!0;return M(t,function(t){F(t)||(e=!1)}),e}function d(t,e,n,i){var r=t.$watch(function(t){return r(),i(t)},e,n);return r}function p(t){return t.constant?t.$$watchDelegate=d:t.oneTime?t.$$watchDelegate=l:t.inputs&&(t.$$watchDelegate=c),t}function h(t,e){if(!e)return t;t.$$interceptor&&(e=function(t,e){function n(n){return e(t(n))}return n.$stateful=t.$stateful||e.$stateful,n.$$pure=t.$$pure&&e.$$pure,n}(t.$$interceptor,e),t=t.$$intercepted);var n=!1,i=function(i,r,o,a){var s=n&&a?a[0]:t(i,r,o,a);return e(s)};return i.$$intercepted=t,i.$$interceptor=e,i.literal=t.literal,i.oneTime=t.oneTime,i.constant=t.constant,e.$stateful||(n=!t.inputs,i.inputs=t.inputs?t.inputs:[t],e.$$pure||(i.inputs=i.inputs.map(function(t){return 2===t.isPure?function(e){return t(e)}:t}))),p(i)}}]}function Ii(){var t=!0;this.$get=["$rootScope","$exceptionHandler",function(e,n){return Di(function(t){e.$evalAsync(t)},n,t)}],this.errorOnUnhandledRejections=function(e){return F(e)?(t=e,this):t}}function ki(){var t=!0;this.$get=["$browser","$exceptionHandler",function(e,n){return Di(function(t){e.defer(t)},n,t)}],this.errorOnUnhandledRejections=function(e){return F(e)?(t=e,this):t}}function Di(t,e,n){var i=o("$q",TypeError),r=0,a=[];function s(){return new function(){var t=this.promise=new c;this.resolve=function(e){d(t,e)},this.reject=function(e){p(t,e)},this.notify=function(e){f(t,e)}}}function c(){this.$$state={status:0}}function l(){for(;!r&&a.length;){var t=a.shift();if(!Ri(t)){Li(t);var n="Possibly unhandled rejection: "+Gt(t.value);q(t.value)?e(t.value,n):e(n)}}}function u(i){!n||i.pending||2!==i.status||Ri(i)||(0===r&&0===a.length&&t(l),a.push(i)),!i.processScheduled&&i.pending&&(i.processScheduled=!0,++r,t(function(){!function(i){var o,a,s;s=i.pending,i.processScheduled=!1,i.pending=void 0;try{for(var c=0,u=s.length;c<u;++c){Li(i),a=s[c][0],o=s[c][i.status];try{K(o)?d(a,o(i.value)):1===i.status?d(a,i.value):p(a,i.value)}catch(t){p(a,t),t&&!0===t.$$passToExceptionHandler&&e(t)}}}finally{--r,n&&0===r&&t(l)}}(i)}))}function d(t,e){t.$$state.status||(e===t?h(t,i("qcycle","Expected promise to be resolved with value other than itself '{0}'",e)):function t(e,n){var i,r=!1;try{(U(n)||K(n))&&(i=n.then),K(i)?(e.$$state.status=-1,i.call(n,function(n){r||(r=!0,t(e,n))},o,function(t){f(e,t)})):(e.$$state.value=n,e.$$state.status=1,u(e.$$state))}catch(t){o(t)}function o(t){r||(r=!0,h(e,t))}}(t,e))}function p(t,e){t.$$state.status||h(t,e)}function h(t,e){t.$$state.value=e,t.$$state.status=2,u(t.$$state)}function f(n,i){var r=n.$$state.pending;n.$$state.status<=0&&r&&r.length&&t(function(){for(var t,n,o=0,a=r.length;o<a;o++){n=r[o][0],t=r[o][3];try{f(n,K(t)?t(i):i)}catch(t){e(t)}}})}function g(t){var e=new c;return p(e,t),e}function m(t,e,n){var i=null;try{K(n)&&(i=n())}catch(t){return g(t)}return Q(i)?i.then(function(){return e(t)},g):e(t)}function v(t,e,n,i){var r=new c;return d(r,t),r.then(e,n,i)}_(c.prototype,{then:function(t,e,n){if(V(t)&&V(e)&&V(n))return this;var i=new c;return this.$$state.pending=this.$$state.pending||[],this.$$state.pending.push([i,t,e,n]),this.$$state.status>0&&u(this.$$state),i},catch:function(t){return this.then(null,t)},finally:function(t,e){return this.then(function(e){return m(e,y,t)},function(e){return m(e,g,t)},e)}});var y=v;function b(t){if(!K(t))throw i("norslvr","Expected resolverFn, got '{0}'",t);var e=new c;return t(function(t){d(e,t)},function(t){p(e,t)}),e}return b.prototype=c.prototype,b.defer=s,b.reject=g,b.when=v,b.resolve=y,b.all=function(t){var e=new c,n=0,i=W(t)?[]:{};return M(t,function(t,r){n++,v(t).then(function(t){i[r]=t,--n||d(e,i)},function(t){p(e,t)})}),0===n&&d(e,i),e},b.race=function(t){var e=s();return M(t,function(t){v(t).then(e.resolve,e.reject)}),e.promise},b}function Ri(t){return!!t.pur}function Li(t){t.pur=!0}function Ni(t){t.$$state&&Li(t.$$state)}function ji(){this.$get=["$window","$timeout",function(t,e){var n=t.requestAnimationFrame||t.webkitRequestAnimationFrame,i=t.cancelAnimationFrame||t.webkitCancelAnimationFrame||t.webkitCancelRequestAnimationFrame,r=!!n,o=r?function(t){var e=n(t);return function(){i(e)}}:function(t){var n=e(t,16.66,!1);return function(){e.cancel(n)}};return o.supported=r,o}]}function Vi(){var t=10,e=o("$rootScope"),n=null,i=null;this.digestTtl=function(e){return arguments.length&&(t=e),t},this.$get=["$exceptionHandler","$parse","$browser",function(r,o,s){function c(t){t.currentScope.$$destroyed=!0}function l(){this.$id=A(),this.$$phase=this.$parent=this.$$watchers=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null,this.$root=this,this.$$destroyed=!1,this.$$suspended=!1,this.$$listeners={},this.$$listenerCount={},this.$$watchersCount=0,this.$$isolateBindings=null}l.prototype={constructor:l,$new:function(t,e){var n;return e=e||this,t?(n=new l).$root=this.$root:(this.$$ChildScope||(this.$$ChildScope=function(t){function e(){this.$$watchers=this.$$nextSibling=this.$$childHead=this.$$childTail=null,this.$$listeners={},this.$$listenerCount={},this.$$watchersCount=0,this.$id=A(),this.$$ChildScope=null,this.$$suspended=!1}return e.prototype=t,e}(this)),n=new this.$$ChildScope),n.$parent=e,n.$$prevSibling=e.$$childTail,e.$$childHead?(e.$$childTail.$$nextSibling=n,e.$$childTail=n):e.$$childHead=e.$$childTail=n,(t||e!==this)&&n.$on("$destroy",c),n},$watch:function(t,e,i,r){var a=o(t),s=K(e)?e:R;if(a.$$watchDelegate)return a.$$watchDelegate(this,s,i,a,t);var c=this,l=c.$$watchers,u={fn:s,last:w,get:a,exp:r||t,eq:!!i};return n=null,l||((l=c.$$watchers=[]).$$digestWatchIndex=-1),l.unshift(u),l.$$digestWatchIndex++,y(this,1),function(){var t=ot(l,u);t>=0&&(y(c,-1),t<l.$$digestWatchIndex&&l.$$digestWatchIndex--),n=null}},$watchGroup:function(t,e){var n=new Array(t.length),i=new Array(t.length),r=[],o=this,a=!1,s=!0;if(!t.length){var c=!0;return o.$evalAsync(function(){c&&e(i,i,o)}),function(){c=!1}}if(1===t.length)return this.$watch(t[0],function(t,r,o){i[0]=t,n[0]=r,e(i,t===r?i:n,o)});function l(){a=!1;try{s?(s=!1,e(i,i,o)):e(i,n,o)}finally{for(var r=0;r<t.length;r++)n[r]=i[r]}}return M(t,function(t,e){var n=o.$watch(t,function(t){i[e]=t,a||(a=!0,o.$evalAsync(l))});r.push(n)}),function(){for(;r.length;)r.shift()()}},$watchCollection:function(t,e){g.$$pure=o(t).literal,g.$stateful=!g.$$pure;var n,i,r,a=this,s=e.length>1,c=0,l=o(t,g),u=[],p={},h=!0,f=0;function g(t){var e,r,o,a;if(!V(n=t)){if(U(n))if(x(n)){i!==u&&(f=(i=u).length=0,c++),e=n.length,f!==e&&(c++,i.length=f=e);for(var s=0;s<e;s++)a=i[s],o=n[s],a!=a&&o!=o||a===o||(c++,i[s]=o)}else{for(r in i!==p&&(i=p={},f=0,c++),e=0,n)d.call(n,r)&&(e++,o=n[r],a=i[r],r in i?a!=a&&o!=o||a===o||(c++,i[r]=o):(f++,i[r]=o,c++));if(f>e)for(r in c++,i)d.call(n,r)||(f--,delete i[r])}else i!==n&&(i=n,c++);return c}}return this.$watch(l,function(){if(h?(h=!1,e(n,n,a)):e(n,r,a),s)if(U(n))if(x(n)){r=new Array(n.length);for(var t=0;t<n.length;t++)r[t]=n[t]}else for(var i in r={},n)d.call(n,i)&&(r[i]=n[i]);else r=n})},$digest:function(){var o,a,c,l,d,f,y,b,x,M=t,E=p.length?u:this,C=[];m("$digest"),s.$$checkUrlChange(),this===u&&null!==i&&(s.defer.cancel(i),S()),n=null;do{d=!1,y=E;for(var A=0;A<p.length;A++){try{(0,(x=p[A]).fn)(x.scope,x.locals)}catch(t){r(t)}n=null}p.length=0;t:do{if(l=!y.$$suspended&&y.$$watchers)for(l.$$digestWatchIndex=l.length;l.$$digestWatchIndex--;)try{if(o=l[l.$$digestWatchIndex])if((a=(0,o.get)(y))===(c=o.last)||(o.eq?ct(a,c):k(a)&&k(c))){if(o===n){d=!1;break t}}else d=!0,n=o,o.last=o.eq?at(a,null):a,(0,o.fn)(a,c===w?a:c,y),M<5&&(C[b=4-M]||(C[b]=[]),C[b].push({msg:K(o.exp)?"fn: "+(o.exp.name||o.exp.toString()):o.exp,newVal:a,oldVal:c}))}catch(t){r(t)}if(!(f=!y.$$suspended&&y.$$watchersCount&&y.$$childHead||y!==E&&y.$$nextSibling))for(;y!==E&&!(f=y.$$nextSibling);)y=y.$parent}while(y=f);if((d||p.length)&&!M--)throw v(),e("infdig","{0} $digest() iterations reached. Aborting!\nWatchers fired in the last 5 iterations: {1}",t,C)}while(d||p.length);for(v();g<h.length;)try{h[g++]()}catch(t){r(t)}h.length=g=0,s.$$checkUrlChange()},$suspend:function(){this.$$suspended=!0},$isSuspended:function(){return this.$$suspended},$resume:function(){this.$$suspended=!1},$destroy:function(){if(!this.$$destroyed){var t=this.$parent;for(var e in this.$broadcast("$destroy"),this.$$destroyed=!0,this===u&&s.$$applicationDestroyed(),y(this,-this.$$watchersCount),this.$$listenerCount)b(this,this.$$listenerCount[e],e);t&&t.$$childHead===this&&(t.$$childHead=this.$$nextSibling),t&&t.$$childTail===this&&(t.$$childTail=this.$$prevSibling),this.$$prevSibling&&(this.$$prevSibling.$$nextSibling=this.$$nextSibling),this.$$nextSibling&&(this.$$nextSibling.$$prevSibling=this.$$prevSibling),this.$destroy=this.$digest=this.$apply=this.$evalAsync=this.$applyAsync=R,this.$on=this.$watch=this.$watchGroup=function(){return R},this.$$listeners={},this.$$nextSibling=null,function t(e){9===a&&(e.$$childHead&&t(e.$$childHead),e.$$nextSibling&&t(e.$$nextSibling)),e.$parent=e.$$nextSibling=e.$$prevSibling=e.$$childHead=e.$$childTail=e.$root=e.$$watchers=null}(this)}},$eval:function(t,e){return o(t)(this,e)},$evalAsync:function(t,e){u.$$phase||p.length||s.defer(function(){p.length&&u.$digest()},null,"$evalAsync"),p.push({scope:this,fn:o(t),locals:e})},$$postDigest:function(t){h.push(t)},$apply:function(t){try{m("$apply");try{return this.$eval(t)}finally{v()}}catch(t){r(t)}finally{try{u.$digest()}catch(t){throw r(t),t}}},$applyAsync:function(t){var e=this;t&&f.push(function(){e.$eval(t)}),t=o(t),null===i&&(i=s.defer(function(){u.$apply(S)},null,"$applyAsync"))},$on:function(t,e){var n=this.$$listeners[t];n||(this.$$listeners[t]=n=[]),n.push(e);var i=this;do{i.$$listenerCount[t]||(i.$$listenerCount[t]=0),i.$$listenerCount[t]++}while(i=i.$parent);var r=this;return function(){var i=n.indexOf(e);-1!==i&&(delete n[i],b(r,1,t))}},$emit:function(t,e){var n,i,o,a=[],s=this,c=!1,l={name:t,targetScope:s,stopPropagation:function(){c=!0},preventDefault:function(){l.defaultPrevented=!0},defaultPrevented:!1},u=dt([l],arguments,1);do{for(n=s.$$listeners[t]||a,l.currentScope=s,i=0,o=n.length;i<o;i++)if(n[i])try{n[i].apply(null,u)}catch(t){r(t)}else n.splice(i,1),i--,o--;if(c)break;s=s.$parent}while(s);return l.currentScope=null,l},$broadcast:function(t,e){var n=this,i=n,o=n,a={name:t,targetScope:n,preventDefault:function(){a.defaultPrevented=!0},defaultPrevented:!1};if(!n.$$listenerCount[t])return a;for(var s,c,l,u=dt([a],arguments,1);i=o;){for(a.currentScope=i,c=0,l=(s=i.$$listeners[t]||[]).length;c<l;c++)if(s[c])try{s[c].apply(null,u)}catch(t){r(t)}else s.splice(c,1),c--,l--;if(!(o=i.$$listenerCount[t]&&i.$$childHead||i!==n&&i.$$nextSibling))for(;i!==n&&!(o=i.$$nextSibling);)i=i.$parent}return a.currentScope=null,a}};var u=new l,p=u.$$asyncQueue=[],h=u.$$postDigestQueue=[],f=u.$$applyAsyncQueue=[],g=0;return u;function m(t){if(u.$$phase)throw e("inprog","{0} already in progress",u.$$phase);u.$$phase=t}function v(){u.$$phase=null}function y(t,e){do{t.$$watchersCount+=e}while(t=t.$parent)}function b(t,e,n){do{t.$$listenerCount[n]-=e,0===t.$$listenerCount[n]&&delete t.$$listenerCount[n]}while(t=t.$parent)}function w(){}function S(){for(;f.length;)try{f.shift()()}catch(t){r(t)}i=null}}]}function Fi(){var t=/^\s*(https?|s?ftp|mailto|tel|file):/,e=/^\s*((https?|ftp|file|blob):|data:image\/)/;this.aHrefSanitizationWhitelist=function(e){return F(e)?(t=e,this):t},this.imgSrcSanitizationWhitelist=function(t){return F(t)?(e=t,this):e},this.$get=function(){return function(n,i){var r=i?e:t,o=rr(n&&n.trim()).href;return""===o||o.match(r)?n:"unsafe:"+o}}}bi.Program="Program",bi.ExpressionStatement="ExpressionStatement",bi.AssignmentExpression="AssignmentExpression",bi.ConditionalExpression="ConditionalExpression",bi.LogicalExpression="LogicalExpression",bi.BinaryExpression="BinaryExpression",bi.UnaryExpression="UnaryExpression",bi.CallExpression="CallExpression",bi.MemberExpression="MemberExpression",bi.Identifier="Identifier",bi.Literal="Literal",bi.ArrayExpression="ArrayExpression",bi.Property="Property",bi.ObjectExpression="ObjectExpression",bi.ThisExpression="ThisExpression",bi.LocalsExpression="LocalsExpression",bi.NGValueParameter="NGValueParameter",bi.prototype={ast:function(t){this.text=t,this.tokens=this.lexer.lex(t);var e=this.program();return 0!==this.tokens.length&&this.throwError("is an unexpected token",this.tokens[0]),e},program:function(){for(var t=[];;)if(this.tokens.length>0&&!this.peek("}",")",";","]")&&t.push(this.expressionStatement()),!this.expect(";"))return{type:bi.Program,body:t}},expressionStatement:function(){return{type:bi.ExpressionStatement,expression:this.filterChain()}},filterChain:function(){for(var t=this.expression();this.expect("|");)t=this.filter(t);return t},expression:function(){return this.assignment()},assignment:function(){var t=this.ternary();if(this.expect("=")){if(!Ei(t))throw hi("lval","Trying to assign a value to a non l-value");t={type:bi.AssignmentExpression,left:t,right:this.assignment(),operator:"="}}return t},ternary:function(){var t,e,n=this.logicalOR();return this.expect("?")&&(t=this.expression(),this.consume(":"))?(e=this.expression(),{type:bi.ConditionalExpression,test:n,alternate:t,consequent:e}):n},logicalOR:function(){for(var t=this.logicalAND();this.expect("||");)t={type:bi.LogicalExpression,operator:"||",left:t,right:this.logicalAND()};return t},logicalAND:function(){for(var t=this.equality();this.expect("&&");)t={type:bi.LogicalExpression,operator:"&&",left:t,right:this.equality()};return t},equality:function(){for(var t,e=this.relational();t=this.expect("==","!=","===","!==");)e={type:bi.BinaryExpression,operator:t.text,left:e,right:this.relational()};return e},relational:function(){for(var t,e=this.additive();t=this.expect("<",">","<=",">=");)e={type:bi.BinaryExpression,operator:t.text,left:e,right:this.additive()};return e},additive:function(){for(var t,e=this.multiplicative();t=this.expect("+","-");)e={type:bi.BinaryExpression,operator:t.text,left:e,right:this.multiplicative()};return e},multiplicative:function(){for(var t,e=this.unary();t=this.expect("*","/","%");)e={type:bi.BinaryExpression,operator:t.text,left:e,right:this.unary()};return e},unary:function(){var t;return(t=this.expect("+","-","!"))?{type:bi.UnaryExpression,operator:t.text,prefix:!0,argument:this.unary()}:this.primary()},primary:function(){var t,e;for(this.expect("(")?(t=this.filterChain(),this.consume(")")):this.expect("[")?t=this.arrayDeclaration():this.expect("{")?t=this.object():this.selfReferential.hasOwnProperty(this.peek().text)?t=at(this.selfReferential[this.consume().text]):this.options.literals.hasOwnProperty(this.peek().text)?t={type:bi.Literal,value:this.options.literals[this.consume().text]}:this.peek().identifier?t=this.identifier():this.peek().constant?t=this.constant():this.throwError("not a primary expression",this.peek());e=this.expect("(","[",".");)"("===e.text?(t={type:bi.CallExpression,callee:t,arguments:this.parseArguments()},this.consume(")")):"["===e.text?(t={type:bi.MemberExpression,object:t,property:this.expression(),computed:!0},this.consume("]")):"."===e.text?t={type:bi.MemberExpression,object:t,property:this.identifier(),computed:!1}:this.throwError("IMPOSSIBLE");return t},filter:function(t){for(var e=[t],n={type:bi.CallExpression,callee:this.identifier(),arguments:e,filter:!0};this.expect(":");)e.push(this.expression());return n},parseArguments:function(){var t=[];if(")"!==this.peekToken().text)do{t.push(this.filterChain())}while(this.expect(","));return t},identifier:function(){var t=this.consume();return t.identifier||this.throwError("is not a valid identifier",t),{type:bi.Identifier,name:t.text}},constant:function(){return{type:bi.Literal,value:this.consume().value}},arrayDeclaration:function(){var t=[];if("]"!==this.peekToken().text)do{if(this.peek("]"))break;t.push(this.expression())}while(this.expect(","));return this.consume("]"),{type:bi.ArrayExpression,elements:t}},object:function(){var t,e=[];if("}"!==this.peekToken().text)do{if(this.peek("}"))break;t={type:bi.Property,kind:"init"},this.peek().constant?(t.key=this.constant(),t.computed=!1,this.consume(":"),t.value=this.expression()):this.peek().identifier?(t.key=this.identifier(),t.computed=!1,this.peek(":")?(this.consume(":"),t.value=this.expression()):t.value=t.key):this.peek("[")?(this.consume("["),t.key=this.expression(),this.consume("]"),t.computed=!0,this.consume(":"),t.value=this.expression()):this.throwError("invalid key",this.peek()),e.push(t)}while(this.expect(","));return this.consume("}"),{type:bi.ObjectExpression,properties:e}},throwError:function(t,e){throw hi("syntax","Syntax Error: Token '{0}' {1} at column {2} of the expression [{3}] starting at [{4}].",e.text,t,e.index+1,this.text,this.text.substring(e.index))},consume:function(t){if(0===this.tokens.length)throw hi("ueoe","Unexpected end of expression: {0}",this.text);var e=this.expect(t);return e||this.throwError("is unexpected, expecting ["+t+"]",this.peek()),e},peekToken:function(){if(0===this.tokens.length)throw hi("ueoe","Unexpected end of expression: {0}",this.text);return this.tokens[0]},peek:function(t,e,n,i){return this.peekAhead(0,t,e,n,i)},peekAhead:function(t,e,n,i,r){if(this.tokens.length>t){var o=this.tokens[t],a=o.text;if(a===e||a===n||a===i||a===r||!e&&!n&&!i&&!r)return o}return!1},expect:function(t,e,n,i){var r=this.peek(t,e,n,i);return!!r&&(this.tokens.shift(),r)},selfReferential:{this:{type:bi.ThisExpression},$locals:{type:bi.LocalsExpression}}},Ai.prototype={compile:function(t){var e=this;this.state={nextId:0,filters:{},fn:{vars:[],body:[],own:{}},assign:{vars:[],body:[],own:{}},inputs:[]},xi(t,e.$filter);var n,i="";if(this.stage="assign",n=Ci(t)){this.state.computing="assign";var r=this.nextId();this.recurse(n,r),this.return_(r),i="fn.assign="+this.generateFunction("assign","s,v,l")}var o=Mi(t.body);e.stage="inputs",M(o,function(t,n){var i="fn"+n;e.state[i]={vars:[],body:[],own:{}},e.state.computing=i;var r=e.nextId();e.recurse(t,r),e.return_(r),e.state.inputs.push({name:i,isPure:t.isPure}),t.watchId=n}),this.state.computing="fn",this.stage="main",this.recurse(t);var a='"'+this.USE+" "+this.STRICT+'";\n'+this.filterPrefix()+"var fn="+this.generateFunction("fn","s,l,a,i")+i+this.watchFns()+"return fn;",s=new Function("$filter","getStringValue","ifDefined","plus",a)(this.$filter,gi,wi,Si);return this.state=this.stage=void 0,s},USE:"use",STRICT:"strict",watchFns:function(){var t=[],e=this.state.inputs,n=this;return M(e,function(e){t.push("var "+e.name+"="+n.generateFunction(e.name,"s")),e.isPure&&t.push(e.name,".isPure="+JSON.stringify(e.isPure)+";")}),e.length&&t.push("fn.inputs=["+e.map(function(t){return t.name}).join(",")+"];"),t.join("")},generateFunction:function(t,e){return"function("+e+"){"+this.varsPrefix(t)+this.body(t)+"};"},filterPrefix:function(){var t=[],e=this;return M(this.state.filters,function(n,i){t.push(n+"=$filter("+e.escape(i)+")")}),t.length?"var "+t.join(",")+";":""},varsPrefix:function(t){return this.state[t].vars.length?"var "+this.state[t].vars.join(",")+";":""},body:function(t){return this.state[t].body.join("")},recurse:function(t,e,n,i,r,o){var a,s,c,l,u,d=this;if(i=i||R,!o&&F(t.watchId))return e=e||this.nextId(),void this.if_("i",this.lazyAssign(e,this.computedMember("i",t.watchId)),this.lazyRecurse(t,e,n,i,r,!0));switch(t.type){case bi.Program:M(t.body,function(e,n){d.recurse(e.expression,void 0,void 0,function(t){s=t}),n!==t.body.length-1?d.current().body.push(s,";"):d.return_(s)});break;case bi.Literal:l=this.escape(t.value),this.assign(e,l),i(e||l);break;case bi.UnaryExpression:this.recurse(t.argument,void 0,void 0,function(t){s=t}),l=t.operator+"("+this.ifDefined(s,0)+")",this.assign(e,l),i(l);break;case bi.BinaryExpression:this.recurse(t.left,void 0,void 0,function(t){a=t}),this.recurse(t.right,void 0,void 0,function(t){s=t}),l="+"===t.operator?this.plus(a,s):"-"===t.operator?this.ifDefined(a,0)+t.operator+this.ifDefined(s,0):"("+a+")"+t.operator+"("+s+")",this.assign(e,l),i(l);break;case bi.LogicalExpression:e=e||this.nextId(),d.recurse(t.left,e),d.if_("&&"===t.operator?e:d.not(e),d.lazyRecurse(t.right,e)),i(e);break;case bi.ConditionalExpression:e=e||this.nextId(),d.recurse(t.test,e),d.if_(e,d.lazyRecurse(t.alternate,e),d.lazyRecurse(t.consequent,e)),i(e);break;case bi.Identifier:e=e||this.nextId(),n&&(n.context="inputs"===d.stage?"s":this.assign(this.nextId(),this.getHasOwnProperty("l",t.name)+"?l:s"),n.computed=!1,n.name=t.name),d.if_("inputs"===d.stage||d.not(d.getHasOwnProperty("l",t.name)),function(){d.if_("inputs"===d.stage||"s",function(){r&&1!==r&&d.if_(d.isNull(d.nonComputedMember("s",t.name)),d.lazyAssign(d.nonComputedMember("s",t.name),"{}")),d.assign(e,d.nonComputedMember("s",t.name))})},e&&d.lazyAssign(e,d.nonComputedMember("l",t.name))),i(e);break;case bi.MemberExpression:a=n&&(n.context=this.nextId())||this.nextId(),e=e||this.nextId(),d.recurse(t.object,a,void 0,function(){d.if_(d.notNull(a),function(){t.computed?(s=d.nextId(),d.recurse(t.property,s),d.getStringValue(s),r&&1!==r&&d.if_(d.not(d.computedMember(a,s)),d.lazyAssign(d.computedMember(a,s),"{}")),l=d.computedMember(a,s),d.assign(e,l),n&&(n.computed=!0,n.name=s)):(r&&1!==r&&d.if_(d.isNull(d.nonComputedMember(a,t.property.name)),d.lazyAssign(d.nonComputedMember(a,t.property.name),"{}")),l=d.nonComputedMember(a,t.property.name),d.assign(e,l),n&&(n.computed=!1,n.name=t.property.name))},function(){d.assign(e,"undefined")}),i(e)},!!r);break;case bi.CallExpression:e=e||this.nextId(),t.filter?(s=d.filter(t.callee.name),c=[],M(t.arguments,function(t){var e=d.nextId();d.recurse(t,e),c.push(e)}),l=s+"("+c.join(",")+")",d.assign(e,l),i(e)):(s=d.nextId(),a={},c=[],d.recurse(t.callee,s,a,function(){d.if_(d.notNull(s),function(){M(t.arguments,function(e){d.recurse(e,t.constant?void 0:d.nextId(),void 0,function(t){c.push(t)})}),l=a.name?d.member(a.context,a.name,a.computed)+"("+c.join(",")+")":s+"("+c.join(",")+")",d.assign(e,l)},function(){d.assign(e,"undefined")}),i(e)}));break;case bi.AssignmentExpression:s=this.nextId(),a={},this.recurse(t.left,void 0,a,function(){d.if_(d.notNull(a.context),function(){d.recurse(t.right,s),l=d.member(a.context,a.name,a.computed)+t.operator+s,d.assign(e,l),i(e||l)})},1);break;case bi.ArrayExpression:c=[],M(t.elements,function(e){d.recurse(e,t.constant?void 0:d.nextId(),void 0,function(t){c.push(t)})}),l="["+c.join(",")+"]",this.assign(e,l),i(e||l);break;case bi.ObjectExpression:c=[],u=!1,M(t.properties,function(t){t.computed&&(u=!0)}),u?(e=e||this.nextId(),this.assign(e,"{}"),M(t.properties,function(t){t.computed?(a=d.nextId(),d.recurse(t.key,a)):a=t.key.type===bi.Identifier?t.key.name:""+t.key.value,s=d.nextId(),d.recurse(t.value,s),d.assign(d.member(e,a,t.computed),s)})):(M(t.properties,function(e){d.recurse(e.value,t.constant?void 0:d.nextId(),void 0,function(t){c.push(d.escape(e.key.type===bi.Identifier?e.key.name:""+e.key.value)+":"+t)})}),l="{"+c.join(",")+"}",this.assign(e,l)),i(e||l);break;case bi.ThisExpression:this.assign(e,"s"),i(e||"s");break;case bi.LocalsExpression:this.assign(e,"l"),i(e||"l");break;case bi.NGValueParameter:this.assign(e,"v"),i(e||"v")}},getHasOwnProperty:function(t,e){var n=t+"."+e,i=this.current().own;return i.hasOwnProperty(n)||(i[n]=this.nextId(!1,t+"&&("+this.escape(e)+" in "+t+")")),i[n]},assign:function(t,e){if(t)return this.current().body.push(t,"=",e,";"),t},filter:function(t){return this.state.filters.hasOwnProperty(t)||(this.state.filters[t]=this.nextId(!0)),this.state.filters[t]},ifDefined:function(t,e){return"ifDefined("+t+","+this.escape(e)+")"},plus:function(t,e){return"plus("+t+","+e+")"},return_:function(t){this.current().body.push("return ",t,";")},if_:function(t,e,n){if(!0===t)e();else{var i=this.current().body;i.push("if(",t,"){"),e(),i.push("}"),n&&(i.push("else{"),n(),i.push("}"))}},not:function(t){return"!("+t+")"},isNull:function(t){return t+"==null"},notNull:function(t){return t+"!=null"},nonComputedMember:function(t,e){return/^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(e)?t+"."+e:t+'["'+e.replace(/[^$_a-zA-Z0-9]/g,this.stringEscapeFn)+'"]'},computedMember:function(t,e){return t+"["+e+"]"},member:function(t,e,n){return n?this.computedMember(t,e):this.nonComputedMember(t,e)},getStringValue:function(t){this.assign(t,"getStringValue("+t+")")},lazyRecurse:function(t,e,n,i,r,o){var a=this;return function(){a.recurse(t,e,n,i,r,o)}},lazyAssign:function(t,e){var n=this;return function(){n.assign(t,e)}},stringEscapeRegex:/[^ a-zA-Z0-9]/g,stringEscapeFn:function(t){return"\\u"+("0000"+t.charCodeAt(0).toString(16)).slice(-4)},escape:function(t){if(z(t))return"'"+t.replace(this.stringEscapeRegex,this.stringEscapeFn)+"'";if(G(t))return t.toString();if(!0===t)return"true";if(!1===t)return"false";if(null===t)return"null";if(void 0===t)return"undefined";throw hi("esc","IMPOSSIBLE")},nextId:function(t,e){var n="v"+this.state.nextId++;return t||this.current().vars.push(n+(e?"="+e:"")),n},current:function(){return this.state[this.state.computing]}},Ti.prototype={compile:function(t){var e,n,i=this;xi(t,i.$filter),(e=Ci(t))&&(n=this.recurse(e));var r,o=Mi(t.body);o&&(r=[],M(o,function(t,e){var n=i.recurse(t);n.isPure=t.isPure,t.input=n,r.push(n),t.watchId=e}));var a=[];M(t.body,function(t){a.push(i.recurse(t.expression))});var s=0===t.body.length?R:1===t.body.length?a[0]:function(t,e){var n;return M(a,function(i){n=i(t,e)}),n};return n&&(s.assign=function(t,e,i){return n(t,i,e)}),r&&(s.inputs=r),s},recurse:function(t,e,n){var i,r,o,a=this;if(t.input)return this.inputs(t.input,t.watchId);switch(t.type){case bi.Literal:return this.value(t.value,e);case bi.UnaryExpression:return r=this.recurse(t.argument),this["unary"+t.operator](r,e);case bi.BinaryExpression:case bi.LogicalExpression:return i=this.recurse(t.left),r=this.recurse(t.right),this["binary"+t.operator](i,r,e);case bi.ConditionalExpression:return this["ternary?:"](this.recurse(t.test),this.recurse(t.alternate),this.recurse(t.consequent),e);case bi.Identifier:return a.identifier(t.name,e,n);case bi.MemberExpression:return i=this.recurse(t.object,!1,!!n),t.computed||(r=t.property.name),t.computed&&(r=this.recurse(t.property)),t.computed?this.computedMember(i,r,e,n):this.nonComputedMember(i,r,e,n);case bi.CallExpression:return o=[],M(t.arguments,function(t){o.push(a.recurse(t))}),t.filter&&(r=this.$filter(t.callee.name)),t.filter||(r=this.recurse(t.callee,!0)),t.filter?function(t,n,i,a){for(var s=[],c=0;c<o.length;++c)s.push(o[c](t,n,i,a));var l=r.apply(void 0,s,a);return e?{context:void 0,name:void 0,value:l}:l}:function(t,n,i,a){var s,c=r(t,n,i,a);if(null!=c.value){for(var l=[],u=0;u<o.length;++u)l.push(o[u](t,n,i,a));s=c.value.apply(c.context,l)}return e?{value:s}:s};case bi.AssignmentExpression:return i=this.recurse(t.left,!0,1),r=this.recurse(t.right),function(t,n,o,a){var s=i(t,n,o,a),c=r(t,n,o,a);return s.context[s.name]=c,e?{value:c}:c};case bi.ArrayExpression:return o=[],M(t.elements,function(t){o.push(a.recurse(t))}),function(t,n,i,r){for(var a=[],s=0;s<o.length;++s)a.push(o[s](t,n,i,r));return e?{value:a}:a};case bi.ObjectExpression:return o=[],M(t.properties,function(t){t.computed?o.push({key:a.recurse(t.key),computed:!0,value:a.recurse(t.value)}):o.push({key:t.key.type===bi.Identifier?t.key.name:""+t.key.value,computed:!1,value:a.recurse(t.value)})}),function(t,n,i,r){for(var a={},s=0;s<o.length;++s)o[s].computed?a[o[s].key(t,n,i,r)]=o[s].value(t,n,i,r):a[o[s].key]=o[s].value(t,n,i,r);return e?{value:a}:a};case bi.ThisExpression:return function(t){return e?{value:t}:t};case bi.LocalsExpression:return function(t,n){return e?{value:n}:n};case bi.NGValueParameter:return function(t,n,i){return e?{value:i}:i}}},"unary+":function(t,e){return function(n,i,r,o){var a=t(n,i,r,o);return a=F(a)?+a:0,e?{value:a}:a}},"unary-":function(t,e){return function(n,i,r,o){var a=t(n,i,r,o);return a=F(a)?-a:-0,e?{value:a}:a}},"unary!":function(t,e){return function(n,i,r,o){var a=!t(n,i,r,o);return e?{value:a}:a}},"binary+":function(t,e,n){return function(i,r,o,a){var s=Si(t(i,r,o,a),e(i,r,o,a));return n?{value:s}:s}},"binary-":function(t,e,n){return function(i,r,o,a){var s=t(i,r,o,a),c=e(i,r,o,a),l=(F(s)?s:0)-(F(c)?c:0);return n?{value:l}:l}},"binary*":function(t,e,n){return function(i,r,o,a){var s=t(i,r,o,a)*e(i,r,o,a);return n?{value:s}:s}},"binary/":function(t,e,n){return function(i,r,o,a){var s=t(i,r,o,a)/e(i,r,o,a);return n?{value:s}:s}},"binary%":function(t,e,n){return function(i,r,o,a){var s=t(i,r,o,a)%e(i,r,o,a);return n?{value:s}:s}},"binary===":function(t,e,n){return function(i,r,o,a){var s=t(i,r,o,a)===e(i,r,o,a);return n?{value:s}:s}},"binary!==":function(t,e,n){return function(i,r,o,a){var s=t(i,r,o,a)!==e(i,r,o,a);return n?{value:s}:s}},"binary==":function(t,e,n){return function(i,r,o,a){var s=t(i,r,o,a)==e(i,r,o,a);return n?{value:s}:s}},"binary!=":function(t,e,n){return function(i,r,o,a){var s=t(i,r,o,a)!=e(i,r,o,a);return n?{value:s}:s}},"binary<":function(t,e,n){return function(i,r,o,a){var s=t(i,r,o,a)<e(i,r,o,a);return n?{value:s}:s}},"binary>":function(t,e,n){return function(i,r,o,a){var s=t(i,r,o,a)>e(i,r,o,a);return n?{value:s}:s}},"binary<=":function(t,e,n){return function(i,r,o,a){var s=t(i,r,o,a)<=e(i,r,o,a);return n?{value:s}:s}},"binary>=":function(t,e,n){return function(i,r,o,a){var s=t(i,r,o,a)>=e(i,r,o,a);return n?{value:s}:s}},"binary&&":function(t,e,n){return function(i,r,o,a){var s=t(i,r,o,a)&&e(i,r,o,a);return n?{value:s}:s}},"binary||":function(t,e,n){return function(i,r,o,a){var s=t(i,r,o,a)||e(i,r,o,a);return n?{value:s}:s}},"ternary?:":function(t,e,n,i){return function(r,o,a,s){var c=t(r,o,a,s)?e(r,o,a,s):n(r,o,a,s);return i?{value:c}:c}},value:function(t,e){return function(){return e?{context:void 0,name:void 0,value:t}:t}},identifier:function(t,e,n){return function(i,r,o,a){var s=r&&t in r?r:i;n&&1!==n&&s&&null==s[t]&&(s[t]={});var c=s?s[t]:void 0;return e?{context:s,name:t,value:c}:c}},computedMember:function(t,e,n,i){return function(r,o,a,s){var c,l,u=t(r,o,a,s);return null!=u&&(c=gi(c=e(r,o,a,s)),i&&1!==i&&u&&!u[c]&&(u[c]={}),l=u[c]),n?{context:u,name:c,value:l}:l}},nonComputedMember:function(t,e,n,i){return function(r,o,a,s){var c=t(r,o,a,s);i&&1!==i&&c&&null==c[e]&&(c[e]={});var l=null!=c?c[e]:void 0;return n?{context:c,name:e,value:l}:l}},inputs:function(t,e){return function(n,i,r,o){return o?o[e]:t(n,i,r)}}},Oi.prototype={constructor:Oi,parse:function(t){var e=this.getAst(t),n=this.astCompiler.compile(e.ast);return n.literal=function(t){return 0===t.body.length||1===t.body.length&&(t.body[0].expression.type===bi.Literal||t.body[0].expression.type===bi.ArrayExpression||t.body[0].expression.type===bi.ObjectExpression)}(e.ast),n.constant=e.ast.constant,n.oneTime=e.oneTime,n},getAst:function(t){var e=!1;return":"===(t=t.trim()).charAt(0)&&":"===t.charAt(1)&&(e=!0,t=t.substring(2)),{ast:this.ast.ast(t),oneTime:e}}};var Ui=o("$sce"),Bi={HTML:"html",CSS:"css",MEDIA_URL:"mediaUrl",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"},zi=/_([a-z])/g;function Gi(t){return t.replace(zi,Jt)}function Hi(t){var e=[];return F(t)&&M(t,function(t){e.push(function(t){if("self"===t)return t;if(z(t)){if(t.indexOf("***")>-1)throw Ui("iwcard","Illegal sequence *** in string matcher. String: {0}",t);return t=et(t).replace(/\\\*\\\*/g,".*").replace(/\\\*/g,"[^:/.?&;]*"),new RegExp("^"+t+"$")}if(X(t))return new RegExp("^"+t.source+"$");throw Ui("imatcher",'Matchers may only be "self", string patterns or RegExp objects')}(t))}),e}function Wi(){this.SCE_CONTEXTS=Bi;var t=["self"],n=[];this.resourceUrlWhitelist=function(e){return arguments.length&&(t=Hi(e)),t},this.resourceUrlBlacklist=function(t){return arguments.length&&(n=Hi(t)),n},this.$get=["$injector","$$sanitizeUri",function(i,r){var o=function(t){throw Ui("unsafe","Attempting to use an unsafe value in a safe context.")};function a(t,n){return"self"===t?or(n,nr)||or(n,e.document.baseURI?e.document.baseURI:(tr||((tr=e.document.createElement("a")).href=".",tr=tr.cloneNode(!1)),tr.href)):!!t.exec(n.href)}function s(t){var e=function(t){this.$$unwrapTrustedValue=function(){return t}};return t&&(e.prototype=new t),e.prototype.valueOf=function(){return this.$$unwrapTrustedValue()},e.prototype.toString=function(){return this.$$unwrapTrustedValue().toString()},e}i.has("$sanitize")&&(o=i.get("$sanitize"));var c=s(),l={};return l[Bi.HTML]=s(c),l[Bi.CSS]=s(c),l[Bi.MEDIA_URL]=s(c),l[Bi.URL]=s(l[Bi.MEDIA_URL]),l[Bi.JS]=s(c),l[Bi.RESOURCE_URL]=s(l[Bi.URL]),{trustAs:function(t,e){var n=l.hasOwnProperty(t)?l[t]:null;if(!n)throw Ui("icontext","Attempted to trust a value in invalid context. Context: {0}; Value: {1}",t,e);if(null===e||V(e)||""===e)return e;if("string"!=typeof e)throw Ui("itype","Attempted to trust a non-string value in a content requiring a string: Context: {0}",t);return new n(e)},getTrusted:function(e,i){if(null===i||V(i)||""===i)return i;var s=l.hasOwnProperty(e)?l[e]:null;if(s&&i instanceof s)return i.$$unwrapTrustedValue();if(K(i.$$unwrapTrustedValue)&&(i=i.$$unwrapTrustedValue()),e===Bi.MEDIA_URL||e===Bi.URL)return r(i.toString(),e===Bi.MEDIA_URL);if(e===Bi.RESOURCE_URL){if(function(e){var i,r,o=rr(e.toString()),s=!1;for(i=0,r=t.length;i<r;i++)if(a(t[i],o)){s=!0;break}if(s)for(i=0,r=n.length;i<r;i++)if(a(n[i],o)){s=!1;break}return s}(i))return i;throw Ui("insecurl","Blocked loading resource from url not allowed by $sceDelegate policy. URL: {0}",i.toString())}if(e===Bi.HTML)return o(i);throw Ui("unsafe","Attempting to use an unsafe value in a safe context.")},valueOf:function(t){return t instanceof c?t.$$unwrapTrustedValue():t}}}]}function qi(){var t=!0;this.enabled=function(e){return arguments.length&&(t=!!e),t},this.$get=["$parse","$sceDelegate",function(e,n){if(t&&a<8)throw Ui("iequirks","Strict Contextual Escaping does not support Internet Explorer version < 11 in quirks mode. You can fix this by adding the text <!doctype html> to the top of your HTML document. See http://docs.angularjs.org/api/ng.$sce for more information.");var i=zt(Bi);i.isEnabled=function(){return t},i.trustAs=n.trustAs,i.getTrusted=n.getTrusted,i.valueOf=n.valueOf,t||(i.trustAs=i.getTrusted=function(t,e){return e},i.valueOf=L),i.parseAs=function(t,n){var r=e(n);return r.literal&&r.constant?r:e(n,function(e){return i.getTrusted(t,e)})};var r=i.parseAs,o=i.getTrusted,s=i.trustAs;return M(Bi,function(t,e){var n=p(e);i[Gi("parse_as_"+n)]=function(e){return r(t,e)},i[Gi("get_trusted_"+n)]=function(e){return o(t,e)},i[Gi("trust_as_"+n)]=function(e){return s(t,e)}}),i}]}function Ki(){this.$get=["$window","$document",function(t,e){var n={},i=!((!t.nw||!t.nw.process)&&t.chrome&&(t.chrome.app&&t.chrome.app.runtime||!t.chrome.app&&t.chrome.runtime&&t.chrome.runtime.id))&&t.history&&t.history.pushState,r=I((/android (\d+)/.exec(p((t.navigator||{}).userAgent))||[])[1]),o=/Boxee/i.test((t.navigator||{}).userAgent),s=e[0]||{},c=s.body&&s.body.style,l=!1,u=!1;return c&&(l=!!("transition"in c||"webkitTransition"in c),u=!!("animation"in c||"webkitAnimation"in c)),{history:!(!i||r<4||o),hasEvent:function(t){if("input"===t&&a)return!1;if(V(n[t])){var e=s.createElement("div");n[t]="on"+t in e}return n[t]},csp:lt(),transitions:l,animations:u,android:r}}]}function Xi(){this.$get=N(function(t){return new function(t){var e={},n=[],i=this.ALL_TASKS_TYPE="$$all$$",r=this.DEFAULT_TASK_TYPE="$$default$$";function o(){var t=n.pop();return t&&t.cb}function a(t){for(var e=n.length-1;e>=0;--e){var i=n[e];if(i.type===t)return n.splice(e,1),i.cb}}this.completeTask=function(n,s){s=s||r;try{n()}finally{!function(t){e[t=t||r]&&(e[t]--,e[i]--)}(s);var c=e[s],l=e[i];if(!l||!c)for(var u,d=l?a:o;u=d(s);)try{u()}catch(e){t.error(e)}}},this.incTaskCount=function(t){e[t=t||r]=(e[t]||0)+1,e[i]=(e[i]||0)+1},this.notifyWhenNoPendingTasks=function(t,r){e[r=r||i]?n.push({type:r,cb:t}):t()}}(t)})}var Yi=o("$templateRequest");function Zi(){var t;this.httpOptions=function(e){return e?(t=e,this):t},this.$get=["$exceptionHandler","$templateCache","$http","$q","$sce",function(e,n,i,r,o){function a(s,c){a.totalPendingRequests++,z(s)&&!V(n.get(s))||(s=o.getTrustedResourceUrl(s));var l=i.defaults&&i.defaults.transformResponse;return W(l)?l=l.filter(function(t){return t!==Nn}):l===Nn&&(l=null),i.get(s,_({cache:n,transformResponse:l},t)).finally(function(){a.totalPendingRequests--}).then(function(t){return n.put(s,t.data)},function(t){return c||(t=Yi("tpload","Failed to load template: {0} (HTTP status: {1} {2})",s,t.status,t.statusText),e(t)),r.reject(t)})}return a.totalPendingRequests=0,a}]}function Ji(){this.$get=["$rootScope","$browser","$location",function(t,e,n){return{findBindings:function(t,e,n){var i=t.getElementsByClassName("ng-binding"),r=[];return M(i,function(t){var i=w.element(t).data("$binding");i&&M(i,function(i){n?new RegExp("(^|\\s)"+et(e)+"(\\s|\\||$)").test(i)&&r.push(t):-1!==i.indexOf(e)&&r.push(t)})}),r},findModels:function(t,e,n){for(var i=["ng-","data-ng-","ng\\:"],r=0;r<i.length;++r){var o="["+i[r]+"model"+(n?"=":"*=")+'"'+e+'"]',a=t.querySelectorAll(o);if(a.length)return a}},getLocation:function(){return n.url()},setLocation:function(e){e!==n.url()&&(n.url(e),t.$digest())},whenStable:function(t){e.notifyWhenNoOutstandingRequests(t)}}}]}var Qi=o("$timeout");function $i(){this.$get=["$rootScope","$browser","$q","$$q","$exceptionHandler",function(t,e,n,i,r){var o={};function a(a,s,c){K(a)||(c=s,s=a,a=R);var l,u=pt(arguments,3),d=F(c)&&!c,p=(d?i:n).defer(),h=p.promise;return l=e.defer(function(){try{p.resolve(a.apply(null,u))}catch(t){p.reject(t),r(t)}finally{delete o[h.$$timeoutId]}d||t.$apply()},s,"$timeout"),h.$$timeoutId=l,o[l]=p,h}return a.cancel=function(t){if(!t)return!1;if(!t.hasOwnProperty("$$timeoutId"))throw Qi("badprom","`$timeout.cancel()` called with a promise that was not generated by `$timeout()`.");if(!o.hasOwnProperty(t.$$timeoutId))return!1;var n=t.$$timeoutId,i=o[n];return Ni(i.promise),i.reject("canceled"),delete o[n],e.defer.cancel(n)},a}]}var tr,er=e.document.createElement("a"),nr=rr(e.location.href);er.href="http://[::1]";var ir="[::1]"===er.hostname;function rr(t){if(!z(t))return t;var e=t;a&&(er.setAttribute("href",e),e=er.href),er.setAttribute("href",e);var n=er.hostname;return!ir&&n.indexOf(":")>-1&&(n="["+n+"]"),{href:er.href,protocol:er.protocol?er.protocol.replace(/:$/,""):"",host:er.host,search:er.search?er.search.replace(/^\?/,""):"",hash:er.hash?er.hash.replace(/^#/,""):"",hostname:n,port:er.port,pathname:"/"===er.pathname.charAt(0)?er.pathname:"/"+er.pathname}}function or(t,e){return t=rr(t),e=rr(e),t.protocol===e.protocol&&t.host===e.host}function ar(){this.$get=N(e)}function sr(t){var e=t[0]||{},n={},i="";function r(t){try{return decodeURIComponent(t)}catch(e){return t}}return function(){var t,o,a,s,c,l=function(t){try{return t.cookie||""}catch(t){return""}}(e);if(l!==i)for(t=(i=l).split("; "),n={},a=0;a<t.length;a++)(s=(o=t[a]).indexOf("="))>0&&(c=r(o.substring(0,s)),V(n[c])&&(n[c]=r(o.substring(s+1))));return n}}function cr(){this.$get=sr}function lr(t){function e(n,i){if(U(n)){var r={};return M(n,function(t,n){r[n]=e(n,t)}),r}return t.factory(n+"Filter",i)}this.register=e,this.$get=["$injector",function(t){return function(e){return t.get(e+"Filter")}}],e("currency",hr),e("date",Cr),e("filter",ur),e("json",Ar),e("limitTo",_r),e("lowercase",Tr),e("number",fr),e("orderBy",Ir),e("uppercase",Or)}function ur(){return function(t,e,n,i){if(!x(t)){if(null==t)return t;throw o("filter")("notarray","Expected array but received: {0}",t)}var r,a;switch(i=i||"$",pr(e)){case"function":r=e;break;case"boolean":case"null":case"number":case"string":a=!0;case"object":r=function(t,e,n,i){var r=U(t)&&n in t;return!0===e?e=ct:K(e)||(e=function(t,e){return!(V(t)||(null===t||null===e?t!==e:U(e)||U(t)&&!j(t)||(t=p(""+t),e=p(""+e),-1===t.indexOf(e))))}),function(o){return r&&!U(o)?dr(o,t[n],e,n,!1):dr(o,t,e,n,i)}}(e,n,i,a);break;default:return t}return Array.prototype.filter.call(t,r)}}function dr(t,e,n,i,r,o){var a=pr(t),s=pr(e);if("string"===s&&"!"===e.charAt(0))return!dr(t,e.substring(1),n,i,r);if(W(t))return t.some(function(t){return dr(t,e,n,i,r)});switch(a){case"object":var c;if(r){for(c in t)if(c.charAt&&"$"!==c.charAt(0)&&dr(t[c],e,n,i,!0))return!0;return!o&&dr(t,e,n,i,!1)}if("object"===s){for(c in e){var l=e[c];if(!K(l)&&!V(l)){var u=c===i;if(!dr(u?t:t[c],l,n,i,u,u))return!1}}return!0}return n(t,e);case"function":return!1;default:return n(t,e)}}function pr(t){return null===t?"null":typeof t}function hr(t){var e=t.NUMBER_FORMATS;return function(t,n,i){V(n)&&(n=e.CURRENCY_SYM),V(i)&&(i=e.PATTERNS[1].maxFrac);var r=n?/\u00A4/g:/\s*\u00A4\s*/g;return null==t?t:gr(t,e.PATTERNS[1],e.GROUP_SEP,e.DECIMAL_SEP,i).replace(r,n)}}function fr(t){var e=t.NUMBER_FORMATS;return function(t,n){return null==t?t:gr(t,e.PATTERNS[0],e.GROUP_SEP,e.DECIMAL_SEP,n)}}function gr(t,e,n,i,r){if(!z(t)&&!G(t)||isNaN(t))return"";var o,a=!isFinite(t),s=!1,c=Math.abs(t)+"",l="";if(a)l="∞";else{!function(t,e,n,i){var r=t.d,o=r.length-t.i,a=(e=V(e)?Math.min(Math.max(n,o),i):+e)+t.i,s=r[a];if(a>0){r.splice(Math.max(t.i,a));for(var c=a;c<r.length;c++)r[c]=0}else{o=Math.max(0,o),t.i=1,r.length=Math.max(1,a=e+1),r[0]=0;for(var l=1;l<a;l++)r[l]=0}if(s>=5)if(a-1<0){for(var u=0;u>a;u--)r.unshift(0),t.i++;r.unshift(1),t.i++}else r[a-1]++;for(;o<Math.max(0,e);o++)r.push(0);var d=r.reduceRight(function(t,e,n,i){return e+=t,i[n]=e%10,Math.floor(e/10)},0);d&&(r.unshift(d),t.i++)}(o=function(t){var e,n,i,r,o,a=0;for((n=t.indexOf("."))>-1&&(t=t.replace(".","")),(i=t.search(/e/i))>0?(n<0&&(n=i),n+=+t.slice(i+1),t=t.substring(0,i)):n<0&&(n=t.length),i=0;"0"===t.charAt(i);i++);if(i===(o=t.length))e=[0],n=1;else{for(o--;"0"===t.charAt(o);)o--;for(n-=i,e=[],r=0;i<=o;i++,r++)e[r]=+t.charAt(i)}return n>22&&(e=e.splice(0,21),a=n-1,n=1),{d:e,e:a,i:n}}(c),r,e.minFrac,e.maxFrac);var u=o.d,d=o.i,p=o.e,h=[];for(s=u.reduce(function(t,e){return t&&!e},!0);d<0;)u.unshift(0),d++;d>0?h=u.splice(d,u.length):(h=u,u=[0]);var f=[];for(u.length>=e.lgSize&&f.unshift(u.splice(-e.lgSize,u.length).join(""));u.length>e.gSize;)f.unshift(u.splice(-e.gSize,u.length).join(""));u.length&&f.unshift(u.join("")),l=f.join(n),h.length&&(l+=i+h.join("")),p&&(l+="e+"+p)}return t<0&&!s?e.negPre+l+e.negSuf:e.posPre+l+e.posSuf}function mr(t,e,n,i){var r="";for((t<0||i&&t<=0)&&(i?t=1-t:(t=-t,r="-")),t=""+t;t.length<e;)t="0"+t;return n&&(t=t.substr(t.length-e)),r+t}function vr(t,e,n,i,r){return n=n||0,function(o){var a=o["get"+t]();return(n>0||a>-n)&&(a+=n),0===a&&-12===n&&(a=12),mr(a,e,i,r)}}function yr(t,e,n){return function(i,r){var o=i["get"+t]();return r[h((n?"STANDALONE":"")+(e?"SHORT":"")+t)][o]}}function br(t){var e=new Date(t,0,1).getDay();return new Date(t,0,(e<=4?5:12)-e)}function wr(t){return function(e){var n,i=br(e.getFullYear()),r=(n=e,+new Date(n.getFullYear(),n.getMonth(),n.getDate()+(4-n.getDay()))-+i);return mr(1+Math.round(r/6048e5),t)}}function Sr(t,e){return t.getFullYear()<=0?e.ERAS[0]:e.ERAS[1]}sr.$inject=["$document"],lr.$inject=["$provide"],hr.$inject=["$locale"],fr.$inject=["$locale"];var xr={yyyy:vr("FullYear",4,0,!1,!0),yy:vr("FullYear",2,0,!0,!0),y:vr("FullYear",1,0,!1,!0),MMMM:yr("Month"),MMM:yr("Month",!0),MM:vr("Month",2,1),M:vr("Month",1,1),LLLL:yr("Month",!1,!0),dd:vr("Date",2),d:vr("Date",1),HH:vr("Hours",2),H:vr("Hours",1),hh:vr("Hours",2,-12),h:vr("Hours",1,-12),mm:vr("Minutes",2),m:vr("Minutes",1),ss:vr("Seconds",2),s:vr("Seconds",1),sss:vr("Milliseconds",3),EEEE:yr("Day"),EEE:yr("Day",!0),a:function(t,e){return t.getHours()<12?e.AMPMS[0]:e.AMPMS[1]},Z:function(t,e,n){var i=-1*n;return(i>=0?"+":"")+(mr(Math[i>0?"floor":"ceil"](i/60),2)+mr(Math.abs(i%60),2))},ww:wr(2),w:wr(1),G:Sr,GG:Sr,GGG:Sr,GGGG:function(t,e){return t.getFullYear()<=0?e.ERANAMES[0]:e.ERANAMES[1]}},Mr=/((?:[^yMLdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|L+|d+|H+|h+|m+|s+|a|Z|G+|w+))([\s\S]*)/,Er=/^-?\d+$/;function Cr(t){var e=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;return function(n,i,r){var o,a,s="",c=[];if(i=i||"mediumDate",i=t.DATETIME_FORMATS[i]||i,z(n)&&(n=Er.test(n)?I(n):function(t){var n;if(n=t.match(e)){var i=new Date(0),r=0,o=0,a=n[8]?i.setUTCFullYear:i.setFullYear,s=n[8]?i.setUTCHours:i.setHours;n[9]&&(r=I(n[9]+n[10]),o=I(n[9]+n[11])),a.call(i,I(n[1]),I(n[2])-1,I(n[3]));var c=I(n[4]||0)-r,l=I(n[5]||0)-o,u=I(n[6]||0),d=Math.round(1e3*parseFloat("0."+(n[7]||0)));return s.call(i,c,l,u,d),i}return t}(n)),G(n)&&(n=new Date(n)),!H(n)||!isFinite(n.getTime()))return n;for(;i;)(a=Mr.exec(i))?i=(c=dt(c,a,1)).pop():(c.push(i),i=null);var l=n.getTimezoneOffset();return r&&(l=yt(r,l),n=wt(n,r,!0)),M(c,function(e){s+=(o=xr[e])?o(n,t.DATETIME_FORMATS,l):"''"===e?"'":e.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),s}}function Ar(){return function(t,e){return V(e)&&(e=2),gt(t,e)}}Cr.$inject=["$locale"];var Tr=N(p),Or=N(h);function _r(){return function(t,e,n){return e=Math.abs(Number(e))===1/0?Number(e):I(e),k(e)?t:(G(t)&&(t=t.toString()),x(t)?(n=(n=!n||isNaN(n)?0:I(n))<0?Math.max(0,t.length+n):n,e>=0?Pr(t,n,n+e):0===n?Pr(t,e,t.length):Pr(t,Math.max(0,n+e),n)):t)}}function Pr(t,e,n){return z(t)?t.slice(e,n):f.call(t,e,n)}function Ir(t){return function(i,r,a,s){if(null==i)return i;if(!x(i))throw o("orderBy")("notarray","Expected array but received: {0}",i);W(r)||(r=[r]),0===r.length&&(r=["+"]);var c=r.map(function(e){var n=1,i=L;if(K(e))i=e;else if(z(e)&&("+"!==e.charAt(0)&&"-"!==e.charAt(0)||(n="-"===e.charAt(0)?-1:1,e=e.substring(1)),""!==e&&(i=t(e)).constant)){var r=i();i=function(t){return t[r]}}return{get:i,descending:n}}),l=a?-1:1,u=K(s)?s:n,d=Array.prototype.map.call(i,function(t,n){return{value:t,tieBreaker:{value:n,type:"number",index:n},predicateValues:c.map(function(i){return function(t,n){var i=typeof t;return null===t?i="null":"object"===i&&(t=function(t){return K(t.valueOf)&&e(t=t.valueOf())?t:(j(t)&&e(t=t.toString()),t)}(t)),{value:t,type:i,index:n}}(i.get(t),n)})}});return d.sort(function(t,e){for(var i=0,r=c.length;i<r;i++){var o=u(t.predicateValues[i],e.predicateValues[i]);if(o)return o*c[i].descending*l}return(u(t.tieBreaker,e.tieBreaker)||n(t.tieBreaker,e.tieBreaker))*l}),d.map(function(t){return t.value})};function e(t){switch(typeof t){case"number":case"boolean":case"string":return!0;default:return!1}}function n(t,e){var n=0,i=t.type,r=e.type;if(i===r){var o=t.value,a=e.value;"string"===i?(o=o.toLowerCase(),a=a.toLowerCase()):"object"===i&&(U(o)&&(o=t.index),U(a)&&(a=e.index)),o!==a&&(n=o<a?-1:1)}else n="undefined"===i?1:"undefined"===r?-1:"null"===i?1:"null"===r||i<r?-1:1;return n}}function kr(t){return K(t)&&(t={link:t}),t.restrict=t.restrict||"AC",N(t)}Ir.$inject=["$parse"];var Dr=N({restrict:"E",compile:function(t,e){if(!e.href&&!e.xlinkHref)return function(t,e){if("a"===e[0].nodeName.toLowerCase()){var n="[object SVGAnimatedString]"===v.call(e.prop("href"))?"xlink:href":"href";e.on("click",function(t){e.attr(n)||t.preventDefault()})}}}}),Rr={};M(Ie,function(t,e){if("multiple"!==t){var n=yn("ng-"+e),i=r;"checked"===t&&(i=function(t,e,i){i.ngModel!==i[n]&&r(t,0,i)}),Rr[n]=function(){return{restrict:"A",priority:100,link:i}}}function r(t,i,r){t.$watch(r[n],function(t){r.$set(e,!!t)})}}),M(De,function(t,e){Rr[e]=function(){return{priority:100,link:function(t,n,i){if("ngPattern"===e&&"/"===i.ngPattern.charAt(0)){var r=i.ngPattern.match(u);if(r)return void i.$set("ngPattern",new RegExp(r[1],r[2]))}t.$watch(i[e],function(t){i.$set(e,t)})}}}}),M(["src","srcset","href"],function(t){var e=yn("ng-"+t);Rr[e]=["$sce",function(n){return{priority:99,link:function(i,r,o){var s=t,c=t;"href"===t&&"[object SVGAnimatedString]"===v.call(r.prop("href"))&&(c="xlinkHref",o.$attr[c]="xlink:href",s=null),o.$set(e,n.getTrustedMediaUrl(o[e])),o.$observe(e,function(e){e?(o.$set(c,e),a&&s&&r.prop(s,o[c])):"href"===t&&o.$set(c,null)})}}}]});var Lr={$addControl:R,$getControls:N([]),$$renameControl:function(t,e){t.$name=e},$removeControl:R,$setValidity:R,$setDirty:R,$setPristine:R,$setSubmitted:R,$$setSubmitted:R};function Nr(t,e,n,i,r){this.$$controls=[],this.$error={},this.$$success={},this.$pending=void 0,this.$name=r(e.name||e.ngForm||"")(n),this.$dirty=!1,this.$pristine=!0,this.$valid=!0,this.$invalid=!1,this.$submitted=!1,this.$$parentForm=Lr,this.$$element=t,this.$$animate=i,Ur(this)}Nr.$inject=["$element","$attrs","$scope","$animate","$interpolate"],Nr.prototype={$rollbackViewValue:function(){M(this.$$controls,function(t){t.$rollbackViewValue()})},$commitViewValue:function(){M(this.$$controls,function(t){t.$commitViewValue()})},$addControl:function(t){jt(t.$name,"input"),this.$$controls.push(t),t.$name&&(this[t.$name]=t),t.$$parentForm=this},$getControls:function(){return zt(this.$$controls)},$$renameControl:function(t,e){var n=t.$name;this[n]===t&&delete this[n],this[e]=t,t.$name=e},$removeControl:function(t){t.$name&&this[t.$name]===t&&delete this[t.$name],M(this.$pending,function(e,n){this.$setValidity(n,null,t)},this),M(this.$error,function(e,n){this.$setValidity(n,null,t)},this),M(this.$$success,function(e,n){this.$setValidity(n,null,t)},this),ot(this.$$controls,t),t.$$parentForm=Lr},$setDirty:function(){this.$$animate.removeClass(this.$$element,No),this.$$animate.addClass(this.$$element,jo),this.$dirty=!0,this.$pristine=!1,this.$$parentForm.$setDirty()},$setPristine:function(){this.$$animate.setClass(this.$$element,No,jo+" ng-submitted"),this.$dirty=!1,this.$pristine=!0,this.$submitted=!1,M(this.$$controls,function(t){t.$setPristine()})},$setUntouched:function(){M(this.$$controls,function(t){t.$setUntouched()})},$setSubmitted:function(){for(var t=this;t.$$parentForm&&t.$$parentForm!==Lr;)t=t.$$parentForm;t.$$setSubmitted()},$$setSubmitted:function(){this.$$animate.addClass(this.$$element,"ng-submitted"),this.$submitted=!0,M(this.$$controls,function(t){t.$$setSubmitted&&t.$$setSubmitted()})}},Br({clazz:Nr,set:function(t,e,n){var i=t[e];i?-1===i.indexOf(n)&&i.push(n):t[e]=[n]},unset:function(t,e,n){var i=t[e];i&&(ot(i,n),0===i.length&&delete t[e])}});var jr=function(t){return["$timeout","$parse",function(e,n){return{name:"form",restrict:t?"EAC":"E",require:["form","^^?form"],controller:Nr,compile:function(n,r){n.addClass(No).addClass(Ro);var o=r.name?"name":!(!t||!r.ngForm)&&"ngForm";return{pre:function(t,n,r,a){var s=a[0];if(!("action"in r)){var c=function(e){t.$apply(function(){s.$commitViewValue(),s.$setSubmitted()}),e.preventDefault()};n[0].addEventListener("submit",c),n.on("$destroy",function(){e(function(){n[0].removeEventListener("submit",c)},0,!1)})}(a[1]||s.$$parentForm).$addControl(s);var l=o?i(s.$name):R;o&&(l(t,s),r.$observe(o,function(e){s.$name!==e&&(l(t,void 0),s.$$parentForm.$$renameControl(s,e),(l=i(s.$name))(t,s))})),n.on("$destroy",function(){s.$$parentForm.$removeControl(s),l(t,void 0),_(s,Lr)})}}}};function i(t){return""===t?n('this[""]').assign:n(t).assign||R}}]},Vr=jr(),Fr=jr(!0);function Ur(t){t.$$classCache={},t.$$classCache[Lo]=!(t.$$classCache[Ro]=t.$$element.hasClass(Ro))}function Br(t){var e=t.clazz,n=t.set,i=t.unset;function r(t,e,n){n&&!t.$$classCache[e]?(t.$$animate.addClass(t.$$element,e),t.$$classCache[e]=!0):!n&&t.$$classCache[e]&&(t.$$animate.removeClass(t.$$element,e),t.$$classCache[e]=!1)}function o(t,e,n){e=e?"-"+kt(e,"-"):"",r(t,Ro+e,!0===n),r(t,Lo+e,!1===n)}e.prototype.$setValidity=function(t,e,a){var s;V(e)?function(t,e,i,r){t[e]||(t[e]={}),n(t[e],i,r)}(this,"$pending",t,a):function(t,e,n,r){t[e]&&i(t[e],n,r),zr(t[e])&&(t[e]=void 0)}(this,"$pending",t,a),J(e)?e?(i(this.$error,t,a),n(this.$$success,t,a)):(n(this.$error,t,a),i(this.$$success,t,a)):(i(this.$error,t,a),i(this.$$success,t,a)),this.$pending?(r(this,"ng-pending",!0),this.$valid=this.$invalid=void 0,o(this,"",null)):(r(this,"ng-pending",!1),this.$valid=zr(this.$error),this.$invalid=!this.$valid,o(this,"",this.$valid)),o(this,t,s=this.$pending&&this.$pending[t]?void 0:!this.$error[t]&&(!!this.$$success[t]||null)),this.$$parentForm.$setValidity(t,s,this)}}function zr(t){if(t)for(var e in t)if(t.hasOwnProperty(e))return!1;return!0}var Gr=/^\d{4,}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+(?:[+-][0-2]\d:[0-5]\d|Z)$/,Hr=/^[a-z][a-z\d.+-]*:\/*(?:[^:@]+(?::[^@]+)?@)?(?:[^\s:/?#]+|\[[a-f\d:]+])(?::\d+)?(?:\/[^?#]*)?(?:\?[^#]*)?(?:#.*)?$/i,Wr=/^(?=.{1,254}$)(?=.{1,64}@)[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+(\.[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+)*@[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?(\.[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?)*$/,qr=/^\s*(-|\+)?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/,Kr=/^(\d{4,})-(\d{2})-(\d{2})$/,Xr=/^(\d{4,})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,Yr=/^(\d{4,})-W(\d\d)$/,Zr=/^(\d{4,})-(\d\d)$/,Jr=/^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,Qr=Ft();M("date,datetime-local,month,time,week".split(","),function(t){Qr[t]=!0});var $r={text:function(t,e,n,i,r,o){eo(t,e,n,i,r,o),to(i)},date:io("date",Kr,no(Kr,["yyyy","MM","dd"]),"yyyy-MM-dd"),"datetime-local":io("datetimelocal",Xr,no(Xr,["yyyy","MM","dd","HH","mm","ss","sss"]),"yyyy-MM-ddTHH:mm:ss.sss"),time:io("time",Jr,no(Jr,["HH","mm","ss","sss"]),"HH:mm:ss.sss"),week:io("week",Yr,function(t,e){if(H(t))return t;if(z(t)){Yr.lastIndex=0;var n=Yr.exec(t);if(n){var i=+n[1],r=+n[2],o=0,a=0,s=0,c=0,l=br(i),u=7*(r-1);return e&&(o=e.getHours(),a=e.getMinutes(),s=e.getSeconds(),c=e.getMilliseconds()),new Date(i,0,l.getDate()+u,o,a,s,c)}}return NaN},"yyyy-Www"),month:io("month",Zr,no(Zr,["yyyy","MM"]),"yyyy-MM"),number:function(t,e,n,i,r,o,a,s){var c;if(ro(t,e,n,i,"number"),oo(i),eo(t,e,n,i,r,o),F(n.min)||n.ngMin){var l=n.min||s(n.ngMin)(t);c=ao(l),i.$validators.min=function(t,e){return i.$isEmpty(e)||V(c)||e>=c},n.$observe("min",function(t){t!==l&&(c=ao(t),l=t,i.$validate())})}if(F(n.max)||n.ngMax){var u=n.max||s(n.ngMax)(t),d=ao(u);i.$validators.max=function(t,e){return i.$isEmpty(e)||V(d)||e<=d},n.$observe("max",function(t){t!==u&&(d=ao(t),u=t,i.$validate())})}if(F(n.step)||n.ngStep){var p=n.step||s(n.ngStep)(t),h=ao(p);i.$validators.step=function(t,e){return i.$isEmpty(e)||V(h)||lo(e,c||0,h)},n.$observe("step",function(t){t!==p&&(h=ao(t),p=t,i.$validate())})}},url:function(t,e,n,i,r,o){eo(t,e,n,i,r,o),to(i),i.$validators.url=function(t,e){var n=t||e;return i.$isEmpty(n)||Hr.test(n)}},email:function(t,e,n,i,r,o){eo(t,e,n,i,r,o),to(i),i.$validators.email=function(t,e){var n=t||e;return i.$isEmpty(n)||Wr.test(n)}},radio:function(t,e,n,i){var r=!n.ngTrim||"false"!==tt(n.ngTrim);V(n.name)&&e.attr("name",A()),e.on("change",function(t){var o;e[0].checked&&(o=n.value,r&&(o=tt(o)),i.$setViewValue(o,t&&t.type))}),i.$render=function(){var t=n.value;r&&(t=tt(t)),e[0].checked=t===i.$viewValue},n.$observe("value",i.$render)},range:function(t,e,n,i,r,o){ro(t,e,n,i,"range"),oo(i),eo(t,e,n,i,r,o);var a=i.$$hasNativeValidators&&"range"===e[0].type,s=a?0:void 0,c=a?100:void 0,l=a?1:void 0,u=e[0].validity,d=F(n.min),p=F(n.max),h=F(n.step),f=i.$render;function g(t,i){e.attr(t,n[t]);var r=n[t];n.$observe(t,function(t){t!==r&&(r=t,i(t))})}i.$render=a&&F(u.rangeUnderflow)&&F(u.rangeOverflow)?function(){f(),i.$setViewValue(e.val())}:f,d&&(s=ao(n.min),i.$validators.min=a?function(){return!0}:function(t,e){return i.$isEmpty(e)||V(s)||e>=s},g("min",function(t){if(s=ao(t),!k(i.$modelValue))if(a){var n=e.val();s>n&&(n=s,e.val(n)),i.$setViewValue(n)}else i.$validate()})),p&&(c=ao(n.max),i.$validators.max=a?function(){return!0}:function(t,e){return i.$isEmpty(e)||V(c)||e<=c},g("max",function(t){if(c=ao(t),!k(i.$modelValue))if(a){var n=e.val();c<n&&(e.val(c),n=c<s?s:c),i.$setViewValue(n)}else i.$validate()})),h&&(l=ao(n.step),i.$validators.step=a?function(){return!u.stepMismatch}:function(t,e){return i.$isEmpty(e)||V(l)||lo(e,s||0,l)},g("step",function(t){l=ao(t),k(i.$modelValue)||(a?i.$viewValue!==e.val()&&i.$setViewValue(e.val()):i.$validate())}))},checkbox:function(t,e,n,i,r,o,a,s){var c=uo(s,t,"ngTrueValue",n.ngTrueValue,!0),l=uo(s,t,"ngFalseValue",n.ngFalseValue,!1);e.on("change",function(t){i.$setViewValue(e[0].checked,t&&t.type)}),i.$render=function(){e[0].checked=i.$viewValue},i.$isEmpty=function(t){return!1===t},i.$formatters.push(function(t){return ct(t,c)}),i.$parsers.push(function(t){return t?c:l})},hidden:R,button:R,submit:R,reset:R,file:R};function to(t){t.$formatters.push(function(e){return t.$isEmpty(e)?e:e.toString()})}function eo(t,e,n,i,r,o){var a,s=p(e[0].type);if(!r.android){var c=!1;e.on("compositionstart",function(){c=!0}),e.on("compositionupdate",function(t){(V(t.data)||""===t.data)&&(c=!1)}),e.on("compositionend",function(){c=!1,l()})}var l=function(t){if(a&&(o.defer.cancel(a),a=null),!c){var r=e.val(),l=t&&t.type;"password"===s||n.ngTrim&&"false"===n.ngTrim||(r=tt(r)),(i.$viewValue!==r||""===r&&i.$$hasNativeValidators)&&i.$setViewValue(r,l)}};if(r.hasEvent("input"))e.on("input",l);else{var u=function(t,e,n){a||(a=o.defer(function(){a=null,e&&e.value===n||l(t)}))};e.on("keydown",function(t){var e=t.keyCode;91===e||15<e&&e<19||37<=e&&e<=40||u(t,this,this.value)}),r.hasEvent("paste")&&e.on("paste cut drop",u)}e.on("change",l),Qr[s]&&i.$$hasNativeValidators&&s===n.type&&e.on("keydown wheel mousedown",function(t){if(!a){var e=this.validity,n=e.badInput,i=e.typeMismatch;a=o.defer(function(){a=null,e.badInput===n&&e.typeMismatch===i||l(t)})}}),i.$render=function(){var t=i.$isEmpty(i.$viewValue)?"":i.$viewValue;e.val()!==t&&e.val(t)}}function no(t,e){return function(n,i){var r,o;if(H(n))return n;if(z(n)){if('"'===n.charAt(0)&&'"'===n.charAt(n.length-1)&&(n=n.substring(1,n.length-1)),Gr.test(n))return new Date(n);if(t.lastIndex=0,r=t.exec(n)){r.shift(),o=i?{yyyy:i.getFullYear(),MM:i.getMonth()+1,dd:i.getDate(),HH:i.getHours(),mm:i.getMinutes(),ss:i.getSeconds(),sss:i.getMilliseconds()/1e3}:{yyyy:1970,MM:1,dd:1,HH:0,mm:0,ss:0,sss:0},M(r,function(t,n){n<e.length&&(o[e[n]]=+t)});var a=new Date(o.yyyy,o.MM-1,o.dd,o.HH,o.mm,o.ss||0,1e3*o.sss||0);return o.yyyy<100&&a.setFullYear(o.yyyy),a}}return NaN}}function io(t,e,n,i){return function(r,o,a,s,c,l,u,d){ro(r,o,a,s,t),eo(0,o,a,s,c,l);var p,h,f="time"===t||"datetimelocal"===t;if(s.$parsers.push(function(n){return s.$isEmpty(n)?null:e.test(n)?S(n,p):void(s.$$parserName=t)}),s.$formatters.push(function(t){if(t&&!H(t))throw Vo("datefmt","Expected `{0}` to be a date",t);if(b(t)){p=t;var e=s.$options.getOption("timezone");return e&&(h=e,p=wt(p,e,!0)),function(t,e){var n=i;f&&z(s.$options.getOption("timeSecondsFormat"))&&(n=i.replace("ss.sss",s.$options.getOption("timeSecondsFormat")).replace(/:$/,""));var r=u("date")(t,n,e);return f&&s.$options.getOption("timeStripZeroSeconds")&&(r=r.replace(/(?::00)?(?:\.000)?$/,"")),r}(t,e)}return p=null,h=null,""}),F(a.min)||a.ngMin){var g=a.min||d(a.ngMin)(r),m=w(g);s.$validators.min=function(t){return!b(t)||V(m)||n(t)>=m},a.$observe("min",function(t){t!==g&&(m=w(t),g=t,s.$validate())})}if(F(a.max)||a.ngMax){var v=a.max||d(a.ngMax)(r),y=w(v);s.$validators.max=function(t){return!b(t)||V(y)||n(t)<=y},a.$observe("max",function(t){t!==v&&(y=w(t),v=t,s.$validate())})}function b(t){return t&&!(t.getTime&&t.getTime()!=t.getTime())}function w(t){return F(t)&&!H(t)?S(t)||void 0:t}function S(t,e){var i=s.$options.getOption("timezone");h&&h!==i&&(e=bt(e,yt(h)));var r=n(t,e);return!isNaN(r)&&i&&(r=wt(r,i)),r}}}function ro(t,e,n,i,r){var o=e[0];(i.$$hasNativeValidators=U(o.validity))&&i.$parsers.push(function(t){var n=e.prop("validity")||{};if(!n.badInput&&!n.typeMismatch)return t;i.$$parserName=r})}function oo(t){t.$parsers.push(function(e){return t.$isEmpty(e)?null:qr.test(e)?parseFloat(e):void(t.$$parserName="number")}),t.$formatters.push(function(e){if(!t.$isEmpty(e)){if(!G(e))throw Vo("numfmt","Expected `{0}` to be a number",e);e=e.toString()}return e})}function ao(t){return F(t)&&!G(t)&&(t=parseFloat(t)),k(t)?void 0:t}function so(t){return(0|t)===t}function co(t){var e=t.toString(),n=e.indexOf(".");if(-1===n){if(-1<t&&t<1){var i=/e-(\d+)$/.exec(e);if(i)return Number(i[1])}return 0}return e.length-n-1}function lo(t,e,n){var i=Number(t),r=!so(i),o=!so(e),a=!so(n);if(r||o||a){var s=r?co(i):0,c=o?co(e):0,l=a?co(n):0,u=Math.max(s,c,l),d=Math.pow(10,u);i*=d,e*=d,n*=d,r&&(i=Math.round(i)),o&&(e=Math.round(e)),a&&(n=Math.round(n))}return(i-e)%n==0}function uo(t,e,n,i,r){var o;if(F(i)){if(!(o=t(i)).constant)throw Vo("constexpr","Expected constant expression for `{0}`, but saw `{1}`.",n,i);return o(e)}return r}var po=["$browser","$sniffer","$filter","$parse",function(t,e,n,i){return{restrict:"E",require:["?ngModel"],link:{pre:function(r,o,a,s){s[0]&&($r[p(a.type)]||$r.text)(r,o,a,s[0],e,t,n,i)}}}}],ho=function(){var t={configurable:!0,enumerable:!1,get:function(){return this.getAttribute("value")||""},set:function(t){this.setAttribute("value",t)}};return{restrict:"E",priority:200,compile:function(e,n){if("hidden"===p(n.type))return{pre:function(e,n,i,r){var o=n[0];o.parentNode&&o.parentNode.insertBefore(o,o.nextSibling),Object.defineProperty&&Object.defineProperty(o,"value",t)}}}}},fo=/^(true|false|\d+)$/,go=function(){function t(t,e,n){var i=F(n)?n:9===a?"":null;t.prop("value",i),e.$set("value",n)}return{restrict:"A",priority:100,compile:function(e,n){return fo.test(n.ngValue)?function(e,n,i){t(n,i,e.$eval(i.ngValue))}:function(e,n,i){e.$watch(i.ngValue,function(e){t(n,i,e)})}}}},mo=["$compile",function(t){return{restrict:"AC",compile:function(e){return t.$$addBindingClass(e),function(e,n,i){t.$$addBindingInfo(n,i.ngBind),n=n[0],e.$watch(i.ngBind,function(t){n.textContent=Ut(t)})}}}}],vo=["$interpolate","$compile",function(t,e){return{compile:function(n){return e.$$addBindingClass(n),function(n,i,r){var o=t(i.attr(r.$attr.ngBindTemplate));e.$$addBindingInfo(i,o.expressions),i=i[0],r.$observe("ngBindTemplate",function(t){i.textContent=V(t)?"":t})}}}}],yo=["$sce","$parse","$compile",function(t,e,n){return{restrict:"A",compile:function(i,r){var o=e(r.ngBindHtml),a=e(r.ngBindHtml,function(e){return t.valueOf(e)});return n.$$addBindingClass(i),function(e,i,r){n.$$addBindingInfo(i,r.ngBindHtml),e.$watch(a,function(){var n=o(e);i.html(t.getTrustedHtml(n)||"")})}}}}],bo=N({restrict:"A",require:"ngModel",link:function(t,e,n,i){i.$viewChangeListeners.push(function(){t.$eval(n.ngChange)})}});function wo(t,e){var n;return t="ngClass"+t,["$parse",function(a){return{restrict:"AC",link:function(s,c,l){var u,d=c.data("$classCounts"),p=!0;function h(t,e){var n=[];return M(t,function(t){(e>0||d[t])&&(d[t]=(d[t]||0)+e,d[t]===+(e>0)&&n.push(t))}),n.join(" ")}d||(d=Ft(),c.data("$classCounts",d)),"ngClass"!==t&&(n||(n=a("$index",function(t){return 1&t})),s.$watch(n,function(t){var n;t===e?(n=h(r(n=u),1),l.$addClass(n)):function(t){t=h(r(t),-1),l.$removeClass(t)}(u),p=t})),s.$watch(a(l[t],o),function(t){p===e&&function(t,e){var n=r(t),o=r(e),a=i(n,o),s=i(o,n),c=h(a,-1),u=h(s,1);l.$addClass(u),l.$removeClass(c)}(u,t),u=t})}}}];function i(t,e){if(!t||!t.length)return[];if(!e||!e.length)return t;var n=[];t:for(var i=0;i<t.length;i++){for(var r=t[i],o=0;o<e.length;o++)if(r===e[o])continue t;n.push(r)}return n}function r(t){return t&&t.split(" ")}function o(t){if(!t)return t;var e=t;return W(t)?e=t.map(o).join(" "):U(t)?e=Object.keys(t).filter(function(e){return t[e]}).join(" "):z(t)||(e=t+""),e}}var So=wo("",!0),xo=wo("Odd",0),Mo=wo("Even",1),Eo=kr({compile:function(t,e){e.$set("ngCloak",void 0),t.removeClass("ng-cloak")}}),Co=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],Ao={},To={blur:!0,focus:!0};function Oo(t,e,n,i,r,o){return{restrict:"A",compile:function(a,s){var c=t(s[i]);return function(t,i){i.on(r,function(i){var r=function(){c(t,{$event:i})};if(e.$$phase)if(o)t.$evalAsync(r);else try{r()}catch(t){n(t)}else t.$apply(r)})}}}}M("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "),function(t){var e=yn("ng-"+t);Ao[e]=["$parse","$rootScope","$exceptionHandler",function(n,i,r){return Oo(n,i,r,e,t,To[t])}]});var _o=["$animate","$compile",function(t,e){return{multiElement:!0,transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(n,i,r,o,a){var s,c,l;n.$watch(r.ngIf,function(n){n?c||a(function(n,o){c=o,n[n.length++]=e.$$createComment("end ngIf",r.ngIf),s={clone:n},t.enter(n,i.parent(),i)}):(l&&(l.remove(),l=null),c&&(c.$destroy(),c=null),s&&(l=Vt(s.clone),t.leave(l).done(function(t){!1!==t&&(l=null)}),s=null))})}}}],Po=["$templateRequest","$anchorScroll","$animate",function(t,e,n){return{restrict:"ECA",priority:400,terminal:!0,transclude:"element",controller:w.noop,compile:function(i,r){var o=r.ngInclude||r.src,a=r.onload||"",s=r.autoscroll;return function(i,r,c,l,u){var d,p,h,f=0,g=function(){p&&(p.remove(),p=null),d&&(d.$destroy(),d=null),h&&(n.leave(h).done(function(t){!1!==t&&(p=null)}),p=h,h=null)};i.$watch(o,function(o){var c=function(t){!1===t||!F(s)||s&&!i.$eval(s)||e()},p=++f;o?(t(o,!0).then(function(t){if(!i.$$destroyed&&p===f){var e=i.$new();l.template=t;var s=u(e,function(t){g(),n.enter(t,null,r).done(c)});h=s,(d=e).$emit("$includeContentLoaded",o),i.$eval(a)}},function(){i.$$destroyed||p===f&&(g(),i.$emit("$includeContentError",o))}),i.$emit("$includeContentRequested",o)):(g(),l.template=null)})}}}}],Io=["$compile",function(t){return{restrict:"ECA",priority:-400,require:"ngInclude",link:function(n,i,r,o){if(v.call(i[0]).match(/SVG/))return i.empty(),void t(ue(o.template,e.document).childNodes)(n,function(t){i.append(t)},{futureParentElement:i});i.html(o.template),t(i.contents())(n)}}}],ko=kr({priority:450,compile:function(){return{pre:function(t,e,n){t.$eval(n.ngInit)}}}}),Do=function(){return{restrict:"A",priority:100,require:"ngModel",link:function(t,e,n,i){var r=n.ngList||", ",o="false"!==n.ngTrim,a=o?tt(r):r;i.$parsers.push(function(t){if(!V(t)){var e=[];return t&&M(t.split(a),function(t){t&&e.push(o?tt(t):t)}),e}}),i.$formatters.push(function(t){if(W(t))return t.join(r)}),i.$isEmpty=function(t){return!t||!t.length}}}},Ro="ng-valid",Lo="ng-invalid",No="ng-pristine",jo="ng-dirty",Vo=o("ngModel");function Fo(t,e,n,i,r,o,a,s,c){var l;this.$viewValue=Number.NaN,this.$modelValue=Number.NaN,this.$$rawModelValue=void 0,this.$validators={},this.$asyncValidators={},this.$parsers=[],this.$formatters=[],this.$viewChangeListeners=[],this.$untouched=!0,this.$touched=!1,this.$pristine=!0,this.$dirty=!1,this.$valid=!0,this.$invalid=!1,this.$error={},this.$$success={},this.$pending=void 0,this.$name=c(n.name||"",!1)(t),this.$$parentForm=Lr,this.$options=Uo,this.$$updateEvents="",this.$$updateEventHandler=this.$$updateEventHandler.bind(this),this.$$parsedNgModel=r(n.ngModel),this.$$parsedNgModelAssign=this.$$parsedNgModel.assign,this.$$ngModelGet=this.$$parsedNgModel,this.$$ngModelSet=this.$$parsedNgModelAssign,this.$$pendingDebounce=null,this.$$parserValid=void 0,this.$$parserName="parse",this.$$currentValidationRunId=0,this.$$scope=t,this.$$rootScope=t.$root,this.$$attr=n,this.$$element=i,this.$$animate=o,this.$$timeout=a,this.$$parse=r,this.$$q=s,this.$$exceptionHandler=e,Ur(this),(l=this).$$scope.$watch(function(t){var e=l.$$ngModelGet(t);return e===l.$modelValue||l.$modelValue!=l.$modelValue&&e!=e||l.$$setModelValue(e),e})}Fo.$inject=["$scope","$exceptionHandler","$attrs","$element","$parse","$animate","$timeout","$q","$interpolate"],Fo.prototype={$$initGetterSetters:function(){if(this.$options.getOption("getterSetter")){var t=this.$$parse(this.$$attr.ngModel+"()"),e=this.$$parse(this.$$attr.ngModel+"($$$p)");this.$$ngModelGet=function(e){var n=this.$$parsedNgModel(e);return K(n)&&(n=t(e)),n},this.$$ngModelSet=function(t,n){K(this.$$parsedNgModel(t))?e(t,{$$$p:n}):this.$$parsedNgModelAssign(t,n)}}else if(!this.$$parsedNgModel.assign)throw Vo("nonassign","Expression '{0}' is non-assignable. Element: {1}",this.$$attr.ngModel,St(this.$$element))},$render:R,$isEmpty:function(t){return V(t)||""===t||null===t||t!=t},$$updateEmptyClasses:function(t){this.$isEmpty(t)?(this.$$animate.removeClass(this.$$element,"ng-not-empty"),this.$$animate.addClass(this.$$element,"ng-empty")):(this.$$animate.removeClass(this.$$element,"ng-empty"),this.$$animate.addClass(this.$$element,"ng-not-empty"))},$setPristine:function(){this.$dirty=!1,this.$pristine=!0,this.$$animate.removeClass(this.$$element,jo),this.$$animate.addClass(this.$$element,No)},$setDirty:function(){this.$dirty=!0,this.$pristine=!1,this.$$animate.removeClass(this.$$element,No),this.$$animate.addClass(this.$$element,jo),this.$$parentForm.$setDirty()},$setUntouched:function(){this.$touched=!1,this.$untouched=!0,this.$$animate.setClass(this.$$element,"ng-untouched","ng-touched")},$setTouched:function(){this.$touched=!0,this.$untouched=!1,this.$$animate.setClass(this.$$element,"ng-touched","ng-untouched")},$rollbackViewValue:function(){this.$$timeout.cancel(this.$$pendingDebounce),this.$viewValue=this.$$lastCommittedViewValue,this.$render()},$validate:function(){if(!k(this.$modelValue)){var t=this.$$lastCommittedViewValue,e=this.$$rawModelValue,n=this.$valid,i=this.$modelValue,r=this.$options.getOption("allowInvalid"),o=this;this.$$runValidators(e,t,function(t){r||n===t||(o.$modelValue=t?e:void 0,o.$modelValue!==i&&o.$$writeModelToScope())})}},$$runValidators:function(t,e,n){this.$$currentValidationRunId++;var i,r,o=this.$$currentValidationRunId,a=this;function s(t,e){o===a.$$currentValidationRunId&&a.$setValidity(t,e)}function c(t){o===a.$$currentValidationRunId&&n(t)}!function(){var t=a.$$parserName;return V(a.$$parserValid)?(s(t,null),!0):(a.$$parserValid||(M(a.$validators,function(t,e){s(e,null)}),M(a.$asyncValidators,function(t,e){s(e,null)})),s(t,a.$$parserValid),a.$$parserValid)}()?c(!1):function(){var n=!0;return M(a.$validators,function(i,r){var o=Boolean(i(t,e));n=n&&o,s(r,o)}),!!n||(M(a.$asyncValidators,function(t,e){s(e,null)}),!1)}()?(i=[],r=!0,M(a.$asyncValidators,function(n,o){var a=n(t,e);if(!Q(a))throw Vo("nopromise","Expected asynchronous validator to return a promise but got '{0}' instead.",a);s(o,void 0),i.push(a.then(function(){s(o,!0)},function(){r=!1,s(o,!1)}))}),i.length?a.$$q.all(i).then(function(){c(r)},R):c(!0)):c(!1)},$commitViewValue:function(){var t=this.$viewValue;this.$$timeout.cancel(this.$$pendingDebounce),(this.$$lastCommittedViewValue!==t||""===t&&this.$$hasNativeValidators)&&(this.$$updateEmptyClasses(t),this.$$lastCommittedViewValue=t,this.$pristine&&this.$setDirty(),this.$$parseAndValidate())},$$parseAndValidate:function(){var t=this.$$lastCommittedViewValue,e=this;if(this.$$parserValid=!V(t)||void 0,this.$setValidity(this.$$parserName,null),this.$$parserName="parse",this.$$parserValid)for(var n=0;n<this.$parsers.length;n++)if(V(t=this.$parsers[n](t))){this.$$parserValid=!1;break}k(this.$modelValue)&&(this.$modelValue=this.$$ngModelGet(this.$$scope));var i=this.$modelValue,r=this.$options.getOption("allowInvalid");function o(){e.$modelValue!==i&&e.$$writeModelToScope()}this.$$rawModelValue=t,r&&(this.$modelValue=t,o()),this.$$runValidators(t,this.$$lastCommittedViewValue,function(n){r||(e.$modelValue=n?t:void 0,o())})},$$writeModelToScope:function(){this.$$ngModelSet(this.$$scope,this.$modelValue),M(this.$viewChangeListeners,function(t){try{t()}catch(t){this.$$exceptionHandler(t)}},this)},$setViewValue:function(t,e){this.$viewValue=t,this.$options.getOption("updateOnDefault")&&this.$$debounceViewValueCommit(e)},$$debounceViewValueCommit:function(t){var e=this.$options.getOption("debounce");G(e[t])?e=e[t]:G(e.default)&&-1===this.$options.getOption("updateOn").indexOf(t)?e=e.default:G(e["*"])&&(e=e["*"]),this.$$timeout.cancel(this.$$pendingDebounce);var n=this;e>0?this.$$pendingDebounce=this.$$timeout(function(){n.$commitViewValue()},e):this.$$rootScope.$$phase?this.$commitViewValue():this.$$scope.$apply(function(){n.$commitViewValue()})},$overrideModelOptions:function(t){this.$options=this.$options.createChild(t),this.$$setUpdateOnEvents()},$processModelValue:function(){var t=this.$$format();this.$viewValue!==t&&(this.$$updateEmptyClasses(t),this.$viewValue=this.$$lastCommittedViewValue=t,this.$render(),this.$$runValidators(this.$modelValue,this.$viewValue,R))},$$format:function(){for(var t=this.$formatters,e=t.length,n=this.$modelValue;e--;)n=t[e](n);return n},$$setModelValue:function(t){this.$modelValue=this.$$rawModelValue=t,this.$$parserValid=void 0,this.$processModelValue()},$$setUpdateOnEvents:function(){this.$$updateEvents&&this.$$element.off(this.$$updateEvents,this.$$updateEventHandler),this.$$updateEvents=this.$options.getOption("updateOn"),this.$$updateEvents&&this.$$element.on(this.$$updateEvents,this.$$updateEventHandler)},$$updateEventHandler:function(t){this.$$debounceViewValueCommit(t&&t.type)}},Br({clazz:Fo,set:function(t,e){t[e]=!0},unset:function(t,e){delete t[e]}});var Uo,Bo=["$rootScope",function(t){return{restrict:"A",require:["ngModel","^?form","^?ngModelOptions"],controller:Fo,priority:1,compile:function(e){return e.addClass(No).addClass("ng-untouched").addClass(Ro),{pre:function(t,e,n,i){var r=i[0],o=i[1]||r.$$parentForm,a=i[2];a&&(r.$options=a.$options),r.$$initGetterSetters(),o.$addControl(r),n.$observe("name",function(t){r.$name!==t&&r.$$parentForm.$$renameControl(r,t)}),t.$on("$destroy",function(){r.$$parentForm.$removeControl(r)})},post:function(e,n,i,r){var o=r[0];function a(){o.$setTouched()}o.$$setUpdateOnEvents(),n.on("blur",function(){o.$touched||(t.$$phase?e.$evalAsync(a):e.$apply(a))})}}}}}],zo=/(\s+|^)default(\s+|$)/;function Go(t){this.$$options=t}Go.prototype={getOption:function(t){return this.$$options[t]},createChild:function(t){var e=!1;return M(t=_({},t),function(n,i){"$inherit"===n?"*"===i?e=!0:(t[i]=this.$$options[i],"updateOn"===i&&(t.updateOnDefault=this.$$options.updateOnDefault)):"updateOn"===i&&(t.updateOnDefault=!1,t[i]=tt(n.replace(zo,function(){return t.updateOnDefault=!0," "})))},this),e&&(delete t["*"],Wo(t,this.$$options)),Wo(t,Uo.$$options),new Go(t)}},Uo=new Go({updateOn:"",updateOnDefault:!0,debounce:0,getterSetter:!1,allowInvalid:!1,timezone:null});var Ho=function(){function t(t,e){this.$$attrs=t,this.$$scope=e}return t.$inject=["$attrs","$scope"],t.prototype={$onInit:function(){var t=this.parentCtrl?this.parentCtrl.$options:Uo,e=this.$$scope.$eval(this.$$attrs.ngModelOptions);this.$options=t.createChild(e)}},{restrict:"A",priority:10,require:{parentCtrl:"?^^ngModelOptions"},bindToController:!0,controller:t}};function Wo(t,e){M(e,function(e,n){F(t[n])||(t[n]=e)})}var qo=kr({terminal:!0,priority:1e3}),Ko=o("ngOptions"),Xo=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+group\s+by\s+([\s\S]+?))?(?:\s+disable\s+when\s+([\s\S]+?))?\s+for\s+(?:([$\w][$\w]*)|(?:\(\s*([$\w][$\w]*)\s*,\s*([$\w][$\w]*)\s*\)))\s+in\s+([\s\S]+?)(?:\s+track\s+by\s+([\s\S]+?))?$/,Yo=["$compile","$document","$parse",function(t,n,i){var r=e.document.createElement("option"),o=e.document.createElement("optgroup");return{restrict:"A",terminal:!0,require:["select","ngModel"],link:{pre:function(t,e,n,i){i[0].registerOption=R},post:function(e,a,c,l){for(var u=l[0],d=l[1],p=c.multiple,h=0,f=a.children(),g=f.length;h<g;h++)if(""===f[h].value){u.hasEmptyOption=!0,u.emptyOption=f.eq(h);break}a.empty();var m,v=!!u.emptyOption;s(r.cloneNode(!1)).val("?");var y=function(t,e,n){var r=t.match(Xo);if(!r)throw Ko("iexp","Expected expression in form of '_select_ (as _label_)? for (_key_,)?_value_ in _collection_' but got '{0}'. Element: {1}",t,St(e));var o=r[5]||r[7],a=r[6],s=/ as /.test(r[0])&&r[1],c=r[9],l=i(r[2]?r[1]:o),u=s&&i(s)||l,d=c&&i(c),p=c?function(t,e){return d(n,e)}:function(t){return Ve(t)},h=function(t,e){return p(t,b(t,e))},f=i(r[2]||r[1]),g=i(r[3]||""),m=i(r[4]||""),v=i(r[8]),y={},b=a?function(t,e){return y[a]=e,y[o]=t,y}:function(t){return y[o]=t,y};function w(t,e,n,i,r){this.selectValue=t,this.viewValue=e,this.label=n,this.group=i,this.disabled=r}function S(t){var e;if(!a&&x(t))e=t;else for(var n in e=[],t)t.hasOwnProperty(n)&&"$"!==n.charAt(0)&&e.push(n);return e}return{trackBy:c,getTrackByValue:h,getWatchables:i(v,function(t){for(var e=[],i=S(t=t||[]),o=i.length,a=0;a<o;a++){var s=t===i?a:i[a],c=t[s],l=b(c,s),u=p(c,l);if(e.push(u),r[2]||r[1]){var d=f(n,l);e.push(d)}if(r[4]){var h=m(n,l);e.push(h)}}return e}),getOptions:function(){for(var t=[],e={},i=v(n)||[],r=S(i),o=r.length,a=0;a<o;a++){var s=i===r?a:r[a],l=i[s],d=b(l,s),y=u(n,d),x=p(y,d),M=new w(x,y,f(n,d),g(n,d),m(n,d));t.push(M),e[x]=M}return{items:t,selectValueMap:e,getOptionFromViewValue:function(t){return e[h(t)]},getViewValueFromOption:function(t){return c?at(t.viewValue):t.viewValue}}}}}(c.ngOptions,a,e),b=n[0].createDocumentFragment();function w(t,e){var n=r.cloneNode(!1);e.appendChild(n),function(t,e){t.element=e,e.disabled=t.disabled,t.label!==e.label&&(e.label=t.label,e.textContent=t.label),e.value=t.selectValue}(t,n)}function S(t){var e=m.getOptionFromViewValue(t),n=e&&e.element;return n&&!n.selected&&(n.selected=!0),e}u.generateUnknownOptionValue=function(t){return"?"},p?(u.writeValue=function(t){if(m){var e=t&&t.map(S)||[];m.items.forEach(function(t){t.element.selected&&!rt(e,t)&&(t.element.selected=!1)})}},u.readValue=function(){var t=a.val()||[],e=[];return M(t,function(t){var n=m.selectValueMap[t];n&&!n.disabled&&e.push(m.getViewValueFromOption(n))}),e},y.trackBy&&e.$watchCollection(function(){if(W(d.$viewValue))return d.$viewValue.map(function(t){return y.getTrackByValue(t)})},function(){d.$render()})):(u.writeValue=function(t){if(m){var e=a[0].options[a[0].selectedIndex],n=m.getOptionFromViewValue(t);e&&e.removeAttribute("selected"),n?(a[0].value!==n.selectValue&&(u.removeUnknownOption(),a[0].value=n.selectValue,n.element.selected=!0),n.element.setAttribute("selected","selected")):u.selectUnknownOrEmptyOption(t)}},u.readValue=function(){var t=m.selectValueMap[a.val()];return t&&!t.disabled?(u.unselectEmptyOption(),u.removeUnknownOption(),m.getViewValueFromOption(t)):null},y.trackBy&&e.$watch(function(){return y.getTrackByValue(d.$viewValue)},function(){d.$render()})),v&&(t(u.emptyOption)(e),a.prepend(u.emptyOption),8===u.emptyOption[0].nodeType?(u.hasEmptyOption=!1,u.registerOption=function(t,e){""===e.val()&&(u.hasEmptyOption=!0,u.emptyOption=e,u.emptyOption.removeClass("ng-scope"),d.$render(),e.on("$destroy",function(){var t=u.$isEmptyOptionSelected();u.hasEmptyOption=!1,u.emptyOption=void 0,t&&d.$render()}))}):u.emptyOption.removeClass("ng-scope")),e.$watchCollection(y.getWatchables,function(){var t=m&&u.readValue();if(m)for(var e=m.items.length-1;e>=0;e--){var n=m.items[e];F(n.group)?Oe(n.element.parentNode):Oe(n.element)}m=y.getOptions();var i={};if(m.items.forEach(function(t){var e;F(t.group)?((e=i[t.group])||(e=o.cloneNode(!1),b.appendChild(e),e.label=null===t.group?"null":t.group,i[t.group]=e),w(t,e)):w(t,b)}),a[0].appendChild(b),d.$render(),!d.$isEmpty(t)){var r=u.readValue();(y.trackBy||p?ct(t,r):t===r)||(d.$setViewValue(r),d.$render())}})}}}}],Zo=["$locale","$interpolate","$log",function(t,e,n){var i=/{}/g,r=/^when(Minus)?(.+)$/;return{link:function(o,a,s){var c,l=s.count,u=s.$attr.when&&a.attr(s.$attr.when),d=s.offset||0,h=o.$eval(u)||{},f={},g=e.startSymbol(),m=e.endSymbol(),v=g+l+"-"+d+m,y=w.noop;function b(t){a.text(t||"")}M(s,function(t,e){var n=r.exec(e);if(n){var i=(n[1]?"-":"")+p(n[2]);h[i]=a.attr(s.$attr[e])}}),M(h,function(t,n){f[n]=e(t.replace(i,v))}),o.$watch(l,function(e){var i=parseFloat(e),r=k(i);if(r||i in h||(i=t.pluralCat(i-d)),!(i===c||r&&k(c))){y();var a=f[i];V(a)?(null!=e&&n.debug("ngPluralize: no rule defined for '"+i+"' in "+u),y=R,b()):y=o.$watch(a,b),c=i}})}}}],Jo=o("ngRef"),Qo=["$parse",function(t){return{priority:-1,restrict:"A",compile:function(e,n){var i=yn(it(e)),r=t(n.ngRef),o=r.assign||function(){throw Jo("nonassign",'Expression in ngRef="{0}" is non-assignable!',n.ngRef)};return function(t,e,a){var s;if(a.hasOwnProperty("ngRefRead")){if("$element"===a.ngRefRead)s=e;else if(!(s=e.data("$"+a.ngRefRead+"Controller")))throw Jo("noctrl",'The controller for ngRefRead="{0}" could not be found on ngRef="{1}"',a.ngRefRead,n.ngRef)}else s=e.data("$"+i+"Controller");o(t,s=s||e),e.on("$destroy",function(){r(t)===s&&o(t,null)})}}}}],$o=["$parse","$animate","$compile",function(t,e,n){var i=o("ngRepeat"),r=function(t,e,n,i,r,o,a){t[n]=i,r&&(t[r]=o),t.$index=e,t.$first=0===e,t.$last=e===a-1,t.$middle=!(t.$first||t.$last),t.$odd=!(t.$even=0==(1&e))},a=function(t){return t.clone[0]},s=function(t){return t.clone[t.clone.length-1]},c=function(t,e,n){return Ve(n)},l=function(t,e){return e};return{restrict:"A",multiElement:!0,transclude:"element",priority:1e3,terminal:!0,$$tlb:!0,compile:function(o,u){var p=u.ngRepeat,h=n.$$createComment("end ngRepeat",p),f=p.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/);if(!f)throw i("iexp","Expected expression in form of '_item_ in _collection_[ track by _id_]' but got '{0}'.",p);var g=f[1],m=f[2],v=f[3],y=f[4];if(!(f=g.match(/^(?:(\s*[$\w]+)|\(\s*([$\w]+)\s*,\s*([$\w]+)\s*\))$/)))throw i("iidexp","'_item_' in '_item_ in _collection_' should be an identifier or '(_key_, _value_)' expression, but got '{0}'.",g);var b,w=f[3]||f[1],S=f[2];if(v&&(!/^[$a-zA-Z_][$a-zA-Z0-9_]*$/.test(v)||/^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent|\$root|\$id)$/.test(v)))throw i("badident","alias '{0}' is invalid --- must be a valid JS identifier which is not a reserved name.",v);if(y){var E={$id:Ve},C=t(y);b=function(t,e,n,i){return S&&(E[S]=e),E[w]=n,E.$index=i,C(t,E)}}return function(t,n,o,u,f){var g=Ft();t.$watchCollection(m,function(o){var u,m,y,C,A,T,O,_,P,I,k,D,R=n[0],L=Ft();if(v&&(t[v]=o),x(o))P=o,_=b||c;else for(var N in _=b||l,P=[],o)d.call(o,N)&&"$"!==N.charAt(0)&&P.push(N);for(C=P.length,k=new Array(C),u=0;u<C;u++)if(A=o===P?u:P[u],T=o[A],O=_(t,A,T,u),g[O])I=g[O],delete g[O],L[O]=I,k[u]=I;else{if(L[O])throw M(k,function(t){t&&t.scope&&(g[t.id]=t)}),i("dupes","Duplicates in a repeater are not allowed. Use 'track by' expression to specify unique keys. Repeater: {0}, Duplicate key: {1}, Duplicate value: {2}",p,O,T);k[u]={id:O,scope:void 0,clone:void 0},L[O]=!0}for(var j in E&&(E[w]=void 0),g){if(D=Vt((I=g[j]).clone),e.leave(D),D[0].parentNode)for(u=0,m=D.length;u<m;u++)D[u].$$NG_REMOVED=!0;I.scope.$destroy()}for(u=0;u<C;u++)if(A=o===P?u:P[u],T=o[A],(I=k[u]).scope){y=R;do{y=y.nextSibling}while(y&&y.$$NG_REMOVED);a(I)!==y&&e.move(Vt(I.clone),null,R),R=s(I),r(I.scope,u,w,T,S,A,C)}else f(function(t,n){I.scope=n;var i=h.cloneNode(!1);t[t.length++]=i,e.enter(t,null,R),R=i,I.clone=t,L[I.id]=I,r(I.scope,u,w,T,S,A,C)});g=L})}}}}],ta=["$animate",function(t){return{restrict:"A",multiElement:!0,link:function(e,n,i){e.$watch(i.ngShow,function(e){t[e?"removeClass":"addClass"](n,"ng-hide",{tempClasses:"ng-hide-animate"})})}}}],ea=["$animate",function(t){return{restrict:"A",multiElement:!0,link:function(e,n,i){e.$watch(i.ngHide,function(e){t[e?"addClass":"removeClass"](n,"ng-hide",{tempClasses:"ng-hide-animate"})})}}}],na=kr(function(t,e,n){t.$watchCollection(n.ngStyle,function(t,n){n&&t!==n&&M(n,function(t,n){e.css(n,"")}),t&&e.css(t)})}),ia=["$animate","$compile",function(t,e){return{require:"ngSwitch",controller:["$scope",function(){this.cases={}}],link:function(n,i,r,o){var a=r.ngSwitch||r.on,s=[],c=[],l=[],u=[],d=function(t,e){return function(n){!1!==n&&t.splice(e,1)}};n.$watch(a,function(n){for(var i,r;l.length;)t.cancel(l.pop());for(i=0,r=u.length;i<r;++i){var a=Vt(c[i].clone);u[i].$destroy(),(l[i]=t.leave(a)).done(d(l,i))}c.length=0,u.length=0,(s=o.cases["!"+n]||o.cases["?"])&&M(s,function(n){n.transclude(function(i,r){u.push(r);var o=n.element;i[i.length++]=e.$$createComment("end ngSwitchWhen");var a={clone:i};c.push(a),t.enter(i,o.parent(),o)})})})}}}],ra=kr({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(t,e,n,i,r){M(n.ngSwitchWhen.split(n.ngSwitchWhenSeparator).sort().filter(function(t,e,n){return n[e-1]!==t}),function(t){i.cases["!"+t]=i.cases["!"+t]||[],i.cases["!"+t].push({transclude:r,element:e})})}}),oa=kr({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(t,e,n,i,r){i.cases["?"]=i.cases["?"]||[],i.cases["?"].push({transclude:r,element:e})}}),aa=o("ngTransclude"),sa=["$compile",function(t){return{restrict:"EAC",compile:function(e){var n=t(e.contents());return e.empty(),function(t,e,i,r,o){if(!o)throw aa("orphan","Illegal use of ngTransclude directive in the template! No parent directive that requires a transclusion found. Element: {0}",St(e));i.ngTransclude===i.$attr.ngTransclude&&(i.ngTransclude="");var a=i.ngTransclude||i.ngTranscludeSlot;function s(){n(t,function(t){e.append(t)})}o(function(t,n){t.length&&function(t){for(var e=0,n=t.length;e<n;e++){var i=t[e];if(i.nodeType!==Bt||i.nodeValue.trim())return!0}}(t)?e.append(t):(s(),n.$destroy())},null,a),a&&!o.isSlotFilled(a)&&s()}}}}],ca=["$templateCache",function(t){return{restrict:"E",terminal:!0,compile:function(e,n){if("text/ng-template"===n.type){var i=n.id,r=e[0].text;t.put(i,r)}}}}],la={$setViewValue:R,$render:R};function ua(t,e){t.prop("selected",e),t.attr("selected",e)}var da=["$element","$scope",function(t,n){var i=this,r=new Be;i.selectValueMap={},i.ngModelCtrl=la,i.multiple=!1,i.unknownOption=s(e.document.createElement("option")),i.hasEmptyOption=!1,i.emptyOption=void 0,i.renderUnknownOption=function(e){var n=i.generateUnknownOptionValue(e);i.unknownOption.val(n),t.prepend(i.unknownOption),ua(i.unknownOption,!0),t.val(n)},i.updateUnknownOption=function(e){var n=i.generateUnknownOptionValue(e);i.unknownOption.val(n),ua(i.unknownOption,!0),t.val(n)},i.generateUnknownOptionValue=function(t){return"? "+Ve(t)+" ?"},i.removeUnknownOption=function(){i.unknownOption.parent()&&i.unknownOption.remove()},i.selectEmptyOption=function(){i.emptyOption&&(t.val(""),ua(i.emptyOption,!0))},i.unselectEmptyOption=function(){i.hasEmptyOption&&ua(i.emptyOption,!1)},n.$on("$destroy",function(){i.renderUnknownOption=R}),i.readValue=function(){var e=t.val(),n=e in i.selectValueMap?i.selectValueMap[e]:e;return i.hasOption(n)?n:null},i.writeValue=function(e){var n=t[0].options[t[0].selectedIndex];if(n&&ua(s(n),!1),i.hasOption(e)){i.removeUnknownOption();var r=Ve(e);t.val(r in i.selectValueMap?r:e);var o=t[0].options[t[0].selectedIndex];ua(s(o),!0)}else i.selectUnknownOrEmptyOption(e)},i.addOption=function(t,e){if(8!==e[0].nodeType){jt(t,'"option value"'),""===t&&(i.hasEmptyOption=!0,i.emptyOption=e);var n=r.get(t)||0;r.set(t,n+1),a()}},i.removeOption=function(t){var e=r.get(t);e&&(1===e?(r.delete(t),""===t&&(i.hasEmptyOption=!1,i.emptyOption=void 0)):r.set(t,e-1))},i.hasOption=function(t){return!!r.get(t)},i.$hasEmptyOption=function(){return i.hasEmptyOption},i.$isUnknownOptionSelected=function(){return t[0].options[0]===i.unknownOption[0]},i.$isEmptyOptionSelected=function(){return i.hasEmptyOption&&t[0].options[t[0].selectedIndex]===i.emptyOption[0]},i.selectUnknownOrEmptyOption=function(t){null==t&&i.emptyOption?(i.removeUnknownOption(),i.selectEmptyOption()):i.unknownOption.parent().length?i.updateUnknownOption(t):i.renderUnknownOption(t)};var o=!1;function a(){o||(o=!0,n.$$postDigest(function(){o=!1,i.ngModelCtrl.$render()}))}var c=!1;function l(t){c||(c=!0,n.$$postDigest(function(){n.$$destroyed||(c=!1,i.ngModelCtrl.$setViewValue(i.readValue()),t&&i.ngModelCtrl.$render())}))}i.registerOption=function(t,e,n,r,o){var s,c;n.$attr.ngValue?n.$observe("value",function(t){var n,r=e.prop("selected");F(c)&&(i.removeOption(s),delete i.selectValueMap[c],n=!0),c=Ve(t),s=t,i.selectValueMap[c]=t,i.addOption(t,e),e.attr("value",c),n&&r&&l()}):r?n.$observe("value",function(t){var n;i.readValue();var r=e.prop("selected");F(s)&&(i.removeOption(s),n=!0),s=t,i.addOption(t,e),n&&r&&l()}):o?t.$watch(o,function(t,r){n.$set("value",t);var o=e.prop("selected");r!==t&&i.removeOption(r),i.addOption(t,e),r&&o&&l()}):i.addOption(n.value,e),n.$observe("disabled",function(t){("true"===t||t&&e.prop("selected"))&&(i.multiple?l(!0):(i.ngModelCtrl.$setViewValue(null),i.ngModelCtrl.$render()))}),e.on("$destroy",function(){var t=i.readValue(),e=n.value;i.removeOption(e),a(),(i.multiple&&t&&-1!==t.indexOf(e)||t===e)&&l(!0)})}}],pa=function(){return{restrict:"E",require:["select","?ngModel"],controller:da,priority:1,link:{pre:function(t,e,n,i){var r=i[0],o=i[1];if(o){if(r.ngModelCtrl=o,e.on("change",function(){r.removeUnknownOption(),t.$apply(function(){o.$setViewValue(r.readValue())})}),n.multiple){r.multiple=!0,r.readValue=function(){var t=[];return M(e.find("option"),function(e){if(e.selected&&!e.disabled){var n=e.value;t.push(n in r.selectValueMap?r.selectValueMap[n]:n)}}),t},r.writeValue=function(t){M(e.find("option"),function(e){var n=!!t&&(rt(t,e.value)||rt(t,r.selectValueMap[e.value]));n!==e.selected&&ua(s(e),n)})};var a,c=NaN;t.$watch(function(){c!==o.$viewValue||ct(a,o.$viewValue)||(a=zt(o.$viewValue),o.$render()),c=o.$viewValue}),o.$isEmpty=function(t){return!t||0===t.length}}}else r.registerOption=R},post:function(t,e,n,i){var r=i[1];if(r){var o=i[0];r.$render=function(){o.writeValue(r.$viewValue)}}}}}},ha=["$interpolate",function(t){return{restrict:"E",priority:100,compile:function(e,n){var i,r;return F(n.ngValue)||(F(n.value)?i=t(n.value,!0):(r=t(e.text(),!0))||n.$set("value",e.text())),function(t,e,n){var o=e.parent(),a=o.data("$selectController")||o.parent().data("$selectController");a&&a.registerOption(t,e,n,i,r)}}}}],fa=["$parse",function(t){return{restrict:"A",require:"?ngModel",link:function(e,n,i,r){if(r){var o=i.hasOwnProperty("required")||t(i.ngRequired)(e);i.ngRequired||(i.required=!0),r.$validators.required=function(t,e){return!o||!r.$isEmpty(e)},i.$observe("required",function(t){o!==t&&(o=t,r.$validate())})}}}}],ga=["$parse",function(t){return{restrict:"A",require:"?ngModel",compile:function(e,n){var i,r;return n.ngPattern&&(i=n.ngPattern,r="/"===n.ngPattern.charAt(0)&&u.test(n.ngPattern)?function(){return n.ngPattern}:t(n.ngPattern)),function(t,e,n,o){if(o){var a=n.pattern;n.ngPattern?a=r(t):i=n.pattern;var s=ya(a,i,e);n.$observe("pattern",function(t){var n=s;s=ya(t,i,e),(n&&n.toString())!==(s&&s.toString())&&o.$validate()}),o.$validators.pattern=function(t,e){return o.$isEmpty(e)||V(s)||s.test(e)}}}}}}],ma=["$parse",function(t){return{restrict:"A",require:"?ngModel",link:function(e,n,i,r){if(r){var o=i.maxlength||t(i.ngMaxlength)(e),a=ba(o);i.$observe("maxlength",function(t){o!==t&&(a=ba(t),o=t,r.$validate())}),r.$validators.maxlength=function(t,e){return a<0||r.$isEmpty(e)||e.length<=a}}}}}],va=["$parse",function(t){return{restrict:"A",require:"?ngModel",link:function(e,n,i,r){if(r){var o=i.minlength||t(i.ngMinlength)(e),a=ba(o)||-1;i.$observe("minlength",function(t){o!==t&&(a=ba(t)||-1,o=t,r.$validate())}),r.$validators.minlength=function(t,e){return r.$isEmpty(e)||e.length>=a}}}}}];function ya(t,e,n){if(t){if(z(t)&&(t=new RegExp("^"+t+"$")),!t.test)throw o("ngPattern")("noregexp","Expected {0} to be a RegExp but was {1}. Element: {2}",e,t,St(n));return t}}function ba(t){var e=I(t);return k(e)?-1:e}e.angular.bootstrap?e.console&&console.log("WARNING: Tried to load AngularJS more than once."):(function(){var n;if(!Dt){var i=ut();(c=V(i)?t:i?e[i]:void 0)&&c.fn.on?(s=c,_(c.fn,{scope:Pe.scope,isolateScope:Pe.isolateScope,controller:Pe.controller,injector:Pe.injector,inheritedData:Pe.inheritedData})):s=pe,n=s.cleanData,s.cleanData=function(t){for(var e,i,r=0;null!=(i=t[r]);r++)(e=(s._data(i)||{}).events)&&e.$destroy&&s(i).triggerHandler("$destroy");n(t)},w.element=s,Dt=!0}}(),_(w,{errorHandlingConfig:i,bootstrap:Ot,copy:at,extend:_,merge:P,equals:ct,element:s,forEach:M,injector:Je,noop:R,bind:ht,toJson:gt,fromJson:mt,identity:L,isUndefined:V,isDefined:F,isString:z,isFunction:K,isObject:U,isNumber:G,isElement:nt,isArray:W,version:Ht,isDate:H,callbacks:{$$counter:0},getTestability:Pt,reloadWithDebugInfo:_t,UNSAFE_restoreLegacyJqLiteXHTMLReplacement:Rt,$$minErr:o,$$csp:lt,$$encodeUriSegment:Et,$$encodeUriQuery:Ct,$$lowercase:p,$$stringify:Ut,$$uppercase:h}),(l=function(t){var e=o("$injector"),n=o("ng");function i(t,e,n){return t[e]||(t[e]=n())}var r=i(t,"angular",Object);return r.$$minErr=r.$$minErr||o,i(r,"module",function(){var t={};return function(r,o,a){var s={};return function(t,e){if("hasOwnProperty"===r)throw n("badname","hasOwnProperty is not a valid {0} name","module")}(),o&&t.hasOwnProperty(r)&&(t[r]=null),i(t,r,function(){if(!o)throw e("nomod","Module '{0}' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.",r);var t=[],i=[],c=[],l=d("$injector","invoke","push",i),u={_invokeQueue:t,_configBlocks:i,_runBlocks:c,info:function(t){if(F(t)){if(!U(t))throw n("aobj","Argument '{0}' must be an object","value");return s=t,this}return s},requires:o,name:r,provider:p("$provide","provider"),factory:p("$provide","factory"),service:p("$provide","service"),value:d("$provide","value"),constant:d("$provide","constant","unshift"),decorator:p("$provide","decorator",i),animation:p("$animateProvider","register"),filter:p("$filterProvider","register"),controller:p("$controllerProvider","register"),directive:p("$compileProvider","directive"),component:p("$compileProvider","component"),config:l,run:function(t){return c.push(t),this}};return a&&l(a),u;function d(e,n,i,r){return r||(r=t),function(){return r[i||"push"]([e,n,arguments]),u}}function p(e,n,i){return i||(i=t),function(t,o){return o&&K(o)&&(o.$$moduleName=r),i.push([e,n,arguments]),u}}})}})}(e))("ng",["ngLocale"],["$provide",function(t){t.provider({$$sanitizeUri:Fi}),t.provider("$compile",fn).directive({a:Dr,input:po,textarea:po,form:Vr,script:ca,select:pa,option:ha,ngBind:mo,ngBindHtml:yo,ngBindTemplate:vo,ngClass:So,ngClassEven:Mo,ngClassOdd:xo,ngCloak:Eo,ngController:Co,ngForm:Fr,ngHide:ea,ngIf:_o,ngInclude:Po,ngInit:ko,ngNonBindable:qo,ngPluralize:Zo,ngRef:Qo,ngRepeat:$o,ngShow:ta,ngStyle:na,ngSwitch:ia,ngSwitchWhen:ra,ngSwitchDefault:oa,ngOptions:Yo,ngTransclude:sa,ngModel:Bo,ngList:Do,ngChange:bo,pattern:ga,ngPattern:ga,required:fa,ngRequired:fa,minlength:va,ngMinlength:va,maxlength:ma,ngMaxlength:ma,ngValue:go,ngModelOptions:Ho}).directive({ngInclude:Io,input:ho}).directive(Rr).directive(Ao),t.provider({$anchorScroll:Qe,$animate:on,$animateCss:cn,$$animateJs:nn,$$animateQueue:rn,$$AnimateRunner:sn,$$animateAsyncRun:an,$browser:ln,$cacheFactory:un,$controller:Mn,$document:En,$$isDocumentHidden:Cn,$exceptionHandler:An,$filter:lr,$$forceReflow:Tn,$interpolate:Wn,$interval:Kn,$$intervalFactory:Xn,$http:Bn,$httpParamSerializer:Rn,$httpParamSerializerJQLike:Ln,$httpBackend:Gn,$xhrFactory:zn,$jsonpCallbacks:Yn,$location:di,$log:pi,$parse:Pi,$rootScope:Vi,$q:Ii,$$q:ki,$sce:qi,$sceDelegate:Wi,$sniffer:Ki,$$taskTrackerFactory:Xi,$templateCache:dn,$templateRequest:Zi,$$testability:Ji,$timeout:$i,$window:ar,$$rAF:ji,$$jqLite:je,$$Map:ze,$$cookieReader:cr})}]).info({angularVersion:"1.8.0"}),w.module("ngLocale",[],["$provide",function(t){t.value("$locale",{DATETIME_FORMATS:{AMPMS:["AM","PM"],DAY:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],ERANAMES:["Before Christ","Anno Domini"],ERAS:["BC","AD"],FIRSTDAYOFWEEK:6,MONTH:["January","February","March","April","May","June","July","August","September","October","November","December"],SHORTDAY:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],SHORTMONTH:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],STANDALONEMONTH:["January","February","March","April","May","June","July","August","September","October","November","December"],WEEKENDRANGE:[5,6],fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",medium:"MMM d, y h:mm:ss a",mediumDate:"MMM d, y",mediumTime:"h:mm:ss a",short:"M/d/yy h:mm a",shortDate:"M/d/yy",shortTime:"h:mm a"},NUMBER_FORMATS:{CURRENCY_SYM:"$",DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{gSize:3,lgSize:3,maxFrac:3,minFrac:0,minInt:1,negPre:"-",negSuf:"",posPre:"",posSuf:""},{gSize:3,lgSize:3,maxFrac:2,minFrac:2,minInt:1,negPre:"-¤",negSuf:"",posPre:"¤",posSuf:""}]},id:"en-us",localeID:"en_US",pluralCat:function(t,e){var n=0|t,i=function(t,e){var n=e;void 0===n&&(n=Math.min(function(t){var e=(t+="").indexOf(".");return-1==e?0:t.length-e-1}(t),3));var i=Math.pow(10,n);return{v:n,f:(t*i|0)%i}}(t,e);return 1==n&&0==i.v?"one":"other"}})}]),s(function(){!function(t,n){var i,r,o={};if(M(At,function(e){var n=e+"app";!i&&t.hasAttribute&&t.hasAttribute(n)&&(i=t,r=t.getAttribute(n))}),M(At,function(e){var n,o=e+"app";!i&&(n=t.querySelector("["+o.replace(":","\\:")+"]"))&&(i=n,r=n.getAttribute(o))}),i){if(!Tt)return void e.console.error("AngularJS: disabling automatic bootstrap. <script> protocol indicates an extension, document.location.href does not match.");o.strictDi=null!==function(t,e){var n,i,r=At.length;for(i=0;i<r;++i)if(n=At[i]+"strict-di",z(n=t.getAttribute(n)))return n;return null}(i),n(i,r?[r]:[],o)}}(e.document,Ot)}))}(window),!window.angular.$$csp().noInlineStyle&&window.angular.element(document.head).prepend(window.angular.element("<style>").text('@charset "UTF-8";[ng\\:cloak],[ng-cloak],[data-ng-cloak],[x-ng-cloak],.ng-cloak,.x-ng-cloak,.ng-hide:not(.ng-hide-animate){display:none !important;}ng\\:form{display:block;}.ng-animate-shim{visibility:hidden;}.ng-anchor{position:absolute;}'))}).call(this,n(19))},function(t,e,n){n(926),t.exports="ngAnimate"},function(t,e){
  2339. /**
  2340. * @license AngularJS v1.8.0
  2341. * (c) 2010-2020 Google, Inc. http://angularjs.org
  2342. * License: MIT
  2343. */
  2344. !function(t,e){"use strict";var n,i,r,o;void 0===t.ontransitionend&&void 0!==t.onwebkittransitionend?(n="WebkitTransition",i="webkitTransitionEnd transitionend"):(n="transition",i="transitionend"),void 0===t.onanimationend&&void 0!==t.onwebkitanimationend?(r="WebkitAnimation",o="webkitAnimationEnd animationend"):(r="animation",o="animationend");var a=r+"Delay",s=r+"Duration",c=n+"Delay",l=n+"Duration",u=e.$$minErr("ng");function d(t,e,n){if(!t)throw u("areq","Argument '{0}' is {1}",e||"?",n||"required");return t}function p(t,e){return t||e?t?e?(V(t)&&(t=t.join(" ")),V(e)&&(e=e.join(" ")),t+" "+e):t:e:""}function h(t,e,n){var i="";return t=V(t)?t:t&&G(t)&&t.length?t.split(/\s+/):[],j(t,function(t,r){t&&t.length>0&&(i+=r>0?" ":"",i+=n?e+t:t+e)}),i}function f(t){if(t instanceof W)switch(t.length){case 0:return t;case 1:if(1===t[0].nodeType)return t;break;default:return W(g(t))}if(1===t.nodeType)return W(t)}function g(t){if(!t[0])return t;for(var e=0;e<t.length;e++){var n=t[e];if(1===n.nodeType)return n}}function m(t){return function(e,n){n.addClass&&(function(t,e,n){j(e,function(e){t.addClass(e,n)})}(t,e,n.addClass),n.addClass=null),n.removeClass&&(function(t,e,n){j(e,function(e){t.removeClass(e,n)})}(t,e,n.removeClass),n.removeClass=null)}}function v(t){if(!(t=t||{}).$$prepared){var e=t.domOperation||q;t.domOperation=function(){t.$$domOperationFired=!0,e(),e=q},t.$$prepared=!0}return t}function y(t,e){b(t,e),w(t,e)}function b(t,e){e.from&&(t.css(e.from),e.from=null)}function w(t,e){e.to&&(t.css(e.to),e.to=null)}function S(t,e,n){var i=e.options||{},r=n.options||{},o=(i.addClass||"")+" "+(r.addClass||""),a=(i.removeClass||"")+" "+(r.removeClass||""),s=function(t,e,n){var i={};t=o(t),e=o(e),j(e,function(t,e){i[e]=1}),n=o(n),j(n,function(t,e){i[e]=1===i[e]?null:-1});var r={addClass:"",removeClass:""};function o(t){G(t)&&(t=t.split(" "));var e={};return j(t,function(t){t.length&&(e[t]=!0)}),e}return j(i,function(e,n){var i,o;1===e?(i="addClass",o=!t[n]||t[n+"-remove"]):-1===e&&(i="removeClass",o=t[n]||t[n+"-add"]),o&&(r[i].length&&(r[i]+=" "),r[i]+=n)}),r}(t.attr("class"),o,a);r.preparationClasses&&(i.preparationClasses=C(r.preparationClasses,i.preparationClasses),delete r.preparationClasses);var c=i.domOperation!==q?i.domOperation:null;return N(i,r),c&&(i.domOperation=c),s.addClass?i.addClass=s.addClass:i.addClass=null,s.removeClass?i.removeClass=s.removeClass:i.removeClass=null,e.addClass=i.addClass,e.removeClass=i.removeClass,i}function x(t){return t instanceof W?t[0]:t}function M(t,e){var n=e?"paused":"",i=r+"PlayState";return E(t,[i,n]),[i,n]}function E(t,e){var n=e[0],i=e[1];t.style[n]=i}function C(t,e){return t?e?t+" "+e:t:e}var A=function(t,e){var n=e?"-"+e+"s":"";return E(t,[c,n]),[c,n]},T=["$interpolate",function(t){return{link:function(e,n,i){var r=i.ngAnimateChildren;function o(t){t="on"===t||"true"===t,n.data("$$ngAnimateChildren",t)}G(r)&&0===r.length?n.data("$$ngAnimateChildren",!0):(o(t(r)(e)),i.$observe("ngAnimateChildren",o))}}}],O={transitionDuration:l,transitionDelay:c,transitionProperty:n+"Property",animationDuration:s,animationDelay:a,animationIterationCount:r+"IterationCount"},_={transitionDuration:l,transitionDelay:c,animationDuration:s,animationDelay:a};function P(t,e){return[e?a:c,t+"s"]}function I(t,e,n){var i=Object.create(null),r=t.getComputedStyle(e)||{};return j(n,function(t,e){var n,o,a=r[t];if(a){var s=a.charAt(0);("-"===s||"+"===s||s>=0)&&(n=0,o=a.split(/\s*,\s*/),j(o,function(t){"s"===t.charAt(t.length-1)&&(t=t.substring(0,t.length-1)),t=parseFloat(t)||0,n=n?Math.max(t,n):t}),a=n),0===a&&(a=null),i[e]=a}}),i}function k(t){return 0===t||null!=t}function D(t,e){var i=n,r=t+"s";return e?i+="Duration":r+=" linear all",[i,r]}function R(t,e,n){j(n,function(n){t[n]=F(t[n])?t[n]:e.style.getPropertyValue(n)})}var L,N,j,V,F,U,B,z,G,H,W,q,K=["$animateProvider",function(t){this.$get=["$window","$$jqLite","$$AnimateRunner","$timeout","$$animateCache","$$forceReflow","$sniffer","$$rAFScheduler","$$animateQueue",function(t,e,a,c,l,u,d,p,f){var g=m(e),S=[];function C(t){S.push(t),p.waitUntilQuiet(function(){l.flush();for(var t=u(),e=0;e<S.length;e++)S[e](t);S.length=0})}function T(e,n,i,r){var o=function(e,n,i,r,o){var a=l.get(i);a||"infinite"===(a=I(t,e,o)).animationIterationCount&&(a.animationIterationCount=1);var s=r||a.transitionDuration>0||a.animationDuration>0;return l.put(i,a,s),a}(e,0,i,r,O),a=o.animationDelay,s=o.transitionDelay;return o.maxDelay=a&&s?Math.max(a,s):a||s,o.maxDuration=Math.max(o.animationDuration*o.animationIterationCount,o.transitionDuration),o}return function(u,p){var m=p||{};m.$$prepared||(m=v(L(m)));var S={},O=x(u);if(!O||!O.parentNode||!f.enabled())return xt();var N,F,U,B,z,G,H,W,K,X,Y=[],Z=(u.attr("class"),function(t){var e={};return t&&(t.to||t.from)&&(e.to=t.to,e.from=t.from),e}(m)),J=[];if(0===m.duration||!d.animations&&!d.transitions)return xt();var Q=m.event&&V(m.event)?m.event.join(" "):m.event,$=Q&&m.structural,tt="",et="";$?tt=h(Q,"ng-",!0):Q&&(tt=Q),m.addClass&&(et+=h(m.addClass,"-add")),m.removeClass&&(et.length&&(et+=" "),et+=h(m.removeClass,"-remove")),m.applyClassesEarly&&et.length&&g(u,m);var nt=[tt,et].join(" ").trim(),it=Z.to&&Object.keys(Z.to).length>0;if(!((m.keyframeStyle||"").length>0||it||nt))return xt();var rt,ot,at=l.cacheKey(O,Q,m.addClass,m.removeClass);if(l.containsCachedAnimationWithoutDuration(at))return nt=null,xt();if(m.stagger>0){var st=parseFloat(m.stagger);rt={transitionDelay:st,animationDelay:st,transitionDuration:0,animationDuration:0}}else rt=function(n,i,r,o){var a,s="stagger-"+r;if(l.count(r)>0&&!(a=l.get(s))){var c=h(i,"-stagger");e.addClass(n,c),(a=I(t,n,o)).animationDuration=Math.max(a.animationDuration,0),a.transitionDuration=Math.max(a.transitionDuration,0),e.removeClass(n,c),l.put(s,a,!0)}return a||{}}(O,nt,at,_);if(m.$$skipPreparationClasses||e.addClass(u,nt),m.transitionStyle){var ct=[n,m.transitionStyle];E(O,ct),Y.push(ct)}if(m.duration>=0){ot=O.style[n].length>0;var lt=D(m.duration,ot);E(O,lt),Y.push(lt)}if(m.keyframeStyle){var ut=[r,m.keyframeStyle];E(O,ut),Y.push(ut)}var dt=rt?m.staggerIndex>=0?m.staggerIndex:l.count(at):0,pt=0===dt;pt&&!m.skipBlocking&&A(O,9999);var ht=T(O,0,at,!$),ft=ht.maxDelay;G=Math.max(ft,0),W=ht.maxDuration;var gt={};if(gt.hasTransitions=ht.transitionDuration>0,gt.hasAnimations=ht.animationDuration>0,gt.hasTransitionAll=gt.hasTransitions&&"all"===ht.transitionProperty,gt.applyTransitionDuration=it&&(gt.hasTransitions&&!gt.hasTransitionAll||gt.hasAnimations&&!gt.hasTransitions),gt.applyAnimationDuration=m.duration&&gt.hasAnimations,gt.applyTransitionDelay=k(m.delay)&&(gt.applyTransitionDuration||gt.hasTransitions),gt.applyAnimationDelay=k(m.delay)&&gt.hasAnimations,gt.recalculateTimingStyles=et.length>0,(gt.applyTransitionDuration||gt.applyAnimationDuration)&&(W=m.duration?parseFloat(m.duration):W,gt.applyTransitionDuration&&(gt.hasTransitions=!0,ht.transitionDuration=W,ot=O.style[n+"Property"].length>0,Y.push(D(W,ot))),gt.applyAnimationDuration&&(gt.hasAnimations=!0,ht.animationDuration=W,Y.push([s,W+"s"]))),0===W&&!gt.recalculateTimingStyles)return xt();var mt,vt=h(nt,"-active");return null!=m.delay&&("boolean"!=typeof m.delay&&(mt=parseFloat(m.delay),G=Math.max(mt,0)),gt.applyTransitionDelay&&Y.push(P(mt)),gt.applyAnimationDelay&&Y.push(P(mt,!0))),null==m.duration&&ht.transitionDuration>0&&(gt.recalculateTimingStyles=gt.recalculateTimingStyles||pt),H=1e3*G,K=1e3*W,m.skipBlocking||(gt.blockTransition=ht.transitionDuration>0,gt.blockKeyframeAnimation=ht.animationDuration>0&&rt.animationDelay>0&&0===rt.animationDuration),m.from&&(m.cleanupStyles&&R(S,O,Object.keys(m.from)),b(u,m)),gt.blockTransition||gt.blockKeyframeAnimation?St(W):m.skipBlocking||A(O,!1),{$$willAnimate:!0,end:yt,start:function(){if(!N)return B=new a(z={end:yt,cancel:bt,resume:null,pause:null}),C(Et),B}};function yt(){wt()}function bt(){wt(!0)}function wt(t){if(!(N||U&&F)){N=!0,F=!1,nt&&!m.$$skipPreparationClasses&&e.removeClass(u,nt),vt&&e.removeClass(u,vt),M(O,!1),A(O,!1),j(Y,function(t){O.style[t[0]]=""}),g(u,m),y(u,m),Object.keys(S).length&&j(S,function(t,e){t?O.style.setProperty(e,t):O.style.removeProperty(e)}),m.onDone&&m.onDone(),J&&J.length&&u.off(J.join(" "),Mt);var n=u.data("$$animateCss");n&&(c.cancel(n[0].timer),u.removeData("$$animateCss")),B&&B.complete(!t)}}function St(t){gt.blockTransition&&A(O,t),gt.blockKeyframeAnimation&&M(O,!!t)}function xt(){return B=new a({end:yt,cancel:bt}),C(q),wt(),{$$willAnimate:!1,start:function(){return B},end:yt}}function Mt(t){t.stopPropagation();var e=t.originalEvent||t;if(e.target===O){var n=e.$manualTimeStamp||Date.now(),i=parseFloat(e.elapsedTime.toFixed(3));Math.max(n-X,0)>=H&&i>=W&&(U=!0,wt())}}function Et(){if(!N)if(O.parentNode){var t=function(t){if(U)F&&t&&(F=!1,wt());else if(F=!t,ht.animationDuration){var e=M(O,F);F?Y.push(e):(i=e,r=(n=Y).indexOf(i),i>=0&&n.splice(r,1))}var n,i,r},a=dt>0&&(ht.transitionDuration&&0===rt.transitionDuration||ht.animationDuration&&0===rt.animationDuration)&&Math.max(rt.animationDelay,rt.transitionDelay);a?c(s,Math.floor(a*dt*1e3),!1):s(),z.resume=function(){t(!0)},z.pause=function(){t(!1)}}else wt();function s(){if(!N){if(St(!1),j(Y,function(t){var e=t[0],n=t[1];O.style[e]=n}),g(u,m),e.addClass(u,vt),gt.recalculateTimingStyles){if(O.getAttribute("class"),at=l.cacheKey(O,Q,m.addClass,m.removeClass),ht=T(O,0,at,!1),ft=ht.maxDelay,G=Math.max(ft,0),0===(W=ht.maxDuration))return void wt();gt.hasTransitions=ht.transitionDuration>0,gt.hasAnimations=ht.animationDuration>0}if(gt.applyAnimationDelay&&(ft="boolean"!=typeof m.delay&&k(m.delay)?parseFloat(m.delay):ft,G=Math.max(ft,0),ht.animationDelay=ft,mt=P(ft,!0),Y.push(mt),O.style[mt[0]]=mt[1]),H=1e3*G,K=1e3*W,m.easing){var t,a=m.easing;gt.hasTransitions&&(t=n+"TimingFunction",Y.push([t,a]),O.style[t]=a),gt.hasAnimations&&(t=r+"TimingFunction",Y.push([t,a]),O.style[t]=a)}ht.transitionDuration&&J.push(i),ht.animationDuration&&J.push(o),X=Date.now();var s=H+1.5*K,p=X+s,h=u.data("$$animateCss")||[],f=!0;if(h.length){var v=h[0];(f=p>v.expectedEndTime)?c.cancel(v.timer):h.push(wt)}if(f){var y=c(d,s,!1);h[0]={timer:y,expectedEndTime:p},h.push(wt),u.data("$$animateCss",h)}J.length&&u.on(J.join(" "),Mt),m.to&&(m.cleanupStyles&&R(S,O,Object.keys(m.to)),w(u,m))}}function d(){var t=u.data("$$animateCss");if(t){for(var e=1;e<t.length;e++)t[e]();u.removeData("$$animateCss")}}}}}]}],X=["$$animationProvider",function(t){t.drivers.push("$$animateCssDriver"),this.$get=["$animateCss","$rootScope","$$AnimateRunner","$rootElement","$sniffer","$$jqLite","$document",function(t,e,n,i,r,o,a){if(!r.animations&&!r.transitions)return q;var s,c=a[0].body,l=x(i),u=W((s=l).parentNode&&11===s.parentNode.nodeType||c.contains(l)?l:c);return function(e){return e.from&&e.to?function(e,i,r,o){var a=h(e),s=h(i),l=[];if(j(o,function(e){var i=function(e,i,r){var o=W(x(i).cloneNode(!0)),a=d(g(o));i.addClass("ng-animate-shim"),r.addClass("ng-animate-shim"),o.addClass("ng-anchor"),u.append(o);var s,l=function(){var e=t(o,{addClass:"ng-anchor-out",delay:!0,from:f(i)});return e.$$willAnimate?e:null}();if(!l&&!(s=m()))return v();var h=l||s;return{start:function(){var t,e=h.start();return e.done(function(){if(e=null,!s&&(s=m()))return(e=s.start()).done(function(){e=null,v(),t.complete()}),e;v(),t.complete()}),t=new n({end:i,cancel:i});function i(){e&&e.end()}}};function f(t){var e={},n=x(t).getBoundingClientRect();return j(["width","height","top","left"],function(t){var i=n[t];switch(t){case"top":i+=c.scrollTop;break;case"left":i+=c.scrollLeft}e[t]=Math.floor(i)+"px"}),e}function g(t){return t.attr("class")||""}function m(){var e=d(g(r)),n=p(e,a),i=p(a,e),s=t(o,{to:f(r),addClass:"ng-anchor-in "+n,removeClass:"ng-anchor-out "+i,delay:!0});return s.$$willAnimate?s:null}function v(){o.remove(),i.removeClass("ng-animate-shim"),r.removeClass("ng-animate-shim")}}(0,e.out,e.in);i&&l.push(i)}),a||s||0!==l.length)return{start:function(){var t=[];a&&t.push(a.start()),s&&t.push(s.start()),j(l,function(e){t.push(e.start())});var e=new n({end:i,cancel:i});return n.all(t,function(t){e.complete(t)}),e;function i(){j(t,function(t){t.end()})}}}}(e.from,e.to,e.classes,e.anchors):h(e)};function d(t){return t.replace(/\bng-\S+\b/g,"")}function p(t,e){return G(t)&&(t=t.split(" ")),G(e)&&(e=e.split(" ")),t.filter(function(t){return-1===e.indexOf(t)}).join(" ")}function h(e){var n=e.element,i=e.options||{};e.structural&&(i.event=e.event,i.structural=!0,i.applyClassesEarly=!0,"leave"===e.event&&(i.onDone=i.domOperation)),i.preparationClasses&&(i.event=C(i.event,i.preparationClasses));var r=t(n,i);return r.$$willAnimate?r:null}}]}],Y=["$animateProvider",function(t){this.$get=["$injector","$$AnimateRunner","$$jqLite",function(e,n,i){var r=m(i);return function(t,e,i,a){var s=!1;3===arguments.length&&z(i)&&(a=i,i=null),a=v(a),i||(i=t.attr("class")||"",a.addClass&&(i+=" "+a.addClass),a.removeClass&&(i+=" "+a.removeClass));var c,l,u,d,p,h=a.addClass,f=a.removeClass,g=o(i);if(g.length&&("leave"===e?(d="leave",u="afterLeave"):(d="before"+e.charAt(0).toUpperCase()+e.substr(1),u=e),"enter"!==e&&"move"!==e&&(c=S(t,e,a,g,d)),l=S(t,e,a,g,u)),c||l)return{$$willAnimate:!0,end:function(){return p?p.end():(b(),(p=new n).complete(!0)),p},start:function(){if(p)return p;var t;p=new n;var e=[];return c&&e.push(function(e){t=c(e)}),e.length?e.push(function(t){m(),t(!0)}):m(),l&&e.push(function(e){t=l(e)}),p.setHost({end:function(){r()},cancel:function(){r(!0)}}),n.chain(e,i),p;function i(t){b(),p.complete(t)}function r(e){s||((t||q)(e),i(e))}}};function m(){a.domOperation(),r(t,a)}function b(){s=!0,m(),y(t,a)}function w(t,e,i,r,o){var a=[];return j(r,function(r){var s=r[o];s&&a.push(function(){var r,o,a=!1,c=function(t){a||(a=!0,(o||q)(t),r.complete(!t))};return r=new n({end:function(){c()},cancel:function(){c(!0)}}),o=function(t,e,i,r,o){var a;switch(i){case"animate":a=[e,r.from,r.to,o];break;case"setClass":a=[e,h,f,o];break;case"addClass":a=[e,h,o];break;case"removeClass":a=[e,f,o];break;default:a=[e,o]}a.push(r);var s=t.apply(t,a);if(s)if(B(s.start)&&(s=s.start()),s instanceof n)s.done(o);else if(B(s))return s;return q}(s,t,e,i,function(t){c(!1===t)}),r})}),a}function S(t,e,i,r,o){var a,s,c=w(t,e,i,r,o);if(0===c.length&&("beforeSetClass"===o?(a=w(t,"removeClass",i,r,"beforeRemoveClass"),s=w(t,"addClass",i,r,"beforeAddClass")):"setClass"===o&&(a=w(t,"removeClass",i,r,"removeClass"),s=w(t,"addClass",i,r,"addClass")),a&&(c=c.concat(a)),s&&(c=c.concat(s))),0!==c.length)return function(t){var e=[];return c.length&&j(c,function(t){e.push(t())}),e.length?n.all(e,t):t(),function(t){j(e,function(e){t?e.cancel():e.end()})}}}};function o(n){n=V(n)?n:n.split(" ");for(var i=[],r={},o=0;o<n.length;o++){var a=n[o],s=t.$$registeredAnimations[a];s&&!r[a]&&(i.push(e.get(s)),r[a]=!0)}return i}}]}],Z=["$$animationProvider",function(t){t.drivers.push("$$animateJsDriver"),this.$get=["$$animateJs","$$AnimateRunner",function(t,e){return function(t){if(t.from&&t.to){var i=n(t.from),r=n(t.to);if(!i&&!r)return;return{start:function(){var t=[];i&&t.push(i.start()),r&&t.push(r.start()),e.all(t,function(t){n.complete(t)});var n=new e({end:o(),cancel:o()});return n;function o(){return function(){j(t,function(t){t.end()})}}}}}return n(t)};function n(e){var n=e.element,i=e.event,r=e.options,o=e.classes;return t(n,i,o,r)}}]}],J=["$animateProvider",function(e){var n=this.rules={skip:[],cancel:[],join:[]};function i(t){return{addClass:t.addClass,removeClass:t.removeClass,from:t.from,to:t.to}}function r(t,e){if(t&&e){var n=function(t){if(!t)return null;var e=t.split(" "),n=Object.create(null);return j(e,function(t){n[t]=!0}),n}(e);return t.split(" ").some(function(t){return n[t]})}}function o(t,e,i){return n[t].some(function(t){return t(e,i)})}function a(t,e){var n=(t.addClass||"").length>0,i=(t.removeClass||"").length>0;return e?n&&i:n||i}n.join.push(function(t,e){return!t.structural&&a(t)}),n.skip.push(function(t,e){return!t.structural&&!a(t)}),n.skip.push(function(t,e){return"leave"===e.event&&t.structural}),n.skip.push(function(t,e){return e.structural&&2===e.state&&!t.structural}),n.cancel.push(function(t,e){return e.structural&&t.structural}),n.cancel.push(function(t,e){return 2===e.state&&t.structural}),n.cancel.push(function(t,e){if(e.structural)return!1;var n=t.addClass,i=t.removeClass,o=e.addClass,a=e.removeClass;return!(H(n)&&H(i)||H(o)&&H(a))&&(r(n,a)||r(i,o))}),this.$get=["$$rAF","$rootScope","$rootElement","$document","$$Map","$$animation","$$AnimateRunner","$templateRequest","$$jqLite","$$forceReflow","$$isDocumentHidden",function(n,r,s,c,l,u,p,b,w,M,E){var A=new l,T=new l,O=null;function _(t){T.delete(t.target)}var P=r.$watch(function(){return 0===b.totalPendingRequests},function(t){t&&(P(),r.$$postDigest(function(){r.$$postDigest(function(){null===O&&(O=!0)})}))}),I=Object.create(null),k=e.customFilter(),D=e.classNameFilter(),R=function(){return!0},B=k||R,q=D?function(t,e){var n=[t.getAttribute("class"),e.addClass,e.removeClass].join(" ");return D.test(n)}:R,K=m(w);function X(t,e){return S(t,e,{})}var Y=t.Node.prototype.contains||function(t){return this===t||!!(16&this.compareDocumentPosition(t))};function Z(t,e,n){var i=g(e);return t.filter(function(t){return!(t.node===i&&(!n||t.callback===n))})}function J(t,e){"close"!==t||e.parentNode||Q.off(e)}var Q={on:function(t,e,n){var i=g(e);I[t]=I[t]||[],I[t].push({node:i,callback:n}),W(e).on("$destroy",function(){A.get(i)||Q.off(t,e,n)})},off:function(t,e,n){if(1!==arguments.length||G(arguments[0])){var i=I[t];i&&(I[t]=1===arguments.length?null:Z(i,e,n))}else for(var r in e=arguments[0],I)I[r]=Z(I[r],e)},pin:function(t,e){d(U(t),"element","not an element"),d(U(e),"parentElement","not an element"),t.data("$ngAnimatePin",e)},push:function(t,e,l,d){return(l=l||{}).domOperation=d,function(t,e,l){var d=L(l),g=f(t),m=x(g),b=m&&m.parentNode;d=v(d);var w,M=new p,_=(w=!1,function(t){w?t():r.$$postDigest(function(){w=!0,t()})});if(V(d.addClass)&&(d.addClass=d.addClass.join(" ")),d.addClass&&!G(d.addClass)&&(d.addClass=null),V(d.removeClass)&&(d.removeClass=d.removeClass.join(" ")),d.removeClass&&!G(d.removeClass)&&(d.removeClass=null),d.from&&!z(d.from)&&(d.from=null),d.to&&!z(d.to)&&(d.to=null),!(O&&m&&B(m,e,l)&&q(m,d)))return nt(),M;var P=["enter","move","leave"].indexOf(e)>=0,k=E(),D=k||T.get(m),R=!D&&A.get(m)||{},N=!!R.state;if(D||N&&1===R.state||(D=!function(t,e,n){var i,r=c[0].body,o=x(s),a=t===r||"HTML"===t.nodeName,l=t===o,u=!1,d=T.get(t),p=W.data(t,"$ngAnimatePin");for(p&&(e=x(p));e&&(l||(l=e===o),1===e.nodeType);){var h=A.get(e)||{};if(!u){var f=T.get(e);if(!0===f&&!1!==d){d=!0;break}!1===f&&(d=!1),u=h.structural}if(H(i)||!0===i){var g=W.data(e,"$$ngAnimateChildren");F(g)&&(i=g)}if(u&&!1===i)break;if(a||(a=e===r),a&&l)break;e=l||!(p=W.data(e,"$ngAnimatePin"))?e.parentNode:x(p)}return(!u||i)&&!0!==d&&l&&a}(m,b)),D)return k&&et(M,e,"start",i(d)),nt(),k&&et(M,e,"close",i(d)),M;P&&function(t){var e=m.querySelectorAll("[data-ng-animate]");j(e,function(t){var e=parseInt(t.getAttribute("data-ng-animate"),10),n=A.get(t);if(n)switch(e){case 2:n.runner.end();case 1:A.delete(t)}})}();var U={structural:P,element:g,event:e,addClass:d.addClass,removeClass:d.removeClass,close:nt,options:d,runner:M};if(N){if(o("skip",U,R))return 2===R.state?(nt(),M):(S(g,R,U),R.runner);if(o("cancel",U,R))if(2===R.state)R.runner.end();else{if(!R.structural)return S(g,R,U),R.runner;R.close()}else if(o("join",U,R)){if(2!==R.state)return function(t,e,n,i){var r="";n&&(r=h(n,"ng-",!0)),i.addClass&&(r=C(r,h(i.addClass,"-add"))),i.removeClass&&(r=C(r,h(i.removeClass,"-remove"))),r.length&&(i.preparationClasses=r,e.addClass(r))}(0,g,P?e:null,d),e=U.event=R.event,d=S(g,R,U),R.runner;X(g,U)}}else X(g,U);var Z=U.structural;if(Z||(Z="animate"===U.event&&Object.keys(U.options.to||{}).length>0||a(U)),!Z)return nt(),$(m),M;var Q=(R.counter||0)+1;return U.counter=Q,tt(m,1,U),r.$$postDigest(function(){g=f(t);var n=A.get(m),r=!n;n=n||{};var o=(g.parent()||[]).length>0&&("animate"===n.event||n.structural||a(n));if(r||n.counter!==Q||!o)return r&&(K(g,d),y(g,d)),(r||P&&n.event!==e)&&(d.domOperation(),M.end()),void(o||$(m));e=!n.structural&&a(n,!0)?"setClass":n.event,tt(m,2);var s=u(g,e,n.options);M.setHost(s),et(M,e,"start",i(d)),s.done(function(t){nt(!t);var n=A.get(m);n&&n.counter===Q&&$(m),et(M,e,"close",i(d))})}),M;function et(t,e,i,r){_(function(){var t=function(t,e,n){var i=[],r=I[n];return r&&j(r,function(r){(Y.call(r.node,e)||"leave"===n&&Y.call(r.node,t))&&i.push(r.callback)}),i}(b,m,e);t.length?n(function(){j(t,function(t){t(g,i,r)}),J(i,m)}):J(i,m)}),t.progress(e,i,r)}function nt(t){!function(t,e){e.preparationClasses&&(t.removeClass(e.preparationClasses),e.preparationClasses=null),e.activeClasses&&(t.removeClass(e.activeClasses),e.activeClasses=null)}(g,d),K(g,d),y(g,d),d.domOperation(),M.complete(!t)}}(t,e,l)},enabled:function(t,e){var n=arguments.length;if(0===n)e=!!O;else if(U(t)){var i=x(t);1===n?e=!T.get(i):(T.has(i)||W(t).on("$destroy",_),T.set(i,!e))}else e=O=!!t;return e}};return Q;function $(t){t.removeAttribute("data-ng-animate"),A.delete(t)}function tt(t,e,n){(n=n||{}).state=e,t.setAttribute("data-ng-animate",e);var i=A.get(t),r=i?N(i,n):n;A.set(t,r)}}]}],Q=["$animateProvider",function(t){var e=this.drivers=[];function n(t){return t.data("$$animationRunner")}this.$get=["$$jqLite","$rootScope","$injector","$$AnimateRunner","$$Map","$$rAFScheduler","$$animateCache",function(t,i,r,o,a,s,c){var l=[],u=m(t);return function(d,h,f){f=v(f);var g=["enter","move","leave"].indexOf(h)>=0,m=new o({end:function(){M()},cancel:function(){M(!0)}});if(!e.length)return M(),m;var b=p(d.attr("class"),p(f.addClass,f.removeClass)),w=f.tempClasses;return w&&(b+=" "+w,f.tempClasses=null),g&&d.data("$$animatePrepareClasses","ng-"+h+"-prepare"),function(t,e){d.data("$$animationRunner",e)}(0,m),l.push({element:d,classes:b,event:h,structural:g,options:f,beforeStart:function(){w=(w?w+" ":"")+"ng-animate",t.addClass(d,w);var e=d.data("$$animatePrepareClasses");e&&(t.removeClass(d,e),e=null)},close:M}),d.on("$destroy",S),l.length>1||i.$$postDigest(function(){var i=[];j(l,function(t){n(t.element)?i.push(t):t.close()}),l.length=0;var o=function(t){var e=[],n={};j(t,function(t,i){var r=x(t.element),o=t.event,a=["enter","move"].indexOf(o)>=0,s=t.structural?function(t){var e=t.hasAttribute("ng-animate-ref")?[t]:t.querySelectorAll("[ng-animate-ref]"),n=[];return j(e,function(t){var e=t.getAttribute("ng-animate-ref");e&&e.length&&n.push(t)}),n}(r):[];if(s.length){var c=a?"to":"from";j(s,function(t){var e=t.getAttribute("ng-animate-ref");n[e]=n[e]||{},n[e][c]={animationID:i,element:W(t)}})}else e.push(t)});var i={},r={};return j(n,function(n,o){var a=n.from,s=n.to;if(a&&s){var c=t[a.animationID],l=t[s.animationID],u=a.animationID.toString();if(!r[u]){var d=r[u]={structural:!0,beforeStart:function(){c.beforeStart(),l.beforeStart()},close:function(){c.close(),l.close()},classes:function(t,e){t=t.split(" "),e=e.split(" ");for(var n=[],i=0;i<t.length;i++){var r=t[i];if("ng-"!==r.substring(0,3))for(var o=0;o<e.length;o++)if(r===e[o]){n.push(r);break}}return n.join(" ")}(c.classes,l.classes),from:c,to:l,anchors:[]};d.classes.length?e.push(d):(e.push(c),e.push(l))}r[u].anchors.push({out:a.element,in:s.element})}else{var p=a?a.animationID:s.animationID,h=p.toString();i[h]||(i[h]=!0,e.push(t[p]))}}),e}(i),u=[];j(o,function(t){var i=t.from?t.from.element:t.element,o=f.addClass;o=(o?o+" ":"")+"ng-animate";var a=c.cacheKey(i[0],t.event,o,f.removeClass);u.push({element:i,domNode:x(i),fn:function(){var i,o=t.close;if(c.containsCachedAnimationWithoutDuration(a))o();else{if(t.beforeStart(),n(t.anchors?t.from.element||t.to.element:t.element)){var s=function(t){for(var n=e.length-1;n>=0;n--){var i=e[n],o=r.get(i)(t);if(o)return o}}(t);s&&(i=s.start)}if(i){var l=i();l.done(function(t){o(!t)}),function(t,e){function i(t){var i=n(t);i&&i.setHost(e)}t.from&&t.to?(i(t.from.element),i(t.to.element)):i(t.element)}(t,l)}else o()}}})});for(var d=function(t){var e,n={children:[]},i=new a;for(e=0;e<t.length;e++){var r=t[e];i.set(r.domNode,t[e]={domNode:r.domNode,element:r.element,fn:r.fn,children:[]})}for(e=0;e<t.length;e++)o(t[e]);return function(t){var e,n=[],i=[];for(e=0;e<t.children.length;e++)i.push(t.children[e]);var r=i.length,o=0,a=[];for(e=0;e<i.length;e++){var s=i[e];r<=0&&(r=o,o=0,n.push(a),a=[]),a.push(s),s.children.forEach(function(t){o++,i.push(t)}),r--}return a.length&&n.push(a),n}(n);function o(t){if(t.processed)return t;t.processed=!0;var e,r=t.domNode,a=r.parentNode;for(i.set(r,t);a;){if(e=i.get(a)){e.processed||(e=o(e));break}a=a.parentNode}return(e||n).children.push(t),t}}(u),p=0;p<d.length;p++)for(var h=d[p],g=0;g<h.length;g++){var m=h[g],v=m.element;if(d[p][g]=m.fn,0!==p){var y=v.data("$$animatePrepareClasses");y&&t.addClass(v,y)}else v.removeData("$$animatePrepareClasses")}s(d)}),m;function S(){var t=n(d);!t||"leave"===h&&f.$$domOperationFired||t.end()}function M(e){d.off("$destroy",S),d.removeData("$$animationRunner"),u(d,f),y(d,f),f.domOperation(),w&&t.removeClass(d,w),m.complete(!e)}}}]}];e.module("ngAnimate",[],function(){q=e.noop,L=e.copy,N=e.extend,W=e.element,j=e.forEach,V=e.isArray,G=e.isString,z=e.isObject,H=e.isUndefined,F=e.isDefined,B=e.isFunction,U=e.isElement}).info({angularVersion:"1.8.0"}).directive("ngAnimateSwap",["$animate",function(t){return{restrict:"A",transclude:"element",terminal:!0,priority:550,link:function(e,n,i,r,o){var a,s;e.$watchCollection(i.ngAnimateSwap||i.for,function(e){a&&t.leave(a),s&&(s.$destroy(),s=null),(e||0===e)&&o(function(e,i){a=e,s=i,t.enter(e,null,n)})})}}}]).directive("ngAnimateChildren",T).factory("$$rAFScheduler",["$$rAF",function(t){var e,n;function i(t){e=e.concat(t),r()}return e=i.queue=[],i.waitUntilQuiet=function(e){n&&n(),n=t(function(){n=null,e(),r()})},i;function r(){if(e.length){for(var i=e.shift(),o=0;o<i.length;o++)i[o]();n||t(function(){n||r()})}}}]).provider("$$animateQueue",J).provider("$$animateCache",function(){var t="$$ngAnimateParentKey",e=0,n=Object.create(null);this.$get=[function(){return{cacheKey:function(n,i,r,o){var a=n.parentNode,s=[a[t]||(a[t]=++e),i,n.getAttribute("class")];return r&&s.push(r),o&&s.push(o),s.join(" ")},containsCachedAnimationWithoutDuration:function(t){var e=n[t];return e&&!e.isValid||!1},flush:function(){n=Object.create(null)},count:function(t){var e=n[t];return e?e.total:0},get:function(t){var e=n[t];return e&&e.value},put:function(t,e,i){n[t]?(n[t].total++,n[t].value=e):n[t]={total:1,value:e,isValid:i}}}}]}).provider("$$animation",Q).provider("$animateCss",K).provider("$$animateCssDriver",X).provider("$$animateJs",Y).provider("$$animateJsDriver",Z)}(window,window.angular)},function(t,e){angular.module("colorpicker.module",[]).factory("Helper",function(){"use strict";return{closestSlider:function(t){return(t.matches||t.webkitMatchesSelector||t.mozMatchesSelector||t.msMatchesSelector).bind(t)("I")?t.parentNode:t},getOffset:function(t,e){for(var n=0,i=0,r=t.getBoundingClientRect();t&&!isNaN(t.offsetLeft)&&!isNaN(t.offsetTop);)e||"BODY"!==t.tagName?(n+=t.scrollLeft,i+=t.scrollTop):(n+=document.documentElement.scrollLeft||t.scrollLeft,i+=document.documentElement.scrollTop||t.scrollTop),t=t.offsetParent;return{top:r.top+window.pageYOffset,left:r.left+window.pageXOffset,scrollX:n,scrollY:i}},stringParsers:[{re:/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(?:,\s*(\d+(?:\.\d+)?)\s*)?\)/,parse:function(t){return[t[1],t[2],t[3],t[4]]}},{re:/rgba?\(\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d+(?:\.\d+)?)\s*)?\)/,parse:function(t){return[2.55*t[1],2.55*t[2],2.55*t[3],t[4]]}},{re:/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/,parse:function(t){return[parseInt(t[1],16),parseInt(t[2],16),parseInt(t[3],16)]}},{re:/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/,parse:function(t){return[parseInt(t[1]+t[1],16),parseInt(t[2]+t[2],16),parseInt(t[3]+t[3],16)]}}]}}).factory("Color",["Helper",function(t){"use strict";return{value:{h:1,s:1,b:1,a:1},rgb:function(){var t=this.toRGB();return"rgb("+t.r+","+t.g+","+t.b+")"},rgba:function(){var t=this.toRGB();return"rgba("+t.r+","+t.g+","+t.b+","+t.a+")"},hex:function(){return this.toHex()},RGBtoHSB:function(t,e,n,i){var r,o;return t/=255,e/=255,n/=255,{h:((0==(o=(r=Math.max(t,e,n))-Math.min(t,e,n))?null:r===t?(e-n)/o:r===e?(n-t)/o+2:(t-e)/o+4)+360)%6*60/360||1,s:0===o?0:o/r,b:r,a:i||1}},setColor:function(e){for(var n in e=e?e.toLowerCase():e,t.stringParsers)if(t.stringParsers.hasOwnProperty(n)){var i=t.stringParsers[n],r=i.re.exec(e),o=r&&i.parse(r);if(o)return this.value=this.RGBtoHSB.apply(null,o),!1}},setHue:function(t){this.value.h=1-t},setSaturation:function(t){this.value.s=t},setLightness:function(t){this.value.b=1-t},setAlpha:function(t){this.value.a=parseInt(100*(1-t),10)/100},toRGB:function(t,e,n,i){var r,o,a,s,c;return t||(t=this.value.h,e=this.value.s,n=this.value.b),t=(t*=360)%360/60,r=o=a=n-(c=n*e),r+=[c,s=c*(1-Math.abs(t%2-1)),0,0,s,c][t=~~t],o+=[s,c,c,s,0,0][t],a+=[0,0,s,c,c,s][t],{r:Math.round(255*r),g:Math.round(255*o),b:Math.round(255*a),a:i||this.value.a}},toHex:function(t,e,n,i){var r=this.toRGB(t,e,n,i);return"#"+(1<<24|parseInt(r.r,10)<<16|parseInt(r.g,10)<<8|parseInt(r.b,10)).toString(16).substr(1)}}}]).factory("Slider",["Helper",function(t){"use strict";var e={maxLeft:0,maxTop:0,callLeft:null,callTop:null,knob:{top:0,left:0}},n={};return{getSlider:function(){return e},getLeftPosition:function(t){return Math.max(0,Math.min(e.maxLeft,e.left+((t.pageX||n.left)-n.left)))},getTopPosition:function(t){return Math.max(0,Math.min(e.maxTop,e.top+((t.pageY||n.top)-n.top)))},setSlider:function(i,r){var o=t.closestSlider(i.target),a=t.getOffset(o,r),s=o.getBoundingClientRect(),c=i.clientX-s.left,l=i.clientY-s.top;e.knob=o.children[0].style,e.left=i.pageX-a.left-window.pageXOffset+a.scrollX,e.top=i.pageY-a.top-window.pageYOffset+a.scrollY,n={left:i.pageX-(c-e.left),top:i.pageY-(l-e.top)}},setSaturation:function(t,n,i){e={maxLeft:i,maxTop:i,callLeft:"setSaturation",callTop:"setLightness"},this.setSlider(t,n)},setHue:function(t,n,i){e={maxLeft:0,maxTop:i,callLeft:!1,callTop:"setHue"},this.setSlider(t,n)},setAlpha:function(t,n,i){e={maxLeft:0,maxTop:i,callLeft:!1,callTop:"setAlpha"},this.setSlider(t,n)},setKnob:function(t,n){e.knob.top=t+"px",e.knob.left=n+"px"}}}]).directive("colorpicker",["$document","$compile","Color","Slider","Helper",function(t,e,n,i,r){"use strict";return{require:"?ngModel",restrict:"A",link:function(o,a,s,c){var l,u=s.colorpicker?s.colorpicker:"hex",d=angular.isDefined(s.colorpickerPosition)?s.colorpickerPosition:"bottom",p=!!angular.isDefined(s.colorpickerInline)&&s.colorpickerInline,h=!!angular.isDefined(s.colorpickerFixedPosition)&&s.colorpickerFixedPosition,f=angular.isDefined(s.colorpickerParent)?a.parent():angular.element(document.body),g=!!angular.isDefined(s.colorpickerWithInput)&&s.colorpickerWithInput,m=angular.isDefined(s.colorpickerSize)?s.colorpickerSize:100,v=m+"px",y='<div class="colorpicker dropdown"><div class="dropdown-menu"><colorpicker-saturation><i></i></colorpicker-saturation><colorpicker-hue><i></i></colorpicker-hue><colorpicker-alpha><i></i></colorpicker-alpha><colorpicker-preview></colorpicker-preview>'+(g?'<input type="text" name="colorpicker-input" spellcheck="false">':"")+(p?"":'<button type="button" class="close close-colorpicker">&times;</button>')+"</div></div>",b=angular.element(y),w=n,S={h:1,s:0,b:1,a:1},x=b.find("colorpicker-hue"),M=b.find("colorpicker-saturation"),E=b.find("colorpicker-preview"),C=b.find("i"),A=parseInt(m)+29+("rgba"===u?15:0),T=parseInt(m)+55;if(e(b)(o),b.css("min-width",A+"px"),M.css({width:v,height:v}),x.css("height",v),g){var O=b.find("input");O.css("width",v),O.on("mousedown",function(t){t.stopPropagation()}).on("keyup",function(){var t=this.value;a.val(t),c&&c.$modelValue!==t&&(o.$apply(c.$setViewValue(t)),D(!0))})}function _(){t.on("mousemove",I),t.on("mouseup",k)}function P(){try{E.css("backgroundColor",w[u]())}catch(t){E.css("backgroundColor",w.toHex())}M.css("backgroundColor",w.toHex(w.value.h,1,1,1)),"rgba"===u&&(l.css.backgroundColor=w.toHex())}function I(t){var e=i.getLeftPosition(t),n=i.getTopPosition(t),r=i.getSlider();i.setKnob(n,e),r.callLeft&&w[r.callLeft].call(w,e/m),r.callTop&&w[r.callTop].call(w,n/m),P();var s=w[u]();return a.val(s),c&&o.$apply(c.$setViewValue(s)),g&&O.val(s),!1}function k(){N("colorpicker-selected"),t.off("mousemove",I),t.off("mouseup",k)}function D(t){w.value=S,w.setColor(a.val()),g&&!t&&O.val(a.val()),C.eq(0).css({left:w.value.s*m+"px",top:m-w.value.b*m+"px"}),C.eq(1).css("top",m*(1-w.value.h)+"px"),C.eq(2).css("top",m*(1-w.value.a)+"px"),S=w.value,P()}function R(){j()}function L(){var e,n;b.hasClass("colorpicker-visible")||(D(),b.addClass("colorpicker-visible").css((n=r.getOffset(a[0]),angular.isDefined(s.colorpickerParent)&&(n.left=0,n.top=0),"top"===d?e={top:n.top-T-2,left:n.left}:"right"===d?e={top:n.top,left:n.left+a[0].offsetWidth+2}:"bottom"===d?e={top:n.top+a[0].offsetHeight+2,left:n.left}:"left"===d&&(e={top:n.top,left:n.left-A-2}),{top:e.top+"px",left:e.left+"px"})),N("colorpicker-shown"),!1===p&&t.on("mousedown",R),s.colorpickerIsOpen&&(o[s.colorpickerIsOpen]=!0,o.$$phase&&o.$root.$$phase||o.$digest()))}function N(t){c&&o.$emit(t,{name:s.ngModel,value:c.$modelValue})}function j(){b.hasClass("colorpicker-visible")&&(b.removeClass("colorpicker-visible"),N("colorpicker-closed"),t.off("mousedown",R),s.colorpickerIsOpen&&(o[s.colorpickerIsOpen]=!1,o.$$phase&&o.$root.$$phase||o.$digest()))}"rgba"===u&&(b.addClass("alpha"),(l=b.find("colorpicker-alpha")).css("height",v),l.on("click",function(t){i.setAlpha(t,h,m),I(t)}).on("mousedown",function(t){i.setAlpha(t,h,m),_()}).on("mouseup",function(t){N("colorpicker-selected-alpha")})),x.on("click",function(t){i.setHue(t,h,m),I(t)}).on("mousedown",function(t){i.setHue(t,h,m),_()}).on("mouseup",function(t){N("colorpicker-selected-hue")}),M.on("click",function(t){i.setSaturation(t,h,m),I(t),angular.isDefined(s.colorpickerCloseOnSelect)&&j()}).on("mousedown",function(t){i.setSaturation(t,h,m),_()}).on("mouseup",function(t){N("colorpicker-selected-saturation")}),h&&b.addClass("colorpicker-fixed-position"),b.addClass("colorpicker-position-"+d),"true"===p&&b.addClass("colorpicker-inline"),f.append(b),c&&(c.$render=function(){a.val(c.$viewValue),D()}),a.on("blur keyup change",function(){D()}),a.on("$destroy",function(){b.remove()}),!1===p?a.on("click",L):L(),b.on("mousedown",function(t){t.stopPropagation(),t.preventDefault()}),b.find("button").on("click",function(){j()}),s.colorpickerIsOpen&&o.$watch(s.colorpickerIsOpen,function(t){!0===t?L():!1===t&&j()})}}}])},function(t,e,n){var i=n(11),r=n(929);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,'.colorpicker-visible,.colorpicker-visible .dropdown-menu{display:block!important}colorpicker-saturation{display:block;width:100px;height:100px;background-image:url("data:image/png;base64,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");background-size:contain;cursor:crosshair;float:left}colorpicker-saturation i{display:block;height:7px;width:7px;border:1px solid #000;border-radius:5px;position:absolute;top:0;left:0;margin:-4px 0 0 -4px}colorpicker-saturation i:after{content:"";display:block;height:7px;width:7px;border:1px solid #fff;border-radius:5px}colorpicker-alpha,colorpicker-hue{width:15px;height:100px;float:left;cursor:row-resize;margin-left:4px;margin-bottom:4px}colorpicker-alpha i,colorpicker-hue i{display:block;height:2px;background:#000;border-top:1px solid #fff;position:absolute;top:0;left:0;width:100%;margin-top:-1px}colorpicker-hue{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAABkCAMAAABw8qpSAAABLFBMVEUA/z8AuP//JAAA/33/3AAA/1ABAv8A/7r/AH7/jgD2AP8A//j/AEHmAP/XAP/HAP+4AP//ALyoAP+aAP+JAP97AP9rAP9cAP9MAP8+AP8tAP8fAP8PAP8ATv//AG7/cAD/vgD/APoAmv//ADH/AKwB/wMA5//4Eg4AL///AOr/UQD/nwAA/27/7AAA/+kAe/8Ayf8A/5sA/zEA/6z/ABEAEP8A/17/MgAA/9n/ACL/gAD/AJ0AXP8Aqv//AMoA/yHqFBb/zAD/AGD/ANsA9//1/wDk/wDV/wDF/wC3/wD/AI2m/wD/FACY/wCI/wB5/wBp/wD/YgBb/wBK/wA8/wAs/wAd/wAN/wAAPv8A/xH/AFAAi///rQAA/8r/+gAA1///QwAAH/8Abf8A/43c/JNGAAAAiUlEQVR4AQXBg2EDAAAAsMy2bds2ttp2+/8PTby79mDLsKJPq/oFPdk24dWXAxsGjRg1ZtykKdNmzJozb8GiJct63WjYl7fiWdOZkk0vOpyr2fVtyKl7FX2uXGjpcuxWDy69KdiRk5WRlpIUFxMVERLw78+vH1Unun1YV3ZkwKM1CYfq7nQK22sD03ITV2Aqp0IAAAAASUVORK5CYII=");background-size:contain}colorpicker-alpha{display:none}.colorpicker-color,colorpicker-alpha{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAABkCAMAAACIElGlAAADAFBMVEUAAADT09PT09P////T09P////e3t7q6urT09Px8fHT09P////////T09PT09P////////T09PT09P////////////T09PT09P////////////T09P////T09PT09PT09P////T09PT09P////////////////T09P////T09PT09P////T09PT09PT09PT09PT09PT09P////T09P////T09PT09P////////////T09P////T09P////////////T09PT09P////T09P////////////////////T09P////////T09PT09P////////////////////////T09PT09P////////////////////////T09PT09P////T09PT09P////////T09P////////////T09P////////T09P////T09P////T09P////T09PT09PT09PT09P////T09PT09PT09PT09PT09PT09P////T09P////T09PT09P////////////T09PT09PT09P////T09PT09PT09PT09PT09PT09PT09P////////////////T09PT09P////////////T09P////////T09P////T09PT09PT09P////////T09P////////T09P////T09PT09P////////////////T09PT09PT09PT09P////T09PT09PT09PT09PT09PT09PT09P////T09P////T09PT09PT09PT09PT09P////////////////////////////////////T09P////T09P////T09P////T09PT09P////////////T09P////T09P////T09P////////////T09PT09P////////////////T09PT09P////T09P////T09PT09P////T09P////T09PT09P////T09PT09PT09PT09P////T09PT09P////////////T09PT09P////T09P////////T09MQsm1FAAABAHRSTlMAgJN8/vcDAfcCnJyGaZmZlomGk4yJOmM/eTxs8wY0YDFC7HNdLx18n5/7aUvzCcW9+qKiK8P0ZiltRwfdw/n8Px3WduJjItj78ss5PDHUNELbwP5wplA2FglEVwvkqNarCs4Z7b2sDLgQ0xNdyLrr0eLLUeW1Vs5TWQLwjPI3ZvQGdvxFyFrAeevaLCLvGd0kpRskGyf4qK605xKvFrGyDRHnBYMEkJaDkIBvB/gpH99O6CrbIC4nH3Lg2SXp4A7Qul/GDEgPSlMQ6LjqFU0SjyCCj5V/gnBN7xglL3O70WBU7gjFFEfft0sPTo1ndRipwXr2yRemWRVENq+ytbGuxGaWGQAAAnpJREFUeNpNxmdcDHAAxvEHOWXvmXX23ntv2XvvMg/Z44x0KaRBSnfcKSqlnYZKp1QqGpT20KZh783/eePj+3vzw3/q/AM9iURPTy6XS+RwcXNzcZMQTE1dTE3bE7y9S0u9xxD600rCGtpI2ErOsbGxzoiMrIqscnaOi4vDdnp4XYSrguwxQSb7KpMllycnl2MFaTSaTxrY5NrY5BoKb2BnZ2doZ29vb2OPSdSd4Bcc7OcXGhqamgqrYCsrq+mEiEtC3gUBDg55Dg53IkQYSYG+gb6+GEqB5wV0o5D8/JAQdKK5hA40n3BS+L6c0JJmE+ZQW8JEak1YQJ0Jq+jbaQEPnotGE+IrK+Pj+xKqU6pTUrIDAgKysZ+WEY5QQkJxcQIO0WrCUbL4YmFhgZ3UlVAUHR1d1JEwjVoRRpDJKxMTE/ShBoRR1I6whLyyvLyyUFAQFhbWhTCFFArFawXOCu/bEHpQLYKnZ0aGZw2CR1qah0dmpqurK+pTU0ILakJoTi+PC7j5RHTrqQg1qRkh3T3d3b0xoSE1ItSleoSe1IswmIYQPl8UlhLWkaOj41tHbKENBLX6j1qt/KFUKnFN+Onk9NvJCQdJpfqlUqGiIjExcRthN91/JsJmGkhYRO/OCBhHwwgxMWUxZQMIu8j8o7m5OfbRLMJh2kTYQ1FRhYVR2EHzCOtpMmEG3SUsJEvLoKAg2Prb2tqOJYSH+/uH33shwlTaS1hLBwhX6AYX2tuiRwStVntOa5yUZJwEqbREKjUi5Bjl5BhZW1uXWOMYGRBOnNDX1zfoxz1FwwkfSJfgo6vr41P7soBBNJ7Qm2YSzHTMzMwmEHRoMf0Fm5mYOUrzNBYAAAAASUVORK5CYII=");background-size:10px 100%}.colorpicker{top:0;left:0;z-index:99999;display:none}.colorpicker colorpicker-alpha,.colorpicker colorpicker-hue,.colorpicker colorpicker-saturation{position:relative}.colorpicker input{width:100px;font-size:11px;color:#000;background-color:#fff}.colorpicker.alpha{min-width:140px}.colorpicker.alpha colorpicker-alpha{display:block}.colorpicker.dropdown{position:absolute}.colorpicker.colorpicker-fixed-position{position:fixed}.colorpicker .dropdown-menu:after,.colorpicker .dropdown-menu:before{content:"";display:inline-block;position:absolute}.colorpicker .dropdown-menu:after{clear:both;border:6px solid transparent;top:-5px;left:7px}.colorpicker .dropdown-menu:before{border:7px solid transparent;top:-6px;left:6px}.colorpicker .dropdown-menu{position:static;top:0;left:0;min-width:129px;padding:4px;margin-top:0}.colorpicker-position-top .dropdown-menu:after{border-top:6px solid #fff;border-bottom:0;top:auto;bottom:-5px}.colorpicker-position-top .dropdown-menu:before{border-top:7px solid rgba(0,0,0,.2);border-bottom:0;top:auto;bottom:-6px}.colorpicker-position-right .dropdown-menu:after{border-right:6px solid #fff;border-left:0;top:11px;left:-5px}.colorpicker-position-right .dropdown-menu:before{border-right:7px solid rgba(0,0,0,.2);border-left:0;top:10px;left:-6px}.colorpicker-position-bottom .dropdown-menu:after{border-bottom:6px solid #fff;border-top:0}.colorpicker-position-bottom .dropdown-menu:before{border-bottom:7px solid rgba(0,0,0,.2);border-top:0}.colorpicker-position-left .dropdown-menu:after{border-left:6px solid #fff;border-right:0;top:11px;left:auto;right:-5px}.colorpicker-position-left .dropdown-menu:before{border-left:7px solid rgba(0,0,0,.2);border-right:0;top:10px;left:auto;right:-6px}colorpicker-preview{display:block;height:10px;margin:5px 0 3px;clear:both;background-position:0 100%}',""]),t.exports=e},function(t,e,n){n(931),t.exports="ui.bootstrap"},function(t,e){angular.module("ui.bootstrap",["ui.bootstrap.tpls","ui.bootstrap.collapse","ui.bootstrap.accordion","ui.bootstrap.alert","ui.bootstrap.bindHtml","ui.bootstrap.buttons","ui.bootstrap.carousel","ui.bootstrap.dateparser","ui.bootstrap.position","ui.bootstrap.datepicker","ui.bootstrap.dropdown","ui.bootstrap.modal","ui.bootstrap.pagination","ui.bootstrap.tooltip","ui.bootstrap.popover","ui.bootstrap.progressbar","ui.bootstrap.rating","ui.bootstrap.tabs","ui.bootstrap.timepicker","ui.bootstrap.transition","ui.bootstrap.typeahead"]),angular.module("ui.bootstrap.tpls",["template/accordion/accordion-group.html","template/accordion/accordion.html","template/alert/alert.html","template/carousel/carousel.html","template/carousel/slide.html","template/datepicker/datepicker.html","template/datepicker/day.html","template/datepicker/month.html","template/datepicker/popup.html","template/datepicker/year.html","template/modal/backdrop.html","template/modal/window.html","template/pagination/pager.html","template/pagination/pagination.html","template/tooltip/tooltip-html-popup.html","template/tooltip/tooltip-html-unsafe-popup.html","template/tooltip/tooltip-popup.html","template/tooltip/tooltip-template-popup.html","template/popover/popover-html.html","template/popover/popover-template.html","template/popover/popover.html","template/progressbar/bar.html","template/progressbar/progress.html","template/progressbar/progressbar.html","template/rating/rating.html","template/tabs/tab.html","template/tabs/tabset.html","template/timepicker/timepicker.html","template/typeahead/typeahead-match.html","template/typeahead/typeahead-popup.html"]),angular.module("ui.bootstrap.collapse",[]).directive("collapse",["$animate",function(t){return{link:function(e,n,i){function r(){n.removeClass("collapsing"),n.css({height:"auto"})}function o(){n.css({height:"0"}),n.removeClass("collapsing"),n.addClass("collapse")}e.$watch(i.collapse,function(e){e?function(){if(!n.hasClass("collapse")&&!n.hasClass("in"))return o();n.css({height:n[0].scrollHeight+"px"}).removeClass("collapse").addClass("collapsing").attr("aria-expanded",!1).attr("aria-hidden",!0),t.removeClass(n,"in",{to:{height:"0"}}).then(o)}():(n.removeClass("collapse").addClass("collapsing").attr("aria-expanded",!0).attr("aria-hidden",!1),t.addClass(n,"in",{to:{height:n[0].scrollHeight+"px"}}).then(r))})}}}]),angular.module("ui.bootstrap.accordion",["ui.bootstrap.collapse"]).constant("accordionConfig",{closeOthers:!0}).controller("AccordionController",["$scope","$attrs","accordionConfig",function(t,e,n){this.groups=[],this.closeOthers=function(i){(angular.isDefined(e.closeOthers)?t.$eval(e.closeOthers):n.closeOthers)&&angular.forEach(this.groups,function(t){t!==i&&(t.isOpen=!1)})},this.addGroup=function(t){var e=this;this.groups.push(t),t.$on("$destroy",function(n){e.removeGroup(t)})},this.removeGroup=function(t){var e=this.groups.indexOf(t);-1!==e&&this.groups.splice(e,1)}}]).directive("accordion",function(){return{restrict:"EA",controller:"AccordionController",controllerAs:"accordion",transclude:!0,replace:!1,templateUrl:function(t,e){return e.templateUrl||"template/accordion/accordion.html"}}}).directive("accordionGroup",function(){return{require:"^accordion",restrict:"EA",transclude:!0,replace:!0,templateUrl:function(t,e){return e.templateUrl||"template/accordion/accordion-group.html"},scope:{heading:"@",isOpen:"=?",isDisabled:"=?"},controller:function(){this.setHeading=function(t){this.heading=t}},link:function(t,e,n,i){i.addGroup(t),t.openClass=n.openClass||"panel-open",t.panelClass=n.panelClass,t.$watch("isOpen",function(n){e.toggleClass(t.openClass,n),n&&i.closeOthers(t)}),t.toggleOpen=function(e){t.isDisabled||e&&32!==e.which||(t.isOpen=!t.isOpen)}}}}).directive("accordionHeading",function(){return{restrict:"EA",transclude:!0,template:"",replace:!0,require:"^accordionGroup",link:function(t,e,n,i,r){i.setHeading(r(t,angular.noop))}}}).directive("accordionTransclude",function(){return{require:"^accordionGroup",link:function(t,e,n,i){t.$watch(function(){return i[n.accordionTransclude]},function(t){t&&(e.find("span").html(""),e.find("span").append(t))})}}}),angular.module("ui.bootstrap.alert",[]).controller("AlertController",["$scope","$attrs",function(t,e){t.closeable=!!e.close,this.close=t.close}]).directive("alert",function(){return{controller:"AlertController",controllerAs:"alert",templateUrl:function(t,e){return e.templateUrl||"template/alert/alert.html"},transclude:!0,replace:!0,scope:{type:"@",close:"&"}}}).directive("dismissOnTimeout",["$timeout",function(t){return{require:"alert",link:function(e,n,i,r){t(function(){r.close()},parseInt(i.dismissOnTimeout,10))}}}]),angular.module("ui.bootstrap.bindHtml",[]).value("$bindHtmlUnsafeSuppressDeprecated",!1).directive("bindHtmlUnsafe",["$log","$bindHtmlUnsafeSuppressDeprecated",function(t,e){return function(n,i,r){e||t.warn("bindHtmlUnsafe is now deprecated. Use ngBindHtml instead"),i.addClass("ng-binding").data("$binding",r.bindHtmlUnsafe),n.$watch(r.bindHtmlUnsafe,function(t){i.html(t||"")})}}]),angular.module("ui.bootstrap.buttons",[]).constant("buttonConfig",{activeClass:"active",toggleEvent:"click"}).controller("ButtonsController",["buttonConfig",function(t){this.activeClass=t.activeClass||"active",this.toggleEvent=t.toggleEvent||"click"}]).directive("btnRadio",function(){return{require:["btnRadio","ngModel"],controller:"ButtonsController",controllerAs:"buttons",link:function(t,e,n,i){var r=i[0],o=i[1];e.find("input").css({display:"none"}),o.$render=function(){e.toggleClass(r.activeClass,angular.equals(o.$modelValue,t.$eval(n.btnRadio)))},e.bind(r.toggleEvent,function(){if(!n.disabled){var i=e.hasClass(r.activeClass);i&&!angular.isDefined(n.uncheckable)||t.$apply(function(){o.$setViewValue(i?null:t.$eval(n.btnRadio)),o.$render()})}})}}}).directive("btnCheckbox",["$document",function(t){return{require:["btnCheckbox","ngModel"],controller:"ButtonsController",controllerAs:"button",link:function(e,n,i,r){var o=r[0],a=r[1];function s(){return l(i.btnCheckboxTrue,!0)}function c(){return l(i.btnCheckboxFalse,!1)}function l(t,n){var i=e.$eval(t);return angular.isDefined(i)?i:n}n.find("input").css({display:"none"}),a.$render=function(){n.toggleClass(o.activeClass,angular.equals(a.$modelValue,s()))},n.bind(o.toggleEvent,function(){i.disabled||e.$apply(function(){a.$setViewValue(n.hasClass(o.activeClass)?c():s()),a.$render()})}),n.on("keypress",function(r){i.disabled||32!==r.which||t[0].activeElement!==n[0]||e.$apply(function(){a.$setViewValue(n.hasClass(o.activeClass)?c():s()),a.$render()})})}}}]),angular.module("ui.bootstrap.carousel",[]).controller("CarouselController",["$scope","$element","$interval","$animate",function(t,e,n,i){var r,o,a=this,s=a.slides=t.slides=[],c=angular.version.minor>=4,l=-1;a.currentSlide=null;var u=!1;function d(t){if(angular.isUndefined(s[t].index))return s[t];var e;for(s.length,e=0;e<s.length;++e)if(s[e].index==t)return s[e]}function p(){h();var e=+t.interval;!isNaN(e)&&e>0&&(r=n(f,e))}function h(){r&&(n.cancel(r),r=null)}function f(){var e=+t.interval;o&&!isNaN(e)&&e>0&&s.length?t.next():t.pause()}a.select=t.select=function(e,n){var r=t.indexOfSlide(e);void 0===n&&(n=r>a.getCurrentIndex()?"next":"prev"),e&&e!==a.currentSlide&&!t.$currentTransition&&function(e,n,r){u||(angular.extend(e,{direction:r,active:!0}),angular.extend(a.currentSlide||{},{direction:r,active:!1}),i.enabled()&&!t.noTransition&&!t.$currentTransition&&e.$element&&a.slides.length>1&&(e.$element.data("uib-slideDirection",e.direction),a.currentSlide&&a.currentSlide.$element&&a.currentSlide.$element.data("uib-slideDirection",e.direction),t.$currentTransition=!0,c?i.on("addClass",e.$element,function(e,n){"close"===n&&(t.$currentTransition=null,i.off("addClass",e))}):e.$element.one("$animate:close",function(){t.$currentTransition=null})),a.currentSlide=e,l=n,p())}(e,r,n)},t.$on("$destroy",function(){u=!0}),a.getCurrentIndex=function(){return a.currentSlide&&angular.isDefined(a.currentSlide.index)?+a.currentSlide.index:l},t.indexOfSlide=function(t){return angular.isDefined(t.index)?+t.index:s.indexOf(t)},t.next=function(){var e=(a.getCurrentIndex()+1)%s.length;if(0!==e||!t.noWrap())return a.select(d(e),"next");t.pause()},t.prev=function(){var e=a.getCurrentIndex()-1<0?s.length-1:a.getCurrentIndex()-1;if(!t.noWrap()||e!==s.length-1)return a.select(d(e),"prev");t.pause()},t.isActive=function(t){return a.currentSlide===t},t.$watch("interval",p),t.$on("$destroy",h),t.play=function(){o||(o=!0,p())},t.pause=function(){t.noPause||(o=!1,h())},a.addSlide=function(e,n){e.$element=n,s.push(e),1===s.length||e.active?(a.select(s[s.length-1]),1==s.length&&t.play()):e.active=!1},a.removeSlide=function(t){angular.isDefined(t.index)&&s.sort(function(t,e){return+t.index>+e.index});var e=s.indexOf(t);s.splice(e,1),s.length>0&&t.active?e>=s.length?a.select(s[e-1]):a.select(s[e]):l>e&&l--,0===s.length&&(a.currentSlide=null)},t.$watch("noTransition",function(t){e.data("uib-noTransition",t)})}]).directive("carousel",[function(){return{restrict:"EA",transclude:!0,replace:!0,controller:"CarouselController",controllerAs:"carousel",require:"carousel",templateUrl:function(t,e){return e.templateUrl||"template/carousel/carousel.html"},scope:{interval:"=",noTransition:"=",noPause:"=",noWrap:"&"}}}]).directive("slide",function(){return{require:"^carousel",restrict:"EA",transclude:!0,replace:!0,templateUrl:function(t,e){return e.templateUrl||"template/carousel/slide.html"},scope:{active:"=?",actual:"=?",index:"=?"},link:function(t,e,n,i){i.addSlide(t,e),t.$on("$destroy",function(){i.removeSlide(t)}),t.$watch("active",function(e){e&&i.select(t)})}}}).animation(".item",["$injector","$animate",function(t,e){var n=null;function i(t,e,n){t.removeClass(e),n&&n()}return t.has("$animateCss")&&(n=t.get("$animateCss")),{beforeAddClass:function(t,r,o){if("active"==r&&t.parent()&&!t.parent().data("uib-noTransition")){var a=!1,s=t.data("uib-slideDirection"),c="next"==s?"left":"right",l=i.bind(this,t,c+" "+s,o);return t.addClass(s),n?n(t,{addClass:c}).start().done(l):e.addClass(t,c).then(function(){a||l(),o()}),function(){a=!0}}o()},beforeRemoveClass:function(t,r,o){if("active"===r&&t.parent()&&!t.parent().data("uib-noTransition")){var a=!1,s="next"==t.data("uib-slideDirection")?"left":"right",c=i.bind(this,t,s,o);return n?n(t,{addClass:s}).start().done(c):e.addClass(t,s).then(function(){a||c(),o()}),function(){a=!0}}o()}}}]),angular.module("ui.bootstrap.dateparser",[]).service("dateParser",["$log","$locale","orderByFilter",function(t,e,n){var i=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g;this.parsers={};var r={yyyy:{regex:"\\d{4}",apply:function(t){this.year=+t}},yy:{regex:"\\d{2}",apply:function(t){this.year=+t+2e3}},y:{regex:"\\d{1,4}",apply:function(t){this.year=+t}},MMMM:{regex:e.DATETIME_FORMATS.MONTH.join("|"),apply:function(t){this.month=e.DATETIME_FORMATS.MONTH.indexOf(t)}},MMM:{regex:e.DATETIME_FORMATS.SHORTMONTH.join("|"),apply:function(t){this.month=e.DATETIME_FORMATS.SHORTMONTH.indexOf(t)}},MM:{regex:"0[1-9]|1[0-2]",apply:function(t){this.month=t-1}},M:{regex:"[1-9]|1[0-2]",apply:function(t){this.month=t-1}},dd:{regex:"[0-2][0-9]{1}|3[0-1]{1}",apply:function(t){this.date=+t}},d:{regex:"[1-2]?[0-9]{1}|3[0-1]{1}",apply:function(t){this.date=+t}},EEEE:{regex:e.DATETIME_FORMATS.DAY.join("|")},EEE:{regex:e.DATETIME_FORMATS.SHORTDAY.join("|")},HH:{regex:"(?:0|1)[0-9]|2[0-3]",apply:function(t){this.hours=+t}},hh:{regex:"0[0-9]|1[0-2]",apply:function(t){this.hours=+t}},H:{regex:"1?[0-9]|2[0-3]",apply:function(t){this.hours=+t}},h:{regex:"[0-9]|1[0-2]",apply:function(t){this.hours=+t}},mm:{regex:"[0-5][0-9]",apply:function(t){this.minutes=+t}},m:{regex:"[0-9]|[1-5][0-9]",apply:function(t){this.minutes=+t}},sss:{regex:"[0-9][0-9][0-9]",apply:function(t){this.milliseconds=+t}},ss:{regex:"[0-5][0-9]",apply:function(t){this.seconds=+t}},s:{regex:"[0-9]|[1-5][0-9]",apply:function(t){this.seconds=+t}},a:{regex:e.DATETIME_FORMATS.AMPMS.join("|"),apply:function(t){12===this.hours&&(this.hours=0),"PM"===t&&(this.hours+=12)}}};this.parse=function(o,a,s){if(!angular.isString(o)||!a)return o;a=(a=e.DATETIME_FORMATS[a]||a).replace(i,"\\$&"),this.parsers[a]||(this.parsers[a]=function(t){var e=[],i=t.split("");return angular.forEach(r,function(n,r){var o=t.indexOf(r);if(o>-1){t=t.split(""),i[o]="("+n.regex+")",t[o]="$";for(var a=o+1,s=o+r.length;a<s;a++)i[a]="",t[a]="$";t=t.join(""),e.push({index:o,apply:n.apply})}}),{regex:new RegExp("^"+i.join("")+"$"),map:n(e,"index")}}(a));var c=this.parsers[a],l=c.regex,u=c.map,d=o.match(l);if(d&&d.length){var p,h;angular.isDate(s)&&!isNaN(s.getTime())?p={year:s.getFullYear(),month:s.getMonth(),date:s.getDate(),hours:s.getHours(),minutes:s.getMinutes(),seconds:s.getSeconds(),milliseconds:s.getMilliseconds()}:(s&&t.warn("dateparser:","baseDate is not a valid date"),p={year:1900,month:0,date:1,hours:0,minutes:0,seconds:0,milliseconds:0});for(var f=1,g=d.length;f<g;f++){var m=u[f-1];m.apply&&m.apply.call(p,d[f])}return function(t,e,n){return!(n<1)&&(1===e&&n>28?29===n&&(t%4==0&&t%100!=0||t%400==0):3!==e&&5!==e&&8!==e&&10!==e||n<31)}(p.year,p.month,p.date)&&(h=new Date(p.year,p.month,p.date,p.hours,p.minutes,p.seconds,p.milliseconds||0)),h}}}]),angular.module("ui.bootstrap.position",[]).factory("$position",["$document","$window",function(t,e){function n(t){return"static"===(i="position",((n=t).currentStyle?n.currentStyle[i]:e.getComputedStyle?e.getComputedStyle(n)[i]:n.style[i])||"static");var n,i}return{position:function(e){var i=this.offset(e),r={top:0,left:0},o=function(e){for(var i=t[0],r=e.offsetParent||i;r&&r!==i&&n(r);)r=r.offsetParent;return r||i}(e[0]);o!=t[0]&&((r=this.offset(angular.element(o))).top+=o.clientTop-o.scrollTop,r.left+=o.clientLeft-o.scrollLeft);var a=e[0].getBoundingClientRect();return{width:a.width||e.prop("offsetWidth"),height:a.height||e.prop("offsetHeight"),top:i.top-r.top,left:i.left-r.left}},offset:function(n){var i=n[0].getBoundingClientRect();return{width:i.width||n.prop("offsetWidth"),height:i.height||n.prop("offsetHeight"),top:i.top+(e.pageYOffset||t[0].documentElement.scrollTop),left:i.left+(e.pageXOffset||t[0].documentElement.scrollLeft)}},positionElements:function(t,e,n,i){var r,o,a,s,c=n.split("-"),l=c[0],u=c[1]||"center";r=i?this.offset(t):this.position(t),o=e.prop("offsetWidth"),a=e.prop("offsetHeight");var d={center:function(){return r.left+r.width/2-o/2},left:function(){return r.left},right:function(){return r.left+r.width}},p={center:function(){return r.top+r.height/2-a/2},top:function(){return r.top},bottom:function(){return r.top+r.height}};switch(l){case"right":s={top:p[u](),left:d[l]()};break;case"left":s={top:p[u](),left:r.left-o};break;case"bottom":s={top:p[l](),left:d[u]()};break;default:s={top:r.top-a,left:d[u]()}}return s}}}]),angular.module("ui.bootstrap.datepicker",["ui.bootstrap.dateparser","ui.bootstrap.position"]).value("$datepickerSuppressError",!1).constant("datepickerConfig",{formatDay:"dd",formatMonth:"MMMM",formatYear:"yyyy",formatDayHeader:"EEE",formatDayTitle:"MMMM yyyy",formatMonthTitle:"yyyy",datepickerMode:"day",minMode:"day",maxMode:"year",showWeeks:!0,startingDay:0,yearRange:20,minDate:null,maxDate:null,shortcutPropagation:!1}).controller("DatepickerController",["$scope","$attrs","$parse","$interpolate","$log","dateFilter","datepickerConfig","$datepickerSuppressError",function(t,e,n,i,r,o,a,s){var c=this,l={$setViewValue:angular.noop};this.modes=["day","month","year"],angular.forEach(["formatDay","formatMonth","formatYear","formatDayHeader","formatDayTitle","formatMonthTitle","showWeeks","startingDay","yearRange","shortcutPropagation"],function(n,r){c[n]=angular.isDefined(e[n])?r<6?i(e[n])(t.$parent):t.$parent.$eval(e[n]):a[n]}),angular.forEach(["minDate","maxDate"],function(i){e[i]?t.$parent.$watch(n(e[i]),function(t){c[i]=t?new Date(t):null,c.refreshView()}):c[i]=a[i]?new Date(a[i]):null}),angular.forEach(["minMode","maxMode"],function(i){e[i]?t.$parent.$watch(n(e[i]),function(n){c[i]=angular.isDefined(n)?n:e[i],t[i]=c[i],("minMode"==i&&c.modes.indexOf(t.datepickerMode)<c.modes.indexOf(c[i])||"maxMode"==i&&c.modes.indexOf(t.datepickerMode)>c.modes.indexOf(c[i]))&&(t.datepickerMode=c[i])}):(c[i]=a[i]||null,t[i]=c[i])}),t.datepickerMode=t.datepickerMode||a.datepickerMode,t.uniqueId="datepicker-"+t.$id+"-"+Math.floor(1e4*Math.random()),angular.isDefined(e.initDate)?(this.activeDate=t.$parent.$eval(e.initDate)||new Date,t.$parent.$watch(e.initDate,function(t){t&&(l.$isEmpty(l.$modelValue)||l.$invalid)&&(c.activeDate=t,c.refreshView())})):this.activeDate=new Date,t.isActive=function(e){return 0===c.compare(e.date,c.activeDate)&&(t.activeDateId=e.uid,!0)},this.init=function(t){(l=t).$render=function(){c.render()}},this.render=function(){if(l.$viewValue){var t=new Date(l.$viewValue);isNaN(t)?s||r.error('Datepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.'):this.activeDate=t}this.refreshView()},this.refreshView=function(){if(this.element){this._refreshView();var t=l.$viewValue?new Date(l.$viewValue):null;l.$setValidity("dateDisabled",!t||this.element&&!this.isDisabled(t))}},this.createDateObject=function(t,e){var n=l.$viewValue?new Date(l.$viewValue):null;return{date:t,label:o(t,e),selected:n&&0===this.compare(t,n),disabled:this.isDisabled(t),current:0===this.compare(t,new Date),customClass:this.customClass(t)}},this.isDisabled=function(n){return this.minDate&&this.compare(n,this.minDate)<0||this.maxDate&&this.compare(n,this.maxDate)>0||e.dateDisabled&&t.dateDisabled({date:n,mode:t.datepickerMode})},this.customClass=function(e){return t.customClass({date:e,mode:t.datepickerMode})},this.split=function(t,e){for(var n=[];t.length>0;)n.push(t.splice(0,e));return n},this.fixTimeZone=function(t){var e=t.getHours();t.setHours(23===e?e+2:0)},t.select=function(e){if(t.datepickerMode===c.minMode){var n=l.$viewValue?new Date(l.$viewValue):new Date(0,0,0,0,0,0,0);n.setFullYear(e.getFullYear(),e.getMonth(),e.getDate()),l.$setViewValue(n),l.$render()}else c.activeDate=e,t.datepickerMode=c.modes[c.modes.indexOf(t.datepickerMode)-1]},t.move=function(t){var e=c.activeDate.getFullYear()+t*(c.step.years||0),n=c.activeDate.getMonth()+t*(c.step.months||0);c.activeDate.setFullYear(e,n,1),c.refreshView()},t.toggleMode=function(e){e=e||1,t.datepickerMode===c.maxMode&&1===e||t.datepickerMode===c.minMode&&-1===e||(t.datepickerMode=c.modes[c.modes.indexOf(t.datepickerMode)+e])},t.keys={13:"enter",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down"};var u=function(){c.element[0].focus()};t.$on("datepicker.focus",u),t.keydown=function(e){var n=t.keys[e.which];if(n&&!e.shiftKey&&!e.altKey)if(e.preventDefault(),c.shortcutPropagation||e.stopPropagation(),"enter"===n||"space"===n){if(c.isDisabled(c.activeDate))return;t.select(c.activeDate),u()}else!e.ctrlKey||"up"!==n&&"down"!==n?(c.handleKeyDown(n,e),c.refreshView()):(t.toggleMode("up"===n?1:-1),u())}}]).directive("datepicker",function(){return{restrict:"EA",replace:!0,templateUrl:function(t,e){return e.templateUrl||"template/datepicker/datepicker.html"},scope:{datepickerMode:"=?",dateDisabled:"&",customClass:"&",shortcutPropagation:"&?"},require:["datepicker","^ngModel"],controller:"DatepickerController",controllerAs:"datepicker",link:function(t,e,n,i){var r=i[0],o=i[1];r.init(o)}}}).directive("daypicker",["dateFilter",function(t){return{restrict:"EA",replace:!0,templateUrl:"template/datepicker/day.html",require:"^datepicker",link:function(e,n,i,r){e.showWeeks=r.showWeeks,r.step={months:1},r.element=n;var o=[31,28,31,30,31,30,31,31,30,31,30,31];function a(t,e){return 1!==e||t%4!=0||t%100==0&&t%400!=0?o[e]:29}function s(t){var e=new Date(t);e.setDate(e.getDate()+4-(e.getDay()||7));var n=e.getTime();return e.setMonth(0),e.setDate(1),Math.floor(Math.round((n-e)/864e5)/7)+1}r._refreshView=function(){var n=r.activeDate.getFullYear(),i=r.activeDate.getMonth(),o=new Date(n,i,1),a=r.startingDay-o.getDay(),c=a>0?7-a:-a,l=new Date(o);c>0&&l.setDate(1-c);for(var u=function(t,e){for(var n,i=new Array(42),o=new Date(t),a=0;a<42;)n=new Date(o),r.fixTimeZone(n),i[a++]=n,o.setDate(o.getDate()+1);return i}(l),d=0;d<42;d++)u[d]=angular.extend(r.createDateObject(u[d],r.formatDay),{secondary:u[d].getMonth()!==i,uid:e.uniqueId+"-"+d});e.labels=new Array(7);for(var p=0;p<7;p++)e.labels[p]={abbr:t(u[p].date,r.formatDayHeader),full:t(u[p].date,"EEEE")};if(e.title=t(r.activeDate,r.formatDayTitle),e.rows=r.split(u,7),e.showWeeks){e.weekNumbers=[];for(var h=(11-r.startingDay)%7,f=e.rows.length,g=0;g<f;g++)e.weekNumbers.push(s(e.rows[g][h].date))}},r.compare=function(t,e){return new Date(t.getFullYear(),t.getMonth(),t.getDate())-new Date(e.getFullYear(),e.getMonth(),e.getDate())},r.handleKeyDown=function(t,e){var n=r.activeDate.getDate();if("left"===t)n-=1;else if("up"===t)n-=7;else if("right"===t)n+=1;else if("down"===t)n+=7;else if("pageup"===t||"pagedown"===t){var i=r.activeDate.getMonth()+("pageup"===t?-1:1);r.activeDate.setMonth(i,1),n=Math.min(a(r.activeDate.getFullYear(),r.activeDate.getMonth()),n)}else"home"===t?n=1:"end"===t&&(n=a(r.activeDate.getFullYear(),r.activeDate.getMonth()));r.activeDate.setDate(n)},r.refreshView()}}}]).directive("monthpicker",["dateFilter",function(t){return{restrict:"EA",replace:!0,templateUrl:"template/datepicker/month.html",require:"^datepicker",link:function(e,n,i,r){r.step={years:1},r.element=n,r._refreshView=function(){for(var n,i=new Array(12),o=r.activeDate.getFullYear(),a=0;a<12;a++)n=new Date(o,a,1),r.fixTimeZone(n),i[a]=angular.extend(r.createDateObject(n,r.formatMonth),{uid:e.uniqueId+"-"+a});e.title=t(r.activeDate,r.formatMonthTitle),e.rows=r.split(i,3)},r.compare=function(t,e){return new Date(t.getFullYear(),t.getMonth())-new Date(e.getFullYear(),e.getMonth())},r.handleKeyDown=function(t,e){var n=r.activeDate.getMonth();if("left"===t)n-=1;else if("up"===t)n-=3;else if("right"===t)n+=1;else if("down"===t)n+=3;else if("pageup"===t||"pagedown"===t){var i=r.activeDate.getFullYear()+("pageup"===t?-1:1);r.activeDate.setFullYear(i)}else"home"===t?n=0:"end"===t&&(n=11);r.activeDate.setMonth(n)},r.refreshView()}}}]).directive("yearpicker",["dateFilter",function(t){return{restrict:"EA",replace:!0,templateUrl:"template/datepicker/year.html",require:"^datepicker",link:function(t,e,n,i){var r=i.yearRange;function o(t){return parseInt((t-1)/r,10)*r+1}i.step={years:r},i.element=e,i._refreshView=function(){for(var e,n=new Array(r),a=0,s=o(i.activeDate.getFullYear());a<r;a++)e=new Date(s+a,0,1),i.fixTimeZone(e),n[a]=angular.extend(i.createDateObject(e,i.formatYear),{uid:t.uniqueId+"-"+a});t.title=[n[0].label,n[r-1].label].join(" - "),t.rows=i.split(n,5)},i.compare=function(t,e){return t.getFullYear()-e.getFullYear()},i.handleKeyDown=function(t,e){var n=i.activeDate.getFullYear();"left"===t?n-=1:"up"===t?n-=5:"right"===t?n+=1:"down"===t?n+=5:"pageup"===t||"pagedown"===t?n+=("pageup"===t?-1:1)*i.step.years:"home"===t?n=o(i.activeDate.getFullYear()):"end"===t&&(n=o(i.activeDate.getFullYear())+r-1),i.activeDate.setFullYear(n)},i.refreshView()}}}]).constant("datepickerPopupConfig",{datepickerPopup:"yyyy-MM-dd",datepickerPopupTemplateUrl:"template/datepicker/popup.html",datepickerTemplateUrl:"template/datepicker/datepicker.html",html5Types:{date:"yyyy-MM-dd","datetime-local":"yyyy-MM-ddTHH:mm:ss.sss",month:"yyyy-MM"},currentText:"Today",clearText:"Clear",closeText:"Done",closeOnDateSelection:!0,appendToBody:!1,showButtonBar:!0,onOpenFocus:!0}).directive("datepickerPopup",["$compile","$parse","$document","$rootScope","$position","dateFilter","dateParser","datepickerPopupConfig","$timeout",function(t,e,n,i,r,o,a,s,c){return{restrict:"EA",require:"ngModel",scope:{isOpen:"=?",currentText:"@",clearText:"@",closeText:"@",dateDisabled:"&",customClass:"&"},link:function(l,u,d,p){var h,f=angular.isDefined(d.closeOnDateSelection)?l.$parent.$eval(d.closeOnDateSelection):s.closeOnDateSelection,g=angular.isDefined(d.datepickerAppendToBody)?l.$parent.$eval(d.datepickerAppendToBody):s.appendToBody,m=angular.isDefined(d.onOpenFocus)?l.$parent.$eval(d.onOpenFocus):s.onOpenFocus,v=angular.isDefined(d.datepickerPopupTemplateUrl)?d.datepickerPopupTemplateUrl:s.datepickerPopupTemplateUrl,y=angular.isDefined(d.datepickerTemplateUrl)?d.datepickerTemplateUrl:s.datepickerTemplateUrl,b={};l.showButtonBar=angular.isDefined(d.showButtonBar)?l.$parent.$eval(d.showButtonBar):s.showButtonBar,l.getText=function(t){return l[t+"Text"]||s[t+"Text"]},l.isDisabled=function(t){return"today"===t&&(t=new Date),l.watchData.minDate&&l.compare(t,b.minDate)<0||l.watchData.maxDate&&l.compare(t,b.maxDate)>0},l.compare=function(t,e){return new Date(t.getFullYear(),t.getMonth(),t.getDate())-new Date(e.getFullYear(),e.getMonth(),e.getDate())};var w=!1;if(s.html5Types[d.type]?(h=s.html5Types[d.type],w=!0):(h=d.datepickerPopup||s.datepickerPopup,d.$observe("datepickerPopup",function(t,e){var n=t||s.datepickerPopup;if(n!==h&&(h=n,p.$modelValue=null,!h))throw new Error("datepickerPopup must have a date format specified.")})),!h)throw new Error("datepickerPopup must have a date format specified.");if(w&&d.datepickerPopup)throw new Error("HTML5 date input types do not support custom formats.");var S=angular.element("<div datepicker-popup-wrap><div datepicker></div></div>");function x(t){return t.replace(/([A-Z])/g,function(t){return"-"+t.toLowerCase()})}S.attr({"ng-model":"date","ng-change":"dateSelection(date)","template-url":v});var M=angular.element(S.children()[0]);if(M.attr("template-url",y),w&&"month"===d.type&&(M.attr("datepicker-mode",'"month"'),M.attr("min-mode","month")),d.datepickerOptions){var E=l.$parent.$eval(d.datepickerOptions);E&&E.initDate&&(l.initDate=E.initDate,M.attr("init-date","initDate"),delete E.initDate),angular.forEach(E,function(t,e){M.attr(x(e),t)})}l.watchData={},angular.forEach(["minMode","maxMode","minDate","maxDate","datepickerMode","initDate","shortcutPropagation"],function(t){if(d[t]){var n=e(d[t]);if(l.$parent.$watch(n,function(e){l.watchData[t]=e,"minDate"!==t&&"maxDate"!==t||(b[t]=new Date(e))}),M.attr(x(t),"watchData."+t),"datepickerMode"===t){var i=n.assign;l.$watch("watchData."+t,function(t,e){angular.isFunction(i)&&t!==e&&i(l.$parent,t)})}}}),d.dateDisabled&&M.attr("date-disabled","dateDisabled({ date: date, mode: mode })"),d.showWeeks&&M.attr("show-weeks",d.showWeeks),d.customClass&&M.attr("custom-class","customClass({ date: date, mode: mode })"),w?p.$formatters.push(function(t){return l.date=t,t}):(p.$$parserName="date",p.$validators.date=function(t,e){var n=t||e;if(!d.ngRequired&&!n)return!0;if(angular.isNumber(n)&&(n=new Date(n)),n){if(angular.isDate(n)&&!isNaN(n))return!0;if(angular.isString(n)){var i=a.parse(n,h);return!isNaN(i)}return!1}return!0},p.$parsers.unshift(function(t){if(angular.isNumber(t)&&(t=new Date(t)),!t)return null;if(angular.isDate(t)&&!isNaN(t))return t;if(angular.isString(t)){var e=a.parse(t,h,l.date);return isNaN(e)?void 0:e}}),p.$formatters.push(function(t){return l.date=t,p.$isEmpty(t)?t:o(t,h)})),l.dateSelection=function(t){angular.isDefined(t)&&(l.date=t);var e=l.date?o(l.date,h):null;u.val(e),p.$setViewValue(e),f&&(l.isOpen=!1,u[0].focus())},p.$viewChangeListeners.push(function(){l.date=a.parse(p.$viewValue,h,l.date)});var C=function(t){!l.isOpen||u[0].contains(t.target)||S[0].contains(t.target)||l.$apply(function(){l.isOpen=!1})},A=function(t){27===t.which&&l.isOpen?(t.preventDefault(),t.stopPropagation(),l.$apply(function(){l.isOpen=!1}),u[0].focus()):40!==t.which||l.isOpen||(t.preventDefault(),t.stopPropagation(),l.$apply(function(){l.isOpen=!0}))};u.bind("keydown",A),l.keydown=function(t){27===t.which&&(l.isOpen=!1,u[0].focus())},l.$watch("isOpen",function(t){t?(l.position=g?r.offset(u):r.position(u),l.position.top=l.position.top+u.prop("offsetHeight"),c(function(){m&&l.$broadcast("datepicker.focus"),n.bind("click",C)},0,!1)):n.unbind("click",C)}),l.select=function(t){if("today"===t){var e=new Date;angular.isDate(l.date)?(t=new Date(l.date)).setFullYear(e.getFullYear(),e.getMonth(),e.getDate()):t=new Date(e.setHours(0,0,0,0))}l.dateSelection(t)},l.close=function(){l.isOpen=!1,u[0].focus()};var T=t(S)(l);S.remove(),g?n.find("body").append(T):u.after(T),l.$on("$destroy",function(){!0===l.isOpen&&(i.$$phase||l.$apply(function(){l.isOpen=!1})),T.remove(),u.unbind("keydown",A),n.unbind("click",C)})}}}]).directive("datepickerPopupWrap",function(){return{restrict:"EA",replace:!0,transclude:!0,templateUrl:function(t,e){return e.templateUrl||"template/datepicker/popup.html"}}}),angular.module("ui.bootstrap.dropdown",["ui.bootstrap.position"]).constant("dropdownConfig",{openClass:"open"}).service("dropdownService",["$document","$rootScope",function(t,e){var n=null;this.open=function(e){n||(t.bind("click",i),t.bind("keydown",r)),n&&n!==e&&(n.isOpen=!1),n=e},this.close=function(e){n===e&&(n=null,t.unbind("click",i),t.unbind("keydown",r))};var i=function(t){if(n&&(!t||"disabled"!==n.getAutoClose())){var i=n.getToggleElement();if(!(t&&i&&i[0].contains(t.target))){var r=n.getDropdownElement();t&&"outsideClick"===n.getAutoClose()&&r&&r[0].contains(t.target)||(n.isOpen=!1,e.$$phase||n.$apply())}}},r=function(t){27===t.which?(n.focusToggleElement(),i()):n.isKeynavEnabled()&&/(38|40)/.test(t.which)&&n.isOpen&&(t.preventDefault(),t.stopPropagation(),n.focusDropdownEntry(t.which))}}]).controller("DropdownController",["$scope","$attrs","$parse","dropdownConfig","dropdownService","$animate","$position","$document","$compile","$templateRequest",function(t,e,n,i,r,o,a,s,c,l){var u,d,p=this,h=t.$new(),f=i.openClass,g=angular.noop,m=e.onToggle?n(e.onToggle):angular.noop,v=!1,y=!1,b=s.find("body");this.init=function(i){p.$element=i,e.isOpen&&(d=n(e.isOpen),g=d.assign,t.$watch(d,function(t){h.isOpen=!!t})),v=angular.isDefined(e.dropdownAppendToBody),y=angular.isDefined(e.keyboardNav),v&&p.dropdownMenu&&(b.append(p.dropdownMenu),b.addClass("dropdown"),i.on("$destroy",function(){p.dropdownMenu.remove()}))},this.toggle=function(t){return h.isOpen=arguments.length?!!t:!h.isOpen},this.isOpen=function(){return h.isOpen},h.getToggleElement=function(){return p.toggleElement},h.getAutoClose=function(){return e.autoClose||"always"},h.getElement=function(){return p.$element},h.isKeynavEnabled=function(){return y},h.focusDropdownEntry=function(t){var e=p.dropdownMenu?angular.element(p.dropdownMenu).find("a"):angular.element(p.$element).find("ul").eq(0).find("a");switch(t){case 40:angular.isNumber(p.selectedOption)?p.selectedOption=p.selectedOption===e.length-1?p.selectedOption:p.selectedOption+1:p.selectedOption=0;break;case 38:angular.isNumber(p.selectedOption)?p.selectedOption=0===p.selectedOption?0:p.selectedOption-1:p.selectedOption=e.length-1}e[p.selectedOption].focus()},h.getDropdownElement=function(){return p.dropdownMenu},h.focusToggleElement=function(){p.toggleElement&&p.toggleElement[0].focus()},h.$watch("isOpen",function(e,n){if(v&&p.dropdownMenu){var i=a.positionElements(p.$element,p.dropdownMenu,"bottom-left",!0),s={top:i.top+"px",display:e?"block":"none"};p.dropdownMenu.hasClass("dropdown-menu-right")?(s.left="auto",s.right=window.innerWidth-(i.left+p.$element.prop("offsetWidth"))+"px"):(s.left=i.left+"px",s.right="auto"),p.dropdownMenu.css(s)}var d=v?b:p.$element;if(o[e?"addClass":"removeClass"](d,f).then(function(){angular.isDefined(e)&&e!==n&&m(t,{open:!!e})}),e)p.dropdownMenuTemplateUrl&&l(p.dropdownMenuTemplateUrl).then(function(t){u=h.$new(),c(t.trim())(u,function(t){var e=t;p.dropdownMenu.replaceWith(e),p.dropdownMenu=e})}),h.focusToggleElement(),r.open(h);else{if(p.dropdownMenuTemplateUrl){u&&u.$destroy();var y=angular.element('<ul class="dropdown-menu"></ul>');p.dropdownMenu.replaceWith(y),p.dropdownMenu=y}r.close(h),p.selectedOption=null}angular.isFunction(g)&&g(t,e)}),t.$on("$locationChangeSuccess",function(){"disabled"!==h.getAutoClose()&&(h.isOpen=!1)});var w=t.$on("$destroy",function(){h.$destroy()});h.$on("$destroy",w)}]).directive("dropdown",function(){return{controller:"DropdownController",link:function(t,e,n,i){i.init(e),e.addClass("dropdown")}}}).directive("dropdownMenu",function(){return{restrict:"AC",require:"?^dropdown",link:function(t,e,n,i){if(i){var r=n.templateUrl;r&&(i.dropdownMenuTemplateUrl=r),i.dropdownMenu||(i.dropdownMenu=e)}}}}).directive("keyboardNav",function(){return{restrict:"A",require:"?^dropdown",link:function(t,e,n,i){e.bind("keydown",function(t){if(-1!==[38,40].indexOf(t.which)){t.preventDefault(),t.stopPropagation();var e=i.dropdownMenu.find("a");switch(t.which){case 40:angular.isNumber(i.selectedOption)?i.selectedOption=i.selectedOption===e.length-1?i.selectedOption:i.selectedOption+1:i.selectedOption=0;break;case 38:angular.isNumber(i.selectedOption)?i.selectedOption=0===i.selectedOption?0:i.selectedOption-1:i.selectedOption=e.length-1}e[i.selectedOption].focus()}})}}}).directive("dropdownToggle",function(){return{require:"?^dropdown",link:function(t,e,n,i){if(i){e.addClass("dropdown-toggle"),i.toggleElement=e;var r=function(r){r.preventDefault(),e.hasClass("disabled")||n.disabled||t.$apply(function(){i.toggle()})};e.bind("click",r),e.attr({"aria-haspopup":!0,"aria-expanded":!1}),t.$watch(i.isOpen,function(t){e.attr("aria-expanded",!!t)}),t.$on("$destroy",function(){e.unbind("click",r)})}}}}),angular.module("ui.bootstrap.modal",[]).factory("$$stackedMap",function(){return{createNew:function(){var t=[];return{add:function(e,n){t.push({key:e,value:n})},get:function(e){for(var n=0;n<t.length;n++)if(e==t[n].key)return t[n]},keys:function(){for(var e=[],n=0;n<t.length;n++)e.push(t[n].key);return e},top:function(){return t[t.length-1]},remove:function(e){for(var n=-1,i=0;i<t.length;i++)if(e==t[i].key){n=i;break}return t.splice(n,1)[0]},removeTop:function(){return t.splice(t.length-1,1)[0]},length:function(){return t.length}}}}}).factory("$$multiMap",function(){return{createNew:function(){var t={};return{entries:function(){return Object.keys(t).map(function(e){return{key:e,value:t[e]}})},get:function(e){return t[e]},hasKey:function(e){return!!t[e]},keys:function(){return Object.keys(t)},put:function(e,n){t[e]||(t[e]=[]),t[e].push(n)},remove:function(e,n){var i=t[e];if(i){var r=i.indexOf(n);-1!==r&&i.splice(r,1),i.length||delete t[e]}}}}}}).directive("modalBackdrop",["$animate","$injector","$modalStack",function(t,e,n){var i=null;return e.has("$animateCss")&&(i=e.get("$animateCss")),{restrict:"EA",replace:!0,templateUrl:"template/modal/backdrop.html",compile:function(t,e){return t.addClass(e.backdropClass),r}};function r(e,r,o){o.modalInClass&&(i?i(r,{addClass:o.modalInClass}).start():t.addClass(r,o.modalInClass),e.$on(n.NOW_CLOSING_EVENT,function(e,n){var a=n();i?i(r,{removeClass:o.modalInClass}).start().then(a):t.removeClass(r,o.modalInClass).then(a)}))}}]).directive("modalWindow",["$modalStack","$q","$animate","$injector",function(t,e,n,i){var r=null;return i.has("$animateCss")&&(r=i.get("$animateCss")),{restrict:"EA",scope:{index:"@"},replace:!0,transclude:!0,templateUrl:function(t,e){return e.templateUrl||"template/modal/window.html"},link:function(i,o,a){o.addClass(a.windowClass||""),i.size=a.size,i.close=function(e){var n=t.getTop();n&&n.value.backdrop&&"static"!==n.value.backdrop&&e.target===e.currentTarget&&(e.preventDefault(),e.stopPropagation(),t.dismiss(n.key,"backdrop click"))},i.$isRendered=!0;var s=e.defer();a.$observe("modalRender",function(t){"true"==t&&s.resolve()}),s.promise.then(function(){var s=null;a.modalInClass&&(s=r?r(o,{addClass:a.modalInClass}).start():n.addClass(o,a.modalInClass),i.$on(t.NOW_CLOSING_EVENT,function(t,e){var i=e();r?r(o,{removeClass:a.modalInClass}).start().then(i):n.removeClass(o,a.modalInClass).then(i)})),e.when(s).then(function(){var t=o[0].querySelectorAll("[autofocus]");t.length?t[0].focus():o[0].focus()});var c=t.getTop();c&&t.modalRendered(c.key)})}}}]).directive("modalAnimationClass",[function(){return{compile:function(t,e){e.modalAnimation&&t.addClass(e.modalAnimationClass)}}}]).directive("modalTransclude",function(){return{link:function(t,e,n,i,r){r(t.$parent,function(t){e.empty(),e.append(t)})}}}).factory("$modalStack",["$animate","$timeout","$document","$compile","$rootScope","$q","$injector","$$multiMap","$$stackedMap",function(t,e,n,i,r,o,a,s,c){var l=null;a.has("$animateCss")&&(l=a.get("$animateCss"));var u,d,p,h=c.createNew(),f=s.createNew(),g={NOW_CLOSING_EVENT:"modal.stack.now-closing"};function m(){for(var t=-1,e=h.keys(),n=0;n<e.length;n++)h.get(e[n]).value.backdrop&&(t=n);return t}function v(t,e){var i=n.find("body").eq(0),r=h.get(t).value;h.remove(t),y(r.modalDomEl,r.modalScope,function(){var e=r.openedClass||"modal-open";f.remove(e,t),i.toggleClass(e,f.hasKey(e))}),u&&-1==m()&&(y(u,d,function(){}),u=void 0,d=void 0),e&&e.focus?e.focus():i.focus()}function y(e,n,i){var r,a=null;return n.$broadcast(g.NOW_CLOSING_EVENT,function(){return r||(r=o.defer(),a=r.promise),function(){r.resolve()}}),o.when(a).then(function r(){r.done||(r.done=!0,l?l(e,{event:"leave"}).start().then(function(){e.remove()}):t.leave(e),n.$destroy(),i&&i())})}function b(t,e,n){return!t.value.modalScope.$broadcast("modal.closing",e,n).defaultPrevented}return r.$watch(m,function(t){d&&(d.index=t)}),n.bind("keydown",function(t){if(t.isDefaultPrevented())return t;var e=h.top();if(e&&e.value.keyboard)switch(t.which){case 27:t.preventDefault(),r.$apply(function(){g.dismiss(e.key,"escape key press")});break;case 9:g.loadFocusElementList(e);var n=!1;t.shiftKey?g.isFocusInFirstItem(t)&&(n=g.focusLastFocusableElement()):g.isFocusInLastItem(t)&&(n=g.focusFirstFocusableElement()),n&&(t.preventDefault(),t.stopPropagation())}}),g.open=function(t,e){var o=n[0].activeElement,a=e.openedClass||"modal-open";h.add(t,{deferred:e.deferred,renderDeferred:e.renderDeferred,modalScope:e.scope,backdrop:e.backdrop,keyboard:e.keyboard,openedClass:e.openedClass}),f.put(a,t);var s=n.find("body").eq(0),c=m();if(c>=0&&!u){(d=r.$new(!0)).index=c;var l=angular.element('<div modal-backdrop="modal-backdrop"></div>');l.attr("backdrop-class",e.backdropClass),e.animation&&l.attr("modal-animation","true"),u=i(l)(d),s.append(u)}var p=angular.element('<div modal-window="modal-window"></div>');p.attr({"template-url":e.windowTemplateUrl,"window-class":e.windowClass,size:e.size,index:h.length()-1,animate:"animate"}).html(e.content),e.animation&&p.attr("modal-animation","true");var v=i(p)(e.scope);h.top().value.modalDomEl=v,h.top().value.modalOpener=o,s.append(v),s.addClass(a),g.clearFocusListCache()},g.close=function(t,e){var n=h.get(t);return n&&b(n,e,!0)?(n.value.modalScope.$$uibDestructionScheduled=!0,n.value.deferred.resolve(e),v(t,n.value.modalOpener),!0):!n},g.dismiss=function(t,e){var n=h.get(t);return n&&b(n,e,!1)?(n.value.modalScope.$$uibDestructionScheduled=!0,n.value.deferred.reject(e),v(t,n.value.modalOpener),!0):!n},g.dismissAll=function(t){for(var e=this.getTop();e&&this.dismiss(e.key,t);)e=this.getTop()},g.getTop=function(){return h.top()},g.modalRendered=function(t){var e=h.get(t);e&&e.value.renderDeferred.resolve()},g.focusFirstFocusableElement=function(){return p.length>0&&(p[0].focus(),!0)},g.focusLastFocusableElement=function(){return p.length>0&&(p[p.length-1].focus(),!0)},g.isFocusInFirstItem=function(t){return p.length>0&&(t.target||t.srcElement)==p[0]},g.isFocusInLastItem=function(t){return p.length>0&&(t.target||t.srcElement)==p[p.length-1]},g.clearFocusListCache=function(){p=[]},g.loadFocusElementList=function(t){if((void 0===p||!p.length0)&&t){var e=t.value.modalDomEl;e&&e.length&&(p=e[0].querySelectorAll("a[href], area[href], input:not([disabled]), button:not([disabled]),select:not([disabled]), textarea:not([disabled]), iframe, object, embed, *[tabindex], *[contenteditable=true]"))}},g}]).provider("$modal",function(){var t={options:{animation:!0,backdrop:!0,keyboard:!0},$get:["$injector","$rootScope","$q","$templateRequest","$controller","$modalStack",function(e,n,i,r,o,a){var s={},c=null;return s.getPromiseChain=function(){return c},s.open=function(s){var l=i.defer(),u=i.defer(),d=i.defer(),p={result:l.promise,opened:u.promise,rendered:d.promise,close:function(t){return a.close(p,t)},dismiss:function(t){return a.dismiss(p,t)}};if((s=angular.extend({},t.options,s)).resolve=s.resolve||{},!s.template&&!s.templateUrl)throw new Error("One of template or templateUrl options is required.");var h,f,g,m,v=i.all([(g=s,g.template?i.when(g.template):r(angular.isFunction(g.templateUrl)?g.templateUrl():g.templateUrl))].concat((h=s.resolve,f=[],angular.forEach(h,function(t){angular.isFunction(t)||angular.isArray(t)?f.push(i.when(e.invoke(t))):angular.isString(t)?f.push(i.when(e.get(t))):f.push(i.when(t))}),f)));return m=c=i.all([c]).then(function(){return v},function(){return v}).then(function(t){var e=(s.scope||n).$new();e.$close=p.close,e.$dismiss=p.dismiss,e.$on("$destroy",function(){e.$$uibDestructionScheduled||e.$dismiss("$uibUnscheduledDestruction")});var i,r={},c=1;s.controller&&(r.$scope=e,r.$modalInstance=p,angular.forEach(s.resolve,function(e,n){r[n]=t[c++]}),i=o(s.controller,r),s.controllerAs&&(s.bindToController&&angular.extend(i,e),e[s.controllerAs]=i)),a.open(p,{scope:e,deferred:l,renderDeferred:d,content:t[0],animation:s.animation,backdrop:s.backdrop,keyboard:s.keyboard,backdropClass:s.backdropClass,windowClass:s.windowClass,windowTemplateUrl:s.windowTemplateUrl,size:s.size,openedClass:s.openedClass}),u.resolve(!0)},function(t){u.reject(t),l.reject(t)}).finally(function(){c===m&&(c=null)}),p},s}]};return t}),angular.module("ui.bootstrap.pagination",[]).controller("PaginationController",["$scope","$attrs","$parse",function(t,e,n){var i=this,r={$setViewValue:angular.noop},o=e.numPages?n(e.numPages).assign:angular.noop;this.init=function(a,s){r=a,this.config=s,r.$render=function(){i.render()},e.itemsPerPage?t.$parent.$watch(n(e.itemsPerPage),function(e){i.itemsPerPage=parseInt(e,10),t.totalPages=i.calculateTotalPages()}):this.itemsPerPage=s.itemsPerPage,t.$watch("totalItems",function(){t.totalPages=i.calculateTotalPages()}),t.$watch("totalPages",function(e){o(t.$parent,e),t.page>e?t.selectPage(e):r.$render()})},this.calculateTotalPages=function(){var e=this.itemsPerPage<1?1:Math.ceil(t.totalItems/this.itemsPerPage);return Math.max(e||0,1)},this.render=function(){t.page=parseInt(r.$viewValue,10)||1},t.selectPage=function(e,n){n&&n.preventDefault(),(!t.ngDisabled||!n)&&t.page!==e&&e>0&&e<=t.totalPages&&(n&&n.target&&n.target.blur(),r.$setViewValue(e),r.$render())},t.getText=function(e){return t[e+"Text"]||i.config[e+"Text"]},t.noPrevious=function(){return 1===t.page},t.noNext=function(){return t.page===t.totalPages}}]).constant("paginationConfig",{itemsPerPage:10,boundaryLinks:!1,directionLinks:!0,firstText:"First",previousText:"Previous",nextText:"Next",lastText:"Last",rotate:!0}).directive("pagination",["$parse","paginationConfig",function(t,e){return{restrict:"EA",scope:{totalItems:"=",firstText:"@",previousText:"@",nextText:"@",lastText:"@",ngDisabled:"="},require:["pagination","?ngModel"],controller:"PaginationController",controllerAs:"pagination",templateUrl:function(t,e){return e.templateUrl||"template/pagination/pagination.html"},replace:!0,link:function(n,i,r,o){var a=o[0],s=o[1];if(s){var c=angular.isDefined(r.maxSize)?n.$parent.$eval(r.maxSize):e.maxSize,l=angular.isDefined(r.rotate)?n.$parent.$eval(r.rotate):e.rotate;n.boundaryLinks=angular.isDefined(r.boundaryLinks)?n.$parent.$eval(r.boundaryLinks):e.boundaryLinks,n.directionLinks=angular.isDefined(r.directionLinks)?n.$parent.$eval(r.directionLinks):e.directionLinks,a.init(s,e),r.maxSize&&n.$parent.$watch(t(r.maxSize),function(t){c=parseInt(t,10),a.render()});var u=a.render;a.render=function(){u(),n.page>0&&n.page<=n.totalPages&&(n.pages=function(t,e){var n=[],i=1,r=e,o=angular.isDefined(c)&&c<e;o&&(l?(r=(i=Math.max(t-Math.floor(c/2),1))+c-1)>e&&(i=(r=e)-c+1):(i=(Math.ceil(t/c)-1)*c+1,r=Math.min(i+c-1,e)));for(var a=i;a<=r;a++){var s=d(a,a,a===t);n.push(s)}if(o&&!l){if(i>1){var u=d(i-1,"...",!1);n.unshift(u)}if(r<e){var p=d(r+1,"...",!1);n.push(p)}}return n}(n.page,n.totalPages))}}function d(t,e,n){return{number:t,text:e,active:n}}}}}]).constant("pagerConfig",{itemsPerPage:10,previousText:"« Previous",nextText:"Next »",align:!0}).directive("pager",["pagerConfig",function(t){return{restrict:"EA",scope:{totalItems:"=",previousText:"@",nextText:"@",ngDisabled:"="},require:["pager","?ngModel"],controller:"PaginationController",controllerAs:"pagination",templateUrl:function(t,e){return e.templateUrl||"template/pagination/pager.html"},replace:!0,link:function(e,n,i,r){var o=r[0],a=r[1];a&&(e.align=angular.isDefined(i.align)?e.$parent.$eval(i.align):t.align,o.init(a,t))}}}]),angular.module("ui.bootstrap.tooltip",["ui.bootstrap.position","ui.bootstrap.bindHtml"]).provider("$tooltip",function(){var t={placement:"top",animation:!0,popupDelay:0,useContentExp:!1},e={mouseenter:"mouseleave",click:"click",focus:"blur",none:""},n={};this.options=function(t){angular.extend(n,t)},this.setTriggers=function(t){angular.extend(e,t)},this.$get=["$window","$compile","$timeout","$document","$position","$interpolate","$rootScope","$parse",function(i,r,o,a,s,c,l,u){return function(i,d,p,h){function f(t){var n=(t||h.trigger||p).split(" ");return{show:n,hide:n.map(function(t){return e[t]||t})}}h=angular.extend({},t,n,h);var g=i.replace(/[A-Z]/g,function(t,e){return(e?"-":"")+t.toLowerCase()}),m=c.startSymbol(),v=c.endSymbol(),y="<div "+g+'-popup title="'+m+"title"+v+'" '+(h.useContentExp?'content-exp="contentExp()" ':'content="'+m+"content"+v+'" ')+'placement="'+m+"placement"+v+'" popup-class="'+m+"popupClass"+v+'" animation="animation" is-open="isOpen"origin-scope="origScope" ></div>';return{restrict:"EA",compile:function(t,e){var n=r(y);return function(t,e,r,c){var p,g,m,v,y,b=!!angular.isDefined(h.appendToBody)&&h.appendToBody,w=f(void 0),S=angular.isDefined(r[d+"Enable"]),x=t.$new(!0),M=!1,E=!!angular.isDefined(r[d+"IsOpen"])&&u(r[d+"IsOpen"]),C=function(){p&&(y||(y=o(function(){p.css({top:0,left:0,width:"auto",height:"auto"});var t=s.position(p),n=s.positionElements(e,p,x.placement,b);n.top+="px",n.left+="px",n.width=t.width+"px",n.height=t.height+"px",p.css(n),y=null},0,!1)))};function A(){x.isOpen?O():T()}function T(){var e,n;S&&!t.$eval(r[d+"Enable"])||(x.popupClass=r[d+"Class"],k(),e=r[d+"PopupDelay"],n=parseInt(e,10),x.popupDelay=isNaN(n)?h.popupDelay:n,x.popupDelay?v||(v=o(_,x.popupDelay,!1)):_())}function O(){P(),l.$$phase||l.$digest()}function _(){if(v=null,m&&(o.cancel(m),m=null),!(h.useContentExp?x.contentExp():x.content))return angular.noop;p&&I(),g=x.$new(),p=n(g,function(t){b?a.find("body").append(t):e.after(t)}),h.useContentExp&&(g.$watch("contentExp()",function(t){!t&&x.isOpen&&P()}),g.$watch(function(){M||(M=!0,g.$$postDigest(function(){M=!1,x.isOpen&&C()}))})),x.isOpen=!0,E&&E.assign(x.origScope,x.isOpen),l.$$phase||x.$apply(),p.css({display:"block"}),C()}function P(){x.isOpen=!1,E&&E.assign(x.origScope,x.isOpen),o.cancel(v),v=null,o.cancel(y),y=null,x.animation?m||(m=o(I,500)):I()}function I(){m=null,p&&(p.remove(),p=null),g&&(g.$destroy(),g=null)}function k(){var t=r[d+"Placement"];x.placement=angular.isDefined(t)?t:h.placement}x.origScope=t,x.isOpen=!1,x.contentExp=function(){return t.$eval(r[i])},h.useContentExp||r.$observe(i,function(t){x.content=t,!t&&x.isOpen?P():C()}),r.$observe("disabled",function(t){v&&t&&(o.cancel(v),v=null),t&&x.isOpen&&P()}),r.$observe(d+"Title",function(t){x.title=t,C()}),r.$observe(d+"Placement",function(){x.isOpen&&(k(),C())}),E&&t.$watch(E,function(t){t!==x.isOpen&&A()});var D,R=function(){w.show.forEach(function(t){e.unbind(t,T)}),w.hide.forEach(function(t){e.unbind(t,O)})};D=r[d+"Trigger"],R(),"none"!==(w=f(D)).show&&w.show.forEach(function(t,n){t===w.hide[n]?e[0].addEventListener(t,A):t&&(e[0].addEventListener(t,T),e[0].addEventListener(w.hide[n],O))});var L=t.$eval(r[d+"Animation"]);x.animation=angular.isDefined(L)?!!L:h.animation;var N=t.$eval(r[d+"AppendToBody"]);(b=angular.isDefined(N)?N:b)&&t.$on("$locationChangeSuccess",function(){x.isOpen&&P()}),t.$on("$destroy",function(){o.cancel(m),o.cancel(v),o.cancel(y),R(),I(),x=null})}}}}}]}).directive("tooltipTemplateTransclude",["$animate","$sce","$compile","$templateRequest",function(t,e,n,i){return{link:function(r,o,a){var s,c,l,u=r.$eval(a.tooltipTemplateTranscludeScope),d=0,p=function(){c&&(c.remove(),c=null),s&&(s.$destroy(),s=null),l&&(t.leave(l).then(function(){c=null}),c=l,l=null)};r.$watch(e.parseAsResourceUrl(a.tooltipTemplateTransclude),function(e){var a=++d;e?(i(e,!0).then(function(i){if(a===d){var r=u.$new(),c=n(i)(r,function(e){p(),t.enter(e,o)});l=c,(s=r).$emit("$includeContentLoaded",e)}},function(){a===d&&(p(),r.$emit("$includeContentError",e))}),r.$emit("$includeContentRequested",e)):p()}),r.$on("$destroy",p)}}}]).directive("tooltipClasses",function(){return{restrict:"A",link:function(t,e,n){t.placement&&e.addClass(t.placement),t.popupClass&&e.addClass(t.popupClass),t.animation()&&e.addClass(n.tooltipAnimationClass)}}}).directive("tooltipPopup",function(){return{restrict:"EA",replace:!0,scope:{content:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"template/tooltip/tooltip-popup.html"}}).directive("tooltip",["$tooltip",function(t){return t("tooltip","tooltip","mouseenter")}]).directive("tooltipTemplatePopup",function(){return{restrict:"EA",replace:!0,scope:{contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&",originScope:"&"},templateUrl:"template/tooltip/tooltip-template-popup.html"}}).directive("tooltipTemplate",["$tooltip",function(t){return t("tooltipTemplate","tooltip","mouseenter",{useContentExp:!0})}]).directive("tooltipHtmlPopup",function(){return{restrict:"EA",replace:!0,scope:{contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"template/tooltip/tooltip-html-popup.html"}}).directive("tooltipHtml",["$tooltip",function(t){return t("tooltipHtml","tooltip","mouseenter",{useContentExp:!0})}]).directive("tooltipHtmlUnsafePopup",function(){return{restrict:"EA",replace:!0,scope:{content:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"template/tooltip/tooltip-html-unsafe-popup.html"}}).value("tooltipHtmlUnsafeSuppressDeprecated",!1).directive("tooltipHtmlUnsafe",["$tooltip","tooltipHtmlUnsafeSuppressDeprecated","$log",function(t,e,n){return e||n.warn("tooltip-html-unsafe is now deprecated. Use tooltip-html or tooltip-template instead."),t("tooltipHtmlUnsafe","tooltip","mouseenter")}]),angular.module("ui.bootstrap.popover",["ui.bootstrap.tooltip"]).directive("popoverTemplatePopup",function(){return{restrict:"EA",replace:!0,scope:{title:"@",contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&",originScope:"&"},templateUrl:"template/popover/popover-template.html"}}).directive("popoverTemplate",["$tooltip",function(t){return t("popoverTemplate","popover","click",{useContentExp:!0})}]).directive("popoverHtmlPopup",function(){return{restrict:"EA",replace:!0,scope:{contentExp:"&",title:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"template/popover/popover-html.html"}}).directive("popoverHtml",["$tooltip",function(t){return t("popoverHtml","popover","click",{useContentExp:!0})}]).directive("popoverPopup",function(){return{restrict:"EA",replace:!0,scope:{title:"@",content:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"template/popover/popover.html"}}).directive("popover",["$tooltip",function(t){return t("popover","popover","click")}]),angular.module("ui.bootstrap.progressbar",[]).constant("progressConfig",{animate:!0,max:100}).value("$progressSuppressWarning",!1).controller("ProgressController",["$scope","$attrs","progressConfig",function(t,e,n){var i=this,r=angular.isDefined(e.animate)?t.$parent.$eval(e.animate):n.animate;this.bars=[],t.max=angular.isDefined(t.max)?t.max:n.max,this.addBar=function(e,n){r||n.css({transition:"none"}),this.bars.push(e),e.max=t.max,e.$watch("value",function(t){e.recalculatePercentage()}),e.recalculatePercentage=function(){e.percent=+(100*e.value/e.max).toFixed(2);var t=i.bars.reduce(function(t,e){return t+e.percent},0);t>100&&(e.percent-=t-100)},e.$on("$destroy",function(){n=null,i.removeBar(e)})},this.removeBar=function(t){this.bars.splice(this.bars.indexOf(t),1)},t.$watch("max",function(e){i.bars.forEach(function(e){e.max=t.max,e.recalculatePercentage()})})}]).directive("uibProgress",function(){return{restrict:"EA",replace:!0,transclude:!0,controller:"ProgressController",require:"uibProgress",scope:{max:"=?"},templateUrl:"template/progressbar/progress.html"}}).directive("progress",["$log","$progressSuppressWarning",function(t,e){return{restrict:"EA",replace:!0,transclude:!0,controller:"ProgressController",require:"progress",scope:{max:"=?"},templateUrl:"template/progressbar/progress.html",link:function(){e&&t.warn("progress is now deprecated. Use uib-progress instead")}}}]).directive("uibBar",function(){return{restrict:"EA",replace:!0,transclude:!0,require:"^uibProgress",scope:{value:"=",type:"@"},templateUrl:"template/progressbar/bar.html",link:function(t,e,n,i){i.addBar(t,e)}}}).directive("bar",["$log","$progressSuppressWarning",function(t,e){return{restrict:"EA",replace:!0,transclude:!0,require:"^progress",scope:{value:"=",type:"@"},templateUrl:"template/progressbar/bar.html",link:function(n,i,r,o){e&&t.warn("bar is now deprecated. Use uib-bar instead"),o.addBar(n,i)}}}]).directive("progressbar",function(){return{restrict:"EA",replace:!0,transclude:!0,controller:"ProgressController",scope:{value:"=",max:"=?",type:"@"},templateUrl:"template/progressbar/progressbar.html",link:function(t,e,n,i){i.addBar(t,angular.element(e.children()[0]))}}}),angular.module("ui.bootstrap.rating",[]).constant("ratingConfig",{max:5,stateOn:null,stateOff:null,titles:["one","two","three","four","five"]}).controller("RatingController",["$scope","$attrs","ratingConfig",function(t,e,n){var i={$setViewValue:angular.noop};this.init=function(r){(i=r).$render=this.render,i.$formatters.push(function(t){return angular.isNumber(t)&&t<<0!==t&&(t=Math.round(t)),t}),this.stateOn=angular.isDefined(e.stateOn)?t.$parent.$eval(e.stateOn):n.stateOn,this.stateOff=angular.isDefined(e.stateOff)?t.$parent.$eval(e.stateOff):n.stateOff;var o=angular.isDefined(e.titles)?t.$parent.$eval(e.titles):n.titles;this.titles=angular.isArray(o)&&o.length>0?o:n.titles;var a=angular.isDefined(e.ratingStates)?t.$parent.$eval(e.ratingStates):new Array(angular.isDefined(e.max)?t.$parent.$eval(e.max):n.max);t.range=this.buildTemplateObjects(a)},this.buildTemplateObjects=function(t){for(var e=0,n=t.length;e<n;e++)t[e]=angular.extend({index:e},{stateOn:this.stateOn,stateOff:this.stateOff,title:this.getTitle(e)},t[e]);return t},this.getTitle=function(t){return t>=this.titles.length?t+1:this.titles[t]},t.rate=function(e){!t.readonly&&e>=0&&e<=t.range.length&&(i.$setViewValue(i.$viewValue===e?0:e),i.$render())},t.enter=function(e){t.readonly||(t.value=e),t.onHover({value:e})},t.reset=function(){t.value=i.$viewValue,t.onLeave()},t.onKeydown=function(e){/(37|38|39|40)/.test(e.which)&&(e.preventDefault(),e.stopPropagation(),t.rate(t.value+(38===e.which||39===e.which?1:-1)))},this.render=function(){t.value=i.$viewValue}}]).directive("rating",function(){return{restrict:"EA",require:["rating","ngModel"],scope:{readonly:"=?",onHover:"&",onLeave:"&"},controller:"RatingController",templateUrl:"template/rating/rating.html",replace:!0,link:function(t,e,n,i){var r=i[0],o=i[1];r.init(o)}}}),angular.module("ui.bootstrap.tabs",[]).controller("TabsetController",["$scope",function(t){var e,n=this,i=n.tabs=t.tabs=[];n.select=function(t){angular.forEach(i,function(e){e.active&&e!==t&&(e.active=!1,e.onDeselect(),t.selectCalled=!1)}),t.active=!0,t.selectCalled||(t.onSelect(),t.selectCalled=!0)},n.addTab=function(t){i.push(t),1===i.length&&!1!==t.active?t.active=!0:t.active?n.select(t):t.active=!1},n.removeTab=function(t){var r=i.indexOf(t);if(t.active&&i.length>1&&!e){var o=r==i.length-1?r-1:r+1;n.select(i[o])}i.splice(r,1)},t.$on("$destroy",function(){e=!0})}]).directive("tabset",function(){return{restrict:"EA",transclude:!0,replace:!0,scope:{type:"@"},controller:"TabsetController",templateUrl:"template/tabs/tabset.html",link:function(t,e,n){t.vertical=!!angular.isDefined(n.vertical)&&t.$parent.$eval(n.vertical),t.justified=!!angular.isDefined(n.justified)&&t.$parent.$eval(n.justified)}}}).directive("tab",["$parse","$log",function(t,e){return{require:"^tabset",restrict:"EA",replace:!0,templateUrl:"template/tabs/tab.html",transclude:!0,scope:{active:"=?",heading:"@",onSelect:"&select",onDeselect:"&deselect"},controller:function(){},link:function(n,i,r,o,a){n.$watch("active",function(t){t&&o.select(n)}),n.disabled=!1,r.disable&&n.$parent.$watch(t(r.disable),function(t){n.disabled=!!t}),r.disabled&&(e.warn('Use of "disabled" attribute has been deprecated, please use "disable"'),n.$parent.$watch(t(r.disabled),function(t){n.disabled=!!t})),n.select=function(){n.disabled||(n.active=!0)},o.addTab(n),n.$on("$destroy",function(){o.removeTab(n)}),n.$transcludeFn=a}}}]).directive("tabHeadingTransclude",function(){return{restrict:"A",require:"^tab",link:function(t,e,n,i){t.$watch("headingElement",function(t){t&&(e.html(""),e.append(t))})}}}).directive("tabContentTransclude",function(){return{restrict:"A",require:"^tabset",link:function(t,e,n){var i=t.$eval(n.tabContentTransclude);i.$transcludeFn(i.$parent,function(t){angular.forEach(t,function(t){!function(t){return t.tagName&&(t.hasAttribute("tab-heading")||t.hasAttribute("data-tab-heading")||t.hasAttribute("x-tab-heading")||"tab-heading"===t.tagName.toLowerCase()||"data-tab-heading"===t.tagName.toLowerCase()||"x-tab-heading"===t.tagName.toLowerCase())}(t)?e.append(t):i.headingElement=t})})}}}),angular.module("ui.bootstrap.timepicker",[]).constant("timepickerConfig",{hourStep:1,minuteStep:1,showMeridian:!0,meridians:null,readonlyInput:!1,mousewheel:!0,arrowkeys:!0,showSpinners:!0}).controller("TimepickerController",["$scope","$attrs","$parse","$log","$locale","timepickerConfig",function(t,e,n,i,r,o){var a=new Date,s={$setViewValue:angular.noop},c=angular.isDefined(e.meridians)?t.$parent.$eval(e.meridians):o.meridians||r.DATETIME_FORMATS.AMPMS;this.init=function(n,i){(s=n).$render=this.render,s.$formatters.unshift(function(t){return t?new Date(t):null});var r=i.eq(0),a=i.eq(1);(angular.isDefined(e.mousewheel)?t.$parent.$eval(e.mousewheel):o.mousewheel)&&this.setupMousewheelEvents(r,a),(angular.isDefined(e.arrowkeys)?t.$parent.$eval(e.arrowkeys):o.arrowkeys)&&this.setupArrowkeyEvents(r,a),t.readonlyInput=angular.isDefined(e.readonlyInput)?t.$parent.$eval(e.readonlyInput):o.readonlyInput,this.setupInputEvents(r,a)};var l=o.hourStep;e.hourStep&&t.$parent.$watch(n(e.hourStep),function(t){l=parseInt(t,10)});var u,d,p=o.minuteStep;function h(){var e=parseInt(t.hours,10);if(t.showMeridian?e>0&&e<13:e>=0&&e<24)return t.showMeridian&&(12===e&&(e=0),t.meridian===c[1]&&(e+=12)),e}function f(){var e=parseInt(t.minutes,10);return e>=0&&e<60?e:void 0}function g(t){return angular.isDefined(t)&&t.toString().length<2?"0"+t:t.toString()}function m(t){v(),s.$setViewValue(new Date(a)),y(t)}function v(){s.$setValidity("time",!0),t.invalidHours=!1,t.invalidMinutes=!1}function y(e){var n=a.getHours(),i=a.getMinutes();t.showMeridian&&(n=0===n||12===n?12:n%12),t.hours="h"===e?n:g(n),"m"!==e&&(t.minutes=g(i)),t.meridian=a.getHours()<12?c[0]:c[1]}function b(t,e){var n=new Date(t.getTime()+6e4*e),i=new Date(t);return i.setHours(n.getHours(),n.getMinutes()),i}function w(t){a=b(a,t),m()}e.minuteStep&&t.$parent.$watch(n(e.minuteStep),function(t){p=parseInt(t,10)}),t.$parent.$watch(n(e.min),function(t){var e=new Date(t);u=isNaN(e)?void 0:e}),t.$parent.$watch(n(e.max),function(t){var e=new Date(t);d=isNaN(e)?void 0:e}),t.noIncrementHours=function(){var t=b(a,60*l);return t>d||t<a&&t<u},t.noDecrementHours=function(){var t=b(a,60*-l);return t<u||t>a&&t>d},t.noIncrementMinutes=function(){var t=b(a,p);return t>d||t<a&&t<u},t.noDecrementMinutes=function(){var t=b(a,-p);return t<u||t>a&&t>d},t.noToggleMeridian=function(){return a.getHours()<13?b(a,720)>d:b(a,-720)<u},t.showMeridian=o.showMeridian,e.showMeridian&&t.$parent.$watch(n(e.showMeridian),function(e){if(t.showMeridian=!!e,s.$error.time){var n=h(),i=f();angular.isDefined(n)&&angular.isDefined(i)&&(a.setHours(n),m())}else y()}),this.setupMousewheelEvents=function(e,n){var i=function(t){t.originalEvent&&(t=t.originalEvent);var e=t.wheelDelta?t.wheelDelta:-t.deltaY;return t.detail||e>0};e.bind("mousewheel wheel",function(e){t.$apply(i(e)?t.incrementHours():t.decrementHours()),e.preventDefault()}),n.bind("mousewheel wheel",function(e){t.$apply(i(e)?t.incrementMinutes():t.decrementMinutes()),e.preventDefault()})},this.setupArrowkeyEvents=function(e,n){e.bind("keydown",function(e){38===e.which?(e.preventDefault(),t.incrementHours(),t.$apply()):40===e.which&&(e.preventDefault(),t.decrementHours(),t.$apply())}),n.bind("keydown",function(e){38===e.which?(e.preventDefault(),t.incrementMinutes(),t.$apply()):40===e.which&&(e.preventDefault(),t.decrementMinutes(),t.$apply())})},this.setupInputEvents=function(e,n){if(t.readonlyInput)return t.updateHours=angular.noop,void(t.updateMinutes=angular.noop);var i=function(e,n){s.$setViewValue(null),s.$setValidity("time",!1),angular.isDefined(e)&&(t.invalidHours=e),angular.isDefined(n)&&(t.invalidMinutes=n)};t.updateHours=function(){var t=h(),e=f();angular.isDefined(t)&&angular.isDefined(e)?(a.setHours(t),a<u||a>d?i(!0):m("h")):i(!0)},e.bind("blur",function(e){!t.invalidHours&&t.hours<10&&t.$apply(function(){t.hours=g(t.hours)})}),t.updateMinutes=function(){var t=f(),e=h();angular.isDefined(t)&&angular.isDefined(e)?(a.setMinutes(t),a<u||a>d?i(void 0,!0):m("m")):i(void 0,!0)},n.bind("blur",function(e){!t.invalidMinutes&&t.minutes<10&&t.$apply(function(){t.minutes=g(t.minutes)})})},this.render=function(){var e=s.$viewValue;isNaN(e)?(s.$setValidity("time",!1),i.error('Timepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.')):(e&&(a=e),a<u||a>d?(s.$setValidity("time",!1),t.invalidHours=!0,t.invalidMinutes=!0):v(),y())},t.showSpinners=angular.isDefined(e.showSpinners)?t.$parent.$eval(e.showSpinners):o.showSpinners,t.incrementHours=function(){t.noIncrementHours()||w(60*l)},t.decrementHours=function(){t.noDecrementHours()||w(60*-l)},t.incrementMinutes=function(){t.noIncrementMinutes()||w(p)},t.decrementMinutes=function(){t.noDecrementMinutes()||w(-p)},t.toggleMeridian=function(){t.noToggleMeridian()||w(720*(a.getHours()<12?1:-1))}}]).directive("timepicker",function(){return{restrict:"EA",require:["timepicker","?^ngModel"],controller:"TimepickerController",controllerAs:"timepicker",replace:!0,scope:{},templateUrl:function(t,e){return e.templateUrl||"template/timepicker/timepicker.html"},link:function(t,e,n,i){var r=i[0],o=i[1];o&&r.init(o,e.find("input"))}}}),angular.module("ui.bootstrap.transition",[]).value("$transitionSuppressDeprecated",!1).factory("$transition",["$q","$timeout","$rootScope","$log","$transitionSuppressDeprecated",function(t,e,n,i,r){r||i.warn("$transition is now deprecated. Use $animate from ngAnimate instead.");var o=function(i,r,a){a=a||{};var s=t.defer(),c=o[a.animation?"animationEndEventName":"transitionEndEventName"],l=function(t){n.$apply(function(){i.unbind(c,l),s.resolve(i)})};return c&&i.bind(c,l),e(function(){angular.isString(r)?i.addClass(r):angular.isFunction(r)?r(i):angular.isObject(r)&&i.css(r),c||s.resolve(i)}),s.promise.cancel=function(){c&&i.unbind(c,l),s.reject("Transition cancelled")},s.promise},a=document.createElement("trans");function s(t){for(var e in t)if(void 0!==a.style[e])return t[e]}return o.transitionEndEventName=s({WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd",transition:"transitionend"}),o.animationEndEventName=s({WebkitTransition:"webkitAnimationEnd",MozTransition:"animationend",OTransition:"oAnimationEnd",transition:"animationend"}),o}]),angular.module("ui.bootstrap.typeahead",["ui.bootstrap.position"]).factory("typeaheadParser",["$parse",function(t){var e=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?\s+for\s+(?:([\$\w][\$\w\d]*))\s+in\s+([\s\S]+?)$/;return{parse:function(n){var i=n.match(e);if(!i)throw new Error('Expected typeahead specification in form of "_modelValue_ (as _label_)? for _item_ in _collection_" but got "'+n+'".');return{itemName:i[3],source:t(i[4]),viewMapper:t(i[2]||i[1]),modelMapper:t(i[1])}}}}]).directive("typeahead",["$compile","$parse","$q","$timeout","$document","$window","$rootScope","$position","typeaheadParser",function(t,e,n,i,r,o,a,s,c){var l=[9,13,27,38,40];return{require:["ngModel","^?ngModelOptions"],link:function(u,d,p,h){var f=h[0],g=h[1],m=u.$eval(p.typeaheadMinLength);m||0===m||(m=1);var v,y,b=u.$eval(p.typeaheadWaitMs)||0,w=!1!==u.$eval(p.typeaheadEditable),S=e(p.typeaheadLoading).assign||angular.noop,x=e(p.typeaheadOnSelect),M=!!angular.isDefined(p.typeaheadSelectOnBlur)&&u.$eval(p.typeaheadSelectOnBlur),E=e(p.typeaheadNoResults).assign||angular.noop,C=p.typeaheadInputFormatter?e(p.typeaheadInputFormatter):void 0,A=!!p.typeaheadAppendToBody&&u.$eval(p.typeaheadAppendToBody),T=!1!==u.$eval(p.typeaheadFocusFirst),O=!!p.typeaheadSelectOnExact&&u.$eval(p.typeaheadSelectOnExact),_=e(p.ngModel),P=e(p.ngModel+"($$$p)"),I=c.parse(p.typeahead),k=u.$new(),D=u.$on("$destroy",function(){k.$destroy()});k.$on("$destroy",D);var R="typeahead-"+k.$id+"-"+Math.floor(1e4*Math.random());d.attr({"aria-autocomplete":"list","aria-expanded":!1,"aria-owns":R});var L=angular.element("<div typeahead-popup></div>");L.attr({id:R,matches:"matches",active:"activeIdx",select:"select(activeIdx)","move-in-progress":"moveInProgress",query:"query",position:"position"}),angular.isDefined(p.typeaheadTemplateUrl)&&L.attr("template-url",p.typeaheadTemplateUrl),angular.isDefined(p.typeaheadPopupTemplateUrl)&&L.attr("popup-template-url",p.typeaheadPopupTemplateUrl);var N=function(){k.matches=[],k.activeIdx=-1,d.attr("aria-expanded",!1)},j=function(t){return R+"-option-"+t};k.$watch("activeIdx",function(t){t<0?d.removeAttr("aria-activedescendant"):d.attr("aria-activedescendant",j(t))});var V,F,U=function(t){var e={$viewValue:t};S(u,!0),E(u,!1),n.when(I.source(u,e)).then(function(n){var i=t===f.$viewValue;if(i&&v)if(n&&n.length>0){k.activeIdx=T?0:-1,E(u,!1),k.matches.length=0;for(var r=0;r<n.length;r++)e[I.itemName]=n[r],k.matches.push({id:j(r),label:I.viewMapper(k,e),model:n[r]});k.query=t,z(),d.attr("aria-expanded",!0),O&&1===k.matches.length&&function(t,e){return!!(k.matches.length>0&&t)&&t.toUpperCase()===k.matches[0].label.toUpperCase()}(t)&&k.select(0)}else N(),E(u,!0);i&&S(u,!1)},function(){N(),S(u,!1),E(u,!0)})};function B(){k.moveInProgress||(k.moveInProgress=!0,k.$digest()),V&&i.cancel(V),V=i(function(){k.matches.length&&z(),k.moveInProgress=!1,k.$digest()},200)}function z(){k.position=A?s.offset(d):s.position(d),k.position.top+=d.prop("offsetHeight")}A&&(angular.element(o).bind("resize",B),r.find("body").bind("scroll",B)),k.moveInProgress=!1,N(),k.query=void 0;var G=function(){F&&i.cancel(F)};f.$parsers.unshift(function(t){return v=!0,0===m||t&&t.length>=m?b>0?(G(),function(t){F=i(function(){U(t)},b)}(t)):U(t):(S(u,!1),G(),N()),w?t:t?void f.$setValidity("editable",!1):(f.$setValidity("editable",!0),null)}),f.$formatters.push(function(t){var e,n={};return w||f.$setValidity("editable",!0),C?(n.$model=t,C(u,n)):(n[I.itemName]=t,e=I.viewMapper(u,n),n[I.itemName]=void 0,e!==I.viewMapper(u,n)?e:t)}),k.select=function(t){var e,n,r={};y=!0,r[I.itemName]=n=k.matches[t].model,e=I.modelMapper(u,r),function(t,e){angular.isFunction(_(u))&&g&&g.$options&&g.$options.getterSetter?P(t,{$$$p:e}):_.assign(t,e)}(u,e),f.$setValidity("editable",!0),f.$setValidity("parse",!0),x(u,{$item:n,$model:e,$label:I.viewMapper(u,r)}),N(),!1!==k.$eval(p.typeaheadFocusOnSelect)&&i(function(){d[0].focus()},0,!1)},d.bind("keydown",function(t){if(0!==k.matches.length&&-1!==l.indexOf(t.which)){if(-1===k.activeIdx&&(9===t.which||13===t.which))return N(),void k.$digest();t.preventDefault(),40===t.which?(k.activeIdx=(k.activeIdx+1)%k.matches.length,k.$digest()):38===t.which?(k.activeIdx=(k.activeIdx>0?k.activeIdx:k.matches.length)-1,k.$digest()):13===t.which||9===t.which?k.$apply(function(){k.select(k.activeIdx)}):27===t.which&&(t.stopPropagation(),N(),k.$digest())}}),d.bind("blur",function(){M&&k.matches.length&&-1!==k.activeIdx&&!y&&(y=!0,k.$apply(function(){k.select(k.activeIdx)})),v=!1,y=!1});var H=function(t){d[0]!==t.target&&3!==t.which&&0!==k.matches.length&&(N(),a.$$phase||k.$digest())};r.bind("click",H),u.$on("$destroy",function(){r.unbind("click",H),A&&W.remove(),L.remove()});var W=t(L)(k);A?r.find("body").append(W):d.after(W)}}}]).directive("typeaheadPopup",function(){return{restrict:"EA",scope:{matches:"=",query:"=",active:"=",position:"&",moveInProgress:"=",select:"&"},replace:!0,templateUrl:function(t,e){return e.popupTemplateUrl||"template/typeahead/typeahead-popup.html"},link:function(t,e,n){t.templateUrl=n.templateUrl,t.isOpen=function(){return t.matches.length>0},t.isActive=function(e){return t.active==e},t.selectActive=function(e){t.active=e},t.selectMatch=function(e){t.select({activeIdx:e})}}}}).directive("typeaheadMatch",["$templateRequest","$compile","$parse",function(t,e,n){return{restrict:"EA",scope:{index:"=",match:"=",query:"="},link:function(i,r,o){var a=n(o.templateUrl)(i.$parent)||"template/typeahead/typeahead-match.html";t(a).then(function(t){e(t.trim())(i,function(t){r.replaceWith(t)})})}}}]).filter("typeaheadHighlight",["$sce","$injector","$log",function(t,e,n){var i;return i=e.has("$sanitize"),function(e,r){return!i&&/<.*>/g.test(e)&&n.warn("Unsafe use of typeahead please use ngSanitize"),e=r?(""+e).replace(new RegExp(r.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1"),"gi"),"<strong>$&</strong>"):e,i||(e=t.trustAsHtml(e)),e}}]),angular.module("template/accordion/accordion-group.html",[]).run(["$templateCache",function(t){t.put("template/accordion/accordion-group.html",'<div class="panel {{panelClass || \'panel-default\'}}">\n <div class="panel-heading" ng-keypress="toggleOpen($event)">\n <h4 class="panel-title">\n <a href tabindex="0" class="accordion-toggle" ng-click="toggleOpen()" accordion-transclude="heading"><span ng-class="{\'text-muted\': isDisabled}">{{heading}}</span></a>\n </h4>\n </div>\n <div class="panel-collapse collapse" collapse="!isOpen">\n\t <div class="panel-body" ng-transclude></div>\n </div>\n</div>\n')}]),angular.module("template/accordion/accordion.html",[]).run(["$templateCache",function(t){t.put("template/accordion/accordion.html",'<div class="panel-group" ng-transclude></div>')}]),angular.module("template/alert/alert.html",[]).run(["$templateCache",function(t){t.put("template/alert/alert.html",'<div class="alert" ng-class="[\'alert-\' + (type || \'warning\'), closeable ? \'alert-dismissible\' : null]" role="alert">\n <button ng-show="closeable" type="button" class="close" ng-click="close($event)">\n <span aria-hidden="true">&times;</span>\n <span class="sr-only">Close</span>\n </button>\n <div ng-transclude></div>\n</div>\n')}]),angular.module("template/carousel/carousel.html",[]).run(["$templateCache",function(t){t.put("template/carousel/carousel.html",'<div ng-mouseenter="pause()" ng-mouseleave="play()" class="carousel" ng-swipe-right="prev()" ng-swipe-left="next()">\n <ol class="carousel-indicators" ng-show="slides.length > 1">\n <li ng-repeat="slide in slides | orderBy:indexOfSlide track by $index" ng-class="{active: isActive(slide)}" ng-click="select(slide)"></li>\n </ol>\n <div class="carousel-inner" ng-transclude></div>\n <a class="left carousel-control" ng-click="prev()" ng-show="slides.length > 1"><span class="glyphicon glyphicon-chevron-left"></span></a>\n <a class="right carousel-control" ng-click="next()" ng-show="slides.length > 1"><span class="glyphicon glyphicon-chevron-right"></span></a>\n</div>\n')}]),angular.module("template/carousel/slide.html",[]).run(["$templateCache",function(t){t.put("template/carousel/slide.html",'<div ng-class="{\n \'active\': active\n }" class="item text-center" ng-transclude></div>\n')}]),angular.module("template/datepicker/datepicker.html",[]).run(["$templateCache",function(t){t.put("template/datepicker/datepicker.html",'<div ng-switch="datepickerMode" role="application" ng-keydown="keydown($event)">\n <daypicker ng-switch-when="day" tabindex="0"></daypicker>\n <monthpicker ng-switch-when="month" tabindex="0"></monthpicker>\n <yearpicker ng-switch-when="year" tabindex="0"></yearpicker>\n</div>')}]),angular.module("template/datepicker/day.html",[]).run(["$templateCache",function(t){t.put("template/datepicker/day.html",'<table role="grid" aria-labelledby="{{::uniqueId}}-title" aria-activedescendant="{{activeDateId}}">\n <thead>\n <tr>\n <th><button type="button" class="btn btn-default btn-sm pull-left" ng-click="move(-1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-left"></i></button></th>\n <th colspan="{{::5 + showWeeks}}"><button id="{{::uniqueId}}-title" role="heading" aria-live="assertive" aria-atomic="true" type="button" class="btn btn-default btn-sm" ng-click="toggleMode()" ng-disabled="datepickerMode === maxMode" tabindex="-1" style="width:100%;"><strong>{{title}}</strong></button></th>\n <th><button type="button" class="btn btn-default btn-sm pull-right" ng-click="move(1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-right"></i></button></th>\n </tr>\n <tr>\n <th ng-if="showWeeks" class="text-center"></th>\n <th ng-repeat="label in ::labels track by $index" class="text-center"><small aria-label="{{::label.full}}">{{::label.abbr}}</small></th>\n </tr>\n </thead>\n <tbody>\n <tr ng-repeat="row in rows track by $index">\n <td ng-if="showWeeks" class="text-center h6"><em>{{ weekNumbers[$index] }}</em></td>\n <td ng-repeat="dt in row track by dt.date" class="text-center" role="gridcell" id="{{::dt.uid}}" ng-class="::dt.customClass">\n <button type="button" style="min-width:100%;" class="btn btn-default btn-sm" ng-class="{\'btn-info\': dt.selected, active: isActive(dt)}" ng-click="select(dt.date)" ng-disabled="dt.disabled" tabindex="-1"><span ng-class="::{\'text-muted\': dt.secondary, \'text-info\': dt.current}">{{::dt.label}}</span></button>\n </td>\n </tr>\n </tbody>\n</table>\n')}]),angular.module("template/datepicker/month.html",[]).run(["$templateCache",function(t){t.put("template/datepicker/month.html",'<table role="grid" aria-labelledby="{{::uniqueId}}-title" aria-activedescendant="{{activeDateId}}">\n <thead>\n <tr>\n <th><button type="button" class="btn btn-default btn-sm pull-left" ng-click="move(-1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-left"></i></button></th>\n <th><button id="{{::uniqueId}}-title" role="heading" aria-live="assertive" aria-atomic="true" type="button" class="btn btn-default btn-sm" ng-click="toggleMode()" ng-disabled="datepickerMode === maxMode" tabindex="-1" style="width:100%;"><strong>{{title}}</strong></button></th>\n <th><button type="button" class="btn btn-default btn-sm pull-right" ng-click="move(1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-right"></i></button></th>\n </tr>\n </thead>\n <tbody>\n <tr ng-repeat="row in rows track by $index">\n <td ng-repeat="dt in row track by dt.date" class="text-center" role="gridcell" id="{{::dt.uid}}" ng-class="::dt.customClass">\n <button type="button" style="min-width:100%;" class="btn btn-default" ng-class="{\'btn-info\': dt.selected, active: isActive(dt)}" ng-click="select(dt.date)" ng-disabled="dt.disabled" tabindex="-1"><span ng-class="::{\'text-info\': dt.current}">{{::dt.label}}</span></button>\n </td>\n </tr>\n </tbody>\n</table>\n')}]),angular.module("template/datepicker/popup.html",[]).run(["$templateCache",function(t){t.put("template/datepicker/popup.html",'<ul class="dropdown-menu" ng-if="isOpen" style="display: block" ng-style="{top: position.top+\'px\', left: position.left+\'px\'}" ng-keydown="keydown($event)" ng-click="$event.stopPropagation()">\n\t<li ng-transclude></li>\n\t<li ng-if="showButtonBar" style="padding:10px 9px 2px">\n\t\t<span class="btn-group pull-left">\n\t\t\t<button type="button" class="btn btn-sm btn-info" ng-click="select(\'today\')" ng-disabled="isDisabled(\'today\')">{{ getText(\'current\') }}</button>\n\t\t\t<button type="button" class="btn btn-sm btn-danger" ng-click="select(null)">{{ getText(\'clear\') }}</button>\n\t\t</span>\n\t\t<button type="button" class="btn btn-sm btn-success pull-right" ng-click="close()">{{ getText(\'close\') }}</button>\n\t</li>\n</ul>\n')}]),angular.module("template/datepicker/year.html",[]).run(["$templateCache",function(t){t.put("template/datepicker/year.html",'<table role="grid" aria-labelledby="{{::uniqueId}}-title" aria-activedescendant="{{activeDateId}}">\n <thead>\n <tr>\n <th><button type="button" class="btn btn-default btn-sm pull-left" ng-click="move(-1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-left"></i></button></th>\n <th colspan="3"><button id="{{::uniqueId}}-title" role="heading" aria-live="assertive" aria-atomic="true" type="button" class="btn btn-default btn-sm" ng-click="toggleMode()" ng-disabled="datepickerMode === maxMode" tabindex="-1" style="width:100%;"><strong>{{title}}</strong></button></th>\n <th><button type="button" class="btn btn-default btn-sm pull-right" ng-click="move(1)" tabindex="-1"><i class="glyphicon glyphicon-chevron-right"></i></button></th>\n </tr>\n </thead>\n <tbody>\n <tr ng-repeat="row in rows track by $index">\n <td ng-repeat="dt in row track by dt.date" class="text-center" role="gridcell" id="{{::dt.uid}}">\n <button type="button" style="min-width:100%;" class="btn btn-default" ng-class="{\'btn-info\': dt.selected, active: isActive(dt)}" ng-click="select(dt.date)" ng-disabled="dt.disabled" tabindex="-1"><span ng-class="::{\'text-info\': dt.current}">{{::dt.label}}</span></button>\n </td>\n </tr>\n </tbody>\n</table>\n')}]),angular.module("template/modal/backdrop.html",[]).run(["$templateCache",function(t){t.put("template/modal/backdrop.html",'<div class="modal-backdrop"\n modal-animation-class="fade"\n modal-in-class="in"\n ng-style="{\'z-index\': 1040 + (index && 1 || 0) + index*10}"\n></div>\n')}]),angular.module("template/modal/window.html",[]).run(["$templateCache",function(t){t.put("template/modal/window.html",'<div modal-render="{{$isRendered}}" tabindex="-1" role="dialog" class="modal"\n modal-animation-class="fade"\n modal-in-class="in"\n\tng-style="{\'z-index\': 1050 + index*10, display: \'block\'}" ng-click="close($event)">\n <div class="modal-dialog" ng-class="size ? \'modal-\' + size : \'\'"><div class="modal-content" modal-transclude></div></div>\n</div>\n')}]),angular.module("template/pagination/pager.html",[]).run(["$templateCache",function(t){t.put("template/pagination/pager.html",'<ul class="pager">\n <li ng-class="{disabled: noPrevious()||ngDisabled, previous: align}"><a href ng-click="selectPage(page - 1, $event)">{{::getText(\'previous\')}}</a></li>\n <li ng-class="{disabled: noNext()||ngDisabled, next: align}"><a href ng-click="selectPage(page + 1, $event)">{{::getText(\'next\')}}</a></li>\n</ul>\n')}]),angular.module("template/pagination/pagination.html",[]).run(["$templateCache",function(t){t.put("template/pagination/pagination.html",'<ul class="pagination">\n <li ng-if="::boundaryLinks" ng-class="{disabled: noPrevious()||ngDisabled}" class="pagination-first"><a href ng-click="selectPage(1, $event)">{{::getText(\'first\')}}</a></li>\n <li ng-if="::directionLinks" ng-class="{disabled: noPrevious()||ngDisabled}" class="pagination-prev"><a href ng-click="selectPage(page - 1, $event)">{{::getText(\'previous\')}}</a></li>\n <li ng-repeat="page in pages track by $index" ng-class="{active: page.active,disabled: ngDisabled&&!page.active}" class="pagination-page"><a href ng-click="selectPage(page.number, $event)">{{page.text}}</a></li>\n <li ng-if="::directionLinks" ng-class="{disabled: noNext()||ngDisabled}" class="pagination-next"><a href ng-click="selectPage(page + 1, $event)">{{::getText(\'next\')}}</a></li>\n <li ng-if="::boundaryLinks" ng-class="{disabled: noNext()||ngDisabled}" class="pagination-last"><a href ng-click="selectPage(totalPages, $event)">{{::getText(\'last\')}}</a></li>\n</ul>\n')}]),angular.module("template/tooltip/tooltip-html-popup.html",[]).run(["$templateCache",function(t){t.put("template/tooltip/tooltip-html-popup.html",'<div class="tooltip"\n tooltip-animation-class="fade"\n tooltip-classes\n ng-class="{ in: isOpen() }">\n <div class="tooltip-arrow"></div>\n <div class="tooltip-inner" ng-bind-html="contentExp()"></div>\n</div>\n')}]),angular.module("template/tooltip/tooltip-html-unsafe-popup.html",[]).run(["$templateCache",function(t){t.put("template/tooltip/tooltip-html-unsafe-popup.html",'<div class="tooltip"\n tooltip-animation-class="fade"\n tooltip-classes\n ng-class="{ in: isOpen() }">\n <div class="tooltip-arrow"></div>\n <div class="tooltip-inner" bind-html-unsafe="content"></div>\n</div>\n')}]),angular.module("template/tooltip/tooltip-popup.html",[]).run(["$templateCache",function(t){t.put("template/tooltip/tooltip-popup.html",'<div class="tooltip"\n tooltip-animation-class="fade"\n tooltip-classes\n ng-class="{ in: isOpen() }">\n <div class="tooltip-arrow"></div>\n <div class="tooltip-inner" ng-bind="content"></div>\n</div>\n')}]),angular.module("template/tooltip/tooltip-template-popup.html",[]).run(["$templateCache",function(t){t.put("template/tooltip/tooltip-template-popup.html",'<div class="tooltip"\n tooltip-animation-class="fade"\n tooltip-classes\n ng-class="{ in: isOpen() }">\n <div class="tooltip-arrow"></div>\n <div class="tooltip-inner"\n tooltip-template-transclude="contentExp()"\n tooltip-template-transclude-scope="originScope()"></div>\n</div>\n')}]),angular.module("template/popover/popover-html.html",[]).run(["$templateCache",function(t){t.put("template/popover/popover-html.html",'<div class="popover"\n tooltip-animation-class="fade"\n tooltip-classes\n ng-class="{ in: isOpen() }">\n <div class="arrow"></div>\n\n <div class="popover-inner">\n <h3 class="popover-title" ng-bind="title" ng-if="title"></h3>\n <div class="popover-content" ng-bind-html="contentExp()"></div>\n </div>\n</div>\n')}]),angular.module("template/popover/popover-template.html",[]).run(["$templateCache",function(t){t.put("template/popover/popover-template.html",'<div class="popover"\n tooltip-animation-class="fade"\n tooltip-classes\n ng-class="{ in: isOpen() }">\n <div class="arrow"></div>\n\n <div class="popover-inner">\n <h3 class="popover-title" ng-bind="title" ng-if="title"></h3>\n <div class="popover-content"\n tooltip-template-transclude="contentExp()"\n tooltip-template-transclude-scope="originScope()"></div>\n </div>\n</div>\n')}]),angular.module("template/popover/popover.html",[]).run(["$templateCache",function(t){t.put("template/popover/popover.html",'<div class="popover"\n tooltip-animation-class="fade"\n tooltip-classes\n ng-class="{ in: isOpen() }">\n <div class="arrow"></div>\n\n <div class="popover-inner">\n <h3 class="popover-title" ng-bind="title" ng-if="title"></h3>\n <div class="popover-content" ng-bind="content"></div>\n </div>\n</div>\n')}]),angular.module("template/progressbar/bar.html",[]).run(["$templateCache",function(t){t.put("template/progressbar/bar.html",'<div class="progress-bar" ng-class="type && \'progress-bar-\' + type" role="progressbar" aria-valuenow="{{value}}" aria-valuemin="0" aria-valuemax="{{max}}" ng-style="{width: (percent < 100 ? percent : 100) + \'%\'}" aria-valuetext="{{percent | number:0}}%" style="min-width: 0;" ng-transclude></div>\n')}]),angular.module("template/progressbar/progress.html",[]).run(["$templateCache",function(t){t.put("template/progressbar/progress.html",'<div class="progress" ng-transclude></div>')}]),angular.module("template/progressbar/progressbar.html",[]).run(["$templateCache",function(t){t.put("template/progressbar/progressbar.html",'<div class="progress">\n <div class="progress-bar" ng-class="type && \'progress-bar-\' + type" role="progressbar" aria-valuenow="{{value}}" aria-valuemin="0" aria-valuemax="{{max}}" ng-style="{width: (percent < 100 ? percent : 100) + \'%\'}" aria-valuetext="{{percent | number:0}}%" style="min-width: 0;" ng-transclude></div>\n</div>\n')}]),angular.module("template/rating/rating.html",[]).run(["$templateCache",function(t){t.put("template/rating/rating.html",'<span ng-mouseleave="reset()" ng-keydown="onKeydown($event)" tabindex="0" role="slider" aria-valuemin="0" aria-valuemax="{{range.length}}" aria-valuenow="{{value}}">\n <span ng-repeat-start="r in range track by $index" class="sr-only">({{ $index < value ? \'*\' : \' \' }})</span>\n <i ng-repeat-end ng-mouseenter="enter($index + 1)" ng-click="rate($index + 1)" class="glyphicon" ng-class="$index < value && (r.stateOn || \'glyphicon-star\') || (r.stateOff || \'glyphicon-star-empty\')" ng-attr-title="{{r.title}}" ></i>\n</span>\n')}]),angular.module("template/tabs/tab.html",[]).run(["$templateCache",function(t){t.put("template/tabs/tab.html",'<li ng-class="{active: active, disabled: disabled}">\n <a href ng-click="select()" tab-heading-transclude>{{heading}}</a>\n</li>\n')}]),angular.module("template/tabs/tabset.html",[]).run(["$templateCache",function(t){t.put("template/tabs/tabset.html",'<div>\n <ul class="nav nav-{{type || \'tabs\'}}" ng-class="{\'nav-stacked\': vertical, \'nav-justified\': justified}" ng-transclude></ul>\n <div class="tab-content">\n <div class="tab-pane" \n ng-repeat="tab in tabs" \n ng-class="{active: tab.active}"\n tab-content-transclude="tab">\n </div>\n </div>\n</div>\n')}]),angular.module("template/timepicker/timepicker.html",[]).run(["$templateCache",function(t){t.put("template/timepicker/timepicker.html",'<table>\n <tbody>\n <tr class="text-center" ng-show="::showSpinners">\n <td><a ng-click="incrementHours()" ng-class="{disabled: noIncrementHours()}" class="btn btn-link"><span class="glyphicon glyphicon-chevron-up"></span></a></td>\n <td>&nbsp;</td>\n <td><a ng-click="incrementMinutes()" ng-class="{disabled: noIncrementMinutes()}" class="btn btn-link"><span class="glyphicon glyphicon-chevron-up"></span></a></td>\n <td ng-show="showMeridian"></td>\n </tr>\n <tr>\n <td class="form-group" ng-class="{\'has-error\': invalidHours}">\n <input style="width:50px;" type="text" ng-model="hours" ng-change="updateHours()" class="form-control text-center" ng-readonly="::readonlyInput" maxlength="2">\n </td>\n <td>:</td>\n <td class="form-group" ng-class="{\'has-error\': invalidMinutes}">\n <input style="width:50px;" type="text" ng-model="minutes" ng-change="updateMinutes()" class="form-control text-center" ng-readonly="::readonlyInput" maxlength="2">\n </td>\n <td ng-show="showMeridian"><button type="button" ng-class="{disabled: noToggleMeridian()}" class="btn btn-default text-center" ng-click="toggleMeridian()">{{meridian}}</button></td>\n </tr>\n <tr class="text-center" ng-show="::showSpinners">\n <td><a ng-click="decrementHours()" ng-class="{disabled: noDecrementHours()}" class="btn btn-link"><span class="glyphicon glyphicon-chevron-down"></span></a></td>\n <td>&nbsp;</td>\n <td><a ng-click="decrementMinutes()" ng-class="{disabled: noDecrementMinutes()}" class="btn btn-link"><span class="glyphicon glyphicon-chevron-down"></span></a></td>\n <td ng-show="showMeridian"></td>\n </tr>\n </tbody>\n</table>\n')}]),angular.module("template/typeahead/typeahead-match.html",[]).run(["$templateCache",function(t){t.put("template/typeahead/typeahead-match.html",'<a href tabindex="-1" ng-bind-html="match.label | typeaheadHighlight:query"></a>\n')}]),angular.module("template/typeahead/typeahead-popup.html",[]).run(["$templateCache",function(t){t.put("template/typeahead/typeahead-popup.html",'<ul class="dropdown-menu" ng-show="isOpen() && !moveInProgress" ng-style="{top: position().top+\'px\', left: position().left+\'px\'}" style="display: block;" role="listbox" aria-hidden="{{!isOpen()}}">\n <li ng-repeat="match in matches track by $index" ng-class="{active: isActive($index) }" ng-mouseenter="selectActive($index)" ng-click="selectMatch($index)" role="option" id="{{::match.id}}">\n <div typeahead-match index="$index" match="match" query="query" template-url="templateUrl"></div>\n </li>\n</ul>\n')}]),!angular.$$csp()&&angular.element(document).find("head").prepend('<style type="text/css">.ng-animate.item:not(.left):not(.right){-webkit-transition:0s ease-in-out left;transition:0s ease-in-out left}</style>')},function(t,e,n){n(933),t.exports="gettext"},function(t,e){angular.module("gettext",[]),angular.module("gettext").constant("gettext",function(t){return t}),angular.module("gettext").factory("gettextCatalog",["gettextPlurals","gettextFallbackLanguage","$http","$cacheFactory","$interpolate","$rootScope",function(t,e,n,i,r,o){var a,s='<span id="test" title="test" class="tested">test</span>',c=angular.element("<span>"+s+"</span>").html()!==s,l=function(t){return a.debug&&a.currentLanguage!==a.baseLanguage?a.debugPrefix+t:t},u=function(t){return a.showTranslatedMarkers?a.translatedMarkerPrefix+t+a.translatedMarkerSuffix:t};function d(){o.$broadcast("gettextLanguageChanged")}return a={debug:!1,debugPrefix:"[MISSING]: ",showTranslatedMarkers:!1,translatedMarkerPrefix:"[",translatedMarkerSuffix:"]",strings:{},baseLanguage:"en",currentLanguage:"en",cache:i("strings"),setCurrentLanguage:function(t){this.currentLanguage=t,d()},getCurrentLanguage:function(){return this.currentLanguage},setStrings:function(e,n){this.strings[e]||(this.strings[e]={});var i=t(e,1);for(var r in n){var o=n[r];if(c&&(r=angular.element("<span>"+r+"</span>").html()),angular.isString(o)||angular.isArray(o)){var a={};a.$$noContext=o,o=a}for(var s in this.strings[e][r]||(this.strings[e][r]={}),o){var l=o[s];angular.isArray(l)?this.strings[e][r][s]=l:(this.strings[e][r][s]=[],this.strings[e][r][s][i]=l)}}d()},getStringFormFor:function(e,n,i,r){return e?(((this.strings[e]||{})[n]||{})[r||"$$noContext"]||[])[t(e,i)]:null},getString:function(t,n,i){var o=e(this.currentLanguage);return t=this.getStringFormFor(this.currentLanguage,t,1,i)||this.getStringFormFor(o,t,1,i)||l(t),t=n?r(t)(n):t,u(t)},getPlural:function(t,n,i,o,a){var s=e(this.currentLanguage);return n=this.getStringFormFor(this.currentLanguage,n,t,a)||this.getStringFormFor(s,n,t,a)||l(1===t?n:i),o&&(o.$count=t,n=r(n)(o)),u(n)},loadRemote:function(t){return n({method:"GET",url:t,cache:a.cache}).then(function(t){var e=t.data;for(var n in e)a.setStrings(n,e[n]);return t})}}}]),angular.module("gettext").directive("translate",["gettextCatalog","$parse","$animate","$compile","$interpolate","$window","gettextUtil",function(t,e,n,i,r,o,a){var s=parseInt((/msie (\d+)/i.exec(o.navigator.userAgent)||[])[1],10);return{restrict:"AE",terminal:!0,compile:function(o,c){a.assert(!c.translatePlural||c.translateN,"translate-n","translate-plural"),a.assert(!c.translateN||c.translatePlural,"translate-plural","translate-n");var l=[],u=a.trim(o.html()),d=c.translatePlural,p=c.translateContext;return s<=8&&"\x3c!--IE fix--\x3e"===u.slice(-13)&&(u=u.slice(0,-13)),{post:function(o,s,c){var h=e(c.translateN),f=null,g=!0;function m(e){var c;e=e||null,d?((o=f||(f=o.$new())).$count=h(o),c=t.getPlural(o.$count,u,d,null,p)):c=t.getString(u,null,p);var m=s.contents();if(m||c)if(c!==a.trim(m.html())){var v=new RegExp(/\{\{\s*(.*?)?\s*\}\}/g);c=c.replace(v,function(t,n){return l.indexOf(n)>=0?r("{{ "+n+" }}")(e):t});var y=angular.element("<span>"+c+"</span>");i(y.contents())(e||o);var b=y.contents();n.enter(b,s),n.leave(m)}else g&&i(m)(o)}var v=function(t,e,n,i){var r=Object.keys(e).filter(function(t){return a.startsWith(t,"translateParams")&&"translateParams"!==t}),o=Object.keys(e).filter(function(t){return a.startsWith(t,"translateHtmlParams")&&"translateHtmlParams"!==t});if(i.length=0,!r.length&&!o.length)return null;var s=t.$new(),c=[];return r.forEach(function(i){var r=t.$watch(e[i],function(t){var e=function(t){return a.lcFirst(t.replace("translateParams",""))}(i);s[e]=t,n(s)});c.push(r)}),o.forEach(function(r){var o=t.$watch(e[r],function(t){var e=function(t){return a.lcFirst(t.replace("translateHtmlParams",""))}(r);s[e]=t,i.push(e),n(s)});c.push(o)}),t.$on("$destroy",function(){c.forEach(function(t){t()}),s.$destroy()}),s}(o,c,m,l);m(v),g=!1,c.translateN&&o.$watch(c.translateN,function(){m(v)}),o.$on("gettextLanguageChanged",function(){m(v)})}}}}}]),angular.module("gettext").factory("gettextFallbackLanguage",function(){var t={},e=/([^_]+)_[^_]+$/;return function(n){if(t[n])return t[n];var i=e.exec(n);return i?(t[n]=i[1],i[1]):null}}),angular.module("gettext").filter("translate",["gettextCatalog",function(t){function e(e,n){return t.getString(e,null,n)}return e.$stateful=!0,e}]),angular.module("gettext").factory("gettextPlurals",function(){var t={pt_BR:"pt_BR","pt-BR":"pt_BR"};return function(e,n){switch(function(e){return t[e]||(t[e]=e.split(/\-|_/).shift()),t[e]}(e)){case"ay":case"bo":case"cgg":case"dz":case"fa":case"id":case"ja":case"jbo":case"ka":case"kk":case"km":case"ko":case"ky":case"lo":case"ms":case"my":case"sah":case"su":case"th":case"tt":case"ug":case"vi":case"wo":case"zh":return 0;case"is":return n%10!=1||n%100==11?1:0;case"jv":return 0!=n?1:0;case"mk":return 1==n||n%10==1?0:1;case"ach":case"ak":case"am":case"arn":case"br":case"fil":case"fr":case"gun":case"ln":case"mfe":case"mg":case"mi":case"oc":case"pt_BR":case"tg":case"ti":case"tr":case"uz":case"wa":case"zh":return n>1?1:0;case"lv":return n%10==1&&n%100!=11?0:0!=n?1:2;case"lt":return n%10==1&&n%100!=11?0:n%10>=2&&(n%100<10||n%100>=20)?1:2;case"be":case"bs":case"hr":case"ru":case"sr":case"uk":return n%10==1&&n%100!=11?0:n%10>=2&&n%10<=4&&(n%100<10||n%100>=20)?1:2;case"mnk":return 0==n?0:1==n?1:2;case"ro":return 1==n?0:0==n||n%100>0&&n%100<20?1:2;case"pl":return 1==n?0:n%10>=2&&n%10<=4&&(n%100<10||n%100>=20)?1:2;case"cs":case"sk":return 1==n?0:n>=2&&n<=4?1:2;case"sl":return n%100==1?1:n%100==2?2:n%100==3||n%100==4?3:0;case"mt":return 1==n?0:0==n||n%100>1&&n%100<11?1:n%100>10&&n%100<20?2:3;case"gd":return 1==n||11==n?0:2==n||12==n?1:n>2&&n<20?2:3;case"cy":return 1==n?0:2==n?1:8!=n&&11!=n?2:3;case"kw":return 1==n?0:2==n?1:3==n?2:3;case"ga":return 1==n?0:2==n?1:n<7?2:n<11?3:4;case"ar":return 0==n?0:1==n?1:2==n?2:n%100>=3&&n%100<=10?3:n%100>=11?4:5;default:return 1!=n?1:0}}}),angular.module("gettext").factory("gettextUtil",function(){return{trim:String.prototype.trim?function(t){return"string"==typeof t?t.trim():t}:function(t){return"string"==typeof t?t.replace(/^\s*/,"").replace(/\s*$/,""):t},assert:function(t,e,n){if(!t)throw new Error("You should add a "+e+" attribute whenever you add a "+n+" attribute.")},startsWith:function(t,e){return 0===t.indexOf(e)},lcFirst:function(t){return t.charAt(0).toLowerCase()+t.substr(1)}}})},function(t,e,n){var i;
  2345. /*!
  2346. * angular-hotkeys v1.7.0
  2347. * https://chieffancypants.github.io/angular-hotkeys
  2348. * Copyright (c) 2016 Wes Cruver
  2349. * License: MIT
  2350. */!function(){"use strict";angular.module("cfp.hotkeys",[]).provider("hotkeys",["$injector",function(t){this.includeCheatSheet=!0,this.useNgRoute=t.has("ngViewDirective"),this.templateTitle="Keyboard Shortcuts:",this.templateHeader=null,this.templateFooter=null,this.template='<div class="cfp-hotkeys-container fade" ng-class="{in: helpVisible}" style="display: none;"><div class="cfp-hotkeys"><h4 class="cfp-hotkeys-title" ng-if="!header">{{ title }}</h4><div ng-bind-html="header" ng-if="header"></div><table><tbody><tr ng-repeat="hotkey in hotkeys | filter:{ description: \'!$$undefined$$\' }"><td class="cfp-hotkeys-keys"><span ng-repeat="key in hotkey.format() track by $index" class="cfp-hotkeys-key">{{ key }}</span></td><td class="cfp-hotkeys-text">{{ hotkey.description }}</td></tr></tbody></table><div ng-bind-html="footer" ng-if="footer"></div><div class="cfp-hotkeys-close" ng-click="toggleCheatSheet()">&#215;</div></div></div>',this.cheatSheetHotkey="?",this.cheatSheetDescription="Show / hide this help menu",this.$get=["$rootElement","$rootScope","$compile","$window","$document",function(t,e,n,i,r){var o=!0;function a(t){var e={command:"⌘",shift:"⇧",left:"←",right:"→",up:"↑",down:"↓",return:"⏎",backspace:"⌫"};t=t.split("+");for(var n=0;n<t.length;n++)"mod"===t[n]&&(i.navigator&&i.navigator.platform.indexOf("Mac")>=0?t[n]="command":t[n]="ctrl"),t[n]=e[t[n]]||t[n];return t.join(" + ")}function s(t,e,n,i,r,o){this.combo=t instanceof Array?t:[t],this.description=e,this.callback=n,this.action=i,this.allowIn=r,this.persistent=o,this._formated=null}Mousetrap.prototype.stopCallback=function(t,e){return!o||!((" "+e.className+" ").indexOf(" mousetrap ")>-1)&&e.contentEditable&&"true"==e.contentEditable},s.prototype.format=function(){if(null===this._formated){for(var t=this.combo[0].split(/[\s]/),e=0;e<t.length;e++)t[e]=a(t[e]);this._formated=t}return this._formated};var c=e.$new();c.hotkeys=[],c.helpVisible=!1,c.title=this.templateTitle,c.header=this.templateHeader,c.footer=this.templateFooter,c.toggleCheatSheet=g;var l={};if(this.useNgRoute&&e.$on("$routeChangeSuccess",function(t,e){h(),e&&e.hotkeys&&angular.forEach(e.hotkeys,function(t){var n=t[2];("string"==typeof n||n instanceof String)&&(t[2]=[n,e]),t[5]=!1,m.apply(this,t)})}),this.includeCheatSheet){var u=r[0],d=t[0],p=angular.element(this.template);m(this.cheatSheetHotkey,this.cheatSheetDescription,g),d!==u&&d!==u.documentElement||(d=u.body),angular.element(d).append(n(p)(c))}function h(){for(var t=c.hotkeys.length;t--;){var e=c.hotkeys[t];e&&!e.persistent&&v(e)}}var f=!1;function g(){c.helpVisible=!c.helpVisible,c.helpVisible?(f=y("esc"),v("esc"),m("esc",f.description,g,null,["INPUT","SELECT","TEXTAREA"])):(v("esc"),!1!==f&&m(f))}function m(t,e,n,i,r,o){var a,l=["INPUT","SELECT","TEXTAREA"];if("[object Object]"===Object.prototype.toString.call(t)&&(e=t.description,n=t.callback,i=t.action,o=t.persistent,r=t.allowIn,t=t.combo),v(t),e instanceof Function?(i=n,n=e,e="$$undefined$$"):angular.isUndefined(e)&&(e="$$undefined$$"),void 0===o&&(o=!0),"function"==typeof n){var u;a=n,r instanceof Array||(r=[]);for(var d=0;d<r.length;d++)r[d]=r[d].toUpperCase(),-1!==(u=l.indexOf(r[d]))&&l.splice(u,1);n=function(t){var e=!0;if(t){var n=t.target||t.srcElement,i=n.nodeName.toUpperCase();if((" "+n.className+" ").indexOf(" mousetrap ")>-1)e=!0;else for(var r=0;r<l.length;r++)if(l[r]===i){e=!1;break}}e&&b(a.apply(this,arguments))}}"string"==typeof i?Mousetrap.bind(t,b(n),i):Mousetrap.bind(t,b(n));var p=new s(t,e,n,i,r,o);return c.hotkeys.push(p),p}function v(t){var e=t instanceof s?t.combo:t;if(Mousetrap.unbind(e),angular.isArray(e)){for(var n=!0,i=e.length;i--;)n=v(e[i])&&n;return n}var r=c.hotkeys.indexOf(y(e));return r>-1&&(c.hotkeys[r].combo.length>1?c.hotkeys[r].combo.splice(c.hotkeys[r].combo.indexOf(e),1):(angular.forEach(l,function(t){var e=t.indexOf(c.hotkeys[r]);-1!==e&&t.splice(e,1)}),c.hotkeys.splice(r,1)),!0)}function y(t){if(!t)return c.hotkeys;for(var e,n=0;n<c.hotkeys.length;n++)if((e=c.hotkeys[n]).combo.indexOf(t)>-1)return e;return!1}function b(t){return function(n,i){if(t instanceof Array){var r=t[0],o=t[1];t=function(t){o.scope.$eval(r)}}e.$apply(function(){t(n,y(i))})}}return{add:m,del:v,get:y,bindTo:function(t){return t.$id in l||(l[t.$id]=[],t.$on("$destroy",function(){for(var e=l[t.$id].length;e--;)v(l[t.$id].pop())})),{add:function(e){var n;return n=arguments.length>1?m.apply(this,arguments):m(e),l[t.$id].push(n),this}}},template:this.template,toggleCheatSheet:g,includeCheatSheet:this.includeCheatSheet,cheatSheetHotkey:this.cheatSheetHotkey,cheatSheetDescription:this.cheatSheetDescription,useNgRoute:this.useNgRoute,purgeHotkeys:h,templateTitle:this.templateTitle,pause:function(){o=!1},unpause:function(){o=!0}}}]}]).directive("hotkey",["hotkeys",function(t){return{restrict:"A",link:function(e,n,i){var r,o=[];angular.forEach(e.$eval(i.hotkey),function(e,n){r="string"==typeof i.hotkeyAllowIn?i.hotkeyAllowIn.split(/[\s,]+/):[],o.push(n),t.add({combo:n,description:i.hotkeyDescription,callback:e,action:i.hotkeyAction,allowIn:r})}),n.bind("$destroy",function(){angular.forEach(o,t.del)})}}}]).run(["hotkeys",function(t){}])}(),function(r,o,a){for(var s,c={8:"backspace",9:"tab",13:"enter",16:"shift",17:"ctrl",18:"alt",20:"capslock",27:"esc",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"ins",46:"del",91:"meta",93:"meta",224:"meta"},l={106:"*",107:"+",109:"-",110:".",111:"/",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},u={"~":"`","!":"1","@":"2","#":"3",$:"4","%":"5","^":"6","&":"7","*":"8","(":"9",")":"0",_:"-","+":"=",":":";",'"':"'","<":",",">":".","?":"/","|":"\\"},d={option:"alt",command:"meta",return:"enter",escape:"esc",plus:"+",mod:/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"meta":"ctrl"},p=1;p<20;++p)c[111+p]="f"+p;for(p=0;p<=9;++p)c[p+96]=p;function h(t,e,n){t.addEventListener?t.addEventListener(e,n,!1):t.attachEvent("on"+e,n)}function f(t){if("keypress"==t.type){var e=String.fromCharCode(t.which);return t.shiftKey||(e=e.toLowerCase()),e}return c[t.which]?c[t.which]:l[t.which]?l[t.which]:String.fromCharCode(t.which).toLowerCase()}function g(t){return"shift"==t||"ctrl"==t||"alt"==t||"meta"==t}function m(t,e){var n,i,r,o=[];for(n=function(t){return"+"===t?["+"]:(t=t.replace(/\+{2}/g,"+plus")).split("+")}(t),r=0;r<n.length;++r)i=n[r],d[i]&&(i=d[i]),e&&"keypress"!=e&&u[i]&&(i=u[i],o.push("shift")),g(i)&&o.push(i);return{key:i,modifiers:o,action:e=function(t,e,n){return n||(n=function(){if(!s)for(var t in s={},c)t>95&&t<112||c.hasOwnProperty(t)&&(s[c[t]]=t);return s}()[t]?"keydown":"keypress"),"keypress"==n&&e.length&&(n="keydown"),n}(i,o,e)}}function v(t){var e=this;if(t=t||o,!(e instanceof v))return new v(t);e.target=t,e._callbacks={},e._directMap={};var n,i={},r=!1,a=!1,s=!1;function c(t){t=t||{};var e,n=!1;for(e in i)t[e]?n=!0:i[e]=0;n||(s=!1)}function l(t,n,r,o,a,s){var c,l,u,d,p=[],h=r.type;if(!e._callbacks[t])return[];for("keyup"==h&&g(t)&&(n=[t]),c=0;c<e._callbacks[t].length;++c)if(l=e._callbacks[t][c],(o||!l.seq||i[l.seq]==l.level)&&h==l.action&&("keypress"==h&&!r.metaKey&&!r.ctrlKey||(u=n,d=l.modifiers,u.sort().join(",")===d.sort().join(",")))){var f=!o&&l.combo==a,m=o&&l.seq==o&&l.level==s;(f||m)&&e._callbacks[t].splice(c,1),p.push(l)}return p}function u(t,n,i,r){e.stopCallback(n,n.target||n.srcElement,i,r)||!1===t(n,i)&&(function(t){t.preventDefault?t.preventDefault():t.returnValue=!1}(n),function(t){t.stopPropagation?t.stopPropagation():t.cancelBubble=!0}(n))}function d(t){"number"!=typeof t.which&&(t.which=t.keyCode);var n=f(t);n&&("keyup"!=t.type||r!==n?e.handleKey(n,function(t){var e=[];return t.shiftKey&&e.push("shift"),t.altKey&&e.push("alt"),t.ctrlKey&&e.push("ctrl"),t.metaKey&&e.push("meta"),e}(t),t):r=!1)}function p(t,e,o,a){function l(e){return function(){s=e,++i[t],clearTimeout(n),n=setTimeout(c,1e3)}}function d(e){u(o,e,t),"keyup"!==a&&(r=f(e)),setTimeout(c,10)}i[t]=0;for(var p=0;p<e.length;++p){var h=p+1===e.length?d:l(a||m(e[p+1]).action);y(e[p],h,a,t,p)}}function y(t,n,i,r,o){e._directMap[t+":"+i]=n;var a,s=(t=t.replace(/\s+/g," ")).split(" ");s.length>1?p(t,s,n,i):(a=m(t,i),e._callbacks[a.key]=e._callbacks[a.key]||[],l(a.key,a.modifiers,{type:a.action},r,t,o),e._callbacks[a.key][r?"unshift":"push"]({callback:n,modifiers:a.modifiers,action:a.action,seq:r,level:o,combo:t}))}e._handleKey=function(t,e,n){var i,r=l(t,e,n),o={},d=0,p=!1;for(i=0;i<r.length;++i)r[i].seq&&(d=Math.max(d,r[i].level));for(i=0;i<r.length;++i)if(r[i].seq){if(r[i].level!=d)continue;p=!0,o[r[i].seq]=1,u(r[i].callback,n,r[i].combo,r[i].seq)}else p||u(r[i].callback,n,r[i].combo);var h="keypress"==n.type&&a;n.type!=s||g(t)||h||c(o),a=p&&"keydown"==n.type},e._bindMultiple=function(t,e,n){for(var i=0;i<t.length;++i)y(t[i],e,n)},h(t,"keypress",d),h(t,"keydown",d),h(t,"keyup",d)}v.prototype.bind=function(t,e,n){return t=t instanceof Array?t:[t],this._bindMultiple.call(this,t,e,n),this},v.prototype.unbind=function(t,e){return this.bind.call(this,t,function(){},e)},v.prototype.trigger=function(t,e){return this._directMap[t+":"+e]&&this._directMap[t+":"+e]({},t),this},v.prototype.reset=function(){return this._callbacks={},this._directMap={},this},v.prototype.stopCallback=function(t,e){return!((" "+e.className+" ").indexOf(" mousetrap ")>-1)&&!function t(e,n){return e!==o&&(e===n||t(e.parentNode,n))}(e,this.target)&&("INPUT"==e.tagName||"SELECT"==e.tagName||"TEXTAREA"==e.tagName||e.isContentEditable)},v.prototype.handleKey=function(){return this._handleKey.apply(this,arguments)},v.init=function(){var t=v(o);for(var e in t)"_"!==e.charAt(0)&&(v[e]=function(e){return function(){return t[e].apply(t,arguments)}}(e))},v.init(),r.Mousetrap=v,t.exports&&(t.exports=v),void 0===(i=function(){return v}.call(e,n,e,t))||(t.exports=i)}(window,document)},function(t,e,n){var i=n(11),r=n(936);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"/*! \n * angular-hotkeys v1.7.0\n * https://chieffancypants.github.io/angular-hotkeys\n * Copyright (c) 2016 Wes Cruver\n * License: MIT\n */.cfp-hotkeys-container{display:table!important;position:fixed;width:100%;height:100%;top:0;left:0;color:#333;font-size:1em;background-color:hsla(0,0%,100%,.9)}.cfp-hotkeys-container.fade{z-index:-1024;visibility:hidden;opacity:0;-webkit-transition:opacity .15s linear;-moz-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.cfp-hotkeys-container.fade.in{z-index:10002;visibility:visible;opacity:1}.cfp-hotkeys-title{font-weight:700;text-align:center;font-size:1.2em}.cfp-hotkeys{width:100%;height:100%;display:table-cell;vertical-align:middle}.cfp-hotkeys table{margin:auto;color:#333}.cfp-content{display:table-cell;vertical-align:middle}.cfp-hotkeys-keys{padding:5px;text-align:right}.cfp-hotkeys-key{display:inline-block;color:#fff;background-color:#333;border:1px solid #333;border-radius:5px;text-align:center;margin-right:5px;box-shadow:inset 0 1px 0 #666,0 1px 0 #bbb;padding:5px 9px;font-size:1em}.cfp-hotkeys-text{padding-left:10px;font-size:1em}.cfp-hotkeys-close{position:fixed;top:20px;right:20px;font-size:2em;font-weight:700;padding:5px 10px;border:1px solid #ddd;border-radius:5px;min-height:45px;min-width:45px;text-align:center}.cfp-hotkeys-close:hover{background-color:#fff;cursor:pointer}@media (max-width:500px){.cfp-hotkeys{font-size:.8em}}@media (min-width:750px){.cfp-hotkeys{font-size:1.2em}}",""]),t.exports=e},function(t,e,n){n(938),t.exports="LocalStorageModule"},function(t,e){
  2351. /**
  2352. * An Angular module that gives you access to the browsers local storage
  2353. * @version v0.7.1 - 2017-06-21
  2354. * @link https://github.com/grevory/angular-local-storage
  2355. * @author grevory <greg@gregpike.ca>
  2356. * @license MIT License, http://www.opensource.org/licenses/MIT
  2357. */
  2358. !function(t,e){var n=e.isDefined,i=e.isUndefined,r=e.isNumber,o=e.isObject,a=e.isArray,s=e.isString,c=e.extend,l=e.toJson;e.module("LocalStorageModule",[]).provider("localStorageService",function(){this.prefix="ls",this.storageType="localStorage",this.cookie={expiry:30,path:"/",secure:!1},this.defaultToCookie=!0,this.notify={setItem:!0,removeItem:!1},this.setPrefix=function(t){return this.prefix=t,this},this.setStorageType=function(t){return this.storageType=t,this},this.setDefaultToCookie=function(t){return this.defaultToCookie=!!t,this},this.setStorageCookie=function(t,e,n){return this.cookie.expiry=t,this.cookie.path=e,this.cookie.secure=n,this},this.setStorageCookieDomain=function(t){return this.cookie.domain=t,this},this.setNotify=function(t,e){return this.notify={setItem:t,removeItem:e},this},this.$get=["$rootScope","$window","$document","$parse","$timeout",function(t,e,u,d,p){var h,f=this,g=f.prefix,m=f.cookie,v=f.notify,y=f.storageType;u?u[0]&&(u=u[0]):u=document,"."!==g.substr(-1)&&(g=g?g+".":"");var b=function(t){return g+t},w=function(t){return t.replace(new RegExp("^"+g,"g"),"")},S=function(){try{var n=y in e&&null!==e[y],i=b("__"+Math.round(1e7*Math.random()));return n&&((h=e[y]).setItem(i,""),h.removeItem(i)),n}catch(e){return f.defaultToCookie&&(y="cookie"),t.$broadcast("LocalStorageModule.notification.error",e.message),!1}},x=S(),M=function(e,n,r){var o=I();try{if(k(r),n=i(n)?null:l(n),!x&&f.defaultToCookie||"cookie"===f.storageType)return x||t.$broadcast("LocalStorageModule.notification.warning","LOCAL_STORAGE_NOT_SUPPORTED"),v.setItem&&t.$broadcast("LocalStorageModule.notification.setitem",{key:e,newvalue:n,storageType:"cookie"}),T(e,n);try{h&&h.setItem(b(e),n),v.setItem&&t.$broadcast("LocalStorageModule.notification.setitem",{key:e,newvalue:n,storageType:f.storageType})}catch(i){return t.$broadcast("LocalStorageModule.notification.error",i.message),T(e,n)}return!0}finally{k(o)}},E=function(e,n){var i=I();try{if(k(n),!x&&f.defaultToCookie||"cookie"===f.storageType)return x||t.$broadcast("LocalStorageModule.notification.warning","LOCAL_STORAGE_NOT_SUPPORTED"),O(e);var r=h?h.getItem(b(e)):null;if(!r||"null"===r)return null;try{return JSON.parse(r)}catch(t){return r}}finally{k(i)}},C=function(){var e=I();try{var n,i,r=0;for(arguments.length>=1&&("localStorage"===arguments[arguments.length-1]||"sessionStorage"===arguments[arguments.length-1])&&(r=1,k(arguments[arguments.length-1])),n=0;n<arguments.length-r;n++)if(i=arguments[n],!x&&f.defaultToCookie||"cookie"===f.storageType)x||t.$broadcast("LocalStorageModule.notification.warning","LOCAL_STORAGE_NOT_SUPPORTED"),v.removeItem&&t.$broadcast("LocalStorageModule.notification.removeitem",{key:i,storageType:"cookie"}),_(i);else try{h.removeItem(b(i)),v.removeItem&&t.$broadcast("LocalStorageModule.notification.removeitem",{key:i,storageType:f.storageType})}catch(e){t.$broadcast("LocalStorageModule.notification.error",e.message),_(i)}}finally{k(e)}},A=function(){try{return e.navigator.cookieEnabled||"cookie"in u&&(u.cookie.length>0||(u.cookie="test").indexOf.call(u.cookie,"test")>-1)}catch(e){return t.$broadcast("LocalStorageModule.notification.error",e.message),!1}}(),T=function(e,n,s,c){if(i(n))return!1;if((a(n)||o(n))&&(n=l(n)),!A)return t.$broadcast("LocalStorageModule.notification.error","COOKIES_NOT_SUPPORTED"),!1;try{var d="",p=new Date,h="";if(null===n?(p.setTime(p.getTime()+-864e5),d="; expires="+p.toGMTString(),n=""):r(s)&&0!==s?(p.setTime(p.getTime()+24*s*60*60*1e3),d="; expires="+p.toGMTString()):0!==m.expiry&&(p.setTime(p.getTime()+24*m.expiry*60*60*1e3),d="; expires="+p.toGMTString()),e){var f="; path="+m.path;m.domain&&(h="; domain="+m.domain),"boolean"==typeof c?!0===c&&(h+="; secure"):!0===m.secure&&(h+="; secure"),u.cookie=b(e)+"="+encodeURIComponent(n)+d+f+h}}catch(e){return t.$broadcast("LocalStorageModule.notification.error",e.message),!1}return!0},O=function(e){if(!A)return t.$broadcast("LocalStorageModule.notification.error","COOKIES_NOT_SUPPORTED"),!1;for(var n=u.cookie&&u.cookie.split(";")||[],i=0;i<n.length;i++){for(var r=n[i];" "===r.charAt(0);)r=r.substring(1,r.length);if(0===r.indexOf(b(e)+"=")){var o=decodeURIComponent(r.substring(g.length+e.length+1,r.length));try{var a=JSON.parse(o);return"number"==typeof a?o:a}catch(t){return o}}}return null},_=function(t){T(t,null)},P=function(){for(var t=null,e=g.length,n=u.cookie.split(";"),i=0;i<n.length;i++){for(t=n[i];" "===t.charAt(0);)t=t.substring(1,t.length);var r=t.substring(e,t.indexOf("="));_(r)}},I=function(){return y},k=function(t){return t&&y!==t&&(y=t,x=S()),x};function D(n){if(n||(n=e.event),v.setItem&&s(n.key)&&0===n.key.indexOf(g)){var i=w(n.key);p(function(){t.$broadcast("LocalStorageModule.notification.changed",{key:i,newvalue:n.newValue,storageType:f.storageType})})}}return x&&(e.addEventListener?(e.addEventListener("storage",D,!1),t.$on("$destroy",function(){e.removeEventListener("storage",D)})):e.attachEvent&&(e.attachEvent("onstorage",D),t.$on("$destroy",function(){e.detachEvent("onstorage",D)}))),{isSupported:x,getStorageType:I,setStorageType:k,setPrefix:function(t){g=t},set:M,add:M,get:E,keys:function(e){var n=I();try{if(k(e),!x)return t.$broadcast("LocalStorageModule.notification.warning","LOCAL_STORAGE_NOT_SUPPORTED"),[];var i=g.length,r=[];for(var o in h)if(o.substr(0,i)===g)try{r.push(o.substr(i))}catch(e){return t.$broadcast("LocalStorageModule.notification.error",e.Description),[]}return r}finally{k(n)}},remove:C,clearAll:function(e,n){var i=I();try{k(n);var r=g?new RegExp("^"+g):new RegExp,o=e?new RegExp(e):new RegExp;if(!x&&f.defaultToCookie||"cookie"===f.storageType)return x||t.$broadcast("LocalStorageModule.notification.warning","LOCAL_STORAGE_NOT_SUPPORTED"),P();if(!x&&!f.defaultToCookie)return!1;var a=g.length;for(var s in h)if(r.test(s)&&o.test(s.substr(a)))try{C(s.substr(a))}catch(e){return t.$broadcast("LocalStorageModule.notification.error",e.message),P()}return!0}finally{k(i)}},bind:function(t,e,i,r,a){var s=E(r=r||e,a);return null===s&&n(i)?s=i:o(s)&&o(i)&&(s=c(s,i)),d(e).assign(t,s),t.$watch(e,function(t){M(r,t,a)},o(t[e]))},deriveKey:b,underiveKey:w,length:function(t){var n=I();try{k(t);for(var i=0,r=e[y],o=0;o<r.length;o++)0===r.key(o).indexOf(g)&&i++;return i}finally{k(n)}},defaultToCookie:this.defaultToCookie,cookie:{isSupported:A,set:T,add:T,get:O,remove:_,clearAll:P}}}]})}(window,window.angular)},function(t,e){!function(t){"use strict";var e=t.module("angular-progress-arc",[]);e.provider("progressArcDefaults",function(){var e={size:200,strokeWidth:20,stroke:"black",background:null};this.setDefault=function(t,n){return e[t]=n,this},this.$get=function(){return function(n){t.forEach(e,function(t,e){n[e]||(n[e]=t)})}}}),e.directive("progressArc",["progressArcDefaults",function(t){return{restrict:"E",scope:{size:"@",strokeWidth:"@",stroke:"@",counterClockwise:"@",complete:"&",background:"@"},compile:function(e,n){return t(n),function(t,e,n){t.offset=/firefox/i.test(navigator.userAgent)?-89.9:-90;var i=function(){t.strokeWidthCapped=Math.min(t.strokeWidth,t.size/2-1),t.radius=Math.max((t.size-t.strokeWidthCapped)/2-1,0),t.circumference=2*Math.PI*t.radius};t.$watchCollection("[size, strokeWidth]",i),i()}},template:'<svg ng-attr-width="{{size}}" ng-attr-height="{{size}}"><circle fill="none" ng-if="background" ng-attr-cx="{{size/2}}" ng-attr-cy="{{size/2}}" ng-attr-r="{{radius}}" ng-attr-stroke="{{background}}" ng-attr-stroke-width="{{strokeWidthCapped}}"/><circle fill="none" ng-attr-cx="{{size/2}}" ng-attr-cy="{{size/2}}" ng-attr-r="{{radius}}" ng-attr-stroke="{{stroke}}" ng-attr-stroke-width="{{strokeWidthCapped}}"ng-attr-stroke-dasharray="{{circumference}}"ng-attr-stroke-dashoffset="{{(1 - complete()) * circumference}}"ng-attr-transform="rotate({{offset}}, {{size/2}}, {{size/2}}){{ (counterClockwise && counterClockwise != \'false\') ? \' translate(0, \' + size + \') scale(1, -1)\' : \'\' }}"/></svg>'}}])}(window.angular)},function(t,e,n){n(941),t.exports="ngSanitize"},function(t,e){
  2359. /**
  2360. * @license AngularJS v1.8.0
  2361. * (c) 2010-2020 Google, Inc. http://angularjs.org
  2362. * License: MIT
  2363. */
  2364. !function(t,e){"use strict";var n,i,r,o,a,s,c,l,u,d,p=e.$$minErr("$sanitize");e.module("ngSanitize",[]).provider("$sanitize",function(){var h=!1,f=!1;this.$get=["$$sanitizeUri",function(t){return h=!0,f&&i(C,M),function(e){var n=[];return u(e,d(n,function(e,n){return!/^unsafe:/.test(t(e,n))})),n.join("")}}],this.enableSvg=function(t){return a(t)?(f=t,this):f},this.addValidElements=function(t){return h||(o(t)&&(t={htmlElements:t}),k(M,t.svgElements),k(v,t.htmlVoidElements),k(C,t.htmlVoidElements),k(C,t.htmlElements)),this},this.addValidAttrs=function(t){return h||i(_,I(t,!0)),this},n=e.bind,i=e.extend,r=e.forEach,o=e.isArray,a=e.isDefined,s=e.$$lowercase,c=e.noop,u=function(t,e){null==t?t="":"string"!=typeof t&&(t=""+t);var n=D(t);if(!n)return"";var i=5;do{if(0===i)throw p("uinput","Failed to sanitize html because the input is unstable");i--,t=n.innerHTML,n=D(t)}while(t!==n.innerHTML);for(var r=n.firstChild;r;){switch(r.nodeType){case 1:e.start(r.nodeName.toLowerCase(),R(r.attributes));break;case 3:e.chars(r.textContent)}var o;if(!((o=r.firstChild)||(1===r.nodeType&&e.end(r.nodeName.toLowerCase()),o=j("nextSibling",r))))for(;null==o&&(r=j("parentNode",r))!==n;)o=j("nextSibling",r),1===r.nodeType&&e.end(r.nodeName.toLowerCase());r=o}for(;r=n.firstChild;)n.removeChild(r)},d=function(t,e){var i=!1,o=n(t,t.push);return{start:function(t,n){t=s(t),!i&&E[t]&&(i=t),i||!0!==C[t]||(o("<"),o(t),r(n,function(n,i){var r=s(i),a="img"===t&&"src"===r||"background"===r;!0!==_[r]||!0===A[r]&&!e(n,a)||(o(" "),o(i),o('="'),o(L(n)),o('"'))}),o(">"))},end:function(t){t=s(t),i||!0!==C[t]||!0===v[t]||(o("</"),o(t),o(">")),t==i&&(i=!1)},chars:function(t){i||o(L(t))}}},l=t.Node.prototype.contains||function(t){return!!(16&this.compareDocumentPosition(t))};var g=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,m=/([^#-~ |!])/g,v=P("area,br,col,hr,img,wbr"),y=P("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),b=P("rp,rt"),w=i({},b,y),S=i({},y,P("address,article,aside,blockquote,caption,center,del,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,map,menu,nav,ol,pre,section,table,ul")),x=i({},b,P("a,abbr,acronym,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,q,ruby,rp,rt,s,samp,small,span,strike,strong,sub,sup,time,tt,u,var")),M=P("circle,defs,desc,ellipse,font-face,font-face-name,font-face-src,g,glyph,hkern,image,linearGradient,line,marker,metadata,missing-glyph,mpath,path,polygon,polyline,radialGradient,rect,stop,svg,switch,text,title,tspan"),E=P("script,style"),C=i({},v,S,x,w),A=P("background,cite,href,longdesc,src,xlink:href,xml:base"),T=P("abbr,align,alt,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,coords,dir,face,headers,height,hreflang,hspace,ismap,lang,language,nohref,nowrap,rel,rev,rows,rowspan,rules,scope,scrolling,shape,size,span,start,summary,tabindex,target,title,type,valign,value,vspace,width"),O=P("accent-height,accumulate,additive,alphabetic,arabic-form,ascent,baseProfile,bbox,begin,by,calcMode,cap-height,class,color,color-rendering,content,cx,cy,d,dx,dy,descent,display,dur,end,fill,fill-rule,font-family,font-size,font-stretch,font-style,font-variant,font-weight,from,fx,fy,g1,g2,glyph-name,gradientUnits,hanging,height,horiz-adv-x,horiz-origin-x,ideographic,k,keyPoints,keySplines,keyTimes,lang,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mathematical,max,min,offset,opacity,orient,origin,overline-position,overline-thickness,panose-1,path,pathLength,points,preserveAspectRatio,r,refX,refY,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,rotate,rx,ry,slope,stemh,stemv,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,systemLanguage,target,text-anchor,to,transform,type,u1,u2,underline-position,underline-thickness,unicode,unicode-range,units-per-em,values,version,viewBox,visibility,width,widths,x,x-height,x1,x2,xlink:actuate,xlink:arcrole,xlink:role,xlink:show,xlink:title,xlink:type,xml:base,xml:lang,xml:space,xmlns,xmlns:xlink,y,y1,y2,zoomAndPan",!0),_=i({},A,O,T);function P(t,e){return I(t.split(","),e)}function I(t,e){var n,i={};for(n=0;n<t.length;n++)i[e?s(t[n]):t[n]]=!0;return i}function k(t,e){e&&e.length&&i(t,I(e))}var D=function(t,e){var n;if(!e||!e.implementation)throw p("noinert","Can't create an inert html document");var i=((n=e.implementation.createHTMLDocument("inert")).documentElement||n.getDocumentElement()).querySelector("body");return i.innerHTML='<svg><g onload="this.parentNode.remove()"></g></svg>',i.querySelector("svg")?(i.innerHTML='<svg><p><style><img src="</style><img src=x onerror=alert(1)//">',i.querySelector("svg img")?function(e){e="<remove></remove>"+e;try{var n=(new t.DOMParser).parseFromString(e,"text/html").body;return n.firstChild.remove(),n}catch(t){return}}:function(t){return i.innerHTML=t,e.documentMode&&N(i),i}):function(e){e="<remove></remove>"+e;try{e=encodeURI(e)}catch(t){return}var n=new t.XMLHttpRequest;n.responseType="document",n.open("GET","data:text/html;charset=utf-8,"+e,!1),n.send(null);var i=n.response.body;return i.firstChild.remove(),i}}(t,t.document);function R(t){for(var e={},n=0,i=t.length;n<i;n++){var r=t[n];e[r.name]=r.value}return e}function L(t){return t.replace(/&/g,"&amp;").replace(g,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(m,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(/</g,"&lt;").replace(/>/g,"&gt;")}function N(e){for(;e;){if(e.nodeType===t.Node.ELEMENT_NODE)for(var n=e.attributes,i=0,r=n.length;i<r;i++){var o=n[i],a=o.name.toLowerCase();"xmlns:ns1"!==a&&0!==a.lastIndexOf("ns1:",0)||(e.removeAttributeNode(o),i--,r--)}var s=e.firstChild;s&&N(s),e=j("nextSibling",e)}}function j(t,e){var n=e[t];if(n&&l.call(e,n))throw p("elclob","Failed to sanitize html because the element is clobbered: {0}",e.outerHTML||e.outerText);return n}}).info({angularVersion:"1.8.0"}),e.module("ngSanitize").filter("linky",["$sanitize",function(t){var n=/((s?ftp|https?):\/\/|(www\.)|(mailto:)?[A-Za-z0-9._%+-]+@)\S*[^\s.;,(){}<>"\u201d\u2019]/i,i=/^mailto:/i,r=e.$$minErr("linky"),o=e.isDefined,a=e.isFunction,s=e.isObject,l=e.isString;return function(e,u,p){if(null==e||""===e)return e;if(!l(e))throw r("notstring","Expected string but received: {0}",e);for(var h,f,g,m=a(p)?p:s(p)?function(){return p}:function(){return{}},v=e,y=[];h=v.match(n);)f=h[0],h[2]||h[4]||(f=(h[3]?"http://":"mailto:")+f),g=h.index,b(v.substr(0,g)),w(f,h[0].replace(i,"")),v=v.substring(g+h[0].length);return b(v),t(y.join(""));function b(t){var e,n;t&&y.push((e=t,d(n=[],c).chars(e),n.join("")))}function w(t,e){var n,i=m(t);for(n in y.push("<a "),i)y.push(n+'="'+i[n]+'" ');o(u)&&!("target"in i)&&y.push('target="',u,'" '),y.push('href="',t.replace(/"/g,"&quot;"),'">'),b(e),y.push("</a>")}}}])}(window,window.angular)},function(t,e,n){n(943),t.exports="ui.slider"},function(t,e,n){(function(t){angular.module("ui.slider",[]).value("uiSliderConfig",{}).directive("uiSlider",["uiSliderConfig","$timeout",function(e,n){return e=e||{},{require:"ngModel",compile:function(){return{pre:function(i,r,o,a){function s(t,e){return e?parseFloat(t):parseInt(t,10)}var c=angular.copy(i.$eval(o.uiSlider)),l=angular.extend(c||{},e),u={min:null,max:null},d=["min","max","step","lowerBound","upperBound"],p=!angular.isUndefined(o.useDecimals),h=angular.isDefined(l.updateOn)?l.updateOn:"slide",f=function(){angular.isArray(a.$viewValue)&&!0!==l.range&&(console.warn("Change your range option of ui-slider. When assigning ngModel an array of values then the range option should be set to true."),l.range=!0),angular.forEach(d,function(t){angular.isDefined(o[t])&&(l[t]=s(o[t],p))}),r.slider(l),f=angular.noop};function g(){r.hasClass("ui-slider")&&r.slider("destroy")}angular.forEach(d,function(t){o.$observe(t,function(e){e&&(f(),l[t]=s(e,p),r.slider("option",t,s(e,p)),a.$render())})}),o.$observe("disabled",function(t){f(),r.slider("option","disabled",!!t)}),i.$watch(o.uiSlider,function(t){f(),void 0!==t&&r.slider("option",t)},!0),n(f,0,!0),r.bind(h,function(e,n){var o;if(n.values){var s=n.values.slice();l.lowerBound&&s[0]<l.lowerBound&&(s[0]=Math.max(s[0],l.lowerBound)),l.upperBound&&s[1]>l.upperBound&&(s[1]=Math.min(s[1],l.upperBound)),s[0]===n.values[0]&&s[1]===n.values[1]||(o=!0,n.values=s)}else{var c=n.value;l.lowerBound&&c<l.lowerBound&&(c=Math.max(c,l.lowerBound)),l.upperBound&&c>l.upperBound&&(c=Math.min(c,l.upperBound)),c!==n.value&&(o=!0,n.value=c)}if(a.$setViewValue(n.values||n.value),t(n.handle).find(".ui-slider-tip").text(n.value),i.$apply(),o)return setTimeout(function(){r.slider("value",n.values||n.value)},0),!1}),a.$render=function(){f();var t=!0===l.range?"values":"value";if(!0===l.range||!isNaN(a.$viewValue)||a.$viewValue instanceof Array?l.range&&!angular.isDefined(a.$viewValue)&&(a.$viewValue=[0,0]):a.$viewValue=0,!0===l.range){if(a.$viewValue&&angular.isString(a.$viewValue)&&1===(a.$viewValue.match(/,/g)||[]).length){var e=a.$viewValue.split(",");a.$viewValue=[Number(e[0]),Number(e[1])]}angular.isDefined(l.min)&&l.min>a.$viewValue[0]&&(a.$viewValue[0]=l.min),angular.isDefined(l.max)&&l.max<a.$viewValue[1]&&(a.$viewValue[1]=l.max),a.$viewValue[0]>a.$viewValue[1]&&(u.min>=a.$viewValue[1]&&(a.$viewValue[1]=u.min),u.max<=a.$viewValue[0]&&(a.$viewValue[0]=u.max)),u.min=a.$viewValue[0],u.max=a.$viewValue[1]}r.slider(t,a.$viewValue)},i.$watch(o.ngModel,function(){!0===l.range?(a.$render(),t(r).find(".ui-slider-tip").each(function(e,n){t(n).text(a.$viewValue[e])})):t(r).find(".ui-slider-tip").text(a.$viewValue)},!0),i.$on("$destroy",g),r.one("$destroy",g)},post:function(e,i,r,o){var a=angular.extend({},e.$eval(r.uiSlider));if(angular.forEach(["min","max","step","tick","tip"],function(t){angular.isDefined(r[t])&&(a[t]=r[t])}),angular.isDefined(a.tick)&&angular.isDefined(a.step))for(var s=parseInt((parseInt(a.max)-parseInt(a.min))/parseInt(a.step)),c=s;c>=0;c--){var l=c/s*100+"%";t("<div/>").addClass("ui-slider-tick").appendTo(i).css({left:l})}angular.isDefined(a.tip)&&n(function(){var e=i.find(".ui-slider-handle");e&&e.length>1&&o.$viewValue&&angular.isArray(o.$viewValue)?(t(e[0]).append('<div class="ui-slider-tip">'+o.$viewValue[0]+"</div>"),t(e[1]).append('<div class="ui-slider-tip">'+o.$viewValue[1]+"</div>")):i.find(".ui-slider-handle").append('<div class="ui-slider-tip">'+o.$viewValue+"</div>")},10)}}}}}])}).call(this,n(19))},function(t,e,n){t.exports&&(t.exports="luegg.directives"),function(t,e){"use strict";function n(e,n,i){e.directive(n,["$parse","$window","$timeout",function(e,r,o){return{priority:1,restrict:"A",link:function(a,s,c){var l=s[0],u=function(t,e,n){if(""!==e){var i=t(e);return void 0!==i.assign?function(t,e,n){return{getValue:function(){return t(n)},setValue:function(i){i!==t(n)&&n.$apply(function(){e(n,i)})}}}(i,i.assign,n):function(t,e){return{getValue:function(){return t(e)},setValue:function(){}}}(i,n)}return r=!0,{getValue:function(){return r},setValue:function(t){r=t}};var r}(e,c[n],a);function d(){u.getValue()&&!i.isAttached(l)&&o(function(){i.scroll(l)})}function p(){u.setValue(i.isAttached(l))}o(d,0,!1),s[0].hasAttribute("force-glue")||s.on("scroll",p);var h=!1;t.forEach(s.children(),function(t){t.hasAttribute("scroll-glue-anchor")&&(h=!0,a.$watch(function(){return t.offsetHeight},function(){d()}))}),h||(a.$watch(d),r.addEventListener("resize",d,!1)),s.on("$destroy",function(){s.unbind("scroll",p)}),a.$on("$destroy",function(){r.removeEventListener("resize",d,!1)})}}}])}var i={isAttached:function(t){return t.scrollTop+t.clientHeight+1>=t.scrollHeight},scroll:function(t){t.scrollTop=t.scrollHeight}},r=t.module("luegg.directives",[]);n(r,"scrollGlue",i),n(r,"scrollGlueTop",{isAttached:function(t){return t.scrollTop<=1},scroll:function(t){t.scrollTop=0}}),n(r,"scrollGlueBottom",i),n(r,"scrollGlueLeft",{isAttached:function(t){return t.scrollLeft<=1},scroll:function(t){t.scrollLeft=0}}),n(r,"scrollGlueRight",{isAttached:function(t){return t.scrollLeft+t.clientWidth+1>=t.scrollWidth},scroll:function(t){t.scrollLeft=t.scrollWidth}})}(angular)},function(t,e,n){n(946),t.exports="ngFileUpload"},function(t,e,n){(function(t,e){var n;!function(){function t(t,e){window.XMLHttpRequest.prototype[t]=e(window.XMLHttpRequest.prototype[t])}function e(t,e,n){try{Object.defineProperty(t,e,{get:n})}catch(t){}}if(window.FileAPI||(window.FileAPI={}),!window.XMLHttpRequest)throw"AJAX is not supported. XMLHttpRequest is not defined.";if(FileAPI.shouldLoad=!window.FormData||FileAPI.forceLoad,FileAPI.shouldLoad){var n=function(t){if(!t.__listeners){t.upload||(t.upload={}),t.__listeners=[];var e=t.upload.addEventListener;t.upload.addEventListener=function(n,i){t.__listeners[n]=i,e&&e.apply(this,arguments)}}};t("open",function(t){return function(e,i,r){n(this),this.__url=i;try{t.apply(this,[e,i,r])}catch(n){n.message.indexOf("Access is denied")>-1&&(this.__origError=n,t.apply(this,[e,"_fix_for_ie_crossdomain__",r]))}}}),t("getResponseHeader",function(t){return function(e){return this.__fileApiXHR&&this.__fileApiXHR.getResponseHeader?this.__fileApiXHR.getResponseHeader(e):null==t?null:t.apply(this,[e])}}),t("getAllResponseHeaders",function(t){return function(){return this.__fileApiXHR&&this.__fileApiXHR.getAllResponseHeaders?this.__fileApiXHR.getAllResponseHeaders():null==t?null:t.apply(this)}}),t("abort",function(t){return function(){return this.__fileApiXHR&&this.__fileApiXHR.abort?this.__fileApiXHR.abort():null==t?null:t.apply(this)}}),t("setRequestHeader",function(t){return function(e,i){if("__setXHR_"===e){n(this);var r=i(this);r instanceof Function&&r(this)}else this.__requestHeaders=this.__requestHeaders||{},this.__requestHeaders[e]=i,t.apply(this,arguments)}}),t("send",function(t){return function(){var n=this;if(arguments[0]&&arguments[0].__isFileAPIShim){for(var i=arguments[0],r={url:n.__url,jsonp:!1,cache:!0,complete:function(t,i){t&&angular.isString(t)&&-1!==t.indexOf("#2174")&&(t=null),n.__completed=!0,!t&&n.__listeners.load&&n.__listeners.load({type:"load",loaded:n.__loaded,total:n.__total,target:n,lengthComputable:!0}),!t&&n.__listeners.loadend&&n.__listeners.loadend({type:"loadend",loaded:n.__loaded,total:n.__total,target:n,lengthComputable:!0}),"abort"===t&&n.__listeners.abort&&n.__listeners.abort({type:"abort",loaded:n.__loaded,total:n.__total,target:n,lengthComputable:!0}),void 0!==i.status&&e(n,"status",function(){return 0===i.status&&t&&"abort"!==t?500:i.status}),void 0!==i.statusText&&e(n,"statusText",function(){return i.statusText}),e(n,"readyState",function(){return 4}),void 0!==i.response&&e(n,"response",function(){return i.response});var r=i.responseText||(t&&0===i.status&&"abort"!==t?t:void 0);e(n,"responseText",function(){return r}),e(n,"response",function(){return r}),t&&e(n,"err",function(){return t}),n.__fileApiXHR=i,n.onreadystatechange&&n.onreadystatechange(),n.onload&&n.onload()},progress:function(t){if(t.target=n,n.__listeners.progress&&n.__listeners.progress(t),n.__total=t.total,n.__loaded=t.loaded,t.total===t.loaded){var e=this;setTimeout(function(){n.__completed||(n.getAllResponseHeaders=function(){},e.complete(null,{status:204,statusText:"No Content"}))},FileAPI.noContentTimeout||1e4)}},headers:n.__requestHeaders,data:{},files:{}},o=0;o<i.data.length;o++){var a=i.data[o];null!=a.val&&null!=a.val.name&&null!=a.val.size&&null!=a.val.type?r.files[a.key]=a.val:r.data[a.key]=a.val}setTimeout(function(){if(!FileAPI.hasFlash)throw'Adode Flash Player need to be installed. To check ahead use "FileAPI.hasFlash"';n.__fileApiXHR=FileAPI.upload(r)},1)}else{if(this.__origError)throw this.__origError;t.apply(n,arguments)}}}),window.XMLHttpRequest.__isFileAPIShim=!0,window.FormData=FormData=function(){return{append:function(t,e,n){e.__isFileAPIBlobShim&&(e=e.data[0]),this.data.push({key:t,val:e,name:n})},data:[],__isFileAPIShim:!0}},window.Blob=Blob=function(t){return{data:t,__isFileAPIBlobShim:!0}}}}(),function(){function n(){try{if(new ActiveXObject("ShockwaveFlash.ShockwaveFlash"))return!0}catch(t){if(void 0!==navigator.mimeTypes["application/x-shockwave-flash"])return!0}return!1}function i(n){var i=0,r=0;if(t)return e(n).offset();if(n.offsetParent)do{i+=n.offsetLeft-n.scrollLeft,r+=n.offsetTop-n.scrollTop,n=n.offsetParent}while(n);return{left:i,top:r}}if(FileAPI.shouldLoad){if(FileAPI.hasFlash=n(),FileAPI.forceLoad&&(FileAPI.html5=!1),!FileAPI.upload){var r,o,a,s,c,l=document.createElement("script"),u=document.getElementsByTagName("script");if(window.FileAPI.jsUrl)r=window.FileAPI.jsUrl;else if(window.FileAPI.jsPath)o=window.FileAPI.jsPath;else for(a=0;a<u.length;a++)if((s=(c=u[a].src).search(/\/ng\-file\-upload[\-a-zA-z0-9\.]*\.js/))>-1){o=c.substring(0,s+1);break}null==FileAPI.staticPath&&(FileAPI.staticPath=o),l.setAttribute("src",r||o+"FileAPI.min.js"),document.getElementsByTagName("head")[0].appendChild(l)}FileAPI.ngfFixIE=function(t,e,r){if(!n())throw'Adode Flash Player need to be installed. To check ahead use "FileAPI.hasFlash"';t.bind("mouseenter",function(){var n=e.parent();t.attr("disabled")?n&&n.removeClass("js-fileapi-wrapper"):(e.attr("__ngf_flash_")||(e.unbind("change"),e.unbind("click"),e.bind("change",function(t){o.apply(this,[t]),r.apply(this,[t])}),e.attr("__ngf_flash_","true")),n.addClass("js-fileapi-wrapper"),function(t){return"input"===t[0].tagName.toLowerCase()&&t.attr("type")&&"file"===t.attr("type").toLowerCase()}(t)||(n.css("position","absolute").css("top",i(t[0]).top+"px").css("left",i(t[0]).left+"px").css("width",t[0].offsetWidth+"px").css("height",t[0].offsetHeight+"px").css("filter","alpha(opacity=0)").css("display",t.css("display")).css("overflow","hidden").css("z-index","900000").css("visibility","visible"),e.css("width",t[0].offsetWidth+"px").css("height",t[0].offsetHeight+"px").css("position","absolute").css("top","0px").css("left","0px")))});var o=function(t){for(var e=FileAPI.getFiles(t),n=0;n<e.length;n++)void 0===e[n].size&&(e[n].size=0),void 0===e[n].name&&(e[n].name="file"),void 0===e[n].type&&(e[n].type="undefined");t.target||(t.target={}),t.target.files=e,t.target.files!==e&&(t.__files_=e),(t.__files_||t.target.files).item=function(e){return(t.__files_||t.target.files)[e]||null}}},FileAPI.disableFileInput=function(t,e){e?t.removeClass("js-fileapi-wrapper"):t.addClass("js-fileapi-wrapper")}}}(),window.FileReader||(window.FileReader=function(){var t=this,e=!1;this.listeners={},this.addEventListener=function(e,n){t.listeners[e]=t.listeners[e]||[],t.listeners[e].push(n)},this.removeEventListener=function(e,n){t.listeners[e]&&t.listeners[e].splice(t.listeners[e].indexOf(n),1)},this.dispatchEvent=function(e){var n=t.listeners[e.type];if(n)for(var i=0;i<n.length;i++)n[i].call(t,e)},this.onabort=this.onerror=this.onload=this.onloadstart=this.onloadend=this.onprogress=null;var n=function(e,n){var i={type:e,target:t,loaded:n.loaded,total:n.total,error:n.error};return null!=n.result&&(i.target.result=n.result),i},i=function(i){var r;e||(e=!0,t.onloadstart&&t.onloadstart(n("loadstart",i))),"load"===i.type?(t.onloadend&&t.onloadend(n("loadend",i)),r=n("load",i),t.onload&&t.onload(r),t.dispatchEvent(r)):"progress"===i.type?(r=n("progress",i),t.onprogress&&t.onprogress(r),t.dispatchEvent(r)):(r=n("error",i),t.onerror&&t.onerror(r),t.dispatchEvent(r))};this.readAsDataURL=function(t){FileAPI.readAsDataURL(t,i)},this.readAsText=function(t){FileAPI.readAsText(t,i)}}),!window.XMLHttpRequest||window.FileAPI&&FileAPI.shouldLoad||(window.XMLHttpRequest.prototype.setRequestHeader=(n=window.XMLHttpRequest.prototype.setRequestHeader,function(t,e){if("__setXHR_"===t){var i=e(this);i instanceof Function&&i(this)}else n.apply(this,arguments)}));var i=angular.module("ngFileUpload",[]);i.version="12.2.13",i.service("UploadBase",["$http","$q","$timeout",function(t,e,n){var r=this;r.promisesCount=0,this.isResumeSupported=function(){return window.Blob&&window.Blob.prototype.slice};var o=this.isResumeSupported();function a(i){i.method=i.method||"POST",i.headers=i.headers||{};var a=i._deferred=i._deferred||e.defer(),s=a.promise;function c(t){a.notify&&a.notify(t),s.progressFunc&&n(function(){s.progressFunc(t)})}function l(t){return null!=i._start&&o?{loaded:t.loaded+i._start,total:i._file&&i._file.size||t.total,type:t.type,config:i,lengthComputable:!0,target:t.target}:t}function u(){t(i).then(function(t){if(o&&i._chunkSize&&!i._finished&&i._file){var e=i._file&&i._file.size||0;c({loaded:Math.min(i._end,e),total:e,config:i,type:"progress"}),r.upload(i,!0)}else i._finished&&delete i._finished,a.resolve(t)},function(t){a.reject(t)},function(t){a.notify(t)})}return i.disableProgress||(i.headers.__setXHR_=function(){return function(t){t&&t.upload&&t.upload.addEventListener&&(i.__XHR=t,i.xhrFn&&i.xhrFn(t),t.upload.addEventListener("progress",function(t){t.config=i,c(l(t))},!1),t.upload.addEventListener("load",function(t){t.lengthComputable&&(t.config=i,c(l(t)))},!1))}}),o?i._chunkSize&&i._end&&!i._finished?(i._start=i._end,i._end+=i._chunkSize,u()):i.resumeSizeUrl?t.get(i.resumeSizeUrl).then(function(t){i.resumeSizeResponseReader?i._start=i.resumeSizeResponseReader(t.data):i._start=parseInt((null==t.data.size?t.data:t.data.size).toString()),i._chunkSize&&(i._end=i._start+i._chunkSize),u()},function(t){throw t}):i.resumeSize?i.resumeSize().then(function(t){i._start=t,i._chunkSize&&(i._end=i._start+i._chunkSize),u()},function(t){throw t}):(i._chunkSize&&(i._start=0,i._end=i._start+i._chunkSize),u()):u(),s.success=function(t){return s.then(function(e){t(e.data,e.status,e.headers,i)}),s},s.error=function(t){return s.then(null,function(e){t(e.data,e.status,e.headers,i)}),s},s.progress=function(t){return s.progressFunc=t,s.then(null,null,function(e){t(e)}),s},s.abort=s.pause=function(){return i.__XHR&&n(function(){i.__XHR.abort()}),s},s.xhr=function(t){var e;return i.xhrFn=(e=i.xhrFn,function(){e&&e.apply(s,arguments),t.apply(s,arguments)}),s},r.promisesCount++,s.finally&&s.finally instanceof Function&&s.finally(function(){r.promisesCount--}),s}function s(t){var e={};for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e}this.isUploadInProgress=function(){return r.promisesCount>0},this.rename=function(t,e){return t.ngfName=e,t},this.jsonBlob=function(t){null==t||angular.isString(t)||(t=JSON.stringify(t));var e=new window.Blob([t],{type:"application/json"});return e._ngfBlob=!0,e},this.json=function(t){return angular.toJson(t)},this.isFile=function(t){return null!=t&&(t instanceof window.Blob||t.flashId&&t.name&&t.size)},this.upload=function(t,e){function n(e,i,a){if(void 0!==i)if(angular.isDate(i)&&(i=i.toISOString()),angular.isString(i))e.append(a,i);else if(r.isFile(i)){var s=function(e,n){if(e._ngfBlob)return e;if(t._file=t._file||e,null!=t._start&&o){t._end&&t._end>=e.size&&(t._finished=!0,t._end=e.size);var i=e.slice(t._start,t._end||e.size);return i.name=e.name,i.ngfName=e.ngfName,t._chunkSize&&(n.append("_chunkSize",t._chunkSize),n.append("_currentChunkSize",t._end-t._start),n.append("_chunkNumber",Math.floor(t._start/t._chunkSize)),n.append("_totalSize",t._file.size)),i}return e}(i,e),c=a.split(",");c[1]&&(s.ngfName=c[1].replace(/^\s+|\s+$/g,""),a=c[0]),t._fileKey=t._fileKey||a,e.append(a,s,s.ngfName||s.name)}else if(angular.isObject(i)){if(i.$$ngfCircularDetection)throw"ngFileUpload: Circular reference in config.data. Make sure specified data for Upload.upload() has no circular reference: "+a;i.$$ngfCircularDetection=!0;try{for(var l in i)if(i.hasOwnProperty(l)&&"$$ngfCircularDetection"!==l){var u=null==t.objectKey?"[i]":t.objectKey;i.length&&parseInt(l)>-1&&(u=null==t.arrayKey?u:t.arrayKey),n(e,i[l],a+u.replace(/[ik]/g,l))}}finally{delete i.$$ngfCircularDetection}}else e.append(a,i)}return e||(t=s(t)),t._isDigested||(t._isDigested=!0,t._chunkSize=r.translateScalars(t.resumeChunkSize),t._chunkSize=t._chunkSize?parseInt(t._chunkSize.toString()):null,t.headers=t.headers||{},t.headers["Content-Type"]=void 0,t.transformRequest=t.transformRequest?angular.isArray(t.transformRequest)?t.transformRequest:[t.transformRequest]:[],t.transformRequest.push(function(e){var i,r=new window.FormData;for(i in e=e||t.fields||{},t.file&&(e.file=t.file),e)if(e.hasOwnProperty(i)){var o=e[i];t.formDataAppender?t.formDataAppender(r,i,o):n(r,o,i)}return r})),a(t)},this.http=function(e){return(e=s(e)).transformRequest=e.transformRequest||function(e){return window.ArrayBuffer&&e instanceof window.ArrayBuffer||e instanceof window.Blob?e:t.defaults.transformRequest[0].apply(this,arguments)},e._chunkSize=r.translateScalars(e.resumeChunkSize),e._chunkSize=e._chunkSize?parseInt(e._chunkSize.toString()):null,a(e)},this.translateScalars=function(t){if(angular.isString(t)){if(t.search(/kb/i)===t.length-2)return parseFloat(1024*t.substring(0,t.length-2));if(t.search(/mb/i)===t.length-2)return parseFloat(1048576*t.substring(0,t.length-2));if(t.search(/gb/i)===t.length-2)return parseFloat(1073741824*t.substring(0,t.length-2));if(t.search(/b/i)===t.length-1)return parseFloat(t.substring(0,t.length-1));if(t.search(/s/i)===t.length-1)return parseFloat(t.substring(0,t.length-1));if(t.search(/m/i)===t.length-1)return parseFloat(60*t.substring(0,t.length-1));if(t.search(/h/i)===t.length-1)return parseFloat(3600*t.substring(0,t.length-1))}return t},this.urlToBlob=function(n){var i=e.defer();return t({url:n,method:"get",responseType:"arraybuffer"}).then(function(t){var e=new Uint8Array(t.data),r=t.headers("content-type")||"image/WebP",o=new window.Blob([e],{type:r}),a=n.match(/.*\/(.+?)(\?.*)?$/);a.length>1&&(o.name=a[1]),i.resolve(o)},function(t){i.reject(t)}),i.promise},this.setDefaults=function(t){this.defaults=t||{}},this.defaults={},this.version=i.version}]),i.service("Upload",["$parse","$timeout","$compile","$q","UploadExif",function(t,e,n,i,r){var o=r;function a(t,e,n,r,a){var s=[o.emptyPromise()];function c(i,c){if(0===i.type.indexOf("image")){if(t.pattern&&!o.validatePattern(i,t.pattern))return;t.resizeIf=function(t,e){return o.attrGetter("ngfResizeIf",n,r,{$width:t,$height:e,$file:i})};var l=o.resize(i,t);s.push(l),l.then(function(t){e.splice(c,1,t)},function(t){i.$error="resize",(i.$errorMessages=i.$errorMessages||{}).resize=!0,i.$errorParam=(t?(t.message?t.message:t)+": ":"")+(i&&i.name),a.$ngfValidations.push({name:"resize",valid:!1}),o.applyModelValidation(a,e)})}}for(var l=0;l<e.length;l++)c(e[l],l);return i.all(s)}return o.getAttrWithDefaults=function(t,e){if(null!=t[e])return t[e];var n=o.defaults[e];return null==n||angular.isString(n)?n:JSON.stringify(n)},o.attrGetter=function(e,n,i,r){var o=this.getAttrWithDefaults(n,e);if(!i)return o;try{return r?t(o)(i,r):t(o)(i)}catch(t){if(e.search(/min|max|pattern/i))return o;throw t}},o.shouldUpdateOn=function(t,e,n){var i=o.attrGetter("ngfModelOptions",e,n);return!i||!i.updateOn||i.updateOn.split(" ").indexOf(t)>-1},o.emptyPromise=function(){var t=i.defer(),n=arguments;return e(function(){t.resolve.apply(t,n)}),t.promise},o.rejectPromise=function(){var t=i.defer(),n=arguments;return e(function(){t.reject.apply(t,n)}),t.promise},o.happyPromise=function(t,n){var r=i.defer();return t.then(function(t){r.resolve(t)},function(t){e(function(){throw t}),r.resolve(n)}),r.promise},o.updateModel=function(n,r,s,c,l,u,d){function p(i,a,l,d,p){r.$$ngfPrevValidFiles=i,r.$$ngfPrevInvalidFiles=a;var h=i&&i.length?i[0]:null,f=a&&a.length?a[0]:null;n&&(o.applyModelValidation(n,i),n.$setViewValue(p?h:i)),c&&t(c)(s,{$files:i,$file:h,$newFiles:l,$duplicateFiles:d,$invalidFiles:a,$invalidFile:f,$event:u});var g=o.attrGetter("ngfModelInvalid",r);g&&e(function(){t(g).assign(s,p?f:a)}),e(function(){})}var h,f,g,m,v=[],y=[],b=[];function w(){function t(){e(function(){p(S?f.concat(b):b,S?g.concat(y):y,l,v,x)},E&&E.debounce?E.debounce.change||E.debounce:0)}var c=M?h:b;(function(t,e,n,r){var s=o.attrGetter("ngfResize",e,n);if(!s||!o.isResizeSupported()||!t.length)return o.emptyPromise();if(s instanceof Function){var c=i.defer();return s(t).then(function(i){a(i,t,e,n,r).then(function(t){c.resolve(t)},function(t){c.reject(t)})},function(t){c.reject(t)})}return a(s,t,e,n,r)})(c,r,s,n).then(function(){M?o.validate(h,S?f.length:0,n,r,s).then(function(e){b=e.validsFiles,y=e.invalidsFiles,t()}):t()},function(){for(var e=0;e<c.length;e++){var n=c[e];if("resize"===n.$error){var i=b.indexOf(n);i>-1&&(b.splice(i,1),y.push(n)),t()}}})}f=r.$$ngfPrevValidFiles||[],g=r.$$ngfPrevInvalidFiles||[],n&&n.$modelValue&&(m=n.$modelValue,f=angular.isArray(m)?m:[m]);var S=o.attrGetter("ngfKeep",r,s);h=(l||[]).slice(0),"distinct"!==S&&!0!==o.attrGetter("ngfKeepDistinct",r,s)||function(){function t(t,e){return t.name===e.name&&(t.$ngfOrigSize||t.size)===(e.$ngfOrigSize||e.size)&&t.type===e.type}function e(e){var n;for(n=0;n<f.length;n++)if(t(e,f[n]))return!0;for(n=0;n<g.length;n++)if(t(e,g[n]))return!0;return!1}if(l){h=[],v=[];for(var n=0;n<l.length;n++)e(l[n])?v.push(l[n]):h.push(l[n])}}();var x=!S&&!o.attrGetter("ngfMultiple",r,s)&&!o.attrGetter("multiple",r);if(!S||h.length){o.attrGetter("ngfBeforeModelChange",r,s,{$files:l,$file:l&&l.length?l[0]:null,$newFiles:h,$duplicateFiles:v,$event:u});var M=o.attrGetter("ngfValidateAfterResize",r,s),E=o.attrGetter("ngfModelOptions",r,s);o.validate(h,S?f.length:0,n,r,s).then(function(t){d?p(h,[],l,v,x):(E&&E.allowInvalid||M?b=h:(b=t.validFiles,y=t.invalidFiles),o.attrGetter("ngfFixOrientation",r,s)&&o.isExifSupported()?function(t,e,n){var r=[o.emptyPromise()];return angular.forEach(t,function(i,a){0===i.type.indexOf("image/jpeg")&&o.attrGetter("ngfFixOrientation",e,n,{$file:i})&&r.push(o.happyPromise(o.applyExifRotation(i),i).then(function(e){t.splice(a,1,e)}))}),i.all(r)}(b,r,s).then(function(){w()}):w())})}},o}]),i.directive("ngfSelect",["$parse","$timeout","$compile","Upload",function(t,e,n,i){var r=[];function o(t,e,n,o,a,s,c,l){var u=function(t,e){return l.attrGetter(t,n,e)};function d(){return"input"===e[0].tagName.toLowerCase()&&n.type&&"file"===n.type.toLowerCase()}function p(){return u("ngfChange")||u("ngfSelect")}function h(e){if(l.shouldUpdateOn("change",n,t)){var i=e.__files_||e.target&&e.target.files,r=[];if(!i)return;for(var a=0;a<i.length;a++)r.push(i[a]);l.updateModel(o,n,t,p(),r.length?r:null,e)}}l.registerModelChangeValidator(o,n,t);var f=[];u("ngfMultiple")&&f.push(t.$watch(u("ngfMultiple"),function(){v.attr("multiple",u("ngfMultiple",t))})),u("ngfCapture")&&f.push(t.$watch(u("ngfCapture"),function(){v.attr("capture",u("ngfCapture",t))})),u("ngfAccept")&&f.push(t.$watch(u("ngfAccept"),function(){v.attr("accept",u("ngfAccept",t))})),f.push(n.$observe("accept",function(){v.attr("accept",u("accept"))}));var g=0,m=0,v=e;function y(e){l.shouldUpdateOn("click",n,t)&&v.val()&&(v.val(null),l.updateModel(o,n,t,p(),null,e,!0))}d()||(v=function(){if(d())return e;var t=angular.element('<input type="file">'),i=angular.element("<label>upload</label>");return i.css("visibility","hidden").css("position","absolute").css("overflow","hidden").css("width","0px").css("height","0px").css("border","none").css("margin","0px").css("padding","0px").attr("tabindex","-1"),function(t,i){function r(e){t.attr("id","ngf-"+e),i.attr("id","ngf-label-"+e)}for(var o=0;o<e[0].attributes.length;o++){var a=e[0].attributes[o];"type"!==a.name&&"class"!==a.name&&"style"!==a.name&&("id"===a.name?(r(a.value),f.push(n.$observe("id",r))):t.attr(a.name,a.value||"required"!==a.name&&"multiple"!==a.name?a.value:a.name))}}(t,i),r.push({el:e,ref:i}),document.body.appendChild(i.append(t)[0]),t}()),v.bind("change",h),d()?e.bind("click",y):e.bind("click touchstart touchend",function(n){if(e.attr("disabled"))return!1;if(!u("ngfSelectDisabled",t)){var o=function(t){var e=t.changedTouches||t.originalEvent&&t.originalEvent.changedTouches;if(e){if("touchstart"===t.type)return m=e[0].clientX,g=e[0].clientY,!0;if("touchend"===t.type){var n=e[0].clientX,i=e[0].clientY;if(Math.abs(n-m)>20||Math.abs(i-g)>20)return t.stopPropagation(),t.preventDefault(),!1}return!0}}(n);if(null!=o)return o;y(n);try{d()||document.body.contains(v[0])||(r.push({el:e,ref:v.parent()}),document.body.appendChild(v.parent()[0]),v.bind("change",h))}catch(t){}return function(t){var e=t.match(/Android[^\d]*(\d+)\.(\d+)/);if(e&&e.length>2){var n=i.defaults.androidFixMinorVersion||4;return parseInt(e[1])<4||parseInt(e[1])===n&&parseInt(e[2])<n}return-1===t.indexOf("Chrome")&&/.*Windows.*Safari.*/.test(t)}(navigator.userAgent)?setTimeout(function(){v[0].click()},0):v[0].click(),!1}}),-1!==navigator.appVersion.indexOf("MSIE 10")&&v.bind("click",function t(e){if(v&&!v.attr("__ngf_ie10_Fix_")){if(!v[0].parentNode)return void(v=null);e.preventDefault(),e.stopPropagation(),v.unbind("click");var n=v.clone();return v.replaceWith(n),(v=n).attr("__ngf_ie10_Fix_","true"),v.bind("change",h),v.bind("click",t),v[0].click(),!1}v.removeAttr("__ngf_ie10_Fix_")}),o&&o.$formatters.push(function(t){return null!=t&&0!==t.length||v.val()&&v.val(null),t}),t.$on("$destroy",function(){d()||v.parent().remove(),angular.forEach(f,function(t){t()})}),s(function(){for(var t=0;t<r.length;t++){var e=r[t];document.body.contains(e.el[0])||(r.splice(t,1),e.ref.remove())}}),window.FileAPI&&window.FileAPI.ngfFixIE&&window.FileAPI.ngfFixIE(e,v,h)}return{restrict:"AEC",require:"?ngModel",link:function(t,n,r,a){o(t,n,r,a,0,e,0,i)}}}]),function(){function t(t,e,n,i,r,o,a,s){function c(o){var a=t.attrGetter("ngfNoObjectUrl",r,n);t.dataUrl(o,a).finally(function(){e(function(){var t=(a?o.$ngfDataUrl:o.$ngfBlobUrl)||o.$ngfDataUrl;s?i.css("background-image","url('"+(t||"")+"')"):i.attr("src",t),t?i.removeClass("ng-hide"):i.addClass("ng-hide")})})}e(function(){var e=n.$watch(r[o],function(e){var l,u=a;if("ngfThumbnail"===o&&(u||(u={width:i[0].naturalWidth||i[0].clientWidth,height:i[0].naturalHeight||i[0].clientHeight}),0===u.width&&window.getComputedStyle)){var d=getComputedStyle(i[0]);d.width&&d.width.indexOf("px")>-1&&d.height&&d.height.indexOf("px")>-1&&(u={width:parseInt(d.width.slice(0,-2)),height:parseInt(d.height.slice(0,-2))})}if(angular.isString(e))return i.removeClass("ng-hide"),s?i.css("background-image","url('"+e+"')"):i.attr("src",e);!e||!e.type||0!==e.type.search("img"===(l=i[0]).tagName.toLowerCase()?"image":"audio"===l.tagName.toLowerCase()?"audio":"video"===l.tagName.toLowerCase()?"video":/./)||s&&0!==e.type.indexOf("image")?i.addClass("ng-hide"):u&&t.isResizeSupported()?(u.resizeIf=function(i,o){return t.attrGetter("ngfResizeIf",r,n,{$width:i,$height:o,$file:e})},t.resize(e,u).then(function(t){c(t)},function(t){throw t})):c(e)});n.$on("$destroy",function(){e()})})}i.service("UploadDataUrl",["UploadBase","$timeout","$q",function(t,e,n){var i=t;return i.base64DataUrl=function(t){if(angular.isArray(t)){var e=n.defer(),r=0;return angular.forEach(t,function(n){i.dataUrl(n,!0).finally(function(){if(++r===t.length){var n=[];angular.forEach(t,function(t){n.push(t.$ngfDataUrl)}),e.resolve(n,t)}})}),e.promise}return i.dataUrl(t,!0)},i.dataUrl=function(t,r){if(!t)return i.emptyPromise(t,t);if(r&&null!=t.$ngfDataUrl||!r&&null!=t.$ngfBlobUrl)return i.emptyPromise(r?t.$ngfDataUrl:t.$ngfBlobUrl,t);var o=r?t.$$ngfDataUrlPromise:t.$$ngfBlobUrlPromise;if(o)return o;var a=n.defer();return e(function(){if(window.FileReader&&t&&(!window.FileAPI||-1===navigator.userAgent.indexOf("MSIE 8")||t.size<2e4)&&(!window.FileAPI||-1===navigator.userAgent.indexOf("MSIE 9")||t.size<4e6)){var n=window.URL||window.webkitURL;if(n&&n.createObjectURL&&!r){var o;try{o=n.createObjectURL(t)}catch(n){return void e(function(){t.$ngfBlobUrl="",a.reject()})}e(function(){if(t.$ngfBlobUrl=o,o){a.resolve(o,t),i.blobUrls=i.blobUrls||[],i.blobUrlsTotalSize=i.blobUrlsTotalSize||0,i.blobUrls.push({url:o,size:t.size}),i.blobUrlsTotalSize+=t.size||0;for(var e=i.defaults.blobUrlsMaxMemory||268435456,r=i.defaults.blobUrlsMaxQueueSize||200;(i.blobUrlsTotalSize>e||i.blobUrls.length>r)&&i.blobUrls.length>1;){var s=i.blobUrls.splice(0,1)[0];n.revokeObjectURL(s.url),i.blobUrlsTotalSize-=s.size}}})}else{var s=new FileReader;s.onload=function(n){e(function(){t.$ngfDataUrl=n.target.result,a.resolve(n.target.result,t),e(function(){delete t.$ngfDataUrl},1e3)})},s.onerror=function(){e(function(){t.$ngfDataUrl="",a.reject()})},s.readAsDataURL(t)}}else e(function(){t[r?"$ngfDataUrl":"$ngfBlobUrl"]="",a.reject()})}),(o=r?t.$$ngfDataUrlPromise=a.promise:t.$$ngfBlobUrlPromise=a.promise).finally(function(){delete t[r?"$$ngfDataUrlPromise":"$$ngfBlobUrlPromise"]}),o},i}]),i.directive("ngfSrc",["Upload","$timeout",function(e,n){return{restrict:"AE",link:function(i,r,o){t(e,n,i,r,o,"ngfSrc",e.attrGetter("ngfResize",o,i),!1)}}}]),i.directive("ngfBackground",["Upload","$timeout",function(e,n){return{restrict:"AE",link:function(i,r,o){t(e,n,i,r,o,"ngfBackground",e.attrGetter("ngfResize",o,i),!0)}}}]),i.directive("ngfThumbnail",["Upload","$timeout",function(e,n){return{restrict:"AE",link:function(i,r,o){var a=e.attrGetter("ngfSize",o,i);t(e,n,i,r,o,"ngfThumbnail",a,e.attrGetter("ngfAsBackground",o,i))}}}]),i.config(["$compileProvider",function(t){t.imgSrcSanitizationWhitelist&&t.imgSrcSanitizationWhitelist(/^\s*(https?|ftp|mailto|tel|webcal|local|file|data|blob):/),t.aHrefSanitizationWhitelist&&t.aHrefSanitizationWhitelist(/^\s*(https?|ftp|mailto|tel|webcal|local|file|data|blob):/)}]),i.filter("ngfDataUrl",["UploadDataUrl","$sce",function(t,e){return function(n,i,r){if(angular.isString(n))return e.trustAsResourceUrl(n);var o=n&&((i?n.$ngfDataUrl:n.$ngfBlobUrl)||n.$ngfDataUrl);return n&&!o?(!n.$ngfDataUrlFilterInProgress&&angular.isObject(n)&&(n.$ngfDataUrlFilterInProgress=!0,t.dataUrl(n,i)),""):(n&&delete n.$ngfDataUrlFilterInProgress,(n&&o?r?e.trustAsResourceUrl(o):o:n)||"")}}])}(),i.service("UploadValidate",["UploadDataUrl","$q","$timeout",function(t,e,n){var i=t;return i.validatePattern=function(t,e){if(!e)return!0;var n=function t(e){var n="",i=[];if(e.length>2&&"/"===e[0]&&"/"===e[e.length-1])n=e.substring(1,e.length-1);else{var r=e.split(",");if(r.length>1)for(var o=0;o<r.length;o++){var a=t(r[o]);a.regexp?(n+="("+a.regexp+")",o<r.length-1&&(n+="|")):i=i.concat(a.excludes)}else 0===e.indexOf("!")?i.push("^((?!"+t(e.substring(1)).regexp+").)*$"):(0===e.indexOf(".")&&(e="*"+e),n=(n="^"+e.replace(new RegExp("[.\\\\+*?\\[\\^\\]$(){}=!<>|:\\-]","g"),"\\$&")+"$").replace(/\\\*/g,".*").replace(/\\\?/g,"."))}return{regexp:n,excludes:i}}(e),i=!0;if(n.regexp&&n.regexp.length){var r=new RegExp(n.regexp,"i");i=null!=t.type&&r.test(t.type)||null!=t.name&&r.test(t.name)}for(var o=n.excludes.length;o--;){var a=new RegExp(n.excludes[o],"i");i=i&&(null==t.type||a.test(t.type))&&(null==t.name||a.test(t.name))}return i},i.ratioToFloat=function(t){var e=t.toString(),n=e.search(/[x:]/i);return n>-1?parseFloat(e.substring(0,n))/parseFloat(e.substring(n+1)):parseFloat(e)},i.registerModelChangeValidator=function(t,e,n){t&&t.$formatters.push(function(r){if(t.$dirty){var o=r;r&&!angular.isArray(r)&&(o=[r]),i.validate(o,0,t,e,n).then(function(){i.applyModelValidation(t,o)})}return r})},i.applyModelValidation=function(t,e){!function(t,e){null==e||t.$dirty||(t.$setDirty?t.$setDirty():t.$dirty=!0)}(t,e),angular.forEach(t.$ngfValidations,function(e){t.$setValidity(e.name,e.valid)})},i.getValidationAttr=function(t,e,n,r,o){var a="ngf"+n[0].toUpperCase()+n.substr(1),s=i.attrGetter(a,t,e,{$file:o});if(null==s&&(s=i.attrGetter("ngfValidate",t,e,{$file:o}))){var c=(r||n).split(".");s=s[c[0]],c.length>1&&(s=s&&s[c[1]])}return s},i.validate=function(t,n,r,o,a){(r=r||{}).$ngfValidations=r.$ngfValidations||[],angular.forEach(r.$ngfValidations,function(t){t.valid=!0});var s=function(t,e){return i.attrGetter(t,o,a,e)},c=(i.attrGetter("ngfIgnoreInvalid",o,a)||"").split(" "),l=i.attrGetter("ngfRunAllValidations",o,a);if(null==t||0===t.length)return i.emptyPromise({validFiles:t,invalidFiles:[]});t=void 0===t.length?[t]:t.slice(0);var u=[];function d(e,n,s){if(t){for(var d=t.length,p=null;d--;){var h=t[d];if(h){var f=i.getValidationAttr(o,a,e,n,h);null!=f&&(s(h,f,d)||(-1===c.indexOf(e)?(h.$error=e,(h.$errorMessages=h.$errorMessages||{})[e]=!0,h.$errorParam=f,-1===u.indexOf(h)&&u.push(h),l||t.splice(d,1),p=!1):t.splice(d,1)))}}null!==p&&r.$ngfValidations.push({name:e,valid:p})}}d("pattern",null,i.validatePattern),d("minSize","size.min",function(t,e){return t.size+.1>=i.translateScalars(e)}),d("maxSize","size.max",function(t,e){return t.size-.1<=i.translateScalars(e)});var p=0;if(d("maxTotalSize",null,function(e,n){return!((p+=e.size)>i.translateScalars(n)&&(t.splice(0,t.length),1))}),d("validateFn",null,function(t,e){return!0===e||null===e||""===e}),!t.length)return i.emptyPromise({validFiles:[],invalidFiles:u});function h(n,d,p,h,f){function g(e,i,r){function o(o){if(o())if(-1===c.indexOf(n)){if(i.$error=n,(i.$errorMessages=i.$errorMessages||{})[n]=!0,i.$errorParam=r,-1===u.indexOf(i)&&u.push(i),!l){var a=t.indexOf(i);a>-1&&t.splice(a,1)}e.resolve(!1)}else{var s=t.indexOf(i);s>-1&&t.splice(s,1),e.resolve(!0)}else e.resolve(!0)}null!=r?h(i,r).then(function(t){o(function(){return!f(t,r)})},function(){o(function(){return s("ngfValidateForce",{$file:i})})}):e.resolve(!0)}var m=[i.emptyPromise(!0)];t&&(t=void 0===t.length?[t]:t,angular.forEach(t,function(t){var r=e.defer();m.push(r.promise),!p||null!=t.type&&0===t.type.search(p)?"dimensions"===n&&null!=i.attrGetter("ngfDimensions",o)?i.imageDimensions(t).then(function(e){g(r,t,s("ngfDimensions",{$file:t,$width:e.width,$height:e.height}))},function(){r.resolve(!1)}):"duration"===n&&null!=i.attrGetter("ngfDuration",o)?i.mediaDuration(t).then(function(e){g(r,t,s("ngfDuration",{$file:t,$duration:e}))},function(){r.resolve(!1)}):g(r,t,i.getValidationAttr(o,a,n,d,t)):r.resolve(!0)}));var v=e.defer();return e.all(m).then(function(t){for(var e=!0,i=0;i<t.length;i++)if(!t[i]){e=!1;break}r.$ngfValidations.push({name:n,valid:e}),v.resolve(e)}),v.promise}var f=e.defer(),g=[];return g.push(h("maxHeight","height.max",/image/,this.imageDimensions,function(t,e){return t.height<=e})),g.push(h("minHeight","height.min",/image/,this.imageDimensions,function(t,e){return t.height>=e})),g.push(h("maxWidth","width.max",/image/,this.imageDimensions,function(t,e){return t.width<=e})),g.push(h("minWidth","width.min",/image/,this.imageDimensions,function(t,e){return t.width>=e})),g.push(h("dimensions",null,/image/,function(t,e){return i.emptyPromise(e)},function(t){return t})),g.push(h("ratio",null,/image/,this.imageDimensions,function(t,e){for(var n=e.toString().split(","),r=!1,o=0;o<n.length;o++)Math.abs(t.width/t.height-i.ratioToFloat(n[o]))<.01&&(r=!0);return r})),g.push(h("maxRatio","ratio.max",/image/,this.imageDimensions,function(t,e){return t.width/t.height-i.ratioToFloat(e)<1e-4})),g.push(h("minRatio","ratio.min",/image/,this.imageDimensions,function(t,e){return t.width/t.height-i.ratioToFloat(e)>-1e-4})),g.push(h("maxDuration","duration.max",/audio|video/,this.mediaDuration,function(t,e){return t<=i.translateScalars(e)})),g.push(h("minDuration","duration.min",/audio|video/,this.mediaDuration,function(t,e){return t>=i.translateScalars(e)})),g.push(h("duration",null,/audio|video/,function(t,e){return i.emptyPromise(e)},function(t){return t})),g.push(h("validateAsyncFn",null,null,function(t,e){return e},function(t){return!0===t||null===t||""===t})),e.all(g).then(function(){if(l)for(var e=0;e<t.length;e++)t[e].$error&&t.splice(e--,1);l=!1,d("maxFiles",null,function(t,e,i){return n+i<e}),f.resolve({validFiles:t,invalidFiles:u})}),f.promise},i.imageDimensions=function(t){if(t.$ngfWidth&&t.$ngfHeight){var r=e.defer();return n(function(){r.resolve({width:t.$ngfWidth,height:t.$ngfHeight})}),r.promise}if(t.$ngfDimensionPromise)return t.$ngfDimensionPromise;var o=e.defer();return n(function(){0===t.type.indexOf("image")?i.dataUrl(t).then(function(e){var i=angular.element("<img>").attr("src",e).css("visibility","hidden").css("position","fixed").css("max-width","none !important").css("max-height","none !important");function r(){var e=i[0].naturalWidth||i[0].clientWidth,n=i[0].naturalHeight||i[0].clientHeight;i.remove(),t.$ngfWidth=e,t.$ngfHeight=n,o.resolve({width:e,height:n})}function a(){i.remove(),o.reject("load error")}i.on("load",r),i.on("error",a);var s=0;!function t(){n(function(){i[0].parentNode&&(i[0].clientWidth?r():s++>10?a():t())},1e3)}(),angular.element(document.getElementsByTagName("body")[0]).append(i)},function(){o.reject("load error")}):o.reject("not image")}),t.$ngfDimensionPromise=o.promise,t.$ngfDimensionPromise.finally(function(){delete t.$ngfDimensionPromise}),t.$ngfDimensionPromise},i.mediaDuration=function(t){if(t.$ngfDuration){var r=e.defer();return n(function(){r.resolve(t.$ngfDuration)}),r.promise}if(t.$ngfDurationPromise)return t.$ngfDurationPromise;var o=e.defer();return n(function(){0===t.type.indexOf("audio")||0===t.type.indexOf("video")?i.dataUrl(t).then(function(e){var i=angular.element(0===t.type.indexOf("audio")?"<audio>":"<video>").attr("src",e).css("visibility","none").css("position","fixed");function r(){var e=i[0].duration;t.$ngfDuration=e,i.remove(),o.resolve(e)}i.on("loadedmetadata",r),i.on("error",function(){i.remove(),o.reject("load error")}),function t(){n(function(){i[0].parentNode&&(i[0].duration?r():t())},1e3)}(),angular.element(document.body).append(i)},function(){o.reject("load error")}):o.reject("not media")}),t.$ngfDurationPromise=o.promise,t.$ngfDurationPromise.finally(function(){delete t.$ngfDurationPromise}),t.$ngfDurationPromise},i}]),i.service("UploadResize",["UploadValidate","$q",function(t,e){var n=t,i=function(t,i,r,o,a,s,c,l){var u=e.defer(),d=document.createElement("canvas"),p=document.createElement("img");return p.setAttribute("style","visibility:hidden;position:fixed;z-index:-100000"),document.body.appendChild(p),p.onload=function(){var t=p.width,e=p.height;if(p.parentNode.removeChild(p),null==l||!1!==l(t,e))try{if(s){var h=n.ratioToFloat(s);t/e<h?r=(i=t)/h:i=(r=e)*h}i||(i=t),r||(r=e);var f=function(t,e,n,i,r){var o=c?Math.max(n/t,i/e):Math.min(n/t,i/e);return{width:t*o,height:e*o,marginX:t*o-n,marginY:e*o-i}}(t,e,i,r);d.width=Math.min(f.width,i),d.height=Math.min(f.height,r),d.getContext("2d").drawImage(p,Math.min(0,-f.marginX/2),Math.min(0,-f.marginY/2),f.width,f.height),u.resolve(d.toDataURL(a||"image/WebP",o||.934))}catch(t){u.reject(t)}else u.reject("resizeIf")},p.onerror=function(){p.parentNode.removeChild(p),u.reject()},p.src=t,u.promise};return n.dataUrltoBlob=function(t,e,n){for(var i=t.split(","),r=i[0].match(/:(.*?);/)[1],o=atob(i[1]),a=o.length,s=new Uint8Array(a);a--;)s[a]=o.charCodeAt(a);var c=new window.Blob([s],{type:r});return c.name=e,c.$ngfOrigSize=n,c},n.isResizeSupported=function(){var t=document.createElement("canvas");return window.atob&&t.getContext&&t.getContext("2d")&&window.Blob},n.isResizeSupported()&&Object.defineProperty(window.Blob.prototype,"name",{get:function(){return this.$ngfName},set:function(t){this.$ngfName=t},configurable:!0}),n.resize=function(t,r){if(0!==t.type.indexOf("image"))return n.emptyPromise(t);var o=e.defer();return n.dataUrl(t,!0).then(function(e){i(e,r.width,r.height,r.quality,r.type||t.type,r.ratio,r.centerCrop,r.resizeIf).then(function(i){if("image/jpeg"===t.type&&!1!==r.restoreExif)try{i=n.restoreExif(e,i)}catch(t){setTimeout(function(){throw t},1)}try{var a=n.dataUrltoBlob(i,t.name,t.size);o.resolve(a)}catch(t){o.reject(t)}},function(e){"resizeIf"===e&&o.resolve(t),o.reject(e)})},function(t){o.reject(t)}),o.promise},n}]),function(){function t(){var t=document.createElement("div");return"draggable"in t&&"ondrop"in t&&!/Edge\/12./i.test(navigator.userAgent)}i.directive("ngfDrop",["$parse","$timeout","$window","Upload","$http","$q",function(e,n,i,r,o,a){return{restrict:"AEC",require:"?ngModel",link:function(o,s,c,l){!function(e,n,i,r,o,a,s,c,l,u){var d=t(),p=function(t,e,n){return c.attrGetter(t,i,e,n)};if(p("dropAvailable")&&a(function(){e[p("dropAvailable")]?e[p("dropAvailable")].value=d:e[p("dropAvailable")]=d}),d){null==p("ngfSelect")&&c.registerModelChangeValidator(r,i,e);var h,f=null,g=o(p("ngfStopPropagation")),m=1;n[0].addEventListener("dragover",function(t){if(!v()&&c.shouldUpdateOn("drop",i,e)){if(t.preventDefault(),g(e)&&t.stopPropagation(),navigator.userAgent.indexOf("Chrome")>-1){var r=t.dataTransfer.effectAllowed;t.dataTransfer.dropEffect="move"===r||"linkMove"===r?"move":"copy"}a.cancel(f),h||(h="C",function(t,e,n,i){var r=p("ngfDragOverClass",t,{$event:n}),o="dragover";if(angular.isString(r))o=r;else if(r&&(r.delay&&(m=r.delay),r.accept||r.reject)){var a=n.dataTransfer.items;if(null!=a&&a.length)for(var s=r.pattern||p("ngfPattern",t,{$event:n}),l=a.length;l--;){if(!c.validatePattern(a[l],s)){o=r.reject;break}o=r.accept}else o=r.accept}i(o)}(e,0,t,function(i){h=i,n.addClass(h),p("ngfDrag",e,{$isDragging:!0,$class:h,$event:t})}))}},!1),n[0].addEventListener("dragenter",function(t){!v()&&c.shouldUpdateOn("drop",i,e)&&(t.preventDefault(),g(e)&&t.stopPropagation())},!1),n[0].addEventListener("dragleave",function(t){!v()&&c.shouldUpdateOn("drop",i,e)&&(t.preventDefault(),g(e)&&t.stopPropagation(),f=a(function(){h&&n.removeClass(h),h=null,p("ngfDrag",e,{$isDragging:!1,$event:t})},m||100))},!1),n[0].addEventListener("drop",function(t){!v()&&c.shouldUpdateOn("drop",i,e)&&(t.preventDefault(),g(e)&&t.stopPropagation(),h&&n.removeClass(h),h=null,y(t.dataTransfer,t,"dropUrl"))},!1),n[0].addEventListener("paste",function(t){navigator.userAgent.toLowerCase().indexOf("firefox")>-1&&p("ngfEnableFirefoxPaste",e)&&t.preventDefault(),!v()&&c.shouldUpdateOn("paste",i,e)&&y(t.clipboardData||t.originalEvent.clipboardData,t,"pasteUrl")},!1),navigator.userAgent.toLowerCase().indexOf("firefox")>-1&&p("ngfEnableFirefoxPaste",e)&&(n.attr("contenteditable",!0),n.on("keypress",function(t){t.metaKey||t.ctrlKey||t.preventDefault()}))}else!0===p("ngfHideOnDropNotAvailable",e)&&n.css("display","none");function v(){return n.attr("disabled")||p("ngfDropDisabled",e)}function y(t,n,r){if(t){var o;try{o=t&&t.getData&&t.getData("text/html")}catch(t){}(function(t,n,r,o){var a=c.getValidationAttr(i,e,"maxFiles");null==a&&(a=Number.MAX_VALUE);var l=c.getValidationAttr(i,e,"maxTotalSize");null==l&&(l=Number.MAX_VALUE);var d=p("ngfIncludeDir",e),h=[],f=0;function g(t,e){var n=u.defer();if(null!=t)if(t.isDirectory){var i=[c.emptyPromise()];if(d){var r={type:"directory"};r.name=r.path=(e||"")+t.name,h.push(r)}var o=t.createReader(),s=[],p=function(){o.readEntries(function(r){try{r.length?(s=s.concat(Array.prototype.slice.call(r||[],0)),p()):(angular.forEach(s.slice(0),function(n){h.length<=a&&f<=l&&i.push(g(n,(e||"")+t.name+"/"))}),u.all(i).then(function(){n.resolve()},function(t){n.reject(t)}))}catch(t){n.reject(t)}},function(t){n.reject(t)})};p()}else t.file(function(t){try{t.path=(e||"")+t.name,d&&(t=c.rename(t,t.path)),h.push(t),f+=t.size,n.resolve()}catch(t){n.reject(t)}},function(t){n.reject(t)});return n.promise}var m=[c.emptyPromise()];if(t&&t.length>0&&"file:"!==s.location.protocol)for(var v=0;v<t.length;v++){if(t[v].webkitGetAsEntry&&t[v].webkitGetAsEntry()&&t[v].webkitGetAsEntry().isDirectory){var y=t[v].webkitGetAsEntry();if(y.isDirectory&&!r)continue;null!=y&&m.push(g(y))}else{var b=t[v].getAsFile();null!=b&&(h.push(b),f+=b.size)}if(h.length>a||f>l||!o&&h.length>0)break}else if(null!=n)for(var w=0;w<n.length;w++){var S=n.item(w);if((S.type||S.size>0)&&(h.push(S),f+=S.size),h.length>a||f>l||!o&&h.length>0)break}var x=u.defer();return u.all(m).then(function(){if(o||d||!h.length)x.resolve(h);else{for(var t=0;h[t]&&"directory"===h[t].type;)t++;x.resolve([h[t]])}},function(t){x.reject(t)}),x.promise})(t.items,t.files,!1!==p("ngfAllowDir",e),p("multiple")||p("ngfMultiple",e)).then(function(t){t.length?b(t,n):function(t,n){if(!c.shouldUpdateOn(t,i,e)||"string"!=typeof n)return c.rejectPromise([]);var r=[];n.replace(/<(img src|img [^>]* src) *=\"([^\"]*)\"/gi,function(t,e,n){r.push(n)});var o=[],a=[];if(r.length){angular.forEach(r,function(t){o.push(c.urlToBlob(t).then(function(t){a.push(t)}))});var s=u.defer();return u.all(o).then(function(){s.resolve(a)},function(t){s.reject(t)}),s.promise}return c.emptyPromise()}(r,o).then(function(t){b(t,n)})})}}function b(t,n){c.updateModel(r,i,e,p("ngfChange")||p("ngfDrop"),t,n)}}(o,s,c,l,e,n,i,r,0,a)}}}]),i.directive("ngfNoFileDrop",function(){return function(e,n){t()&&n.css("display","none")}}),i.directive("ngfDropAvailable",["$parse","$timeout","Upload",function(e,n,i){return function(r,o,a){if(t()){var s=e(i.attrGetter("ngfDropAvailable",a));n(function(){s(r),s.assign&&s.assign(r,!0)})}}}])}(),i.service("UploadExif",["UploadResize","$q",function(t,e){var n=t;return n.isExifSupported=function(){return window.FileReader&&(new FileReader).readAsArrayBuffer&&n.isResizeSupported()},n.readOrientation=function(t){var n=e.defer(),i=new FileReader,r=t.slice?t.slice(0,65536):t;return i.readAsArrayBuffer(r),i.onerror=function(t){return n.reject(t)},i.onload=function(t){var e={orientation:1},i=new DataView(this.result);if(65496!==i.getUint16(0,!1))return n.resolve(e);for(var r=i.byteLength,o=2;o<r;){var a=i.getUint16(o,!1);if(o+=2,65505===a){if(1165519206!==i.getUint32(o+=2,!1))return n.resolve(e);var s=18761===i.getUint16(o+=6,!1);o+=i.getUint32(o+4,s);var c=i.getUint16(o,s);o+=2;for(var l=0;l<c;l++)if(274===i.getUint16(o+12*l,s)){var u=i.getUint16(o+12*l+8,s);return u>=2&&u<=8&&(i.setUint16(o+12*l+8,1,s),e.fixedArrayBuffer=t.target.result),e.orientation=u,n.resolve(e)}}else{if(65280!=(65280&a))break;o+=i.getUint16(o,!1)}}return n.resolve(e)},n.promise},n.applyExifRotation=function(t){if(0!==t.type.indexOf("image/jpeg"))return n.emptyPromise(t);var i=e.defer();return n.readOrientation(t).then(function(e){if(e.orientation<2||e.orientation>8)return i.resolve(t);n.dataUrl(t,!0).then(function(r){var o=document.createElement("canvas"),a=document.createElement("img");a.onload=function(){try{o.width=e.orientation>4?a.height:a.width,o.height=e.orientation>4?a.width:a.height;var r=o.getContext("2d");!function(t,e,n,i){switch(e){case 2:return t.transform(-1,0,0,1,n,0);case 3:return t.transform(-1,0,0,-1,n,i);case 4:return t.transform(1,0,0,-1,0,i);case 5:return t.transform(0,1,1,0,0,0);case 6:return t.transform(0,1,-1,0,i,0);case 7:return t.transform(0,-1,-1,0,i,n);case 8:t.transform(0,-1,1,0,0,n)}}(r,e.orientation,a.width,a.height),r.drawImage(a,0,0);var s=o.toDataURL(t.type||"image/WebP",.934);s=n.restoreExif(function(t){for(var e="",n=new Uint8Array(t),i=n.byteLength,r=0;r<i;r++)e+=String.fromCharCode(n[r]);return window.btoa(e)}(e.fixedArrayBuffer),s);var c=n.dataUrltoBlob(s,t.name);i.resolve(c)}catch(t){return i.reject(t)}},a.onerror=function(){i.reject()},a.src=r},function(t){i.reject(t)})},function(t){i.reject(t)}),i.promise},n.restoreExif=function(t,e){return{KEY_STR:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",encode64:function(t){var e,n,i,r,o,a="",s="",c="",l=0;do{i=(e=t[l++])>>2,r=(3&e)<<4|(n=t[l++])>>4,o=(15&n)<<2|(s=t[l++])>>6,c=63&s,isNaN(n)?o=c=64:isNaN(s)&&(c=64),a=a+this.KEY_STR.charAt(i)+this.KEY_STR.charAt(r)+this.KEY_STR.charAt(o)+this.KEY_STR.charAt(c),e=n=s="",i=r=o=c=""}while(l<t.length);return a},restore:function(t,e){t.match("data:image/jpeg;base64,")&&(t=t.replace("data:image/jpeg;base64,",""));var n=this.decode64(t),i=this.slice2Segments(n),r=this.exifManipulation(e,i);return"data:image/jpeg;base64,"+this.encode64(r)},exifManipulation:function(t,e){var n=this.getExifArray(e),i=this.insertExif(t,n);return new Uint8Array(i)},getExifArray:function(t){for(var e,n=0;n<t.length;n++)if(255===(e=t[n])[0]&225===e[1])return e;return[]},insertExif:function(t,e){var n=t.replace("data:image/jpeg;base64,",""),i=this.decode64(n),r=i.indexOf(255,3),o=i.slice(0,r),a=i.slice(r),s=o;return(s=s.concat(e)).concat(a)},slice2Segments:function(t){for(var e=0,n=[];!(255===t[e]&218===t[e+1]);){if(255===t[e]&216===t[e+1])e+=2;else{var i=e+(256*t[e+2]+t[e+3])+2,r=t.slice(e,i);n.push(r),e=i}if(e>t.length)break}return n},decode64:function(t){var e,n,i,r,o="",a="",s=0,c=[];/[^A-Za-z0-9\+\/\=]/g.exec(t)&&console.log("There were invalid base64 characters in the input text.\nValid base64 characters are A-Z, a-z, 0-9, NaNExpect errors in decoding."),t=t.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{e=this.KEY_STR.indexOf(t.charAt(s++))<<2|(i=this.KEY_STR.indexOf(t.charAt(s++)))>>4,n=(15&i)<<4|(r=this.KEY_STR.indexOf(t.charAt(s++)))>>2,o=(3&r)<<6|(a=this.KEY_STR.indexOf(t.charAt(s++))),c.push(e),64!==r&&c.push(n),64!==a&&c.push(o),e=n=o="",i=r=a=""}while(s<t.length);return c}}.restore(t,e)},n}])}).call(this,n(19),n(19))},function(t,e,n){(function(n){
  2365. /**
  2366. * oclazyload - Load modules on demand (lazy load) with angularJS
  2367. * @version v1.0.10
  2368. * @link https://github.com/ocombe/ocLazyLoad
  2369. * @license MIT
  2370. * @author Olivier Combe <olivier.combe@gmail.com>
  2371. */
  2372. !function(n,i){"use strict";var r=["ng","oc.lazyLoad"],o={},a=[],s=[],c=[],l=[],u=n.noop,d={},p=[];n.module("oc.lazyLoad",["ng"]).provider("$ocLazyLoad",["$controllerProvider","$provide","$compileProvider","$filterProvider","$injector","$animateProvider",function(t,e,h,m,v,y){var b={},w={$controllerProvider:t,$compileProvider:h,$filterProvider:m,$provide:e,$injector:v,$animateProvider:y},S=!1,x=!1,M=[],E={};M.push=function(t){-1===this.indexOf(t)&&Array.prototype.push.apply(this,arguments)},this.config=function(t){n.isDefined(t.modules)&&(n.isArray(t.modules)?n.forEach(t.modules,function(t){b[t.name]=t}):b[t.modules.name]=t.modules),n.isDefined(t.debug)&&(S=t.debug),n.isDefined(t.events)&&(x=t.events)},this._init=function(t){if(0===s.length){var e=[t],o=["ng:app","ng-app","x-ng-app","data-ng-app"],a=/\sng[:\-]app(:\s*([\w\d_]+);?)?\s/,c=function(t){return t&&e.push(t)};n.forEach(o,function(e){o[e]=!0,c(document.getElementById(e)),e=e.replace(":","\\:"),void 0!==t[0]&&t[0].querySelectorAll&&(n.forEach(t[0].querySelectorAll("."+e),c),n.forEach(t[0].querySelectorAll("."+e+"\\:"),c),n.forEach(t[0].querySelectorAll("["+e+"]"),c))}),n.forEach(e,function(e){if(0===s.length){var i=" "+t.className+" ",r=a.exec(i);r?s.push((r[2]||"").replace(/\s+/g,",")):n.forEach(e.attributes,function(t){0===s.length&&o[t.name]&&s.push(t.value)})}})}0!==s.length||(i.jasmine||i.mocha)&&n.isDefined(n.mock)||console.error("No module found during bootstrap, unable to init ocLazyLoad. You should always use the ng-app directive or angular.boostrap when you use ocLazyLoad."),n.forEach(s,function(t){!function t(e){if(-1===r.indexOf(e)){r.push(e);var i=n.module(e);_(null,i._invokeQueue,e),_(null,i._configBlocks,e),n.forEach(i.requires,t)}}(t)}),s=[],l.pop()};var C=function(t){try{return JSON.stringify(t)}catch(i){var e=[];return JSON.stringify(t,function(t,i){if(n.isObject(i)&&null!==i){if(-1!==e.indexOf(i))return;e.push(i)}return i})}},A=function(t){var e,n,i=0;if(0==t.length)return i;for(e=0,n=t.length;e<n;e++)i=(i<<5)-i+t.charCodeAt(e),i|=0;return i};function T(t,e,i){if(e){var o,a,s,l=[];for(o=e.length-1;o>=0;o--)if(a=e[o],n.isString(a)||(a=P(a)),a&&-1===p.indexOf(a)&&(!b[a]||-1!==c.indexOf(a))){var h=-1===r.indexOf(a);if(s=g(a),h&&(r.push(a),T(t,s.requires,i)),s._runBlocks.length>0)for(d[a]=[];s._runBlocks.length>0;)d[a].push(s._runBlocks.shift());n.isDefined(d[a])&&(h||i.rerun)&&(l=l.concat(d[a])),_(t,s._invokeQueue,a,i.reconfig),_(t,s._configBlocks,a,i.reconfig),u(h?"ocLazyLoad.moduleLoaded":"ocLazyLoad.moduleReloaded",a),e.pop(),p.push(a)}var f=t.getInstanceInjector();n.forEach(l,function(t){f.invoke(t)})}}function O(t,e){var i=t[2][0],r=t[1],a=!1;n.isUndefined(o[e])&&(o[e]={}),n.isUndefined(o[e][r])&&(o[e][r]={});var s=function(t,i){o[e][r].hasOwnProperty(t)||(o[e][r][t]=[]),function(t,e){var i,r=!0;return e.length&&(i=c(t),n.forEach(e,function(t){r=r&&c(t)!==i})),r}(i,o[e][r][t])&&(a=!0,o[e][r][t].push(i),u("ocLazyLoad.componentLoaded",[e,r,t]))};function c(t){return n.isArray(t)?A(t.toString()):n.isObject(t)?A(C(t)):n.isDefined(t)&&null!==t?A(t.toString()):t}if(n.isString(i))s(i,t[2][1]);else{if(!n.isObject(i))return!1;n.forEach(i,function(t,e){n.isString(t)?s(t,i[1]):s(e,t)})}return a}function _(t,e,i,r){var o,s,c,l;if(e)for(o=0,s=e.length;o<s;o++)if(c=e[o],n.isArray(c)){if(null!==t){if(!t.hasOwnProperty(c[0]))throw new Error("unsupported provider "+c[0]);l=t[c[0]]}var u=O(c,i);if("invoke"!==c[1])u&&n.isDefined(l)&&l[c[1]].apply(l,c[2]);else{var d=function(t){var e=a.indexOf(i+"-"+t);(-1===e||r)&&(-1===e&&a.push(i+"-"+t),n.isDefined(l)&&l[c[1]].apply(l,c[2]))};if(n.isFunction(c[2][0]))d(c[2][0]);else if(n.isArray(c[2][0]))for(var p=0,h=c[2][0].length;p<h;p++)n.isFunction(c[2][0][p])&&d(c[2][0][p])}}}function P(t){var e=null;return n.isString(t)?e=t:n.isObject(t)&&t.hasOwnProperty("name")&&n.isString(t.name)&&(e=t.name),e}function I(t){if(!n.isString(t))return!1;try{return g(t)}catch(t){if(/No module/.test(t)||t.message.indexOf("$injector:nomod")>-1)return!1}}this.$get=["$log","$rootElement","$rootScope","$cacheFactory","$q",function(t,e,i,a,c){var d,h=a("ocLazyLoad");function m(e){var n=c.defer();return t.error(e.message),n.reject(e),n.promise}return S||((t={}).error=n.noop,t.warn=n.noop,t.info=n.noop),w.getInstanceInjector=function(){return d||(d=e.data("$injector")||n.injector())},{_broadcast:u=function(e,n){x&&i.$broadcast(e,n),S&&t.info(e,n)},_$log:t,_getFilesCache:function(){return h},toggleWatch:function(t){t?l.push(!0):l.pop()},getModuleConfig:function(t){if(!n.isString(t))throw new Error("You need to give the name of the module to get");return b[t]?n.copy(b[t]):null},setModuleConfig:function(t){if(!n.isObject(t))throw new Error("You need to give the module config object to set");return b[t.name]=t,t},getModules:function(){return r},isLoaded:function(t){var e=function(t){var e=r.indexOf(t)>-1;return e||(e=!!I(t)),e};if(n.isString(t)&&(t=[t]),n.isArray(t)){var i,o;for(i=0,o=t.length;i<o;i++)if(!e(t[i]))return!1;return!0}throw new Error("You need to define the module(s) name(s)")},_getModuleName:P,_getModule:function(t){try{return g(t)}catch(e){throw(/No module/.test(e)||e.message.indexOf("$injector:nomod")>-1)&&(e.message='The module "'+C(t)+'" that you are trying to load does not exist. '+e.message),e}},moduleExists:I,_loadDependencies:function(t,e){var i,r,o,a=[],s=this;if(null===(t=s._getModuleName(t)))return c.when();try{i=s._getModule(t)}catch(t){return m(t)}return r=s.getRequires(i),n.forEach(r,function(i){if(n.isString(i)){var r=s.getModuleConfig(i);if(null===r)return void M.push(i);i=r,r.name=void 0}if(s.moduleExists(i.name))return 0!==(o=i.files.filter(function(t){return s.getModuleConfig(i.name).files.indexOf(t)<0})).length&&s._$log.warn('Module "',t,'" attempted to redefine configuration for dependency. "',i.name,'"\n Additional Files Loaded:',o),n.isDefined(s.filesLoader)?void a.push(s.filesLoader(i,e).then(function(){return s._loadDependencies(i)})):m(new Error("Error: New dependencies need to be loaded from external files ("+i.files+"), but no loader has been defined."));if(n.isArray(i)){var c=[];n.forEach(i,function(t){var e=s.getModuleConfig(t);null===e?c.push(t):e.files&&(c=c.concat(e.files))}),c.length>0&&(i={files:c})}else n.isObject(i)&&i.hasOwnProperty("name")&&i.name&&(s.setModuleConfig(i),M.push(i.name));if(n.isDefined(i.files)&&0!==i.files.length){if(!n.isDefined(s.filesLoader))return m(new Error('Error: the module "'+i.name+'" is defined in external files ('+i.files+"), but no loader has been defined."));a.push(s.filesLoader(i,e).then(function(){return s._loadDependencies(i)}))}}),c.all(a)},inject:function(t){var e=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],i=!(arguments.length<=2||void 0===arguments[2])&&arguments[2],r=this,o=c.defer();if(n.isDefined(t)&&null!==t){if(n.isArray(t)){var a=[];return n.forEach(t,function(t){a.push(r.inject(t,e,i))}),c.all(a)}r._addToLoadList(r._getModuleName(t),!0,i)}if(s.length>0){var l=s.slice();!function t(n){M.push(n),E[n]=o.promise,r._loadDependencies(n,e).then(function(){try{p=[],T(w,M,e)}catch(t){return r._$log.error(t.message),void o.reject(t)}s.length>0?t(s.shift()):o.resolve(l)},function(t){o.reject(t)})}(s.shift())}else{if(e&&e.name&&E[e.name])return E[e.name];o.resolve()}return o.promise},getRequires:function(t){var e=[];return n.forEach(t.requires,function(t){-1===r.indexOf(t)&&e.push(t)}),e},_invokeQueue:_,_registerInvokeList:O,_register:T,_addToLoadList:f,_unregister:function(t){n.isDefined(t)&&n.isArray(t)&&n.forEach(t,function(t){o[t]=void 0})}}}],this._init(n.element(i.document))}]);var h=n.bootstrap;n.bootstrap=function(t,e,i){return r=["ng","oc.lazyLoad"],o={},a=[],s=[],c=[],l=[],u=n.noop,d={},p=[],n.forEach(e.slice(),function(t){f(t,!0,!0)}),h(t,e,i)};var f=function(t,e,i){(l.length>0||e)&&n.isString(t)&&-1===s.indexOf(t)&&(s.push(t),i&&c.push(t))},g=n.module;n.module=function(t,e,n){return f(t,!1,!0),g(t,e,n)},t.exports===e&&(t.exports="oc.lazyLoad")}(angular,window),function(t){"use strict";t.module("oc.lazyLoad").directive("ocLazyLoad",["$ocLazyLoad","$compile","$animate","$parse","$timeout",function(e,n,i,r,o){return{restrict:"A",terminal:!0,priority:1e3,compile:function(o,a){var s=o[0].innerHTML;return o.html(""),function(o,a,c){var l=r(c.ocLazyLoad);o.$watch(function(){return l(o)||c.ocLazyLoad},function(r){t.isDefined(r)&&e.load(r).then(function(){i.enter(s,a),n(a.contents())(o)})},!0)}}}}])}(angular),function(t){"use strict";t.module("oc.lazyLoad").config(["$provide",function(e){e.decorator("$ocLazyLoad",["$delegate","$q","$window","$interval",function(e,i,r,o){var a=!1,s=r.document.getElementsByTagName("head")[0]||r.document.getElementsByTagName("body")[0];return e.buildElement=function(c,l,u){var d,p,h=i.defer(),f=e._getFilesCache(),g=function(t){var e=(new Date).getTime();return t.indexOf("?")>=0?"&"===t.substring(0,t.length-1)?t+"_dc="+e:t+"&_dc="+e:t+"?_dc="+e};switch(t.isUndefined(f.get(l))&&f.put(l,h.promise),c){case"css":(d=r.document.createElement("link")).type="text/css",d.rel="stylesheet",d.href=!1===u.cache?g(l):l;break;case"js":(d=r.document.createElement("script")).src=!1===u.cache?g(l):l;break;default:f.remove(l),h.reject(new Error('Requested type "'+c+'" is not known. Could not inject "'+l+'"'))}d.onload=d.onreadystatechange=function(t){d.readyState&&!/^c|loade/.test(d.readyState)||p||(d.onload=d.onreadystatechange=null,p=1,e._broadcast("ocLazyLoad.fileLoaded",l),h.resolve(d))},d.onerror=function(){f.remove(l),h.reject(new Error("Unable to load "+l))},d.async=u.serie?0:1;var m=s.lastChild;if(u.insertBefore){var v=t.element(t.isDefined(n)?u.insertBefore:document.querySelector(u.insertBefore));v&&v.length>0&&(m=v[0])}if(m.parentNode.insertBefore(d,m),"css"==c){var y=r.navigator.userAgent.toLowerCase();if(y.indexOf("phantomjs/1.9")>-1)a=!0;else if(/iP(hone|od|ad)/.test(r.navigator.platform)){var b=r.navigator.appVersion.match(/OS (\d+)_(\d+)_?(\d+)?/),w=parseFloat([parseInt(b[1],10),parseInt(b[2],10),parseInt(b[3]||0,10)].join("."));a=w<6}else if(y.indexOf("android")>-1){var S=parseFloat(y.slice(y.indexOf("android")+8));a=S<4.4}else if(y.indexOf("safari")>-1){var x=y.match(/version\/([\.\d]+)/i);a=x&&x[1]&&parseFloat(x[1])<6}if(a)var M=1e3,E=o(function(){try{d.sheet.cssRules,o.cancel(E),d.onload()}catch(t){--M<=0&&d.onerror()}},20)}return h.promise},e}])}])}(angular),function(t){"use strict";t.module("oc.lazyLoad").config(["$provide",function(e){e.decorator("$ocLazyLoad",["$delegate","$q",function(e,n){return e.filesLoader=function(i){var r=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],o=[],a=[],s=[],c=[],l=null,u=e._getFilesCache();e.toggleWatch(!0),t.extend(r,i);var d=function(n){var i,d=null;if(t.isObject(n)&&(d=n.type,n=n.path),l=u.get(n),t.isUndefined(l)||!1===r.cache){if(null!==(i=/^(css|less|html|htm|js)?(?=!)/.exec(n))&&(d=i[1],n=n.substr(i[1].length+1,n.length)),!d)if(null!==(i=/[.](css|less|html|htm|js)?((\?|#).*)?$/.exec(n)))d=i[1];else{if(e.jsLoader.hasOwnProperty("ocLazyLoadLoader")||!e.jsLoader.hasOwnProperty("requirejs"))return void e._$log.error("File type could not be determined. "+n);d="js"}"css"!==d&&"less"!==d||-1!==o.indexOf(n)?"html"!==d&&"htm"!==d||-1!==a.indexOf(n)?"js"===d||-1===s.indexOf(n)?s.push(n):e._$log.error("File type is not valid. "+n):a.push(n):o.push(n)}else l&&c.push(l)};if(r.serie?d(r.files.shift()):t.forEach(r.files,function(t){d(t)}),o.length>0){var p=n.defer();e.cssLoader(o,function(n){t.isDefined(n)&&e.cssLoader.hasOwnProperty("ocLazyLoadLoader")?(e._$log.error(n),p.reject(n)):p.resolve()},r),c.push(p.promise)}if(a.length>0){var h=n.defer();e.templatesLoader(a,function(n){t.isDefined(n)&&e.templatesLoader.hasOwnProperty("ocLazyLoadLoader")?(e._$log.error(n),h.reject(n)):h.resolve()},r),c.push(h.promise)}if(s.length>0){var f=n.defer();e.jsLoader(s,function(n){t.isDefined(n)&&(e.jsLoader.hasOwnProperty("ocLazyLoadLoader")||e.jsLoader.hasOwnProperty("requirejs"))?(e._$log.error(n),f.reject(n)):f.resolve()},r),c.push(f.promise)}if(0===c.length){var g=n.defer(),m="Error: no file to load has been found, if you're trying to load an existing module you should use the 'inject' method instead of 'load'.";return e._$log.error(m),g.reject(m),g.promise}return r.serie&&r.files.length>0?n.all(c).then(function(){return e.filesLoader(i,r)}):n.all(c).finally(function(t){return e.toggleWatch(!1),t})},e.load=function(i){var r,o=arguments.length<=1||void 0===arguments[1]?{}:arguments[1],a=this,s=null,c=[],l=n.defer(),u=t.copy(i),d=t.copy(o);if(t.isArray(u))return t.forEach(u,function(t){c.push(a.load(t,d))}),n.all(c).then(function(t){l.resolve(t)},function(t){l.reject(t)}),l.promise;if(t.isString(u)?(s=a.getModuleConfig(u))||(s={files:[u]}):t.isObject(u)&&(s=t.isDefined(u.path)&&t.isDefined(u.type)?{files:[u]}:a.setModuleConfig(u)),null===s)return r='Module "'+(a._getModuleName(u)||"unknown")+'" is not configured, cannot load.',e._$log.error(r),l.reject(new Error(r)),l.promise;t.isDefined(s.template)&&(t.isUndefined(s.files)&&(s.files=[]),t.isString(s.template)?s.files.push(s.template):t.isArray(s.template)&&s.files.concat(s.template));var p=t.extend({},d,s);return t.isUndefined(s.files)&&t.isDefined(s.name)&&e.moduleExists(s.name)?e.inject(s.name,p,!0):(e.filesLoader(s,p).then(function(){e.inject(null,p).then(function(t){l.resolve(t)},function(t){l.reject(t)})},function(t){l.reject(t)}),l.promise)},e}])}])}(angular),function(t){"use strict";t.module("oc.lazyLoad").config(["$provide",function(e){e.decorator("$ocLazyLoad",["$delegate","$q",function(e,n){return e.cssLoader=function(i,r,o){var a=[];t.forEach(i,function(t){a.push(e.buildElement("css",t,o))}),n.all(a).then(function(){r()},function(t){r(t)})},e.cssLoader.ocLazyLoadLoader=!0,e}])}])}(angular),function(t){"use strict";t.module("oc.lazyLoad").config(["$provide",function(e){e.decorator("$ocLazyLoad",["$delegate","$q",function(e,n){return e.jsLoader=function(i,r,o){var a=[];t.forEach(i,function(t){a.push(e.buildElement("js",t,o))}),n.all(a).then(function(){r()},function(t){r(t)})},e.jsLoader.ocLazyLoadLoader=!0,e}])}])}(angular),function(t){"use strict";t.module("oc.lazyLoad").config(["$provide",function(e){e.decorator("$ocLazyLoad",["$delegate","$templateCache","$q","$http",function(e,n,i,r){return e.templatesLoader=function(o,a,s){var c=[],l=e._getFilesCache();return t.forEach(o,function(e){var o=i.defer();c.push(o.promise),r.get(e,s).then(function(i){var r=i.data;t.isString(r)&&r.length>0&&t.forEach(t.element(r),function(t){"SCRIPT"===t.nodeName&&"text/ng-template"===t.type&&n.put(t.id,t.innerHTML)}),t.isUndefined(l.get(e))&&l.put(e,!0),o.resolve()}).catch(function(t){o.reject(new Error('Unable to load template file "'+e+'": '+t.data))})}),i.all(c).then(function(){a()},function(t){a(t)})},e.templatesLoader.ocLazyLoadLoader=!0,e}])}])}(angular),Array.prototype.indexOf||(Array.prototype.indexOf=function(t,e){var n;if(null==this)throw new TypeError('"this" is null or not defined');var i=Object(this),r=i.length>>>0;if(0===r)return-1;var o=+e||0;if(Math.abs(o)===1/0&&(o=0),o>=r)return-1;for(n=Math.max(o>=0?o:r-Math.abs(o),0);n<r;){if(n in i&&i[n]===t)return n;n++}return-1})}).call(this,n(19))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);e.ivWebApp=function(){var t=["ui.bootstrap","ngFileUpload","ui.slider","ngSanitize","gettext","LocalStorageModule","flow","ngAnimate","luegg.directives","cfp.hotkeys","angular-progress-arc","colorpicker.module","oc.lazyLoad"];return void 0!==window.IndoorViewerWebAppExtraModules&&(t=t.concat(window.IndoorViewerWebAppExtraModules)),i.module("IVWebApp",t)}(),window.IndoorViewerWebApp=e.ivWebApp,n(949)},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(950),n(956);var i=n(957);i.keys().forEach(i),n(994),n(995),n(996),n(997),n(998),n(999),n(1e3),n(1001),n(1002),n(1003),n(1004),n(1005),n(1007),n(1009),n(15),n(1245),n(1249),n(1250),n(1251),n(1252),n(1253),n(187),n(397),n(389),n(424),n(1254),n(1256),n(1258),n(405),n(91),n(1260),n(1265),n(50),n(49),n(404),n(562),n(201),n(86),n(1269),n(1272),n(1284),n(1288),n(1294),n(1298),n(454),n(1312),n(1314),n(139),n(200),n(104),n(1318),n(259),n(1320),n(73),n(1324),n(14),n(41),n(17),n(271),n(21),n(598),n(231),n(1376),n(140),n(1377),n(1378),n(1379),n(1380),n(1381),n(1382),n(1384),n(1385),n(1386),n(1387),n(1388),n(410),n(1401),n(1417),n(1463),n(1467),n(1494),n(1579),n(1585),n(1587),n(1665),n(1666)},function(t,e,n){var i=n(11),r=n(951);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){var i=n(10),r=n(211),o=n(515),a=n(516),s=n(517),c=n(952),l=n(953),u=n(954),d=n(955);e=i(!1);var p=r(o),h=r(a),f=r(s),g=r(c),m=r(l),v=r(u),y=r(d);e.push([t.i,".indoorViewer.mobile-small .non-mobile{display:none}.indoorViewer.mobile-small #status-check-wrapper .panel{width:calc(100% - 20px)}.indoorViewer.mobile-small #swap-scenes-mobile{width:3em;height:3em;max-height:none;padding:0 .6em;transition:transform .2s;right:10px;bottom:10px}.indoorViewer.mobile-small #swap-scenes-mobile,.indoorViewer.mobile-small #swap-scenes-mobile:active{position:absolute!important}.indoorViewer.mobile-small #swap-scenes-mobile.map{transform:translate3d(0,-20px,0)}.indoorViewer.mobile-small #swap-scenes-mobile.map>img{margin-bottom:1px}.indoorViewer.mobile-small #swap-scenes-mobile.slide-down{transform:translate3d(0,calc(20px + 3em),0)}.indoorViewer.mobile-small #swap-scenes-mobile>img{width:1.8em}.indoorViewer.mobile-small #mapZoomControls{bottom:2em}.indoorViewer.mobile-small #insetPanel{visibility:hidden}.indoorViewer.mobile-small #floorChanger{z-index:4}.indoorViewer.mobile-small #floorChanger button{width:3em;overflow:hidden;padding-left:2px;padding-right:2px}.indoorViewer.mobile-small #left-panel-pois{max-width:100%;transition:max-width .2s}.indoorViewer.mobile-small .context-menu-list{z-index:16!important}.indoorViewer.mobile-small .modal-dialog-licenseText{padding-left:10px;padding-right:10px}.indoorViewer.mobile-small .modal-dialog-licenseText .panel-autoscroll{max-height:none}.indoorViewer.mobile .non-mobile{display:none}.indoorViewer.mobile #status-check-wrapper .panel{width:calc(100% - 20px)}.indoorViewer.mobile #swap-scenes-mobile{width:3em;height:3em;max-height:none;padding:0 .6em;transition:transform .2s;right:10px;bottom:10px}.indoorViewer.mobile #swap-scenes-mobile,.indoorViewer.mobile #swap-scenes-mobile:active{position:absolute!important}.indoorViewer.mobile #swap-scenes-mobile.map{transform:translate3d(0,-20px,0)}.indoorViewer.mobile #swap-scenes-mobile.map>img{margin-bottom:1px}.indoorViewer.mobile #swap-scenes-mobile.slide-down{transform:translate3d(0,calc(20px + 3em),0)}.indoorViewer.mobile #swap-scenes-mobile>img{width:1.8em}.indoorViewer.mobile #mapZoomControls{bottom:2em}.indoorViewer.mobile #insetPanel{visibility:hidden}.indoorViewer.mobile #floorChanger{z-index:4}.indoorViewer.mobile #floorChanger button{width:3em;overflow:hidden;padding-left:2px;padding-right:2px}.indoorViewer.mobile #left-panel-pois{max-width:100%;transition:max-width .2s}.indoorViewer.mobile .context-menu-list{z-index:16!important}.indoorViewer.mobile .modal-dialog-licenseText{padding-left:10px;padding-right:10px}.indoorViewer.mobile .modal-dialog-licenseText .panel-autoscroll{max-height:none}.indoorViewer.desktop .non-desktop{display:none}.indoorViewer.desktop .modal-dialog-licenseText{padding-left:80px;padding-right:80px}.z-index-1{box-shadow:none;position:relative;z-index:1}.indoorViewer.mobile #swap-scenes-mobile,.indoorViewer.mobile #swap-scenes-mobile:active,.indoorViewer.mobile-small #swap-scenes-mobile,.indoorViewer.mobile-small #swap-scenes-mobile:active,.z-index-2{box-shadow:0 1.5px 4px rgba(0,0,0,.24),0 1.5px 6px rgba(0,0,0,.12);position:relative;z-index:5}.z-index-3{box-shadow:0 3px 12px rgba(0,0,0,.23),0 3px 12px rgba(0,0,0,.16);position:relative;z-index:10}.z-index-4{box-shadow:0 6px 12px rgba(0,0,0,.23),0 10px 40px rgba(0,0,0,.19);position:relative;z-index:15}.z-index-5{box-shadow:0 10px 20px rgba(0,0,0,.22),0 14px 56px rgba(0,0,0,.25);position:relative;z-index:20}.front-element{z-index:1031}.full-window{position:fixed;margin:0;padding:0;left:0;right:0;top:0;bottom:0;z-index:1029;border-radius:0}.full-window-scroll{max-height:100vh}.full-window-scroll,.panel-autoscroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.panel-autoscroll{max-height:80vh}.autoscroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.fixed-top-right{position:fixed;top:10px;right:0}.center-vertical{position:absolute;top:50%;transform:translateY(-50%)}.float-left{float:left}.float-right{float:right}.margin-top-small{margin-top:5px!important}.margin-left-small{margin-left:5px!important}.margin-right-small{margin-right:5px!important}.margin-bottom-small{margin-bottom:5px!important}.margin-top{margin-top:15px!important}.margin-left{margin-left:15px!important}.margin-right{margin-right:15px!important}.margin-bottom{margin-bottom:15px!important}.margin-top-big{margin-top:25px!important}.margin-bottom-big{margin-bottom:25px!important}.no-margin{margin:0!important}.no-margin-bottom{margin-bottom:0!important}.padding-horizontal{padding-left:15px!important;padding-right:15px!important}.padding-top,.padding-vertical{padding-top:15px!important}.padding-bottom,.padding-vertical{padding-bottom:15px!important}.no-padding-top{padding-top:0!important}.no-padding-bottom{padding-bottom:0!important}.no-padding-horizontal,.no-padding-left{padding-left:0!important}.no-padding-horizontal,.no-padding-right{padding-right:0!important}.no-padding{padding:0!important}.border{border:1px solid #e6e6e6}.border-top{border-top:1px solid #e6e6e6}.border-bottom{border-bottom:1px solid #e6e6e6}.border-left{border-left:1px solid #e6e6e6}.border-right{border-right:1px solid #e6e6e6}.no-border{border:none;border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.no-border-width{border:none}#mapZoomControls,.border-radius{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}#mapZoomControls,.border-radius,.border-radius-top{border-top-left-radius:4px!important;border-top-right-radius:4px!important}.border-radius-bottom{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.no-border-radius{border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.indoorViewer.ios .no-hover-ios:hover{background-color:inherit!important}.no-shadow{box-shadow:none!important}.clear-background{border:0}.clear-background,.no-background{background:none!important}.no-overflow{overflow:hidden}.clear-button,.clear-button:hover,.clickable,.clickable:hover,.link,.link:hover,.menu-close-button,.menu-close-button:hover,:hover[data-toggle~=collapse],[data-toggle~=collapse]{cursor:pointer}@font-face{font-family:Open Sans;src:url("+p+') format("woff")}@font-face{font-family:Open Sans;font-weight:700;src:url('+h+') format("woff")}@font-face{font-family:Material Icons;font-style:normal;font-weight:400;src:url('+f+') format("woff")}.material-icons{font-family:Material Icons,sans-serif;font-weight:400;font-style:normal;font-size:24px;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:"liga"}@-ms-viewport{width:auto;height:auto}body{font-family:Open Sans,sans-serif;overflow:hidden}button,button:active,button:focus,button:hover{outline:none!important}.h1,.h2,.h3,.h4,.h5,.h6,.tooltip,h1,h2,h3,h4,h5,h6{font-family:Open Sans,sans-serif}.modal-dialog.full-window{width:100%}.full-window>.modal-content{min-height:100%;display:flex;flex-direction:column}.full-window>.modal-content>.modal-body{flex-grow:1;display:flex;flex-direction:column}.full-window>.modal-content>.modal-body>.cke{flex-grow:1}#splash-screen{transition:visibility .3s,opacity .3s}.indoorViewer{position:relative;height:100%;overflow:hidden;font-size:14px;text-align:left}.indoorViewer:before{display:none;content:"styles-loaded"}.indoorViewer-scene{position:relative;margin:0;padding:0;height:100%;overflow:hidden;background-color:#000}.indoorViewerFull{position:absolute;width:100%;height:100%;overflow:hidden}indoorviewer{display:block}hr{width:100%;margin:15px 0}.relative{position:relative}.absolute-bottom{position:absolute;bottom:0}.absolute-right{position:absolute;right:0}#geo-reg-open-layers-map,.main-view,.map-view{position:absolute;width:100%;height:100%;left:0;top:0}.open-layers-map{background-color:#e5e3df}.open-layers-map.geo-reg-map .olControlZoom{margin-top:60px;margin-left:13px}.open-layers-map .olControlAttribution{right:5px!important;bottom:5px!important}.webGlMissing{position:absolute;width:100%;height:100%;left:0;top:0;padding-top:100px;background:#fff;color:#000;text-align:center}.no-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.panel>h4:first-child{margin-top:15px;margin-left:15px}.menu-close-button{position:absolute;top:10px;right:10px;width:44px;height:44px;padding:10px}.menu-close-button[disabled]{cursor:default;opacity:.65}.table tbody>tr>td,.table th{border-top-width:0}.list-group{border-radius:4px}.list-group.panel-autoscroll{margin-bottom:0}.list-group.panel-autoscroll>.list-group-item:first-child,.list-group.panel-autoscroll>.list-group-item:last-child{border-radius:0}.list-group>a{cursor:pointer}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{z-index:2;background-color:#3398c7;border-color:#3398c7}.list-group-item[disabled],.list-group-item[disabled]:active,.list-group-item[disabled]:focus,.list-group-item[disabled]:hover{color:#333;background-color:#ddd;cursor:default}.navbar-nav>li[disabled]>a,.navbar-nav>li[disabled]>a:active,.navbar-nav>li[disabled]>a:focus,.navbar-nav>li[disabled]>a:hover{color:#b5b5b5;cursor:not-allowed}.alert-item-info{display:inline-block;padding:5px 12px;cursor:default}.list-group-item.disabled,.list-group-item.disabled:focus,.list-group-item.disabled:hover{color:#777;cursor:not-allowed;background-color:#eee}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text{color:#777}.clear-button{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:15px;z-index:3}.clear-button-padding{padding-right:35px}.data-set-jump{padding-right:.3em;margin-left:1em;font-size:1.3em;display:inline-block;vertical-align:middle}.multiple-dataset-selector .list-group-item{height:4em;padding:.2em 10px;vertical-align:middle}.multiple-dataset-selector .unassigned-datasets>[role=button]{margin-bottom:10px;padding-right:60px;position:relative}alignment-toolbar>.btn-toolbar{margin-bottom:20px}.data-set-icon{padding:.5em;margin-right:.6em;border-radius:50%;display:inline-block;vertical-align:middle}.data-set-icon.thin-border{border:1px solid #fff}.data-set-icon.thin-border-dark{border:1px solid #000}.nav .dataset .data-set-icon{margin-left:.6em}.data-set-info{margin-top:.3em;overflow:hidden}.data-set-controls{float:right;margin-top:.6em}.nav .dataset input[type=checkbox]{position:absolute;top:4px}.dataset-mgmt-row{display:flex;align-items:center}.dataset-mgmt-row .delete-button{padding:0;font-size:1.2em;background-color:#fff;border-color:#ccc}.dataset-mgmt-row .delete-button i{position:relative;padding:7px 12px}.dataset-mgmt-row .delete-button,.dataset-mgmt-row .delete-button:active,.dataset-mgmt-row .delete-button:hover{color:#333}.dataset-mgmt-row .delete-button:hover{background-color:#e6e6e6;border-color:#adadad}.dataset-mgmt-row .delete-button:active{background-color:#d4d4d4;border-color:#8c8c8c}.dataset-mgmt-row>div{margin:.2em 0 .2em .8em}.dataset-mgmt-icon{padding:.5em;border-radius:50%}.dataset-mgmt-name{font-size:.8em;color:#a2a2a2;margin-top:.1em;text-overflow:ellipsis;overflow-x:hidden}user-editor .modal-content.panel-autoscroll{max-height:calc(100vh - 20px)}#save-user-modal .panel-heading .panel-title{padding-left:0}.exit-icon{font-size:25px;cursor:pointer}#settings-config-panel>.panel-heading>.control-buttons{text-align:right}#settings-config-panel>.panel-body{padding-top:68px}#settings-config-panel textarea{resize:vertical}#settings-config-panel .alert a{word-wrap:break-word}.vertical-menu:not(.sticky-headers-enabled) #settings-config-panel>.panel-body{padding-top:15px}.control-buttons>button[disabled]{opacity:.25}#settings-groups-panel button:focus,#settings-users-panel button:focus{outline:none}#settings-groups-panel>.panel-footer,#settings-users-panel>.panel-footer{text-align:right;background-color:transparent}#settings-users-panel select{padding:0}#settings-users-panel option{padding:5px 10px;min-height:29px}.iv-panel-warning{display:table;margin-bottom:0}.iv-panel-warning.margin-top-no-search-box{margin-top:52px}.iv-panel-warning>*{display:table-cell;vertical-align:middle;padding:0 10px}.panel-control-button{position:relative;outline:none!important;transition:background-color .2s,border-color .2s}.panel-control-button.in-progress,.panel-control-button.in-progress:active,.panel-control-button.in-progress:focus,.panel-control-button.in-progress:hover{background-color:rgba(51,51,51,.1);border-color:rgba(51,51,51,.1)}.panel-control-button>.spinner{opacity:0}.panel-control-button.in-progress>.spinner{opacity:1}.footer .panel-control-button+.panel-control-button,.modal-footer .panel-control-button+.panel-control-button,.panel-footer .panel-control-button+.panel-control-button{margin-left:5px;margin-bottom:0}.undo-button>span:before{font-family:FontAwesome;content:"\\f0e2";margin-right:4px}.move-button>span:before{font-family:FontAwesome;content:"\\f047";margin-right:4px}.dataset-select-color>option[value*="string:"]{display:none}.form-control{box-shadow:none}.form-control:focus{outline:0}select:-moz-focusring{color:transparent;text-shadow:0 0 0 #000}label{cursor:pointer}.normal-font{font-weight:400}.dropdown-menu{overflow-y:auto;-webkit-overflow-scrolling:touch;max-height:calc(100vh - 62px);padding:0;margin:0;box-sizing:content-box;overflow-x:hidden;text-align:left;border:none;border-top:1px solid #e6e6e6;border-radius:0 0 4px 4px;box-shadow:0 1.5px 4px rgba(0,0,0,.24)}.dropdown-menu.dropdown-margin-bottom-extended li:last-child{margin-bottom:60vh}.dropdown-menu.dropdown-menu-item-separators>li:not(.divider):not(:last-child){border-bottom:1px solid #e6e6e6}.dropdown-menu.dropdown-center{left:50%;transform:translateX(-50%);right:auto}.dropdown-menu>li{padding:.8em;white-space:nowrap;cursor:pointer}.dropdown-menu>li.divider{padding:0;margin:0}.dropdown-menu>li.active,.dropdown-menu>li:focus,.dropdown-menu>li:hover{background-color:#e6e6e6}.dropdown-menu>li:focus,.dropdown-menu>li>a:focus{outline:none}.dropdown-menu>li>a{padding:0;color:inherit!important;background-color:inherit!important}.dropdown-menu .dropdown-label{padding:0}.dropdown-menu .dropdown-label label{padding:.8em;margin:0;font-weight:400;width:100%;height:100%}.panel-title{font-weight:700}.long-title{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.header-icon{margin-right:.5em}.panel-heading>.row>.col-xs-6{width:auto}.glyphicon-share-alt{top:3px}.btn:focus{outline:none}.btn-danger,.btn-default,.btn-primary{padding:5px 12px;max-height:32px}.btn-default.dropdown-toggle{max-height:none;white-space:normal}.btn-borderless,.btn-borderless:active,.btn-borderless:focus,.btn-borderless[disabled]{border-color:transparent;background-color:transparent}.btn-borderless:active:focus:hover,.btn-borderless:active:hover,.btn-borderless:focus:focus:hover,.btn-borderless:focus:hover,.btn-borderless:hover,.btn-borderless[disabled]:focus:hover,.btn-borderless[disabled]:hover{border-color:#adadad;background-color:#e6e6e6}.panel-heading.user-logged-in{font-size:15px}.groups-tree{border-left:1px solid #ddd;border-right:1px solid #ddd;border-bottom:1px solid #ddd;cursor:default}.groups-tree .dropdown-menu{margin:0!important}.groups-tree .indent{margin-left:19px}.groups-tree .group-name{line-height:32px;margin-left:5px}.groups-tree .check-icon{margin:0 5px}.groups-tree .check-icon.check-enabled{cursor:pointer}.groups-tree .group-in-adding>.group-left-controls,.groups-tree .group-in-edit>.group-left-controls{width:100%}.groups-tree .list-group-item .group-left-controls{float:left}.groups-tree .list-group-item>.group-right-controls{min-height:34px;text-align:right}.groups-tree .list-group-item>.group-right-controls>.dropdown{margin-right:5px}.groups-tree .list-group-item>.group-right-controls>.dropdown>button{color:#000;background-color:#ebebeb;border-color:#ebebeb;box-shadow:none}.groups-tree .list-group-item>.group-right-controls>.dropdown>button:active{background-color:#e1e1e1;border-color:#e1e1e1}.groups-tree .list-group-item>.group-right-controls>.dropdown>button:disabled{opacity:.8}.groups-tree .list-group-item>.group-right-controls>.dropdown.open>button{background-color:#e1e1e1;border-color:#e1e1e1}.groups-tree .list-group-item>.group-right-controls>.dropdown-menu{margin-right:5px}.groups-tree .list-group-item>.group-right-controls>.dropdown-menu>li.disabled{color:rgba(0,0,0,.5)}.groups-tree .list-group-item.group-added>.group-right-controls>.dropdown>button{color:#fff;background-color:#52a552;border-color:#52a552}.groups-tree .list-group-item.group-added>.group-right-controls>.dropdown>button:active{background-color:#499349;border-color:#499349}.groups-tree .list-group-item.group-added>.group-right-controls>.dropdown>button>.caret{border-top-color:#fff}.groups-tree .list-group-item.group-added>.group-right-controls>.dropdown.open>button{background-color:#499349;border-color:#499349}.groups-tree .list-group-item.group-selected>.group-right-controls>.dropdown>button{color:#fff;background-color:#3b7db5;border-color:#3b7db5}.groups-tree .list-group-item.group-selected>.group-right-controls>.dropdown>button:active{background-color:#2f6490;border-color:#2f6490}.groups-tree .list-group-item.group-selected>.group-right-controls>.dropdown>button>.caret{border-top-color:#fff}.groups-tree .list-group-item.group-selected>.group-right-controls>.dropdown.open>button{background-color:#2f6490;border-color:#2f6490}.groups-tree .group-left-controls input{box-shadow:none}.groups-tree .group-left-controls input:focus{outline:none}.groups-tree .group-left-controls button{min-width:40px}.groups-tree .group-left-controls button:active{box-shadow:none}.groups-tree .group-left-controls button:focus{outline:none}.groups-tree .list-group{margin-top:5px!important;margin-bottom:0!important}.groups-tree .list-group-item{color:#000;background-color:#fff;min-height:44px;padding:5px 0 5px 15px;border-left-width:0;border-right-width:0}.groups-tree .group-hover{background-color:#f5f5f5}.groups-tree .group-added.group-hover{background-color:#6cbf6c}.groups-tree .group-selected.group-hover{background-color:#5496cf}.groups-tree .group-disabled:hover{background-color:#f5f5f5;cursor:not-allowed}.groups-tree .list-group-item.group-expanded{padding-bottom:0;border-bottom-width:0}.groups-tree .list-group-item:first-child,.groups-tree .list-group-item:last-child{border-radius:0}.groups-tree .list-group-item:last-child{border-bottom-width:0}.groups-tree>.list-group-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.groups-tree>.list-group-item:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px}.groups-tree .group-added{color:#fff;background-color:#5cb85c}.groups-tree .group-semi-checked{color:rgba(0,0,0,.5)}.groups-tree .group-selected{color:#fff;background-color:#428bca}.groups-tree .group-disabled{color:rgba(0,0,0,.5);background-color:#f5f5f5}.row .align-text{margin-top:7px}.row .align-slider{margin-top:12px;margin-bottom:12px}.row .align-textbox{margin-bottom:5px}#measurementsPanel .panel{z-index:4!important}#measurementsPanel .panel.padding-left-menu-icon .panel-heading{padding-left:50px}#measurementsPanel .panel .panel-footer{background-color:#fff}#measurementsPanel .panel .panel-footer button{display:block;float:right;margin-left:5px}#insetPanel{position:absolute;right:0;bottom:0;width:25%;height:15%;z-index:7;min-width:10em;min-height:10em;margin:10px;border:none;background-color:#000;transition:width .2s,height .2s,margin-bottom .2s;transition-delay:.1s,.1s,0s}#insetPanel.hover,#insetPanel.opened-context-menu,#insetPanel:hover{width:calc(50% - 10px);height:calc(50% - 10px)}#insetPanel.hover.transition-hover-longer-delay,#insetPanel.opened-context-menu.transition-hover-longer-delay,#insetPanel:hover.transition-hover-longer-delay{transition-delay:.4s,.4s,0s}#insetPanel.margin-bottom-big .margin-bottom-big{height:calc(50% - 25px)}.swap-views-button{position:absolute;right:0;bottom:0}.swap-views-button span{color:#fff;border-color:#008b8b;padding:15px;cursor:pointer;text-shadow:0 0 2px #000}#insetPanel canvas{width:100%;height:100%;background:rgba(0,0,0,.85)}#insetUI{position:absolute;bottom:20px;right:20px}#rightControls{padding-top:80px;float:right;opacity:1}#rightControls>div{position:absolute;right:10px}#floorChanger{position:absolute;text-align:center;top:50%;transform:translateY(-50%);top:calc(42.5% + 15px)}#BLLinks{bottom:3px;position:absolute}#BLLinks.above-map-info{bottom:2.3em}.modal-dialog-licenseText{padding-top:calc(10vh - 35px);padding-bottom:calc(10vh - 35px)}.modal-dialog-licenseText .panel-autoscroll{overflow-x:hidden}.mt-10{margin-top:10px}.mb-10{margin-bottom:10px}.ml-10{margin-left:10px}.mt-20,.space-from-top-between-rows{margin-top:20px}.mt-40{margin-top:40px}.modal{overflow-y:auto;-webkit-overflow-scrolling:touch;padding-right:0!important;display:none}.modal .modal-header{padding-right:40px}.modal .modal-header .menu-close-button{top:8px;right:8px}.modal .modal-body{word-wrap:break-word}audio{width:100%}.vtop{vertical-align:top}.vcenter,.vtop{display:table-cell;float:none}.vcenter{vertical-align:middle}.padding-left{padding-left:.5em}.link{color:#2e88b3}.link:active,.link:hover{text-decoration:underline}.poiIcon,.siteModelIcon{width:32px;height:32px}.poi-description{word-wrap:break-word}@-webkit-keyframes iv-progress-bar-stripes{0%{background-position:0 0}to{background-position:40px 0}}@-moz-keyframes iv-progress-bar-stripes{0%{background-position:0}to{background-position:40px 0}}@-o-keyframes iv-progress-bar-stripes{0%{background-position:40px 0}to{background-position:0 0}}@keyframes iv-progress-bar-stripes{0%{background-position:0 0}to{background-position:40px 0}}.progress-bar.active{animation:iv-progress-bar-stripes 2s linear 0s infinite normal none running}.progress-bar-striped{background-image:linear-gradient(135deg,hsla(0,0%,100%,.15) 25%,transparent 0,transparent 50%,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);background-size:40px 40px}.hide{display:inline-block!important;visibility:hidden!important}.fade-out{visibility:hidden;opacity:0;transition:visibility 0s .3s,opacity .3s linear}table.poiAttributes{width:100%;table-layout:fixed}#upload_panel{margin-top:20px;margin-bottom:0;box-shadow:none;border:none}#upload_panel .panel-heading{background:none;border:none}.btn-file{position:relative;overflow:hidden}.btn-file input[type=file]{position:absolute;top:0;right:0;width:100%;height:100%;font-size:100px;text-align:right;filter:alpha(opacity=0);opacity:0;outline:none;background:#fff;cursor:inherit;display:block}.panel-heading [data-toggle=collapse]{text-decoration:none!important}.panel-heading [data-toggle=collapse]:before{font-family:Glyphicons Halflings;content:"\\e114";padding-right:5px;color:#000}.panel-heading [data-toggle=collapse].collapsed:before{content:"\\e080"}#affine-ref-sys-table{margin:30px 0;text-align:center}#affine-ref-sys-table td{width:50px;vertical-align:middle}#affine-ref-sys-table .fa-circle{font-size:6px;transform:translateY(-40%)}#affine-ref-sys-table .vector-symbol{margin:0 10px}#affine-ref-sys-table .right-column{padding-left:0}.cke_contents>iframe{width:100%!important}.cke_toolbar{margin-left:-4px!important}span.spinner.next-to-btngroup{margin-left:10px}img.in-btn-group{max-height:28px}.spinner-in-btn{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.transparent{opacity:1!important;color:transparent!important;background-color:transparent!important;border-color:transparent!important}.animated-scale{transition:transform .2s}.zero-scale{-webkit-transform:scale(0);transform:scale(0)}.group-controls input{display:inline-block;width:40%}.group-controls .btn-default{margin-left:5px}button>span.hidden-xs{display:inline-block!important}.ng-hide{display:none!important}.ng-leave{display:none}.animate-repeat{display:flex;align-items:center}.animate-repeat .progress{margin-bottom:.5em;margin-top:.5em}.animate-repeat.ng-enter,.animate-repeat.ng-leave,.animate-repeat.ng-move{transition:all 1s linear}.animate-repeat.ng-enter,.animate-repeat.ng-leave.ng-leave-active,.animate-repeat.ng-move{opacity:0}.animate-repeat.ng-enter.ng-enter-active,.animate-repeat.ng-leave,.animate-repeat.ng-move.ng-move-active{opacity:1}.ng-animate-leave-fix.ng-leave{display:none}#job-panel .panel-heading{cursor:pointer}#job-panel .panel-heading.empty-job-output{cursor:default}#job-panel .job-details{max-height:30em;overflow-y:auto;-webkit-overflow-scrolling:touch}#job-panel .job-details pre{border:none;margin-bottom:0}.btn-group>.custom-tooltip{float:left}.btn-group>.custom-tooltip:not(:first-child):not(:last-child):not(.dropdown-toggle)>.btn{border-radius:0}.btn-group .btn+.custom-tooltip,.btn-group .btn-group+.custom-tooltip,.btn-group .custom-tooltip+.btn,.btn-group .custom-tooltip+.btn-group,.btn-group .custom-tooltip+.custom-tooltip{margin-left:-1px}.btn-group-vertical>.btn{border-left:#e6e6e6;border-bottom-color:#e6e6e6;border-right:#e6e6e6;border-top-color:#e6e6e6}.btn-group-vertical>.btn:last-child{border-bottom:none}.btn.active,.btn.active:active,.btn.active:focus,.btn.active:hover{box-shadow:inherit;background-color:#e6e6e6;color:#3398c7;font-weight:700}.btn:active{box-shadow:inherit}.disabled{opacity:.65!important}label>input:disabled+span{color:#d3d3d3;cursor:not-allowed}input:disabled{cursor:not-allowed}.btn-close{position:absolute;right:0;top:0;padding:9px 10px;max-height:none}.btn-close,.btn-close:focus,.btn-close:hover{border-top-right-radius:4px!important}.panel .menu-close-button{top:0;right:0}.panel-heading{padding-bottom:10px}.panel-heading h3{font-size:1.3em;margin:5px 0;display:inline-block}.modal-header h4,.panel-heading h4{margin:5px 0}.panel-heading .padding-left{padding:0}.panel-body{padding-top:1em}.panel-body,.panel-body .poi__content{padding-bottom:1em}.panel-body img{display:block;max-width:100%;height:auto!important}.poi-btn-toolbar{text-align:center;padding-bottom:1em;margin-left:4px;margin-right:4px}.poi-btn-toolbar .btn-group{float:none;margin-left:auto;margin-right:auto}.poi-btn-toolbar button{width:4.5em;margin-left:0!important;border:none;font-size:1.2em;text-align:center;max-height:none}.poi-btn-toolbar button,.poi-btn-toolbar button:active,.poi-btn-toolbar button:focus{background-color:transparent}.poi-btn-toolbar button:hover{background-color:#e6e6e6}.poi-btn-toolbar button .ic_svg{height:1.2em;max-width:1.5em}.poi-btn-toolbar button>.btn-description-mobile,.poi-btn-toolbar button>div .btn-description-mobile{font-size:.5em;font-weight:700;color:#3398c7}.panel-heading .btn-group .dropdown-menu{display:none}#left-panel-pois{background-color:#fff}.poi-btn-toolbar .btn-group{width:90%}.poi-btn-toolbar .btn-group button{padding-left:5px;padding-right:0;border-right:5px solid #fff}.poi-btn-toolbar .btn-group button:hover{background-color:#e6e6e6;border-right-color:#e6e6e6}.poi-btn-toolbar .btn-group button:active{background-color:#d4d4d4;border-right-color:#d4d4d4}.poi-btn-toolbar .btn-group .custom-tooltip:first-child:last-child,.poi-btn-toolbar .btn-group button:first-child:last-child,.poi-btn-toolbar .btn-group button:first-child:last-child~.custom-tooltip,.poi-btn-toolbar .btn-group button:first-child:last-child~button{width:100%}.poi-btn-toolbar .btn-group .custom-tooltip:first-child:nth-last-child(2),.poi-btn-toolbar .btn-group button:first-child:nth-last-child(2),.poi-btn-toolbar .btn-group button:first-child:nth-last-child(2)~.custom-tooltip,.poi-btn-toolbar .btn-group button:first-child:nth-last-child(2)~button{width:50%}.poi-btn-toolbar .btn-group .custom-tooltip:first-child:nth-last-child(3),.poi-btn-toolbar .btn-group button:first-child:nth-last-child(3),.poi-btn-toolbar .btn-group button:first-child:nth-last-child(3)~.custom-tooltip,.poi-btn-toolbar .btn-group button:first-child:nth-last-child(3)~button{width:33.33333%}.poi-btn-toolbar .btn-group .custom-tooltip:first-child:nth-last-child(4),.poi-btn-toolbar .btn-group button:first-child:nth-last-child(4),.poi-btn-toolbar .btn-group button:first-child:nth-last-child(4)~.custom-tooltip,.poi-btn-toolbar .btn-group button:first-child:nth-last-child(4)~button{width:25%}.poi-btn-toolbar .btn-group .custom-tooltip{display:inline-block}.poi-btn-toolbar .btn-group .custom-tooltip:last-child:not(:first-child),.poi-btn-toolbar .btn-group .custom-tooltip:last-child:not(:first-child)>.btn{border-top-left-radius:0;border-bottom-left-radius:0}.poi-btn-toolbar .btn-group .custom-tooltip button{width:100%}.btn-showhide-poi-details{width:100%;padding:10px 0 0;max-height:none;border:none;font-size:1.4em;color:#9b9b9b;border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important;background-color:transparent}.btn-showhide-poi-details .show-hide-text{font-size:.5em;margin-bottom:-.5em;font-weight:700}.btn-showhide-poi-details:active,.btn-showhide-poi-details:focus{background-color:transparent}.btn-showhide-poi-details:hover{background-color:#e6e6e6}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}button:hover{cursor:pointer;cursor:hand}.tree-icon,i.collapse-expand-chevron,i.not-collapsible{font-family:FontAwesome;font-style:normal;line-height:1em;font-size:1em;min-width:1em;display:inline-block}i.not-collapsible:before{content:"\\f111"}i.collapse-expand-chevron:before{content:"\\F078";display:inline-block;transition:.2s ease-in-out}.collapsed>i.collapse-expand-chevron:before{-webkit-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-o-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg)}.indoorViewer.desktop .modal-dialog-wide{width:700px}.cheatsheet-modal .modal{z-index:10002;display:block}.cheatsheet-modal .modal ul{column-count:2}.cheatsheet-modal .modal li{list-style:none;margin-bottom:4px}@media (max-width:900px){.cheatsheet-modal .modal ul{column-count:1}}.cheatsheet-modal .modal .cfp-hotkeys-key{min-width:60px;box-shadow:inset 0 1px 0 #666}.cheatsheet-modal .modal-backdrop{z-index:10001}.context-menu-list .context-menu-icon-routeEnd:before{font-family:FontAwesome;content:"\\f041"}.context-menu-list .context-menu-icon-routeStart:before{font-family:FontAwesome;content:"\\f192"}.text-light-gray{color:#a2a2a2}.path-draw-cursor{cursor:url('+g+"),url("+m+"),auto}.rotate-cursor{cursor:url("+v+"),url("+y+"),auto}.full-size{width:max-content}.centered-vertically{display:flex;align-items:center}",""]),t.exports=e},function(t,e,n){t.exports=n.p+"pen-nib-solid.png"},function(t,e,n){t.exports=n.p+"pen-nib-solid.cur"},function(t,e,n){t.exports=n.p+"rotate-cursor.png"},function(t,e,n){t.exports=n.p+"681aa02995db01b49b6b5e6e83b85cce.rotate-cursor.cur"},function(t,e){window.angular.module("ng").run(["$templateCache",function(t){t.put("iv.html","\x3c!--Adjusting the viewport meta for requested desktop site (if needed)--\x3e\n<mobile-desktop-site-detector></mobile-desktop-site-detector>\n\n<iv-body></iv-body>\n")}]),t.exports="iv.html"},function(t,e,n){var i={"./FloorChanger.html":958,"./WebGLMissing.html":959,"./alignment/DatasetAlignmentPanel.html":960,"./alignment/GeoRegistrationPanel.html":961,"./alignment/SiteModelEditor.html":962,"./blank.html":963,"./cloudprocessing/ProcessedData.html":964,"./cloudprocessing/ProcessingTasks.html":965,"./cloudprocessing/UploadedData.html":966,"./download-point-cloud/DownloadPointCloud.html":967,"./menu/DatasetsMenu.html":968,"./menu/DeveloperMenu.html":969,"./menu/LoginMenu.html":970,"./menu/Measurements.html":971,"./menu/ModalsInMenus.html":972,"./menu/PointCloudMenu.html":973,"./menu/PointCloudPane.html":974,"./menu/Settings.html":975,"./menu/ShareMenu.html":976,"./menu/ViewMenu.html":977,"./menu/poi/POITypesExistingGroup.html":978,"./menu/poi/POITypesMainPanel.html":979,"./navgraph/NavGraphEditor.html":980,"./settings/AuditPanel.html":981,"./settings/ConfigEditor.html":982,"./settings/DatasetManagement.html":983,"./settings/HiddenImages.html":984,"./settings/ThemePanel.html":985,"./settings/administration/LicenseSubscription.html":986,"./settings/authentication/AuthPanel.html":987,"./settings/permissions/Groups.html":988,"./settings/permissions/GroupsTree.html":989,"./settings/permissions/GroupsTreeItem.html":990,"./settings/permissions/Users.html":991,"./vectormap/VectorMapDialogs.html":992,"./vectormap/VectorMapToolbox.html":993};function r(t){var e=o(t);return n(e)}function o(t){if(!n.o(i,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return i[t]}r.keys=function(){return Object.keys(i)},r.resolve=o,t.exports=r,r.id=957},function(t,e){var n="templates/FloorChanger.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<floor-changer></floor-changer>")}]),t.exports=n},function(t,e){var n="templates/WebGLMissing.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<h1 translate>Your browser or system does not support WebGL</h1>\n<h2 translate>WebGL could not be initialized.</h2>\n\n<p>\n\t<span translate>\n\t\tPlease make sure your browser and graphics hardware support WebGL.\n\t</span>\n\t<br>\n\t<span translate>\n\t\tRecent versions of Google Chrome and Mozilla Firefox should work fine:\n\t</span>\n\t<a href="http://www.google.com/chrome/" target="_blank">\n\t\tGoogle Chrome,\n\t</a>\n\t<a href="http://www.mozilla.org/firefox" target="_blank">\n\t\tMozilla Firefox\n\t</a>\n</p>\n\x3c!--TODO multiple computation of translate and split. not optimal. variable--\x3e\n<p>\n\t<span translate>\n\t\tYou can visit this page for information on how to get a WebGL implementation:\n\t</span>\n\t<a href="http://www.khronos.org/webgl/wiki/Getting_a_WebGL_Implementation" target="_blank">\n\t\tGetting a WebGL Implementation\n\t</a>\n</p>\n<p>\n\t<span translate>\n\t\tYou can test if your browser supports WebGL with the following link:\n\t</span>\n\t<a href="http://get.webgl.org/" target="_blank">\n\t\tget.webgl.org\n\t</a>\n</p>\n')}]),t.exports=n},function(t,e){var n="templates/alignment/DatasetAlignmentPanel.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<dataset-alignment-panel></dataset-alignment-panel>\n")}]),t.exports=n},function(t,e){var n="templates/alignment/GeoRegistrationPanel.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<geo-registration-panel></geo-registration-panel>\n")}]),t.exports=n},function(t,e){var n="templates/alignment/SiteModelEditor.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<site-model-editor></site-model-editor>")}]),t.exports=n},function(t,e){var n="templates/blank.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"")}]),t.exports=n},function(t,e){var n="templates/cloudprocessing/ProcessedData.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<processed-data-lazy></processed-data-lazy>\n")}]),t.exports=n},function(t,e){var n="templates/cloudprocessing/ProcessingTasks.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<processing-task-lazy></processing-task-lazy>\n")}]),t.exports=n},function(t,e){var n="templates/cloudprocessing/UploadedData.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<cloud-upload-lazy></cloud-upload-lazy>\n")}]),t.exports=n},function(t,e){var n="templates/download-point-cloud/DownloadPointCloud.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<download-point-cloud></download-point-cloud>\n")}]),t.exports=n},function(t,e){var n="templates/menu/DatasetsMenu.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<dataset-menu></dataset-menu>")}]),t.exports=n},function(t,e){var n="templates/menu/DeveloperMenu.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<developer-lazy></developer-lazy>\n")}]),t.exports=n},function(t,e,n){var i="templates/menu/LoginMenu.html",r='<div ng-controller="UserController">\n\n\t\x3c!-- Edit user profile modal – use modal directive for mobile view fix, refs #14120 --\x3e\n\t<modal>\n\t\t<user-editor modal-id="edit-profile-modal" user="edited"></user-editor>\n\t</modal>\n\n\t\x3c!-- Login Menu --\x3e\n\t<div id="login-panel" class="panel panel-default no-border no-shadow">\n\n\t\t\x3c!-- Header --\x3e\n\t\t<div class="panel-heading">\n\t\t\t<h3 ng-if="isUserLoggedIn()">\n\t\t\t\t{{ UserService.userInfo.getDisplayName() }}\n\t\t\t</h3>\n\t\t\t<h3 ng-if="!isUserLoggedIn()" translate translate-context="title">\n\t\t\t\tSign In\n\t\t\t</h3>\n\t\t</div>\n\n\t\t<div class="panel-body">\n\n\t\t\t\x3c!------- Login form -------\x3e\n\t\t\t<login-form ng-class="{\'border-bottom\': !isUserLoggedIn()}"></login-form>\n\n\t\t\t\x3c!------- Logged in user -------\x3e\n\n\t\t\t\x3c!-- User groups spinner --\x3e\n\t\t\t<span ng-if="isUserLoggedIn() && (!UserService.userInfo.groups || !permissionsData.groups)"\n\t\t\t class="spinner">\n\t\t\t\t<img class="in-btn-group" ng-src="'+n(94)+'">\n\t\t\t</span>\n\n\t\t\t<div class="panel-group" id="accordion">\n\t\t\t\t\x3c!-- User groups --\x3e\n\t\t\t\t<div class="panel"\n\t\t\t\t ng-if="isUserLoggedIn() && UserService.userInfo.groups && permissionsData.groups">\n\t\t\t\t\t<div class="panel-heading collapsed clickable"\n\t\t\t\t\t data-toggle="collapse" data-target="#collapse-groups"\n\t\t\t\t\t data-parent="#accordion">\n\t\t\t\t\t\t<span translate translate-context="title">Your Groups</span>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div id="collapse-groups" class="panel-collapse collapse">\n\t\t\t\t\t\t<ul class="list-group">\n\t\t\t\t\t\t\t<li class="list-group-item user-group-item"\n\t\t\t\t\t\t\t ng-repeat="userGroup in groupsData"\n\t\t\t\t\t\t\t ng-show="userGroup.id !== GroupService.publicGroupId">\n\t\t\t\t\t\t\t\t{{userGroup.name}}\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\x3c!-- no groups --\x3e\n\t\t\t\t\t\t\t<li class="list-group-item user-group-header"\n\t\t\t\t\t\t\t ng-if="discardPublicGroup(UserService.userInfo.groups).length === 0"\n\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\tYou are not a member of any group\n\t\t\t\t\t\t\t</li>\n\n\t\t\t\t\t\t</ul>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t\x3c!-- User Permissions --\x3e\n\t\t\t\t<div class="panel"\n\t\t\t\t ng-if="isUserLoggedIn() && UserService.userInfo.groups && permissionsData.groups">\n\t\t\t\t\t<div class="panel-heading collapsed clickable"\n\t\t\t\t\t data-toggle="collapse" data-target="#collapse-permission"\n\t\t\t\t\t data-parent="#accordion">\n\t\t\t\t\t\t<span translate translate-context="title">Your Permissions</span>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div id="collapse-permission" class="panel-collapse collapse">\n\t\t\t\t\t\t<ul class="list-group">\n\t\t\t\t\t\t\t<li class="list-group-item user-group-item"\n\t\t\t\t\t\t\t ng-repeat="(key, value) in UserService.userInfo.attributes"\n\t\t\t\t\t\t\t ng-if="value && !(getNrOfUserAttributes(true) === getNrOfUserAttributes())">\n\t\t\t\t\t\t\t\t{{GroupService.getGroupAttributesNames()[key]}}\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\x3c!-- all attributes --\x3e\n\t\t\t\t\t\t\t<li class="list-group-item user-group-item"\n\t\t\t\t\t\t\t ng-if="getNrOfUserAttributes(true) === getNrOfUserAttributes()"\n\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\tYou have all permissions\n\t\t\t\t\t\t\t</li>\n\n\t\t\t\t\t\t\t\x3c!-- no attributes --\x3e\n\t\t\t\t\t\t\t<li class="list-group-item user-group-item"\n\t\t\t\t\t\t\t ng-if="getNrOfUserAttributes(true) === 0"\n\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\tYou do not have any permissions\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t</ul>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t\x3c!-- Edit Profile --\x3e\n\t\t\t\t<div class="panel">\n\t\t\t\t\t<div class="panel-heading clickable"\n\t\t\t\t\t ng-if="isUserLoggedIn() && !logoutInProgress"\n\t\t\t\t\t ng-click="editProfile()">\n\t\t\t\t\t\t<span translate translate-context="title">Edit Profile</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t\x3c!-- User settings --\x3e\n\t\t\t\t<div class="panel">\n\t\t\t\t\t<div class="panel-heading collapsed clickable"\n\t\t\t\t\t data-toggle="collapse" data-target="#collapse-user-settings"\n\t\t\t\t\t data-parent="#accordion">\n\t\t\t\t\t\t<span translate translate-context="title">Language &amp; Unit System</span>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div id="collapse-user-settings" class="panel-collapse collapse">\n\t\t\t\t\t\t<language-switcher></language-switcher>\n\t\t\t\t\t\t<unit-switcher></unit-switcher>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t\x3c!-- Docs Link --\x3e\n\t\t\t\t<div ng-if="showDocumentation()" class="panel">\n\t\t\t\t\t<div class="panel-heading clickable">\n\t\t\t\t\t\t<a href="{{docsUrl}}" target="_blank"\n\t\t\t\t\t\t style="text-decoration: none; color: inherit; background-color: inherit;">\n\t\t\t\t\t\t\t<span translate translate-context="link">\n\t\t\t\t\t\t\t\tDocumentation\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</a>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t\x3c!-- Logout button --\x3e\n\t\t\t\t<div class="panel" ng-if="isUserLoggedIn() && !isLogoutDisabled()">\n\t\t\t\t\t<div class="panel-heading clickable"\n\t\t\t\t\t ng-show="!logoutInProgress && !userProviderIsPreauth()"\n\t\t\t\t\t ng-click="logout()">\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t<i class="material-icons">exit_to_app</i>\n\t\t\t\t\t\t\t<b class="margin-left-small" translate translate-context="title">\n\t\t\t\t\t\t\t\tSign Out\n\t\t\t\t\t\t\t</b>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t\x3c!-- Logout in progress... means spinner --\x3e\n\t\t\t\t\t<div ng-if="logoutInProgress">\n\t\t\t\t\t\t<span class="spinner">\n\t\t\t\t\t\t\t<img class="in-btn-group" ng-src="'+n(94)+'">\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t</div>\n\t</div>\n</div>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e){var n="templates/menu/Measurements.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<measurements-lazy></measurements-lazy>\n")}]),t.exports=n},function(t,e,n){var i="templates/menu/ModalsInMenus.html",r='\n\x3c!--modal for startup view--\x3e\n<modal>\n\t<div class="modal fade" id="setStartupViewModal" tabindex="-1" role="dialog"\n\t\t aria-labelledby="setStartupViewModalLabel" aria-hidden="true">\n\t\t<div class="modal-dialog">\n\t\t\t<div class="modal-content">\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}"\n\t\t\t\t\t data-dismiss="modal">\n\t\t\t\t\t<h4 id="setStartupViewModalLabel" translate translate-context="title">\n\t\t\t\t\t\tConfirm\n\t\t\t\t\t</h4>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-body" translate>\n\t\t\t\t\tThis will set the startup view for all users to the current view.\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-footer">\n\t\t\t\t\t<close-button data-dismiss="modal"></close-button>\n\t\t\t\t\t<ok-button data-dismiss="modal"\n\t\t\t\t\t ng-click="vm.setStartupView()"></ok-button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n\n\x3c!--modal for startup view reset--\x3e\n<modal>\n\t<div class="modal fade" id="resetStartupViewModal" tabindex="-1" role="dialog"\n\t aria-labelledby="setStartupViewModalLabel" aria-hidden="true">\n\t\t<div class="modal-dialog">\n\t\t\t<div class="modal-content">\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}"\n\t\t\t\t\t data-dismiss="modal">\n\t\t\t\t\t<h4 id="resetStartupViewModalLabel" translate translate-context="title">\n\t\t\t\t\t\tConfirm\n\t\t\t\t\t</h4>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-body" translate>\n\t\t\t\t\tThis will reset the startup view for all users.\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-footer">\n\t\t\t\t\t<close-button data-dismiss="modal"></close-button>\n\t\t\t\t\t<ok-button data-dismiss="modal"\n\t\t\t\t\t ng-click="vm.resetStartupView()"></ok-button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n\n\x3c!--modal IV reinit--\x3e\n<modal>\n\t<div class="modal fade" id="ivReinitModal" tabindex="-1" role="dialog"\n\t\t aria-labelledby="ivReinitModalLabel" aria-hidden="true">\n\t\t<div class="modal-dialog">\n\t\t\t<div class="modal-content">\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}"\n\t\t\t\t\t data-dismiss="modal">\n\t\t\t\t\t<h4 id="ivReinitModalLabel" translate translate-context="title">\n\t\t\t\t\t\tTask Finished\n\t\t\t\t\t</h4>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-body" translate>\n\t\t\t\t\tA task just finished. Do you want to reinitialize the 4DKanKan to load the new data? Unsaved changes may be lost.\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-footer">\n\t\t\t\t\t<close-button data-dismiss="modal"></close-button>\n\t\t\t\t\t<ok-button data-dismiss="modal"\n\t\t\t\t\t ng-click="vm.reinitIV()"></ok-button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e){var n="templates/menu/PointCloudMenu.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div id="pointcloud-menu" ng-controller="PointCloudMenuController">\n\t<div class="checkbox">\n\t\t<label>\n\t\t\t<input type="checkbox"\n\t\t\t ng-model="config.showPointCloud"\n\t\t\t ng-disabled="!showPointCloudOptionEnabled()"\n\t\t\t ng-change="settingShowPointCloudChangedCallback()">\n\t\t\t<span translate>\n\t\t\t\tShow point cloud\n\t\t\t</span>\n\t\t</label>\n\t</div>\n\n\t<div id="pointcloud-options" ng-if="config.showPointCloud">\n\t\t\x3c!--Auto Activation--\x3e\n\t\t<div class="checkbox form-group">\n\t\t\t<label>\n\t\t\t\t<input type="checkbox"\n\t\t\t\t ng-model="config.autoActivation"\n\t\t\t\t ng-disabled="!showPointCloudAutomaticActivationOptionEnabled()"\n\t\t\t\t ng-change="settingAutoActivationChangedCallback()">\n\t\t\t\t<span translate>\n\t\t\t\t\t\tAutomatic activation\n\t\t\t\t</span>\n\t\t\t</label>\n\t\t</div>\n\n\t\t\x3c!-- Options for the advanced renderer --\x3e\n\t\t<div ng-if="showPotreeOptions()">\n\t\t\t<div ng-repeat="pane in settingsPanes"\n\t\t\t ng-include="\'templates/menu/PointCloudPane.html\'"></div>\n\t\t\t<hr>\n\t\t</div>\n\n\t\t\x3c!-- Legacy renderer options --\x3e\n\t\t<div id="legacy-pointcloud-pane" ng-if="showLegacyOptions()">\n\t\t\t<div class="checkbox">\n\t\t\t\t<label>\n\t\t\t\t\t<input type="checkbox"\n\t\t\t\t\t ng-model="config.zBuffering"\n\t\t\t\t\t ng-change="settingZBufferingChangedCallback()">\n\t\t\t\t\t<span translate>\n\t\t\t\t\t\tUse z-buffer\n\t\t\t\t\t</span>\n\t\t\t\t</label>\n\t\t\t</div>\n\n\t\t\t<div class="row">\n\t\t\t\t<div class="col-sm-4 align-text" translate>\n\t\t\t\t\tOpacity\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-slider">\n\t\t\t\t\t<div ui-slider\n\t\t\t\t\t min="0" max="1" step="0.01"\n\t\t\t\t\t use-decimals\n\t\t\t\t\t ng-model="config.opacity"\n\t\t\t\t\t ng-change="settingOpacityChangedCallback()"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-textbox">\n\t\t\t\t\t<input type="number" class="form-control"\n\t\t\t\t\t min="0" max="1" step="0.01"\n\t\t\t\t\t ng-model="config.opacity"\n\t\t\t\t\t ng-change="settingOpacityChangedCallback()"/>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\n\t\t\t<div class="row">\n\t\t\t\t<div class="col-sm-4 align-text" translate>\n\t\t\t\t\tBrightness\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-slider">\n\t\t\t\t\t<div ui-slider\n\t\t\t\t\t min="1" max="1000" step="1"\n\t\t\t\t\t use-decimals\n\t\t\t\t\t ng-model="config.brightness"\n\t\t\t\t\t ng-change="settingBrightnessChangedCallback()"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-textbox">\n\t\t\t\t\t<input type="number" class="form-control"\n\t\t\t\t\t min="1" max="1000" step="1"\n\t\t\t\t\t ng-model="config.brightness"\n\t\t\t\t\t ng-change="settingBrightnessChangedCallback()"/>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\n\t\t\t<div class="row">\n\t\t\t\t<div class="col-sm-4 align-text" translate>\n\t\t\t\t\tRange\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-slider">\n\t\t\t\t\t<div ui-slider\n\t\t\t\t\t min="20" max="300" step="1"\n\t\t\t\t\t use-decimals\n\t\t\t\t\t ng-model="config.maxDist"\n\t\t\t\t\t ng-change="settingDepthCullingChangedCallback()"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-textbox">\n\t\t\t\t\t<input type="number" class="form-control"\n\t\t\t\t\t min="20" max="300" step="1"\n\t\t\t\t\t ng-model="config.maxDist"\n\t\t\t\t\t ng-change="settingDepthCullingChangedCallback()"/>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class="row">\n\t\t\t\t<div class="col-sm-4 align-text" translate>\n\t\t\t\t\tLevel of detail\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-slider">\n\t\t\t\t\t<div ui-slider\n\t\t\t\t\t min="2" max="8" step="1"\n\t\t\t\t\t use-decimals\n\t\t\t\t\t ng-model="config.maxDepth"\n\t\t\t\t\t ng-change="settingPcResolutionChangedCallback()"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-textbox">\n\t\t\t\t\t<input type="number" class="form-control"\n\t\t\t\t\t min="2" max="8" step="1"\n\t\t\t\t\t ng-model="config.maxDepth"\n\t\t\t\t\t ng-change="settingPcResolutionChangedCallback()"/>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class="row">\n\t\t\t\t<div class="col-sm-4 align-text" translate>\n\t\t\t\t\tHue offset\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-slider">\n\t\t\t\t\t<div ui-slider\n\t\t\t\t\t min="0" max="1" step="0.01"\n\t\t\t\t\t use-decimals\n\t\t\t\t\t ng-model="config.hueOffset"\n\t\t\t\t\t ng-change="settingColorHueOffsetChangedCallback()"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-textbox">\n\t\t\t\t\t<input type="number" class="form-control"\n\t\t\t\t\t min="0" max="1" step="0.01"\n\t\t\t\t\t ng-model="config.hueOffset"\n\t\t\t\t\t ng-change="settingColorHueOffsetChangedCallback()"/>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class="row">\n\t\t\t\t<div class="col-sm-4 align-text" translate>\n\t\t\t\t\tHue scale\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-slider">\n\t\t\t\t\t<div ui-slider\n\t\t\t\t\t min="-1" max="1" step="0.01"\n\t\t\t\t\t use-decimals\n\t\t\t\t\t ng-model="config.hueScale"\n\t\t\t\t\t ng-change="settingColorHueScaleChangedCallback()"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-textbox">\n\t\t\t\t\t<input type="number" class="form-control"\n\t\t\t\t\t min="-1" max="1" step="0.01"\n\t\t\t\t\t ng-model="config.hueScale"\n\t\t\t\t\t ng-change="settingColorHueScaleChangedCallback()"/>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<hr>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e){var n="templates/menu/PointCloudPane.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div ng-show="pane.visible()" id="pointcloud-pane" class="form-group">\n\t<label class="form-label">\n\t\t{{pane.caption | translate:"title"}}\n\t</label>\n\t<br>\n\n\t<div>\n\t\t<select class="form-control"\n\t\t style="display: inline-block"\n\t\t ng-model="pane.currentPreset"\n\t\t ng-options="preset.name as preset.caption | translate for preset in pane.presets"\n\t\t ng-change="applyPreset(pane.currentPreset, pane.material, pane)">\n\t\t\t<option value="" disabled ng-show="!pane.currentPreset" translate>Custom</option>\n\t\t</select>\n\t\t<button type="button"\n\t\t class="btn btn-default"\n\t\t data-toggle="collapse" data-parent="#accordion"\n\t\t ng-href="{{\'#collapse\'+pane.name}}" aria-expanded="true"\n\t\t ng-aria-controls="{{\'collapse\'+pane.name}}"\n\t\t ng-click="pane.collapsed = !pane.collapsed"\n\t\t ng-class="{\'btn-primary\': !pane.currentPreset}">\n\t\t\t<span ng-class="pane.collapsed? \'glyphicon glyphicon-chevron-down\' : \'glyphicon glyphicon-chevron-up\'"></span>\n\t\t</button>\n\t</div>\n\n\t\x3c!-- Collapsible settings --\x3e\n\t<div ng-attr-id="{{\'collapse\'+pane.name}}" class="collapse">\n\t\t<div class="panel-body">\n\n\t\t\t\x3c!-- Opacity slider --\x3e\n\t\t\t<div class="row" ng-if="pane.visibleSettings.opacity" title="{{tooltips[pane.name].inactiveFromShading}}">\n\t\t\t\t<div class="col-sm-4 align-text" translate>\n\t\t\t\t\tOpacity\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-slider hidden-xs">\n\t\t\t\t\t<div ui-slider\n\t\t\t\t\t min="0" max="1" step="0.01"\n\t\t\t\t\t use-decimals\n\t\t\t\t\t ng-model="pane.material.opacity"\n\t\t\t\t\t ng-disabled="pane.material.useEDL"\n\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-textbox">\n\t\t\t\t\t<input type="number" class="form-control"\n\t\t\t\t\t min="0" max="1" step="0.01"\n\t\t\t\t\t ng-model="pane.material.opacity"\n\t\t\t\t\t ng-disabled="pane.material.useEDL"\n\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"/>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t\x3c!-- Brightness slider --\x3e\n\t\t\t<div class="row" ng-if="pane.visibleSettings.brightness" title="{{tooltips[pane.name].inactiveFromShadingOpacity}}">\n\t\t\t\t<div class="col-sm-4 align-text" translate>\n\t\t\t\t\tBrightness\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-slider hidden-xs">\n\t\t\t\t\t<div ui-slider\n\t\t\t\t\t min="1" max="1000" step="1"\n\t\t\t\t\t use-decimals\n\t\t\t\t\t ng-model="pane.material.brightness"\n\t\t\t\t\t ng-disabled="pane.material.opacity == 1.0 || pane.material.useEDL"\n\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-textbox">\n\t\t\t\t\t<input type="number" class="form-control"\n\t\t\t\t\t min="1" max="1000" step="1"\n\t\t\t\t\t ng-model="pane.material.brightness"\n\t\t\t\t\t ng-disabled="pane.material.opacity == 1.0 || pane.material.useEDL"\n\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"/>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t\x3c!-- Color style dropdown --\x3e\n\t\t\t<div class="row" ng-if="pane.visibleSettings.colorStyle">\n\t\t\t\t<div class="col-sm-4 align-text" translate>\n\t\t\t\t\tColor style\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-8 align-textbox">\n\t\t\t\t\t<select class="form-control"\n\t\t\t\t\t ng-options="option.name | translate for option in dropdownMenus.colorStyleOptions track by option.id"\n\t\t\t\t\t\t\tng-model="pane.material.colorStyleSelectedOption"\n\t\t\t\t\t\t\tng-change="advancedSettingChangedCallback(pane)"></select>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t\x3c!-- Range slider for elevation color mode --\x3e\n\t\t\t<div ng-if="pane.material.colorStyleSelectedOption.id == 3">\n\t\t\t\t<div class="row">\n\t\t\t\t\t<div class="col-sm-4 align-text" translate>\n\t\t\t\t\t\tHeight range\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="col-sm-8 align-slider hidden-xs">\n\t\t\t\t\t\t<div ui-slider="{range: true}"\n\t\t\t\t\t\t min="{{config.zMin}}" max="{{config.zMax}}" step="0.01"\n\t\t\t\t\t\t use-decimals\n\t\t\t\t\t\t ng-model="pane.material.z"\n\t\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"></div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class="row">\n\t\t\t\t\t<div class="col-sm-4"></div>\n\t\t\t\t\t<div class="col-sm-4 align-textbox">\n\t\t\t\t\t\t<input type="number" class="form-control"\n\t\t\t\t\t\t min="{{config.zMin}}" max="{{config.zMax}}" step="0.01"\n\t\t\t\t\t\t ng-model="pane.material.z[0]"\n\t\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"/>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="col-sm-4 align-textbox">\n\t\t\t\t\t\t<input type="number" class="form-control"\n\t\t\t\t\t\t min="{{config.zMin}}" max="{{config.zMax}}" step="0.01"\n\t\t\t\t\t\t ng-model="pane.material.z[1]"\n\t\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"/>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t\x3c!-- Point size mode dropdown --\x3e\n\t\t\t<div class="row" ng-if="pane.visibleSettings.pointSizeMode">\n\t\t\t\t<div class="col-sm-4 align-text" translate>\n\t\t\t\t\tPoint size mode\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-8 align-textbox">\n\t\t\t\t\t<select class="form-control"\n\t\t\t\t\t ng-options="option.name | translate for option in dropdownMenus.pointSizeOptions track by option.id"\n\t\t\t\t\t ng-model="pane.material.pointSizeSelectedOption"\n\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"></select>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t\x3c!-- Point size slider --\x3e\n\t\t\t<div class="row" ng-if="pane.visibleSettings.pointSize">\n\t\t\t\t<div class="col-sm-4 align-text" translate>\n\t\t\t\t\tPoint size\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-slider hidden-xs">\n\t\t\t\t\t<div ui-slider\n\t\t\t\t\t min="{{pane.material.pointSizeSelectedOption.minSize}}"\n\t\t\t\t\t max="{{pane.material.pointSizeSelectedOption.maxSize}}"\n\t\t\t\t\t step="{{pane.material.pointSizeSelectedOption.stepSize}}"\n\t\t\t\t\t use-decimals\n\t\t\t\t\t ng-model="pane.material.pointSize"\n\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-textbox">\n\t\t\t\t\t<input type="number" class="form-control"\n\t\t\t\t\t min="{{pane.material.pointSizeSelectedOption.minSize}}"\n\t\t\t\t\t max="{{pane.material.pointSizeSelectedOption.maxSize}}"\n\t\t\t\t\t step="{{pane.material.pointSizeSelectedOption.stepSize}}"\n\t\t\t\t\t ng-model="pane.material.pointSize"\n\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"/>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t\x3c!-- Point shape dropdown --\x3e\n\t\t\t<div class="row" ng-if="pane.visibleSettings.pointShape">\n\t\t\t\t<div class="col-sm-4 align-text" translate>\n\t\t\t\t\tPoint shape\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-8 align-textbox">\n\t\t\t\t\t<select class="form-control"\n\t\t\t\t\t ng-options="option.name | translate for option in dropdownMenus.pointShapeOptions track by option.id"\n\t\t\t\t\t ng-model="pane.material.pointShapeSelectedOption"\n\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"></select>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t\x3c!-- Shading(EDL) checkbox --\x3e\n\t\t\t<div class="checkbox" ng-if="pane.visibleSettings.edl">\n\t\t\t\t<label>\n\t\t\t\t\t<input type="checkbox"\n\t\t\t\t\t ng-disabled="!pane.visibleSettings.edlSupport"\n\t\t\t\t\t ng-model="pane.material.useEDL"\n\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)">\n\t\t\t\t\t<span translate>\n\t\t\t\t\t\tEnhance edges\n\t\t\t\t\t</span>\n\t\t\t\t</label>\n\t\t\t</div>\n\n\t\t\t\x3c!-- Advanced shading(EDL) settings --\x3e\n\t\t\t<div ng-if="pane.visibleSettings.edl" ng-show="pane.material.useEDL">\n\n\t\t\t\t\x3c!-- Strength slider --\x3e\n\t\t\t\t<div class="row">\n\t\t\t\t\t<div class="col-sm-4 align-text" translate>\n\t\t\t\t\t\tStrength\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="col-sm-4 align-slider hidden-xs">\n\t\t\t\t\t\t<div ui-slider\n\t\t\t\t\t\t min="0" max="3" step="0.05"\n\t\t\t\t\t\t use-decimals\n\t\t\t\t\t\t ng-model="pane.material.EDLStrength"\n\t\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"></div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="col-sm-4 align-textbox">\n\t\t\t\t\t\t<input type="number" class="form-control"\n\t\t\t\t\t\t min="0" max="3" step="0.05"\n\t\t\t\t\t\t ng-model="pane.material.EDLStrength"\n\t\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"/>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t\x3c!-- Range slider --\x3e\n\t\t\t<div class="row" ng-if="pane.visibleSettings.maxDist">\n\t\t\t\t<div class="col-sm-4 align-text" translate>\n\t\t\t\t\tRange\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-slider hidden-xs">\n\t\t\t\t\t<div ui-slider\n\t\t\t\t\t min="20" max="300" step="1"\n\t\t\t\t\t use-decimals\n\t\t\t\t\t ng-model="config.maxDist"\n\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-textbox">\n\t\t\t\t\t<input type="number" class="form-control"\n\t\t\t\t\t min="20" max="300" step="1"\n\t\t\t\t\t ng-model="config.maxDist"\n\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"/>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t\x3c!-- Level of detail slider --\x3e\n\t\t\t<div class="row" ng-if="pane.visibleSettings.maxDepth">\n\t\t\t\t<div class="col-sm-4 align-text" translate>\n\t\t\t\t\tLevel of detail\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-slider hidden-xs">\n\t\t\t\t\t<div ui-slider\n\t\t\t\t\t min="0" max="12" step="1"\n\t\t\t\t\t use-decimals\n\t\t\t\t\t ng-model="config.maxDepth"\n\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-textbox">\n\t\t\t\t\t<input type="number" class="form-control"\n\t\t\t\t\t min="0" max="12" step="1"\n\t\t\t\t\t ng-model="config.maxDepth"\n\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"/>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t\x3c!-- Point count target slider --\x3e\n\t\t\t<div class="row" ng-if="pane.visibleSettings.pointCountTarget">\n\t\t\t\t<div class="col-sm-4 align-text" translate>\n\t\t\t\t\tPoint count target (M)\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-slider hidden-xs">\n\t\t\t\t\t<div ui-slider\n\t\t\t\t\t min="0.2" max="15" step="0.1"\n\t\t\t\t\t use-decimals\n\t\t\t\t\t ng-model="config.pointCountTarget"\n\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-textbox">\n\t\t\t\t\t<input type="number" class="form-control"\n\t\t\t\t\t min="0.2" max="15" step="0.1"\n\t\t\t\t\t ng-model="config.pointCountTarget"\n\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"/>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t\x3c!-- Min node size slider --\x3e\n\t\t\t<div class="row" ng-if="pane.visibleSettings.minNodeSize">\n\t\t\t\t<div class="col-sm-4 align-text" translate>\n\t\t\t\t\tMinimum node size (px)\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-slider hidden-xs">\n\t\t\t\t\t<div ui-slider\n\t\t\t\t\t min="0" max="1000" step="10"\n\t\t\t\t\t use-decimals\n\t\t\t\t\t ng-model="config.minNodeSize"\n\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"></div>\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-4 align-textbox">\n\t\t\t\t\t<input type="number" class="form-control"\n\t\t\t\t\t min="0" max="1000" step="10"\n\t\t\t\t\t ng-model="config.minNodeSize"\n\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)"/>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t\x3c!-- Normals filtering checkbox --\x3e\n\t\t\t<div class="checkbox" ng-if="pane.visibleSettings.normalsFiltering">\n\t\t\t\t<label>\n\t\t\t\t\t<input type="checkbox"\n\t\t\t\t\t ng-model="pane.material.normalsFiltering"\n\t\t\t\t\t ng-change="advancedSettingChangedCallback(pane)">\n\t\t\t\t\t<span translate>\n\t\t\t\t\t\tNormals filtering\n\t\t\t\t\t</span>\n\t\t\t\t</label>\n\t\t\t</div>\n\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e){var n="templates/menu/Settings.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<license-expired-warning></license-expired-warning>\n")}]),t.exports=n},function(t,e){var n="templates/menu/ShareMenu.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="panel panel-default">\n\t<div class="panel-body" x-trigger-cursor-viz>\n\t\t<share-menu share-type="location"></share-menu>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e){var n="templates/menu/ViewMenu.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div id="view-menu" class="panel panel-default" ng-controller="ViewMenuController as vm">\n\t<div class="panel-body">\n\n\t\t\x3c!--Point Cloud--\x3e\n\t\t<div ng-include src="\'templates/menu/PointCloudMenu.html\'"></div>\n\n\t\t\x3c!--Meshes--\x3e\n\t\t<div class="checkbox" ng-if="vm.isMeshesOptionFeatureEnabled()">\n\t\t\t<label>\n\t\t\t\t<input type="checkbox" ng-model="config.showMeshes"\n\t\t\t\t ng-disabled="!vm.showMeshesOptionEnabled()"\n\t\t\t\t ng-click="vm.toggleMeshes()">\n\t\t\t\t<span translate>Show meshes</span>\n\t\t\t</label>\n\t\t</div>\n\n\t\t<mesh-menu-panel-component ng-if="vm.isMeshesOptionFeatureEnabled() && vm.showMeshMenu()"></mesh-menu-panel-component>\n\n\t\t\x3c!--Panoramas--\x3e\n\t\t<div class="checkbox">\n\t\t\t<label>\n\t\t\t\t<input type="checkbox" ng-model="config.showPanoramas"\n\t\t\t\t ng-disabled="!vm.showPanoramasOptionEnabled()"\n\t\t\t\t ng-click="vm.togglePanoramas()">\n\t\t\t\t<span translate>Show panoramas</span>\n\t\t\t</label>\n\t\t</div>\n\n\t\t\x3c!--Mini View --\x3e\n\t\t<div class="checkbox">\n\t\t\t<label>\n\t\t\t\t<input type="checkbox"\n\t\t\t\t ng-disabled="!vm.showSecondaryViewOptionEnabled()"\n\t\t\t\t ng-model="ViewService.showSecondaryView">\n\t\t\t\t<span translate>Show secondary view</span>\n\t\t\t</label>\n\t\t</div>\n\n\t\t\x3c!--Location Markers--\x3e\n\t\t<div class="checkbox">\n\t\t\t<label>\n\t\t\t\t<input type="checkbox"\n\t\t\t\t ng-model="config.showLocationMarkers"\n\t\t\t\t ng-disabled="!vm.showLocationMarkersOptionEnabled()"\n\t\t\t\t ng-click="vm.toggleLocationMarkers()">\n\t\t\t\t<span translate>Show location markers</span>\n\t\t\t</label>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e){var n="templates/menu/poi/POITypesExistingGroup.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"")}]),t.exports=n},function(t,e){var n="templates/menu/poi/POITypesMainPanel.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<poi-type-group-list></poi-type-group-list>\n")}]),t.exports=n},function(t,e){var n="templates/navgraph/NavGraphEditor.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<nav-graph-editor></nav-graph-editor>\n")}]),t.exports=n},function(t,e){var n="templates/settings/AuditPanel.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<audit-panel-lazy></audit-panel-lazy>\n")}]),t.exports=n},function(t,e){var n="templates/settings/ConfigEditor.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<config-editor></config-editor>\n")}]),t.exports=n},function(t,e){var n="templates/settings/DatasetManagement.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<dataset-management></dataset-management>\n")}]),t.exports=n},function(t,e){var n="templates/settings/HiddenImages.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<hidden-images></hidden-images>\n")}]),t.exports=n},function(t,e){var n="templates/settings/ThemePanel.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<theme-panel-lazy></theme-panel-lazy>\n")}]),t.exports=n},function(t,e){var n="templates/settings/administration/LicenseSubscription.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<license-subscription-panel></license-subscription-panel>\n")}]),t.exports=n},function(t,e){var n="templates/settings/authentication/AuthPanel.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<user-auth-config></user-auth-config>\n")}]),t.exports=n},function(t,e){var n="templates/settings/permissions/Groups.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div id="settings-groups-panel" class="panel panel-default" ng-controller="GroupController">\n\n\t\x3c!-- Unsaved changes modal --\x3e\n\t<modal>\n\t\t<warning-dialog modal-id="\'groups-unsaved-changes-modal\'" parent-controller="this"></warning-dialog>\n\t</modal>\n\n\t<div class="panel-body">\n\n\t\t<div class="btn-toolbar form-group" ng-if="hasValidLicenseModule()">\n\t\t\t\x3c!--add--\x3e\n\t\t\t<button title="{{\'Add a subgroup to the selected group\'|translate}}"\n\t\t\t\t\ttype="button"\n\t\t\t\t\tclass="btn btn-default btn-group"\n\t\t\t\t\tng-if="canCreateUserGroups()"\n\t\t\t\t\tng-click="addGroupInAddingState(groupsTree.getSelectedGroup())"\n\t\t\t\t\tng-disabled="!groupsTree.canAddGroup()">\n\t\t\t\t<span class="fa fa-plus" aria-hidden="true"></span>\n\t\t\t</button>\n\n\t\t\t<div class="btn-group"\n\t\t\t\t title="{{getGroupNotWritableText(groupsTree.getSelectedGroup())}}">\n\t\t\t\t\x3c!--edit--\x3e\n\t\t\t\t<button title="{{\'Edit the name of the selected group\'|translate}}"\n\t\t\t\t\t\ttype="button" class="btn btn-default"\n\t\t\t\t\t\tng-click="goToGroupEditState(groupsTree.getSelectedGroup())"\n\t\t\t\t\t\tng-disabled="!groupsTree.getSelectedGroup() || !groupsTree.getSelectedGroup().security.canWrite">\n\t\t\t\t\t<span class="fa fa-pencil" aria-hidden="true"></span>\n\t\t\t\t</button>\n\n\t\t\t\t\x3c!--remove--\x3e\n\t\t\t\t<button title="{{\'Remove the selected group and all its subgroups (also group connections with the users)\'|translate}}"\n\t\t\t\t\t\ttype="button" class="btn btn-default"\n\t\t\t\t\t\tng-click="removeGroup(groupsTree.getSelectedGroup())"\n\t\t\t\t\t\tng-disabled="!groupsTree.getSelectedGroup() || !groupsTree.getSelectedGroup().security.canWrite">\n\t\t\t\t\t<span class="fa fa-trash-o" aria-hidden="true"></span>\n\t\t\t\t</button>\n\t\t\t</div>\n\t\t</div>\n\n\t\t\x3c!-- Groups tree --\x3e\n\t\t<div ng-include src="\'templates/settings/permissions/GroupsTree.html\'"></div>\n\n\t</div>\n\t<div class="panel-footer">\n\t\t<div class="control-buttons">\n\t\t\t<discard-button ng-click="resetGroups()"\n\t\t\t ng-disabled="!isDataChanged() || addingInProgressCount"\n\t\t\t title="{{\'Reset all changes\'|translate}}">\n\t\t\t</discard-button>\n\t\t\t<save-button ng-click="saveGroups()"\n\t\t\t ng-disabled="!isDataChanged() || addingInProgressCount"\n\t\t\t in-progress="addingInProgressCount"\n\t\t\t title="{{\'Save all changes\'|translate}}">\n\t\t\t</save-button>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i="templates/settings/permissions/GroupsTree.html",r='\x3c!-- Groups tree loading - spinner --\x3e\n<div ng-if="!permissionsData.groups"\n style="margin-top:15px; text-align:center">\n\t<span class="spinner">\n\t\t<img class="in-btn-group" ng-src="'+n(94)+'">\n\t</span>\n</div>\n\n\x3c!-- No groups data --\x3e\n<div ng-if="permissionsData.groups && !permissionsData.groups.length" style="margin-top:15px; text-align:center">\n\t<span class="fa fa-exclamation-triangle"></span>\n\t<span translate>No groups are visible to you</span>\n</div>\n\n\x3c!-- Groups tree --\x3e\n<ul ng-if="permissionsData.groups && permissionsData.groups.length"\n class="list-group groups-tree"\n style="margin:0; text-align:left">\n\t<li ng-repeat="group in permissionsData.groups | orderBy: \'name\'"\n\t class="list-group-item"\n\t ng-if="!groupsTree.isGroupExcluded(group)"\n\t ng-class="{\'group-hover\': groupsTree.isGroupHovered(group),\n\t \'group-disabled\': !groupsTree.isGroupEnabled(group),\n\t \'group-expanded\': groupsTree.isGroupExpanded(group),\n\t \'group-semi-checked\': groupsTree.isGroupSemiChecked(group),\n\t \'group-selected\': groupsTree.isGroupSelected(group),\n\t \'group-in-adding\': groupsTree.isGroupInAddingState(group),\n\t \'group-in-edit\': groupsTree.isGroupInEditState(group),\n\t \'group-added\': groupsTree.isGroupInAddedState(group)}"\n\t ng-click="current_page == \'GROUPS\' ? toggleGroupSelected(group) : toggleGroupExpanded(group); $event.stopPropagation()"\n\t ng-mouseover="mouseOverGroup(group); $event.stopPropagation()"\n\t ng-mouseleave="mouseLeaveGroup(group); $event.stopPropagation()"\n\t ng-include src="\'templates/settings/permissions/GroupsTreeItem.html\'">\n\t</li>\n</ul>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e){var n="templates/settings/permissions/GroupsTreeItem.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="group-left-controls">\n\n\t\x3c!-- indent (in case of no chevron) --\x3e\n\t<span ng-if="!group.childGroups || !group.childGroups.length" class="indent"></span>\n\n\t\x3c!-- chevron icon (group expanded or collapsed) --\x3e\n\t<span ng-if="group.childGroups && group.childGroups.length"\n\t ng-class="groupsTree.isGroupExpanded(group) ? \'glyphicon-chevron-down\' : \'glyphicon-chevron-right\'"\n\t class="icon expand-icon glyphicon"\n\t ng-click="toggleGroupExpanded(group); $event.stopPropagation()">\n\t</span>\n\n\t\x3c!-- check icon (enabled) --\x3e\n\t<span ng-if="groupsTree.getConfig(\'showChecks\')"\n\t ng-class="groupsTree.isGroupChecked(group) || groupsTree.isGroupSemiChecked(group) ? \'glyphicon-check\' : \'glyphicon-unchecked\'"\n\t class="icon check-icon check-enabled glyphicon"\n\t ng-click="toggleGroupChecked(group); $event.stopPropagation()">\n\t</span>\n\n\t\x3c!-- group name --\x3e\n\t<span ng-if="!groupsTree.isGroupInAddingState(group) && !groupsTree.isGroupInEditState(group)" class="group-name">\n\t\t{{group.name}}\n\t</span>\n\n\t\x3c!--group controls (add and edit)--\x3e\n\t<span ng-if="groupsTree.isGroupInAddingState(group) || groupsTree.isGroupInEditState(group)" class="group-controls">\n\t\t\x3c!-- input add --\x3e\n\t\t<input class="form-control"\n\t\t placeholder="{{\'Group name\'|translate}}"\n\t\t ng-model="group.name"\n\t\t ng-if="groupsTree.isGroupInAddingState(group)"\n\t\t ng-click="$event.stopPropagation()"\n\t\t press-key=\'{ "enter" : "acceptAddingGroup", "esc" : "cancelAddingGroup", "data" : {{group.local_id}} }\'\n\t\t init-focus\n\t\t keep-focus>\n\n\t\t\x3c!-- input edit --\x3e\n\t\t<input class="form-control"\n\t\t ng-model="group.name"\n\t\t ng-if="groupsTree.isGroupInEditState(group)"\n\t\t ng-click="$event.stopPropagation()"\n\t\t press-key=\'{ "enter" : "acceptUpdatingGroupName", "esc" : "cancelUpdatingGroupName", "data" : {{group.local_id}} }\'\n\t\t init-focus\n\t\t keep-focus>\n\n\t\t<button ng-if="groupsTree.isGroupInAddingState(group)"\n\t\t title="{{\'Add subgroup\'|translate}}"\n\t\t type="button"\n\t\t class="btn btn-default"\n\t\t ng-click="acceptAddingGroup(group.local_id); $event.stopPropagation()">\n\t\t\t<span class="fa fa-check" aria-hidden="true"></span>\n\t\t</button>\n\n\t\t<button ng-if="groupsTree.isGroupInAddingState(group)"\n\t\t title="{{\'Cancel adding subgroup\'|translate}}"\n\t\t type="button"\n\t\t class="btn btn-default"\n\t\t ng-click="cancelAddingGroup(group.local_id); $event.stopPropagation()">\n\t\t\t<span class="fa fa-times" aria-hidden="true"></span>\n\t\t</button>\n\n\t\t<button ng-if="!groupsTree.isGroupInAddingState(group)"\n\t\t title="{{\'Accept new name for this group\'|translate}}"\n\t\t type="button"\n\t\t class="btn btn-default"\n\t\t ng-click="acceptUpdatingGroupName(group.local_id); $event.stopPropagation()">\n\t\t\t<span class="fa fa-check" aria-hidden="true"></span>\n\t\t</button>\n\n\t\t<button ng-if="!groupsTree.isGroupInAddingState(group)"\n\t\t title="{{\'Cancel editing group name\'|translate}}"\n\t\t type="button"\n\t\t class="btn btn-default"\n\t\t ng-click="cancelUpdatingGroupName(group.local_id); $event.stopPropagation()">\n\t\t\t<span class="fa fa-times" aria-hidden="true"></span>\n\t\t</button>\n\t</span>\n\n</div>\n\n\x3c!-- group attributes --\x3e\n<div class="group-right-controls">\n\t<div class="btn-group dropdown" dropdown\n\t ng-show="groupsTree.getConfig(\'showAttributes\') &&\n\t !groupsTree.isGroupInAddingState(group) && !groupsTree.isGroupInEditState(group)"\n\t title="{{getGroupNotWritableText(group)}}"\n\t style="color:black">\n\t\t<button type="button" class="btn btn-default dropdown-toggle" dropdown-toggle data-toggle="dropdown"\n\t\t aria-haspopup="true" aria-expanded="false"\n\t\t ng-disabled="group.id !== 0 && !group.security.canWrite"\n\t\t ng-click="$event.stopPropagation()">\n\t\t\t<span class="group-attributes-summary"\n\t\t\t style="{{group.id === 0 || group.security.canWrite ? \'margin-right:6px\' : \'\'}} ">\n\t\t\t\t{{group.attributes_string || (\'Group permissions\'|translate)}}\n\t\t\t</span>\n\t\t\t<span ng-if="group.id === 0 || group.security.canWrite" class="caret"></span>\n\t\t</button>\n\t\t<ul class="dropdown-menu"\n\t\t ng-if="group.id === 0 || group.security.canWrite"\n\t\t style="left:auto; right:0">\n\t\t\t<li ng-repeat="(name, translation) in attributeNames"\n\t\t\t ng-click="toggleGroupAttribute(group, name); $event.stopPropagation()"\n\t\t\t ng-class="{ \'disabled\' : !isUserAllowedToChangeAttribute(name) }">\n\t\t\t\t<span class="check-icon glyphicon"\n\t\t\t\t ng-class="group.isAttributeEnabled(name) ? \'glyphicon-check\' : \'glyphicon-unchecked\'"></span>\n\t\t\t\t{{translation}}\n\t\t\t</li>\n\t\t</ul>\n\t</div>\n</div>\n\n\x3c!-- children groups --\x3e\n<ul class="list-group" ng-hide="!groupsTree.isGroupExpanded(group) || !group.childGroups.length">\n\t<li ng-repeat="group in group.childGroups | orderBy: \'name\'"\n\t class="list-group-item"\n\t ng-if="!groupsTree.isGroupExcluded(group)"\n\t ng-class="{\'group-hover\': groupsTree.isGroupHovered(group),\n\t \'group-disabled\': !groupsTree.isGroupEnabled(group),\n\t \'group-expanded\': groupsTree.isGroupExpanded(group),\n\t \'group-semi-checked\': groupsTree.isGroupSemiChecked(group),\n\t \'group-selected\': groupsTree.isGroupSelected(group),\n\t \'group-in-adding\': groupsTree.isGroupInAddingState(group),\n\t \'group-in-edit\': groupsTree.isGroupInEditState(group),\n\t \'group-added\': groupsTree.isGroupInAddedState(group)}"\n\t ng-click="current_page == \'GROUPS\' ? toggleGroupSelected(group) : toggleGroupExpanded(group); $event.stopPropagation()"\n\t ng-mouseover="mouseOverGroup(group); $event.stopPropagation()"\n\t ng-mouseleave="mouseLeaveGroup(group); $event.stopPropagation()"\n\t ng-include src="\'templates/settings/permissions/GroupsTreeItem.html\'"></li>\n</ul>\n')}]),t.exports=n},function(t,e){var n="templates/settings/permissions/Users.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div id="settings-users-panel" class="panel panel-default" ng-controller="UserController">\n\n\t\x3c!-- Unsaved changes modal --\x3e\n\t<modal>\n\t\t<warning-dialog modal-id="\'users-unsaved-changes-modal\'" parent-controller="this"></warning-dialog>\n\t</modal>\n\t\x3c!-- Add user modal --\x3e\n\t<modal>\n\t\t<user-editor modal-id="save-user-modal" user="adding"></user-editor>\n\t</modal>\n\t\x3c!-- Modify user modal --\x3e\n\t<modal>\n\t\t<user-editor modal-id="edit-profile-modal" user="edited"></user-editor>\n\t</modal>\n\n\t<div class="panel-body">\n\t\t<div class="row" style="text-align:center">\n\t\t\t<div class="col-md-6" style="margin:5px 0;text-align:left">\n\n\t\t\t\t\x3c!-- Users list --\x3e\n\t\t\t\t<div style="margin-bottom: 10px">\n\t\t\t\t\t<select multiple class="form-control"\n\t\t\t\t\t\t\tng-model="selectedUsers"\n\t\t\t\t\t\t\tng-change="updateGroupsForSelectedUsers()"\n\t\t\t\t\t\t\tng-options="user.id as getFriendlyName(user) for user in permissionsData.users | filter:isUserVisibleInList"\n\t\t\t\t\t\t\toptions-disabled="!isUserEnabledInList(user) for user in permissionsData.users | filter:isUserVisibleInList"\n\t\t\t\t\t\t\tng-disabled="!permissionsData.users || !permissionsData.groups"\n\t\t\t\t\t\t\tsize=20 style="width:100%; max-height:400px; padding:10px">\n\t\t\t\t\t</select>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="btn-toolbar">\n\t\t\t\t\t<div class="btn-group">\n\t\t\t\t\t\t\x3c!--select all users--\x3e\n\t\t\t\t\t\t<button title="{{\'Select all\'|translate}}"\n\t\t\t\t\t\t type="button" class="btn btn-default"\n\t\t\t\t\t\t ng-disabled="!permissionsData.users || !permissionsData.groups"\n\t\t\t\t\t\t ng-click="selectAllUsers()"\n\t\t\t\t\t\t aria-label="Select all">\n\t\t\t\t\t\t\t<span class="fa fa-check-square-o" aria-hidden="true"></span>\n\t\t\t\t\t\t</button>\n\n\t\t\t\t\t\t\x3c!--deselect all users--\x3e\n\t\t\t\t\t\t<button title="{{\'Deselect all\'|translate}}"\n\t\t\t\t\t\t type="button" class="btn btn-default"\n\t\t\t\t\t\t ng-disabled="!permissionsData.users || !permissionsData.groups"\n\t\t\t\t\t\t ng-click="deselectAllUsers()"\n\t\t\t\t\t\t aria-label="Deselect all">\n\t\t\t\t\t\t\t<span class="fa fa-square-o" aria-hidden="true"></span>\n\t\t\t\t\t\t</button>\n\t\t\t\t\t</div>\n\t\t\t\t\t\x3c!-- refresh users list --\x3e\n\t\t\t\t\t<button title="{{\'Refresh the list of users\'|translate}}"\n\t\t\t\t\t type="button" class="btn btn-default"\n\t\t\t\t\t ng-disabled="!permissionsData.users || !permissionsData.groups"\n\t\t\t\t\t ng-click="deselectAllUsers(); refreshUsersList()"\n\t\t\t\t\t aria-label="Refresh the list of users">\n\t\t\t\t\t\t<span class="fa fa-refresh" aria-hidden="true"></span>\n\t\t\t\t\t</button>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="btn-toolbar" style="position:absolute; right:15px; bottom:0">\n\t\t\t\t\t<div class="btn-group margin-right-small">\n\t\t\t\t\t\t\x3c!-- add user --\x3e\n\t\t\t\t\t\t<button title="{{\'Add user\'|translate}}"\n\t\t\t\t\t\t type="button" class="btn btn-default"\n\t\t\t\t\t\t ng-disabled="!canAddUser()"\n\t\t\t\t\t\t ng-click="addUser()"\n\t\t\t\t\t\t aria-label="Add user">\n\t\t\t\t\t\t\t<span class="fa fa-plus" aria-hidden="true"></span>\n\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\x3c!-- edit one selected user --\x3e\n\t\t\t\t\t\t<button title="{{\'Edit selected user\'|translate}}"\n\t\t\t\t\t\t type="button" class="btn btn-default"\n\t\t\t\t\t\t ng-disabled="selectedUsers.length != 1"\n\t\t\t\t\t\t ng-click="editProfile(getUserById(selectedUsers[0], permissionsData.users))"\n\t\t\t\t\t\t aria-label="Edit selected user">\n\t\t\t\t\t\t\t<span class="fa fa-pencil" aria-hidden="true"></span>\n\t\t\t\t\t\t</button>\n\t\t\t\t\t</div>\n\t\t\t\t\t\x3c!-- delete selected users --\x3e\n\t\t\t\t\t<delete-confirmation button-disabled="!selectedUsers.length"\n\t\t\t\t\t aria-label="{{\'Delete selected users\'|translate}}"\n\t\t\t\t\t on-confirm-callback="removeUsers(selectedUsers); deselectAllUsers()">\n\t\t\t\t\t\t<button-content>\n\t\t\t\t\t\t\t<i class="fa fa-trash-o"></i>\n\t\t\t\t\t\t</button-content>\n\t\t\t\t\t\t<span translate>Selected users will be deleted.</span>\n\t\t\t\t\t</delete-confirmation>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class="col-md-6" style="margin:5px 0">\n\t\t\t\t<div translate>Membership</div>\n\n\t\t\t\t\x3c!-- Groups tree --\x3e\n\t\t\t\t<div ng-include src="\'templates/settings/permissions/GroupsTree.html\'"></div>\n\n\t\t\t</div>\n\t\t</div>\n\t\t<div class="row margin-top-small">\n\t\t\t<license-user-limit-warning class="col-md-6"></license-user-limit-warning>\n\t\t</div>\n\t</div>\n\n\t<div class="panel-footer">\n\t\t<div class="control-buttons">\n\t\t\t<discard-button ng-click="resetUserGroups()"\n\t\t\t ng-disabled="!permissionsData.users || !isDataChanged() || isSavingInProgress()"\n\t\t\t title="{{\'Reset all changes\'|translate}}">\n\t\t\t</discard-button>\n\t\t\t<save-button ng-click="saveUserGroups()"\n\t\t\t ng-disabled="!permissionsData.users || !isDataChanged() || isSavingInProgress()"\n\t\t\t in-progress="isSavingInProgress()"\n\t\t\t title="{{\'Save all changes\'|translate}}">\n\t\t\t</save-button>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e){var n="templates/vectormap/VectorMapDialogs.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'\x3c!-- Modal for confirming deletion of a layer --\x3e\n<modal>\n\t<div class="modal fade" id="confirmDeleteLayer" tabindex="-1" role="dialog"\n\t\t aria-labelledby="confirmDelType" aria-hidden="true">\n\t\t<div class="modal-dialog">\n\t\t\t<div class="modal-content">\n\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<h4 translate translate-context="title">Confirm</h4>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="modal-body" translate>\n\t\t\t\t\tThis action will delete the selected vector layers.\n\t\t\t\t</div>\n\n\t\t\t\t<div class="modal-footer">\n\t\t\t\t\t<cancel-button data-dismiss="modal"></cancel-button>\n\t\t\t\t\t<delete-button data-dismiss="modal" ng-click="vm.removeSelection()"></delete-button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n')}]),t.exports=n},function(t,e){var n="templates/vectormap/VectorMapToolbox.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"\x3c!--vector map / layer editor--\x3e\n<vector-map-editor></vector-map-editor>\n")}]),t.exports=n},function(t,e,n){t.exports=n.p+"translations/de.json"},function(t,e,n){t.exports=n.p+"translations/en.json"},function(t,e,n){t.exports=n.p+"translations/ja.json"},function(t,e,n){t.exports=n.p+"translations/zh.json"},function(t,e,n){t.exports=n.p+"translations/zh_tw.json"},function(t,e,n){t.exports=n.p+"translations/cs.json"},function(t,e,n){t.exports=n.p+"translations/tr.json"},function(t,e,n){t.exports=n.p+"translations/hu.json"},function(t,e,n){t.exports=n.p+"translations/fr.json"},function(t,e,n){"use strict";n.r(e);var i=n(128),r=n.n(i),o=r.a.EVENT_START,a=r.a.EVENT_MOVE,s=r.a.EVENT_END,c=r.a.event.determineEventTypes(),l=r.a.utils,u=r.a.PointerEvent;r.a.event.onTouch=function(t,e,n){var i=this,d=function(c){var d,p=c.type.toLowerCase(),h=r.a.HAS_POINTEREVENTS,f=l.inStr(p,"mouse"),g=e;i.shouldDetect&&g===a&&-1===c.button&&0===c.buttons&&(g=d=s),f&&i.preventMouseEvents||(f&&g==o?(i.preventMouseEvents=!1,i.shouldDetect=!0):h&&g==o?i.shouldDetect=!0:f||g!=o||(i.preventMouseEvents=!0,i.shouldDetect=!0),h&&g!=s&&u.updatePointer(g,c),i.shouldDetect&&(d=i.doDetect.call(i,c,g,t,n)),d==s&&(i.preventMouseEvents=!1,i.shouldDetect=!1,u.reset()),h&&g==s&&u.updatePointer(g,c))};return this.on(t,c[e],d),d}},function(t,e){var n;window.onload=function(){var t;(function(){var t=-1;if("Microsoft Internet Explorer"==navigator.appName){var e=navigator.userAgent;null!=new RegExp("MSIE ([0-9]{1,}[.0-9]{0,})").exec(e)&&(t=parseFloat(RegExp.$1))}return t})()>-1&&((t=document.createElement("div")).innerHTML='<h1>Your browser or system does not support WebGL</h1><h2>WebGL could not be initialized.</h2><p>Please make sure your browser and graphics hardware support WebGL.<br>Recent versions of <a href="http://www.google.com/chrome/" target="_blank">Google Chrome</a> and<a href="http://www.mozilla.org/firefox" target="_blank">Mozilla Firefox</a> should work fine.</p><p>See <a href="http://www.khronos.org/webgl/wiki/Getting_a_WebGL_Implementation" target="_blank">this page</a> onhow to get a WebGL implementation.</p><p>You can test if your browser supports WebGL <a href="http://get.webgl.org/" target="_blank">here</a>.</p>',t.style.position="absolute",t.id="webGlMissingIE",t.className="webGlMissing",document.body.appendChild(t))},n=1,Object.defineProperty(Object.prototype,"__unique_id",{writable:!0}),Object.defineProperty(Object.prototype,"unique_id",{get:function(){return null==this.__unique_id&&(this.__unique_id=n++),this.__unique_id}})},function(t,e,n){"use strict";n.r(e),function(t){var e=n(2),i=n(124),r=n.n(i),o=(n(210),n(4));window.IV.THREE=o,window.IV.TWEEN=r.a,window.IV.angular=e,window.IV.jQuery=t,IndoorViewerWebApp.constant("apiEndpoint","api/"),IndoorViewerWebApp.factory("IV",[function(){return window.IV}]),IndoorViewerWebApp.config(["$compileProvider",function(t){t.aHrefSanitizationWhitelist(/^\s*(blob|http|https|mailto):/)}]),IndoorViewerWebApp.config(["hotkeysProvider","gettext",function(t,e){t.templateTitle=e("Available Keyboard Shortcuts",void 0,"title"),t.cheatSheetHotkey="?",t.cheatSheetDescription=e("Show/hide this cheatsheet"),t.template=n(1006)}]),IndoorViewerWebApp.config(["$sanitizeProvider",function(t){t.addValidElements(["audio","iframe","source"]),t.addValidAttrs(["allowfullscreen","autoplay","controls","style"])}]);var a=window.location.href.includes("#");IndoorViewerWebApp.constant("isHtml5Mode",!a),IndoorViewerWebApp.config(["$locationProvider",function(t){t.html5Mode({enabled:!a,requireBase:!1}),t.hashPrefix("")}]),IndoorViewerWebApp.run(["TrackingService",function(t){t.setupTracking()}])}.call(this,n(19))},function(t,e,n){t.exports='<modal>\n\t<div class="custom-modal cheatsheet-modal" ng-if="helpVisible">\n\t\t<div class="modal in" tabindex="-1" init-focus>\n\t\t\t<div class="modal-dialog modal-dialog-wide">\n\t\t\t\t<div class="modal-content">\n\t\t\t\t\t<div class="modal-header">\n\t\t\t\t\t\t<img class="menu-close-button ic_svg" ng-src="'+n(35)+'"\n\t\t\t\t\t\t alt="{{\'Close\'|translate}}" ng-click="toggleCheatSheet()">\n\t\t\t\t\t\t<h4>{{ title | translate:"title"}}</h4>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="modal-body">\n\t\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t<li class="" ng-repeat="hotkey in hotkeys | filter:{ description: \'!$$undefined$$\' }">\n\t\t\t\t\t\t\t\t<span ng-repeat="key in hotkey.format() track by $index" class="cfp-hotkeys-key">{{ key }}</span>\n\t\t\t\t\t\t\t\t<span class="cfp-hotkeys-text">{{ hotkey.description | translate}}</span>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t</ul>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class="modal-backdrop in" ng-class="{in: helpVisible}" data-iv-modal-stack="-1"></div>\n\t</div>\n</modal>\n'},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(20),o=n(101),a=n(210),s=n(92),c=n(8),l=function(){function t(t){this.params=t,void 0===this.getIvWindow().IV.base_url&&(this.params=this.params||{},this.params.base_url=this.params.base_url||"",this.setBaseURL(),this.crossSiteSetup(),this.bootstrapAngularAndSetupApi())}return t.prototype.reinit=function(){this.impl.reinit()},t.prototype.setSceneRendering=function(t,e){this.impl.setSceneRendering(t,e)},t.prototype.moveToPOIID=function(t,e,n,i){return console.warn('Deprecated usage of "moveToPOIID", use "moveToPoiId" instead.'),this.moveToPoiId(t,e,n,i)},t.prototype.moveToPoiId=function(t,e,n,i){return this.impl.moveToPoiId(t,e,n,i)},t.prototype.moveToPOI=function(t,e,n,i){return console.warn('Deprecated usage of "moveToPOI", use "moveToPoi" instead.'),this.moveToPoi(t,e,n,i)},t.prototype.moveToPoi=function(t,e,n,i){return this.impl.moveToPoi(t,e,n,i)},t.prototype.moveToStartingLoc=function(){return this.impl.moveToStartingLoc()},t.prototype.moveToImageId=function(t,e,n){return this.impl.moveToImageId(t,e,n)},t.prototype.moveToLocationID=function(t,e,n){return console.warn('Deprecated usage of "moveToLocationID", use "moveToImageId" instead.'),this.moveToImageId(t,e,n)},t.prototype.moveToLocationId=function(t,e,n){return console.warn('Deprecated usage of "moveToLocationId", use "moveToImageId" instead.'),this.impl.moveToImageId(t,e,n)},t.prototype.moveToImage=function(t,e,n,i,r){return this.impl.moveToImage(t,e,n,i)},t.prototype.moveToLocation=function(t,e,n,i){return console.warn('Deprecated usage of "moveToLocation", use "moveToImage" instead.'),this.impl.moveToImage(t,e,n,i)},t.prototype.moveToGeoLocation=function(t,e,n,i,r,o,a,s){return this.impl.moveToGeoLocation(t,e,n,i,r,o,a,s)},t.prototype.moveToDataset=function(t,e,n){return this.impl.moveToDataset(t,e,n)},t.prototype.moveToSiteModelEntity=function(t,e,n){return this.impl.moveToSiteModelEntity(t,e,n)},t.prototype.moveToSiteModelEntityId=function(t,e,n){return this.impl.moveToSiteModelEntityId(t,e,n)},t.prototype.isMoving=function(){return this.impl.isMoving()},t.prototype.isMovingToPoi=function(){return this.impl.isMovingToPoi()},t.prototype.getMainView=function(){return this.impl.getMainView()},t.prototype.getMapView=function(){return this.impl.getMapView()},t.prototype.resetView=function(){return this.impl.resetView()},t.prototype.setMainScene=function(t){return console.log('Deprecated usage of "setMainScene", use "api.view.service.setPrimaryView" instead'),this.impl.setMainScene(t)},t.prototype.swapScenes=function(){return console.log('Deprecated usage of "swapScenes", use "api.view.service.swapViews" instead'),this.impl.swapScenes()},t.prototype.setPOITypesVisibility=function(t,e){console.warn('Deprecated usage of "setPOITypesVisibility", use "setPoiTypesVisibility" instead.'),this.setPoiTypesVisibility(t,e)},t.prototype.setPoiTypesVisibility=function(t,e){this.impl.setPoiTypesVisibility(t,e)},t.prototype.getShareURL=function(){return console.warn('Deprecated usage of "getShareURL", use "getShareUrl" instead.'),this.getShareUrl()},t.prototype.getShareUrl=function(){return this.impl.getShareUrl()},t.prototype.setLanguage=function(t){this.impl.setLanguage(t)},t.prototype.getLanguage=function(){return this.impl.getLanguage()},t.prototype.getCurrentCursorPosition=function(){return this.impl.getCurrentCursorPosition()},t.prototype.getMenuItems=function(){return this.impl.getMenuItems()},t.prototype.addEventListener=function(t,e){return this.impl.addEventListener(t,e)},t.prototype.removeEventListener=function(t,e){return this.impl.removeEventListener(t,e)},t.prototype.route=function(t,e,n){return this.impl.route(t,e,n)},t.prototype.isLicensed=function(){return this.impl.isLicensed()},t.prototype.getPoiRepository=function(){return this.impl.getPoiRepository()},t.prototype.getPoiTypeRepository=function(){return this.impl.getPoiTypeRepository()},t.prototype.getScreenShot=function(t){return this.impl.getScreenShot(t)},t.prototype.setBaseURL=function(){var t;t=this.params.base_url?this.params.base_url:window.location.href.split(/[?#]/)[0],this.getIvWindow().IV.base_url=t.replace(/\/?$/,"/")},t.prototype.crossSiteSetup=function(){this.redirectAngularBaseUrl(this.getIvWindow().IndoorViewerWebApp,this.getIvWindow().IV.base_url),a.isSameOrigin(this.params.base_url)||o.setCrossOrigin("anonymous")},t.prototype.redirectAngularBaseUrl=function(t,e){t.config(["$httpProvider",function(t){t.interceptors.push("middleware")}]),t.factory("middleware",["$templateCache",function(t){return{request:function(n){return!n.disableBaseUrlPrefixing&&a.isUrlRelative(n.url)&&void 0===t.get(n.url)&&(n.url=e+n.url),n}}}])},t.prototype.bootstrapAngularAndSetupApi=function(){var t=this;i.element(document).ready(function(){t.setupMethodsOnIvWindowObject(!1),t.getIvWindow().IV.bootstrapApp().then(function(){var e=t.getIvWindow().IV.injector;t.impl=e.get("IndoorViewerFactory").create(t.params),e.get("LicenseService").initialized.then(function(){return t.performBootstrapCallbacks()}).catch(function(){return t.performBootstrapCallbacks()})}).catch(c.handleWarning)})},t.prototype.performBootstrapCallbacks=function(){this.getIvWindow().IV.bootstrapped=function(t){return t()};var t=this.getIvWindow().IV.bootstrapCallbacks;this.getIvWindow().IV=Object.assign({},this.getIvWindow().IV),this.setupMethodsOnIvWindowObject(!0),t.forEach(function(t){return t()}),t.length=0},t.prototype.checkedCall=function(t,e){var n=this;return function(){for(var i=[],o=0;o<arguments.length;o++)i[o]=arguments[o];if(!e||n.getIvWindow().IV.injector.get("LicenseService").isFeatureEnabled(s.LicenseFeatureType.JAVASCRIPT_API))return t.apply(n,i);window.setTimeout(r.requestAnimationFrame_,0)}},t.prototype.setupMethodsOnIvWindowObject=function(t){var e=this.getIvWindow().IV;e.addEventListener=this.checkedCall(this.addEventListener,t),e.getCurrentCursorPosition=this.checkedCall(this.getCurrentCursorPosition,t),e.getLanguage=this.checkedCall(this.getLanguage,t),e.getMainView=this.checkedCall(this.getMainView,t),e.getMapView=this.checkedCall(this.getMapView,t),e.getMenuItems=this.checkedCall(this.getMenuItems,t),e.getPoiRepository=this.checkedCall(this.getPoiRepository,t),e.getPoiTypeRepository=this.checkedCall(this.getPoiTypeRepository,t),e.getScreenShot=this.checkedCall(this.getScreenShot,t),e.getShareURL=this.checkedCall(this.getShareURL,t),e.getShareUrl=this.checkedCall(this.getShareUrl,t),e.isLicensed=this.checkedCall(this.isLicensed,!1),e.isMoving=this.checkedCall(this.isMoving,t),e.isMovingToPoi=this.checkedCall(this.isMovingToPoi,t),e.moveToDataset=this.checkedCall(this.moveToDataset,t),e.moveToGeoLocation=this.checkedCall(this.moveToGeoLocation,t),e.moveToImage=this.checkedCall(this.moveToImage,t),e.moveToImageId=this.checkedCall(this.moveToImageId,t),e.moveToLocation=this.checkedCall(this.moveToLocation,t),e.moveToLocationID=this.checkedCall(this.moveToLocationID,t),e.moveToLocationId=this.checkedCall(this.moveToLocationId,t),e.moveToPOI=this.checkedCall(this.moveToPOI,t),e.moveToPOIID=this.checkedCall(this.moveToPOIID,t),e.moveToPoi=this.checkedCall(this.moveToPoi,t),e.moveToPoiId=this.checkedCall(this.moveToPoiId,t),e.moveToSiteModelEntity=this.checkedCall(this.moveToSiteModelEntity,t),e.moveToSiteModelEntityId=this.checkedCall(this.moveToSiteModelEntityId,t),e.moveToStartingLoc=this.checkedCall(this.moveToStartingLoc,t),e.reinit=this.checkedCall(this.reinit,t),e.removeEventListener=this.checkedCall(this.removeEventListener,t),e.resetView=this.checkedCall(this.resetView,t),e.route=this.checkedCall(this.route,t),e.setLanguage=this.checkedCall(this.setLanguage,t),e.setMainScene=this.checkedCall(this.setMainScene,t),e.setPOITypesVisibility=this.checkedCall(this.setPOITypesVisibility,t),e.setPoiTypesVisibility=this.checkedCall(this.setPoiTypesVisibility,t),e.setSceneRendering=this.checkedCall(this.setSceneRendering,t),e.swapScenes=this.checkedCall(this.swapScenes,t)},t.prototype.getIvWindow=function(){return window},t}();window.IndoorViewer=l},function(t,e,n){"use strict";n.r(e),n.d(e,"OBJLoader",function(){return r});var i=n(4),r=function(t){this.manager=void 0!==t?t:i.DefaultLoadingManager,this.materials=null,this.regexp={vertex_pattern:/^v\s+([\d|\.|\+|\-|e|E]+)\s+([\d|\.|\+|\-|e|E]+)\s+([\d|\.|\+|\-|e|E]+)/,normal_pattern:/^vn\s+([\d|\.|\+|\-|e|E]+)\s+([\d|\.|\+|\-|e|E]+)\s+([\d|\.|\+|\-|e|E]+)/,uv_pattern:/^vt\s+([\d|\.|\+|\-|e|E]+)\s+([\d|\.|\+|\-|e|E]+)/,face_vertex:/^f\s+(-?\d+)\s+(-?\d+)\s+(-?\d+)(?:\s+(-?\d+))?/,face_vertex_uv:/^f\s+(-?\d+)\/(-?\d+)\s+(-?\d+)\/(-?\d+)\s+(-?\d+)\/(-?\d+)(?:\s+(-?\d+)\/(-?\d+))?/,face_vertex_uv_normal:/^f\s+(-?\d+)\/(-?\d+)\/(-?\d+)\s+(-?\d+)\/(-?\d+)\/(-?\d+)\s+(-?\d+)\/(-?\d+)\/(-?\d+)(?:\s+(-?\d+)\/(-?\d+)\/(-?\d+))?/,face_vertex_normal:/^f\s+(-?\d+)\/\/(-?\d+)\s+(-?\d+)\/\/(-?\d+)\s+(-?\d+)\/\/(-?\d+)(?:\s+(-?\d+)\/\/(-?\d+))?/,object_pattern:/^[og]\s*(.+)?/,smoothing_pattern:/^s\s+(\d+|on|off)/,material_library_pattern:/^mtllib /,material_use_pattern:/^usemtl /}};r.prototype={constructor:r,load:function(t,e,n,r){var o=this,a=new i.FileLoader(o.manager);a.setPath(this.path),a.load(t,function(t){e(o.parse(t))},n,r)},setPath:function(t){this.path=t},setMaterials:function(t){this.materials=t},_createParserState:function(){var t={objects:[],object:{},vertices:[],normals:[],uvs:[],materialLibraries:[],startObject:function(t,e){if(this.object&&!1===this.object.fromDeclaration)return this.object.name=t,void(this.object.fromDeclaration=!1!==e);this.object&&"function"==typeof this.object._finalize&&this.object._finalize();var n=this.object&&"function"==typeof this.object.currentMaterial?this.object.currentMaterial():void 0;if(this.object={name:t||"",fromDeclaration:!1!==e,geometry:{vertices:[],normals:[],uvs:[]},materials:[],smooth:!0,startMaterial:function(t,e){var n=this._finalize(!1);n&&(n.inherited||n.groupCount<=0)&&this.materials.splice(n.index,1);var i={index:this.materials.length,name:t||"",mtllib:Array.isArray(e)&&e.length>0?e[e.length-1]:"",smooth:void 0!==n?n.smooth:this.smooth,groupStart:void 0!==n?n.groupEnd:0,groupEnd:-1,groupCount:-1,inherited:!1,clone:function(t){return{index:"number"==typeof t?t:this.index,name:this.name,mtllib:this.mtllib,smooth:this.smooth,groupStart:this.groupEnd,groupEnd:-1,groupCount:-1,inherited:!1}}};return this.materials.push(i),i},currentMaterial:function(){if(this.materials.length>0)return this.materials[this.materials.length-1]},_finalize:function(t){var e=this.currentMaterial();return e&&-1===e.groupEnd&&(e.groupEnd=this.geometry.vertices.length/3,e.groupCount=e.groupEnd-e.groupStart,e.inherited=!1),!1!==t&&0===this.materials.length&&this.materials.push({name:"",smooth:this.smooth}),e}},n&&n.name&&"function"==typeof n.clone){var i=n.clone(0);i.inherited=!0,this.object.materials.push(i)}this.objects.push(this.object)},finalize:function(){this.object&&"function"==typeof this.object._finalize&&this.object._finalize()},parseVertexIndex:function(t,e){var n=parseInt(t,10);return 3*(n>=0?n-1:n+e/3)},parseNormalIndex:function(t,e){var n=parseInt(t,10);return 3*(n>=0?n-1:n+e/3)},parseUVIndex:function(t,e){var n=parseInt(t,10);return 2*(n>=0?n-1:n+e/2)},addVertex:function(t,e,n){var i=this.vertices,r=this.object.geometry.vertices;r.push(i[t+0]),r.push(i[t+1]),r.push(i[t+2]),r.push(i[e+0]),r.push(i[e+1]),r.push(i[e+2]),r.push(i[n+0]),r.push(i[n+1]),r.push(i[n+2])},addVertexLine:function(t){var e=this.vertices,n=this.object.geometry.vertices;n.push(e[t+0]),n.push(e[t+1]),n.push(e[t+2])},addNormal:function(t,e,n){var i=this.normals,r=this.object.geometry.normals;r.push(i[t+0]),r.push(i[t+1]),r.push(i[t+2]),r.push(i[e+0]),r.push(i[e+1]),r.push(i[e+2]),r.push(i[n+0]),r.push(i[n+1]),r.push(i[n+2])},addUV:function(t,e,n){var i=this.uvs,r=this.object.geometry.uvs;r.push(i[t+0]),r.push(i[t+1]),r.push(i[e+0]),r.push(i[e+1]),r.push(i[n+0]),r.push(i[n+1])},addUVLine:function(t){var e=this.uvs,n=this.object.geometry.uvs;n.push(e[t+0]),n.push(e[t+1])},addFace:function(t,e,n,i,r,o,a,s,c,l,u,d){var p,h=this.vertices.length,f=this.parseVertexIndex(t,h),g=this.parseVertexIndex(e,h),m=this.parseVertexIndex(n,h);if(void 0===i?this.addVertex(f,g,m):(p=this.parseVertexIndex(i,h),this.addVertex(f,g,p),this.addVertex(g,m,p)),void 0!==r){var v=this.uvs.length;f=this.parseUVIndex(r,v),g=this.parseUVIndex(o,v),m=this.parseUVIndex(a,v),void 0===i?this.addUV(f,g,m):(p=this.parseUVIndex(s,v),this.addUV(f,g,p),this.addUV(g,m,p))}if(void 0!==c){var y=this.normals.length;f=this.parseNormalIndex(c,y),g=c===l?f:this.parseNormalIndex(l,y),m=c===u?f:this.parseNormalIndex(u,y),void 0===i?this.addNormal(f,g,m):(p=this.parseNormalIndex(d,y),this.addNormal(f,g,p),this.addNormal(g,m,p))}},addLineGeometry:function(t,e){this.object.geometry.type="Line";for(var n=this.vertices.length,i=this.uvs.length,r=0,o=t.length;r<o;r++)this.addVertexLine(this.parseVertexIndex(t[r],n));var a=0;for(o=e.length;a<o;a++)this.addUVLine(this.parseUVIndex(e[a],i))}};return t.startObject("",!1),t},parse:function(t){var e=this._createParserState();-1!==t.indexOf("\r\n")&&(t=t.replace("\r\n","\n"));for(var n=t.split("\n"),r="",o="",a="",s=[],c="function"==typeof"".trimLeft,l=0,u=n.length;l<u;l++)if(r=n[l],0!==(r=c?r.trimLeft():r.trim()).length&&"#"!==(o=r.charAt(0)))if("v"===o)if(" "===(a=r.charAt(1))&&null!==(s=this.regexp.vertex_pattern.exec(r)))e.vertices.push(parseFloat(s[1]),parseFloat(s[2]),parseFloat(s[3]));else if("n"===a&&null!==(s=this.regexp.normal_pattern.exec(r)))e.normals.push(parseFloat(s[1]),parseFloat(s[2]),parseFloat(s[3]));else{if("t"!==a||null===(s=this.regexp.uv_pattern.exec(r)))throw new Error("Unexpected vertex/normal/uv line: '"+r+"'");e.uvs.push(parseFloat(s[1]),parseFloat(s[2]))}else if("f"===o)if(null!==(s=this.regexp.face_vertex_uv_normal.exec(r)))e.addFace(s[1],s[4],s[7],s[10],s[2],s[5],s[8],s[11],s[3],s[6],s[9],s[12]);else if(null!==(s=this.regexp.face_vertex_uv.exec(r)))e.addFace(s[1],s[3],s[5],s[7],s[2],s[4],s[6],s[8]);else if(null!==(s=this.regexp.face_vertex_normal.exec(r)))e.addFace(s[1],s[3],s[5],s[7],void 0,void 0,void 0,void 0,s[2],s[4],s[6],s[8]);else{if(null===(s=this.regexp.face_vertex.exec(r)))throw new Error("Unexpected face line: '"+r+"'");e.addFace(s[1],s[2],s[3],s[4])}else if("l"===o){var d=r.substring(1).trim().split(" "),p=[],h=[];if(-1===r.indexOf("/"))p=d;else for(var f=0,g=d.length;f<g;f++){var m=d[f].split("/");""!==m[0]&&p.push(m[0]),""!==m[1]&&h.push(m[1])}e.addLineGeometry(p,h)}else if(null!==(s=this.regexp.object_pattern.exec(r))){var v=s[0].substr(1).trim();e.startObject(v)}else if(this.regexp.material_use_pattern.test(r))e.object.startMaterial(r.substring(7).trim(),e.materialLibraries);else if(this.regexp.material_library_pattern.test(r))e.materialLibraries.push(r.substring(7).trim());else{if(null===(s=this.regexp.smoothing_pattern.exec(r))){if("\0"===r)continue;throw new Error("Unexpected line: '"+r+"'")}var y=s[1].trim().toLowerCase();e.object.smooth="1"===y||"on"===y,(P=e.object.currentMaterial())&&(P.smooth=e.object.smooth)}e.finalize();var b=new i.Group;for(b.materialLibraries=[].concat(e.materialLibraries),l=0,u=e.objects.length;l<u;l++){var w=e.objects[l],S=w.geometry,x=w.materials,M="Line"===S.type;if(0!==S.vertices.length){var E=new i.BufferGeometry;E.setAttribute("position",new i.BufferAttribute(new Float32Array(S.vertices),3)),S.normals.length>0?E.setAttribute("normal",new i.BufferAttribute(new Float32Array(S.normals),3)):E.computeVertexNormals(),S.uvs.length>0&&E.setAttribute("uv",new i.BufferAttribute(new Float32Array(S.uvs),2));for(var C,A=[],T=0,O=x.length;T<O;T++){var _=x[T],P=void 0;if(null!==this.materials&&(P=this.materials.create(_.name),M&&P&&!(P instanceof i.LineBasicMaterial))){var I=new i.LineBasicMaterial;I.copy(P),P=I}P||((P=M?new i.LineBasicMaterial:new i.MeshPhongMaterial).name=_.name),P.flatShading=!_.smooth,A.push(P)}if(A.length>1){for(T=0,O=x.length;T<O;T++)_=x[T],E.addGroup(_.groupStart,_.groupCount,T);var k=new i.MultiMaterial(A);C=M?new i.Line(E,k):new i.Mesh(E,k)}else C=M?new i.Line(E,A[0]):new i.Mesh(E,A[0]);C.name=w.name,b.add(C)}}return b}}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(177),n(103),n(22),n(385),n(31);var i=n(1062),r=n(2),o=(n(389),n(0)),a=n(6),s=(n(15),n(28),n(54),n(50),n(65),n(27),n(202),n(324),n(166),n(75),n(103),n(123),n(22),n(90),n(36),n(385),n(270),n(38),n(83),n(181),n(263),n(409),n(17),n(271),n(196),n(72),n(410),n(21),n(281),n(91),n(31),n(14),n(272),n(155),n(49),n(182),n(24),n(203),n(424),n(39),n(177),n(106),n(61),n(425),n(73),n(104),n(171),n(86),n(0)),c=n(409),l=n(410),u=n(385),d=n(36),p=n(75),h=n(263),f=n(15),g=n(91),m=n(155),v=n(31),y=n(28),b=n(272),w=n(14),S=n(90),x=n(49),M=n(72),E=n(50),C=n(271),A=n(54),T=n(389),O=n(424),_=n(281),P=n(171),I=n(61),k=n(24),D=n(203),R=n(182),L=n(103),N=n(39),j=n(196),V=n(123),F=n(177),U=n(106),B=n(104),z=n(181),G=n(38),H=n(22),W=n(83),q=n(425),K=n(166),X=n(21),Y=n(73),Z=n(27),J=n(324),Q=n(270),$=n(202),tt=n(65),et=n(17),nt=n(86),it=function(){function t(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m,v,y,b,w,S,x,M,E,C,A,T,O,_,P,I,k,D,R,L,N,j,V,F,U,B,z,G,H,W,q,K,X,Y,Z,J,Q){this.$location=t,this.$rootScope=e,this.gettextCatalog=n,this.PointCloudMenuService=i,this.AffineRefSysRepository=r,this.ApiService=o,this.ApplyBrowserLocaleService=a,this.AuthenticationService=s,this.BundleRepository=c,this.CameraHeadRepository=l,this.ConfigService=u,this.CursorService=d,this.DatasetAlignmentService=p,this.DatasetRepository=h,this.FloorChangerService=f,this.GeoRegistrationService=g,this.GeoTransformationService=m,this.ImageRepository=v,this.ImageService=y,this.JWTTokenService=b,this.LanguageService=w,this.LegacyService=S,this.LicenseService=x,this.MainViewService=M,this.MapViewService=E,this.MeasurementRepository=C,this.MeasurementsService=A,this.MessageReportingService=T,this.ModeService=O,this.ModeSwitchService=_,this.NavGraphService=P,this.PoiRepository=I,this.PoiService=k,this.PoiTypeGroupRepository=D,this.PoiTypeRepository=R,this.PoiTypeService=L,this.ProgressReportService=N,this.RouteService=j,this.SearchService=V,this.SidebarMenuService=F,this.SiteModelRepository=U,this.SiteModelService=B,this.StatusCheckService=z,this.TiledMapRepository=G,this.TrackingService=H,this.UrlService=W,this.UserService=q,this.VectorEntityRepository=K,this.VectorMapRepository=X,this.VectorMapService=Y,this.ViewMenuService=Z,this.ViewService=J,this.InstanceInformationService=Q}return t.prototype.create=function(t){return new i.IndoorViewerImpl(t,this)},t.ɵfac=function(e){return new(e||t)(s.ɵɵinject("$location"),s.ɵɵinject("$rootScope"),s.ɵɵinject("gettextCatalog"),s.ɵɵinject("PointCloudMenuService"),s.ɵɵinject(c.AffineRefSysRepository),s.ɵɵinject(l.ApiService),s.ɵɵinject(u.ApplyBrowserLocaleService),s.ɵɵinject(d.AuthenticationService),s.ɵɵinject(p.BundleRepository),s.ɵɵinject(h.CameraHeadRepository),s.ɵɵinject(f.ConfigService),s.ɵɵinject(g.CursorService),s.ɵɵinject(m.DatasetAlignmentService),s.ɵɵinject(v.DatasetRepository),s.ɵɵinject(y.FloorChangerService),s.ɵɵinject(b.GeoRegistrationService),s.ɵɵinject(w.GeoTransformationService),s.ɵɵinject(S.ImageRepository),s.ɵɵinject(x.ImageService),s.ɵɵinject(M.JWTTokenService),s.ɵɵinject(E.LanguageService),s.ɵɵinject(C.LegacyService),s.ɵɵinject(A.LicenseService),s.ɵɵinject(T.MainViewService),s.ɵɵinject(O.MapViewService),s.ɵɵinject(_.MeasurementRepository),s.ɵɵinject(P.MeasurementsService),s.ɵɵinject(I.MessageReportingService),s.ɵɵinject(k.ModeService),s.ɵɵinject(D.ModeSwitchService),s.ɵɵinject(R.NavGraphService),s.ɵɵinject(L.PoiRepository),s.ɵɵinject(N.PoiService),s.ɵɵinject(j.PoiTypeGroupRepository),s.ɵɵinject(V.PoiTypeRepository),s.ɵɵinject(F.PoiTypeService),s.ɵɵinject(U.ProgressReportService),s.ɵɵinject(B.RouteService),s.ɵɵinject(z.SearchService),s.ɵɵinject(G.SidebarMenuService),s.ɵɵinject(H.SiteModelRepository),s.ɵɵinject(W.SiteModelService),s.ɵɵinject(q.StatusCheckService),s.ɵɵinject(K.TiledMapRepository),s.ɵɵinject(X.TrackingService),s.ɵɵinject(Y.UrlService),s.ɵɵinject(Z.UserService),s.ɵɵinject(J.VectorEntityRepository),s.ɵɵinject(Q.VectorMapRepository),s.ɵɵinject($.VectorMapService),s.ɵɵinject(tt.ViewMenuService),s.ɵɵinject(et.ViewService),s.ɵɵinject(nt.InstanceInformationService))},t.ɵprov=s.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.IndoorViewerFactory=it,s.ɵsetClassMetadata(it,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:o.Inject,args:["$location"]}]},{type:void 0,decorators:[{type:o.Inject,args:["$rootScope"]}]},{type:void 0,decorators:[{type:o.Inject,args:["gettextCatalog"]}]},{type:void 0,decorators:[{type:o.Inject,args:["PointCloudMenuService"]}]},{type:c.AffineRefSysRepository},{type:l.ApiService},{type:u.ApplyBrowserLocaleService},{type:d.AuthenticationService},{type:p.BundleRepository},{type:h.CameraHeadRepository},{type:f.ConfigService},{type:g.CursorService},{type:m.DatasetAlignmentService},{type:v.DatasetRepository},{type:y.FloorChangerService},{type:b.GeoRegistrationService},{type:w.GeoTransformationService},{type:S.ImageRepository},{type:x.ImageService},{type:M.JWTTokenService},{type:E.LanguageService},{type:C.LegacyService},{type:A.LicenseService},{type:T.MainViewService},{type:O.MapViewService},{type:_.MeasurementRepository},{type:P.MeasurementsService},{type:I.MessageReportingService},{type:k.ModeService},{type:D.ModeSwitchService},{type:R.NavGraphService},{type:L.PoiRepository},{type:N.PoiService},{type:j.PoiTypeGroupRepository},{type:V.PoiTypeRepository},{type:F.PoiTypeService},{type:U.ProgressReportService},{type:B.RouteService},{type:z.SearchService},{type:G.SidebarMenuService},{type:H.SiteModelRepository},{type:W.SiteModelService},{type:q.StatusCheckService},{type:K.TiledMapRepository},{type:X.TrackingService},{type:Y.UrlService},{type:Z.UserService},{type:J.VectorEntityRepository},{type:Q.VectorMapRepository},{type:$.VectorMapService},{type:tt.ViewMenuService},{type:et.ViewService},{type:nt.InstanceInformationService}]},null),r.module("IVWebApp").service("IndoorViewerFactory",a.downgradeInjectable(it))},function(t,e,n){var i=n(11),r=n(1011);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,'@-webkit-keyframes resizeanim{0%{opacity:0}to{opacity:0}}@-moz-keyframes resizeanim{0%{opacity:0}to{opacity:0}}@-o-keyframes resizeanim{0%{opacity:0}to{opacity:0}}@keyframes resizeanim{0%{opacity:0}to{opacity:0}}.resize-triggers{visibility:hidden;opacity:0;-webkit-animation:resizeanim 1ms;-moz-animation:1ms resizeanim;-o-animation:1ms resizeanim;animation:resizeanim 1ms}.contract-trigger:before,.resize-triggers,.resize-triggers>div{content:" ";display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden}.resize-triggers>div{background:#eee;overflow:auto}.contract-trigger:before{width:200%;height:200%}',""]),t.exports=e},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.active=!0,e}return r(e,t),e.prototype.reset=function(){this.active=!0},e.prototype.handle=function(e){this.active&&(this.active=!1,t.prototype.handle.call(this,e))},e}(n(521).ErrorWrapper);e.OnceErrorWrapper=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.networkApplies=function(t,e,n){return 504===t},e.prototype.report=function(){return this.gettextCatalog.getString("The proxy server is unable to reach the 4DKanKan server.")},e}(n(308).NetworkIssueDetector);e.ProxyDetector=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.networkApplies=function(t,e,n){return 0===t},e.prototype.report=function(){return this.gettextCatalog.getString("Cannot establish network connection.")},e}(n(308).NetworkIssueDetector);e.NetworkDownDetector=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(){}return t.prototype.report=function(t){console.warn(t)},t}();e.ConsoleReporter=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(t,e){this.MessageReportingService=t,this.gettextCatalog=e}return t.prototype.report=function(t){var e=this.gettextCatalog.getString("Error");this.MessageReportingService.showMessage(e,t)},t}();e.MessageServiceReporter=i},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.networkApplies=function(t,e,n){var i=n.statusText&&n.statusText.length?n.statusText:this.gettextCatalog.getString("Network error"),r=n.data&&(n.data.msg||n.data.exception||n.data.path)||"";return this.error={text:this.gettextCatalog.getString("Network request failed"),status:n.status,statusText:i,details:r},!0},e.prototype.report=function(){return this.error.text+": "+this.error.statusText+" ("+this.error.status+") "+this.error.details},e}(n(308).NetworkIssueDetector);e.RequestErrorDetector=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.applies=function(t){switch(this.getExceptionShortName(t)){case"BundleFileNotFoundException":return this.currentErrorMessage=this.gettextCatalog.getString("Bundle file does not exist or is not accessible.")+" "+this.gettextCatalog.getString("Please contact the system administrator."),!0;case"BundleNotFoundException":return this.currentErrorMessage=this.gettextCatalog.getString("Cannot find bundle."),!0;case"DataDirNotFoundException":return this.currentErrorMessage=this.gettextCatalog.getString("Data directory does not exist or is not accessible.")+" "+this.gettextCatalog.getString("Please contact the system administrator."),!0;case"SiteModelEntityNotFoundException":return this.currentErrorMessage=this.gettextCatalog.getString("Cannot find any floors or buildings with matching names."),!0;default:return!1}},e}(n(145).ServerExceptionClassDetector);e.ServerFileNotFoundExceptionDetector=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.applies=function(t){switch(this.getExceptionShortName(t)){case"MissingBundleFileOnDiskException":return this.currentErrorMessage=this.gettextCatalog.getString("Cannot find bundle file."),!0;case"MissingCameraHeadDataOnDiskException":return this.currentErrorMessage=this.gettextCatalog.getString("Dataset could not be added (missing camera head information). Details:")+" "+this.getExceptionMessage(t),!0;case"MissingDatasetFileOnDiskException":return this.currentErrorMessage=this.gettextCatalog.getString("Cannot find dataset directory. Details:")+" "+this.getExceptionMessage(t),!0;case"MissingPanoFileOnDiskException":return this.currentErrorMessage=this.gettextCatalog.getString("Cannot find pano directory for dataset. Details:")+" "+this.getExceptionMessage(t),!0;case"MissingWebcloudDirOnDiskException":return this.currentErrorMessage=this.gettextCatalog.getString("Cannot find webcloud directory for point-cloud-only dataset. Details:")+" "+this.getExceptionMessage(t),!0;default:return!1}},e}(n(145).ServerExceptionClassDetector);e.ServerMissingFileOnDiskExceptionDetector=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.applies=function(t){switch(this.getExceptionShortName(t)){case"NoSuchBundleException":return this.currentErrorMessage=this.gettextCatalog.getString("Bundle not found."),!0;case"NoSuchDatasetException":return this.currentErrorMessage=this.gettextCatalog.getString("Dataset not found."),!0;case"BadGroupRequestException":return this.currentErrorMessage=this.gettextCatalog.getString("Group not found."),!0;case"NoSuchPointCloudException":return this.currentErrorMessage=this.gettextCatalog.getString("Point cloud file not found."),!0;case"NoSuchReferenceSystemException":case"ReferenceSystemNotFoundException":return this.currentErrorMessage=this.gettextCatalog.getString("Geodetic reference system not found."),!0;case"NoSuchUserException":return this.currentErrorMessage=this.gettextCatalog.getString("User not found."),!0;case"NoSuchVectorMapException":return this.currentErrorMessage=this.gettextCatalog.getString("Vector map not found."),!0;default:return!1}},e}(n(145).ServerExceptionClassDetector);e.ServerNoSuchObjectExceptionDetector=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.applies=function(t){switch(this.getExceptionShortName(t)){case"BundleConflictException":return this.currentErrorMessage=this.gettextCatalog.getString("Bundle has already been added."),!0;case"DatasetConflictException":return this.currentErrorMessage=this.gettextCatalog.getString("Dataset has already been added. Details:")+" "+this.getExceptionMessage(t),!0;case"ImagesConflictException":return this.currentErrorMessage=this.gettextCatalog.getString("Images for dataset have already been added. Details:")+" "+this.getExceptionMessage(t),!0;case"UserConflictException":return this.currentErrorMessage=this.gettextCatalog.getString("User has already been added."),!0;case"WifiConflictException":return this.currentErrorMessage=this.gettextCatalog.getString("WiFi entries for the dataset have already been added. Details:")+" "+this.getExceptionMessage(t),!0;default:return!1}},e}(n(145).ServerExceptionClassDetector);e.ServerObjectConflictExceptionDetector=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.applies=function(t){switch(this.getExceptionShortName(t)){case"MissingNamesInSiteModelEntitiesException":return this.currentErrorMessage=this.gettextCatalog.getString("Invalid site model. Make sure all floors and buildings have a name."),!0;case"DuplicateNamesInSiteModelEntitiesException":return this.currentErrorMessage=this.gettextCatalog.getString("Invalid site model. Make sure there are no duplicate names among site model entities."),!0;default:return!1}},e}(n(145).ServerExceptionClassDetector);e.ServerSiteModelNameExceptionDetector=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.applies=function(t){var e=this.getExceptionShortName(t),n=this.getExceptionMessage(t);switch(e){case"ImageSizeIncorrectException":return this.currentErrorMessage=this.gettextCatalog.getString("The unzipped image has an incorrect size. A correct size will be a square image with its length and width as multiples of 256."),!0;case"InvalidIconDimensionException":return this.currentErrorMessage=this.gettextCatalog.getString("Unsupported icon size. Supported sizes are: 32x32, 64x64, 128x128, 256x256."),!0;case"InvalidFileFormatException":return this.currentErrorMessage=this.gettextCatalog.getString("Unsupported image format."),!0;case"MissingValidImagesInZipException":return this.currentErrorMessage=this.gettextCatalog.getString("No valid image in the zip file."),!0;case"InvalidVisualIndexZipFileException":return this.currentErrorMessage=this.gettextCatalog.getString("The uploaded visual index is not in the correct format."),!0;case"MissingTiledMapsInBundleExceptions":return this.currentErrorMessage=this.gettextCatalog.getString("There are no maps in the bundle."),!0;case"MultipartException":return!!n.match(/Request exceeds maxRequestSize \(.*\)/)&&(this.currentErrorMessage=this.gettextCatalog.getString("Maximum file size (20MB) exceeded."),!0);case"FileValidationException":return this.currentErrorMessage=this.gettextCatalog.getString("Upload was not successful. Details:")+" "+this.getExceptionMessage(t),!0;case"UploadDirNotWritableException":return this.currentErrorMessage=this.gettextCatalog.getString("Upload directory is not writable.")+" "+this.gettextCatalog.getString("Please contact the system administrator."),!0;case"UploadDirDoesNotExistException":return this.currentErrorMessage=this.gettextCatalog.getString("Upload directory does not exist.")+" "+this.gettextCatalog.getString("Please contact the system administrator."),!0;default:return!1}},e}(n(145).ServerExceptionClassDetector);e.ServerUploadExceptionDetector=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.applies=function(t){switch(this.getExceptionShortName(t)){case"OperationOnPoiChildrenDenied":return this.currentErrorMessage=this.gettextCatalog.getString("Permission denied because there are POIs to which you don't have access."),!0;default:return!1}},e}(n(145).ServerExceptionClassDetector);e.ServerVariousExceptionDetector=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.applies=function(t){switch(this.getExceptionShortName(t)){case"BadBundleDataOnDiskException":return this.currentErrorMessage=this.gettextCatalog.getString("Bundle file is empty."),!0;case"BadRecVersionDatasetOnDiskException":case"BadWebVersionDatasetOnDiskException":return this.currentErrorMessage=this.gettextCatalog.getString("Dataset version is incompatible with preview mode."),!0;default:return!1}},e}(n(145).ServerExceptionClassDetector);e.ServerBadDataOnDiskExceptionDetector=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.applies=function(t){var e=t.errors.includes("std::bad_alloc");return e&&(this.currentErrorMessage=this.gettextCatalog.getString("Not enough memory (RAM) available")),e},e}(n(216).ServerJobFailureDetector);e.OutOfMemoryDetector=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.applies=function(t){return!!t.processingToolFailed()&&(this.currentErrorMessage=this.gettextCatalog.getString("There was an error while running the processing tool")+" ("+t.status.toString()+").",t.processingToolOutOfMemory()&&(this.currentErrorMessage+=" "+this.gettextCatalog.getString("Possible reason: out of memory.")),!0)},e.exitCodeSignifiesError=function(t){return t>0},e}(n(216).ServerJobFailureDetector);e.ProcessingToolFailureDetector=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.applies=function(t){var e=t.errors.includes("Inconsistent data detected")&&t.errors.includes("some points have color");return e&&(this.currentErrorMessage=this.gettextCatalog.getString("A color inconsistency has been detected in the point cloud. Make sure all points are either colored or not colored. If not possible, split the scanning positions into two E57 files (one with color and one without) and upload each individually.")),e},e}(n(216).ServerJobFailureDetector);e.InconsistentScanDetector=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.applies=function(t){var e=t.errors.includes("TooManyRunningJobsException");return e&&(this.currentErrorMessage=this.gettextCatalog.getString("Maximum of concurrently running jobs exceeded. Please try again later.")),e},e}(n(216).ServerJobFailureDetector);e.TooManyRunningJobsDetector=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.applies=function(t){var e=t.errors.includes("[ERROR] OutputFileMissing");return e&&(this.currentErrorMessage=this.gettextCatalog.getString("The selected volume did not contain any points.")),e},e}(n(216).ServerJobFailureDetector);e.EmptyPointCloudDetector=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.applies=function(t){var e=t.errors.includes("MapTilingUnsupportedException");return e&&(this.currentErrorMessage=this.gettextCatalog.getString("The current maps aren't supported for download/upload. You can recreate them to enable it.")),e},e}(n(216).ServerJobFailureDetector);e.MapTilingUnsupportedDetector=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.datasetRegexp=/No normals for datasets in bundle: <\s*(.*?)\s*>/g,e}return r(e,t),e.prototype.applies=function(t){var e=this.getExceptionShortName(t),n=this.getExceptionMessage(t);if("JobValidationException"!==e)return!1;if(n.includes("No normals for datasets in bundle")){var i=this.datasetRegexp.exec(n);return this.currentErrorMessage=this.gettextCatalog.getString("Some datasets of the bundle do not have normals: {{datasetNames}}.",{datasetNames:i[1]}),!0}return n.includes("No Site Model found for bundle")?(this.currentErrorMessage=this.gettextCatalog.getString("No site model is present for the bundle."),!0):!!n.includes("has no buildings with a floor")&&(this.currentErrorMessage=this.gettextCatalog.getString("Some buildings of the bundle do not have floors."),!0)},e}(n(145).ServerExceptionClassDetector);e.ServerJobValidationException=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(7),a=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.name={},e.types=[],e}return r(e,t),e.prototype.copy=function(e,n){return void 0===n&&(n=!1),t.prototype.fill.call(this,e),this.name=o.cloneDeep(e.name),this.types=o.clone(e.types),this},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.name=o.cloneDeep(e.name)},e.prototype.toData=function(){var e={};return t.prototype.fillDto.call(this,e),e.name=o.cloneDeep(this.name),e},e}(n(198).SecureRepositoryObject);e.PoiTypeGroupEntity=a},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(7),a=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.attributes={},e.groups=[],e.primaryGroups=[],e}return r(e,t),e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.id=void 0===e.id?void 0:e.id,this.username=e.username,this.locked=e.locked,this.provider=e.provider,this.firstName=e.first_name,this.lastName=e.last_name,this.email=e.email,this.defaultGroupRead=e.default_group_read,this.defaultGroupWrite=e.default_group_write,e.attributes&&(this.attributes=o.clone(e.attributes)),e.groups&&(this.groups=o.clone(e.groups)),e.primary_groups&&(this.primaryGroups=o.clone(e.primary_groups))},e.prototype.toData=function(){var e={};return t.prototype.fillDto.call(this,e),e.username=this.username,e.locked=this.locked,e.provider=this.provider,e.first_name=this.firstName,e.last_name=this.lastName,e.email=this.email,e.default_group_read=this.defaultGroupRead,e.default_group_write=this.defaultGroupWrite,e.attributes=o.clone(this.attributes),e.groups=o.clone(this.groups),e.primary_groups=o.clone(this.primaryGroups),e.password=this.password,e.new_password=this.passwordNew,e.password_expired=this.passwordExpired,e},e.prototype.copy=function(e,n){return void 0===n&&(n=!1),t.prototype.fill.call(this,e),this.username=e.username,this.locked=e.locked,this.provider=e.provider,this.firstName=e.firstName,this.lastName=e.lastName,this.email=e.email,this.defaultGroupRead=e.defaultGroupRead,this.defaultGroupWrite=e.defaultGroupWrite,this.attributes=e.attributes?o.clone(e.attributes):{},this.groups=e.groups?o.clone(e.groups):[],this.primaryGroups=e.primaryGroups?o.clone(e.primaryGroups):[],n||(this.password=e.password,this.passwordNew=e.passwordNew,this.passwordExpired=e.passwordExpired),this},e.prototype.getDisplayName=function(){return this.firstName&&this.lastName?this.firstName+" "+this.lastName:this.username},e.prototype.checkAttribute=function(t){return!!this.attributes&&this.attributes[t]},e.prototype.isAdmin=function(){return this.groups.indexOf(e.ADMIN_GROUP_ID)>-1},e.prototype.isGuest=function(){return void 0===this.id},e.ADMIN_GROUP_ID=1,e}(n(102).RepositoryObject);e.UserEntity=a},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(){}return t.prototype.fillFromData=function(t){this.isCloudInstance=t.cloud_instance,this.isPrivate=t.private,this.isEmpty=t.empty,this.oauthLoginUrl=t.oauth_login_url,this.instanceName=t.instance_name},t}();e.InstanceInformationEntity=i},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.prepareValueForValidation=function(t){var e=t.trim();return""===e?"{}":e},e}(n(1037).JSONValidator);e.VectorMapStyleSheetValidator=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(1038),r=function(){function t(t,e){this.title=t,this.validationErrorPrefix=e}return t.prototype.validate=function(t){var e=new i.ValidationResult;e.cleanedValue=this.prepareValueForValidation(t);try{JSON.parse(e.cleanedValue),e.valid=!0}catch(t){e.valid=!1,e.reason=this.validationErrorPrefix+" "+t}return e},t.prototype.prepareValueForValidation=function(t){return t.trim()},t}();e.JSONValidator=r},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});e.ValidationResult=function(){}},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(102),a=n(7),s=n(526),c=n(375),l=n(108),u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.resolveInjectables=function(){this.gettextCatalog=this.injectables.gettextCatalog},e.prototype.copy=function(e,n){return void 0===n&&(n=!1),t.prototype.fill.call(this,e),this.licenseValid=e.licenseValid,this.subject=e.subject,this.licensableSquareMeters=e.licensableSquareMeters,this.area=e.area,this.features=a.clone(e.features),this.validFrom=e.validFrom?new Date(e.validFrom.getTime()):void 0,this.validTo=e.validTo?new Date(e.validTo.getTime()):void 0,this.maxUsersWithGroups=e.maxUsersWithGroups,this.currentUsersWithGroups=e.currentUsersWithGroups,this.maxLocations=e.maxLocations,this.currentLocations=e.currentLocations,this.isLicenseAreaExceeded=e.isLicenseAreaExceeded,this.isLicenseRegisteredUsersExceeded=e.isLicenseRegisteredUsersExceeded,this.isLicenseMaxLocationsExceeded=e.isLicenseMaxLocationsExceeded,this.isLicenseExpired=e.isLicenseExpired,this.isLicenseSignatureInvalid=e.isLicenseSignatureInvalid,this},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.licenseValid=e.license_valid,this.subject=e.subject,this.licensableSquareMeters=e.licensable_square_meters,this.area=e.area,this.features=c.LicenseFeatures.create(this.gettextCatalog,e.features),this.validFrom=e.valid_from?s.DateUtilities.dateFromEpochSeconds(e.valid_from):void 0,this.validTo=e.valid_to?s.DateUtilities.dateFromEpochSeconds(e.valid_to):void 0,this.maxUsersWithGroups=e.max_users_with_groups,this.currentUsersWithGroups=e.current_users_with_groups,this.maxLocations=e.max_locations,this.currentLocations=e.current_locations,this.isLicenseAreaExceeded=e.license_area_exceeded,this.isLicenseRegisteredUsersExceeded=e.license_registered_users_exceeded,this.isLicenseMaxLocationsExceeded=e.license_max_locations_exceeded,this.isLicenseExpired=e.license_expired,this.isLicenseSignatureInvalid=e.license_signature_invalid},e.prototype.toData=function(){throw new l.IVFrontendException("4DKanKan cannot create a license.")},e}(o.RepositoryObject);e.LicenseInfoEntity=u},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(7),a=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.name={},e}return r(e,t),Object.defineProperty(e.prototype,"selected",{get:function(){return this._selected},set:function(t){this._selected=t,this.invalidate()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"icon",{get:function(){return this._icon||n(527)},set:function(t){this._icon=t},enumerable:!0,configurable:!0}),e.prototype.copy=function(e,n){return void 0===n&&(n=!1),t.prototype.fill.call(this,e),this.name=o.cloneDeep(e.name),this._icon=e._icon,this.visibilityZoomMin=e.visibilityZoomMin,this.visibilityZoomMax=e.visibilityZoomMax,this.poiTypeGroup=e.poiTypeGroup,this.poiTypeGroupId=e.poiTypeGroupId,this._selected=e._selected,this},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.name=o.cloneDeep(e.name),this._icon=e.icon,this.visibilityZoomMin=e.visibility_zoom_min,this.visibilityZoomMax=e.visibility_zoom_max,this.poiTypeGroupId=e.poi_type_group_id,this.selected=!0},e.prototype.toData=function(){var e={};return t.prototype.fillDto.call(this,e),e.name=o.cloneDeep(this.name),e.icon=this._icon,e.visibility_zoom_min=this.visibilityZoomMin,e.visibility_zoom_max=this.visibilityZoomMax,e.poi_type_group_id=this.poiTypeGroup.id,e},e}(n(102).RepositoryObject);e.PoiTypeEntity=a},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(376),a=n(524),s=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.security=new a.SecurityInfo,e}return r(e,t),e.prototype.fill=function(e,n){void 0===n&&(n=!1),t.prototype.fill.call(this,e,n),this.security=e.security?new a.SecurityInfo({can_write:e.security.canWrite,group_read:e.security.groupRead,group_write:e.security.groupWrite}):void 0},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.security=e.security?new a.SecurityInfo(e.security):void 0},e.prototype.fillDto=function(e){t.prototype.fillDto.call(this,e),e.security={group_read:this.security.groupRead,group_write:this.security.groupWrite}},e.prototype.fillCurrentUsersGroups=function(t){this.security.groupRead=t.getDefaultGroupRead(),this.security.groupWrite=t.getDefaultGroupWrite()},Object.defineProperty(e.prototype,"canWrite",{get:function(){return this.security.canWrite},enumerable:!0,configurable:!0}),e}(o.LocationEntity);e.SecureLocationEntity=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e}(n(102).RepositoryObject);e.TreeRepositoryObject=o},function(t,e,n){t.exports=n.p+"3621b0c6e36f04eaf95f6b735f7feb55.building_bg.svg"},function(t,e,n){t.exports=n.p+"33bcf1defb48efe47d3494b8d8515c4d.floor_bg.svg"},function(t,e,n){t.exports=n.p+"cd425ac6eb2c678de3aebc37ec7899f3.room_bg.svg"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(70),a=n(7),s=n(20),c=function(t){function e(e,n,i){var r=t.call(this,e,n)||this;return r.DomainType=e,r.RestService=n,r.treeKey=i,r.flattenTreeKey=i,r}return r(e,t),e.prototype.removeLocal=function(t){var e=this;this.deleteObjectFromDataMap(t),this.walkTree(t,function(t){return e.removeLocal(t)}),this.synchronizeWithMap(),this.entityRemoved.emit(t,!1)},e.prototype.addChildrenIds=function(t,e,n){this.walkTree(e,function(e){a.set(t,e.id,!0)},n)},e.prototype.updateData=function(t){var e=this,n=this.flattenTree(t);return a.forEach(this.dataMap,function(t){a.has(n,t.id)||(e.deleteObjectFromDataMap(t),e.entityRemoved.emit(t,!1))}),this.cacheEntities(t)},e.prototype.cacheEntities=function(t){for(var e=[],n={},i=0,r=t;i<r.length;i++){var o=r[i];this.cacheSubTree(o,e),this.addChildrenIds(n,o,!1)}return this.synchronizeWithMap(),this.emitCreatedEvent(e),this.removeItemsByIds(e,n),e},e.prototype.synchronizeWithMap=function(){var t=this,e={};a.forEach(this.dataMap,function(n){t.addChildrenIds(e,n,!1)});var n=a.values(this.dataMap);this.removeItemsByIds(n,e),s.replaceArray(this.data,n)},e.prototype.cacheSubTree=function(t,e){for(var n=t,i=[],r=0,o=n[this.flattenTreeKey];r<o.length;r++){var a=o[r];a.parent&&this.dataMap[a.parent.id]&&(a.parent=this.dataMap[a.parent.id]),i.push(this.cacheSubTree(a,e))}return n[this.flattenTreeKey]=i,this.cacheEntity(t,e)},e.prototype.removeItemsByIds=function(t,e){a.remove(t,function(t){return a.has(e,t.id)})},e.prototype.walkTree=function(t,e,n){void 0===n&&(n=!0);var i=t;if(this.flattenTreeKey&&i[this.flattenTreeKey]&&i[this.flattenTreeKey].length)for(var r=0,o=i[this.flattenTreeKey];r<o.length;r++){var a=o[r];n&&this.walkTree(a,e),e(a)}},e.prototype.flattenTree=function(t){for(var e={},n=0,i=t;n<i.length;n++){var r=i[n];this.flattenTreeNode(r,e)}return e},e.prototype.flattenTreeNode=function(t,e){var n=this;e[t.id]=t,this.walkTree(t,function(t){return n.flattenTreeNode(t,e)})},e.prototype.deleteObjectFromDataMap=function(e){var n=this;t.prototype.deleteObjectFromDataMap.call(this,e),a.forEach(this.dataMap,function(t){n.walkTree(t,function(t){var i=t[n.flattenTreeKey];a.remove(i,function(t){return t===e})});var i=t[n.flattenTreeKey];a.remove(i,function(t){return t===e})})},e}(o.RestRepository);e.TreeRestRepository=c},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(t,e){void 0===e&&(e=t),this.source=t,this.target=e}return t.prototype.getInverse=function(){return new t(this.target,this.source)},t.prototype.transform=function(t){return t},t.prototype.transformQuaternion=function(t){return t},t}();e.IdentityTransform=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(533),r=n(531),o=function(){function t(t,e){var n;this.transforms=[],this.referenceSystems=new Set,e&&((n=this.transforms).push.apply(n,e.transforms),this.referenceSystems=new Set(e.referenceSystems)),this.transforms.push(t),this.referenceSystems.add(t.source),this.referenceSystems.add(t.target)}return Object.defineProperty(t.prototype,"target",{get:function(){return this.transforms[this.transforms.length-1].target},enumerable:!0,configurable:!0}),t.prototype.contains=function(t){return this.referenceSystems.has(t)},t.prototype.createGeodeticTransforms=function(t,e){var n=[],i=this.transforms[0];t.geodetic&&t!==i.source&&n.push(new r.GeodeticTransform(t,i.source)),n.push(i);for(var o=1;o<this.transforms.length;++o){var a=i;i=this.transforms[o],a.target.geodetic&&i.source.geodetic&&a.target!==i.source&&n.push(new r.GeodeticTransform(a.target,i.source)),n.push(i)}e.geodetic&&e!==i.target&&n.push(new r.GeodeticTransform(i.target,e)),this.transforms=n},t.prototype.getTransformationChain=function(){return new i.TransformChain(this.transforms)},t}();e.CandidateChain=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(e){var n=t.call(this)||this;return n.repository=e,n}return r(e,t),e.prototype.perform=function(){this.action(),this.emit()},e}(n(16).Signal);e.RepositoryAction=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(1051),r=function(){function t(t){this.SiteModelRepository=t,this.siteModelErrors=[]}return t.prototype.fillFromData=function(t){for(var e=0,n=t.site_model_error_list;e<n.length;e++){var r=n[e],o=new i.SiteModelError(this.SiteModelRepository);o.fillFromData(r),this.siteModelErrors.push(o)}},t}();e.SiteModelErrorReport=r},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(179),r=n(1052),o=n(1053),a=n(1054),s=n(1055),c=n(1056),l=n(1057),u=function(){function t(t){this.SiteModelRepository=t,this.violations=[]}return t.prototype.fillFromData=function(t){var e=this.SiteModelRepository.create();e.fillFromData(t.affected_entity),this.affectedEntity=e;for(var n=0,i=t.violations;n<i.length;n++){var r=i[n],o=this.convertFromDto(r);this.violations.push(o)}this.hierarchyNames=t.hierarchy_names},t.prototype.convertFromDto=function(t){var e;switch(t.type){case i.ViolationType.CHILD_NOT_CONTAINED_IN_PARENT_ENTITY:(e=new r.ChildNotContainedInParentEntity(this.SiteModelRepository)).fillFromData(t);break;case i.ViolationType.FREE_SPACE_NAVIGATION_AREA_WITH_CHILDREN:(e=new o.FreeSpaceNavigationWithChildren(this.SiteModelRepository)).fillFromData(t);break;case i.ViolationType.HEIGHT_NOT_CONTAINED_IN_PARENT:(e=new a.HeightNotContainedInParent(this.SiteModelRepository)).fillFromData(t);break;case i.ViolationType.INCORRECT_HIERARCHY_TYPE:(e=new s.IncorrectHierarchyType(this.SiteModelRepository)).fillFromData(t);break;case i.ViolationType.INVALID_GEOMETRY:(e=new c.GeometryInvalidError(this.SiteModelRepository)).fillFromData(t);break;case i.ViolationType.OVERLAPPING_VOLUMES:(e=new l.VolumesOverlappingError(this.SiteModelRepository)).fillFromData(t);break;default:console.log("Element is not of a known type, skipping...")}return e},t}();e.SiteModelError=u},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(e){var n=t.call(this)||this;return n.SiteModelRepository=e,n}return r(e,t),e}(n(179).SiteModelViolation);e.ChildNotContainedInParentEntity=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(e){var n=t.call(this)||this;return n.SiteModelRepository=e,n}return r(e,t),e}(n(179).SiteModelViolation);e.FreeSpaceNavigationWithChildren=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(e){var n=t.call(this)||this;return n.SiteModelRepository=e,n}return r(e,t),e}(n(179).SiteModelViolation);e.HeightNotContainedInParent=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(e){var n=t.call(this)||this;return n.SiteModelRepository=e,n}return r(e,t),e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.acceptedTypes=e.accepted_types},e}(n(179).SiteModelViolation);e.IncorrectHierarchyType=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(e){var n=t.call(this)||this;return n.SiteModelRepository=e,n}return r(e,t),e}(n(179).SiteModelViolation);e.GeometryInvalidError=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(e){var n=t.call(this)||this;return n.SiteModelRepository=e,n}return r(e,t),e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e);var n=this.SiteModelRepository.create();n.fillFromData(e.overlapping_entity),this.overlappingEntity=n},e}(n(179).SiteModelViolation);e.VolumesOverlappingError=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(254),a=n(344),s=n(96),c=n(4),l={directory:"img/",filename:"gridmap_fallback.svg",res:.02,orientation:0,size:new c.Vector2(500,500),origin:new c.Vector2(-5,-5)},u=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.pcObj_=void 0,e.locked=!0,e}return r(e,t),Object.defineProperty(e.prototype,"pointCloudVisible",{get:function(){return this._pointCloudVisible},set:function(t){this._pointCloudVisible!==t&&(this._pointCloudVisible=t,this.invalidate())},enumerable:!0,configurable:!0}),e.prototype.copy=function(e,n){return void 0===n&&(n=!1),t.prototype.fill.call(this,e),n||(this.locked=e.locked,this.pointCloudVisible=e.pointCloudVisible),this},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.makeMatrix(),this.color=a.ColorUtilities.validateColorString(this.color)},e.prototype.onReferenceSystemChangedEvent=function(){t.prototype.onReferenceSystemChangedEvent.call(this),this.makeMatrix()},e.prototype.getDirectory=function(){return"data/"+this.name+"/"},e.prototype.getOctreeDirectory=function(){return this.getDirectory()+"ooc/"},e.prototype.getOctreeConfigFilename=function(){return this.getOctreeDirectory()+"ooc_config.js"},e.prototype.getOctreeDataFilename=function(){return this.getOctreeDirectory()+"ooc_data.dat"},e.prototype.getPotreeConfigFilename=function(){return"data/"+this.name+"/webcloud/cloud.js"},e.prototype.getMeshConfigFilename=function(t){return void 0===t&&(t="mesh.gltf"),"data/"+this.name+"/webmesh/"+t},e.prototype.isGridmapAvailable=function(){return!!this.gridmapFilename},e.prototype.getGridmapDir=function(){return this.isGridmapAvailable()?this.getDirectory():l.directory},e.prototype.getGridmapFilename=function(){return this.isGridmapAvailable()?this.gridmapFilename:l.filename},e.prototype.getGridmapRes=function(){return this.isGridmapAvailable()?this.gridmapRes:l.res},e.prototype.getGridmapOrientation=function(){return this.isGridmapAvailable()?this.gridmapOrientation:l.orientation},e.prototype.getGridmapSize=function(){return this.isGridmapAvailable()?this.gridmapSize:this.getGridmapFallbackSize()},e.prototype.getGridmapOrigin=function(){return this.isGridmapAvailable()?this.gridmapOrigin:this.getGridmapFallbackOrigin()},e.prototype.getBoundingBoxMin=function(){return this.boundingBoxMin},e.prototype.getBoundingBoxMax=function(){return this.boundingBoxMax},e.prototype.getPointCloudType=function(){return this.pointCloudType},e.prototype.getPointCloudObject=function(){return this.pcObj_||(this.pcObj_={}),this.pcObj_},e.prototype.local2dataset=function(t){return t.applyMatrix4(this.m2wInv_),t},e.prototype.dataset2local=function(t){return t.applyMatrix4(this.m2w_),t},e.prototype.dataset2localdir=function(t){return t.applyMatrix4(this.m2w_),t.x-=this.m2w_.elements[12],t.y-=this.m2w_.elements[13],t.z-=this.m2w_.elements[14],t},e.prototype.local2datasetdir=function(t){return t.applyMatrix4(this.m2wInv_),t.x-=this.m2wInv_.elements[12],t.y-=this.m2wInv_.elements[13],t.z-=this.m2wInv_.elements[14],t},e.prototype.getState=function(){return this.m2w_.clone()},e.prototype.updatePose=function(){var t=this.getPointCloudObject();t.pointCloudParticleSystemGroup&&(t.pointCloudParticleSystemGroup.matrixWorldNeedsUpdate=!0),this.pointCloudSceneNode&&this.pointCloudSceneNode.updateMatrixWorld(!0)},e.prototype.setState=function(t){this.m2w_.copy(t),this.m2wInv_=(new c.Matrix4).getInverse(this.m2w_),this.updatePose()},e.prototype.getGlobalState=function(){var t=this.m2w_;return{pos:s.VectorFactory.toArray(this.globalLocation),orientation:Math.atan2(t.elements[1],t.elements[0])}},e.prototype.updateLocationsFromMatrix=function(){this.location.set(this.m2w_.elements[12],this.m2w_.elements[13],this.m2w_.elements[14]),this.globalLocation=this.GeoTransformationService.vectorToGlobal(this.location),this.orientation=Math.atan2(this.m2w_.elements[1],this.m2w_.elements[0])},e.prototype.getCenter=function(){var t=new c.Vector3,e=this.getBoundingBoxMin(),n=this.getBoundingBoxMax();return e&&n&&t.addVectors(e,n).divideScalar(2),this.dataset2local(t)},e.prototype.getCenterGlobal=function(){var t=this.GeoTransformationService.vectorToGlobal(this.getCenter());return s.VectorFactory.toArray(t)},e.prototype.getLocalBoundingBox=function(){var t=this.boundingBoxMin,e=this.boundingBoxMax,n=new c.Box3;return n.expandByPoint(this.dataset2local(new c.Vector3(t.x,t.y,t.z))),n.expandByPoint(this.dataset2local(new c.Vector3(t.x,t.y,e.z))),n.expandByPoint(this.dataset2local(new c.Vector3(t.x,e.y,t.z))),n.expandByPoint(this.dataset2local(new c.Vector3(t.x,e.y,e.z))),n.expandByPoint(this.dataset2local(new c.Vector3(e.x,t.y,t.z))),n.expandByPoint(this.dataset2local(new c.Vector3(e.x,t.y,e.z))),n.expandByPoint(this.dataset2local(new c.Vector3(e.x,e.y,t.z))),n.expandByPoint(this.dataset2local(new c.Vector3(e.x,e.y,e.z))),n},e.prototype.distanceToBoundingBox=function(t){var e=this.local2dataset(t.clone());return this.getBoundingBox().distanceToPoint(e)},e.prototype.withinBoundingBox=function(t){var e=this.local2dataset(t.clone());return this.getBoundingBox().containsPoint(e)},e.prototype.makeMatrix=function(){var t=new c.Matrix4;t.identity().makeRotationZ(this.orientation).setPosition(this.location),this.m2w_?(this.m2w_.copy(t),this.m2wInv_.getInverse(t)):(this.m2w_=t,this.m2wInv_=(new c.Matrix4).getInverse(t))},e.prototype.getBoundingBox=function(){var t=new c.Box3,e=this.getBoundingBoxMin(),n=this.getBoundingBoxMax();return e&&n&&t.set(e,n),t},e.prototype.getGridmapFallbackSize=function(){var t=this.getBoundingBoxMin(),e=this.getBoundingBoxMax();if(t&&e){var n=(e.x-t.x)/this.getGridmapRes(),i=(e.y-t.y)/this.getGridmapRes();return new c.Vector2(n,i)}return l.size},e.prototype.getGridmapFallbackOrigin=function(){var t=this.getBoundingBoxMin(),e=this.getBoundingBoxMax();if(t&&e){var n=-(e.x-t.x)/this.getGridmapRes()/100,i=-(e.y-t.y)/this.getGridmapRes()/100;return new c.Vector2(n,i)}return l.origin},e}(o.DatasetEntity);e.Dataset=u},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(55),r=function(){function t(){}return t.compare=function(t,e){return t===e?0:t===i.SiteModelType.CUSTOM||t===i.SiteModelType.ROOM?-1:e===i.SiteModelType.CUSTOM||e===i.SiteModelType.ROOM?1:t===i.SiteModelType.FLOOR?-1:e===i.SiteModelType.FLOOR?1:t===i.SiteModelType.BUILDING?-1:e===i.SiteModelType.BUILDING?1:t===i.SiteModelType.FREE_SPACE_NAVIGATION?-1:1},t}();e.SiteModelTypeUtil=r},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),Object.defineProperty(e.prototype,"displayName",{get:function(){return this.name?this.name+" ("+this.id+")":this.id.toString()},enumerable:!0,configurable:!0}),e.prototype.copy=function(e,n){return void 0===n&&(n=!1),t.prototype.fill.call(this,e),this.serial=e.serial,this.name=e.name,this.file=e.file,this},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.serial=e.serial,this.name=e.name},e.prototype.toData=function(){var t={};return this.fillDto(t),t.serial=this.serial,t.name=this.name,t},e}(n(198).SecureRepositoryObject);e.BundleEntity=o},function(t,e){
  2373. /*!
  2374. * Determine if an object is a Buffer
  2375. *
  2376. * @author Feross Aboukhadijeh <https://feross.org>
  2377. * @license MIT
  2378. */
  2379. t.exports=function(t){return null!=t&&null!=t.constructor&&"function"==typeof t.constructor.isBuffer&&t.constructor.isBuffer(t)}},function(t,e,n){"use strict";(function(t){var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(20),s=n(40),c=n(537),l=n(124),u=n(92),d=n(25),p=n(4),h=n(136),f=n(24),g=n(107),m=n(96),v=n(55),y=n(230),b=n(1063),w=n(255),S=n(8),x=n(252),M=n(14),E=n(57),C=n(1064),A=n(626),T=n(81),O=n(638),_=function(){function e(t,e){void 0===t&&(t={}),this.params=t,this.factory=e,this.bootstrap=!0,this.movingToPoi=!1,this.movingToSme=!1,this.reinitializing=!1,this.splashScreen=document.getElementById("splash-screen"),this.init()}return e.prototype.isMovingToPoi=function(){return this.movingToPoi},e.prototype.setSceneRendering=function(t,e){("panorama"===t?this.factory.ViewService.mainView:this.factory.ViewService.mapView).active=e},e.prototype.initDataFinally=function(){var t=this;this.factory.AuthenticationService.dataAccessible?this.hideSplashScreen():(this.showSplashScreen(),this.setSplashSpinner(!1)),this.hideProgressDialog(),this.factory.SidebarMenuService.itemsVisibilityUpdated.emit(),this.reinitializing||(this.params.onLoadComplete&&this.params.onLoadComplete(),this.factory.LegacyService.triggerEvent("loadComplete")),this.reinitializing=!1,this.factory.AuthenticationService.dataLoadCompleted.emit(!0),window.setTimeout(function(){return t.loadSecondaryFonts()},3e3)},e.prototype.initData=function(t){var e=this;void 0===t&&(t=!1);var n=this.factory.AuthenticationService.initialize().then(function(){return e.checkForRouteParameters()}).then(function(){return e.factory.AuthenticationService.isDataAccessible()}).then(function(t){return t?Promise.resolve():Promise.reject("No data to load")}).then(function(){return Promise.all([e.factory.DatasetRepository.findAll(!0),e.factory.BundleRepository.findAll(),e.factory.AffineRefSysRepository.findAll()])}).then(function(){return e.factory.VectorMapService.fetch()}).then(function(){if(!e.factory.GeoTransformationService.isInitialized())return Promise.reject("No data available")}).then(function(){return e.factory.PoiTypeService.initialize(),e.factory.ConfigService.fetch(),Promise.all([e.factory.SiteModelRepository.get(!0),e.factory.CameraHeadRepository.findAll(),e.factory.LanguageService.initialized,e.factory.ConfigService.initialized,e.factory.PoiTypeService.initialized])}).then(function(){return e.initConfigData(),e.moveToStartingLoc(!0,t)});g.promiseFinally(n,function(){return e.initDataFinally()}).catch(S.handleWarning)},e.prototype.checkForRouteParameters=function(){return i(this,void 0,void 0,function(){var t;return r(this,function(e){switch(e.label){case 0:return t=this.factory.$location.search(),O.UrlRouteParameter.PROCESSING_TASKS in t?[4,this.handleProcessingTaskRouteParameter()]:[3,2];case 1:e.sent()&&this.factory.UrlService.removeParamFromUrl(O.UrlRouteParameter.PROCESSING_TASKS),e.label=2;case 2:return[2]}})})},e.prototype.handleProcessingTaskRouteParameter=function(){return i(this,void 0,void 0,function(){var t;return r(this,function(e){switch(e.label){case 0:return[4,this.factory.InstanceInformationService.getInformation()];case 1:return t=e.sent(),this.factory.UserService.userInfo.isGuest()&&t.isPrivate?[2,!1]:this.factory.UserService.userInfo.isGuest()&&!t.isPrivate?(this.factory.AuthenticationService.showLoginScreenModal.emit(),[2,!1]):this.factory.UserService.userInfo.isGuest()||this.factory.UserService.userInfo.isAdmin()?(this.factory.SidebarMenuService.isMenuHidden=!1,[4,this.factory.SidebarMenuService.goToItem(this.factory.SidebarMenuService.getItem(T.SidebarMenuItemsKey.CLOUD_PROCESSING)).catch(S.handleWarning)]):(this.factory.MessageReportingService.showMessage(this.factory.gettextCatalog.getString("Permission denied"),this.factory.gettextCatalog.getString("You do not have sufficient permissions to access this page.")),[2,!0]);case 2:return e.sent(),[4,this.factory.SidebarMenuService.goToItem(this.factory.SidebarMenuService.getItem(T.SidebarMenuItemsKey.CLOUD_PROCESSING_PROCESSING_TASKS)).catch(S.handleWarning)];case 3:return e.sent(),[2,!0]}})})},e.prototype.initConfigData=function(){if(s.isMobileLayout()){if(!this.factory.$location.search().image||!this.factory.ViewService.canSwapViews()){var t="panorama"===this.factory.ConfigService.getString(d.Configs.CORE_INIT_VIEW_MOBILE)?w.ViewType.PANORAMA:w.ViewType.MAP;this.factory.ViewService.setPrimaryView(t)}(this.factory.$location.search().image||"panorama"===this.factory.ConfigService.getString(d.Configs.CORE_INIT_VIEW_MOBILE))&&(this.getMapView().getCameraFOVLayer().visibleOnMobile=!0)}else{var e="panorama"===this.factory.ConfigService.getString(d.Configs.CORE_INIT_VIEW)?w.ViewType.PANORAMA:w.ViewType.MAP;this.factory.ViewService.setPrimaryView(e)}this.factory.TrackingService.trackSessionStart(this.factory.ViewMenuService.config.showPanoramas,this.factory.PointCloudMenuService.config.showPointCloud)},e.prototype.init=function(){var e=this;if(!o.element(".main-view").length)return console.log("Postponing start"),void window.setTimeout(function(){return e.init()},200);this.splashScreen||(this.modalTask=this.factory.ProgressReportService.addTask("",1,!0,!0)),window.addEventListener("beforeunload",function(t){if(e.factory.ModeService.isDatasetAlignmentMode()||e.factory.ModeService.isSiteModelEditorMode())return t&&(t.returnValue=e.factory.gettextCatalog.getString("Do you want to navigate away from the current page?")),e.factory.gettextCatalog.getString("Do you want to navigate away from the current page?")}),this.factory.ConfigService.setLocalDefaults(this.params),this.factory.UrlService.preventNextChange();var n=this.factory.UrlService.getParamFromUrl(this.factory.AuthenticationService.OAUTH_ERROR_QUERY_PARAM);n&&(this.factory.MessageReportingService.showMessage(this.factory.gettextCatalog.getString("Error while performing login with OAuth"),n),this.factory.UrlService.removeParamFromUrl(this.factory.AuthenticationService.OAUTH_ERROR_QUERY_PARAM));var i=this.factory.UrlService.getParamFromUrl(this.factory.JWTTokenService.TOKEN_QUERY_PARAM);i?(this.factory.UrlService.removeParamFromUrl(this.factory.JWTTokenService.TOKEN_QUERY_PARAM),g.promiseFinally(this.factory.AuthenticationService.loginWithTokenInternal(i),function(){return e.initData()}).catch(S.handleWarning)):this.params.loginToken?(this.factory.AuthenticationService.markAsLoggedInWithToken(),g.promiseFinally(this.factory.AuthenticationService.loginWithTokenInternal(this.params.loginToken,!1,!1),function(){return e.initData()}).catch(S.handleWarning)):this.initData(),this.factory.ViewService.mainViewDeferred.promise.catch(function(n){if(!(n instanceof c.WebGlFailedException))throw n;e.params.onWebGlFailed&&e.params.onWebGlFailed(),e.factory.LegacyService.triggerEvent("webGlFailed"),t("#webGlMissing").show()}),this.factory.UrlService.setUserLocationChangeCallback(function(){e.factory.ModeService.isNormalMode()&&(e.factory.ConfigService.updateFromURL(),e.moveToStartingLoc().catch(S.handleWarning))}),this.factory.PointCloudMenuService.configShowPointCloudChanged.connect(function(t){t&&(e.factory.ModeService.isNormalMode()||e.factory.ModeService.isMeasurementsMode())&&e.factory.DatasetRepository.data.forEach(function(t){e.checkInactiveDatasetNearby(t,e.factory.ViewService.mainView.getCamera().position)&&(t.pointCloudVisible=!0,a.invalidateAngular())})}),this.factory.AuthenticationService.onAuthenticationChanged.connect(function(){e.setSplashSpinner(!0),e.reinit()})},e.prototype.reinit=function(){this.reinitializing||(this.reinitializing=!0,this.factory.LicenseService.initialize(!0).catch(S.handleWarning),this.factory.ConfigService.fetch(!0),this.factory.VectorMapService.fetch().catch(S.handleWarning),this.factory.TiledMapRepository.resetCache(),this.factory.BundleRepository.resetCache(),this.factory.PoiRepository.resetCache(),this.factory.ImageRepository.resetCache(),this.factory.DatasetRepository.resetCache(),this.factory.SiteModelRepository.resetCache(),this.factory.AffineRefSysRepository.resetCache(),this.factory.MeasurementRepository.resetCache(),this.factory.UserService.isAdmin()?this.factory.ViewMenuService.config.showNavGraph&&(this.factory.NavGraphService.clear(),this.factory.NavGraphService.fetch().catch(S.handleWarning)):(this.factory.NavGraphService.clear(),this.factory.ViewMenuService.showNavGraph(!1)),this.factory.ModeService.isNormalMode()||this.factory.ModeSwitchService.switchToMode(f.ModeState.NORMAL).catch(S.handleWarning),this.factory.PoiService.clearRouting(),this.modalTask&&this.modalTask.itemDone(),this.modalTask=this.factory.ProgressReportService.addTask("",1,!1,!1),this.factory.PointCloudMenuService.pointCloudsClearEvent.emit(),this.initData(!0))},e.prototype.moveToPoiId=function(t,e,n,i,r){var o=this;return void 0===r&&(r=!1),this.factory.PoiRepository.findOne(t).then(function(t){return o.moveToPoi(t,e,n,i)}).catch(function(){return r||o.factory.MessageReportingService.showMessage(o.factory.gettextCatalog.getString("POI with ID {{id}} Not Found",{id:t},"title"),o.factory.gettextCatalog.getString("Requested POI could not be found, moving to the first image instead.")),o.moveToImageId()})},e.prototype.moveToPoi=function(t,n,i,r){var o=this;if(this.factory.RouteService.storeCurrentView(),this.poiToMoveTo===t&&this.poiPromise)return this.poiPromise;this.movingToPoi=!0,this.poiToMoveTo=t,n||this.factory.PoiService.openAndHighlight(t);var s,c=function(){o.movingToPoi=!1,o.poiToMoveTo=void 0,o.poiPromise=void 0,t.id?o.factory.UrlService.updateUrl({poi:t.id.toString()}):o.factory.UrlService.updateUrl({poi:m.VectorFactory.toString(t.globalLocation)}),a.invalidateAngular()};return void 0===t.pov?(this.poiPromise=g.promiseFinally(this.moveToGeoLocation(t.globalLocation,!1,i,void 0,r),c),this.poiPromise):(s=this.factory.PointCloudMenuService.isCloudVisible()?this.moveToGeoLocation(t.pov.location,!1,x.QuaternionFactory.toLonLat(t.pov.orientation),void 0,t.pov.fov,void 0,!0):t.pov.imageId?this.moveToImageId(t.pov.imageId,x.QuaternionFactory.toLonLat(t.pov.orientation),t.pov.fov):this.factory.ImageService.getClosestImageGlobal(t.pov.location,e.IMAGE_LOCATION_TOLERANCE).then(function(e){return o.moveToImage(e,x.QuaternionFactory.toLonLat(t.pov.orientation),void 0,t.pov.fov)}).catch(function(){return o.moveToGeoLocation(t.globalLocation,!1,x.QuaternionFactory.toLonLat(t.pov.orientation),void 0,t.pov.fov)}),this.poiPromise=g.promiseFinally(s,c),this.poiPromise)},e.prototype.moveToSiteModelEntity=function(t,e,n){var i=this;this.factory.RouteService.storeCurrentView(),this.movingToSme=!0,this.smeToMoveTo=t,n=n||this.factory.ViewService.mainView.getViewDir();var r=t.globalCenter;return r?g.promiseFinally(this.factory.ImageService.getClosestImageGlobal(r,void 0,[t]).then(function(t){return i.moveToImage(t,n)}).catch(function(){return i.factory.PointCloudMenuService.isCloudVisible()?i.moveToGeoLocation(r,!1,n):Promise.reject(void 0)}).then(function(){i.factory.UrlService.updateUrl({sme:t.id.toString()})}),function(){e&&i.factory.SiteModelService.selectModel(t),i.movingToSme=!1,i.smeToMoveTo=void 0}):Promise.reject()},e.prototype.moveToSiteModelEntityId=function(t,e,n){var i=this;return this.factory.SiteModelRepository.findOne(t).then(function(t){return i.moveToSiteModelEntity(t,e,n)}).catch(function(){return i.factory.MessageReportingService.showMessage(i.factory.gettextCatalog.getString("No Suitable Location Found",void 0,"title"),i.factory.gettextCatalog.getString("Could not move to the requested Site Model Entity, moving to the first image instead.")),i.moveToImageId()})},e.prototype.checkAndFixOffset=function(t,e){M.GeoTransformationService.RELOCATE_LOCAL_SYSTEM_THRESHOLD<t.length()&&this.anyDatasetNearPoint(t,100)&&(this.factory.GeoTransformationService.setOffsetFromGlobal(e),t.set(0,0,0))},e.prototype.showSplashScreen=function(t){void 0===t&&(t=!0),this.splashScreen&&(this.splashScreen.style.visibility="visible",this.splashScreen.style.opacity="1")},e.prototype.setSplashSpinner=function(t){this.splashScreen&&(this.splashScreen.querySelector("img").style.display=t?"block":"none")},e.prototype.hideSplashScreen=function(){this.splashScreen&&(this.splashScreen.style.visibility="hidden",this.splashScreen.style.opacity="0")},e.prototype.hideProgressDialog=function(){this.modalTask&&this.modalTask.itemDone(),document.getElementById("modal-cover").style.visibility="hidden"},e.prototype.loadSecondaryFonts=function(){y.runWithBaseHref(function(){return n.e(8).then(function(){n(1679)}.bind(null,n)).catch(function(t){return console.error("Failed to load fonts",t)})})},e.prototype.route=function(t,e,n){var i=this;return this.factory.LicenseService.isFeatureEnabled(u.LicenseFeatureType.ROUTING)&&this.factory.ConfigService.getBoolean(d.Configs.ROUTING_ENABLED,!1)?Promise.all([this.handlePoiId(b.parsePoiParam(t)),this.handlePoiId(b.parsePoiParam(e))]).then(function(t){return i.factory.RouteService.route(t[0],t[1],n)}):Promise.reject()},e.prototype.handlePoiId=function(t){return t instanceof p.Vector3?Promise.resolve(t):this.factory.PoiRepository.findOne(t)},e.prototype.moveToStartingLoc=function(t,e){var n=this;void 0===t&&(t=!1),void 0===e&&(e=!1),this.hideProgressDialog(),this.factory.UrlService.preventNextChange();var i=this.factory.$location.search(),r={lon:this.factory.ConfigService.getFloat(d.Configs.CORE_INIT_LON,0),lat:this.factory.ConfigService.getFloat(d.Configs.CORE_INIT_LAT,0)},o={lon:this.factory.ConfigService.getFloat(d.Configs.CORE_INIT_LOCATION_LON),lat:this.factory.ConfigService.getFloat(d.Configs.CORE_INIT_LOCATION_LAT),z:this.factory.ConfigService.getFloat(d.Configs.CORE_INIT_LOCATION_Z)},a=i.fov?parseInt(i.fov,10):void 0;(isNaN(r.lon)||isNaN(r.lat))&&(r.lon=0,r.lat=0);var s=this.checkUrlForRoute(i).catch(function(){if("image"in i)return n.moveToImageId(parseInt(i.image,10),r,a,e);if("poi"in i){n.isViewDirInUrl(i)||(r=void 0);var s=b.parsePoiParam(i.poi);return s instanceof p.Vector3?n.factory.GeoTransformationService.initialized.then(function(){var t=n.factory.PoiService.getLocationAsPoi(s,!0);return n.factory.PoiService.openHighlightAndGoToPoi(t)}):n.moveToPoiId(s,i["!"],r,a,e)}return"sme"in i?(n.isViewDirInUrl(i)||(r=void 0),n.moveToSiteModelEntityId(parseInt(i.sme,10),!i["!"],r)):n.checkUrlForGeoLocation(i,r,a).catch(function(){return n.factory.ConfigService.getInteger(d.Configs.CORE_INIT_IMAGE)?n.moveToImageId(n.factory.ConfigService.getInteger(d.Configs.CORE_INIT_IMAGE),r,a,!0):o.lon&&o.lat&&void 0!==o.z?n.attemptMoveToImageFallbackPointcloud(new p.Vector3(o.lon,o.lat,o.z),r,a):n.moveToImageId(void 0,t?r:void 0)})});return(s=g.promiseFinally(s,function(){"mpts"in i&&(n.factory.UserService.userInfo.checkAttribute(E.GroupAttributes.CAN_USE_MEASUREMENT_TOOL)?(n.trackSharedMeasurementVisitedEvent(A.MeasurementPdfExportService.SHARE_LINK_SOURCE in i),n.factory.ModeSwitchService.switchToMode(f.ModeState.MEASUREMENTS).then(function(){n.factory.MeasurementsService.onEmbeddedMeasurementParsed.emit(i.mpts)}).catch(S.handleWarning)):n.factory.MessageReportingService.showMessage(n.factory.gettextCatalog.getString("Measurement tool is unavailable"),n.factory.gettextCatalog.getString("The measurement embedded in this URL cannot be viewed because you do not have permissions to use the measurement tool. Please contact your site administrator for permissions.")))})).then(function(){return n.initMap(i)}).catch(function(){return n.initMap(i)})},e.prototype.trackSharedMeasurementVisitedEvent=function(t){var e=new C.SharedMeasurementVisitedEvent;t?e.sharedMeasurementVisitedFromPdf():e.sharedMeasurementVisitedFromModalLink(),this.factory.TrackingService.trackPreDefinedEvent(e)},e.prototype.isViewDirInUrl=function(t){var e=this.factory.ConfigService.getAliasByName(d.Configs.CORE_INIT_LON),n=this.factory.ConfigService.getAliasByName(d.Configs.CORE_INIT_LAT);return void 0!==t[d.Configs.CORE_INIT_LON]||void 0!==t[d.Configs.CORE_INIT_LAT]||void 0!==t[e]||void 0!==t[n]},e.prototype.initMap=function(t){var e=this,n=s.isMobileLayout()?d.Configs.CORE_INIT_VIEW_MOBILE:d.Configs.CORE_INIT_VIEW;if("map"===this.factory.ConfigService.getString(n))if(s.isMobileLayout()&&"lon"in t&&"lat"in t&&"z"in t){var i=this.factory.GeoTransformationService.toLocal(parseFloat(t.lon),parseFloat(t.lat),parseFloat(t.z));this.factory.SiteModelService.getCurrentFloorByPosition(i).then(function(t){t&&e.factory.FloorChangerService.changeFloorByName(t.name,!1).catch(function(){})}).catch(S.handleWarning)}else if(s.isMobileLayout()&&"image"in t)this.factory.ImageRepository.findOne(t.image).then(function(t){if(t&&t.siteModelEntity){var n=t.siteModelEntity.getEntityOfType(v.SiteModelType.FLOOR);e.factory.FloorChangerService.changeFloorByName(n.name,!1).catch(function(){})}}).catch(S.handleWarning);else if(s.isMobileLayout()&&"poi"in t){var r=b.parsePoiParam(t.poi);r instanceof p.Vector3?this.factory.GeoTransformationService.initialized.then(function(){var t=e.factory.GeoTransformationService.vectorToLocal(r);e.checkAndFixOffset(t,r),e.factory.SiteModelService.getCurrentFloorByPosition(t).then(function(t){t&&e.factory.FloorChangerService.changeFloorByName(t.name,!1).catch(function(){})}).catch(S.handleWarning)}).catch(S.handleWarning):this.factory.PoiRepository.findOne(r).then(function(t){if(t&&t.siteModelEntity){var n=t.siteModelEntity.getEntityOfType(v.SiteModelType.FLOOR);n&&e.factory.FloorChangerService.changeFloorByName(n.name,!1).catch(function(){})}}).catch(S.handleWarning)}else{var o=!!this.currImage,a=this.factory.ConfigService.getFloat(d.Configs.CORE_INIT_MAP_FOV);if(!("poi"in t)&&void 0!==a){this.getMapView().divContainer.onResize();var c=this.getMapView().getDefaultViewport(),l=c.getWidth(),u=c.getHeight();c.cameraController.resolution=a/Math.min(l,u)}this.factory.SiteModelService.getFloorsInView(this.getMapView().getCamera()).then(function(t){var n=t.length?t[0].name:"",i=e.factory.ConfigService.getFloat(d.Configs.CORE_INIT_MAP_LON),r=e.factory.ConfigService.getFloat(d.Configs.CORE_INIT_MAP_LAT),a=e.factory.ConfigService.getString(d.Configs.CORE_INIT_MAP_FLOOR,n);o||void 0===i||void 0===r||e.factory.GeoTransformationService.initialized.then(function(){var t=e.factory.GeoTransformationService.toLocal(i,r,0);e.getMapView().moveMap(t)}).catch(S.handleWarning),""===a||o&&(!s.isMobileLayout()||e.factory.FloorChangerService.getCurrentFloorName())||e.factory.FloorChangerService.changeFloorByName(a).catch(function(){})}).catch(S.handleWarning)}},e.prototype.checkUrlForRoute=function(t){if("route.start"in t&&"route.end"in t){var e=!("image"in t||"poi"in t||"lon"in t&&"lat"in t);return this.route(t["route.start"],t["route.end"],e).then(function(){return e?{}:Promise.reject()}).catch(function(){return Promise.reject()})}return Promise.reject()},e.prototype.attemptMoveToImageFallbackPointcloud=function(t,e,n){var i=this,r=this.factory.PointCloudMenuService.isCloudVisible()?.001:void 0;return this.factory.ImageService.getClosestImageOnFloorGlobal(t,r).then(function(t){return i.moveToImage(t,e,n)}).catch(function(){return i.factory.GeoTransformationService.initialized.then(function(){var r=i.factory.GeoTransformationService.vectorToLocal(t);return i.checkAndFixOffset(r,t),i.getMapView().moveMap(r,i.moveLocationAnimationTime()),i.moveMainViewToLocation({destinationPos:r,viewDir:e,fov:n})})})},e.prototype.checkUrlForGeoLocation=function(t,e,n){if("lon"in t&&"lat"in t&&"z"in t){var i=new p.Vector3(parseFloat(t.lon),parseFloat(t.lat),parseFloat(t.z));return this.attemptMoveToImageFallbackPointcloud(i,e,n)}return Promise.reject()},e.prototype.moveToImageId=function(t,e,n,i){var r=this;return void 0===i&&(i=!1),(t?this.factory.ImageRepository.findOne(t,!1,!i):Promise.reject()).catch(function(){return t&&!i&&r.factory.MessageReportingService.showMessage(r.factory.gettextCatalog.getString("Image with ID {{id}} Not Found",{id:t},"title"),r.factory.gettextCatalog.getString("Requested image could not be found, moving to the first image instead.")),r.factory.ImageRepository.filter((new h.ImageRestFilterBuilder).hidden(!1).limit(1).build()).then(function(t){return 1===t.length?t[0]:void 0})}).then(function(t){return!t&&r.factory.DatasetRepository.data[0]?r.moveMainViewToLocation({destinationPos:r.factory.DatasetRepository.data[0].getCenter()}):r.moveToImage(t,e,void 0,n)})},e.prototype.moveToImage=function(t,e,n,i,r){var s=this;this.mainViewCameraTween&&(this.mainViewCameraTween.stop(),this.factory.ViewService.mainView.forgetTween(this.mainViewCameraTween),this.mainViewCameraTween=void 0),t&&M.GeoTransformationService.RELOCATE_LOCAL_SYSTEM_THRESHOLD<t.location.length()&&this.factory.GeoTransformationService.setOffsetFromGlobal(t.globalLocation),void 0===n&&t&&(n=1+t.location.distanceTo(this.factory.ViewService.mainView.getCamera().position));var c=this.currImage;if(this.currImage=t,this.factory.ViewService.onTransitionStart.emit({previousImage:c,image:t,siteModelEntity:this.smeToMoveTo,poiEntity:this.poiToMoveTo,location:r,viewDistance:n,viewDir:e||this.factory.ViewService.mainView.getViewDir(),duration:this.moveLocationAnimationTime()}),!t)return Promise.reject();this.factory.PointCloudMenuService.isCloudVisible()&&(this.factory.ModeService.isNormalMode()||this.factory.ModeService.isMeasurementsMode())&&this.factory.PointCloudMenuService.config.autoActivation&&(t.dataset.pointCloudVisible=!0);var l=t.location.clone();this.bootstrap&&this.factory.ViewService.mainView.getCamera().position.copy(l);var u=this.factory.ViewService.mainView.getCamera().position.equals(l)?Promise.resolve():this.tweenCamPos(l),d=void 0===e||o.equals(this.factory.ViewService.mainView.getViewDir(),e)?Promise.resolve():this.tweenViewDir(e,this.bootstrap),p=void 0!==i?this.tweenViewFOV(i):Promise.resolve();return Promise.all([u,d,p]).then(function(){var e;s.factory.ViewService.onTransitionEnd.emit({previousImage:c,image:s.currImage,siteModelEntity:s.smeToMoveTo,poiEntity:s.poiToMoveTo}),s.bootstrap&&(s.bootstrap=!1),s.factory.LegacyService.triggerEvent("locationChanged",{from:c,to:s.currImage});var n=null==c?void 0:c.dataset;if(n!==s.currImage.dataset&&s.factory.LegacyService.triggerEvent("datasetChanged",{previous_dataset:null==n?void 0:n.id,dataset:null===(e=s.currImage.dataset)||void 0===e?void 0:e.id}),!1===s.movingToPoi&&!1===s.movingToSme){var i=s.factory.$location.url();s.factory.UrlService.updateUrl({image:t.id.toString()}),i!==s.factory.$location.url()&&a.invalidateAngular()}})},e.prototype.isMoving=function(){return void 0!==this.mainViewCameraTween},e.prototype.tweenViewDir=function(t,e){for(var n=this,i=e?t:this.factory.ViewService.mainView.getViewDir(),r=85/180*Math.PI;i.lon<0;)i.lon+=2*Math.PI;for(i.lon%=2*Math.PI;t.lon<0;)t.lon+=2*Math.PI;return t.lon%=2*Math.PI,i.lon<t.lon&&t.lon-i.lon>Math.PI?t.lon-=2*Math.PI:i.lon>t.lon&&i.lon-t.lon>Math.PI&&(t.lon+=2*Math.PI),t.lat=Math.max(-r,Math.min(r,t.lat)),new Promise(function(e){var r=new l.Tween(i).to({lon:t.lon,lat:t.lat},n.moveLocationAnimationTime()).easing(l.Easing.Sinusoidal.InOut).onUpdate(function(){n.factory.ViewService.mainView.updateOrientation(i)}).onComplete(function(){n.factory.ViewService.mainView.forgetTween(r),e()}).start();n.factory.ViewService.mainView.watchTween(r)})},e.prototype.tweenViewFOV=function(t){var e=this;return new Promise(function(n){var i={fov:e.factory.ViewService.mainView.getFov()},r=new l.Tween(i).to({fov:t},e.moveLocationAnimationTime()).easing(l.Easing.Sinusoidal.InOut).onUpdate(function(){e.factory.ViewService.mainView.updateFov(i.fov)}).onComplete(function(){e.factory.ViewService.mainView.forgetTween(r),n()}).start();e.factory.ViewService.mainView.watchTween(r)})},e.prototype.tweenCamPos=function(t){var e=this;return new Promise(function(n){var i=new l.Tween(e.factory.ViewService.mainView.getCamera().position).to({x:t.x,y:t.y,z:t.z},e.moveLocationAnimationTime()).easing(l.Easing.Sinusoidal.InOut).onComplete(function(){e.mainViewCameraTween=void 0,e.factory.ViewService.mainView.forgetTween(i),n()}).start();e.mainViewCameraTween=i,e.factory.ViewService.mainView.watchTween(i)})},e.prototype.moveToGeoLocation=function(t,e,n,i,r,o,a,s){var c=this,l=t;e||(l=this.factory.GeoTransformationService.toLocal(t.x,t.y,t.z)),this.checkAndFixOffset(l,e?this.factory.GeoTransformationService.vectorToGlobal(l):t);var u=void 0;(!this.movingToPoi&&!s||this.factory.PointCloudMenuService.isCloudVisible())&&(u=10);var d=[];return this.movingToPoi&&!this.poiToMoveTo.isLocationAsPoi&&d.push(this.poiToMoveTo.siteModelEntity),s&&d.push.apply(d,this.factory.FloorChangerService.currentFloors),(a?Promise.reject():this.getClosestImage(l,u,d)).then(function(t){if(!n){var e=(new p.Vector3).subVectors(l,t.location);e.normalize(),n={lon:Math.atan2(e.y,e.x),lat:void 0===i?Math.asin(e.z):i}}return c.moveToImage(t,n,void 0,r,l)}).catch(function(){return c.factory.PointCloudMenuService.isCloudVisible()||c.anyDatasetNearPoint(l,100)?(c.getMapView().moveMap(l,c.moveLocationAnimationTime()),c.moveMainViewToLocation({destinationPos:l,destinationNormal:o,viewDir:n,fov:r})):(c.getMapView().moveMap(l),Promise.reject(void 0))})},e.prototype.getClosestImage=function(t,e,n){var i=this;return n&&n.length>0?this.factory.ImageService.getClosestImage(t,e,n):this.factory.ImageService.getClosestImageOnFloor(t,e).catch(function(){return i.factory.ImageService.getClosestImage(t,e)})},e.prototype.moveMainViewToLocation=function(t){var e=this,n=[];this.factory.PointCloudMenuService.isCloudVisible()||(this.factory.PointCloudMenuService.showPointClouds(!0),this.factory.ViewMenuService.showPanoramas(!1));var i=new p.Vector3(0,0,0);if(this.movingToPoi&&!this.poiToMoveTo.pov){var r=new p.Vector3(1,0,0).applyQuaternion(this.poiToMoveTo.orientation);t.destinationNormal=r}if(t.destinationNormal)if(0===t.destinationNormal.length())i.subVectors(t.destinationPos,this.factory.ViewService.mainView.getCamera().position).negate().setLength(2),i.z=0,t.destinationPos.z=this.factory.ViewService.mainView.getCamera().position.z,t.viewDir=void 0;else if(this.movingToPoi||t.destinationNormal.z<.9&&t.destinationNormal.z>-.9)t.destinationNormal.normalize(),t.viewDir={lon:Math.atan2(-t.destinationNormal.y,-t.destinationNormal.x),lat:Math.asin(-t.destinationNormal.z)},t.destinationNormal.setLength(2),i=t.destinationNormal;else if(t.destinationNormal.z<=-.9){t.destinationNormal.normalize();var s=this.factory.ViewService.mainView.getViewDir(),c=Math.PI/2-Math.asin(-t.destinationNormal.z)/2,l=s.lon,u=new p.Vector3(0,0,0);u.x=Math.sin(c)*Math.cos(l),u.z=Math.cos(c),u.y=Math.sin(c)*Math.sin(l),t.viewDir={lon:Math.atan2(u.y,u.x),lat:Math.asin(u.z)},u.setLength(2).negate(),i=u}else i.z=1.9;if(t.destinationPos){this.bootstrap&&this.factory.ViewService.mainView.getCamera().position.copy(t.destinationPos);var d=t.destinationPos.clone();d.add(i),(this.factory.ModeService.isNormalMode()||this.factory.ModeService.isMeasurementsMode())&&this.factory.PointCloudMenuService.config.autoActivation&&this.factory.DatasetRepository.data.forEach(function(n){e.checkInactiveDatasetNearby(n,t.destinationPos)&&(n.pointCloudVisible=!0,a.invalidateAngular())});var h={previousImage:void 0,image:void 0,siteModelEntity:this.smeToMoveTo,poiEntity:this.poiToMoveTo,location:d,viewDistance:void 0,viewDir:void 0,duration:this.moveLocationAnimationTime()};this.factory.ViewService.onTransitionStart.emit(h),n.push(this.tweenCamPos(d).then(function(){e.bootstrap&&(e.bootstrap=!1)}))}return t.viewDir&&!o.equals(this.factory.ViewService.mainView.getViewDir(),t.viewDir)&&n.push(this.tweenViewDir(t.viewDir,this.bootstrap)),t.fov&&n.push(this.tweenViewFOV(t.fov)),Promise.all(n).then(function(){})},e.prototype.moveToDataset=function(t,e,n){var i=this;return this.factory.DatasetRepository.findOne(t).then(function(t){return i.factory.ImageService.getImageInDataset(t,e).then(function(e){return e||i.factory.ImageService.getFirstImageInDataset(t)}).then(function(t){return t?i.moveToImage(t,n):Promise.reject(void 0)})})},e.prototype.getMainView=function(){return this.factory.ViewService.mainView},e.prototype.getMapView=function(){return this.factory.ViewService.mapView},e.prototype.resetView=function(){this.currImage&&this.moveToImage(this.currImage).catch(S.handleWarning)},e.prototype.setMainScene=function(t){return t!==w.ViewType.MAP&&t!==w.ViewType.PANORAMA?(console.log("No such scene."),!1):this.factory.ViewService.getPrimaryView()!==t&&(this.factory.ViewService.setPrimaryView(t),!0)},e.prototype.swapScenes=function(){var t=this.factory.ViewService.getPrimaryView()===w.ViewType.MAP?w.ViewType.PANORAMA:w.ViewType.MAP;return this.setMainScene(t)},e.prototype.setPoiTypesVisibility=function(t,e){this.factory.PoiTypeService.setPoiTypeVisibility(t,e)},e.prototype.getShareUrl=function(){return this.factory.UrlService.generateShareUrl()},e.prototype.setLanguage=function(t){this.factory.LanguageService.setLanguage(t).catch(S.handleWarning),this.factory.PoiService.poisChanged.emit()},e.prototype.getLanguage=function(){return this.factory.LanguageService.getCurrentLanguage()},e.prototype.getCurrentCursorPosition=function(){return console.warn('Deprecated usage of "getCurrentCursorPosition()", use "api.view.mainView.getCurrentCursorPosition()" instead.'),this.factory.CursorService.getCursorData()},e.prototype.getMenuItems=function(){return this.factory.SidebarMenuService.items},e.prototype.addEventListener=function(t,e){return this.factory.LegacyService.addEventListener(t,e)},e.prototype.removeEventListener=function(t,e){return this.factory.LegacyService.removeEventListener(t,e)},e.prototype.getScreenShot=function(t){console.warn('Deprecated usage of "getScreenShot()", use "api.view.mainView.getScreenshot()" instead.');var e=this.factory.ViewService.mainView.getScreenshot(t,.9);return[e.data,e.width,e.height]},e.prototype.checkInactiveDatasetNearby=function(t,n){return!t.pointCloudVisible&&t.distanceToBoundingBox(n)<e.DATASET_ACTIVATION_DISTANCE},e.prototype.anyDatasetNearPoint=function(t,e){return this.factory.DatasetRepository.data.some(function(n){return n.distanceToBoundingBox(t)<e})},e.prototype.moveLocationAnimationTime=function(){return s.isMobileLayout()&&this.factory.ViewService.isMapPrimaryView()?600:2e3},e.prototype.isLicensed=function(){return this.factory.LicenseService.isFeatureEnabled(u.LicenseFeatureType.JAVASCRIPT_API)},e.prototype.getPoiRepository=function(){return this.factory.PoiRepository},e.prototype.getPoiTypeRepository=function(){return this.factory.PoiTypeRepository},e.DATASET_ACTIVATION_DISTANCE=10,e.IMAGE_LOCATION_TOLERANCE=.01,e}();e.IndoorViewerImpl=_}).call(this,n(19))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),r=n(7);e.parsePoiParam=function(t){if(r.isArray(t))return console.warn('Deprecated usage of "route", please use a IV.THREE.Vector3 instead of an array.'),(new i.Vector3).fromArray(t);if(t instanceof i.Vector3)return t;var e=t.split(",").map(parseFloat);return 1===e.length?e[0]:(new i.Vector3).fromArray(e)}},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return t.call(this,"SharedMeasurementVisitedEvent")||this}return r(e,t),e.prototype.sharedMeasurementVisitedFromPdf=function(){return this.withData("visitedFrom","pdf"),this},e.prototype.sharedMeasurementVisitedFromModalLink=function(){return this.withData("visitedFrom","modalLink"),this},e}(n(64).TrackingEvent);e.SharedMeasurementVisitedEvent=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(){}return t.prototype.fillFromData=function(t){this.instanceName=t.instance_name,this.gtmContainerId=t.gtm_container_id,this.isTrackingEnabled=t.tracking_enabled,this.isTrial=t.trial,this.instanceType=t.instance_type},t}();e.GoogleTagManagerEntity=i},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(146),a=n(4),s=n(137),c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.createIcon=function(){e.icon||(e.icon=s.MeasurementObject3D.createSpriteIcon(n(1079)))},e.prototype.canCreatePlane=function(){return this.points.length>=3},e.prototype.createPlane=function(){var t=this.points[0].position,e=this.points[1].position,n=this.points[2].position;this.plane=(new a.Plane).setFromCoplanarPoints(t,e,n)},e.prototype.getIcon=function(){return e.icon},e}(o.AreaMeasurementObject3D);e.FreeAreaMeasurementObject3D=c},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__assign||function(){return(o=Object.assign||function(t){for(var e,n=1,i=arguments.length;n<i;n++)for(var r in e=arguments[n])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t}).apply(this,arguments)};Object.defineProperty(e,"__esModule",{value:!0});var a=n(538),s=n(4),c=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.buttonsDescriptions=[],e.buttons=[],e._buttonWidth=20,e._buttonSpacing=6,e}return r(e,t),Object.defineProperty(e.prototype,"buttonWidth",{set:function(t){this._buttonWidth=t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"buttonSpacing",{set:function(t){this._buttonSpacing=t},enumerable:!0,configurable:!0}),e.prototype.createSpriteObject=function(){return t.prototype.createSpriteObject.call(this),this.defaultScale=this.spriteObject.scale.clone(),this.spriteObject},e.prototype.setButtons=function(t){if(t.length!==this.buttons.length&&(this.removeButtons(),this.buttonsDescriptions=t,this.buttonsDescriptions.length>0)){var e=this.padding;this.padding=o(o({},e),{right:e.right+this.calcPaddingForButtons(this.buttonsDescriptions.length)}),this.updateSpriteTexture(),this.updateButtons()}},e.prototype.removeButtons=function(){var t=this;if(this.buttons.length>0){var e=this.padding;this.padding=o(o({},e),{right:e.right-this.calcPaddingForButtons(this.buttons.length)}),this.buttons.forEach(function(e){t.spriteObject.remove(e),e.geometry.dispose()}),this.buttonsDescriptions=[],this.buttons=[],this.updateSpriteTexture(),this.updateButtons()}},e.prototype.setSpriteIconTextureFromImage=function(e){this.spriteObject&&(this.setImage=e,t.prototype.setSpriteIconTextureFromImage.call(this,e,this.canvas,this.canvas.getContext("2d")))},e.prototype.updateSpriteTexture=function(){t.prototype.updateSpriteTexture.call(this),this.setSpriteIconTextureFromImage(this.setImage)},e.prototype.removeSpriteObject=function(){this.removeButtons(),t.prototype.removeSpriteObject.call(this),this.canvas=void 0},e.prototype.createCanvas=function(){return this.canvas=t.prototype.createCanvas.call(this),this.canvas},e.prototype.calcPaddingForButtons=function(t){return this._buttonSpacing*(t+1)+this._buttonWidth*t},e.prototype.updateButtons=function(){this.spriteObject.geometry.dispose();var t=this.visibleSize.x/this.canvasSize.x,e=this.visibleSize.y/this.canvasSize.y;this.spriteObject.geometry=a.PlaneSprite.getPlaneGeometry(t,e),this.alignPlaneGeometry(this.spriteObject.geometry,this.visibleSize.x,this.visibleSize.y),this.spriteObject.scale.set(this.visibleSize.x/this.visibleSize.y,1,1),this.setSpriteIconTextureFromImage(this.setImage),this.buttonsDescriptions.length>0&&this.addButtonMeshes()},e.prototype.addButtonMeshes=function(){var t=this,n=this.visibleSize.x,i=(this.border.width+this.padding.left+this.canvas.getContext("2d").measureText(this.text).width+2*this._buttonSpacing-n/2)/n,r=.5*this._buttonWidth/n,o=(this._buttonWidth+this._buttonSpacing)/n;this.buttonsDescriptions.forEach(function(n,a){var s=t.createButtonMesh(n.iconTexture);s.onClick=n.onClick,t.spriteObject.add(s),s.position.set(i+r+o*a,e.BUTTON_Z_ADJUSTMENT,0),t.buttons.push(s)}),this.buttonsDescriptions=[]},e.prototype.createButtonMesh=function(t){var e=new s.PlaneGeometry(this._buttonWidth/this.visibleSize.x,this._buttonWidth/this.visibleSize.y),n=new s.MeshBasicMaterial({map:t,color:new s.Color(16777215),side:s.FrontSide,depthTest:!1,depthWrite:!1,transparent:!0}),i=new s.Mesh(e,n);return i.renderOrder=this.spriteObject.renderOrder+1,i},e.BUTTON_Z_ADJUSTMENT=.05,e}(a.PlaneSprite);e.EditablePlaneSprite=c},function(t,e,n){!function(){function e(t,e){document.addEventListener?t.addEventListener("scroll",e,!1):t.attachEvent("scroll",e)}function n(t){this.a=document.createElement("div"),this.a.setAttribute("aria-hidden","true"),this.a.appendChild(document.createTextNode(t)),this.b=document.createElement("span"),this.c=document.createElement("span"),this.h=document.createElement("span"),this.f=document.createElement("span"),this.g=-1,this.b.style.cssText="max-width:none;display:inline-block;position:absolute;height:100%;width:100%;overflow:scroll;font-size:16px;",this.c.style.cssText="max-width:none;display:inline-block;position:absolute;height:100%;width:100%;overflow:scroll;font-size:16px;",this.f.style.cssText="max-width:none;display:inline-block;position:absolute;height:100%;width:100%;overflow:scroll;font-size:16px;",this.h.style.cssText="display:inline-block;width:200%;height:200%;font-size:16px;max-width:none;",this.b.appendChild(this.h),this.c.appendChild(this.f),this.a.appendChild(this.b),this.a.appendChild(this.c)}function i(t,e){t.a.style.cssText="max-width:none;min-width:20px;min-height:20px;display:inline-block;overflow:hidden;position:absolute;width:auto;margin:0;padding:0;top:-999px;white-space:nowrap;font-synthesis:none;font:"+e+";"}function r(t){var e=t.a.offsetWidth,n=e+100;return t.f.style.width=n+"px",t.c.scrollLeft=n,t.b.scrollLeft=t.b.scrollWidth+100,t.g!==e&&(t.g=e,!0)}function o(t,n){function i(){var t=o;r(t)&&t.a.parentNode&&n(t.g)}var o=t;e(t.b,i),e(t.c,i),r(t)}function a(t,e){var n=e||{};this.family=t,this.style=n.style||"normal",this.weight=n.weight||"normal",this.stretch=n.stretch||"normal"}var s=null,c=null,l=null,u=null;function d(){return null===u&&(u=!!document.fonts),u}function p(t,e){return[t.style,t.weight,function(){if(null===l){var t=document.createElement("div");try{t.style.font="condensed 100px sans-serif"}catch(t){}l=""!==t.style.font}return l}()?t.stretch:"","100px",e].join(" ")}a.prototype.load=function(t,e){var r=this,a=t||"BESbswy",l=0,u=e||3e3,h=(new Date).getTime();return new Promise(function(t,e){if(d()&&!function(){if(null===c)if(d()&&/Apple/.test(window.navigator.vendor)){var t=/AppleWebKit\/([0-9]+)(?:\.([0-9]+))(?:\.([0-9]+))/.exec(window.navigator.userAgent);c=!!t&&603>parseInt(t[1],10)}else c=!1;return c}()){var f=new Promise(function(t,e){!function n(){(new Date).getTime()-h>=u?e(Error(u+"ms timeout exceeded")):document.fonts.load(p(r,'"'+r.family+'"'),a).then(function(e){1<=e.length?t():setTimeout(n,25)},e)}()}),g=new Promise(function(t,e){l=setTimeout(function(){e(Error(u+"ms timeout exceeded"))},u)});Promise.race([g,f]).then(function(){clearTimeout(l),t(r)},e)}else!function(t){document.body?t():document.addEventListener?document.addEventListener("DOMContentLoaded",function e(){document.removeEventListener("DOMContentLoaded",e),t()}):document.attachEvent("onreadystatechange",function e(){"interactive"!=document.readyState&&"complete"!=document.readyState||(document.detachEvent("onreadystatechange",e),t())})}(function(){function c(){var e;(e=-1!=m&&-1!=v||-1!=m&&-1!=y||-1!=v&&-1!=y)&&((e=m!=v&&m!=y&&v!=y)||(null===s&&(e=/AppleWebKit\/([0-9]+)(?:\.([0-9]+))/.exec(window.navigator.userAgent),s=!!e&&(536>parseInt(e[1],10)||536===parseInt(e[1],10)&&11>=parseInt(e[2],10))),e=s&&(m==b&&v==b&&y==b||m==w&&v==w&&y==w||m==S&&v==S&&y==S)),e=!e),e&&(x.parentNode&&x.parentNode.removeChild(x),clearTimeout(l),t(r))}var d=new n(a),f=new n(a),g=new n(a),m=-1,v=-1,y=-1,b=-1,w=-1,S=-1,x=document.createElement("div");x.dir="ltr",i(d,p(r,"sans-serif")),i(f,p(r,"serif")),i(g,p(r,"monospace")),x.appendChild(d.a),x.appendChild(f.a),x.appendChild(g.a),document.body.appendChild(x),b=d.a.offsetWidth,w=f.a.offsetWidth,S=g.a.offsetWidth,function t(){if((new Date).getTime()-h>=u)x.parentNode&&x.parentNode.removeChild(x),e(Error(u+"ms timeout exceeded"));else{var n=document.hidden;!0!==n&&void 0!==n||(m=d.a.offsetWidth,v=f.a.offsetWidth,y=g.a.offsetWidth,c()),l=setTimeout(t,50)}}(),o(d,function(t){m=t,c()}),i(d,p(r,'"'+r.family+'",sans-serif')),o(f,function(t){v=t,c()}),i(f,p(r,'"'+r.family+'",serif')),o(g,function(t){y=t,c()}),i(g,p(r,'"'+r.family+'",monospace'))})})},t.exports=a}()},function(t,e,n){t.exports=n.p+"plane_sprite_error.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(257),a=n(312),s=function(t){function e(n,i){var r=t.call(this,n)||this;return r.setUniforms=a.createSetUniformsFunc(r),r.vertexShader=e.vertexShader,r.fragmentShader=e.fragmentShader,r.uniforms.dashColor={value:i.dashColor},r.uniforms.dashOpacity={value:i.dashOpacity},r.uniforms.occlusionDistance={value:i.occlusionDistance},r.uniforms.clipDistance={value:i.clipDistance},r.extensions.fragDepth=!0,r}return r(e,t),e.vertexShader=n(1071),e.fragmentShader=n(1072),e}(o.MeshLineMaterial);e.MeasurementLineMaterial=s},function(t,e){t.exports="attribute vec3 previous;\nattribute vec3 next;\nattribute float side;\nattribute float width;\nattribute float counters;\n\nuniform vec2 resolution;\nuniform float lineWidth;\nuniform vec3 color;\nuniform float opacity;\nuniform float near;\nuniform float far;\nuniform float sizeAttenuation;\nuniform vec3 dashColor;\nuniform float dashOpacity;\n\nvarying vec2 vUV;\nvarying vec4 vColor;\nvarying vec4 vDashColor;\nvarying float vCounters;\n\nvec2 fix(vec4 i, float aspect)\n{\n\tvec2 res = i.xy / i.w;\n\tres.x *= aspect;\n\tvCounters = counters;\n\treturn res;\n}\n\n// This vertex shader is a copy of the one supplied by MeshLineMaterial.\n// It supports drawing dashed lines.\nvoid main()\n{\n\tfloat aspect = resolution.x / resolution.y;\n\tfloat pixelWidthRatio = 1.0 / (resolution.x * projectionMatrix[0][0]);\n\n\tvColor = vec4(color, opacity);\n\tvDashColor = vec4(dashColor, dashOpacity);\n\tvUV = uv;\n\n\tmat4 m = projectionMatrix * modelViewMatrix;\n\tvec4 finalPosition = m * vec4(position, 1.0);\n\tvec4 prevPos = m * vec4(previous, 1.0);\n\tvec4 nextPos = m * vec4(next, 1.0);\n\n\tvec2 currentP = fix(finalPosition, aspect);\n\tvec2 prevP = fix(prevPos, aspect);\n\tvec2 nextP = fix(nextPos, aspect);\n\n\tfloat pixelWidth = finalPosition.w * pixelWidthRatio;\n\tfloat w = 1.8 * pixelWidth * lineWidth * width;\n\n\tif (sizeAttenuation == 1.0)\n\t{\n\t\tw = 1.8 * lineWidth * width;\n\t}\n\n\tvec2 dir;\n\tif (nextP == currentP)\n\t{\n\t\tdir = normalize(currentP - prevP);\n\t}\n\telse if (prevP == currentP)\n\t{\n\t\tdir = normalize(nextP - currentP);\n\t}\n\telse\n\t{\n\t\tvec2 dir1 = normalize(currentP - prevP);\n\t\tvec2 dir2 = normalize(nextP - currentP);\n\t\tdir = normalize(dir1 + dir2);\n\n\t\tvec2 perp = vec2(-dir1.y, dir1.x);\n\t\tvec2 miter = vec2(-dir.y, dir.x);\n\t}\n\n\tvec2 normal = vec2(-dir.y, dir.x);\n\tnormal.x /= aspect;\n\tnormal *= .5 * w;\n\n\tvec4 offset = vec4(normal * side, 0.0, 1.0);\n\tfinalPosition.xy += offset.xy;\n\n\tgl_Position = finalPosition;\n}\n"},function(t,e){t.exports="uniform sampler2D map;\nuniform sampler2D alphaMap;\nuniform float useMap;\nuniform float useAlphaMap;\nuniform float useDash;\nuniform float dashArray;\nuniform float dashOffset;\nuniform float dashRatio;\nuniform float visibility;\nuniform float alphaTest;\nuniform vec2 repeat;\nuniform sampler2D depthTexture;\nuniform sampler2D rgbaTexture;\nuniform float nearPlane;\nuniform float farPlane;\nuniform float occlusionDistance;\nuniform float clipDistance;\nuniform vec2 viewportSize;\nuniform vec2 viewportOffset;\n\nvarying vec2 vUV;\nvarying vec4 vColor;\nvarying vec4 vDashColor;\nvarying float vCounters;\n\n// Converts the exponential depth value from the depth buffer to a linear value\n// See https://learnopengl.com/Advanced-OpenGL/Depth-testing for more information about this formula\nfloat convertToLinear(float zValue)\n{\n\tfloat z = zValue * 2.0 - 1.0;\n\treturn (2.0 * nearPlane * farPlane) / (farPlane + nearPlane - z * (farPlane - nearPlane));\n}\n\nvoid main()\n{\n\tvec4 c = vDashColor;\n\n\t// <-- The following section of the shader is copied from MeshLineMaterial\n\n\t// Sample the fragment from a texture if such is supplied\n\tif (useMap == 1.0)\n\t{\n\t\tc *= texture2D(map, vUV * repeat);\n\t}\n\n\t// Sample the fragment's alpha value from an alpha texture if such is supplied\n\tif (useAlphaMap == 1.0)\n\t{\n\t\tc.a *= texture2D(alphaMap, vUV * repeat).a;\n\t}\n\n\t// Discard the fragment if below the alpha threshold\n\tif (c.a < alphaTest)\n\t{\n\t\tdiscard;\n\t}\n\n\t// If the line is dashed, set the alpha value of the fragment according to the line segment it belongs to\n\tif (useDash == 1.0)\n\t{\n\t\tc.a *= ceil(mod(vCounters + dashOffset, dashArray) - (dashArray * dashRatio));\n\t}\n\n\t// <-- end of copied code\n\n#ifdef GL_EXT_frag_depth\n\t// mixFactor and clipFactor define the color mixing proportion between the states of\n\t// full visibility and occluded visibility\n\t// and\n\t// full visibility and total invisibility\n\tfloat mixFactor = 0.0;\n\tfloat clipFactor = 0.0;\n\n\t// The linear depth value of the current fragment\n\tfloat fragDepth = convertToLinear(gl_FragCoord.z);\n\n\t// The coordinates of the current fragment in the depth texture\n\tvec2 depthTxtCoords = vec2(gl_FragCoord.x - viewportOffset.x, gl_FragCoord.y) / viewportSize;\n\n\t// The linear depth value of the pixel occupied by this fragment in the depth buffer\n\tfloat textureDepth = convertToLinear(texture2D(depthTexture, depthTxtCoords).r);\n\n\t// The difference between the two depths\n\tfloat delta = textureDepth - fragDepth;\n\n\tif (delta < 0.0)\n\t{\n\t\t// occlusionDistance and clipDistance define the width of the respective zones and\n\t\t// mixFactor and clipFactor express the interpolation between the two colors depending on the position\n\t\t// of the current fragment withing those zones.\n\t\tmixFactor = clamp(delta / occlusionDistance, 0.0, 1.0);\n\t\tclipFactor = clamp(delta / clipDistance, 0.0, 1.0);\n\t}\n\t// If the fragment is totally transparent, don't bother drawing it\n\tif (clipFactor == 1.0)\n\t{\n\t\tdiscard;\n\t}\n#else\n\tfloat mixFactor = 0.0;\n\tfloat clipFactor = 0.0;\n#endif\n\n\t// Calculate the color of the dashed version of the line\n\tvec4 backColor = vec4(c.rgb, c.a * step(vCounters, visibility));\n\n\t// Mix between the solid and the dahsed versions of the line according to the mixFactor\n\tgl_FragColor = mix(vColor, backColor, mixFactor);\n\n\t// Set the alpha value of the fragment according to the clipFactor\n\t// Note that clipFactor was previously clamped [0.0;1.0]\n\tgl_FragColor.a *= (1.0 - clipFactor);\n}\n"},function(t,e){t.exports="varying vec2 vUv;\n\nvoid main()\n{\n\tgl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\n\tvUv = uv;\n}"},function(t,e){t.exports="uniform sampler2D depthTexture;\nuniform sampler2D rgbaTexture;\nuniform sampler2D map;\nuniform bool readMap;\nuniform float nearPlane;\nuniform float farPlane;\nuniform vec3 color;\nuniform float opacity;\nuniform vec3 obscuredColor;\nuniform float obscuredOpacity;\nuniform float occlusionDistance;\nuniform float clipDistance;\nuniform vec2 viewportSize;\nuniform vec2 viewportOffset;\nuniform bool disableDepthTesting;\n\nvarying vec2 vUv;\n\n// The relative luminance value of each color as percieved by humans\n// Used to convert RGB to Greyscale\n#define LUMA vec3(0.299, 0.587, 0.114)\n\n// Converts the exponential depth value from the depth buffer to a linear value\n// See https://learnopengl.com/Advanced-OpenGL/Depth-testing for more information about this formula\nfloat convertToLinear(float zValue)\n{\n\tfloat z = zValue * 2.0 - 1.0;\n\treturn (2.0 * nearPlane * farPlane) / (farPlane + nearPlane - z * (farPlane - nearPlane));\n}\n\nvoid main()\n{\n\n\t// mixFactor and clipFactor define the color mixing proportion between the states of\n\t// full visibility and occluded visibility\n\t// and\n\t// full visibility and total invisibility\n\tfloat mixFactor = 0.0;\n\tfloat clipFactor = 0.0;\n\n#ifdef GL_EXT_frag_depth\n\tif (!disableDepthTesting)\n\t{\n\t\t// The linear depth value of the current fragment\n\t\tfloat fragDepth = convertToLinear(gl_FragCoord.z);\n\n\t\t// The coordinates of the current fragment in the depth texture\n\t\tvec2 depthTxtCoords = vec2(gl_FragCoord.x - viewportOffset.x, gl_FragCoord.y) / viewportSize;\n\n\t\t// The linear depth value of the pixel occupied by this fragment in the depth buffer\n\t\tfloat textureDepth = convertToLinear(texture2D(depthTexture, depthTxtCoords).r);\n\n\t\t// The difference between the two depths\n\t\tfloat delta = textureDepth - fragDepth;\n\n\t\tif (delta < 0.0)\n\t\t{\n\t\t\t// occlusionDistance and clipDistance define the width of the respective zones and\n\t\t\t// mixFactor and clipFactor express the interpolation between the two colors depending on the position\n\t\t\t// of the current fragment withing those zones.\n\t\t\tmixFactor = clamp(delta / occlusionDistance, 0.0, 1.0);\n\t\t\tclipFactor = clamp(delta / clipDistance, 0.0, 1.0);\n\t\t}\n\t\t// If the fragment is totally transparent, don't bother drawing it\n\t\tif (clipFactor == 1.0)\n\t\t{\n\t\t\tdiscard;\n\t\t}\n\t}\n#endif\n\n\t// Are we drawing from a texture ?\n\tif (readMap)\n\t{\n\t\t// Sample the fragment from the texture and calculate its greyscale value\n\t\tvec4 voxel = texture2D(map, vUv);\n\t\tfloat voxelIntensity = dot(voxel.rgb, LUMA);\n\t\t// If the texture is completely transparent here, discard the fragment\n\t\tif (voxel.a == 0.0)\n\t\t{\n\t\t\tdiscard;\n\t\t}\n\t\t// Mix between the RGB and the Greyscale version of the texture according to the mixFactor\n\t\tgl_FragColor = mix(vec4(voxel.rgb, opacity * voxel.a), vec4(vec3(voxelIntensity), obscuredOpacity * voxel.a), mixFactor);\n\n\t}\n\telse\n\t{\n\t\tvec4 orgba = vec4(obscuredColor, obscuredOpacity);\n\t\tvec4 rgba = vec4(color, opacity);\n\t\t// Mix between the normal and the obscured color according to the mixFactor\n\t\tgl_FragColor = mix(rgba, orgba, mixFactor);\n\t}\n\t// Set the alpha value of the fragment according to the clipFactor\n\t// Note that clipFactor was previously clamped [0.0;1.0]\n\tgl_FragColor.a *= (1.0 - clipFactor);\n}"},function(t,e,n){t.exports=n.p+"visibility_off.png"},function(t,e,n){t.exports=n.p+"delete.png"},function(t,e,n){t.exports=n.p+"save.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(4),a=n(258),s=function(t){function e(e,n){var i=t.call(this)||this;return i.normal=e,i.points=n,i.createGrid(),i}return r(e,t),e.prototype.createGrid=function(){var t=new o.GridHelper(e.GRID_SIZE,e.GRID_DIVISIONS,e.GRID_LINES_COLOR,e.GRID_LINES_COLOR);if(t.lookAt(this.normal),t.geometry.rotateX(Math.PI/2),t.position.add(this.points[0]),t.updateWorldMatrix(!1,!1),this.points.length>=3){var n=a.rotateToHorizontalPlane(this.points.map(function(e){return t.worldToLocal(e.clone())}));t.rotateOnAxis(e.Z_NORMAL,n.points[1].angle())}var i=new o.PlaneGeometry(e.GRID_SIZE,e.GRID_SIZE,1),r=new o.Mesh(i,e.GRID_MATERIAL);t.add(r),this.add(t)},e.GRID_MATERIAL_COLOR=2105376,e.GRID_LINES_COLOR=16777215,e.GRID_SIZE=50,e.GRID_DIVISIONS=100,e.Z_NORMAL=new o.Vector3(0,0,1),e.GRID_MATERIAL=new o.MeshBasicMaterial({color:e.GRID_MATERIAL_COLOR,opacity:.15,transparent:!0,side:o.DoubleSide,wireframe:!1,depthTest:!1,depthWrite:!1}),e}(o.Object3D);e.MeasurementGridObject3D=s},function(t,e,n){t.exports=n.p+"free_area_sprite.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(146),a=n(4),s=n(137),c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.createIcon=function(){e.icon||(e.icon=s.MeasurementObject3D.createSpriteIcon(n(1081)))},e.prototype.canCreatePlane=function(){return this.points.length>=1},e.prototype.createPlane=function(){var t=this.points[0].position;this.plane=(new a.Plane).setFromNormalAndCoplanarPoint(o.AreaMeasurementObject3D.Z_NORMAL,t)},e.prototype.getIcon=function(){return e.icon},e}(o.AreaMeasurementObject3D);e.HorizontalAreaMeasurementObject3D=c},function(t,e,n){t.exports=n.p+"f52cae0f414e4f4c6a834b1e406e35d5.horizontal_area_polygon_sprite.png"},function(t,e,n){t.exports=n.p+"d582e1270c2a21f1e9dd3a4660d8723a.vertical_area_polygon_sprite.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(146),a=n(4),s=n(541),c=n(137),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.createIcon=function(){e.icon||(e.icon=c.MeasurementObject3D.createSpriteIcon(n(1084)))},e.prototype.canCreatePlane=function(){return this.points.length>=1},e.prototype.createPlane=function(){this.plane=(new a.Plane).setFromNormalAndCoplanarPoint(o.AreaMeasurementObject3D.Z_NORMAL,this.points[0].position)},e.prototype.getIcon=function(){return e.icon},e}(s.RectangleMeasurementObject3D);e.HorizontalRectangleMeasurementObject3D=l},function(t,e,n){t.exports=n.p+"horizontal_area_rectangle_sprite.png"},function(t,e,n){t.exports=n.p+"vertical_area_rectangle_sprite.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(217),a=n(4),s=n(137),c=n(386),l=n(257),u=n(52),d=n(153),p=n(311),h=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.deltaLineMaterial=new l.MeshLineMaterial({color:c.GUIDE_LINE_COLOR,transparent:!0,depthTest:!1,lineWidth:.01,opacity:1,sizeAttenuation:1,depthWrite:!1,dashArray:.05,dashOffset:0,dashRatio:.2}),e}return r(e,t),e.prototype.markNotFresh=function(){t.prototype.markNotFresh.call(this),this.removeDeltaLines()},e.prototype.addPoint=function(e,n){t.prototype.addPoint.call(this,e,n),this.addDeltaLines(),this.freshlyCreated=!0},e.prototype.getIcon=function(){return e.icon},e.prototype.putPointer=function(e){t.prototype.putPointer.call(this,e),this.addDeltaLines(e)},e.prototype.dispose=function(){t.prototype.dispose.call(this),this.zDeltaTextSprite&&this.zDeltaTextSprite.removeSpriteObject(),this.xyDeltaTextSprite&&this.xyDeltaTextSprite.removeSpriteObject()},e.prototype.updateMeshScaleForViewport=function(e){t.prototype.updateMeshScaleForViewport.call(this,e);var n=e.name===u.SplitViewportName.DEFAULT_VIEW;this.setDeltaLinesVisibility(n),n&&(this.zDeltaTextSprite&&this.zDeltaTextSprite.updateSpriteObject(e),this.xyDeltaTextSprite&&this.xyDeltaTextSprite.updateSpriteObject(e))},e.prototype.dragObject=function(e,n,i){i&&(n=new a.Vector3(n.x,n.y,this.getOppositePoint(e).position.z));var r=t.prototype.dragObject.call(this,e,n);return this.addDeltaLines(),r},e.prototype.setMouseEventCallbacks=function(e,n,i,r,o,a){var s=this;t.prototype.setMouseEventCallbacks.call(this,e,n,i,r,o,a),this.onPointDragEnd=function(t,e){s.removeDeltaLines(),o(t,e)}},e.prototype.setHovered=function(e){var n,i;t.prototype.setHovered.call(this,e),e?this.addDeltaLines():this.removeDeltaLines();var r=e?p.RenderOrder.ABOVE_HIGHLIGHT:p.RenderOrder.BETWEEN;(null===(n=this.xyDeltaTextSprite)||void 0===n?void 0:n.spriteObject)&&(this.xyDeltaTextSprite.spriteObject.renderOrder=r),(null===(i=this.zDeltaTextSprite)||void 0===i?void 0:i.spriteObject)&&(this.zDeltaTextSprite.spriteObject.renderOrder=r)},e.prototype.createIcon=function(){e.icon||(e.icon=s.MeasurementObject3D.createSpriteIcon(n(1087)))},e.prototype.calculateCirclePosition=function(t){return t},e.prototype.getOppositePoint=function(t){return t===this.circleStart?this.circleEnd:this.circleStart},e.prototype.addDeltaLines=function(t){if(void 0===t&&(t=this.endPoint),!this.freshlyCreated){this.removeDeltaLines();var n=this.calculateCirclePosition(t),i=new a.Vector3,r=[this.startPoint,n].sort(function(t,e){return t.z-e.z}),o=r[0],c=r[1];Math.abs(this.startPoint.z-n.z)<e.MEASURING_ACCURACY?i.copy(c):(i.set(c.x,c.y,o.z),this.zDeltaTextSprite=this.createDeltaLabel(new a.Line3(c,i).getCenter(new a.Vector3),Math.abs(c.z-i.z)),this.xyDeltaTextSprite=this.createDeltaLabel(new a.Line3(o,i).getCenter(new a.Vector3),o.distanceTo(i)),this.zDeltaHelperLine=s.MeasurementObject3D.createDottedLine(c,i,this.deltaLineMaterial),this.xyDeltaHelperLine=s.MeasurementObject3D.createDottedLine(o,i,this.deltaLineMaterial),this.add(this.zDeltaHelperLine,this.xyDeltaHelperLine,this.zDeltaTextSprite.spriteObject,this.xyDeltaTextSprite.spriteObject))}},e.prototype.createDeltaLabel=function(t,n){return this.createTextSprite(t,this.UoMService.convert(n,d.MeasurementDomain.DISTANCE,2,void 0,e.MEASURING_ACCURACY,!0),void 0,c.GUIDE_LINE_COLOR_HEX,c.GUIDE_LINE_COLOR_HEX,this.deltaElementsFontColor,this.noIconLabelPadding,p.RenderOrder.BETWEEN)},e.prototype.removeDeltaLines=function(){this.freshlyCreated||(this.removeLabels(this.zDeltaTextSprite,this.xyDeltaTextSprite),this.removeMeshes(this.zDeltaHelperLine,this.xyDeltaHelperLine))},e.prototype.setDeltaLinesVisibility=function(t){var e,n;this.setMeshVisibility(t,this.zDeltaHelperLine,this.xyDeltaHelperLine,null===(e=this.zDeltaTextSprite)||void 0===e?void 0:e.spriteObject,null===(n=this.xyDeltaTextSprite)||void 0===n?void 0:n.spriteObject)},e.prototype.setMeshVisibility=function(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];for(var i=0,r=e;i<r.length;i++){var o=r[i];o&&(o.visible=t)}},e.MEASURING_ACCURACY=.1,e}(o.DistanceMeasurementObject3D);e.FreeDistanceMeasurementObject3D=h},function(t,e,n){t.exports=n.p+"free_distance_sprite.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(217),a=n(137),s=n(4),c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.getIcon=function(){return e.icon},e.prototype.createIcon=function(){e.icon||(e.icon=a.MeasurementObject3D.createSpriteIcon(n(1089)))},e.prototype.calculateCirclePosition=function(t){return new s.Vector3(t.x,t.y,this.startPoint.z)},e}(o.DistanceMeasurementObject3D);e.HorizontalDistanceMeasurementObject3D=c},function(t,e,n){t.exports=n.p+"3a167e1c80554e2dc13b68eda20db6a7.horizontal_distance_sprite.png"},function(t,e,n){t.exports=n.p+"29def06d2d56645e9e7de3b76545eb4a.vertical_distance_sprite.png"},function(t,e,n){t.exports=n.p+"87ccfb7e7cdbeb899c99456a4da61326.free_area.svg"},function(t,e,n){t.exports=n.p+"ac0e0b5511699ec66145c4153f5c0023.horizontal_area_polygon.svg"},function(t,e,n){t.exports=n.p+"6c9b0975d6ba095cfccbb03860ff45a9.vertical_area_polygon.svg"},function(t,e,n){t.exports=n.p+"de3fd9d7dd7f30358753a7bf817833ae.horizontal_area_rectangle.svg"},function(t,e,n){t.exports=n.p+"5bba7dd7bc6240ea288672b61c3031d1.vertical_area_rectangle.svg"},function(t,e,n){t.exports=n.p+"1540b1aeaab2bc7a19ec443260a1fa0e.free_distance.svg"},function(t,e,n){t.exports=n.p+"843bab5c0f25be1c96cc7437f5a78dfd.horizontal_distance.svg"},function(t,e,n){t.exports=n.p+"02d94ca661791fcac14ba92f8dcecbee.vertical_distance.svg"},function(t,e,n){"use strict";var i=n(1100),r=n(1104),o=n(1105);function a(t,e){return s(t,e)[0][0]}function s(t,e){var n,a=e||{},s=10,f=[].concat(a.whitelist||[],a.only||[]),g=[].concat(a.blacklist||[],a.ignore||[]);return null!==a.minLength&&void 0!==a.minLength&&(s=a.minLength),!t||t.length<s?d():(n=function(t,e){var n,i,r,o=-1;for(i in e)(r=c(t,e[i]))>o&&(o=r,n=i);return[n,o]}(t=t.slice(0,2048),r))[0]in o?function(t,e){for(var n=e[0][1],i=300*t.length-n,r=-1,o=e.length;++r<o;)e[r][1]=1-(e[r][1]-n)/i||0;return e}(t,function(t,e,n,i){var r,o=[];for(r in e=function(t,e,n){var i,r;if(0===e.length&&0===n.length)return t;for(r in i={},t)u(r,e,n)&&(i[r]=t[r]);return i}(e,n,i))o.push([r,l(t,e[r])]);return 0===o.length?d():o.sort(h)}(i.asTuples(t),o[n[0]],f,g)):0!==n[1]&&u(n[0],f,g)?p(n[0]):d()}function c(t,e){var n=t.match(e);return(n?n.length:0)/t.length||0}function l(t,e){for(var n,i,r=0,o=-1,a=t.length;++o<a;)(n=t[o])[0]in e?(i=n[1]-e[n[0]]-1)<0&&(i=-i):i=300,r+=i;return r}function u(t,e,n){return 0===e.length&&0===n.length||(0===e.length||-1!==e.indexOf(t))&&-1===n.indexOf(t)}function d(){return p("und")}function p(t){return[[t,1]]}function h(t,e){return t[1]-e[1]}a.all=s,t.exports=a,function(){var t,e,n,i,r,a;for(r in o)for(e in t=o[r]){for(a=(i=t[e].split("|")).length,n={};a--;)n[i[a]]=a;t[e]=n}}()},function(t,e,n){"use strict";var i=n(1101).trigram,r=n(1102),o=n(1103),a={}.hasOwnProperty;function s(t){return null==t?"":o(r(String(t).replace(/[\u0021-\u0040]+/g," "))).toLowerCase()}function c(t){return i(" "+s(t)+" ")}function l(t){for(var e,n=c(t),i=n.length,r={};i--;)e=n[i],a.call(r,e)?r[e]++:r[e]=1;return r}function u(t,e){return t[1]-e[1]}e.clean=s,e.trigrams=c,e.asDictionary=l,e.asTuples=function(t){var e,n=l(t),i=[];for(e in n)i.push([e,n[e]]);return i.sort(u),i},e.tuplesAsDictionary=function(t){for(var e,n=t.length,i={};n--;)i[(e=t[n])[0]]=e[1];return i}},function(t,e,n){"use strict";function i(t){if("number"!=typeof t||isNaN(t)||t<1||t===1/0)throw new Error("`"+t+"` is not a valid argument for n-gram");return function(e){var n,i=[];if(null==e)return i;if((n=(e=e.slice?e:String(e)).length-t+1)<1)return i;for(;n--;)i[n]=e.slice(n,n+t);return i}}t.exports=i,i.bigram=i(2),i.trigram=i(3)},function(t,e,n){"use strict";t.exports=function(t){return String(t).replace(/\s+/g," ")}},function(t,e){(e=t.exports=function(t){return t.replace(/^\s*|\s*$/g,"")}).left=function(t){return t.replace(/^\s*/,"")},e.right=function(t){return t.replace(/\s*$/,"")}},function(t,e){t.exports={cmn:/[\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u3005\u3007\u3021-\u3029\u3038-\u303B\u3400-\u4DB5\u4E00-\u9FEF\uF900-\uFA6D\uFA70-\uFAD9]|[\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/g,Latin:/[A-Za-z\xAA\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02B8\u02E0-\u02E4\u1D00-\u1D25\u1D2C-\u1D5C\u1D62-\u1D65\u1D6B-\u1D77\u1D79-\u1DBE\u1E00-\u1EFF\u2071\u207F\u2090-\u209C\u212A\u212B\u2132\u214E\u2160-\u2188\u2C60-\u2C7F\uA722-\uA787\uA78B-\uA7BF\uA7C2-\uA7C6\uA7F7-\uA7FF\uAB30-\uAB5A\uAB5C-\uAB64\uAB66\uAB67\uFB00-\uFB06\uFF21-\uFF3A\uFF41-\uFF5A]/g,Cyrillic:/[\u0400-\u0484\u0487-\u052F\u1C80-\u1C88\u1D2B\u1D78\u2DE0-\u2DFF\uA640-\uA69F\uFE2E\uFE2F]/g,Arabic:/[\u0600-\u0604\u0606-\u060B\u060D-\u061A\u061C\u061E\u0620-\u063F\u0641-\u064A\u0656-\u066F\u0671-\u06DC\u06DE-\u06FF\u0750-\u077F\u08A0-\u08B4\u08B6-\u08BD\u08D3-\u08E1\u08E3-\u08FF\uFB50-\uFBC1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFD\uFE70-\uFE74\uFE76-\uFEFC]|\uD803[\uDE60-\uDE7E]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB\uDEF0\uDEF1]/g,ben:/[\u0980-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09FE]/g,Devanagari:/[\u0900-\u0950\u0955-\u0963\u0966-\u097F\uA8E0-\uA8FF]/g,jpn:/[\u3041-\u3096\u309D-\u309F]|\uD82C[\uDC01-\uDD1E\uDD50-\uDD52]|\uD83C\uDE00|[\u30A1-\u30FA\u30FD-\u30FF\u31F0-\u31FF\u32D0-\u32FE\u3300-\u3357\uFF66-\uFF6F\uFF71-\uFF9D]|\uD82C[\uDC00\uDD64-\uDD67]|[㐀-䶵一-龯]/g,kor:/[\u1100-\u11FF\u302E\u302F\u3131-\u318E\u3200-\u321E\u3260-\u327E\uA960-\uA97C\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uFFA0-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/g,tel:/[\u0C00-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C77-\u0C7F]/g,tam:/[\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BFA]|\uD807[\uDFC0-\uDFF1\uDFFF]/g,guj:/[\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AF1\u0AF9-\u0AFF]/g,kan:/[\u0C80-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2]/g,mal:/[\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4F\u0D54-\u0D63\u0D66-\u0D7F]/g,mya:/[\u1000-\u109F\uA9E0-\uA9FE\uAA60-\uAA7F]/g,ori:/[\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B77]/g,pan:/[\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A76]/g,amh:/[\u1200-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u137C\u1380-\u1399\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]/g,tha:/[\u0E01-\u0E3A\u0E40-\u0E5B]/g,sin:/[\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2-\u0DF4]|\uD804[\uDDE1-\uDDF4]/g,ell:/[\u0370-\u0373\u0375-\u0377\u037A-\u037D\u037F\u0384\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03E1\u03F0-\u03FF\u1D26-\u1D2A\u1D5D-\u1D61\u1D66-\u1D6A\u1DBF\u1F00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FC4\u1FC6-\u1FD3\u1FD6-\u1FDB\u1FDD-\u1FEF\u1FF2-\u1FF4\u1FF6-\u1FFE\u2126\uAB65]|\uD800[\uDD40-\uDD8E\uDDA0]|\uD834[\uDE00-\uDE45]/g}},function(t){t.exports=JSON.parse('{"Latin":{"spa":" de|os |de | la|la | y | a |es |ón |ión|rec|ere|der| co|e l|el |en |ien|ent|cho|ech|ció|aci|o a|a p| el|al |a l|as |e d| en|ona|na |da |s d|nte| to|ad |ene|con| su| pr|tod| se|ho | pe|los|per|ers| lo| ti|cia|o d|n d|a t|cio|ida|res| es|tie|ion|rso|te | in|do |to |son|dad| re| li|e s|tad|que|pro|est|oda|men|nci| po|a e| qu|ue | un|ne |s y|lib|n e|su | na|s e|ia |nac|e e|tra|or | pa|ado|a d|nes|se |ra |a c|com|nal|por|er |a s|ual|rta| o |ber|les|one|rá |des|s p|dos|sta|ser|ter|ar |era|ibe|ert|ale| di|a a|nto|l d|del|ica|hos|o e|io |imi|oci|n c|s n|ant|cci|re |e c|y l|ame| as|mie|enc| so|o s|ici|las|par|s t|ndi| cu|ara|dic|bre|una|tos|ntr|l p|s l|e a|pre|cla|o t|a y|omo|man|y a|ial|so |nid|n l|n p| al|mo |e p|s s| ig|igu|gua|uma| fu|nta|y e|soc|o p|no |ali|ten|s a|ade|hum|ran|l t|n t|s c|ria|dis|d d| ca|cas|das|ada|ido|l e|y d|tiv|vid|mbr|a i| hu|fun|und|eli|s i| ma|nda|e i| ha|uni|nad|a u|sar|s o| ac|die|qui|rac|ndo| tr|ind| me|ori|tal|odo|ari|lid|esp|o y|tic|ca |un |esa|cti|cua|ier|ta |lar|ons|ont|iva|ide|med|edi|d y|ele|nos|ist|l m|s h|ecc|sti|tor| le|seg|cie|r e|n a|ito|ios|rse|ie |o i|a o|o l|pen|tri|rim|l y|ami|lig|erá|o c|rot|ote|mat|ond|ern|n s|e h|an |ect|lo |ibr|ple|sus|us ","eng":" th|the| an|he |nd |and|ion| of|of |tio| to|to |on | in|al |ati|igh|rig|ght| ri|or |ent|as |ll |is |ed |in | be|e r|ne |ver|one|s t|all|eve|t t| fr| ha| re|s a|ty |ery|d t| pr| or|e h| ev| co|ht |e a|ng |his|ts |yon|be |ing|ce |ryo| sh|n t|fre|ree|men|her|pro|has|nal|sha|es |nat|y a|for| hi|hal|n a|f t|nt | pe|n o|s o| fo|nce|d i|er |e s|res|ect|ons|ity|l b|ly |e e|ry |an |e o|ter|ers|e i| de|cti|hts|eed|edo|dom| wh|ona|re | no|l a| a |e p| un| as|ny |d f| wi|nit| na|nte| en|d a|any|ere|ith| di|e c|e t|st |y t|ns |ted|sta|per|th |man|ve |om |nti|s e|t o|ch | ar|d o|equ|soc|oci|wit|ess|ote|ial|rea| al| fu| on| so|uni|oth| ma| ac| se|enc| eq|qua|ual|ive|lit|thi|int| st|tat|r t|t a|y o|e w|hum|uma|und|led|cia|l o|e f| is|le |f h| by|by | la|ali|are|y i|con|te | wo|eas| hu|ave|o a|com| me|ic |r a|ge |f a|ms |whe| ch|en |n e|rot|tec|tit|s r| li|o t|ple|s d|rat|ate|t f|o o|wor| fa|hou|dis|t i|nda|nde|eli|anc|rom| su|cie|no |ary|inc|son|age|at |oms|oun|nst|s w|d w|ld |n p|nta|l p|tan|edu|n s|duc|itl|tle|whi|hic|ich|ble|o s|imi|min|law|aw |gni|iti| ot|g t|eme|se |e b|ntr|tra| pu|d n|s i|act|e d|ort| he|r s|cou|unt|pen|ily| ag|ces|rit|it |din|s f|hav|ind| ed|uca|cat|ren|ien|tho|ern|d e|omm","por":"os |de | de| a | e |o d|to |ão | di|ent|da |ito|em | co|eit|as |dir|ire|es |rei| se|ção|ade|a p|e d|s d|dad|men|nte|do |s e| pe| pr|dos| to| da|o e| o |a a|o a|ess|tod|con| qu|que| do|e a|te |al |res|ida|m d| in|er | ou|sso| re| na|a s| po|uma| li|cia| te|pro|açã|e e|ar |a d|a t|ue | su| es|ou |s p|a e|tos|des|com|ra |ia |tem|no | pa|ame|nto|e p|is |est|oda|na |s o|tra|ões|das|pes|soa|o s|s n|o p|ser|s a| à |ais| as| em|o o|e o|ber|oa |o t|ado|a c|sua|ua | no|ter|man|e s| os|s s|e n|çõe|ica|lib|ibe|erd|rda|nci|odo|nal|so |ntr|or |ura|s t|o c|ona| so| ao|hum|ual|sta|ma |ons|a n|era|e t|pre|ara|r a|por| hu|cio|o à|ria|par|ind|e c|ran|gua| um|o i|a l|s c|ndi|m a| en|und|nos|e r|ano|aci|ion|soc|oci|nid|sen|raç| ac|ndo|nsi| ig|igu| fu|fun|m o|nac|per|ali|rec|ime|ont|açõ|int|r p| al|um | me|a i|s h|nta|rio|cçã|ere|pel|l d|a o| ex|pri|uni|ese|ada| ma|ant|ide|nda| fa|am |e f|lid|io |ém |ita|iva|omo|o r|esp|a f|m p|lic|ca |s f|naç|pod|ode|ver|a q|r e|tad|tiv|vid|e l|o q|r d|e i|seu|eli|mo |ecç|s i|ial|ing|ngu|s l| vi|ist|ta |eci|ênc|a m| ca|der|ido|ios| un|dis|cla|qua|se |ati|sti|r o|sid|roc| tr|sem|o n|ao |dam|ens|tur|ico|rot|ote|tec|sse|l e|ena|for| pl| ni|nin|gué|uém|não|ela|tro|ros|ias","ind":"an |ang| da|ng | pe|ak | ke| me| se|ata|dan|kan| di| be|hak|ber|per|ran|nga|yan|eng| ya| ha|asa|men|gan|ara|nya|n p|n d|n k|a d| at|tan|at |ora|ala| ba|san|erh|ap |ya |rha|n b| ma|a s|pen|g b|eba|as |aan| or|ntu|uk |eti|tia|tas|aka|set|ban|n s| un|n y| te|ter|iap|tuk|k m|beb|bas|lam| de|n m|k a|keb|am |i d|ama|unt|ah |dal|end|n h|p o|den|sa |dak|mem|ika|ra |ebe|pun|ri |nda|ela|ma | sa|di |a m|n t|k d|ngg|n a|tau|asi| ti|eri|gar|man|ada|al |um |un |ari|au |lak|a p|ta |a b|ngs|ole| ne|neg|dar|ers|gsa|ida|leh|ert|k h|ana|sam|sia|i m|ia |dap|era|dil|ila|tid|eh |h d|atu|bat|uka|aha|a a|ai |g d|lan|tu |t d|uan| in|ena|har|sem|ser|kat|erl|apa|erb|uat|na |kum|g s|ung|nan|emp|rta|l d|mas|ega|n u| hu|ka |eni|pat|mba|adi| su|aga|ent|nta|huk|uku|rga|ndi|ind|i s|ar |sua|aku|rus|n i|ni |car|si |nny|han| la|in |u d|lah|ik |gga|ua |ian|ann|lai|usi|emb|rik|mer|erk|arg|emu|dun|dip|nas|lua|aru|ema|a u|min|mat|aya|kes|rak|eka|a t|rka|a k|iba|rbu|rma|yat|ini|ina|anu|nus|mua|s p|ut |lin| ta|us |ndu|da |pem|ami|sya|yar|nak|das|k s|kel|ese|mel| pu|ern|a n|aik|uar|t p|g p|ant|ili|dik| an|tin|ing|ipe|tak|iny|ain| um| ja|aks|sar|rse|aup|upu|seo|eor|g m|g t|dir|pel|ura|bai|aba|erd|eca|h p|kep|m m|jam|umu|mum","fra":" de|es |de |ion|nt |et |tio| et|ent| la|la |e d|on |ne |oit|le |e l| le|s d|t d|ati|e p|roi|it | dr|dro| à | co|té |ns |te |e s|men|re | to|tou| l’|con|que|les| qu| so| pe|des|son|ons|s l| un| pr|ue |s e| pa|e c|ts |t l|onn| au|e a|e e|eme| li|ant|ont|out|ute|ers|res|t à| sa| a |ce |per|tre|a d|er |cti| en|ité|lib| re|en |ux |lle|rso| in| ou|un |à l|nne|nat|une|ou |n d|us |par|nte|ur | se| d’|dan|ans|s s|pro|e t|s p|r l|ire|a p|t p|its|és |ond|sa |a l|nce|é d| dé|nal|aux|omm|me |ert| fo| na|iqu|ect|ale| da| ce|t a|s a|mme|ibe|ber|rté|s c|e r|al |t e| po|our|com|san|qui|e n|ous|r d| ne|fon|au |e o|ell|ali|lit| es| ch|iss|tes|éra|air|s n| di|ter|ui | pl|ar |aut|ien|soc|oci|tra|rat|êtr|int|été|pou|du |est|éga|ran|ain|s o|eur|ona|rs |anc|n c|rai|pri|cla|age|nsi|e m|s t| do|bre|sur|ure|ut | êt| ét|à u|ge |ess|ser|ens| ma|cia|l e| su|n p|a c|ein|st |bli| du|ntr|rés|sen|ndi|ir |n t|a s|soi| ég|ine|l’h|nda|rit| ré|t c|s i|il |l’a|e q| te|é e|t s|qu’|ass|ais|cun|peu|ée |tat|ind|t q|u d|n a| ac|tés|idé|l n|ill| as|’en|ign|gal|hom|nta| fa|lig|ins| on|ie |rel|ote|t i|n s|sse| tr|n e|oir|ple|l’e|s é|ive|a r|rec|nna|ssa| mo|s u|uni|t ê|pré|act| vi|era|sid| nu|e f|pay|’ho|cat|leu|ten|rot|tec|s m","deu":"en |er |der| un|nd |und|ein|ung|cht| de|ich|sch|ng | ge|ie |che| di|die|ech|rec|gen|ine|eit| re| da|ch |n d|ver|hen| zu|t d| au|ht | ha|lic|it |ten|rei| be|in | ei| in| ve|nde|auf|ede|den|n s|zu |uf |ter|ne |fre| je|jed|es | se| an|n u|and|sei|run| fr|at |s r|das|hei|hte|e u|ens|r h|nsc|as |nge| al|ere|hat|men|lle|nte|rde|t a|ese|ner| od|ode| we|g d|n g|all|t u|ers| so|d d|n a|nen|te |lei| vo|wer| gr|ben|ige|e a|ion| st|ege|le |cha| me|ren|n j|haf|aft| er|erk|bei|ent|erd| si|kei|tig|eih|ihe|r d|len|on |n i|lun| gl|chu|e s|ist|st |unt|ern|tli|gem|ges|ft |ati|tio|gru|end|ies|mit|eic|sen|r g|e e|ei | wi|n n| na|sta|gun|ite|n z|r s|gle|chl|lie|mei|em |uch|nat|n w|urc|rch|de |hre| sc|sse|ale|ach|r m|des|n e|spr|t w|r e|d f| ni| du|dur|nie| mi|ied|fen|int|dar|e f|e g|geh|e d|f g|t s|ang|ste|hab|abe|h a|n v|alt|tz |hli|sic|her|nun|eme|ruc|taa|aat|he |e m|erf|ans|geg| is|tun|pru|d g|arf|rf |n o|ndl|ehe|e b|h d|d s|dig|arb|wie|r b| ih|r w|nsp|ber|t i|r a|r v|igk|gke|bes|n r|str|gew|rbe|ema|e v|n h| ar|rt |ind|n f|ins|esc|ieß|ken|ger|eru|ffe|ell|han|igu|man|sam|t g|ohn|hul|rst|tra|rli|lte|hut|utz|ls |ebe|von|r o|e i|nne|etz|d a|rn |isc|sel| fa|one|son|et |aus|r i|det|da |raf|iem|e z|lan|sow","jav":"ng |an |ang| ka|ing|kan| sa|ak |lan| la|hak| ha| pa| ma|ngg|ara|sa |abe|ne | in|ant|n k| ng|nin|tan|nga| an|ata|en |ran|man| ba|ban|ane|ong|ra |n u|hi |nth| da|ake|ke |thi|ung|uwo|won|ngs| uw|asa|ben|gsa|sab|ana|aka|beb|nan|a k|nda|g p|adi|at |awa|san|ni |pan| be|dan|eba|g k|e k|ani|bas|g s|dha|aya| pr|gan|mar|di |ya |wa |g u|n s|ta |a s| wa|arb|e h| na|a n|a l|n p|a b|yan| ut|n n|ah |asi| um|g d|as |han|g n| tu|dar|rbe|wen|ggo| di|dak|mat|sar|eni| un|und|iya|a a|k h|kab|ka |be |uma|art|ora|ngk|i h|ala|rta|n b| or|n m|gar|kar|yat|al |g b|na |a m|n i|ega|ina|kak|g a|pra| ta|gge|ger|ena|kat|kal|a p|i k|tum|oni|nya| ne|adh|g m|duw|uwe|dad|kas| pe| si|aga|uta|k k|pa |and|nun|i l|ngu|go |nal| ke|n a|uju|anu|ama|a d|i p|t m|er | li|per|iba|min|sak|apa|war|ha |pad|ggu|gay|ras|taw|ind|eng|a u|we | bi|n l|ali|awi|neg|awe|bak|g t|e p|ndu|bis| ku|ih |ase| me|iji|pri|bad|eh |i t|uwa|ron|ndh|mra|ar | pi|ur |isa|mba|sin|aba|g l|ebu|n t|ika|men|ini|lak|a w|arg|ku |ami|ayo|a i|nas|liy|e s| we|rib|ngl| ik|k b|e d|rga|rap|tin| lu|aku|bed|k a|h k|yom| as| nd|eka|il | te|umu|rak|ut |dil|i w|i s|jin|kon|jud|wae|ae |kap|uha|uto|tow|gka|umr|n d| ti|eda|gon|ona| mi|ate|mum|um |but|r k|wat|si |k p|k l|gaw","vie":"ng |̣c |́c | qu| th|à |nh | ng|̣i | nh| va|và|̀n |uyê| ph| ca|quy|yề|ền|̀i | ch|̀nh| tr| cu|ngư|i n|gươ|ườ|ời|́t | gi| co|ác|̣t |ó |c t|ự |n t|cá|ông| kh|ượ|ợc| tư| đư|đươ|iệ|ìn|́i | ha| đê|i đ|có|gia| mo|mọ|ọi|như|pha|n n|củ|ủa|̉a |̣n | ba|n c|̀u |̃ng|ân |ều| bi|hôn|ất|tự|g t| vi|n đ|đề|t c| la| ti|nhâ| đô|u c|hiê|bả|ên | tô|hân| do|do |́ q|ch |̀ t| na|́n |ới|ay | hi|àn|̣ d| đi|g n|hay|há| mô|ội|hữ|uố|ốc|n v|̣p |́p |quô|thư| ho|nà|ị |́ch|̀ng|ào|̀o |̉n |ôn |i c| hô|c đ|i v|khô|c h|i t|g v| đa|mộ|ột|́ng|tro|ữn|ướ|ia |̣ng|ản|̉ng|h t|hư |ện|ộc|g c|ả | đo|̉ c|là|c c|n h|n b|hà|iế|̣ t| cô| vê|ức|t t|ã |hộ| vơ|iên|g đ|̉i | bâ|̀y |ớc|a c|̉m | sư|áp|ật|viê|vớ|hươ|tha|ực|h v|ron|ong|g b|qua|iá|̀ c|ể |h c|a m|ế |uậ|ảo|̉o |sự|o v|cho|phâ|n l| mi|hạ|côn|o c|̃ h| cư|ục|̀ n| hơ|i h|c q|á |ại|bị|cả|c n| lu|ín|h đ| xa|g h|độ|bấ| nư|m v|thô| tâ|tộ|hả|oà|áo|́o |ốn|ệ |thu|mì| du|̣ c|xã|c p|ải| hư|́ c|ho |y t|o n|n p|ở |hứ|iể|y đ|hấ|ối|chi|án|ề |́ t|ệc|cũ|ũn|tiê|hợ|ợp|o h|hoa|ày|ai |ết|̉ n|c b|đó| đâ|luâ|đố|kha|về|̉ t|c l|̀ đ|i b|nươ| bă|dụ|họ| ta|thê|tri|hí|́nh|g q|p q|n g|o t|c g|hự|yên|i l|́u |an | cơ","ita":" di|to |ion| de| in|la |e d|ne |di | e |zio|re |le |ni |ell|one|lla|a d|rit|o d|itt|del| co|dir|iri|ti |ess|ent| al|azi|tto|te |i d|i i|ere|tà | pr|ndi|e l|ale|ind|o a|e e|gni|e i|nte|con|li |a s| un|i e|ogn|men|uo | og| ne|idu|ivi|e a|div|vid|duo| ha|tti| es|a p|no | li|za |pro|ato|all|sse|per|ser| so|i s| la| su|e p| pe|a l|na |ibe|ali| il|il |e n|lib|ber|e c|ia |ha |che|e s|o s|o e| qu|in |nza|ta |nto| ri|he |o i|oni|sta| o | a |o c|nel|e o|naz|so |o p|o h|gli| po|i u|ond|i p|ame|ers|i c|ver|ro |ri |era|un |lle|a c|ua | ch|ssi|una|el |i a|ert|rtà| l |a a|tat|ant|dis|ei |a e| si| ad|à e|nal| da| le|est|pri|nit|ter|ual| st|ona|are|ità|dei|cia|gua|anz|tut| pa|al | ed| re|sua|ono| na|uni|raz|si |ita|com|ist|man|ed |der|ad |i o|enz|soc|que|res| se|o o|ese| tu|i r|io |ett|à d|on |dic|sia|rso|se |uma|ani|rio|ari|ial|eri|ien|ll |oci|rat|tra|ich|pre|qua|do | um|a t|i l|zza|sci|tri|er |ico|pos|a n|ara|o n|son|att| fo|fon|nda|utt|par|nti|sti|nes|n c| i |chi|hia|iar|int|sen|e u|str|uzi|ati|a r|rop|opr|egu| me|ra |ann| ma| eg|ost|bil|isp|ues| no|ont|rà |tta|ina|ezz|l i|tal| ra|gio|nno|a i|d a|i m|ria| cu|ore|e r|izi|dev|tan|lit|cie|non|sso|sun|ite|ica|l d|ide|lia|cos|i n|nta|a f| is|l p|art","tur":" ve| ha|ve |ler|lar|ir |in |hak| he|her|bir|arı|er |an |eri| bi|ya |r h|ak |ın |eti|iye|ası| ka|yet| ol|tle|ını|ara|eya|akk|kkı|etl|sın|na |esi|de |ek | ta|nda|ini| bu|rın|ile|vey|kla|rin|ne |e h|ır |ine|e k|ına|sin|dır|ere| sa|n h|ama|ınd|nın|mas| ge|le |ı v| va|erk|rke|lma|nma|lan| te|tin|akl|rle|nin|en |e m|ard|a v|ill| de|let|da |k h| me|aya| şa|k v| hü|riy|e b|kın|nı |et |dan|san|e d|var|rdı|kes|si |mil|e a| il|hür|ana|ret|dir| se|şah|mes|irl| mi|ola|bu |ürr|rri|n e|n i|kı |n v|mek| ma|mak|lle|lik|nsa|li |ı h| iş| ed| iç|n b|kar| ba|ala| hi|eli|ulu|a h|eme|re |e s|ni |e t|n k|a b|iş |rak|evl|e i|etm|ik |r ş|ar | eş|olm|un |hai|aiz|izd|zdi|im |dil|n t|nde| gö|ilm|lme|tir|mal|hiç|e g|unm|ma |ele|a i|e e|eşi|şit|ık |mel| et| ko|n s|ahs|i v|sı | an|el |yla|la |ili|r v|rı |anı|ede|ket| ya|lun|may|se |ins|tim|edi|siy|t v|içi|çin|a k|nla|r b|miş|i b|yan|ame|tme| da|bul|mem|eml|eke|mle| ki| ke|lek| in| di|din|uğu|n m|it |ser|ind| mü|arş|rşı|es |ger|a s|len| ay| ku|vle|erd|eye|ye |oru|nam|ken| uy|a m|ün |r a|i i|tür|i m|kor| so|al |hsı|cak|rme|nun|lam|eni|dev|rde|ri |mey|a d|i o|kim|ims|mse|end|ndi|rek|ahi|il |hay|lık|e v|iç |sız| öğ|öğr|ğre| bü|büt|ütü|tün|anl|alı|şma|k g|at |den|i s","pol":" pr|nie| i |ie |pra| po|ani|raw|ia |nia|go |wie| do|ch |ego|iek|owi| ni|ści|ci |awo|a p|do | cz|ośc|ych| ma|ek |rze|prz| na|wo | za| w |ej |noś|czł|zło|eni| je|wa |łow|i p|wol|oln| lu|rod| ka|wsz| wo|lno|y c|ma |każ|ażd|ny |dy |o d|stw|owa|żdy| wy|rzy|ecz|sta| sw|e p|twa|czn|dzi|i w|szy|zys|na |ów |lub|ub |a w|k m|est| sp|kie|wan|ają| ws|pow|e w|spo|nyc|pos|rac|a i|cze|yst|ać |neg|sze|ne |mi |aro|ńst| ja|jak|o p|pod| z |acj|obo| ko|i i|nar|i n| ro|awa| ró|zy |dow|zen|zan|zne|zec|jąc|iej|cy |rów|nej|odn|nic|czy|o s|no |ony|aw |i z|ówn|odz|jeg|o w|edn|o z|aki|o o|a s| st|ni |bez|owo| in|ien|eńs|ami| or|dno|zie|mie| ob|kol|stę|tęp|i k|ez |w c|poł|ołe|łec|ym |orz|jed|o u| os|olw|lwi|wia|ka |owy|owe|y w| be|o n|jes|wob|wyc|a j| od|zna|inn|zyn|aln|któ|cji|ji |się|i s|raz|y s|lud| kr|ją |cza|zes|nik|st |swo|a o|sza|ora|icz|kra|a z|h p|i o|ost|roz|war|ara|że |lni|raj| si|ię |e o|a n|em |eka|stk|tki|pop|ą p|iec|ron|kow|odo|w p|peł|ełn|ran|wni|dni|ows|ech|gan|dów|zon|pie|a d|i l| kt|tór|ini|ejs| de|dek|ywa|iko|z w|god|ków|adz|dst|taw| to|trz|e i|ich|dzy|by |bod|iu |nan|h i|chn|zeń|y z|ano|udz|ieg|w z|ier|ale|a k|z p|zaw|ekl|kla|lar|any|du | zw| go|o r|to |az |y n|ods|ymi|ju |och|nau|wej|i m","gax":"aa |an |uu | ka|ni |aan|umm|ii |mma|maa| wa|ti | fi|nam|ta |tti| na|saa| mi|fi |rga|i k|a n| qa|dha|iyy|oot|mir|irg|in |raa|qab|a i|kan|a k|isa|chu|akk|amu|aba|a f|huu|kam| ta|kka|amn|ami| is|a a|mni|att| bi|yaa|ach|yyu|yuu|ee |miy|wal|waa|ga |aat|ata|a e|tii|oo | ni| ee|moo|ba |ota| ak|a h| ga|i q| dh|daa|a m|haa|ama|i a|a b|yoo|ka |kaa| hi|aas|sum|u n| uu|arg| hu|man| ha| ar| ke| yo| ba|ees|i i|taa|uuf|uf |ada|iin|i f|rra|ani|a w|i w| ad|da |nya|a u|irr|na |hun|isu|hin| ma| ho|ess|und|i m|i b|bar|is |een|ana|mu |bu |i d| sa|f m|add|sa |eeg| ir|i h|n h|u a|aad| la|al |ala|udh|ira|hoj|kee|goo| ya|ook|abu|gac|mum|as |itt|nda|see|n t|n i|uum|n k|ra |rgo|ara|a q|ums|muu|mat|a d|nii|sii|ssa|ati|a g|asu|biy|yya|eef|haw| da| mo|tum|a t|u h|gar|uma|a s|n a|n b|baa|awa|nis|eny|u y|roo|mmo|gam|sat|abs|n m|tee|nna|eer|bir| ku| qo|bil|ili|lis|otu| to|kko|n w|ali|rum|msa|rka| fu|amm|gaa|aaf|era|ya | ye|yer|ero|oti|kun|un |jii|ald|i y|ant|suu|n d|tok|okk|ame|mee|nni|tan| am|lii|n u|aru|lee|gum|ddu|i g|u m|oji|ura|lda|lab|ila|laa|aal|n y|ef |chi|uud| qi|qix|dar|ark|dda|gal|u b| ji|jir|han|art|arb|asa|ega|tam|hii|ffa| se| bu|faa|ndi|n g|bat|oka|kar| mu|mur|aja|uun|naa|sad|a l|lam|ken|enn|u f|egu","swh":"a k|wa |na | ya| ku|ya | na| wa|a m| ha|i y|a h|a n|ana|ki |aki|kwa| kw|hak| ka| ma|la |a w|tu |li |a u|ni |i k|a a|ila| ki|ali|a y|ati|za |ifa|ili| mt|ke | an|kil|kat|mtu|ake|ote|te |ma |ika|ka |we |a s|yo |i n|fa |ata|e k|ama|zi |u a|amb|ia |kut|ina|u w|azi| yo|i z|asi| za|o y|au |yak|uhu|ish|tik|ha |wat| au|u k|e a|mba|hur| bi|ara|sha|uru|mu | as| hi|u n|hi |ru |tai|aif|a b|hal|ayo|cha| uh|i h|yot| ch|awa|chi|atu|e n| zi|u y|ngi|mat|shi|ani|e y|sa |eri|ja |uli| am|ele|i a|end|o k| sh|ima|ami|oja|a t| ta| nc|nch|any|a j|ham|wan|ada|uta|i w|iki|ra |moj|ii |ari|kuw|uwa|ye | la| wo|o h| sa|ti |wak|she|iwe|kan|nay|eza|iri|iwa|fan|bu |i m|uto|lim|ao |her|ria|wen|kam|di | ja|jam| ni|ing|a l|wot|bin|amu|dha|o w|ahi|kaz|zo |da |adh|si | hu|ri |bil|e m|aka|e w|ang|ini|agu|sta|a z|kup|kul|lin|ind|ne |aji|zim|nya|kus|har|nye|asa|nad|dam|rik|iyo| ba|bar| nd|nde|ita|ta |gin|ine|uu |mwe|maa|ndi|kuf|o n|u h|i s|uzi|nga| ye|tah|sil|imu| ut|azo|esh|uni|taa|aar|rif|hii|wez|uba|wam|ush|mbo|bo |ibu|lez|wal|saw|kos|e b|a c| si|aza|tok|oka|tak|eng|dhi|ala|hir|yan|izo|ten|guz| mw|liw|ndo|oa |laz|aha|uku|ian|eli|mam|ua |ndw|zin|aba|pat|del|i b|ufu|nda|a i|mai|ais| um|man|ba |u m|kuh|zwa|sia|tan|taw|e i","sun":"an |na |eun| ka|ng | sa|ana|ang| di| ha|ak |nga|hak|un |ung|keu| ba|anu| an|nu |a b| bo| je|a h|ata|asa|jeu|ina| ng|ara|nan|gan|sa |a k|awa|ah | na|n k|kan|aha|ga |a s|a p|ban| ma|a n|bog|oga|ing|sar| ku| pa|man|a a|ha |san|bae|ae |din|g s|sah|tan|aga|ra | si|ala|kat|n s| pe|ma | ti|per|aya|sin| te| pi| at|n a|aan|pan|lah|gar|n n|u d|ta |eu |kum|ari|ngs|ran|a d|n d|n b|gsa|a m|wa |ama|ku |ike|taw|n p|k h|al | ja|eba|bas|a t|at |ika|beb|asi|atu|pik|kab|una|nda|a j|e b|n h|nag|oh |aba|en |ila|g k|boh|aku|ngg|art|rta|abe|ar |ima|n j|um |di |usa|udu|geu|k a|adi|ola|sak|aca|u s|rim| ay|car|h k|aka|eh |teu|tin| me| po|ti |awe|ngt|sac|jen|u a|uma|ent|k n|gaw|law|dan|uku|ur |teh|h s|bar|aru|ate| hu|nar|n t|jal|aja|dil|ere|iba|ieu|pol|nya|ut |wan|are|mas|ake|upa|pa |yan|huk| so|nus|ngk| du|ura|tun|ya |mpa|isa|lan| ge| mi|u m|kal|uan|ern|tut|tay|h b|hna|kaw|kud|us |und|ena|n m|han|nte|lak| ie|ula|ka | ke|rup| tu|u k| nu|g n|umn|mna|h p|g d|u n|gta|ayu|yun|mba|gam| be|du | ta| wa|wat|eus|a u|ren|umu|i m|ri |eri|rik|u p|dit|ali|h a|k k|k d|ngu|rua|ua | da|amp|men|sal|nge| ra|sas|nas|ona| bi|ame|sab|alm|lma|ami|min|il |kas|ter|mum|rak|mer|ksa|k j|yat|wil|mar|eur|g b|war|gal|kaa|we |tur|e a|r k","ron":" de|și | și|re | în|are|te |de |ea |ul |rep|le |dre|ept|e d| dr|ie |e a|ate|în |tul|ptu| sa| pr|e p|or | pe|la |e s|ori| la| co|lor| or|ii |rea|ce |tat|au | a |ați| ca|ent|ale| fi|ă a| ar|a s|ice|per|ers|uri| li|a d|al |ric| re|e c|e o|nă |i s|ei |tur|men|con| să|lib|ibe|ber|să |rso|tăț|ilo| ac|sau|pri|ăți|i a|i l|l l|car| in|ter|ție|lă |că |tea|a p|ții|soa|oan|ri |nal|in | al|e ș|i î|ril|ană|pre|ui |uni|e f|se |ile|ere|i d|ita| un|ert|e î|a o|ia |i c|fie|ele|ace|i ș|nte|tă |pen|ntr| se|a l|pro| că|ire|ală|eni|est| ni|ă d|lui|a c| cu|n c| nu|ona|sal| as|eri|naț|ând|ră | om| su|ecu|i p|rin|e n|ici|i n|nu |oat|inț|ni |tre| to|tor|ări|soc|oci|ste| na|iun| di| po|l d|va |ega|gal| tr|ă p|ulu|n m|ă î|a a|rec|res|i o| so|fi |sta|sa |uie| au|lit| ce| mo|din|ces|nic|int|nd |i e|cla|ara|ons| îm| eg|a î|rel|e l|ial|i f| fa|ță |leg|e e|tar|ra |ă f|a f|rar|iei|nit|ă c|tru|ru |u d|act|at |rtă|ți |nta|nde|eme|ntu|ame|reb|ebu|bui|toa|l c| o |ion|ă ș|dep|ali|ât |ili|ect|ite|i i|pli|n a|dec|rta|cu |împ|cți|ane|e r|văț|nt |u c|ța |l ș|cia|țio|ită|bil|r ș|poa|ca | st|t î|tri|riv|man|ne |omu|rie|rit|înv|nvă|ăță|mân|mod|od |rot| ma|cur|u a|oar|uma|a ș|rii|era| ex|tra|iil|ani|țiu|lic|t s|nța|eze|ta | va","hau":"da | da|in |a k|ya |an |a d|a a| ya| ko| wa| a |sa |na | ha|a s|ta |kin|wan|wa | ta| ba|a y|a h|n d|n a|iya|ko |a t|ar |ma | na|yan| sa|ba |asa| za| ma|hak|a w| ka|ata|ama|akk|i d|a m| mu|su |owa|a z|iki| ƙa|nci|a b| ci|ai | sh|kow|anc|nsa|a ƙ|a c| su|shi|ka | ku| ga|ne |ani|ci |e d|kum|uma|‘ya|cik| du|uwa|ana| ‘y|i k|ali|ɗan| yi|ada|ƙas|aka|kki|utu|n y|hi |a n| ad| do| ra|mut|tar| ɗa| ab|nda|a g|man|nan|ars|cin|ane|and|n k|min|yi |i a|ke |sam|ins|a i|nin|yin|ki |tum|ni |aɗa|ann|e m|ami|dam|za |en |kan|um |yar|mi |duk|oka|n h| ja|dai|kam|ewa|mat|i y|nna|abi|ash|n s|waɗ|ida|am |re |ga |sar|kok|oki|una|mas|ra |i b|dun|uni|abu|a ‘| ƙu|n j|awa|ce |a r|e s|ara|a ɗ|san|li |aba|cew|she|ƙun|kar|ari|m n|niy| ai|aik|u d|kko|buw|n w| la| ne|rsa|zam|omi|rin|hal|bub|ubu|aya|a l|han|ban|o n|are|add|i m|zai| hu|me |bin|tsa|sas|i s|ake|n ‘| fa|kiy|n m|ans|dom| ce|r d|uns|ƙar| an|jam|ɗin|i w| am|n t|wat|ika|yya|nce|har|ame|gan|hen|n b|n ƙ|dok|fa | ki|yak|ray|abb|din|on |bay|aid|ayi|aci|dan|aur|ili|u k| al|rsu| ts|ukk|kka|aye|nsu|ayu|bba| id|ant|n r|o d|sun|tun|unc|sha| lo|lok|kac|aif|fi |gam|aga|un |lin|aɗi|yuw|aja|fan|i i|ace|uka|n i|war|riy|imi|sak| ir|yay|tab|bat|mar| iy|sab|nta|afi|o a| ak|bi ","fuv":"de | e |e n|nde| ha|la |e e|akk| ka| nd|ina| wa|al |hak|na | in|ndi|ɗo |kke|ii |di |aad|ade|um |ko |i h|ala| mu| ne|lla|ji |wal| jo|mum| fo|all|neɗ|eɗɗ| le| ko|e h|kal|taa|re |aaw| ng|e k|aa |e w|ee |ley|jog|ke |e m|laa|nnd|eed|e l|ɗɗo|aag|ol | ta|o k|kee|gu |ti |dee|a j|ogi|waa|m e|am |le |eji|ond|nga|gal| wo|ɓe |ɗe |e d|awa|gii|ede|eej| re|gol|aan| go|agu|i e|oti|ann|fot|eyd|e t|ɗee|naa|oto|ydi| po|pot|maa| he|een|i n|enn|ni |taw|a i|e j|e f|a k|goo|to |dim|der|ele| aa|o n| de| fa| ba|ngu|oot|er |dir|won|oor| sa|ngo|ka |ndo|i k|a n|ay |ota|a f|ima|e ɓ| to|i f|a e|tee|ren| ja|i w|wa |o f|fof|ore|eyɗ|yɗe|a w|too|ma |o t|awi|i m|kam|o e|hay|and|nan|ñaa|e y|of |eel|e s|hee|aak|nka| do|l e|e g|ira| la| so| ɓe|a t|dii|e i| te|tin|e r|e p|o w|ani|aar|are| na|ral| ña| yi|awo| ya|so |aam|i l| ho|oo |ooj|nng|nge|woo| ma|faw|kaa| mo|u m|und|dow|gaa|en |o i| li|lig|igg|e a|ita|e b| o | nj| mb|o h|nda|ude|ɗi | no|haa|a h| fe| di|iin|iti|tii|yan| tu|tuu|inn|ama|baa|iiɗ|den|tal|aaɗ|yim|imɓ|njo|edd|ine|nee| je|jey|lli|lit|uug|ugn|no |bel|go | hu|ank|je |do |guu| da|mii| ke|a d|ano|non|l n|y g| ɗu|gna|mɓe|ete|i a|wit|jaŋ|aŋd|ŋde| su|alt| ɗe|nna|a a| ɓa|ɓam|amt|tde|ago|l h|m t|ind|ɗɗa|aga|eɗe|ow ","bos":" pr| i |je |rav| na|pra|na |da |ma |ima| sv|a s|nje|a p| da| po|anj|a i|vo |ko |ja |va | u |ako|o i|no | za|ju |e s| im|avo|ti |sva|ava|o n|i p|li |ili|i s|ost|van|vak| ko|ih |ne |a u| sl|nja|jed| ne| dr|koj|ije|i d| bi|stv|im |u s| il|slo|lob|obo|bod| je| ra|pri|sti|vje| ob|a d|om |se | su|e i|a n| se|i i|dru|enj| os|a b|e p|voj|cij|u p|o d|a o|raz|su |i n|uje|ova|u i|edn| nj| od|i u|u o|lo |ran|lju|ni |jen|ovo|aci|iti|o p|a k|oje|žav|nos|dje|e o|bra|pre|a j|pro|ji |i o| ka|nih|bit|jeg| tr|tre|bud|u z|og |sta|drž|rža|e d|u n|pos|mij|elj|svo|reb| bu|avn|jem|ija|e b|ći |aro|rod|red|ba |a z|šti|ka |de |em |aju|iva|lje|ve |e u|jel|jer|bil|ilo| iz|eni|du | do| st|a t|za |tu |nar|tva|odn|gov| sa|nim|m i|e n|vim| ni|u d|o k|oji| sm|dna|ući|ist|i m|eba|ičn|vno| dj|oda|nak|e k|an |nov|sno|stu|aln|nst|eno|eđu|čno|ani|nom|olj|tiv|nac|ave|i b|smi|čov|ovj|osn|a r|nap|ovi|ans|dno|jan|nju|oja|nog|m s|edi|ara|oj |nu |kri| kr|odu|iko|lja|sto|rad|nik|tup| čo|jek|tvo| vj| mi|tel|obr|živ|tit|una|ego|pod|sam|o o|rug| op|nji|din| mo|vu | ov|h p|udu|riv|dst|te | te|a č|vni|svi|i v|ina|i t|ite|o s|u u|m n|zaš|ašt|itu|ak |dni|nic|nič|odr|vol|avi|g p| ta|rim|kla|e t|ao | vr|akv|tno|mje|duć|ona|ada|obi|eds","hrv":" pr| i |je |rav|pra|ma | na|ima| sv|na |ti |a p|nje| po|a s|anj|a i|vo |ko |da |vat|va |no |o i| za|ja |i s|avo| im|sva| u |i p|e s| bi|tko|ju |o n|li |ili|van|ava| sl|ih |ije| dr|ne |ost|jed| ne|u s|ova|nja| os| da| ra| ko|slo|lob|obo|bod|atk|i d|koj|iti| il|stv|pri|im |om | ob| je| su|vje|i u|i n|e i|i i| ka|bit|dru|ati|se |voj|i o|a b|a o|ćen|ući|a n| se|o p|enj|edn|a u|sti| mo|ćav|lo |dje|raz| od|ran|u p|rod|a k|ni |su |mij|u i|svo|ako|a j|aro|drć|rća|pos|eno|e p|pre| nj|e o|ćiv|nar|ji |oje|e n|eni|nih|oda|ći |nov|bra|ra |nim|a d|avn|og |aju|iva|ovo|nos|i b|bil|sno|za |ovi|red|tva|a z|mor|ora|ka |sta|jem|pro|jen|u o|cij|ve |e d|jel|jer|ilo| do|osn|i m|odn| iz|nom|lju|em |lje| ni|aci|oji|o d|du | st|nit|elj|u z|jeg| sa|o o|m i|vno|vim|uje|e b|oj | dj|rad| sm|dna|nak|e k|an |stu|o s|tit|tu |aln|nst|eću|dno|gov|ani|juć|u d|m s|e u|a ć|u u|nju| bu|bud|te |ćov|ovj|tvo|a r|nap|šti|ist|ću |ans|m p|jan|nić|olj|u n|edi|ara|nu |o k|udu|ona|smi|odu|ada|oja|tup| ćo|jek| vj|ina| mi|tel|i v|obr|zaš|ašt|una|dni|ija|pod|sam|duć|rug| op| ta|nji|e m|oso|sob|h p|itk|svi|ite|elo|itu|meć|jim|odr|di |vol|avi|nog|štv|rim|din|kla|će |ao |tno| ći|kak|akv|ave|nac|lja|sto|obi| te|to |vi |ovn|vni|odi|lji","nld":"en |de |an | de|van| va| en| he|ing|cht|der|ng |n d|n v|et |een|ech| ge|n e|ver|rec|nde| ee| re| be|ede|er |e v|gen|het|den| te|ten| op| in|n i| ve|lij| zi|zij|ere|eli|ijk|oor|ht |te |ens|n o|and|t o|ied|ijn| on|ke |op |eid| vo|jn |id |ond|in |sch| vr|n z|rde|aan| ie|aar|ren|men|rij|hei|ord|hte|eft| we|ft |n g|n w|or |n h|eef| me|wor|vri|t r|hee|al |le |of |ati| of|g v|lle|e b| wo|eni| aa|voo|r h|n a| al|nd |e o|n t|ege|erk|t h|jke| na|sta|at | da|e e|end|nat| st|nge|ste|e g|tie|n b|om |die|e r|r d|erw|ij |dig|e s| om|wel|t e|ige|ter|gel|ie |e m|re |t d| za|ers|ijh|jhe|d v|zal|nig|nie|bes|ns |e w|est|d e|g e|e n|ele| do|ge |vol|che|e d|ig |gin|eze|nst|ona|eke|cha|hap|dat|lke|e a| di|waa| to|min|jk |tel| gr|len|eme|lin|elk|ard|doo| wa|eve|ven|n s|str|gro|han|del|ich| ov|ove|n n|t v|tio|ion|wet|it |gem|ijd|met| zo|uit|aat|dez|ze |rin|e i|all|st |ach| ni|toe|n m|ies|es |taa|per|hed|heb|ebb|bbe|ien|sti| ma|nte|ale|kin|nin|mee|daa|el |ben|ema|man|s e|e h|esc|her|lan|ang|ete|g o|wer|is | er|pen|nsc|beg|igd|t g|ont|iet|tig|ron|tin|p v|r e|rwi|wij|ijs| hu|erm|nal|bij|eer|edi|ite|t a|t w|d o|naa|weg|iem|g d|teg|ert|arb|als|d z|tan|tre| la|ar |ame|js |rmi|t b|app|rwe| bi|t z|ker|eri|ken| an","srp":" pr| i |rav|pra| na|na | sv|ma | po|je |da |ima|a p|ja |a i|vo |nje|ko |va |anj|ti |i p|ako| u |a s| da|avo|ju |i s|ost| za|o i|sva| im|vak|o n|e s|ava|nja| sl| ko|om |no | ne|ne |li |u s| dr|ili|a n|slo|obo|koj|ih |lob|bod|im |sti|stv|a o| il| bi|pri|a u| ra| je|og |jed|enj|e p|u p|van|ni |a d|i u|edn|iti|nos|a k|o d|ova|pro| su|i i| os|ran|sta|dru|e i|cij|se |rod| ob|i o|aju|e o|i n|ove| de|aci| ka|ovo| ni| od|ve | se|i d| st|m i|voj|avn|uje|eni|ija|dna|žav|u i|red|su |nov|odi|tva|e b|oja|što|lju|u o|ara|a b|ji |drž|rža|odn|jan|nim|poš|ošt|a j|ka |jen| ov|u u| nj|du |ave|osn|sno|šti|aro|raz|bit|a z|u z|de | iz|nih|o p|u d|e d|pre|vu |u n|lja| tr|tu |eđu|nar|gov|svo|bez|ičn|lje|e n|za |vno|lo |oji| sa|to |an |nak| me|čno|đen|vim|nac|oda|ani|me |iko|nik|ika|e k|pos| kr|tre|reb|nst|stu|e u|ku | do|ašt|tit|aln|dno|jeg|nom|olj|nog|m s| vr|o k|oj |čov|ans|ovi|o s|bra|te |tav|tup|eno|živ|zaš|em |i m|dni|šen|var|riv|rug|vol|avi|tan|štv|kao|ao | li|st |ilo|nju|sme|o j| sm| čo|odu|vre|dst|od |a t|kri| bu|bud| ve|ver|a r|m n|del|tvo|međ|oje|jem|m p|avl|vlj|ego|u v|pod|ena|ugi|la |jav|por| op|ruš|ušt|kom|edi|ba |kla| mo|oju|i b|kak|akv|rad|nu |vek|rim|gla|juć|ude|vni|eba|e r|svi|i v|itu|ter","ckb":" he| û |ên | bi| ma|in | di|na |maf|an | ku|ku | de| ji|xwe|her|iya| xw|ya |kes|kir|rin|iri| ne|ji |bi |yên|afê|e b|de |tin|ke |iyê|e h|es |ye | we|er |di |we |i b|ê d|erk| na|î û| an|ina| be|yê |eye|rke|î y|nê |kî |diy|ete|hey|hem| ci|eke| li|wek|ber|fê |n d|li | bê| se|yî | te|ne |rî |sti|net|tew|yek|af |hev|yan|n b|kar| ki|re |e k|wî |i h| ew|n û|û b|aza|n k| wî| mi|î b|dan|e d|î a|ekî|a m| az|zad|mir|iro|rov|nav|n h|ser|est|a w|ara|bin|ewe|anê|adi|tê |be |emû|mû | yê| ya|ta |ast|tî |ev |ewl|s m|n m|wey| tu|wle| bo|bo | tê|n j| me|ê h|din|ras|î d|n n| da|n w|bat|wed|ema|ê b|cih|st | ge|iye|ing|ar |în |r k| ke| pê|îna|î h|ekh|khe|vî |ana|par|û m|ûna|civ|vak|n e|dî |nge|geh| ye|ê t|ê k|û a|fên|hî |e û|av |eyî|bûn|erb|î m|bik|ê m|a x|iva| re|e n|eyê|vê |ane|man|nên|ela|end| pa|erî|n x| ta|jî |ika|kê |a k|f û|f h|e j|î n|ra |ehî|tiy|tên|û h|a s|rbe|bes|mî |ari|eza| ni|nek|n a|ov |i n|erw|rwe|erd|aye|e e|riy| a |ike|ê x|ovî|û d|inê|etê|tem|yet|eta|ek |ê j|a n|e t|i d|zan|bê |anî|nîn| ra|ama|ere| hi|i a|tuk|uke|bib|lat|awa|u d|ibe|xeb|atê|i m|mal|nda|ewa|a d|a b|arî| ba|edi| hî|hîn|rti| za|ist|e m| wi|mam| şe| qa|qan|anû|nûn|asî|han| ên|a g|u h|tu |dew|let|are|ine|pêş|êr |e a|wel|ger","yor":"ti | ní|ó̩ | è̩|ní | lá|̩n |o̩n|é̩ |wo̩|àn | e̩|kan|an |tó̩| tí|tí | kò|ò̩ | àw|̩tó|è̩ | àt|è̩t|bí |e̩n|àti|lát|áti| gb|lè̩| ló| ó |s̩e|àwo|gbo|̩nì|n l| a | tó|í è|ra | s̩|n t|ò̩k|tó |sí |kò̩|̩ka|o̩ | sí|ìyà|orí|ílè|ì k|̩‐è|dè |yàn|ni |̩ à|ún | or|èdè|jé̩|ríl|è̩‐|‐èd|í à|àbí|n à|nì |ò̩ò|̩ò̩|í ó| tà|tàb| ti|̩ t|jo̩|̩ l|̩e | wo|í ì|nìy|ó n| jé|ló | sì|kò |n è|wó̩|n n| bá|̩ s|rè̩|sì | fú|fún|í a| pé|̩ni| òm| kí|gbà| èn|ènì|pé |in |ba |òmì|nir|ira|ìí |ràn| ìg|ìgb|n o|bá |mìn|ìni|gba|kí |n e| rè|e̩ |̩ n|un |̩ p| o̩|í ò|nín|nú |fi |gbé|yé | ka|ínú|a k|bé̩|mo̩| fi|̩ ì|í i|ó s|i l|wà |o̩d|̩dò|dò̩|̩ o|bò |dá |i ì|bo̩|hun|i ò|o̩m|̩mo|̩ k|áà |̩wó|bo |àgb|ló̩| ò̩|ó j| bí| oh|ohu|í k|n s|írà|bà |ara| ìb|ogb|pò̩|ú ì|yìí|rú |kó̩|ó̩n|i t|̩ ò| lè|lè |̩ e|à t|à l|bog|a w|gé̩| yó|yóò|óò |ò l|̩gb|ò̩r|̩ y|í w|̩ f|í t| wà|ó̩w|yí |ó b|̩ a|ìké|i n|i è|láà|àbò|fin|wùj|ùjo|n k|í e|é̩n| òf|òfi| mì|mìí|ìír|jú |rin|̩é̩|i j|ó t| ar| ir| ná|náà| ìk|̩ b|i s|ú à| yì|kàn|irú|rí | i |è̩k|̩kó|fé̩|é à|i o|s̩é|̩ m| ìd|è̩d|̩dá|i à|àwù|à n|ú è|wù | èt|áyé|í g|í o| mú|a l|láb|ábé|̩è̩|ìn | kú|láì| àà|i g|bé |níp|ípa| ìm|níg|ígb|wò̩|báy|ké̩|mú |í n|de |è̩s|mó̩| dá|i a|dó̩|ó̩g| ni|i p| wó|ayé|ùn |̩ w|a n|n f|n ì|je̩|ò t|n g","uzn":"lar|ish|an |ga |ar | va| bi|da |va |ir | hu|iga|sh |uqu|bir|shi|huq|quq|gan| ha| bo|ini|ng |a e|r b|ni | ta|lis|lik|ing|ida|oʻl|ili|ari|nin|on | in|ins|adi|nso|son|iy | oʻ|lan| ma|har|dir|hi |kin|ash|i b|boʻ| yo| mu|uqi|dan|ila|qig|ega|r i|qla|oʻz| eg|a b| er|erk|kla|qil|oli|ki |gad| ol|nli|lga|at |i h|a o|rki|oki|osh|lig|igi| qa|yok|ib |las|n m| ba| qi|n b|ara|atl|ri |iya| sh|ham|ala|lat|bil|in |r h|bos|a t|siy|a y|cha|n o|a h|ik |a s|inl|a q|yat|nis| et|eti|osi|h h|i v|ani|tla|til|mas|ʻli|asi|ati| qo|i m|ris|im |a i|uql|arn|rni|qar|ha |gi | da|sha|n h|i o|rch|mla|li |i t| xa|arc|bar|ʻz |hun|a a|rla| bu|a m|lin|lib|taʼ| tu| as|h v|tib|aro|un |tga|r v|ikl| be|mum|n q|ali| te|sid| to|mat|amd|mda|tas| ke|shu|lla|shg|hga|n e| ya|dam|aml|oya|xal|hla|ola|iri|irl|ill|rga|iro|tis| de|umk|mki| eʼ|ten|eng|rda| is| sa|gin|imo|tar|ush|ur |ayo|rak| so|alq| ki|aza|k b|oda|oʻr|a k|tni|ʻlg|n v|hda|nda|shq|hqa|zar|miy|i q| mi|mil|r t| si|ak |ada|rat|or |kat|era|siz|am |ch |aso|sos|yot|atn|shl|n t|nid|y t|ana|ti |rin|asl|bu |sin|dav|ilg|as |i y|ech|nga|lak|h k|ino|ʼti|gʻi|muh|a v|bor|uch|lim|a u|uni|lli|n i|uri|si |i e| ka| ch|a d| ja|ami|qon|na |rig|lma|ker|avl|vla|i a|dek|ekl|liy|aka| em|ema|eʼt","zlm":"an |ang| ke| se|ng | da|ada|dan|ara| pe|ak | be|ran|ber| me|ah |nya|hak|per|n s|ata|ala|ya |a s|kan|asa|lah|n k| di|da |aan|gan|nga|dal|erh| ma|n d|eba|rha|a p| ha|kep|pad|yan|ap |ama| ba| ya|nda| te|ra |a b|tia|man|eng|a d|ora|men|iap|n p|ter|epa|san| or|eti|pen| ad| at|n a|a a|h b|set|tan|sia|tau|n t|n b|ta |dak| sa|sa |at |au |ela|apa|pa |beb|bas|p o|h d|n m|keb|end|aka|ega|a k|am |sam|ana|gar|k k|ban|ole|leh|neg| un|lam|di |g a|eh |n y|aha|han|a m|eri|any|ma | ti|a t|uan|mas|ngs|atu|seb|ebe|ing|ian|car|bag| ne|mem|kes|mat|gsa|ia |ika|i d|nan|asi|und| la|epe|ert|agi|emb|na |ers| de|emu|pem|ngg|anu|i m|ind|erk|ung|n h|tu |gi |kla|g b|pun|iha| in|nus|usi|tin|al |si |as |akl|dap|erl|era|sec|eca|i s|lan|bar|k m|ena|aya| as|sas|nny|rta|sem|awa| su|bol|rat|den|ini|ni | ta| he|hen| an|tar|g m|ai |kem|adi|had|in |ti |i k| bo|uka| ap|g t|ka |ann|ema|g s|ain|k h|rka|ri |n i|aga|un |ses|dun|enu|emp|elu|lai|kat|ent|nta|rsa|iad|ua |dia|ira|a n|mpu|ntu|uk |mel|k d|har|ker|dil|mar|h m|aja|ila|k a|mba|lua|i a|rak|uat|jua|rma| pu|t d|rga|i p|uma|ser|esi|ar |esa|nak|bah|rli|lin|ndu|dar|ari|ese|l d|ant|ngk| ol|sua|g d|ati|tuk|erm|saa|erj|rja|kea|raa|gam|g u|tik|ida|sek|eka|sat|i b|mbe|unt|dir|iri","ibo":"a n|e n|ke | na|na | ọ | bụ|nwe| n |ere|ọ b|re |nye| nk|ya |la | nw| ik| ma|ye |e ọ|ike|a o|nke|ụ n|a m| ya|a ọ|ma |bụl|ụla|e i| on| a |iki|kik|ka |ony|ta |bụ |kwa|i n|a i| nd|di |a a|wa |wer|do | mm|dụ |e a|any|ha | ga| ok|e m| ob|he |ndi|e o|a e|ite|ọ n|rụ |hi |ga‐|mma|wu | dị|aka|ara|che|oke|o n|we |n o| ih|mad|adụ|obo|bod|odo|a g|te | ez|hị | ka|ụta|be | an|akw|zi |a‐e|dị | oh|gba|nya|u n|ihe| ak|me |i m|ala|ri | ọz|ghi|ohe|her| mb|ba | nt| si| iw|weg|pụt|ra |iri|chi|ụrụ|rị |zọ |oro|ro |iwu|a‐a|ụ ọ|ụ i| eb|ebe|e ị|a y| in|ezi|kpa|kpe|inw|mba|sit|ịrị|ile|le | ha|e e|bi |n e|chị| en| e |i ọ|asị|mak| ni|nil|ghị|si |ide|a u|o i|i o|i i|apụ|a s|e y|u o|ụ m|ahụ|hụ |a ụ|nkw|edo|n a|ru |ụ o|ozu|enw|ọzọ|kwu|gid|sor|egh|yer|tar|n i|pa |eny|uru|kwe|toz|ị o| mk|ama|de |uso|tu | im|ime| me|i a|ịch|ọ d| ịk|obi| ọn|hed| ọr|ọrụ| to| ch|gas|wet|mkp| kw|osi|a d| nh|nha|ọnọ|nọd| al| nc|nch|sir| o |n u|sịr|eta|u ọ|ị m|n ụ| us|nọ | ot|otu| gb|ọdụ|nwa|o m| ag|ali|lit|ọta|ega|ị n|e k|e s|ji |a k|ikp|ọch| ug|ban|ekọ|pe |nta|agb|na‐|n ọ|hu |i e|e g|a b|zu |chọ|u a|kwụ|ram|esi|uch|onw| nọ|ị k|u m|eme|wan|e h|dịg|ịgh|hịc|ugw|gwu| di|ich|cha| og|okp|kpu| nn|zụz|zụ |i ị|o y|ach| ng|pụr|ị e|a h|meg|nat|uwa","ceb":"sa | sa|ng |ang| ka|an | pa|ga | ma|nga|pag| ng|a p|on |kat|a k|od |ug | ug|g m| an|ana|n s|ay |ata|ung|ngo|a m|atu|ala|san|ag |tun|g s|g k|d s|god|a s|ong| mg|mga|g p|n u|yon|pan|a a|usa|ing|tag|tan|una|mat|ali|aga|g u|han| us|nan|y k|man|ina|non|kin| na|lan|syo|a b|asa|nay|a i|n n| ta|awa|nas|taw| o |nsa|gaw|a n|agp|dun|iya|ban|isa|was| ad|adu| gi|ili|ini|asy|bis|nag|g a|a t|o s| bi|nah|lin| ki|al |sam|lay|ahi|nal| ba|ano| wa|wal|asu|agt| di|yan|ama|a u|n a|ags| iy|gan|n k|kan|him|kag|ya | un|gpa|kas|aha| su|g t|awh|wha|gsa|l n|agk|gka|a g|gla|kal|gal|ran|sud|ud |imo|d u|aba|aka|ika|ig |ngl|ipo|g d|ara|g n|uka|uns|uta|d n|og |i s|y s|kau|li |n o|aki|o p|kab| og|ot |mta|gik| si|n m|gpi| la|g i|aho|ayo|iin|ok |awo|hat|o a|gon|ip |a w|apa|lip|na |a h|bal|la |ad | ga| ti| hu|uba|wo |ati|uga|hon|hin|ma |sal| ub|agb|gba|nin| bu|buh|uha|t n|ahu|may|pin|as |ni |mak|ihi|abu|uma| in|say|d a| pi|dil| ni|ins| pu|agh|at |hun|but|aug|lak|bah|sak|o u|mal|s s|os |amt|t s|pod|sos|ngp|lam|aod|ila|a d|ami|k s|tin|ura|mo |agi|tra| at|bat|aan|ulo|iha|ha |n p|kar|oon|sya|ona|aya|in |inu| hi|it |agl|amb|mbo|mag|a l|ho |lao| al| il|iko|ngb|mah|lih|g b|gta|gtu|y p|rab|ato|tar|nab| re| so|osy|yal|aw |gda","tgl":"ng |ang| pa|an |sa | sa|at | ka| ng| ma|ala|g p|apa| na|ata|pag|pan| at| an|ay |ara|ga |a p|tan|g m| mg|mga|n n|pat| ba|aya|n a|na |ama|g k|kar|awa|a k|lan|rap|gka|nga|n s|g n|g b|a a|aha| ta|agk|gan|asa|tao|aka|yan|ao |a m|may|man|kal|ing|nan|a s| la|aga|ban|ali|g a|ana|y m|kat|san|kan|pam|g i|ong|mag|a n|baw|o a|wat| y |isa|lay|y k|t t|ila|g s|in |kas|o y|aan| ay|ina|t n|t p|wal|ag |una|yon| it| o |nag|tay|pin|ili|ans|lal|ito|any|nsa|kak|a i|lah|mam|nta|nya|gal|hay|to |ant|aba|ran|agt|on |han|agp|kap| ga|t s| wa|gaw|o m|ya |as |g t|lip|y n|hat|g l|ung|ngk|no |gpa|lag|gta|t m|wa |yaa|ari|sal|a l|kai|pap|lin| pi|ita|ahi| is| di|agi|ipi|bat|mak|pun|a b|y s|aki|tat|la |hin|pah|yag|gay|o n|ags|iti|di |i n|sas| si|t a|al |a t|ika|mal|s n|ipu|t k|ais|hal|i a|sap|lit|od |ihi|alo|y p|ani|ig |par|ap | ip|tas|gin|gga|nin|uma|gsa|ano|ira|a g|nah|uka|syo| bu|ini|o s|nap|ngi|o p| ha|a h|mah|a o|li |ipa|uha|asy|lam|iba|aru|mba|g e|usa|lim|sam|pil| da|kin|duk|sin|dai|aig|igd|gdi|dig| tu|d n|ba |nas|pak|iga|kil|n o|nak|ad |lig|git|lab|ma |kab|nar|tag| ed|edu|aho|buh|and|nda|mas|pas| ib|it |ri |lun|ula|agb|g g|ain|pul|ino|gi |sar|g w|abu|s a|api|nil|iyo|siy|iya|anl|uli|aun|agg|amb|g d|ati| li|i m","hun":" sz| a |en | va|és | és|min|ek | mi| jo|jog|ind|an |nek|sze|ság| az|gy |nde|ala|sza|den|az |a v|val|ele| el|mél|oga|egy|n a| eg|ga |zem|zab| me|emé|van|int|tel|aba|bad|tet|ak | te|tás| ne|gye|t a|ény|ély|tt |n s|ben|zet|ség|lam|meg|nak|ni |ete| se|lyn|yne|s a| al|let|z e|ra |et |agy|sen|eté|k j|tek|mel|kin|ok | ki|ez |hoz|oz |n m|re |vag|ett|emb|mbe|es | kö| le|nem|ell|em |ely|hog|ogy|s s|gok|atá|k a|nt |köz| ho|z a|hez|el |len|yen|ásá|ads|dsá|tés| em|a m|a s|nte| ál|k m|ás |a t|szt|áll|a h|y a|ogo|sem|ber|ban|enk|nki|nye|lap|t s|ese|ame|nyi|k é|ágo|ló |ág |t m|on | vé|i m|ami|ébe|s e|lat|lla|ly |mén|fel|tat|eri|lő |a n|eki|n v|yes|emz|mze|lle|a a| cs|át |kül|elő|l a|nd | ke|ég |i é|lis|vet|éte|ért|rés|yil|ésé|enl|szo| am|tar|art|alá|elé|a j| ny|koz|het|ész|ja |lem|nlő|ri |i j|s é|éle|ól |aló|kel| ha|ges|zás|más|s t|tár|s k|t é|vel|tko|zés|ése|se |tő |ot |ott|sít| fe|n k|lek|tte|olg|áza|ssá|e a|eve|szá|ti |n e|ül |zte|ána|zto|tos|árs|os |k k|eze|leh|ehe|t n|tes|kor|atk|del|t k|tot|ány|ége|fej|i v| né|ház|leg|k e|ll |nev|is |ába|t t|véd|éde|d a|zer|ere|kif|ife|téb|ny |ai | bi|biz|izt|i e|sül|lt |zat|at |elm| ar|arr|rra|sel|t e|ágá|s n|csa| mu|nél|it |esz| há|zas|ass|üle| ta|nyo|alk","azj":" və|və |ər |lar| hə|in |ir | ol| hü|hüq|üqu| bi|quq|na |lər|də |hər| şə|bir|an |lik| tə|r b|mal|lma|ası|ini|r h|ən |şəx|əxs|qla|arı|a m|dir|ali|aq |uqu| ma|ilə|ın |una|yət| ya|ara|ikd|ar |əri|əsi|r ş|rin|əti|dən|nin|n h| az|yyə|sin| mü|tin|ni |zad|iyy| mə|ərə|mək|ün |nda|ət |i v|ını|nın|ndə|ə a|aza|rın|qun|olu| et| qa|lıq|ilm|kdi|lə |ə y|ək |lmə|ına|ind|olm|xs |mas|sın|lun| in|ə b|da |n t|əmi| bə|adl|dlı|n m|nə |q v|ya |tmə|bər| on|ə h|əya|sı |nun|etm|dan|inə|maq|un |raq|ə v| va|n a|n b|rlə|ə m|si |əra|n i|ınd| öz|anı|nma|ama|rı |ığı|li |il | al|ala| di|ə d|ik |irl|ins|lət|a b|bil|ıq |müd| sə|ə i|nı |nla|ələ|dil|alı|ə e|unm|n v|ola|asi|üda|ili| də|nsa|san|uql|ə o|xsi| he|uq |ətl|həm|əni|eyn|u v| da|tər|min|yin|kil|dır| bu|lan|iş | ha|məs| ki|mi |lığ|ə q|q h|i s|daf|afi|fiə|r v| iş| əs|sos|osi|sia|xal|alq| ta| as| ed|bu |heç|eç |rə |yan|ı h|kim|iyi|ı o|ina|siy|əsa|sas|a q|yar|lı |tün| is|ist| so|al |n ə|ifa|əmə|ə t|mil|ill|lıd|ıdı|ır |ədə|ıql|liy|tlə|a h|məz| bü|büt|ütü|iya|iə | üç|üçü|çün|t v|dax|axi|xil|r a|ılı|man|sil| se|seç|adə|ial|onu|öz | cə|miy|əyi|n e|edi| mi| nə|a v|mən|ril|əz |ild|rab|abə|şər|ğın|aya|zam| ni|ulm| xa|təh|əhs|hsi|i h|sti|qu |var|ad |tam|uğu|z h|qan|rəf|n d","ces":" pr| a |ní | ne|prá|ráv|ost| sv| po|na |ho |ch | na|nos|o n|ání| ro|ti |vo |neb|má |ávo| má|ou | ka|kaž|ažd|ebo|bo | je| za|ždý|dý | př|svo|a s|sti| st|á p| v |vob|obo| sp|bod|pro| zá|rod|ých|ván|ý m|né | by|ení|ého|spo| ná|í a|ová|o p|roz|mi |ně |ter| li|a p|nár|áro| ja|jak|by |to |lid|u p| vš|ny |ím |í p|i a|a z|o v|kte|mu |at |odn| vy| ma| so|ví |zák|tní|a v|oli|li | kt|í n|kla|do |je |pod|en |em |byl|mí |áva|stá| do|t s|rov|í s|tví|vše|it |dní|o s| ve|pol|í b| bý|být|ýt | se|čin| k |sou|a n|stn|ran|vol|nou|ejn|nes|se |ci |nýc|du |ným|stv|žen|své|vé |ají|jeh|eho|va |mez|ním|ích|ým |ké |ečn|pří|u s|tát|i s|kol|ova|e s|ech|í v|ids| i |maj| to|nu |hra|ave|ole|i v|kon|m p|ému|y s|o z|eré| ze|o d| že|chn|ovn|len|dsk|lad|vat|chr| ta|m a| ab|aby|sta|pra|néh|esm|smí| ni|i n|že |ako| os|sob|aké|i p|st |rac|kdo|zem|m n|odu| ji|bez|ste|ákl|ens|ými|í m| vz|i k| oc|och|jí |oci|áln|lní|a m|dy |lně|vou|při|rav|leč| s |t v| či|čen|áv |slu|jin|oko|nez|tej|řís|stu|ské|ský|nit|ivo|a j|věd|iál| me|ezi|ven|oln|zen|í z|y b|zac|níc|ky |u a|a o|u k|inn|est| tr|svě|nik|ikd|í k| mu|u v|kéh|jno|jíc| dů| od|tup|ože|i j|odi|děl|ího|rok|anu|soc|ciá|ve |é v|něn|din| vo| pl|pln|vin|u o|h p|tak|adn|a t|cho|ává","run":"ra |we |wa | mu|e a| n |se |a k|ira|ntu|tu | ku| um|ko |a i|mu |ye |hir|iri|mun|ing|unt|ere|ash|shi|a n|umu|zwa| bi|gu |ege|a a|za |teg|e k|ama|go |aba|uba|ngo| ba|o a| ar|ung|ish|ora|a m|e n| we|sho|na |ese| kw|nga|e m|mwe| ab|ugu|ate|ndi|kwi| gu|ger|riz|wes| at|di |u w|n u|yo |gih|ban|ngi|iza|e b|ara| am|ri |ka |a b|e i|hob|obo| ca|ro |u b|can|nke|ezw|a u| in|bor|bah|ahi|rez|iwe|gir|iki|igi|ihu|ke |ari|ang|aku|a g|hug|ank|ose|u n|o n|rwa| ak|and|kan| vy|ngu|nta| ub|aka|ran| nt|n i|ata|kur|kun|i n|ana| ko|e u|iye| ka|re |any|amw|ta |nye|uko|gin| zi|ite|era|ga |aha| ib| ng|n a|o u|o k| iv|ivy|ho | as|sha|o m|o b| bu|mak|ako|o i| ig|o z|o y| uk|ubu|aga|izw|i b|vyi|ba |aho|kir|nya| is|kub|hin| it|uri|gan|rik| im|u m|guk|bat|nge|kug|ani|vyo|ene|imi|imw| y |jwe|ze |agi|e c|u a|gek|ush|i i|uru|ham|uza|e y|ibi|amb|bur|ina|eme|i a|abi|ha | nk|eye|gus|ber|u g|no |rah|zi |w i|ma |tun|ind|ron|ras|wo |ne |wub| gi|gen|kiz|y i|kor|ura| zu|zub|zin|je |iro|mat|eko|bwa|ika| bo|bak|onk| ma|ugi|mbe|ihe| mw|eka|ukw|wir|ryo| ic|a z| ry|bwo| ag|yiw| ki|gis| yo|bik|ni |nka|rek| bw| ya|tse| ha| ah|umw|he |eng|bir|aro|ury|twa|ant|a c|tar|uki|mw |bih|ku |tan|bos|nde|uro|y a|utu| no|i y| yi|ya |puz|zam|eny","plt":"ny |na |ana| ny|y f|a n|sy |aha|ra |a a| fa|n n|a m|y n|an | fi|tra|any| ma|han|nan|ara|y a| am|in |ka |y m|ami|olo| ts|min|lon| mi| sy| na|a t| ol|fan|a i| ha| iz|iza|man|ina|ona|aka|y h|ian|o a|a h|reh|a s|etr|het|a f|on |ire|fah|tsy|mba|ay |zan| hi| ar|ndr|ira|y o|y t|ehe| an|o h|y i|afa|ren|ran| zo|ena|dia|amb|amp|ala|zo |ika|y s| di|tan| az|y z|m p|rin|ia |n j| jo|jo | dr|a d|zy |ao |ry |and| ka|dre|mpi|rah|nen|haf|n d| ir|eo |elo| ta|omb|rai|oan|fa |am | pi|ene|ho | ho|ant|iny|itr|azo|dra|ava|tsa| to|tsi|zon|asa|van|a k|ari|ha |n i|mbe|ray|fia| fo|sa |ony|isy|ova|lal|ly |azy|o f|bel|lom|ham|mis|sam|zay| ra|oto|fir|ban|a r|nat|kan| vo| he|ito|ary|nin|iha| re|a e| ko|tok|fit| no|ita|iar|fot|nam|voa|isa|y v| sa|y r|o n|no |aly|mah|har|ain|kam|aza|n o|otr|eri|hev|oka|sia|ial|atr|y l| la|ila|oa |y d|ano|ata|its|tov|pia|y k|pan|fam|oko|aro|nto|pir| ao|ty |anj|nja|reo| as|o s|hia|o t|mpa|mit| eo|ais|sir|air|ba |tin| it|ver|ino|vah|vy |ton|tao|ank|era|rak|kon|a z|tot|ive|ame|aho|hoa|hit|ati|ity|o m|mik|a v|ani|ori|koa|hah|nga|dri|eha|dy | mo|oni| za|ato|bar|jak|n t|nao|end|eve|lah|aov|mia|izy|lan|nar|ria|ama| pa| mb|aln|lna|ifa|za |to |dro|va | in|ind|ehi|n k|iva|nta| va| al|via|rar","qug":"una|ta | ka|na |ka |ash|cha|a k|ari|ish|kun|kta|pak|ana|hka|mi |shk|apa|ach|hay|akt|shp|man|ak | ch| ha|ata|rin|lla|tak|ita|ami|ama|aku| pa|har|pas|ayñ|yñi|ina| ma| ru|uku|sh |hpa|run|kuy|all|aka| tu|tuk|an |chi|yta|a c|chu|in |ñit|ris|a h|nka|nak|tap|kan| ki|ayt|pi |pa | sh|i k|nap|a p|pay|kaw|kam|nam|ayp|aws|wsa|a s|ank|nta|iri|uy |a t|hin|a m|ay | li|ant|kay|lia|nat|a r|shi|iak| wa|lak|uya|say|yuy|y r|ypa|kis|a a|hun| yu|n t|tam| ti|n k| ya|yay|lli|a w|hpi|api| al|un |yku|ipa|a i|iku|ayk|shu| sa|ush|pir|ich|kas|kat| il|huk|ill|a y|hu |rik|yac|a l|kac| ku|hik|tan|ypi|wan|ika|i c| ni|ima|ila|ink|ayl|yll|mac|nis| ta| wi|kus|i y|i p|n s|llu|tin|la |yan|kpi|awa|li | ri|may|tik|iks|lan| pi|aya|kin|yas|ksi|kll|kak|lat|aym|ura|war| ay|k h|uch|akp|sha|ukt|nch|h k|i t|ull|uma|mas|iya|kir| ii|h m|pip|n p|kik|iki|i s|kar|aki|riy|han|y h| su|mak|n m|tac|nal|nac| ña|k k|k t|k a|iwa|mam|i m|nki|yma|wil|his|pal|i i|asi|nmi|i w|sam|k l| hu|sum|pam|kap|k i|pan|iia|huc|ik | mu|mun|pik|was|k m|ma |hat| im|k r|akl|u t|ha |llp|a u|wak|has|anc| ak|imi|mal|y k|ian|iña|tar|yka| iñ|iñi| mi|n y|ywa|uyk|unk|a n|arm|rmi|h p|pur|akk|kim|san|ati|uti|uri| ar|sak|i a|hap|iyt|ayw|si |yar|las|lpa|ñaw|awp|wpa|i r","mad":"an |eng|ban|ng | sa| ka|dha| ba|ren|ak |ang| se| ha|hak| dh|na | pa|adh|se |a s|aba|n s|ara|ngg|are|ha |aga|sa | or|sar|ore|asa|ana| ma|a k|aan|gi |ale| ag|gad|a b|n o|n k|ra |ala|eba|gan| ke|dhu|aja|ota|bas|man|dhi|n b|tab|ka |sab|ama|beb|abb|at |nga| ta|ggu|ako|pan|huw|uwi|wi | ot|san|a d|ata|eka|i h|bba|agi|ba |lak|hal|ong|kab|em |g a|lem|a o| pe| na|par|ane|ngs|nge|gar|a p|tan|gsa|a a|ran|ken|i s|guy|uy |k h|n p|n a|ada|al |apa| ga|on | an|g s|ta |kaa| e |e d|pon|nek|ssa|a m|kal|a e|e e| la|kat|ona|abe|nan|asi|jan|ate|lab|ri |sal|lan|i p|sad|aka|e a|a h|ari|ena| bi|oss|si |daj|i k| ng|har|gen|ton|e k|epo|ano|bad|car|n d|ar |era| be|nag|kon|g k|ase|nya|nos|n n|mat| kl|mas|ela| da| al|n t|uwa|wan|sae|pad|ggi| so|as |hi |adi|a n|i d|g e|k k|ne |oan|uan|k s|k a|e b|ah |ina|kla|ter|om |gap|le |koa|yat|per|neg|ega| ja|bi |abi|aha| ep|aon| as| mo|n h|i a|one| di|ma |kas|m p|di |aya|nto|int|n e|te |bat|epa|nda| ca|pam|e s|amp|to |dra|ann|oko|rga|nna|e p|g p|nta| ra|and|i b|nao|k d|pen|aen|ste|ila|yar|a t|mpo|ok |set|n m|k b|isa|kom|raj|arg|ika|bin|ant|ga |hid|idh|aju|i m|nas|kar|mos|ost| ho|lae|dil|t s|a l|das|rek|tad| a | po|ett|tto| to|bis| dr|jat|add| ko|ent|gam|e m|ndh|hig|iga|maj","nya":"ndi|ali|a k|a m| ku| nd|wa |na |nth| mu|yen| al|ra |thu|se |hu |nse|di |a n|la | pa| wa|mun|unt|nga| la|a u|u a|e a| ma|za |ons|ace|ce | lo|iye|a l|idw|ang| ka|kha|liy|ens|li |ala|ira|pa |ene|i n|we |e m|era|ana|dwa|lo |hal|ulu|ko |dzi|iko|yo |o w| ci|a p|ga |chi| mo|o l|lu |o m|zik| um|moy|oyo|ufu|ner| an|and|iri|umo|ka |a a|dan|ena| uf|ful| nc|nch|hit|ito|to |a c|kuk|dwe| da|fun|wac| dz|e l|kap|ape|a z|e k|ti |u w|ere| za|lir|pen|aye|tha|kut|ro |mu |lid| zo|ofu|ing|i m|amu|mal|o c|kwa|mwa|so |o a|o n|i p|eza| mw|nso|iro|zo |i d|lin|ri |edw| a |i l| li|a d|kul|ati|uti|una|lan|i k|o k|ung|alo|dza|i c|o z|a b|uni|iki|lam|mul|ulo| ca|nkh|nzi|gan| na|ant|e n|san|tsa|wir|oli|u k|lon|dip|ipo|unz|yan|gwi|ca |ome| ko|aku|akh|pon|ngw|kir| po|uli|gwe|cit|mer|pan|kup|ame|mba|tsi|bun|ukh|ope|siy|iya| ya| am|han| bu|ama|bvo|vom|rez|lac| kw|men|u n|ao |pez| on|zid|osa|u o|i a|nda|e p|ne |ank|hun|o o|nik|ku |its|adz|u d|aka|diz| kh|ina|ezo|ndu|kho|okh|ya |awi|izo|ans|pat|eze|khu|zi |phu|kus|eka|o p| ad|mol|ets|sa |iza|kwe|wez| un|izi|oma|ma |oci|du |ula|ani|lok|haw|ika|ja |say|nji|jir|amb|ats|sid|mai|aik|mak|aph|i u|isa|lal|u m|ogw|no |oye|ukw|osi|sam| si|win| zi|ni |tse|si |e o|opa|emb| ba|ban","zyb":"bou|aeu|enz|nz |eng|iz |ih |uz |uq |ing| bo|oux| di| ca|z g|dih|ux |ngh|cae|gen|euq|z c|ng |you|ung|ngz|ij | mi| gi|miz|aen| ge|z d| ci|gya| yi| de|ouj|uj | gu|cin|ien|ngj| mb|mbo|dae|zli|gij| se|j g|ang|z y|j d|ouz| cu| ba|nae|h g| da|yin|oz |de |z b|nzl|li |nj |x m|euz| cw| yo|iq |gz |q g|x b|yau|h c|vun|inh|ix | ga|cwy|wyo| nd|vei|nda| ro|rox|oxn|z m|i c|j b| si|wz |gh | gy|cun|gue|xna|unz|hoz|can|bau|ei |z h|yen| li|inz|dan|q c| hi|gj |uh | vu|faz|yie| bi|zci|hin|goz|uek| fa|gun|aej|ej |ya |nh | ae| go|au |ciz|den|h m|nq |ngq|ouq|gva|z s| do|ci | wn|q d|eix|h d|ekg|kgy|q s|hu |u d|j n|auj|j c|gai| ha|az |nhy|z l|gjs|jso|sou|ou |bin|sin|lij|h s|sev|eve|nei|q y|aiq|sen|h y| la|enj|ouh|i b|vih|din|q n|awz|j y|z r|enh|en |uen|bwn|wng|ozc|z n|anj|j s|liz|g g|g b|i d| ne|bae|awj|sei|eiq|hye|anz|oen|hix|zda|gak|ez |anh|u c|z v| ya|h f|x d|in |ghg|bie|enq|zsi|ghc|hci|siz|i g|n d|h b| du|cou|ngg|ngd|cuz|eiz| ho|dun|g c|law|j m| dw|env|nvi|dei|a d|ek |yaw|wn |giz|gzd|nzg|wnj|gda|ak |nde|auy|yuz|hgy| co|ujh|jhu|e c|hen|ujc|min|izy|g d|gzs|daw|aw |g y|ozg|ai |iuz|x l| na|iet|aih|gih|iuj|zbi|uyu|coz|sae|i m| he|zdi|dwg|q b| fu| ve|guh|iqg|qgy|yai|yoe| so|biu|vaq|aq |yun|izc| ra|cie|zge|n g","kin":"ra | ku| mu|se |ntu|a k|tu |nga|umu|ye |li | um|mun|a n|unt|ira| n |ere|wa |we | gu|e n|mu |ko |a b|e a|o k|a u|a a|u b|e k|ose|uli|ro | ab|aba|gom|e b| ag|omb|ba |ugu|ang|o a|gu |mba| ib| ub|eng|ihu|za | bu|ama| by|hug| ba|o b|e u|kwi|ga |ash|ndi| ka|yo |e i|ren| cy| ak|iye| bi|re |ora|igi|gih|ban|ubu|di | nt| kw|gan|a g|aka|aga|nta|a m|iro|a i| am|ku |i m|ago|byo|ta |ka |cya|ibi|and|na |ali|uba|sha| bw|ili|yan|no |ese| ig|u m|o n|kan|ish|ana|sho|obo|era| we|ya |aci|i a|ura|wes|uko|e m|ran|o i|u w|uru|wo |kub|n a| im|ber|hob|bor|ure| no|ani|u a|gac|cir|o m|ush|bur|eke|ne |wiy|ara|nge|rwa|yos|e y| y |uga|bwa|ho |zo |ind|ane|mwe|iza|are|rag|ge |mo |bwo|bul|teg|ege|u k|u n|n i|ze |aha| uk|bye|anz| al| ki|bah|uha|ite|kug|gir|ngo|go |age|ger|u g|zir| ry|ugo|bih|akw|o g|guh|iki|bat|iby|gar|imi|mbe|y i|n u|ha |atu|mul|tan|eye|e c|kim| ni|shy|aho|tur|kir|ate|abo|je |bo | ng|u u|ata|o u|iko|gus| bo|bos| gi|a s|nir| ru|gek|i b|eza|i n|nzi|i i|rez|kur|ako|any| as|ung| se|bis|nya|o r|uki| ya|ngi|mat|eko|ugi| in|o y|kor|imw|rer|bak|yam|bit| ik|kar|ire|ige|shi|hin|ing|byi|nu |mug| at|yem|eme|gaz|irw|yer|rek|key|ihe|gen| ic|icy|hak|but|ets|tse|eze| ur| na|bag|awe|ubi| yi|i k|ezo|tek|ubw|rya|uza","zul":"nge|oku|lo | ng|a n|ung|nga|le |lun| no|elo|la |wa |e n|ele|ntu|tu |gel|we |ngo| um|e u|thi|uth|ke |hi |ni |ezi|lek| ku|nom|ma |o n|onk|nke|pha|gok|a u|nel|ulu|unt|o l|kwe|oma|o e|ang|lul| uk|kul|a k|eni|uku| wo|kel|hla|mun| lo|ama| ne|ath|ho |umu|ela|won|elw|lwa|ban|a i|ule|zwe|ana| un|une|ing|lok|aka|elu|wen| kw|aba|tho|akh|khe|ala|gan|o y|enz|ko |thu|na |u u|a e|gen|i n|zin|kho|enk|kun|mal|alu|e k|lel| na|kat|e a|nku|eko|he |hak|lan|kwa| ez|o a|o o|kub|ane|ayo|yo |lwe|eth|obu| em|nzi| ok|okw|kut| ba|ile|ben|het|eki|nok|nye|ike|i k|so |isi|ise|esi| ab|mph|nhl| is|aph|fan|ga |isa|ini| ye|e i|nen|uba|ba |zi |hol|ka |ant| fu|fut|uhl|abe|and|do |ukh|kuk|eke|a a|kil|e w|the| ya|nda|za | im| in|olo|ekh|eli|ith|khu|eng|yok|nis|sa |kuh|o u|any|ye |e e|i w| ak|olu|ndl|a o| le|ne |ume|mel|eka|mth| ko|emp|isw|amb|emi|no |uny|iph|i i|zo |kuf|nay|ind|ezw|kuz|vik|alo|o w|hul|ebe|lin| yo|kan|eze|ndo|uph|hlo|yen|enh|phe|ufa|ake|ale|kug|fun|und|wez|li |seb|a l|ula|wam|din|ahl|nez|yez|nya|bus|bo |azw|o k|ink|kek|nan|i e|ola|izi|mbi|ili|han|kuv|ase|hel|hut|a y|kis|kuq|da |omp|swa|kup|nem|ano|phi| ol|azi|ubu|o i|kol|oko| el|e l|huk|ani|nje|sek|uke|lon|pho|kom|lak|kus|zis|ham|mba|izw|ulo|hun|i u|u n","swe":" oc|och|ch |er |ing|för|ar |tt |en |ätt|nde| fö|rät|ill|et |and| en| ti| rä| de|til|het|ll |de |om |var|lig|gen| fr|ska|ell|nin|ng | ha|ter|as | in|ka |att|lle|der|und| i |sam|lla|fri|ghe|ens|all|ör |na |ler| at|ete|den| el| so| av|av |igh|r h|nva|la |r r|env|ga |tig|nsk|iga|har|t a|som| ut|tti|nge|t t|ion|a s|ns |a f| sk|a o|r s|män|an |är |isk|rna| st| si| vi| sa| al|t f|ra | be|a r| är| me|ati|n s|lan| va| an|med|tio|ern|nna|t e| un|äns|ta |nat|sta|ig | åt|ten|kli| gr|vis|t s| la|äll|one|änd|han| ge| li|ans|stä|ner|t i| må|gru|ver|rih|ihe| mä|sni|lik|n f| re|r a| na|må |ers|t o|ad |r e|da |det| vä|ent|run|rkl|kla|ri |h r|nom|kap|igt|gt |n e|dig|uta|tan|e s|dra|s f|ed |d f|lar|rin|ran|upp|erk|tta|ika|änn|r o|erv|rvi|kte|vid|a i|lag| på|g o|id |ari|s s|r u|lin| om|ro |a m|els|isn|del|sky|r d|e m|mot|ot |vil|på | mo|r m|str|örk|ndl|on |i o|nd |tni|n m|ber|nad|gan|örs|r f|kal|era|a d|dd |je |itt| up|sin|nga|täl|ras|n o|ärd|i s|r i|enn|a n|n a| hä|bet|ski|kil|n i|lse|rel|t b|g a|kyd|ydd|arj|rje|l v|s e|end|amt| fa|nas| så|inn|tat|per|t v|l a|int|tet|öra|e f|tra|r g|yck|r ä|vär|ege|arb|d e|re |nis|ap |ara|bar|l s|t l|lit|när|lke|h f|ckl|v s|rän|gar|ndr|mt |se |häl|h a|llm|lmä|ess|sa ","lin":"na | na| ya|ya |a m| mo|a b|to | ko| bo|li |o n| li|i n| pe|i y|ngo|a n|a y|ki | ba| ma|kok|pe |la |a l|zal|oki|ali|nso|oto|ala|ons|so |mot|a k|nyo|eng|kol|go | ny|yon|nge|o e|ang|eko|te |o y|olo|oko|ma |a e|iko|e m|e b|lik|ko |o a|ako| ye|ye |ong|mak|si |isa| ek|aza|lo |sal|ama| te|o p|bat| az|e n|oyo|ani|ela|sen|o m|a p|ta |ban|i k|amb|ni | es|yo |aka|mba|osa| oy|mi |a t|eli|lis|i p|i m|ba |mok| to|mbo|bok|isi| mi|ing|lon|ato|o b| nd|ge |bot|ota| ez|nga|nde|eza|o t|kan|ka |gel|e k|bo |ese|sa |lam|koz|den|oba|omb| po|ga |mos|kop|oli|e e|yan|bon|oka|kob|lin|bik|po |kos| lo|sam|e a| ’t|’te|kot|ti |ngi| bi|e y|omi|esa|i b| el|elo|lok|gom|som|i t|ate|ika|kam|ope|a s|kat|ati|ata|wa |iki|i e|bom|tal| ka|oza|o l|bos|zwa|ola|pes| se|oke|bek|o o|ndi|bal|nda|nza|oso|omo|lak|bak|mis| at|bis|sus|usu|su |osu|lib|and|ozw|asi|ele|tel|mu |i l|e t|ase|mol|mob| nz|kel|ene|ne |mbi|ami|aye|nis|a ’|tan|le |obo|baz|pon|wan| ep|yeb|kum|sem|emb|mal|gi |nya|ote|e l|oku|bas| ta| ak| ti|tin|ina|gis|opo|ana|mab|bol|u y|mat|ebi|oti|mib|obe|a o|san| so|mbe|be | mb|ibo| et|ike|da | en|ben|za |yok|eni|tey|bwa|bi |kom|i o|gob|mik|umb|se |eba|e p|ibe|ale|lel|boy|eta|i a|bu |ime|sik|mon|ona|mel|ose|mwa|sol|geb|ebe","som":" ka|ay |ka |an |oo |uu |da |yo |aha| iy|ada|aan|iyo|a i| wa| in|sha| ah| u |a a| qo|ama| la|ga |hay| dh|ma |aad| xa|ah |a d| da|qof|in |aa |iya|a s|a w| si| oo|isa|eey|yah|xaq| le|ku |lee|u l| ku|taa| ma|la |dha|ta |aq |q u|eya|y i|ast|sta|a k|ha |of | wu|wux|uxu|xuu|kas|sa |u x|ara|doo|wax| am|iis|ro |a q|inu|nuu|ala|a x|o a|maa|nay| sh| qa|o i| aa|kal|le | lo|loo|f k|o d|ana|a u|o x| xu| xo| ba| uu|yad|iga|a l|si |dii|a m|yaa|gu |ash|u d|ale|ima|adk|aas| ca|o m|do |lag|add|na |lo |o k|san| is| so|adi| mi| fa|xor|dka|aqa|iin| he|aar|had|rka|a o|ado|dad|soo|mid|kar|aro|baa|qaa| ha|nta|o h|ad |u k|aga|dda| ga|hii| sa|u s| ay|har|axa|mad|n k|eed|quu|haa|daa|o q|aal|o s|n l|xuq|uqu|n i|id |hel|aya| ee| ho|nka|i k|uuq|nim|ina|ihi|elo|waa|dan|agu|ays|a h|saa|mar|ark|ya |ank|o w|naa|gga|ee |ax | bu|uqd|qda|rri|riy|n a| no|u h|n s|oon|lka|u a|laa|o l|ab |haq|uur|int| gu|ida|iri|lad|dhi|yih|ysa|dah|to |aam|ofk| xi|arc|rci|eli|ood|ool|orr|alk|goo|ayn|e u|n x|h q|asa|sag|a c|sho|ami|i a|n q|siy| ug|kii|o u| ta| ge|gel|agg|a g| di|ido| ji|hoo|a f|al |jee|dal|ago|ii |a b|mo |iir|ooc|bar| ci|caa|xir|ra |aqo|sig| mu|aba|oob|oba|u q|aaq|aab|sad| ra|cad|dar|imo|ar |y k|fka| du|xay|y d|ras|o c|ari","hms":"ang|ngd|gd |ib | na|nan|ex |id | ji|ad |eb |nl |b n|d n|ud | li|jid| le|leb| ga|ot |anl|aot|d g|l l|b l| me|ob |x n|ngs|gs |mex|nd |d d| ne|jan|ul | ni| nj|nja| gu| zh|lib|l n|ong| gh|gao|b j|b g|nb |l g| je|jex|gan|ngb| ad|end|el |gb |han| sh|ub | da|d j|t n|d l| nh|nha|b m|is |d z|x g| ya| wu|she|l j|oul|il |nex| ch|b y|d s|gho|gue|uel|wud| gi|d y|hob|nis|d b|s g| zi|lie| yo|es |it |nx |ies|aob|gia| de|eib|you|ian| hu|s j|d m| ba|zib|oud|b d|chu|ut |t j| do|ol |at |hud|nen|hen|s n|iad|ab |zha|t g|dao| go| mi|enl|x j|enb|b z|hei|eit|nt |b s| ze|d c|al |inl| xi| se| re|ren|hao|d h| fa|ngx|gx |anb|gua|yad| ho|x z|fal|b w|nib|ix |b h|and|had|t l|x m|gou|d x|bao|ant|don| xa|yan|d p|s z|hib|anx|zhe|ox |l d| pu| du|dan|gha|od |s m|sen|xin|lil|hui|uib|uan| we| di|b x|oub|t h|hub|zhi|t z| ju| ge| ng|t m|hol|xan|pud|x l| ma|jul|eud|hea|l s|enx|l z|jil|zen|aos|os |s l|d r|dei|ngt|gt | yi| he| si|nga|heb|zho|hon|did|d a| lo|b a|x c|dud|b b|lou| bi|dou|geu|b c|d k|x a|d w|wei|x b|l h|x d| qi|bad|t w| bl|blo|aod| nd|nia|deb| ja| sa|eut|ax |eab|s a| bo|lol|sat|ngl|gl | to|l m| pa|pao|b f|lia|x s|heu|t s|che| ca|can|s w|s y|sib|mis|zei|ux | pi|x r|gon|t p|jib|iel|d f| cu|ghu|unb|t c|inb| ko|x x","hnj":"it | zh| ni|ab |at | sh|ang|nit|os | do|uat|ox |ax |nx |ol |ob | nd|t d|x n|nf |zhi|as | ta|tab|ef |if |d n|ad | cu| mu|cua|uax|mua|uf |b n|ib |s d|dos|id |enx|hit|nb | lo|f n|t l|ngd|gd |inf|us | go|ux |ed |she|b d|t n|b z| ho| yi|x z|aob|l n|t z|ong| zi|ix |nda|d z|yao|uab|enb|ut | de|f g| dr|dol| yo|zhe| le|euf|x d|inx| ne|nen|das|dro|ngb|gb | ge|d s|s n|f z|uef|hox|len|b g|il |ud |nd |gox| ua| na| du|x j|f y|oux|x c|han|ndo|of |f h| ja| gu| ny|zha|s z| da|uad|heu|lob|shi|ik | bu| ji|hai|ged|od |b h|t g| ya|ngf|gf | hu|ex |bua|you|rou|nil|hen|yin|zhu|out|ous|nya|is |f d|enf|b c|af |dou|lol|nad| re| ha| xa|uk |t s| id|xan|sha|hua|jai|b y|aib| qi| la|s s|d d|l m|ot |hue| xi|x g|x l|ren| kh| dl|ait| ba|aod| zo| ju|jua|zif| nz| ga| di|bao|x y|b s|x s|xin|aof| li|b b|x m|x t|eb |b l|ngx|gx |dax|b t|hef|gua| be|las|d j|s t|hed|nzh|l d|t y|hif| pi|f b|d l| ib|t h|f l|hou|dus|hun|und|s l|t r|el |uas|gai|ngt|gt |hab|aos| mo| zu| bi|f t| za|d y|x h|aik|k n|end|aid|ros| gh|zos|pin|ak |s x|d g|f s|s y| ao|k z|s b|due|mol| fu|dex|iao|x b|hik|x i|deu|l b| bo|b k|s m| lb|lb | hl|lan|uaf|d b|zho|al |eut| ro|ub |et |t c|d m|x x|d h| ch|d p|f x|t b| nt| su|uak|zis|shu|t t|gha|yua| we|oud|gon|d t","ilo":"ti |iti|an |nga| ng|ga | pa| it|en | ka| ke| ma|ana| a | ti|pan|ken|agi|ang|a n|a k|aya|gan|n a|int|n t|ali|lin|a m|dag|git|a a|i p|teg|a p|nte| na|man|awa|kal|da |ng |ada|ega|nag|way|na | da|n i|sa |i k|n k|ysa|n n|al |a i|no |add|aba| me|eys|i a|nna|dda|ngg|mey| sa|ann|pag|ya |gal| ba|mai| tu|gga|ung|i s|kad|yan|tun|nak|wen| ad|aka|aan|enn|nan| ag|asa|i n|wan| we|nno|yaw|i t|l m|ata| ta|ami|a t|apa|ong| si|li |i m|kas|aki|ina|ay | an|n d|ala|a s|g k|gpa|mak|eng|ili|n p|et |ara|at |ika|ipa|dad|ama|nai|g i|yon| aw|in |ao |toy|oy |ta |on |aen|ag |bab|ket|aik|ily|lya|sin|tao|ani|agp| ki|a d|bal|oma|ngi|uma|g a|i i|kin|naa|bae|o k|y n|daa|gil|o t|iwa|ags|pad| am|syo|i b|kab|sab|ida| um|mil|aga|gim|ar |ram|yto|san|tan|min|pap|n m|eg |agt|o n|a b|aar|asi|ino|nom|nia|n w| wa| de|dey|pam|i e|sal|bag|saa|iam|eyt|day|kit|ak |ed |gsa|lak|t n|ari|nay|kan|nat|t k|i l|i u|sap| gi|g n|aw |sia|o p|o i|dum|i g|to |uka|agb|bia|aib|lub|ubo|ged| li|apu|pul|lan|imo|mon|y a|ma |pak|ias|sta|den|i d| id|bas|kai|gin|i w|kap|ita|asy|kni|kar|bon|abi|ad |umi|ban|agk|akd| ar|mid|din|sar|iba|nnu|inn|o m|ibi|ing|ran|akn|nib|isu|abs|maa|kda|aip|as | la|o a|t i|idi|nto|lal|amm|aad|or |adu|kua|ais|nal|w k|ulo|y i"},"Cyrillic":{"rus":" пр| и |рав|ств| на|пра|го |ени|ове|во |ани| ка|ть | по| в | об|ия |лов| св|сво|на | че|о н|ело|ост| со|чел|ие |ого|ния|ет |ест|аво|ажд|ый | им|век|ние| не|льн|име|ова|ли |ать|т п|при|каж|и п| ра|или|обо|жды| до|ых |дый|ек |воб|бод|й ч|его|ва |ся |и и|мее|еет|но |и с|аци|ии |тва|ой |лен|то | ил|ных|к и|енн|ми |тво| бы| за|ию | вс|аль|о с|ом |о п|о в|и н|ван|сто|их |ьно|нов|ног|и в|про|ако|сти|ий |и о|бра|пол|ое |дол|олж|тор| во|раз|ти |я и|я в| ос|ным|нос|жен|все|и р| ег|не |ред|тел|ель|ей |сно|оди|о и|а и|чес|общ|тве|щес| ко|ним|има|как| ли| де|шен|нно|е д|пре|осу| от|тьс|ься|вле|нны|аст|осн|а с|одн|ран|бще|лжн|быт|ыть|сов|нию| ст|сту|ват|рес|е в|оль|ном|чен|иче| ни|ак |ым |что|стр|ден|туп|ду |а о|ля |зов|ежд|нар|род|е и| то|ны |вен|м и|рин|нац|вер|оже|ую | чт|она|обр|ь в|й и| ме|аро|ото|лич|нии|бес|есп|я п|х и|о б|ем |е м| мо|дос|ьны|тоя|еоб|ая | вы| ре|и к|кот|ное|под| та|жно|ста| го|гос|суд|ам |ава|я н| к |ав |авн|ход|льс|нст| бе|ово|и д|ели| дл|для|ной|вов|ами|ате|оро|дно|ен |печ|ече|ка |еск|ве |уще|в к|нен|мож|уда|о д|ю и|ции|ког|вно|оду|жде|и б|тра|сре|дст|от |ьст|е п|нал|пос|о о|вны|сем|азо|тер|соц|оци|циа|ь п|олн|так|кон|ите|обе|изн| др|дру|дов|е о| эт|х п|ни |еди|дин|му ","ukr":"на | пр| і |пра|рав| на|ння|ня | за|ого| по|го |ти |люд| лю|во | ко| ма|юди|льн|их |аво|о н| не|анн|дин| св|сво|кож|ожн|пов|енн|жна| до|ати|ина|ає |а л|ува|не | бу|обо|аці|має| як| ос| ви|є п| та|аль|або|них|ні |ть | ві|ови| аб|бо |а м|ере|і п|без|вин|при|о п|ног|іль|ми |ом |та |ою | бе|ста|воб|бод|до |ост|ті | в | об|ва |о в| що|ий |ся | сп|і с|від|нов|кон|и п|ств|инн|нан|ван| у |дно|она|ват|езп|пер|но |ій | де|ії |ідн|и і|сті|під|ист|нні|ако|ьно| мо|бут|ути|ід |род|і в|що |ава|тис|а з|вно|ну |и с|ої |і д|ду |а в|ів |аро| пе|ний|а п|му |соб|яко|спр|і н| рі|рів|чи |ним|ля |нар|лен| ін|у в|нен|ому|нац|ися|и д|ова|ав |і р| ст|ові|нос| пі|ють|сть|ово|про|одн|у п|віл|овн|вни| ро| її|її | вс|ном|і з| ра| су|мож|чен|ві |буд|іст|івн|оду|а о|ни |сно|ими|а с| со|ьни|роз|и з|зна|я і|о д|х п|е п|о с|и в|дер|ерж|им |чин|рац|ції|і б| од|а н|сі |сту|тер|ніх|ди |їх |нна|так|о з|я н|заб|зпе|у с|спі| ні|е б|ржа|осо|я п|в і|кла|то |а б|осн|рим|сві|віт| дл|для|тва|ами|зах|рес| ре|ков|тор|соц|оці|ціа|і м|ки |тан|абе|печ|ког|ага|гал|ту |ї о|е м|оже|же |удь|ніс|ара|руч|авн|и щ|ною|я в|всі|кої|ини|ь п|осв|і і|ахи|хис|іал|а і|оди|тво|жен|нь |нал|ваг|аги|ги |інш|лив|х в|заг|роб|піл|в я|ком|об |о у|жав|і о","bos":" пр| и |рав| на|пра|на |да |ма |има| св|а с|а п| да| по|а и|је |во |ко |ва | у |ако|о и|но | за|е с| им|аво|ти |сва|ава|о н|и п|ли |или|и с|вак|ост| ко|их |не |а у| сл|вањ| не| др|ње |кој|ије|ња |и д| би|ств|им |у с|јед| ил|сло|лоб|обо|бод| је| ра|при|ање|вје| об|а д|ом |се | су|е и|ју | се|сти|и и|а б|дру| ос|е п|вој|циј|у п|о д|а о|раз|су |ања|а н|ује|ова|у и| од|и у|ло |едн|ни |у о|ово|аци|ити|о п|а к|оје|жав|нос|дје|е о|бра|пре|шти|а ј|про|и о| ка|них|бит| тр|тре| бу|буд|у з|ог |ста|ја |држ|ржа|е д|миј|сво|реб|авн|ија|и н|е б|ђи |пос|ту |аро|род|ред| ње|ба |а з|ка |де |ем |ају|ива|ве |е у|јер|бил|ило| из|ени|ду | до|а т|за |еђу|нар|тва|одн|њег|гов| са|ним|м и|вим| ни|у д|јел|о к|оји| см|дна|уђи| ст|алн|ист|и м|еба|ран|ичн|вно| дј|у н|ода|нак|е к|ан |нов|сно|сту|нст|ено|чно|ани|ном|е н|тив|нац|аве|и б|сми|чов|овј|осн|а р|нап|ови|анс|дно|оја|ног|м с|еди|ара|ој |ну |кри| кр|оду|ико|рад|ник|туп| чо|јек|тво| вј| ми|тељ|обр|жив|заш|ашт|тит|уна|его|под|сам|о о|руг|ји | мо|ву | ов|х п|уду|рив|ење|дст|те | те|а ч|вни|сви|и в|ина|и т|ра |ите|у у|иту|међ|ак |дни|ниц|њу |нич|одр|вољ|ави|г п| оп| та|рим|кла|е т|ао | вр|акв|тно|мје|дуђ|она|ада|сто|оби|едс|то |оди|о с|ку |риј|у м|од |ичк|вен","srp":" пр| и |рав|пра| на|на |ма | по| св|да |има|а п|а и|во |ко |ва |ти |и п|ако| у |а с| да|аво|ост|и с| за|о и|сва| им|вак|је |е с|ава| сл|о н| ко|ња |ом |но | не|не |ли |у с| др|или|сло|обо|кој|их |лоб|бод|им |а н|сти|ств|а о|ју | ил| би|при|а у| ра| је|ог |јед|ње |е п|у п|ни |а д|и у|едн|ити|нос|а к|о д|ање|ова|про| су|и и| ос|вањ|ста|дру|е и|циј|се |род| об|и о|ања|ају|е о|ове| де|аци| ка|ово|ја | ни| од|ве | се|и д| ст|м и|авн|и н|ује|ени|ија|дна|жав|у и|ред|су |нов|оди|вој|тва|е б|оја|што|у о|ара|а б|држ|ржа|одн|ним|ран|пош|ошт|а ј|ка | ов|у у|ду |аве|осн|сно|шти|аро|раз|бит|а з|у з|ења|де | из|них|о п|у д|е д|пре|ву | тр|ту |еђу|нар|гов|без|ичн|за |вно|ло |у н|оји| са|то |ан |нак| ме| ње|чно|сво|вим|нац|ода|ји |ани|ме |ико|ник|ика|е к|пос| кр|тре|реб|нст|сту|е у|ку | до|ашт|тит|алн|дно|њег|ном|ног|м с| вр|о к|ој |чов|анс|ови|о с|бра|те |тав|туп|ено|жив|заш|ем |и м|дни|вар|рив|руг|вољ|ави|штв|е н|као|ао | ли|ст |ило|њу |сме|о ј| см| чо|оду|вре|дст|од |а т|кри| бу|буд|и в| ве|вер|а р|дел|тво|међ|оје|м п|ављ|его|под|ена|уги|ла |пор| оп|руш|ушт|ком|еди|ба |кла| мо|и б|как|акв|рад|ну |век|рим|гла|јућ|уде|вни|еба|е р|сви|м н|иту|тер|ист|а ч|пот|рем|ниц|у в|х п|ива|сам|о о| он|езб|збе","uzn":"лар|ан |га |ар | ва| би|да |ва |ир | ҳу|ига|уқу|бир|ҳуқ|қуқ|ган| ҳа|ини|нг |р б|иш |ни | та|лик|инг|ида|а э|или|лиш|ари|нин|иши| ин|инс|он |ади|нсо|сон|ий |лан| ма|дир|кин|и б|ши | бў|ҳар|бўл| му|уқи|дан|ила|қиг|р и|қла| эг|эга| ўз|а б| эр|эрк|кла|қил|оли|ки |гад| ол|нли|лга|и ҳ|рки|лиг|иги| қа| ёк|ёки|иб |н м| ба| қи|н б|ри |ара|атл| бо|ҳам|лат|бил|ин |р ҳ|а т|ала|лаш|бош|ик |инл| эт|ш ҳ|а ҳ|и в|ниш|тла|эти|тил|мас|а қ|и м|оси|им |ат |уқл|арн|рни|қар|ани|а и|ўли|ги | да|н ҳ|риш|мла|ли |и т| ха|арч|рча|ча |бар|аси|ўз |а а|рла| бу|а м|лин|ати|ият|либ|таъ| ту| ас|тиб|аро|а о|ун |тга|р в|икл| бе|мум|н қ|али| те|сид|ш в|мат|амд|мда| ке|лла|шга|н э|дам|амл|хал|ола| қо|ири|ирл|илл|а ш|рга|иро| шу|тиш| де|умк|мки| эъ|тен|енг|а ў|рда| са|гин|имо|тар|а ё|ур |рак|алқ| ки|аза|к б|ода|сий|а к|тни|ўлг|н в|нда|шқа|зар|н о|и қ| ми|мил|р т| си|ак | ша|ор |кат|ера|сиз|ам |асо|сос|н ў|шла|н т|нид|ошқ|й т|ана|ти |рин|асл|бу |син|дав|илг| со|ас |нга|лак|ино|ъти|муҳ|а в|аш |бор|лим|уни|лли|н и|си |и э| ка| то|а д| жа|ами|қон|на |риг|лма|кер|авл|вла|и а|дек|екл|ят |ака| эм|эма|эът| ҳе|ҳеч|еч |ким|икд|кда|сит|лад|и ў| ни|ник|ага|и о|и с| уч|учу|чун|аъл|ъли|анл|аёт| иш|а у|ўзи|диг|ай |ада|оий|мия|тда|а с","azj":" вә|вә |әр |лар| һә|ин |ир | ол| һү|һүг|үгу| би|гуг|на |ләр|дә |һәр| шә|бир|ан |лик| тә|р б|мал|лма|асы|ини|р һ|ән |шәх|әхс|гла|ары|а м|дир|али|аг |угу| ма|илә|ын |уна|јәт| ја|ара|икд|ар |әри|әси|р ш|рин|әти|дән|нин|н һ| аз|јјә|син| мү|тин|ни |зад|ијј| мә|әрә|мәк|үн |нда|әт |и в|ыны|нын|ндә|ә а|аза|рын|гун|олу| ет| га|лыг|илм|кди|лә |ә ј|әк |лмә|ына|инд|олм| ин|хс |мас|сын|лун|ә б|да |н т|әми| бә|адл|длы|н м|нә |г в|ја |тмә|бәр| он|ә һ|әја|сы |нун|етм|дан|инә|маг|ун |раг|ә в| ва|н а|н б|рлә|ә м|си |әра|н и|ынд| өз|аны|нма|инс|ама|ры |ығы|ли |ил | ал|ала| ди|ә д|ик |ирл|ләт|а б|бил|ыг |мүд| сә|ә и|ны |нла|әлә|дил|алы|ә е|унм|н в|ола|аси|үда|или| дә|нса|сан|угл|ә о|хси| һе|уг |әтл|һәм|әни|ејн|у в| да|тәр|мин|јин|кил|дыр| бу|лан|иш | һа|мәс| ки|ми |лығ|ә г|г һ|и с|даф|афи|фиә|р в| иш| әс|сос|оси|сиа|хал|алг| та| ас| ед|бу |һеч|еч |рә |јан|ы һ|ким|ији|ы о|ина|сиј|әса|сас|а г|јар|лы |түн| ис|ист| со|ал |н ә|ифа|әмә|ә т|мил|илл|лыд|ыды|ыр |әдә|ыгл|лиј|тлә|а һ|мәз| бү|бүт|үтү|ија|иә | үч|үчү|чүн|т в|дах|ахи|хил|р а|ылы|ман|сил| се|сеч|адә|иал|ону|өз | ҹә|миј|әји|н е|еди| ми| нә|а в|мән|рил|әз |илд|раб|абә|шәр|ғын|аја|зам| ни|улм| ха|тәһ|әһс|һси|и һ|сти|гу |вар|ад |там|уғу|з һ|ган|рәф|н д","koi":"ны |ӧн | бы|да | пр|пра|лӧн| мо|рав| да|быд|лӧ |орт|мор|ӧм |аво|ӧй | ве|нӧй|ыд |ыс | не|сӧ |ын |тӧм|во |сь |эз |льн|ьнӧ|тны| ас|д м|ыны|м п| и |сьӧ| по| ӧт|то |бы | эм| кы|тлӧ|эм | от|аль|н э|вер|ртл| кӧ|ӧ в| ко|ерм|ств|воэ| до|тшӧ|ола|ылӧ|вол|ӧс |ы с|ліс|ісь|а с|ас |кыт|тво|кӧр| се|нет|ето|шӧм|ӧдн| ме|мед| ол|злӧ| вы|ӧ д|ӧ к|та |аци|ӧ б|вны|лас| на|з в|ӧрт| во|на |а в|ась|ыдӧ| сы|едб|дбы| вӧ|лан|рмӧ| оз|оз | сі|ытш|оэз|ӧтл|ы а|оти|тир|с о|олӧ| чу|ись| эт|ция|рты|тыс|ы б|кол|ы п| го|сет|кӧт|тӧг|ост|тӧн|н б| со| сь|рті|ӧтн|н н|дз | ке|кер|о с|мӧ |ӧ м| мы|ис |а д|ӧг |дӧс|ест|нӧ |пон|онд|ы н|сис|нац|итӧ|н п|суд| уд|удж|выл| ви|эта|н м| эз|ана|ӧны|с с|ть |орй|йын|сси|рре|рез|ьӧр|ті |сыл|ысл|нда|мӧд|з к|а п|с д|ӧр |чук|укӧ|рны|ӧмӧ|кин|рт |овн|ӧт |она|нал| об|ӧ о|отс|лӧт|й о| тӧ|тӧд|дны|асс|кон|слӧ|ы д|скӧ|с в|с м|ытӧ|езл| ло|быт|осу|эзл|кӧд| ум|умӧ|мӧл|ӧ п|асл|тра| ст|ь м|сьн|ьны|ь к| ов|код|сть|а н|ы к|тла|а к|ӧтч|дор|иал|а о| пы|н к|оль| за|аса| дз|нек|а м|н о|етӧ|ӧ н|ерн| сэ|ы м| де| чт|что|йӧ |ы ч|еки|поз|озь|езӧ|вес|ськ|исӧ|ӧтк|тко|рйӧ|ион|ннё|з д|ӧмы|тсӧ|са |кыд|енн|соц|оци|циа|й д|пыр|зын|нӧя|ӧя |зак|ако| мӧ| а |еск|а б|ан |тӧ |гос|уда|дар|арс|рст|рлӧ|ӧ с| ли|эсӧ|оля|мӧс|ӧсь|дек","bel":" і | пр|пра|ава| на|на | па|рав|ць |ны |або|ва | аб|ацы|ае |аве| ча|анн|льн|ння| ма| св|ала|сва|не |чал|лав|ня |ых |ай |га | як|век|е п| ад|а н| не| ко|ага|пры|кож|ожн|а п| за|жны|ы ч|дна|бод|а а|цца|ца |ваб| ў |мае|ек |і п|ных|нне|пав|а с|асц|бо |ам |ста| са|ьна|ван| вы|одн|го |аць|наг|він| да|дзе|ара|мі |цыя|оўн|тва| ра|і а|то |ад |ств|аві|лен| ас|і с|най|аль|енн|і н|ці |аро|аво|рац|сці|пад|к м| яг|яго|іх |ама| бы|рым|род|і і|ым |энн|што| та|я а|нан|ана|нас| дз|ні | гэ|гэт|а ў|інн|а б|ыць|чын|да |оў | шт|ыі |а і|агу|які|ным|дзя|я п|цыі|і д|ьны|нар| у |ўна|оль| ўс|х п|нац|ыя |ах | ус|ымі|ля |амі|ыма| ні| гр|воў|ў і|адз|эта|іна|ход|о п| ка| ін|ы п|зна|нен|аба|быц|рад|ўле|чэн|ь с|чы |сам| ст|асн|і р|ду |аў |ера|ры |нал|жна|уль|рам| су|аны|кла|аюч|ючы|оду|ую |а р|ўны|маю|ука|кац| дл|для|ь у|пер|е і|нае|ако|і з|гра|адс|ыцц|яўл|і ў|яко|а з|кан| ро|роў|нст| шл|адн|ода|аса|аду|нав|вы |ы і| пе|і м|кі |але|х і|авя|алі|раб|мад|дст|жыц|раз|зе |нна|ані|х н|е м|ада|нні|ы ў|о н|дзі|я я|люб|аюц|бар|дук|ахо|а в|сац|авы|так|я ў|тан|зак|чна|заб|бес|я і|ваг|гул|ім |ган|зяр|ярж|ржа|жав|ве |е а|м п|ацц|од |ены| дэ|ну |у ш|нах|вол|а т|ога|о с| бе|інш|ака|усе|яна|ека|ка |сно|рас| рэ|ь п|ніч|чац|се |і к","bul":" на|на | пр|то | и |рав|да | да|пра|а с|ва |ств|та |а п|ите|но |во |ени|а н|е н| за|о и|ото|ван| вс|не |ки |те | не|ове|о н| по|а и|ава|чов|ия |ане|ни | чо|ие |аво| св| об|а д|е п|век|ест|сво| им|има|и ч|ани|ост|и д|ние|все|тво|или|ли |и с|вот|а в|ма | ра|ват|и п|сек|еки|ек |а о|и н| в |е и| ил|ова|при| се|ето|ата|аци|воб|обо|бод|к и|пре|ат |оди|раз| съ| ос|а б| бъ|ред| ка| ко|лно|ния|о д|бъд|о п|се | от|за |о в|ъде|ята| е | тр|и и|о с|тел|и в|от |ран|е с|нит| де|ка |бра|ен |общ|де |алн|и о|ява|ият|ция|про| до|нег|его|а т|нов|ден|как|ато|ст | из|а ч|тря|ряб|ябв|бва|а р|а к|вен|о о|щес|а з|ено|гов|тве|нац|дър|ърж|ржа|е д|нос|лен|ежд|род|е о|и з|вит| та|зи |акв|ез |она|обр|нар|нот|иче|о т| ни|кат|т с| с |йст|авн| бе|осн|сно|вни|пол|рес|аро|кой|зак|е в|тва|нен|е т|ува| ли|ейс|жав|едв|стр| ст|без|вси|сич|ичк|чки|вид|си |жен|под|еоб|нст| те|ди |ри |сто|ган| дъ|а е|и к| че|ода| ср|сре|ака|чес|и р|и м|т н|одн|о р|лич|елн| ре|бще|ник|ели|че |дви|еме|ира|жда|кри|лни| си|са | то|ой | ме|оет|гра|ход|дру|ичн|еди|дос|ста|дей|я н| къ|ан |ико|чре|й н|ави|нал|пос|тъп|ра |азо|зов|рез|той| со|меж|тно|т в|и у|нет|нич|кон|клю|люч|нео|чит|ита|а у|а м|дно|оят|елс|лит|ине|таз|ази| мо|що |т и|изв|тви|чен","kaz":"ен |не | құ|тар|ұқы| ба| қа|ға |ада|дам|құқ|ық | ад| бо|ына|ықт|қта| жә|ар |ың |ылы|жән|әне|мен| не|лық|на |р а|де |ін |ары|а қ| жа|ан | әр|қыл|ала|ара| ме|уға|н қ|еме|ның| де|іне|ам |асы|тан|лы |әр |да |ста|нды|еке|ығы| өз|ған|анд|ын | бі|мес| қо|бол|бас|ің |ды |етт|ып |ілі|н б|нде|ері|е қ|қық|бір|лар|алы|нем|есе|се |а ж|ы б| ке|тын| ар|е б|бар|ге |ост| ти|тиі|олы|ік |інд| та|аты|сы |е а|дық| бе|ы т|нда| те|ры |ғы |бос|ғын|луы|иіс|сын|рде|рын|еті|қығ|алу|іс |рін|іні|е ж|дар|ім |егі|н к|қар| ер|тті|н ж|ыры|аны|лға| са|уын|ынд|ыны|ы м|рға|ген|ей |тік|тер|нің|ана|уы |аза| от|нан| на|е н|гіз|тық|мыс|ы ә|мны|м б|өзі|сқа|қа |е т|ң қ|еге|ке |ард|нег|луғ|лан|амн|кін|і б|асқ|рал|ті |ру |айд|тта| же|а б|р м|рды|кет|аса|ді |өз |ама|дей|н н|тыр|ауд|ігі|лып| мү| ал|зін|лік|дай|мет|жас|бер|тең|арқ|рқы|а о|е ө|қам|елі|рлы|ы а|а т|дер|біл|р б|еле|қор|ден|тін|уда| тү| жү|кел|і т|ір |лге|ы ж|ең |а д|тты|оны|гін| ха|ркі|лде|е м|н т|түр|оға|ікт|кті|зде|жағ|уге|ауы|рыл|ұлт|лтт| ос|осы| то|ция|ы е|н а|ау | ау|ені| ел|н е|оты|шін|ыс |қты|імд| да|сіз|лма|кім|ң б|лім|қат|зі |орғ| әл|хал|ерк|ек |құр|тте|е д|ағд|ғда|елг| ас|ірі| ұл|ағы|амд|тал| со|рып|ылм|лін|ным|мас|сыз|дан|із |ірд|ай |гі |сты|ым‐|ң ж|с б"},"Arabic":{"arb":" ال|ية | في|في |الح| وا|وال| أو|ة ا|أو |الم|الت|لحق|حق |كل |لى |ان |ة و|الأ| لك|لكل|ن ا|ها |ق ف|ات |مة |اء |ما |و ا|ون |ته |الع|أن |ي ا|ي أ|شخص|ة ل|الإ| عل| أن|م ا|حري|الا|من |على|حقو|قوق|ت ا| شخ|لا |ق ا| لل|فرد|رد | أي|أي |رية| كا|د ا| ول| من| إل|خص |ا ا|وق |نسا|ل ف|ا ي|ه ا|ة أ|كان|ن ي|امة|جتم| حق|الق|ام |دة | لا|ل ش|إنس|سان|ين |ة م|اية|ن ت|ا ل|ذا | فر|ن أ|هذا|لة |اً | عن|ى ا|لتع|اسي| دو| حر|ع ا|ه ل|لك |ه و|ترا|له |ماع|د أ|ي ح|إلى|الج|الد|، و| با|ن و|ي ت|نون|لعا|مع | هذ|ة ع|لحر|يات|عية|ص ا| وي|لإن|لأس|أسا|ساس|سية|بال|ي و|حما|ماي| إن|الف|انو|ير |رام|ا و|عام|دول|مل |الو| مت| له|الب|ساو|ة ب|هم |ع ب|علي|ك ا|لقا|قان|تما|ة ت|ى أ|ول |ة ف|ا ب|اد |الر|ل و|ل ا|انت| قد|لجم|لمي|لتم|تمت|اعي|ليه|لمج|ه أ|ا ك|ال |لأم|لمت|لإع| يج|لدو|ق و|ريا|يه |رة |ن ل|دون|تمي|كرا|يد |ذلك| يع|ر ا|تعل|عال|تسا|لاد|اة |قدم|متع|تع |اجت| كل|مان|غير|اته|م و|مجت|تمع| مع|مم |لان|يجو|جوز|وز |عمل|دم |فيه|الض|ميي|ييز|متس| عا|أسر|ن م|معي|لات| مس|لاج|عن |ي إ|ليم|يم | أس| تع|يز |مية|جمي|ميع|الش|اعا|ة، |الس|شتر|لمس|لما|ني |لي |يها|ملا|ود |تي |لضم|ضما|اعت|ر و|اق |ي م|ي ي| بح| تم|تنا|أمم|تحد|حدة|إعل|علا|ه ع| جم|عة |م ب|ولم|الن|ل إ| به|ب ا|اوي|قد |أية|قيد|د ب|اك |وية|إلي|لزو|د م|مست|كاف|وله|ه ف| ذل| وس|لحم|نت | أم| مر|مرا| وأ| وع","urd":"ور | او|اور|کے | کے| کی|یں | کا|کی | حق|ے ک|کا | کو|یا |نے | اس|سے |ئے |کو | ہے|میں| می|ے ا| کر| ان|وں | ہو|اس |ر ا| شخ|شخص|ی ا| جا| سے|حق |ہر |خص |ے م|ام | یا|ں ک|ہیں|سی | آز|آزا|زاد|ادی|ائے|ہ ا|ص ک|ا ح|جائ|ہے |کہ |ر ش|ت ک| پر|ی ک|م ک|۔ہر|پر |ا ج|ان |دی |س ک|ق ہ|ہے۔|ر م|ں ا|ی ح|و ا|ار |ری |ن ک|کسی|حقو|قوق| مع|ے گ|ی ج|وق | ہی|ر ک|سان|نی |کرن| حا| نہ|تی |ی ت| جو|ئی |انس|نسا| کہ|اپن|ل ک|جو | اپ|ے ب|یت |نہ |ہ ک| مل|ہو |می |ل ہ|رے |ی ش|رنے|ے ل|ے ہ| کس| ای|ا ا|۔ ا|حاص|اصل|صل |معا|نہی|ی م|وہ |یں۔| تع|انہ|ق ک|د ک|ی ب|ات |ملک|ایس|ی ہ| بن| قو|قوم|کیا|ے، |عاش|اشر|ر ہ| گا| دو|یہ |وام|دہ |ں م|ا م| من|بر |انی|ے۔ہ|ر ب|دار|ے ج| وہ| لئ|لئے| عا|اقو|قوا|مل |ائی|علا|اد |ی س| جس|ر ن|ے ح|ہ م|کر |و ت|لیم| و | قا|انو|ا ہ|جس |یوں| یہ|لک |ریق|ے۔ |نیا|تعل| گی|گی |ر پ|دوس|ی آ|یم |، ا| اق|وئی|یر |پنے|ے پ|م ا|گا۔|یاد| رک|علی| مس|ی، |ین |ن ا|انے|وری|ی ن|لاق|ر ع|ون |خلا| با|ا س| سک| دی| چا|رائ|ومی|ہ و|نا |اری| بر|رکھ|ندگ|دگی|ر س|رتی| بی| شا|س م|ق ح|ادا| مم| ہر|ا پ|و گ|وسر|سب | پو|قان|نون| بھ|ے خ|اف | اع| مر|یسے| پی|غیر|ے س|ال |ت ا|، م| مح|ں، |بنی| ذر|ذری|ریع|ہوں| عل|تما|مام|ونک|نکہ|دان|پنی|ر ح| ام|من |عام|پور| طر|ے ع|ائد|بھی|ھی | مت| مق|د ا| خل|لاف|اعل|کوئ| لی|و ک|ے ی|ا ک|ر آ|دیو|اں |چون|، چ|یاس|برا|کرے|ی ع|ر ج","fas":" و | حق| با|که | که|ند | در|در |رد | دا|دار|از |هر | از|یت | هر|ر ک|حق |د ه|ای |ان |د و| را|ود |ین |یا |ارد|کس |ی و|را | یا| کس| بر|باش|د ک|ه ب| آز|آزا| خو|ه ا| اس|د ب|زاد|ار | آن|ق د|شد |حقو|قوق|ی ب|ه د|ده |وق |ید |ی ک|ر م|خود|ور |و ا|رای|اشد|ام |تما| اج|ری |ادی|س ح|دی |اید|است| ان|نه |و م|د ا|ر ا| بی|با |انه|ی ا|د، |ون | تا| هم| نم|ات |مای|ا ب|ایت|ر ب| بش| کن|انو|اسا| مر|ست | مو| مل|برا|وان|این|جتم| می|ورد| شو| ای|ن ا| اع| به|ت و|، ا|اجت|ماع|عی |ا م|ائی|ئی |و ب|نی |ملل|ت ا|و آ|آن |بشر| زن|ی، |کند|ن م|ن و|بای|شود|ی ی|های| من|شور| مس|کار|ت ب| بد|دان|اری|اعی|د آ|مل |ز آ|یگر|ی ر|ت م|مور| گر|گرد| مق|توا|ی م|علا|یه |ن ب|میت| شد| کش|کشو|ه و|ق م|د ش| مج| اح|ن ت|و د| حم|لی | کا|ت ک|هٔ |نون|مین|دیگ| عم|انی|ر خ|ه م| مت|ن ح|ی د|لام|رند|اه |نجا|بعی|نوا|ساس|ساو|د م| آم|ادا|وی |گی |هد |ا ک|اد |ی ح| مح| قا|قان|می |یده|مقا|لل |ر ش|ق و|اعل|ا د|شده|ع ا| بع|اسی|د ت|همه|سان|شر | عق|ر و|دگی|حما|ا ه|خوا|‌ها|ه‌ا| او|او |اده|اً |ر ت| دی|ومی| شر|نمی|بر | هی|هیچ|یر |ز ح|مند|بین|تی |جا |عقی|یتو|م و|مسا|و ت|سی |اوی|بهر|م م|ر د|انت|زش |ارن|زند|ندگ|و ه|رفت|رار|واه|ا ر| بو|تأ|أم|ٔمی|ران|عمو|موم|ی ن|اند|ل م|ردد|ه ح|عیت| فر| بم|دیه|ا ا|نما|آنج|کلی|احد|حدی|مال| تع|و ح|مرد|ت، |ملی|ق ا|واد|م ا|د د| خا| ار|اشن|شند","zlm":" دا|ان |دان| بر| او|ن س|له | ڤر|كن |ن ك|دال|ن ا|ن د|رڠ |حق |يڠ | كڤ|ارا| يڠ|أن |تيا|ڤد |ورڠ|ڠن |اله|ياڤ| تر|ولي|ن ڤ|اور|كڤد|برح|رحق|ين |ستي|اڤ |را |ليه| ات|ه ب| ست|يه |اتا| عد|عدا|ن ب|تاو|ڤ ا|او |ن ت|بيب|يبس|سي | كب|ه د|ن م| من| سو| سا| حق|ق ك|اسا|سام| تي|ن ي|الم|لم | اي|ن، |رن |اتو| ما|د س| با|باڬ|نڬا|ڬار| مم|كبي|بسن|سن |اين|ڠ ع|ڽ س|چار| سب|ي د|ندق|د ڤ|اڽ |اڬي|سبا| ڤم| د |نسي|ا ڤ|هن |قله|يند|تا |ي ا|ام | بو|ڬي | نڬ|اون|تن |وان|ا س|مأن|أنس|ڠ ب| كس| سم| سچ|سچا|ا ب|بول| مأ|سيا|ساس|اسي| ڤڠ|بڠس| دڠ|دڠن| ڤو|ڤا |ت د|رتا| هن|هند|دقل|ي م| اس|ادي|نڽ |ات |تره|رها|هاد|ادڤ| لا|تي |ڤرل|مان|، ك|بار|ارڠ|ق م|ڤون|ون |، د|اي |اول|ق٢ |٢ د|ڠسا|تو |يكن|وين|ن ه|اكن|يأن|وڠن|دڤ |وا |ا د|ن٢ |نتو|وق | سس|ماس|اس |ه م|مرا|ندو| ان| بي| مڠ|ڠ٢ |ائن|رات|يك |حق٢|برس|اد |ي س| كو|مڤو|ري | مل|وات|واس|ڤمب|، ت| سر|سرت|امر|سمو|اڬا|رلي|لين|دوڠ|ل د|تار|ڠ م|، س|وند|ي ك|لوا|سوا|ارك|تيك|ڤري|رسا|ياد|ريك|ا، |ونت|ڠ ت|ترم|ڤرا|سأن|اڤا|ي ڤ|ا ا| در|رأن| ڤن|سوس|ورو|ڠ س|لائ| بڠ|٢ ب|توق|دير|يري|وكن|جوا|هار|ندي|ارأ|وه |كرج|ڠڬو|ي، |موا| كأ|اجر|جرن| به|بها| مر|راس| كم|و ك|نن |ڤرك|ندڠ|دڠ٢|ا م| سڤ|ا٢ |سات|ق ا|ڤ٢ |شته|تها|سال|ينڠ|سسي|وهن|مول|منو|وبو| دل|وار|كور|د ك|ا ك| ڤل|لاج|ڠ ا|مبي|نتي|تيڠ|وسي|يال|ال |انت|نتا|بس |هڽ |ن ح|ه ا|كڤر|ڠ د|م س","skr":"تے |اں | تے|دے |دی |وں | دا| کو| حق|کوں|ے ا| دے|دا | دی|یاں| کی|ے ۔|یں |ہر | ۔ | ہے|ہے | وچ|کیت| ان|وچ | شخ|شخص|ال |ادی| حا|اصل| نا|ے م|خص |ں د|حق |حاص|صل |یا | ای|ل ہ|اتے|ق ح|ے و| ات|ں ک|سی |ہیں| مل|ی ت|نال| از|ازا|زاد| او|حقو|قوق|ار |ا ح| ۔ہ|۔ہر|ر ش|ے ج|ص ک|وق |دیا|نہ |یند|ندے| یا| کر|ئے | جو|کہی|ی د|انس|نسا|سان|وند|ی ا|یتے|و ڄ|ڻ د|یسی| وی|ا ا|ملک|ے ح|ے ک| ہو|ے ب|ں ا|ا و|ئی |ر ک|تی |آپڻ|وڻ |ندی| نہ|ویس| آپ| جی|اون| کن|انہ|ن ۔|جو |ی ن|ان | کہ|ری | تھ|ے ہ| ڄئ|۔ ا|ے ن|ی ۔|ڻے | ہر|ام |دہ |ں ت|ں و|ں م|تھی| من|کو |ی ح|کنو|نوں|ہاں| بچ|ے ت|رے |ون |ی ک|ور |ہکو|نی |یاد|ت د|یتا|ی ہ|نہا|ن د|اری|تا |لے |ڄئے|ے د| ہک| قو|پڻے|می |ی م|قوا|وام| ون|ق ت|اف |ل ک|اے | تع|ین |چ ا|خلا|ل ت|لک |ہو |ارے| و |انی|جیا|ے س| سا|ن ا|دار|یت |ی ج|ئو |ی و| اق|علا|کرڻ|ونڄ|ات | اے|ر ت|ق د|الا|ہوو| چا| رک|بچئ|چئو|وری| وس| لو| پو|پور|قنو|نون|ہ د|ے خ|ایہ|و ا|این| ڋو| خل|لاف|ڻ ک| جا| ۔ک| عز|عزت|ا ک| مع|ے ع|یر |قوم|ں آ|او |اد |ب د|ریا|مل |رکھ|وسی|سیب|یب |کاں| قن|اقو|رڻ |وئی|ں ج|ا ت|ل ا|زت |ت ت|ر ا| سی|لا |وے |ہی |ا م|ے ر|تعل|ں س| سم|یوڻ|ر ہ|ڻی |اوڻ|لوک|م م| مت|متح|تحد|حدہ|ایں| اع|ے ذ| جھ|جھی|کوئ|کار| کھ|ہ ا|ھین|م ت| کم| ہن|ہن |ی، |ں ب|د ا|سار|ن ک|علی|لیم|نڄے|ڄے |ی س|یہو|ھیو|ائد|و ک|ائی|ے ق| مط| سڱ|سڱد| ذر|ذری|ھیا|نے |کیو","pbu":" د | او|او |په | په| چې|چې | حق|ي ا|ره |ې د|نه |و ا|و د|ه ا|هر |ه و| څو|ه د|ري |حق |ي چ| کښ|څوک|وک |وي | شي|له |غه |کښې|ښې | سر| لر|لري|و پ|ه پ|ټول|لو |يت |سره|کړي|ي۔ه|ه ک|ي، |ر څ| ټو|ق ل| له|يا | هغ| از|۔هر|د م|ازا| کړ|دي |هغه| کو|نو |د ا|حقو|قوق|زاد|ه ت| پر| وا|ولو|خه |ه ه| وي| څخ|يو |ه م| يا|ول |د د|څخه| دي|ه ش|کول|ي د|ته |ه ب|ګه |و ي|ړي |اد |و م|ونو|شي۔|د ه|دې |خپل|واد| مل| هي| نه| تر| تو|د پ|ک ح|ې پ|ان |ولن|ني |ه ح|يوا|تون| با|ادي| هر| يو| مس|ي و|ې ا|لي |ې و|ي پ|د ت|يد |امي|وقو|شي |ړي۔|دان|انه|وګه| عم|هيو| دا| دغ|قو |ي۔ |ه چ|ار | خپ|بشر|توګ|اند|هغو|لني|باي|ايد| ده|ه ن|وي،|و ه|، د|ي ح| بر|غو | تا|ين |ايت| شو|شوي|دغه|مي |م د|دهغ| من|و ح| لا| ډو|ډول|بعي|پل | بش| ته|اوي|ه ګ|د ب|نيز|پر |ده |و ت|انو|نون|ون |ومي|رو |هيڅ|يڅ |ي ت|علا|ه ي|ه ل|وم |کار|ساو|تر |وند|ونه|يه |ن ک|مين|موم|و ک|اتو| اع|اعل|لام|اره| ځا|مسا| ان|د ټ|ټه | ګټ|ي ش| بي| مح|قان| پي|و ر|اخل|تو |اسي|سي | وک|ديو|ځاي|عقي| ور|لان|ل ت|ه س|ې چ| وس|و س|وون| ژو|ژون|يز |وکړ|کي |ن ش|ندې|ک د| اس| قا| نو|عمو|لتو|و ب|پار|ولے|لے |ې ک| عق|۔هي|څ څ| را|بل | بل|وسي|ت ا|ر د| ار| هم|هم |دو |ي م|مان|اسا|رته|شري|ا د|ر م|ښوو| رو|ګټه| غو|ونک| وړ|مل | شخ|شخص| اج|د ق|تام|وق |ملت|و ن|من |و څ|ا ب|ن ا|قيد| چا|ل ه| تب|تبع|ر پ|حما| کا|د خ|ر س|اني|نځ "},"Devanagari":{"hin":"के |प्र| के| और|और |ों | का|कार| प्|का | को|ं क|या |ति |ार |को | है|िका|ने |है |्रत| अध|धिक|की |अधि|ा क| कि| की| सम|ें |व्य|्ति|क्त|से | व्|्यक|ा अ|में|मान|ि क| स्| मे|सी |न्त|े क| हो|ता |यक्|ै ।|क्ष|त्य|िक | कर| या|्य |भी | वि|रत्|ी स| जा|र स|्ये|येक|ेक |रों|स्व|िया|ा ज|त्र|क व|र ह| अन|्रा|ित |किस|ा स|िसी|ा ह| से|ना |र क| पर| सा|गा |देश| । | अप|ान |समा|्त |े स|्त्|ी क|ा प| ।प|वार| रा|न क|षा |अन्|।प्|था |ष्ट| मा|्षा|्वा|ारो|तन्| इस|े अ|ाप्|प्त|राष|ाष्|्ट्|ट्र|्वत|वतन| उस|राप|त ह|कि | सं|ं औ|हो | दे|किय|ा ।|े प|ार्| भी|करन| न |री |र अ|जाए|क स|ी प|िवा|सभी|्तर|अपन| नि| तथ|तथा|रा |यों|े व|ाओं|ओं |पर |सम्|्री|ीय |सके|व क| द्|द्व|ारा|िए | ऐस|रता| सभ|िक्|ो स|रक्|र प|माज|्या|होग|र उ|ा व|रने| जि|ं म|े म|ाव |ाएग| भा|पने| लि|स्थ|पूर|इस |त क|ाने|रूप|भाव|लिए|े ल|कृत|र्व|ा औ|ो प|द्ध| घो|घोष|श्य|ेश |। इ| रू|ूप |एगा|शिक|े ब|दी | उन|रीय|रति|ूर्|न्य|्ध |णा |ी र|ं स|र्य|य क|परा| पा|े औ|ी अ|ेशो|शों|ानव|ियो|म क| शि| सु|तर्|जो |्र |तिक|सार|चित| पू|ी भ|जिस|ा उ|दिय|राध|चार|र द|विश|स्त|ारी|परि| जन|वाह|नव | बु|म्म|ले |्म |र्ण| जो|ानू|नून|िश्|गी |साम|ोगा|रका|्रो|ोषण|षणा|ाना|ो क|े य| यह|चूं|ूंक|ंकि|अपर|कोई|ोई |ाह |ी म| ।क|ी न|ा ग|ध क|े ज|न स|बन्|निय|याद|ादी|्मा| सद|जीव|हित|य ह|कर |ास |ी ज|ाज |ं न|्था|ामा|कता","mar":"्या|या |त्य|याच|चा | व |ण्य|प्र|कार|ाचा| प्|धिक|िका| अध|च्य|अधि|ार | आह|आहे|हे |ा अ| स्|्रत|स्व|्ये|ा क| कर|्वा|ता |ास | त्|ा स|त्र|ा व|िक |यां|ांच|वा |मान| या|्य | अस| का|रत्|ष्ट|येक|ल्य|र्य|र आ|ाहि|क्ष| सं| को|कोण|ामा|ाच्|ात | रा|ा न|ेका| सा|ून |ंत्| मा|चे |तंत|राष|ाष्|्ट्|ट्र|ने |े स|वात|करण| कि|किं|िंव|ंवा|व्य|ा प|कास|ना | मि| सम|क्त|ये |मिळ|समा|र्व|ातं|्र्|े प| जा|यास|व स|ोणत|ीय |ा आ|रण्|काम| दे|ांन|े क|ा म|रां| व्|्यक|हि |ान | पा|्षण|िळण| आप|ार्|ही |े अ|ा द|ली |ळण्|े व|ची | आण|ंच्| वि|ारा|्रा|ाही|मा |ा ह|द्ध|्री| नि|णे |ला | सर|सर्| नय|नये|ाचे|ी अ|्व |ंना|षण |आपल|ले |माज|बंध|ी प|्त |त क|लेल| हो|ील | शि|शिक|ध्य|ी स|आणि|णि |े ज|देश|न क|ानव|पाह|हिज|िजे|जे |रीय|क स|व त|यक्|ा ज|यात|िक्|त स|े आ|रक्|पल्|वी |संब|ंबं|न्य| ज्|ज्य|स्थ| के|्वत|असल| उप|य अ|क व|त्व|ीत |त व|केल|ाने|य क|णत्|ासा|रति|भाव|े त|व म|ेण्|िष्|साम|क आ|सार|कां|याय|साठ|ाठी|ठी |े य|ंचा|करत|रता|र व|्ती|ीने|याह|र्थ|च्छ|ी आ|स स|ोणा|संर|ंरक|त आ|ंधा|ायद|ी व|ेशा|ित | अश|जाह|हीर|तील|ा ब| अथ|अथव|थवा|ी म|स्त|ा त|ती |नवी|ाची|िवा|देण|याव|ांत|ण म|व आ|य व| हक|हक्|क्क|ा य|ेत |वस्|पूर|ूर्|ारण|द्य|ंचे|ेले|ेल्|कृत|शा |तीन| अर|अर्|्थी|थी |्रद|राध|यत्|ाला|तिष|ष्ठ|श्र|ण स|रून| आल|्ध |सले|े म| शा|्रक|रका|तिक|ाजि|जिक|्क |ाजा| इत|इतर|तो |साध","mai":"ाक |प्र|कार|धिक|िका|ार | आʼ|आʼ |्रत|ेँ |्यक|क अ|िक |्ति| अध|व्य|अधि|क स| प्| व्|क्त|केँ|यक्|तिक|हि | स्|न्त|क व|मे |बाक| सम|मान|त्य|क्ष| छै|छैक|ेक |रत्|स्व|त्र|्ये|येक| अप|ष्ट|सँ |र छ|ैक।| वि| एह|वा |ित |ति |िके|ट्र| जा|्त्|राष|ाष्|्ट्| हो| सा| रा|्य | अन|अपन| कर|।प्|कोन| अछ|अछि|क आ|्वत|वतन|तन्| पर|था | को| वा|ताक|ार्|एहि|पन |ा आ|नहि| मा|्री|समा|नो |रता| दे|्षा|रक |देश|क प| नि| नह| कए| का|छि |न्य|्त |ि क| सं|ोनो| तथ|तथा|्वा|ारक|ान्|ल ज|ा स|ान |िवा|क ह|ीय |र आ| आ |्या|ँ क|वार|ता |ना |जाए| जे|करब| एक| आओ|आओर|ओर |ानव|परि|ँ अ|रीय|ा प|धार|ारण|स्थ|माज|साम|ामा|्रस|र्व|कएल|घोष|अन्|्तर|त क|स्त| सभ|्रा|रण |ँ स|द्ध|एबा|नक |ा अ|िक्|षा |रक्|क।प|ʼ स|चित|पूर|ʼ अ|यक |ाहि|रबा|क ज|कर | घो|ोषण|सम्|र प| हे|हेत|ेतु|तु |शिक|त अ| उप| अव|ूर्|एल |िमे|एहन|हन |षणा|ाधि|सभ |च्छ|अनु| शि|ेल |रूप|क क|भाव|प्त|्ध |ि ज|वक | सक|र अ|रति|निर|िर्|जाह|हो |ँ ए|े स|होए|चार|ण स|र्य|ि आ|सभक|्रक|ाजि|जिक|ाप्|र्ण|त स|क उ|रा |त आ|एत।|त ह| जन|ैक |विव|ोएत|वाध|क ब|री |न प| भा|य आ|राप| ओ |न व|ʼ प|्ण |न अ|कृत|िश्|ा व|कान|ारा|ि स|हु |रसं| उद|उद्|श्य|ाएत|िसँ|जे |ि घ|जेँ| कि|कि |ेश |केओ|ेओ |त्त|सार|क ए|रिव|वास|य प|्थि|विश|ओ व|यता|पर | भे|क ल|नवा| बी| सह|िष्|ि द| रू| ले| पए|पएब| अथ|अथव|थवा|क र|न स|हिम|ास |ए स|ि अ| दो|षाक| पू| द्|द्व|धक ","bho":" के|के |ार |े क|कार|धिक|िका|ओर | आओ|आओर| अध|अधि|े स|ा क|े अ| सं|र क| हो| मे|में|ें |र स|िक | कर|र ह|ा स| से|मान| सम|न क|रा |से |क्ष|े ब|नो |वे | चा|ता |्रा| रा|ति |खे |चाह|ष्ट| सा|राष|ाष्|प्र| का| मा|्ट्|ट्र|े आ| प्| सक| स्| जा| बा|पन |था |त क|ि क|कौन|ौनो|करे|होख| कौ|ेला|्त |ाति|ला |तथा| आप| ओक|आपन|रे |र म| तथ|सबह| हव|हवे|र आ|कर |ोखे|जा |े ओ|तिर|िर |बहि| ह।|ही |सके|केल|ना |हे | और|त्र|ान | खा|खात|।सब| पर|े म|े च|ा आ|षा |ावे|र ब|न स|ओकर|ी क| लो|ाहे|ल ज| सब|्षा|संग|ं क|ित |माज|मिल|े ज|रक्|हिं|िं |ा प|वे।|े ह|ाज |और |स्व|ंत्|ला।|ो स| नइ|नइख|इखे|हु |ानव|िया|्र |लोग|क स|समा|कान|क्त| जे|करा|्रत|े। | ओ |ी स|े न|्री|रीय|पर |े उ|ाही|ानू|नून|स्थ|े व|ाम |्वत|वतं|तंत|रता|केह|या |े ख|। स| सु|प्त| दे|े त|साम|र अ|ीय |र प|बा।|ा।स|सभे|भे | वि|योग|दी | आद|ून |ा म|्य |व्य|ए क|ेहु| या|री |र न| बि|राप|ाप्|ु क| मि|यता|आदि|दिम|मी |नवा|ाधि|े द|चार|ले | नि| पा|ोग | ही| दो|ादी|हि |तिक|पूर| इ |ा ह|्ति|ल ह|खल |ाव | अप| सभ|िमी|देश|ुक्| सह|शिक|िक्|ि म|जे |षण |ाजि|जिक|क आ|्तर|े प| उप|जाद|े भ|्या| जर|म क|ेकर| अं|े र|।के|न आ|सब |साथ|ंगठ|गठन|ठन |रो | जी|ा। |्म |ी ब|हो |न ह|े ल|न म|वाध|निय|ेश | शि|ज क| ले|ने |बा |संर|ंरक|्षण|ामा|य क|ास |उपय|पयो|दोस| आज|आजा| भी| उच|चित|र व| पू| घो|घोष| व्| शा|िल |ा।क| कई| को|होए|्थि","nep":"को | र |कार|प्र|ार |ने |िका|क्त|्यक|धिक|व्य| गर| प्|्रत|अधि|्ति| अध| व्|यक्|मा |िक |ाई |त्य|न्त|लाई|मान| सम|त्र|गर्|र्न|क व|्ने| वा|वा | स्|रत्|र स|्ये|येक|ेक |छ ।|तिल|हरू|क्ष|ो स| वि|ा स|्त्|िला| । |स्व|हुन|ति | हु| मा| रा|ले |र छ| छ |ष्ट|समा|वतन|तन्|्ट्|ट्र| सं|ो अ|राष|ाष्|्वत|नेछ|ुने|ान |े अ|ता | का|्र |हरु|गरि|ाको|िने| अन|ना | नि|े छ| सा|क स|तिक|ित |नै |र र|रता|रू |था |ा र|कुन|ुनै|ा अ|स्त|्त | छै|छैन| तथ|तथा|ा प|ार्|वार| पर|ा व|एको|्षा|परि|रक्|। प|माज|रु |द्ध|का |्या|ो प|ामा|्रा|सको|ेछ | ला|धार|नि |ाहर|देश| यस|र ह|िवा|सबै|र म|भाव|्य |र व|रहर|रको|न अ|सम्|े र|संर|ंरक|अन्|ताक|्रि|्वा|ा भ|त र| कु| त्|री |ो व|न स|रिन|लाग|ारक|ानव| सब| शि|शिक|िक्|ै व|रिय|रा |ा न|पनि|ारा|श्य|ा त|्यस|यस्|ाउन|्न | अप|चार|ाव | भए|ारम| सु|ुद्|षा |ि र|रूक| सह|बाट|्षण|साम|्तर|िय |रति|ो आ|र प|ो ल|कान|द्व|ुक्|ान्| उप|द्द|ुन |ैन |ेछ।|ैन।|ारह| भे|ागि|गि |निज|वाह|्ध |र्य| आध|रमा|ा म|नको|बै |न ग|ाट |।प्|ाजि|जिक|त्प|िको|ाय |र त|ात्| उस|ूर्| अभ| अर|जको|स्थ| आव|त स|ित्| पन|िएक|्तो|तो | पा|ा ग| भन|ानु|परा|राध| छ।| मत|अपर|भेद|ि स|रुद|ो ह|रिव|रका|न्य| जन|यता|े स|र्म|ारी| दि|क अ|नमा|ूको|हित|ा क|क र|र अ|ा ब|उसक|पूर|त्व|र्द|सार|णको|युक|।कु|विध| घो|घोष| सक|भएक|नुन|्यह|ि व|ो भ| पु| मन|नी |विच| दे|राज|विर|िरु|काम|र न|यहर|िश्"}}')},function(t,e,n){"use strict";var i=new String("万与丑专业丛东丝丢两严丧个丬丰临为丽举么义乌乐乔习乡书买乱争于亏云亘亚产亩亲亵亸亿仅从仑仓仪们价众优伙会伛伞伟传伤伥伦伧伪伫体余佣佥侠侣侥侦侧侨侩侪侬俣俦俨俩俪俭债倾偬偻偾偿傥傧储傩儿兑兖党兰关兴兹养兽冁内冈册写军农冢冯冲决况冻净凄凉凌减凑凛几凤凫凭凯击凼凿刍划刘则刚创删别刬刭刽刿剀剂剐剑剥剧劝办务劢动励劲劳势勋勐勚匀匦匮区医华协单卖卢卤卧卫却卺厂厅历厉压厌厍厕厢厣厦厨厩厮县参叆叇双发变叙叠叶号叹叽吁后吓吕吗吣吨听启吴呒呓呕呖呗员呙呛呜咏咔咙咛咝咤咴咸哌响哑哒哓哔哕哗哙哜哝哟唛唝唠唡唢唣唤唿啧啬啭啮啰啴啸喷喽喾嗫呵嗳嘘嘤嘱噜噼嚣嚯团园囱围囵国图圆圣圹场坂坏块坚坛坜坝坞坟坠垄垅垆垒垦垧垩垫垭垯垱垲垴埘埙埚埝埯堑堕塆墙壮声壳壶壸处备复够头夸夹夺奁奂奋奖奥妆妇妈妩妪妫姗姜娄娅娆娇娈娱娲娴婳婴婵婶媪嫒嫔嫱嬷孙学孪宁宝实宠审宪宫宽宾寝对寻导寿将尔尘尧尴尸尽层屃屉届属屡屦屿岁岂岖岗岘岙岚岛岭岳岽岿峃峄峡峣峤峥峦崂崃崄崭嵘嵚嵛嵝嵴巅巩巯币帅师帏帐帘帜带帧帮帱帻帼幂幞干并广庄庆庐庑库应庙庞废庼廪开异弃张弥弪弯弹强归当录彟彦彻径徕御忆忏忧忾怀态怂怃怄怅怆怜总怼怿恋恳恶恸恹恺恻恼恽悦悫悬悭悯惊惧惨惩惫惬惭惮惯愍愠愤愦愿慑慭憷懑懒懔戆戋戏戗战戬户扎扑扦执扩扪扫扬扰抚抛抟抠抡抢护报担拟拢拣拥拦拧拨择挂挚挛挜挝挞挟挠挡挢挣挤挥挦捞损捡换捣据捻掳掴掷掸掺掼揸揽揿搀搁搂搅携摄摅摆摇摈摊撄撑撵撷撸撺擞攒敌敛数斋斓斗斩断无旧时旷旸昙昼昽显晋晒晓晔晕晖暂暧札术朴机杀杂权条来杨杩杰极构枞枢枣枥枧枨枪枫枭柜柠柽栀栅标栈栉栊栋栌栎栏树栖样栾桊桠桡桢档桤桥桦桧桨桩梦梼梾检棂椁椟椠椤椭楼榄榇榈榉槚槛槟槠横樯樱橥橱橹橼檐檩欢欤欧歼殁殇残殒殓殚殡殴毁毂毕毙毡毵氇气氢氩氲汇汉污汤汹沓沟没沣沤沥沦沧沨沩沪沵泞泪泶泷泸泺泻泼泽泾洁洒洼浃浅浆浇浈浉浊测浍济浏浐浑浒浓浔浕涂涌涛涝涞涟涠涡涢涣涤润涧涨涩淀渊渌渍渎渐渑渔渖渗温游湾湿溃溅溆溇滗滚滞滟滠满滢滤滥滦滨滩滪漤潆潇潋潍潜潴澜濑濒灏灭灯灵灾灿炀炉炖炜炝点炼炽烁烂烃烛烟烦烧烨烩烫烬热焕焖焘煅煳熘爱爷牍牦牵牺犊犟状犷犸犹狈狍狝狞独狭狮狯狰狱狲猃猎猕猡猪猫猬献獭玑玙玚玛玮环现玱玺珉珏珐珑珰珲琎琏琐琼瑶瑷璇璎瓒瓮瓯电画畅畲畴疖疗疟疠疡疬疮疯疱疴痈痉痒痖痨痪痫痴瘅瘆瘗瘘瘪瘫瘾瘿癞癣癫癯皑皱皲盏盐监盖盗盘眍眦眬着睁睐睑瞒瞩矫矶矾矿砀码砖砗砚砜砺砻砾础硁硅硕硖硗硙硚确硷碍碛碜碱碹磙礼祎祢祯祷祸禀禄禅离秃秆种积称秽秾稆税稣稳穑穷窃窍窑窜窝窥窦窭竖竞笃笋笔笕笺笼笾筑筚筛筜筝筹签简箓箦箧箨箩箪箫篑篓篮篱簖籁籴类籼粜粝粤粪粮糁糇紧絷纟纠纡红纣纤纥约级纨纩纪纫纬纭纮纯纰纱纲纳纴纵纶纷纸纹纺纻纼纽纾线绀绁绂练组绅细织终绉绊绋绌绍绎经绐绑绒结绔绕绖绗绘给绚绛络绝绞统绠绡绢绣绤绥绦继绨绩绪绫绬续绮绯绰绱绲绳维绵绶绷绸绹绺绻综绽绾绿缀缁缂缃缄缅缆缇缈缉缊缋缌缍缎缏缐缑缒缓缔缕编缗缘缙缚缛缜缝缞缟缠缡缢缣缤缥缦缧缨缩缪缫缬缭缮缯缰缱缲缳缴缵罂网罗罚罢罴羁羟羡翘翙翚耢耧耸耻聂聋职聍联聩聪肃肠肤肷肾肿胀胁胆胜胧胨胪胫胶脉脍脏脐脑脓脔脚脱脶脸腊腌腘腭腻腼腽腾膑臜舆舣舰舱舻艰艳艹艺节芈芗芜芦苁苇苈苋苌苍苎苏苘苹茎茏茑茔茕茧荆荐荙荚荛荜荞荟荠荡荣荤荥荦荧荨荩荪荫荬荭荮药莅莜莱莲莳莴莶获莸莹莺莼萚萝萤营萦萧萨葱蒇蒉蒋蒌蓝蓟蓠蓣蓥蓦蔷蔹蔺蔼蕲蕴薮藁藓虏虑虚虫虬虮虽虾虿蚀蚁蚂蚕蚝蚬蛊蛎蛏蛮蛰蛱蛲蛳蛴蜕蜗蜡蝇蝈蝉蝎蝼蝾螀螨蟏衅衔补衬衮袄袅袆袜袭袯装裆裈裢裣裤裥褛褴襁襕见观觃规觅视觇览觉觊觋觌觍觎觏觐觑觞触觯詟誉誊讠计订讣认讥讦讧讨让讪讫训议讯记讱讲讳讴讵讶讷许讹论讻讼讽设访诀证诂诃评诅识诇诈诉诊诋诌词诎诏诐译诒诓诔试诖诗诘诙诚诛诜话诞诟诠诡询诣诤该详诧诨诩诪诫诬语诮误诰诱诲诳说诵诶请诸诹诺读诼诽课诿谀谁谂调谄谅谆谇谈谊谋谌谍谎谏谐谑谒谓谔谕谖谗谘谙谚谛谜谝谞谟谠谡谢谣谤谥谦谧谨谩谪谫谬谭谮谯谰谱谲谳谴谵谶谷豮贝贞负贠贡财责贤败账货质贩贪贫贬购贮贯贰贱贲贳贴贵贶贷贸费贺贻贼贽贾贿赀赁赂赃资赅赆赇赈赉赊赋赌赍赎赏赐赑赒赓赔赕赖赗赘赙赚赛赜赝赞赟赠赡赢赣赪赵赶趋趱趸跃跄跖跞践跶跷跸跹跻踊踌踪踬踯蹑蹒蹰蹿躏躜躯车轧轨轩轪轫转轭轮软轰轱轲轳轴轵轶轷轸轹轺轻轼载轾轿辀辁辂较辄辅辆辇辈辉辊辋辌辍辎辏辐辑辒输辔辕辖辗辘辙辚辞辩辫边辽达迁过迈运还这进远违连迟迩迳迹适选逊递逦逻遗遥邓邝邬邮邹邺邻郁郄郏郐郑郓郦郧郸酝酦酱酽酾酿释里鉅鉴銮錾钆钇针钉钊钋钌钍钎钏钐钑钒钓钔钕钖钗钘钙钚钛钝钞钟钠钡钢钣钤钥钦钧钨钩钪钫钬钭钮钯钰钱钲钳钴钵钶钷钸钹钺钻钼钽钾钿铀铁铂铃铄铅铆铈铉铊铋铍铎铏铐铑铒铕铗铘铙铚铛铜铝铞铟铠铡铢铣铤铥铦铧铨铪铫铬铭铮铯铰铱铲铳铴铵银铷铸铹铺铻铼铽链铿销锁锂锃锄锅锆锇锈锉锊锋锌锍锎锏锐锑锒锓锔锕锖锗错锚锜锞锟锠锡锢锣锤锥锦锨锩锫锬锭键锯锰锱锲锳锴锵锶锷锸锹锺锻锼锽锾锿镀镁镂镃镆镇镈镉镊镌镍镎镏镐镑镒镕镖镗镙镚镛镜镝镞镟镠镡镢镣镤镥镦镧镨镩镪镫镬镭镮镯镰镱镲镳镴镶长门闩闪闫闬闭问闯闰闱闲闳间闵闶闷闸闹闺闻闼闽闾闿阀阁阂阃阄阅阆阇阈阉阊阋阌阍阎阏阐阑阒阓阔阕阖阗阘阙阚阛队阳阴阵阶际陆陇陈陉陕陧陨险随隐隶隽难雏雠雳雾霁霉霭靓静靥鞑鞒鞯鞴韦韧韨韩韪韫韬韵页顶顷顸项顺须顼顽顾顿颀颁颂颃预颅领颇颈颉颊颋颌颍颎颏颐频颒颓颔颕颖颗题颙颚颛颜额颞颟颠颡颢颣颤颥颦颧风飏飐飑飒飓飔飕飖飗飘飙飚飞飨餍饤饥饦饧饨饩饪饫饬饭饮饯饰饱饲饳饴饵饶饷饸饹饺饻饼饽饾饿馀馁馂馃馄馅馆馇馈馉馊馋馌馍馎馏馐馑馒馓馔馕马驭驮驯驰驱驲驳驴驵驶驷驸驹驺驻驼驽驾驿骀骁骂骃骄骅骆骇骈骉骊骋验骍骎骏骐骑骒骓骔骕骖骗骘骙骚骛骜骝骞骟骠骡骢骣骤骥骦骧髅髋髌鬓魇魉鱼鱽鱾鱿鲀鲁鲂鲄鲅鲆鲇鲈鲉鲊鲋鲌鲍鲎鲏鲐鲑鲒鲓鲔鲕鲖鲗鲘鲙鲚鲛鲜鲝鲞鲟鲠鲡鲢鲣鲤鲥鲦鲧鲨鲩鲪鲫鲬鲭鲮鲯鲰鲱鲲鲳鲴鲵鲶鲷鲸鲹鲺鲻鲼鲽鲾鲿鳀鳁鳂鳃鳄鳅鳆鳇鳈鳉鳊鳋鳌鳍鳎鳏鳐鳑鳒鳓鳔鳕鳖鳗鳘鳙鳛鳜鳝鳞鳟鳠鳡鳢鳣鸟鸠鸡鸢鸣鸤鸥鸦鸧鸨鸩鸪鸫鸬鸭鸮鸯鸰鸱鸲鸳鸴鸵鸶鸷鸸鸹鸺鸻鸼鸽鸾鸿鹀鹁鹂鹃鹄鹅鹆鹇鹈鹉鹊鹋鹌鹍鹎鹏鹐鹑鹒鹓鹔鹕鹖鹗鹘鹚鹛鹜鹝鹞鹟鹠鹡鹢鹣鹤鹥鹦鹧鹨鹩鹪鹫鹬鹭鹯鹰鹱鹲鹳鹴鹾麦麸黄黉黡黩黪黾鼋鼌鼍鼗鼹齄齐齑齿龀龁龂龃龄龅龆龇龈龉龊龋龌龙龚龛龟志制咨只里系范松没尝尝闹面准钟别闲干尽脏拼"),r=new String("萬與醜專業叢東絲丟兩嚴喪個爿豐臨為麗舉麼義烏樂喬習鄉書買亂爭於虧雲亙亞產畝親褻嚲億僅從侖倉儀們價眾優夥會傴傘偉傳傷倀倫傖偽佇體餘傭僉俠侶僥偵側僑儈儕儂俁儔儼倆儷儉債傾傯僂僨償儻儐儲儺兒兌兗黨蘭關興茲養獸囅內岡冊寫軍農塚馮衝決況凍淨淒涼淩減湊凜幾鳳鳧憑凱擊氹鑿芻劃劉則剛創刪別剗剄劊劌剴劑剮劍剝劇勸辦務勱動勵勁勞勢勳猛勩勻匭匱區醫華協單賣盧鹵臥衛卻巹廠廳曆厲壓厭厙廁廂厴廈廚廄廝縣參靉靆雙發變敘疊葉號歎嘰籲後嚇呂嗎唚噸聽啟吳嘸囈嘔嚦唄員咼嗆嗚詠哢嚨嚀噝吒噅鹹呱響啞噠嘵嗶噦嘩噲嚌噥喲嘜嗊嘮啢嗩唕喚呼嘖嗇囀齧囉嘽嘯噴嘍嚳囁嗬噯噓嚶囑嚕劈囂謔團園囪圍圇國圖圓聖壙場阪壞塊堅壇壢壩塢墳墜壟壟壚壘墾坰堊墊埡墶壋塏堖塒塤堝墊垵塹墮壪牆壯聲殼壺壼處備複夠頭誇夾奪奩奐奮獎奧妝婦媽嫵嫗媯姍薑婁婭嬈嬌孌娛媧嫻嫿嬰嬋嬸媼嬡嬪嬙嬤孫學孿寧寶實寵審憲宮寬賓寢對尋導壽將爾塵堯尷屍盡層屭屜屆屬屢屨嶼歲豈嶇崗峴嶴嵐島嶺嶽崠巋嶨嶧峽嶢嶠崢巒嶗崍嶮嶄嶸嶔崳嶁脊巔鞏巰幣帥師幃帳簾幟帶幀幫幬幘幗冪襆幹並廣莊慶廬廡庫應廟龐廢廎廩開異棄張彌弳彎彈強歸當錄彠彥徹徑徠禦憶懺憂愾懷態慫憮慪悵愴憐總懟懌戀懇惡慟懨愷惻惱惲悅愨懸慳憫驚懼慘懲憊愜慚憚慣湣慍憤憒願懾憖怵懣懶懍戇戔戲戧戰戩戶紮撲扡執擴捫掃揚擾撫拋摶摳掄搶護報擔擬攏揀擁攔擰撥擇掛摯攣掗撾撻挾撓擋撟掙擠揮撏撈損撿換搗據撚擄摑擲撣摻摜摣攬撳攙擱摟攪攜攝攄擺搖擯攤攖撐攆擷擼攛擻攢敵斂數齋斕鬥斬斷無舊時曠暘曇晝曨顯晉曬曉曄暈暉暫曖劄術樸機殺雜權條來楊榪傑極構樅樞棗櫪梘棖槍楓梟櫃檸檉梔柵標棧櫛櫳棟櫨櫟欄樹棲樣欒棬椏橈楨檔榿橋樺檜槳樁夢檮棶檢欞槨櫝槧欏橢樓欖櫬櫚櫸檟檻檳櫧橫檣櫻櫫櫥櫓櫞簷檁歡歟歐殲歿殤殘殞殮殫殯毆毀轂畢斃氈毿氌氣氫氬氳彙漢汙湯洶遝溝沒灃漚瀝淪滄渢溈滬濔濘淚澩瀧瀘濼瀉潑澤涇潔灑窪浹淺漿澆湞溮濁測澮濟瀏滻渾滸濃潯濜塗湧濤澇淶漣潿渦溳渙滌潤澗漲澀澱淵淥漬瀆漸澠漁瀋滲溫遊灣濕潰濺漵漊潷滾滯灩灄滿瀅濾濫灤濱灘澦濫瀠瀟瀲濰潛瀦瀾瀨瀕灝滅燈靈災燦煬爐燉煒熗點煉熾爍爛烴燭煙煩燒燁燴燙燼熱煥燜燾煆糊溜愛爺牘犛牽犧犢強狀獷獁猶狽麅獮獰獨狹獅獪猙獄猻獫獵獼玀豬貓蝟獻獺璣璵瑒瑪瑋環現瑲璽瑉玨琺瓏璫琿璡璉瑣瓊瑤璦璿瓔瓚甕甌電畫暢佘疇癤療瘧癘瘍鬁瘡瘋皰屙癰痙癢瘂癆瘓癇癡癉瘮瘞瘺癟癱癮癭癩癬癲臒皚皺皸盞鹽監蓋盜盤瞘眥矓著睜睞瞼瞞矚矯磯礬礦碭碼磚硨硯碸礪礱礫礎硜矽碩硤磽磑礄確鹼礙磧磣堿镟滾禮禕禰禎禱禍稟祿禪離禿稈種積稱穢穠穭稅穌穩穡窮竊竅窯竄窩窺竇窶豎競篤筍筆筧箋籠籩築篳篩簹箏籌簽簡籙簀篋籜籮簞簫簣簍籃籬籪籟糴類秈糶糲粵糞糧糝餱緊縶糸糾紆紅紂纖紇約級紈纊紀紉緯紜紘純紕紗綱納紝縱綸紛紙紋紡紵紖紐紓線紺絏紱練組紳細織終縐絆紼絀紹繹經紿綁絨結絝繞絰絎繪給絢絳絡絕絞統綆綃絹繡綌綏絛繼綈績緒綾緓續綺緋綽緔緄繩維綿綬繃綢綯綹綣綜綻綰綠綴緇緙緗緘緬纜緹緲緝縕繢緦綞緞緶線緱縋緩締縷編緡緣縉縛縟縝縫縗縞纏縭縊縑繽縹縵縲纓縮繆繅纈繚繕繒韁繾繰繯繳纘罌網羅罰罷羆羈羥羨翹翽翬耮耬聳恥聶聾職聹聯聵聰肅腸膚膁腎腫脹脅膽勝朧腖臚脛膠脈膾髒臍腦膿臠腳脫腡臉臘醃膕齶膩靦膃騰臏臢輿艤艦艙艫艱豔艸藝節羋薌蕪蘆蓯葦藶莧萇蒼苧蘇檾蘋莖蘢蔦塋煢繭荊薦薘莢蕘蓽蕎薈薺蕩榮葷滎犖熒蕁藎蓀蔭蕒葒葤藥蒞蓧萊蓮蒔萵薟獲蕕瑩鶯蓴蘀蘿螢營縈蕭薩蔥蕆蕢蔣蔞藍薊蘺蕷鎣驀薔蘞藺藹蘄蘊藪槁蘚虜慮虛蟲虯蟣雖蝦蠆蝕蟻螞蠶蠔蜆蠱蠣蟶蠻蟄蛺蟯螄蠐蛻蝸蠟蠅蟈蟬蠍螻蠑螿蟎蠨釁銜補襯袞襖嫋褘襪襲襏裝襠褌褳襝褲襇褸襤繈襴見觀覎規覓視覘覽覺覬覡覿覥覦覯覲覷觴觸觶讋譽謄訁計訂訃認譏訐訌討讓訕訖訓議訊記訒講諱謳詎訝訥許訛論訩訟諷設訪訣證詁訶評詛識詗詐訴診詆謅詞詘詔詖譯詒誆誄試詿詩詰詼誠誅詵話誕詬詮詭詢詣諍該詳詫諢詡譸誡誣語誚誤誥誘誨誑說誦誒請諸諏諾讀諑誹課諉諛誰諗調諂諒諄誶談誼謀諶諜謊諫諧謔謁謂諤諭諼讒諮諳諺諦謎諞諝謨讜謖謝謠謗諡謙謐謹謾謫譾謬譚譖譙讕譜譎讞譴譫讖穀豶貝貞負貟貢財責賢敗賬貨質販貪貧貶購貯貫貳賤賁貰貼貴貺貸貿費賀貽賊贄賈賄貲賃賂贓資賅贐賕賑賚賒賦賭齎贖賞賜贔賙賡賠賧賴賵贅賻賺賽賾贗讚贇贈贍贏贛赬趙趕趨趲躉躍蹌蹠躒踐躂蹺蹕躚躋踴躊蹤躓躑躡蹣躕躥躪躦軀車軋軌軒軑軔轉軛輪軟轟軲軻轤軸軹軼軤軫轢軺輕軾載輊轎輈輇輅較輒輔輛輦輩輝輥輞輬輟輜輳輻輯轀輸轡轅轄輾轆轍轔辭辯辮邊遼達遷過邁運還這進遠違連遲邇逕跡適選遜遞邐邏遺遙鄧鄺鄔郵鄒鄴鄰鬱郤郟鄶鄭鄆酈鄖鄲醞醱醬釅釃釀釋裏钜鑒鑾鏨釓釔針釘釗釙釕釷釺釧釤鈒釩釣鍆釹鍚釵鈃鈣鈈鈦鈍鈔鍾鈉鋇鋼鈑鈐鑰欽鈞鎢鉤鈧鈁鈥鈄鈕鈀鈺錢鉦鉗鈷缽鈳鉕鈽鈸鉞鑽鉬鉭鉀鈿鈾鐵鉑鈴鑠鉛鉚鈰鉉鉈鉍鈹鐸鉶銬銠鉺銪鋏鋣鐃銍鐺銅鋁銱銦鎧鍘銖銑鋌銩銛鏵銓鉿銚鉻銘錚銫鉸銥鏟銃鐋銨銀銣鑄鐒鋪鋙錸鋱鏈鏗銷鎖鋰鋥鋤鍋鋯鋨鏽銼鋝鋒鋅鋶鐦鐧銳銻鋃鋟鋦錒錆鍺錯錨錡錁錕錩錫錮鑼錘錐錦鍁錈錇錟錠鍵鋸錳錙鍥鍈鍇鏘鍶鍔鍤鍬鍾鍛鎪鍠鍰鎄鍍鎂鏤鎡鏌鎮鎛鎘鑷鐫鎳鎿鎦鎬鎊鎰鎔鏢鏜鏍鏰鏞鏡鏑鏃鏇鏐鐔钁鐐鏷鑥鐓鑭鐠鑹鏹鐙鑊鐳鐶鐲鐮鐿鑔鑣鑞鑲長門閂閃閆閈閉問闖閏闈閑閎間閔閌悶閘鬧閨聞闥閩閭闓閥閣閡閫鬮閱閬闍閾閹閶鬩閿閽閻閼闡闌闃闠闊闋闔闐闒闕闞闤隊陽陰陣階際陸隴陳陘陝隉隕險隨隱隸雋難雛讎靂霧霽黴靄靚靜靨韃鞽韉韝韋韌韍韓韙韞韜韻頁頂頃頇項順須頊頑顧頓頎頒頌頏預顱領頗頸頡頰頲頜潁熲頦頤頻頮頹頷頴穎顆題顒顎顓顏額顳顢顛顙顥纇顫顬顰顴風颺颭颮颯颶颸颼颻飀飄飆飆飛饗饜飣饑飥餳飩餼飪飫飭飯飲餞飾飽飼飿飴餌饒餉餄餎餃餏餅餑餖餓餘餒餕餜餛餡館餷饋餶餿饞饁饃餺餾饈饉饅饊饌饢馬馭馱馴馳驅馹駁驢駔駛駟駙駒騶駐駝駑駕驛駘驍罵駰驕驊駱駭駢驫驪騁驗騂駸駿騏騎騍騅騌驌驂騙騭騤騷騖驁騮騫騸驃騾驄驏驟驥驦驤髏髖髕鬢魘魎魚魛魢魷魨魯魴魺鮁鮃鯰鱸鮋鮓鮒鮊鮑鱟鮍鮐鮭鮚鮳鮪鮞鮦鰂鮜鱠鱭鮫鮮鮺鯗鱘鯁鱺鰱鰹鯉鰣鰷鯀鯊鯇鮶鯽鯒鯖鯪鯕鯫鯡鯤鯧鯝鯢鯰鯛鯨鯵鯴鯔鱝鰈鰏鱨鯷鰮鰃鰓鱷鰍鰒鰉鰁鱂鯿鰠鼇鰭鰨鰥鰩鰟鰜鰳鰾鱈鱉鰻鰵鱅鰼鱖鱔鱗鱒鱯鱤鱧鱣鳥鳩雞鳶鳴鳲鷗鴉鶬鴇鴆鴣鶇鸕鴨鴞鴦鴒鴟鴝鴛鴬鴕鷥鷙鴯鴰鵂鴴鵃鴿鸞鴻鵐鵓鸝鵑鵠鵝鵒鷳鵜鵡鵲鶓鵪鶤鵯鵬鵮鶉鶊鵷鷫鶘鶡鶚鶻鶿鶥鶩鷊鷂鶲鶹鶺鷁鶼鶴鷖鸚鷓鷚鷯鷦鷲鷸鷺鸇鷹鸌鸏鸛鸘鹺麥麩黃黌黶黷黲黽黿鼂鼉鞀鼴齇齊齏齒齔齕齗齟齡齙齠齜齦齬齪齲齷龍龔龕龜誌製谘隻裡係範鬆冇嚐嘗鬨麵準鐘彆閒乾儘臟拚");function o(t){for(var e={inputLength:t.length,simplifiedCharacters:0,traditionalCharacters:0},n=0;n<t.length;n++){var i=t.substr(n,1);if(a(i)?e.simplifiedCharacters++:s(i)&&e.traditionalCharacters++,n==t.length-1)return e.simplifiedCharacters>e.traditionalCharacters?(e.detectedCharacters="simplified",e.detectionRate=e.simplifiedCharacters/e.traditionalCharacters|1):e.simplifiedCharacters<e.traditionalCharacters?(e.detectedCharacters="traditional",e.detectionRate=e.traditionalCharacters/e.simplifiedCharacters|1):(e.detectedCharacters="unknown",e.detectionRate=0),e}}function a(t){return new RegExp(t).test(i)}function s(t){return new RegExp(t).test(r)}t.exports={isTraditional:function(t){return"traditional"==o(t).detectedCharacters},isSimplified:function(t){return"simplified"==o(t).detectedCharacters},detect:o}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});e.TrueTypeFont=function(t,e){void 0===e&&(e="normal"),this.name=t,this.weight=e}},function(t,e,n){(function(i){var r,o;r=function(){"use strict";
  2380. /** @license
  2381. * jsPDF - PDF Document creation from JavaScript
  2382. * Version 1.5.3 Built on 2018-12-27T14:11:42.696Z
  2383. * CommitID d93d28db14
  2384. *
  2385. * Copyright (c) 2010-2016 James Hall <james@parall.ax>, https://github.com/MrRio/jsPDF
  2386. * 2010 Aaron Spike, https://github.com/acspike
  2387. * 2012 Willow Systems Corporation, willow-systems.com
  2388. * 2012 Pablo Hess, https://github.com/pablohess
  2389. * 2012 Florian Jenett, https://github.com/fjenett
  2390. * 2013 Warren Weckesser, https://github.com/warrenweckesser
  2391. * 2013 Youssef Beddad, https://github.com/lifof
  2392. * 2013 Lee Driscoll, https://github.com/lsdriscoll
  2393. * 2013 Stefan Slonevskiy, https://github.com/stefslon
  2394. * 2013 Jeremy Morel, https://github.com/jmorel
  2395. * 2013 Christoph Hartmann, https://github.com/chris-rock
  2396. * 2014 Juan Pablo Gaviria, https://github.com/juanpgaviria
  2397. * 2014 James Makes, https://github.com/dollaruw
  2398. * 2014 Diego Casorran, https://github.com/diegocr
  2399. * 2014 Steven Spungin, https://github.com/Flamenco
  2400. * 2014 Kenneth Glassey, https://github.com/Gavvers
  2401. *
  2402. * Licensed under the MIT License
  2403. *
  2404. * Contributor(s):
  2405. * siefkenj, ahwolf, rickygu, Midnith, saintclair, eaparango,
  2406. * kim3er, mfo, alnorth, Flamenco
  2407. */function r(t){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}!function(t){if("object"!==r(t.console)){t.console={};for(var e,n,i=t.console,o=function(){},a=["memory"],s="assert,clear,count,debug,dir,dirxml,error,exception,group,groupCollapsed,groupEnd,info,log,markTimeline,profile,profiles,profileEnd,show,table,time,timeEnd,timeline,timelineEnd,timeStamp,trace,warn".split(",");e=a.pop();)i[e]||(i[e]={});for(;n=s.pop();)i[n]||(i[n]=o)}var c,l,u,d,p="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";void 0===t.btoa&&(t.btoa=function(t){var e,n,i,r,o,a=0,s=0,c="",l=[];if(!t)return t;for(;e=(o=t.charCodeAt(a++)<<16|t.charCodeAt(a++)<<8|t.charCodeAt(a++))>>18&63,n=o>>12&63,i=o>>6&63,r=63&o,l[s++]=p.charAt(e)+p.charAt(n)+p.charAt(i)+p.charAt(r),a<t.length;);c=l.join("");var u=t.length%3;return(u?c.slice(0,u-3):c)+"===".slice(u||3)}),void 0===t.atob&&(t.atob=function(t){var e,n,i,r,o,a,s=0,c=0,l=[];if(!t)return t;for(t+="";e=(a=p.indexOf(t.charAt(s++))<<18|p.indexOf(t.charAt(s++))<<12|(r=p.indexOf(t.charAt(s++)))<<6|(o=p.indexOf(t.charAt(s++))))>>16&255,n=a>>8&255,i=255&a,l[c++]=64==r?String.fromCharCode(e):64==o?String.fromCharCode(e,n):String.fromCharCode(e,n,i),s<t.length;);return l.join("")}),Array.prototype.map||(Array.prototype.map=function(t){if(null==this||"function"!=typeof t)throw new TypeError;for(var e=Object(this),n=e.length>>>0,i=new Array(n),r=1<arguments.length?arguments[1]:void 0,o=0;o<n;o++)o in e&&(i[o]=t.call(r,e[o],o,e));return i}),Array.isArray||(Array.isArray=function(t){return"[object Array]"===Object.prototype.toString.call(t)}),Array.prototype.forEach||(Array.prototype.forEach=function(t,e){if(null==this||"function"!=typeof t)throw new TypeError;for(var n=Object(this),i=n.length>>>0,r=0;r<i;r++)r in n&&t.call(e,n[r],r,n)}),Array.prototype.find||Object.defineProperty(Array.prototype,"find",{value:function(t){if(null==this)throw new TypeError('"this" is null or not defined');var e=Object(this),n=e.length>>>0;if("function"!=typeof t)throw new TypeError("predicate must be a function");for(var i=arguments[1],r=0;r<n;){var o=e[r];if(t.call(i,o,r,e))return o;r++}},configurable:!0,writable:!0}),Object.keys||(Object.keys=(c=Object.prototype.hasOwnProperty,l=!{toString:null}.propertyIsEnumerable("toString"),d=(u=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"]).length,function(t){if("object"!==r(t)&&("function"!=typeof t||null===t))throw new TypeError;var e,n,i=[];for(e in t)c.call(t,e)&&i.push(e);if(l)for(n=0;n<d;n++)c.call(t,u[n])&&i.push(u[n]);return i})),"function"!=typeof Object.assign&&(Object.assign=function(t){if(null==t)throw new TypeError("Cannot convert undefined or null to object");t=Object(t);for(var e=1;e<arguments.length;e++){var n=arguments[e];if(null!=n)for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i])}return t}),String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")}),String.prototype.trimLeft||(String.prototype.trimLeft=function(){return this.replace(/^\s+/g,"")}),String.prototype.trimRight||(String.prototype.trimRight=function(){return this.replace(/\s+$/g,"")}),Number.isInteger=Number.isInteger||function(t){return"number"==typeof t&&isFinite(t)&&Math.floor(t)===t}}("undefined"!=typeof self&&self||"undefined"!=typeof window&&window||void 0!==i&&i||Function('return typeof this === "object" && this.content')()||Function("return this")());var a,s,c,l,u,d,p,h,f,g,m,v,y,b,w,S,x,M,E,C,A,T,O,_,P,I,k,D,R,L,N,j,V,F,U,B,z,G,H,W,q,K,X,Y,Z,J,Q,$,tt,et,nt,it,rt,ot,at,st,ct,lt,ut,dt,pt,ht,ft=function(i){function a(t){if("object"!==r(t))throw new Error("Invalid Context passed to initialize PubSub (jsPDF-module)");var e={};this.subscribe=function(t,n,i){if(i=i||!1,"string"!=typeof t||"function"!=typeof n||"boolean"!=typeof i)throw new Error("Invalid arguments passed to PubSub.subscribe (jsPDF-module)");e.hasOwnProperty(t)||(e[t]={});var r=Math.random().toString(35);return e[t][r]=[n,!!i],r},this.unsubscribe=function(t){for(var n in e)if(e[n][t])return delete e[n][t],0===Object.keys(e[n]).length&&delete e[n],!0;return!1},this.publish=function(n){if(e.hasOwnProperty(n)){var r=Array.prototype.slice.call(arguments,1),o=[];for(var a in e[n]){var s=e[n][a];try{s[0].apply(t,r)}catch(n){i.console&&console.error("jsPDF PubSub Error",n.message,n)}s[1]&&o.push(a)}o.length&&o.forEach(this.unsubscribe)}},this.getTopics=function(){return e}}function s(t,e,n,o){var c={},l=[],u=1;"object"===r(t)&&(t=(c=t).orientation,e=c.unit||e,n=c.format||n,o=c.compress||c.compressPdf||o,l=c.filters||(!0===o?["FlateEncode"]:l),u="number"==typeof c.userUnit?Math.abs(c.userUnit):1),e=e||"mm",t=(""+(t||"P")).toLowerCase();var d=c.putOnlyUsedFonts||!0,p={},h={internal:{},__private__:{}};h.__private__.PubSub=a;var f="1.3",g=h.__private__.getPdfVersion=function(){return f},m=(h.__private__.setPdfVersion=function(t){f=t},{a0:[2383.94,3370.39],a1:[1683.78,2383.94],a2:[1190.55,1683.78],a3:[841.89,1190.55],a4:[595.28,841.89],a5:[419.53,595.28],a6:[297.64,419.53],a7:[209.76,297.64],a8:[147.4,209.76],a9:[104.88,147.4],a10:[73.7,104.88],b0:[2834.65,4008.19],b1:[2004.09,2834.65],b2:[1417.32,2004.09],b3:[1000.63,1417.32],b4:[708.66,1000.63],b5:[498.9,708.66],b6:[354.33,498.9],b7:[249.45,354.33],b8:[175.75,249.45],b9:[124.72,175.75],b10:[87.87,124.72],c0:[2599.37,3676.54],c1:[1836.85,2599.37],c2:[1298.27,1836.85],c3:[918.43,1298.27],c4:[649.13,918.43],c5:[459.21,649.13],c6:[323.15,459.21],c7:[229.61,323.15],c8:[161.57,229.61],c9:[113.39,161.57],c10:[79.37,113.39],dl:[311.81,623.62],letter:[612,792],"government-letter":[576,756],legal:[612,1008],"junior-legal":[576,360],ledger:[1224,792],tabloid:[792,1224],"credit-card":[153,243]}),v=(h.__private__.getPageFormats=function(){return m},h.__private__.getPageFormat=function(t){return m[t]});"string"==typeof n&&(n=v(n)),n=n||v("a4");var y,b=h.f2=h.__private__.f2=function(t){if(isNaN(t))throw new Error("Invalid argument passed to jsPDF.f2");return t.toFixed(2)},w=h.__private__.f3=function(t){if(isNaN(t))throw new Error("Invalid argument passed to jsPDF.f3");return t.toFixed(3)},S="00000000000000000000000000000000",x=h.__private__.getFileId=function(){return S},M=h.__private__.setFileId=function(t){return t=t||"12345678901234567890123456789012".split("").map(function(){return"ABCDEF0123456789".charAt(Math.floor(16*Math.random()))}).join(""),S=t};h.setFileId=function(t){return M(t),this},h.getFileId=function(){return x()};var E=h.__private__.convertDateToPDFDate=function(t){var e=t.getTimezoneOffset(),n=e<0?"+":"-",i=Math.floor(Math.abs(e/60)),r=Math.abs(e%60),o=[n,N(i),"'",N(r),"'"].join("");return["D:",t.getFullYear(),N(t.getMonth()+1),N(t.getDate()),N(t.getHours()),N(t.getMinutes()),N(t.getSeconds()),o].join("")},C=h.__private__.convertPDFDateToDate=function(t){var e=parseInt(t.substr(2,4),10),n=parseInt(t.substr(6,2),10)-1,i=parseInt(t.substr(8,2),10),r=parseInt(t.substr(10,2),10),o=parseInt(t.substr(12,2),10),a=parseInt(t.substr(14,2),10);return parseInt(t.substr(16,2),10),parseInt(t.substr(20,2),10),new Date(e,n,i,r,o,a,0)},A=h.__private__.setCreationDate=function(t){var e;if(void 0===t&&(t=new Date),"object"===r(t)&&"[object Date]"===Object.prototype.toString.call(t))e=E(t);else{if(!/^D:(20[0-2][0-9]|203[0-7]|19[7-9][0-9])(0[0-9]|1[0-2])([0-2][0-9]|3[0-1])(0[0-9]|1[0-9]|2[0-3])(0[0-9]|[1-5][0-9])(0[0-9]|[1-5][0-9])(\+0[0-9]|\+1[0-4]|\-0[0-9]|\-1[0-1])\'(0[0-9]|[1-5][0-9])\'?$/.test(t))throw new Error("Invalid argument passed to jsPDF.setCreationDate");e=t}return y=e},T=h.__private__.getCreationDate=function(t){var e=y;return"jsDate"===t&&(e=C(y)),e};h.setCreationDate=function(t){return A(t),this},h.getCreationDate=function(t){return T(t)};var O,_,P,I,k,D,R,L,N=h.__private__.padd2=function(t){return("0"+parseInt(t)).slice(-2)},j=!1,V=[],F=[],U=0,B=(h.__private__.setCustomOutputDestination=function(t){_=t},h.__private__.resetCustomOutputDestination=function(t){_=void 0},h.__private__.out=function(t){var e;return t="string"==typeof t?t:t.toString(),(e=void 0===_?j?V[O]:F:_).push(t),j||(U+=t.length+1),e}),z=h.__private__.write=function(t){return B(1===arguments.length?t.toString():Array.prototype.join.call(arguments," "))},G=h.__private__.getArrayBuffer=function(t){for(var e=t.length,n=new ArrayBuffer(e),i=new Uint8Array(n);e--;)i[e]=t.charCodeAt(e);return n},H=[["Helvetica","helvetica","normal","WinAnsiEncoding"],["Helvetica-Bold","helvetica","bold","WinAnsiEncoding"],["Helvetica-Oblique","helvetica","italic","WinAnsiEncoding"],["Helvetica-BoldOblique","helvetica","bolditalic","WinAnsiEncoding"],["Courier","courier","normal","WinAnsiEncoding"],["Courier-Bold","courier","bold","WinAnsiEncoding"],["Courier-Oblique","courier","italic","WinAnsiEncoding"],["Courier-BoldOblique","courier","bolditalic","WinAnsiEncoding"],["Times-Roman","times","normal","WinAnsiEncoding"],["Times-Bold","times","bold","WinAnsiEncoding"],["Times-Italic","times","italic","WinAnsiEncoding"],["Times-BoldItalic","times","bolditalic","WinAnsiEncoding"],["ZapfDingbats","zapfdingbats","normal",null],["Symbol","symbol","normal",null]],W=(h.__private__.getStandardFonts=function(t){return H},c.fontSize||16),q=(h.__private__.setFontSize=h.setFontSize=function(t){return W=t,this},h.__private__.getFontSize=h.getFontSize=function(){return W}),K=c.R2L||!1,X=(h.__private__.setR2L=h.setR2L=function(t){return K=t,this},h.__private__.getR2L=h.getR2L=function(t){return K},h.__private__.setZoomMode=function(t){if(/^\d*\.?\d*\%$/.test(t))P=t;else if(isNaN(t)){if(-1===[void 0,null,"fullwidth","fullheight","fullpage","original"].indexOf(t))throw new Error('zoom must be Integer (e.g. 2), a percentage Value (e.g. 300%) or fullwidth, fullheight, fullpage, original. "'+t+'" is not recognized.');P=t}else P=parseInt(t,10)}),Y=(h.__private__.getZoomMode=function(){return P},h.__private__.setPageMode=function(t){if(-1==[void 0,null,"UseNone","UseOutlines","UseThumbs","FullScreen"].indexOf(t))throw new Error('Page mode must be one of UseNone, UseOutlines, UseThumbs, or FullScreen. "'+t+'" is not recognized.');I=t}),Z=(h.__private__.getPageMode=function(){return I},h.__private__.setLayoutMode=function(t){if(-1==[void 0,null,"continuous","single","twoleft","tworight","two"].indexOf(t))throw new Error('Layout mode must be one of continuous, single, twoleft, tworight. "'+t+'" is not recognized.');k=t}),J=(h.__private__.getLayoutMode=function(){return k},h.__private__.setDisplayMode=h.setDisplayMode=function(t,e,n){return X(t),Z(e),Y(n),this},{title:"",subject:"",author:"",keywords:"",creator:""}),Q=(h.__private__.getDocumentProperty=function(t){if(-1===Object.keys(J).indexOf(t))throw new Error("Invalid argument passed to jsPDF.getDocumentProperty");return J[t]},h.__private__.getDocumentProperties=function(t){return J},h.__private__.setDocumentProperties=h.setProperties=h.setDocumentProperties=function(t){for(var e in J)J.hasOwnProperty(e)&&t[e]&&(J[e]=t[e]);return this},h.__private__.setDocumentProperty=function(t,e){if(-1===Object.keys(J).indexOf(t))throw new Error("Invalid arguments passed to jsPDF.setDocumentProperty");return J[t]=e},0),$=[],tt={},et={},nt=0,it=[],rt=[],ot=new a(h),at=c.hotfixes||[],st=h.__private__.newObject=function(){var t=ct();return lt(t,!0),t},ct=h.__private__.newObjectDeferred=function(){return $[++Q]=function(){return U},Q},lt=function(t,e){return e="boolean"==typeof e&&e,$[t]=U,e&&B(t+" 0 obj"),t},ut=h.__private__.newAdditionalObject=function(){var t={objId:ct(),content:""};return rt.push(t),t},dt=ct(),pt=ct(),ht=h.__private__.decodeColorString=function(t){var e=t.split(" ");if(2===e.length&&("g"===e[1]||"G"===e[1])){var n=parseFloat(e[0]);e=[n,n,n,"r"]}for(var i="#",r=0;r<3;r++)i+=("0"+Math.floor(255*parseFloat(e[r])).toString(16)).slice(-2);return i},ft=h.__private__.encodeColorString=function(t){var e;"string"==typeof t&&(t={ch1:t});var n=t.ch1,i=t.ch2,o=t.ch3,a=t.ch4,s=(t.precision,"draw"===t.pdfColorType?["G","RG","K"]:["g","rg","k"]);if("string"==typeof n&&"#"!==n.charAt(0)){var c=new RGBColor(n);if(c.ok)n=c.toHex();else if(!/^\d*\.?\d*$/.test(n))throw new Error('Invalid color "'+n+'" passed to jsPDF.encodeColorString.')}if("string"==typeof n&&/^#[0-9A-Fa-f]{3}$/.test(n)&&(n="#"+n[1]+n[1]+n[2]+n[2]+n[3]+n[3]),"string"==typeof n&&/^#[0-9A-Fa-f]{6}$/.test(n)){var l=parseInt(n.substr(1),16);n=l>>16&255,i=l>>8&255,o=255&l}if(void 0===i||void 0===a&&n===i&&i===o)if("string"==typeof n)e=n+" "+s[0];else switch(t.precision){case 2:e=b(n/255)+" "+s[0];break;case 3:default:e=w(n/255)+" "+s[0]}else if(void 0===a||"object"===r(a)){if(a&&!isNaN(a.a)&&0===a.a)return["1.000","1.000","1.000",s[1]].join(" ");if("string"==typeof n)e=[n,i,o,s[1]].join(" ");else switch(t.precision){case 2:e=[b(n/255),b(i/255),b(o/255),s[1]].join(" ");break;default:case 3:e=[w(n/255),w(i/255),w(o/255),s[1]].join(" ")}}else if("string"==typeof n)e=[n,i,o,a,s[2]].join(" ");else switch(t.precision){case 2:e=[b(n/255),b(i/255),b(o/255),b(a/255),s[2]].join(" ");break;case 3:default:e=[w(n/255),w(i/255),w(o/255),w(a/255),s[2]].join(" ")}return e},gt=h.__private__.getFilters=function(){return l},mt=h.__private__.putStream=function(t){var e,n=(t=t||{}).data||"",i=t.filters||gt(),r=t.alreadyAppliedFilters||[],o=t.addLength1||!1,a=n.length;!0===i&&(i=["FlateEncode"]);var c=t.additionalKeyValues||[],l=(e=void 0!==s.API.processDataByFilters?s.API.processDataByFilters(n,i):{data:n,reverseChain:[]}).reverseChain+(Array.isArray(r)?r.join(" "):r.toString());0!==e.data.length&&(c.push({key:"Length",value:e.data.length}),!0===o&&c.push({key:"Length1",value:a})),0!=l.length&&(l.split("/").length-1==1?c.push({key:"Filter",value:l}):c.push({key:"Filter",value:"["+l+"]"})),B("<<");for(var u=0;u<c.length;u++)B("/"+c[u].key+" "+c[u].value);B(">>"),0!==e.data.length&&(B("stream"),B(e.data),B("endstream"))},vt=h.__private__.putPage=function(t){t.mediaBox;var e=t.number,n=t.data,i=t.objId,r=t.contentsObjId;lt(i,!0),it[O].mediaBox.topRightX,it[O].mediaBox.bottomLeftX,it[O].mediaBox.topRightY,it[O].mediaBox.bottomLeftY,B("<</Type /Page"),B("/Parent "+t.rootDictionaryObjId+" 0 R"),B("/Resources "+t.resourceDictionaryObjId+" 0 R"),B("/MediaBox ["+parseFloat(b(t.mediaBox.bottomLeftX))+" "+parseFloat(b(t.mediaBox.bottomLeftY))+" "+b(t.mediaBox.topRightX)+" "+b(t.mediaBox.topRightY)+"]"),null!==t.cropBox&&B("/CropBox ["+b(t.cropBox.bottomLeftX)+" "+b(t.cropBox.bottomLeftY)+" "+b(t.cropBox.topRightX)+" "+b(t.cropBox.topRightY)+"]"),null!==t.bleedBox&&B("/BleedBox ["+b(t.bleedBox.bottomLeftX)+" "+b(t.bleedBox.bottomLeftY)+" "+b(t.bleedBox.topRightX)+" "+b(t.bleedBox.topRightY)+"]"),null!==t.trimBox&&B("/TrimBox ["+b(t.trimBox.bottomLeftX)+" "+b(t.trimBox.bottomLeftY)+" "+b(t.trimBox.topRightX)+" "+b(t.trimBox.topRightY)+"]"),null!==t.artBox&&B("/ArtBox ["+b(t.artBox.bottomLeftX)+" "+b(t.artBox.bottomLeftY)+" "+b(t.artBox.topRightX)+" "+b(t.artBox.topRightY)+"]"),"number"==typeof t.userUnit&&1!==t.userUnit&&B("/UserUnit "+t.userUnit),ot.publish("putPage",{objId:i,pageContext:it[e],pageNumber:e,page:n}),B("/Contents "+r+" 0 R"),B(">>"),B("endobj");var o=n.join("\n");return lt(r,!0),mt({data:o,filters:gt()}),B("endobj"),i},yt=h.__private__.putPages=function(){var t,e,n=[];for(t=1;t<=nt;t++)it[t].objId=ct(),it[t].contentsObjId=ct();for(t=1;t<=nt;t++)n.push(vt({number:t,data:V[t],objId:it[t].objId,contentsObjId:it[t].contentsObjId,mediaBox:it[t].mediaBox,cropBox:it[t].cropBox,bleedBox:it[t].bleedBox,trimBox:it[t].trimBox,artBox:it[t].artBox,userUnit:it[t].userUnit,rootDictionaryObjId:dt,resourceDictionaryObjId:pt}));lt(dt,!0),B("<</Type /Pages");var i="/Kids [";for(e=0;e<nt;e++)i+=n[e]+" 0 R ";B(i+"]"),B("/Count "+nt),B(">>"),B("endobj"),ot.publish("postPutPages")},bt=function(t,e,n){et.hasOwnProperty(e)||(et[e]={}),et[e][n]=t},wt=function(t,e,n,i,r){r=r||!1;var o="F"+(Object.keys(tt).length+1).toString(10),a={id:o,postScriptName:t,fontName:e,fontStyle:n,encoding:i,isStandardFont:r,metadata:{}};return ot.publish("addFont",{font:a,instance:this}),void 0!==o&&(tt[o]=a,bt(o,e,n)),o},St=h.__private__.pdfEscape=h.pdfEscape=function(t,e){return function(t,e){var n,i,r,o,a,s,c,l,u;if(r=(e=e||{}).sourceEncoding||"Unicode",a=e.outputEncoding,(e.autoencode||a)&&tt[D].metadata&&tt[D].metadata[r]&&tt[D].metadata[r].encoding&&(o=tt[D].metadata[r].encoding,!a&&tt[D].encoding&&(a=tt[D].encoding),!a&&o.codePages&&(a=o.codePages[0]),"string"==typeof a&&(a=o[a]),a)){for(c=!1,s=[],n=0,i=t.length;n<i;n++)(l=a[t.charCodeAt(n)])?s.push(String.fromCharCode(l)):s.push(t[n]),s[n].charCodeAt(0)>>8&&(c=!0);t=s.join("")}for(n=t.length;void 0===c&&0!==n;)t.charCodeAt(n-1)>>8&&(c=!0),n--;if(!c)return t;for(s=e.noBOM?[]:[254,255],n=0,i=t.length;n<i;n++){if((u=(l=t.charCodeAt(n))>>8)>>8)throw new Error("Character at position "+n+" of string '"+t+"' exceeds 16bits. Cannot be encoded into UCS-2 BE");s.push(u),s.push(l-(u<<8))}return String.fromCharCode.apply(void 0,s)}(t,e).replace(/\\/g,"\\\\").replace(/\(/g,"\\(").replace(/\)/g,"\\)")},xt=h.__private__.beginPage=function(t,e){var i,r="string"==typeof e&&e.toLowerCase();if("string"==typeof t&&(i=v(t.toLowerCase()))&&(t=i[0],e=i[1]),Array.isArray(t)&&(e=t[1],t=t[0]),(isNaN(t)||isNaN(e))&&(t=n[0],e=n[1]),r){switch(r.substr(0,1)){case"l":t<e&&(r="s");break;case"p":e<t&&(r="s")}"s"===r&&(i=t,t=e,e=i)}(14400<t||14400<e)&&(console.warn("A page in a PDF can not be wider or taller than 14400 userUnit. jsPDF limits the width/height to 14400"),t=Math.min(14400,t),e=Math.min(14400,e)),n=[t,e],j=!0,V[++nt]=[],it[nt]={objId:0,contentsObjId:0,userUnit:Number(u),artBox:null,bleedBox:null,cropBox:null,trimBox:null,mediaBox:{bottomLeftX:0,bottomLeftY:0,topRightX:Number(t),topRightY:Number(e)}},Et(nt)},Mt=function(){xt.apply(this,arguments),Ht(Gt),B(Qt),0!==re&&B(re+" J"),0!==ae&&B(ae+" j"),ot.publish("addPage",{pageNumber:nt})},Et=function(t){0<t&&t<=nt&&(O=t)},Ct=h.__private__.getNumberOfPages=h.getNumberOfPages=function(){return V.length-1},At=function(t,e,n){var i,r=void 0;return n=n||{},t=void 0!==t?t:tt[D].fontName,e=void 0!==e?e:tt[D].fontStyle,i=t.toLowerCase(),void 0!==et[i]&&void 0!==et[i][e]?r=et[i][e]:void 0!==et[t]&&void 0!==et[t][e]?r=et[t][e]:!1===n.disableWarning&&console.warn("Unable to look up font label for font '"+t+"', '"+e+"'. Refer to getFontList() for available fonts."),r||n.noFallback||null==(r=et.times[e])&&(r=et.times.normal),r},Tt=h.__private__.putInfo=function(){for(var t in st(),B("<<"),B("/Producer (jsPDF "+s.version+")"),J)J.hasOwnProperty(t)&&J[t]&&B("/"+t.substr(0,1).toUpperCase()+t.substr(1)+" ("+St(J[t])+")");B("/CreationDate ("+y+")"),B(">>"),B("endobj")},Ot=h.__private__.putCatalog=function(t){var e=(t=t||{}).rootDictionaryObjId||dt;switch(st(),B("<<"),B("/Type /Catalog"),B("/Pages "+e+" 0 R"),P||(P="fullwidth"),P){case"fullwidth":B("/OpenAction [3 0 R /FitH null]");break;case"fullheight":B("/OpenAction [3 0 R /FitV null]");break;case"fullpage":B("/OpenAction [3 0 R /Fit]");break;case"original":B("/OpenAction [3 0 R /XYZ null null 1]");break;default:var n=""+P;"%"===n.substr(n.length-1)&&(P=parseInt(P)/100),"number"==typeof P&&B("/OpenAction [3 0 R /XYZ null null "+b(P)+"]")}switch(k||(k="continuous"),k){case"continuous":B("/PageLayout /OneColumn");break;case"single":B("/PageLayout /SinglePage");break;case"two":case"twoleft":B("/PageLayout /TwoColumnLeft");break;case"tworight":B("/PageLayout /TwoColumnRight")}I&&B("/PageMode /"+I),ot.publish("putCatalog"),B(">>"),B("endobj")},_t=h.__private__.putTrailer=function(){B("trailer"),B("<<"),B("/Size "+(Q+1)),B("/Root "+Q+" 0 R"),B("/Info "+(Q-1)+" 0 R"),B("/ID [ <"+S+"> <"+S+"> ]"),B(">>")},It=h.__private__.putHeader=function(){B("%PDF-"+f),B("%ºß¬à")},kt=h.__private__.putXRef=function(){var t=1,e="0000000000";for(B("xref"),B("0 "+(Q+1)),B("0000000000 65535 f "),t=1;t<=Q;t++)"function"==typeof $[t]?B((e+$[t]()).slice(-10)+" 00000 n "):void 0!==$[t]?B((e+$[t]).slice(-10)+" 00000 n "):B("0000000000 00000 n ")},Dt=h.__private__.buildDocument=function(){j=!1,U=Q=0,F=[],$=[],rt=[],dt=ct(),pt=ct(),ot.publish("buildDocument"),It(),yt(),function(){ot.publish("putAdditionalObjects");for(var t=0;t<rt.length;t++){var e=rt[t];lt(e.objId,!0),B(e.content),B("endobj")}ot.publish("postPutAdditionalObjects")}(),function(){for(var t in tt)tt.hasOwnProperty(t)&&(!1===d||!0===d&&p.hasOwnProperty(t))&&(e=tt[t],ot.publish("putFont",{font:e,out:B,newObject:st,putStream:mt}),!0!==e.isAlreadyPutted&&(e.objectNumber=st(),B("<<"),B("/Type /Font"),B("/BaseFont /"+e.postScriptName),B("/Subtype /Type1"),"string"==typeof e.encoding&&B("/Encoding /"+e.encoding),B("/FirstChar 32"),B("/LastChar 255"),B(">>"),B("endobj")));var e}(),ot.publish("putResources"),lt(pt,!0),B("<<"),function(){for(var t in B("/ProcSet [/PDF /Text /ImageB /ImageC /ImageI]"),B("/Font <<"),tt)tt.hasOwnProperty(t)&&(!1===d||!0===d&&p.hasOwnProperty(t))&&B("/"+t+" "+tt[t].objectNumber+" 0 R");B(">>"),B("/XObject <<"),ot.publish("putXobjectDict"),B(">>")}(),B(">>"),B("endobj"),ot.publish("postPutResources"),Tt(),Ot();var t=U;return kt(),_t(),B("startxref"),B(""+t),B("%%EOF"),j=!0,F.join("\n")},Rt=h.__private__.getBlob=function(t){return new Blob([G(t)],{type:"application/pdf"})},Lt=h.output=h.__private__.output=((L=function(t,e){e=e||{};var n=Dt();switch("string"==typeof e?e={filename:e}:e.filename=e.filename||"generated.pdf",t){case void 0:return n;case"save":h.save(e.filename);break;case"arraybuffer":return G(n);case"blob":return Rt(n);case"bloburi":case"bloburl":if(void 0!==i.URL&&"function"==typeof i.URL.createObjectURL)return i.URL&&i.URL.createObjectURL(Rt(n))||void 0;console.warn("bloburl is not supported by your system, because URL.createObjectURL is not supported by your browser.");break;case"datauristring":case"dataurlstring":return"data:application/pdf;filename="+e.filename+";base64,"+btoa(n);case"dataurlnewwindow":var r='<html><style>html, body { padding: 0; margin: 0; } iframe { width: 100%; height: 100%; border: 0;} </style><body><iframe src="'+this.output("datauristring")+'"></iframe></body></html>',o=i.open();if(null!==o&&o.document.write(r),o||"undefined"==typeof safari)return o;case"datauri":case"dataurl":return i.document.location.href="data:application/pdf;filename="+e.filename+";base64,"+btoa(n);default:return null}}).foo=function(){try{return L.apply(this,arguments)}catch(n){var t=n.stack||"";~t.indexOf(" at ")&&(t=t.split(" at ")[1]);var e="Error in function "+t.split("\n")[0].split("<")[0]+": "+n.message;if(!i.console)throw new Error(e);i.console.error(e,n),i.alert&&alert(e)}},(L.foo.bar=L).foo),Nt=function(t){return!0===Array.isArray(at)&&-1<at.indexOf(t)};switch(e){case"pt":R=1;break;case"mm":R=72/25.4;break;case"cm":R=72/2.54;break;case"in":R=72;break;case"px":R=1==Nt("px_scaling")?.75:96/72;break;case"pc":case"em":R=12;break;case"ex":R=6;break;default:throw new Error("Invalid unit: "+e)}A(),M();var jt=h.__private__.getPageInfo=function(t){if(isNaN(t)||t%1!=0)throw new Error("Invalid argument passed to jsPDF.getPageInfo");return{objId:it[t].objId,pageNumber:t,pageContext:it[t]}},Vt=h.__private__.getPageInfoByObjId=function(t){for(var e in it)if(it[e].objId===t)break;if(isNaN(t)||t%1!=0)throw new Error("Invalid argument passed to jsPDF.getPageInfoByObjId");return jt(e)},Ft=h.__private__.getCurrentPageInfo=function(){return{objId:it[O].objId,pageNumber:O,pageContext:it[O]}};h.addPage=function(){return Mt.apply(this,arguments),this},h.setPage=function(){return Et.apply(this,arguments),this},h.insertPage=function(t){return this.addPage(),this.movePage(O,t),this},h.movePage=function(t,e){if(e<t){for(var n=V[t],i=it[t],r=t;e<r;r--)V[r]=V[r-1],it[r]=it[r-1];V[e]=n,it[e]=i,this.setPage(e)}else if(t<e){for(n=V[t],i=it[t],r=t;r<e;r++)V[r]=V[r+1],it[r]=it[r+1];V[e]=n,it[e]=i,this.setPage(e)}return this},h.deletePage=function(){return function(t){0<t&&t<=nt&&(V.splice(t,1),--nt<O&&(O=nt),this.setPage(O))}.apply(this,arguments),this},h.__private__.text=h.text=function(t,e,n,i){var o;"number"!=typeof t||"number"!=typeof e||"string"!=typeof n&&!Array.isArray(n)||(o=n,n=e,e=t,t=o);var a=arguments[3],s=arguments[4],c=arguments[5];if("object"===r(a)&&null!==a||("string"==typeof s&&(c=s,s=null),"string"==typeof a&&(c=a,a=null),"number"==typeof a&&(s=a,a=null),i={flags:a,angle:s,align:c}),(a=a||{}).noBOM=a.noBOM||!0,a.autoencode=a.autoencode||!0,isNaN(e)||isNaN(n)||null==t)throw new Error("Invalid arguments passed to jsPDF.text");if(0===t.length)return h;var l,u="",d="number"==typeof i.lineHeightFactor?i.lineHeightFactor:zt,h=i.scope||this;function f(t){for(var e,n=t.concat(),i=[],r=n.length;r--;)"string"==typeof(e=n.shift())?i.push(e):Array.isArray(t)&&1===e.length?i.push(e[0]):i.push([e[0],e[1],e[2]]);return i}function g(t,e){var n;if("string"==typeof t)n=e(t)[0];else if(Array.isArray(t)){for(var i,r,o=t.concat(),a=[],s=o.length;s--;)"string"==typeof(i=o.shift())?a.push(e(i)[0]):Array.isArray(i)&&"string"===i[0]&&(r=e(i[0],i[1],i[2]),a.push([r[0],r[1],r[2]]));n=a}return n}var m=!1,v=!0;if("string"==typeof t)m=!0;else if(Array.isArray(t)){for(var y,S=t.concat(),x=[],M=S.length;M--;)("string"!=typeof(y=S.shift())||Array.isArray(y)&&"string"!=typeof y[0])&&(v=!1);m=v}if(!1===m)throw new Error('Type of text must be string or Array. "'+t+'" is not recognized.');var E=tt[D].encoding;"WinAnsiEncoding"!==E&&"StandardEncoding"!==E||(t=g(t,function(t,e,n){return[(r=t,r=r.split("\t").join(Array(i.TabLen||9).join(" ")),St(r,a)),e,n];var r})),"string"==typeof t&&(t=t.match(/[\r?\n]/)?t.split(/\r\n|\r|\n/g):[t]);var C=W/h.internal.scaleFactor,A=C*(zt-1);switch(i.baseline){case"bottom":n-=A;break;case"top":n+=C-A;break;case"hanging":n+=C-2*A;break;case"middle":n+=C/2-A}0<(z=i.maxWidth||0)&&("string"==typeof t?t=h.splitTextToSize(t,z):"[object Array]"===Object.prototype.toString.call(t)&&(t=h.splitTextToSize(t.join(" "),z)));var T={text:t,x:e,y:n,options:i,mutex:{pdfEscape:St,activeFontKey:D,fonts:tt,activeFontSize:W}};ot.publish("preProcessText",T),t=T.text,s=(i=T.options).angle;var O=h.internal.scaleFactor,_=[];if(s){s*=Math.PI/180;var P=Math.cos(s),I=Math.sin(s);_=[b(P),b(I),b(-1*I),b(P)]}void 0!==(U=i.charSpace)&&(u+=w(U*O)+" Tc\n"),i.lang;var k=-1,R=void 0!==i.renderingMode?i.renderingMode:i.stroke,L=h.internal.getCurrentPageInfo().pageContext;switch(R){case 0:case!1:case"fill":k=0;break;case 1:case!0:case"stroke":k=1;break;case 2:case"fillThenStroke":k=2;break;case 3:case"invisible":k=3;break;case 4:case"fillAndAddForClipping":k=4;break;case 5:case"strokeAndAddPathForClipping":k=5;break;case 6:case"fillThenStrokeAndAddToPathForClipping":k=6;break;case 7:case"addToPathForClipping":k=7}var N=void 0!==L.usedRenderingMode?L.usedRenderingMode:-1;-1!==k?u+=k+" Tr\n":-1!==N&&(u+="0 Tr\n"),-1!==k&&(L.usedRenderingMode=k),c=i.align||"left";var j=W*d,V=h.internal.pageSize.getWidth(),F=(O=h.internal.scaleFactor,tt[D]),U=i.charSpace||ne,z=i.maxWidth||0,G=(a={},[]);if("[object Array]"===Object.prototype.toString.call(t)){var H,q;x=f(t),"left"!==c&&(q=x.map(function(t){return h.getStringUnitWidth(t,{font:F,charSpace:U,fontSize:W})*W/O})),Math.max.apply(Math,q);var X,Y=0;if("right"===c){e-=q[0],t=[];var Z=0;for(M=x.length;Z<M;Z++)q[Z],H=0===Z?(X=Xt(e),Yt(n)):(X=(Y-q[Z])*O,-j),t.push([x[Z],X,H]),Y=q[Z]}else if("center"===c)for(e-=q[0]/2,t=[],Z=0,M=x.length;Z<M;Z++)q[Z],H=0===Z?(X=Xt(e),Yt(n)):(X=(Y-q[Z])/2*O,-j),t.push([x[Z],X,H]),Y=q[Z];else if("left"===c)for(t=[],Z=0,M=x.length;Z<M;Z++)H=0===Z?Yt(n):-j,X=0===Z?Xt(e):0,t.push(x[Z]);else{if("justify"!==c)throw new Error('Unrecognized alignment option, use "left", "center", "right" or "justify".');for(t=[],z=0!==z?z:V,Z=0,M=x.length;Z<M;Z++)H=0===Z?Yt(n):-j,X=0===Z?Xt(e):0,Z<M-1&&G.push(((z-q[Z])/(x[Z].split(" ").length-1)*O).toFixed(2)),t.push([x[Z],X,H])}}!0===("boolean"==typeof i.R2L?i.R2L:K)&&(t=g(t,function(t,e,n){return[t.split("").reverse().join(""),e,n]})),T={text:t,x:e,y:n,options:i,mutex:{pdfEscape:St,activeFontKey:D,fonts:tt,activeFontSize:W}},ot.publish("postProcessText",T),t=T.text,l=T.mutex.isHex,x=f(t),t=[];var J,Q,$,et=0,nt=(M=x.length,"");for(Z=0;Z<M;Z++)nt="",Array.isArray(x[Z])?(J=parseFloat(x[Z][1]),Q=parseFloat(x[Z][2]),$=(l?"<":"(")+x[Z][0]+(l?">":")"),et=1):(J=Xt(e),Q=Yt(n),$=(l?"<":"(")+x[Z]+(l?">":")")),void 0!==G&&void 0!==G[Z]&&(nt=G[Z]+" Tw\n"),0!==_.length&&0===Z?t.push(nt+_.join(" ")+" "+J.toFixed(2)+" "+Q.toFixed(2)+" Tm\n"+$):1===et||0===et&&0===Z?t.push(nt+J.toFixed(2)+" "+Q.toFixed(2)+" Td\n"+$):t.push(nt+$);t=0===et?t.join(" Tj\nT* "):t.join(" Tj\n"),t+=" Tj\n";var it="BT\n/"+D+" "+W+" Tf\n"+(W*d).toFixed(2)+" TL\n"+te+"\n";return it+=u,it+=t,B(it+="ET"),p[D]=!0,h},h.__private__.lstext=h.lstext=function(t,e,n,i){return console.warn("jsPDF.lstext is deprecated"),this.text(t,e,n,{charSpace:i})},h.__private__.clip=h.clip=function(t){B("evenodd"===t?"W*":"W"),B("n")},h.__private__.clip_fixed=h.clip_fixed=function(t){console.log("clip_fixed is deprecated"),h.clip(t)};var Ut=h.__private__.isValidStyle=function(t){var e=!1;return-1!==[void 0,null,"S","F","DF","FD","f","f*","B","B*"].indexOf(t)&&(e=!0),e},Bt=h.__private__.getStyle=function(t){var e="S";return"F"===t?e="f":"FD"===t||"DF"===t?e="B":"f"!==t&&"f*"!==t&&"B"!==t&&"B*"!==t||(e=t),e};h.__private__.line=h.line=function(t,e,n,i){if(isNaN(t)||isNaN(e)||isNaN(n)||isNaN(i))throw new Error("Invalid arguments passed to jsPDF.line");return this.lines([[n-t,i-e]],t,e)},h.__private__.lines=h.lines=function(t,e,n,i,r,o){var a,s,c,l,u,d,p,h,f,g,m,v;if("number"==typeof t&&(v=n,n=e,e=t,t=v),i=i||[1,1],o=o||!1,isNaN(e)||isNaN(n)||!Array.isArray(t)||!Array.isArray(i)||!Ut(r)||"boolean"!=typeof o)throw new Error("Invalid arguments passed to jsPDF.lines");for(B(w(Xt(e))+" "+w(Yt(n))+" m "),a=i[0],s=i[1],l=t.length,g=e,m=n,c=0;c<l;c++)2===(u=t[c]).length?(g=u[0]*a+g,m=u[1]*s+m,B(w(Xt(g))+" "+w(Yt(m))+" l")):(d=u[0]*a+g,p=u[1]*s+m,h=u[2]*a+g,f=u[3]*s+m,g=u[4]*a+g,m=u[5]*s+m,B(w(Xt(d))+" "+w(Yt(p))+" "+w(Xt(h))+" "+w(Yt(f))+" "+w(Xt(g))+" "+w(Yt(m))+" c"));return o&&B(" h"),null!==r&&B(Bt(r)),this},h.__private__.rect=h.rect=function(t,e,n,i,r){if(isNaN(t)||isNaN(e)||isNaN(n)||isNaN(i)||!Ut(r))throw new Error("Invalid arguments passed to jsPDF.rect");return B([b(Xt(t)),b(Yt(e)),b(n*R),b(-i*R),"re"].join(" ")),null!==r&&B(Bt(r)),this},h.__private__.triangle=h.triangle=function(t,e,n,i,r,o,a){if(isNaN(t)||isNaN(e)||isNaN(n)||isNaN(i)||isNaN(r)||isNaN(o)||!Ut(a))throw new Error("Invalid arguments passed to jsPDF.triangle");return this.lines([[n-t,i-e],[r-n,o-i],[t-r,e-o]],t,e,[1,1],a,!0),this},h.__private__.roundedRect=h.roundedRect=function(t,e,n,i,r,o,a){if(isNaN(t)||isNaN(e)||isNaN(n)||isNaN(i)||isNaN(r)||isNaN(o)||!Ut(a))throw new Error("Invalid arguments passed to jsPDF.roundedRect");var s=4/3*(Math.SQRT2-1);return this.lines([[n-2*r,0],[r*s,0,r,o-o*s,r,o],[0,i-2*o],[0,o*s,-r*s,o,-r,o],[2*r-n,0],[-r*s,0,-r,-o*s,-r,-o],[0,2*o-i],[0,-o*s,r*s,-o,r,-o]],t+r,e,[1,1],a),this},h.__private__.ellipse=h.ellipse=function(t,e,n,i,r){if(isNaN(t)||isNaN(e)||isNaN(n)||isNaN(i)||!Ut(r))throw new Error("Invalid arguments passed to jsPDF.ellipse");var o=4/3*(Math.SQRT2-1)*n,a=4/3*(Math.SQRT2-1)*i;return B([b(Xt(t+n)),b(Yt(e)),"m",b(Xt(t+n)),b(Yt(e-a)),b(Xt(t+o)),b(Yt(e-i)),b(Xt(t)),b(Yt(e-i)),"c"].join(" ")),B([b(Xt(t-o)),b(Yt(e-i)),b(Xt(t-n)),b(Yt(e-a)),b(Xt(t-n)),b(Yt(e)),"c"].join(" ")),B([b(Xt(t-n)),b(Yt(e+a)),b(Xt(t-o)),b(Yt(e+i)),b(Xt(t)),b(Yt(e+i)),"c"].join(" ")),B([b(Xt(t+o)),b(Yt(e+i)),b(Xt(t+n)),b(Yt(e+a)),b(Xt(t+n)),b(Yt(e)),"c"].join(" ")),null!==r&&B(Bt(r)),this},h.__private__.circle=h.circle=function(t,e,n,i){if(isNaN(t)||isNaN(e)||isNaN(n)||!Ut(i))throw new Error("Invalid arguments passed to jsPDF.circle");return this.ellipse(t,e,n,n,i)},h.setFont=function(t,e){return D=At(t,e,{disableWarning:!1}),this},h.setFontStyle=h.setFontType=function(t){return D=At(void 0,t),this},h.__private__.getFontList=h.getFontList=function(){var t,e,n,i={};for(t in et)if(et.hasOwnProperty(t))for(e in i[t]=n=[],et[t])et[t].hasOwnProperty(e)&&n.push(e);return i},h.addFont=function(t,e,n,i){wt.call(this,t,e,n,i=i||"Identity-H")};var zt,Gt=c.lineWidth||.200025,Ht=h.__private__.setLineWidth=h.setLineWidth=function(t){return B((t*R).toFixed(2)+" w"),this},Wt=(h.__private__.setLineDash=s.API.setLineDash=function(t,e){if(t=t||[],e=e||0,isNaN(e)||!Array.isArray(t))throw new Error("Invalid arguments passed to jsPDF.setLineDash");return t=t.map(function(t){return(t*R).toFixed(3)}).join(" "),e=parseFloat((e*R).toFixed(3)),B("["+t+"] "+e+" d"),this},h.__private__.getLineHeight=h.getLineHeight=function(){return W*zt}),qt=(Wt=h.__private__.getLineHeight=h.getLineHeight=function(){return W*zt},h.__private__.setLineHeightFactor=h.setLineHeightFactor=function(t){return"number"==typeof(t=t||1.15)&&(zt=t),this}),Kt=h.__private__.getLineHeightFactor=h.getLineHeightFactor=function(){return zt};qt(c.lineHeight);var Xt=h.__private__.getHorizontalCoordinate=function(t){return t*R},Yt=h.__private__.getVerticalCoordinate=function(t){return it[O].mediaBox.topRightY-it[O].mediaBox.bottomLeftY-t*R},Zt=h.__private__.getHorizontalCoordinateString=function(t){return b(t*R)},Jt=h.__private__.getVerticalCoordinateString=function(t){return b(it[O].mediaBox.topRightY-it[O].mediaBox.bottomLeftY-t*R)},Qt=c.strokeColor||"0 G",$t=(h.__private__.getStrokeColor=h.getDrawColor=function(){return ht(Qt)},h.__private__.setStrokeColor=h.setDrawColor=function(t,e,n,i){return Qt=ft({ch1:t,ch2:e,ch3:n,ch4:i,pdfColorType:"draw",precision:2}),B(Qt),this},c.fillColor||"0 g"),te=(h.__private__.getFillColor=h.getFillColor=function(){return ht($t)},h.__private__.setFillColor=h.setFillColor=function(t,e,n,i){return $t=ft({ch1:t,ch2:e,ch3:n,ch4:i,pdfColorType:"fill",precision:2}),B($t),this},c.textColor||"0 g"),ee=h.__private__.getTextColor=h.getTextColor=function(){return ht(te)},ne=(h.__private__.setTextColor=h.setTextColor=function(t,e,n,i){return te=ft({ch1:t,ch2:e,ch3:n,ch4:i,pdfColorType:"text",precision:3}),this},c.charSpace||0),ie=h.__private__.getCharSpace=h.getCharSpace=function(){return ne},re=(h.__private__.setCharSpace=h.setCharSpace=function(t){if(isNaN(t))throw new Error("Invalid argument passed to jsPDF.setCharSpace");return ne=t,this},0);h.CapJoinStyles={0:0,butt:0,but:0,miter:0,1:1,round:1,rounded:1,circle:1,2:2,projecting:2,project:2,square:2,bevel:2},h.__private__.setLineCap=h.setLineCap=function(t){var e=h.CapJoinStyles[t];if(void 0===e)throw new Error("Line cap style of '"+t+"' is not recognized. See or extend .CapJoinStyles property for valid styles");return B((re=e)+" J"),this};var oe,ae=0;for(var se in h.__private__.setLineJoin=h.setLineJoin=function(t){var e=h.CapJoinStyles[t];if(void 0===e)throw new Error("Line join style of '"+t+"' is not recognized. See or extend .CapJoinStyles property for valid styles");return B((ae=e)+" j"),this},h.__private__.setMiterLimit=h.setMiterLimit=function(t){if(t=t||0,isNaN(t))throw new Error("Invalid argument passed to jsPDF.setMiterLimit");return oe=parseFloat(b(t*R)),B(oe+" M"),this},h.save=function(t,e){if(t=t||"generated.pdf",(e=e||{}).returnPromise=e.returnPromise||!1,!1!==e.returnPromise)return new Promise(function(e,n){try{var r=Pt(Rt(Dt()),t);"function"==typeof Pt.unload&&i.setTimeout&&setTimeout(Pt.unload,911),e(r)}catch(e){n(e.message)}});Pt(Rt(Dt()),t),"function"==typeof Pt.unload&&i.setTimeout&&setTimeout(Pt.unload,911)},s.API)s.API.hasOwnProperty(se)&&("events"===se&&s.API.events.length?function(t,e){var n,i,r;for(r=e.length-1;-1!==r;r--)n=e[r][0],i=e[r][1],t.subscribe.apply(t,[n].concat("function"==typeof i?[i]:i))}(ot,s.API.events):h[se]=s.API[se]);return h.internal={pdfEscape:St,getStyle:Bt,getFont:function(){return tt[At.apply(h,arguments)]},getFontSize:q,getCharSpace:ie,getTextColor:ee,getLineHeight:Wt,getLineHeightFactor:Kt,write:z,getHorizontalCoordinate:Xt,getVerticalCoordinate:Yt,getCoordinateString:Zt,getVerticalCoordinateString:Jt,collections:{},newObject:st,newAdditionalObject:ut,newObjectDeferred:ct,newObjectDeferredBegin:lt,getFilters:gt,putStream:mt,events:ot,scaleFactor:R,pageSize:{getWidth:function(){return(it[O].mediaBox.topRightX-it[O].mediaBox.bottomLeftX)/R},setWidth:function(t){it[O].mediaBox.topRightX=t*R+it[O].mediaBox.bottomLeftX},getHeight:function(){return(it[O].mediaBox.topRightY-it[O].mediaBox.bottomLeftY)/R},setHeight:function(t){it[O].mediaBox.topRightY=t*R+it[O].mediaBox.bottomLeftY}},output:Lt,getNumberOfPages:Ct,pages:V,out:B,f2:b,f3:w,getPageInfo:jt,getPageInfoByObjId:Vt,getCurrentPageInfo:Ft,getPDFVersion:g,hasHotfix:Nt},Object.defineProperty(h.internal.pageSize,"width",{get:function(){return(it[O].mediaBox.topRightX-it[O].mediaBox.bottomLeftX)/R},set:function(t){it[O].mediaBox.topRightX=t*R+it[O].mediaBox.bottomLeftX},enumerable:!0,configurable:!0}),Object.defineProperty(h.internal.pageSize,"height",{get:function(){return(it[O].mediaBox.topRightY-it[O].mediaBox.bottomLeftY)/R},set:function(t){it[O].mediaBox.topRightY=t*R+it[O].mediaBox.bottomLeftY},enumerable:!0,configurable:!0}),function(t){for(var e=0,n=H.length;e<n;e++){var i=wt(t[e][0],t[e][1],t[e][2],H[e][3],!0);p[i]=!0;var r=t[e][0].split("-");bt(i,r[0],r[1]||"")}ot.publish("addFonts",{fonts:tt,dictionary:et})}(H),D="F1",Mt(n,t),ot.publish("initialized"),h}return s.API={events:[]},s.version="1.5.3",void 0!==(o=function(){return s}.call(e,n,e,t))&&(t.exports=o),s}("undefined"!=typeof self&&self||"undefined"!=typeof window&&window||void 0!==i&&i||Function('return typeof this === "object" && this.content')()||Function("return this")());
  2408. /**
  2409. * @license
  2410. * Copyright (c) 2016 Alexander Weidt,
  2411. * https://github.com/BiggA94
  2412. *
  2413. * Licensed under the MIT License. http://opensource.org/licenses/mit-license
  2414. */
  2415. /**
  2416. * @license
  2417. * Copyright (c) 2016 Alexander Weidt,
  2418. * https://github.com/BiggA94
  2419. *
  2420. * Licensed under the MIT License. http://opensource.org/licenses/mit-license
  2421. */
  2422. (function(t,e){var n,i=1,o=function(t){return t.replace(/\\/g,"\\\\").replace(/\(/g,"\\(").replace(/\)/g,"\\)")},a=function(t){return t.replace(/\\\\/g,"\\").replace(/\\\(/g,"(").replace(/\\\)/g,")")},s=function(t){if(isNaN(t))throw new Error("Invalid argument passed to jsPDF.f2");return t.toFixed(2)},c=function(t){if(isNaN(t))throw new Error("Invalid argument passed to jsPDF.f2");return t.toFixed(5)};t.__acroform__={};var l=function(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t},u=function(t){return t*i},d=function(t){return t/i},p=function(t){var e=new R,n=X.internal.getHeight(t)||0,i=X.internal.getWidth(t)||0;return e.BBox=[0,0,Number(s(i)),Number(s(n))],e},h=t.__acroform__.setBit=function(t,e){if(t=t||0,e=e||0,isNaN(t)||isNaN(e))throw new Error("Invalid arguments passed to jsPDF.API.__acroform__.setBit");return t|1<<e},f=t.__acroform__.clearBit=function(t,e){if(t=t||0,e=e||0,isNaN(t)||isNaN(e))throw new Error("Invalid arguments passed to jsPDF.API.__acroform__.clearBit");return t&~(1<<e)},g=t.__acroform__.getBit=function(t,e){if(isNaN(t)||isNaN(e))throw new Error("Invalid arguments passed to jsPDF.API.__acroform__.getBit");return 0==(t&1<<e)?0:1},m=t.__acroform__.getBitForPdf=function(t,e){if(isNaN(t)||isNaN(e))throw new Error("Invalid arguments passed to jsPDF.API.__acroform__.getBitForPdf");return g(t,e-1)},v=t.__acroform__.setBitForPdf=function(t,e){if(isNaN(t)||isNaN(e))throw new Error("Invalid arguments passed to jsPDF.API.__acroform__.setBitForPdf");return h(t,e-1)},y=t.__acroform__.clearBitForPdf=function(t,e,n){if(isNaN(t)||isNaN(e))throw new Error("Invalid arguments passed to jsPDF.API.__acroform__.clearBitForPdf");return f(t,e-1)},b=t.__acroform__.calculateCoordinates=function(t){var e=this.internal.getHorizontalCoordinate,n=this.internal.getVerticalCoordinate,i=t[0],r=t[1],o=t[2],a=t[3],c={};return c.lowerLeft_X=e(i)||0,c.lowerLeft_Y=n(r+a)||0,c.upperRight_X=e(i+o)||0,c.upperRight_Y=n(r)||0,[Number(s(c.lowerLeft_X)),Number(s(c.lowerLeft_Y)),Number(s(c.upperRight_X)),Number(s(c.upperRight_Y))]},w=function(t){if(t.appearanceStreamContent)return t.appearanceStreamContent;if(t.V||t.DV){var e=[],i=t.V||t.DV,r=S(t,i),o=n.internal.getFont(t.fontName,t.fontStyle).id;e.push("/Tx BMC"),e.push("q"),e.push("BT"),e.push(n.__private__.encodeColorString(t.color)),e.push("/"+o+" "+s(r.fontSize)+" Tf"),e.push("1 0 0 1 0 0 Tm"),e.push(r.text),e.push("ET"),e.push("Q"),e.push("EMC");var a=new p(t);return a.stream=e.join("\n"),a}},S=function(t,e){var i=t.maxFontSize||12,r=(t.fontName,{text:"",fontSize:""}),a=(e=")"==(e="("==e.substr(0,1)?e.substr(1):e).substr(e.length-1)?e.substr(0,e.length-1):e).split(" "),c=(n.__private__.encodeColorString(t.color),i),l=X.internal.getHeight(t)||0;l=l<0?-l:l;var u=X.internal.getWidth(t)||0;u=u<0?-u:u;var d=function(e,n,i){if(e+1<a.length){var r=n+" "+a[e+1];return x(r,t,i).width<=u-4}return!1};c++;t:for(;;){e="";var p=x("3",t,--c).height,h=t.multiline?l-c:(l-p)/2,f=-2,g=h+=2,m=0,v=0,y=0;if(c<=0){e="(...) Tj\n",e+="% Width of Text: "+x(e,t,c=12).width+", FieldWidth:"+u+"\n";break}y=x(a[0]+" ",t,c).width;var b="",w=0;for(var S in a)if(a.hasOwnProperty(S)){b=" "==(b+=a[S]+" ").substr(b.length-1)?b.substr(0,b.length-1):b;var M=parseInt(S);y=x(b+" ",t,c).width;var E=d(M,b,c),C=S>=a.length-1;if(E&&!C){b+=" ";continue}if(E||C){if(C)v=M;else if(t.multiline&&l<(p+2)*(w+2)+2)continue t}else{if(!t.multiline)continue t;if(l<(p+2)*(w+2)+2)continue t;v=M}for(var A="",T=m;T<=v;T++)A+=a[T]+" ";switch(A=" "==A.substr(A.length-1)?A.substr(0,A.length-1):A,y=x(A,t,c).width,t.textAlign){case"right":f=u-y-2;break;case"center":f=(u-y)/2;break;case"left":default:f=2}e+=s(f)+" "+s(g)+" Td\n",e+="("+o(A)+") Tj\n",e+=-s(f)+" 0 Td\n",g=-(c+2),y=0,m=v+1,w++,b=""}break}return r.text=e,r.fontSize=c,r},x=function(t,e,i){var r=n.internal.getFont(e.fontName,e.fontStyle),o=n.getStringUnitWidth(t,{font:r,fontSize:parseFloat(i),charSpace:0})*parseFloat(i);return{height:n.getStringUnitWidth("3",{font:r,fontSize:parseFloat(i),charSpace:0})*parseFloat(i)*1.5,width:o}},M={fields:[],xForms:[],acroFormDictionaryRoot:null,printedOut:!1,internal:null,isInitialized:!1},E=function(){n.internal.acroformPlugin.acroFormDictionaryRoot.objId=void 0;var t=n.internal.acroformPlugin.acroFormDictionaryRoot.Fields;for(var e in t)if(t.hasOwnProperty(e)){var i=t[e];i.objId=void 0,i.hasAnnotation&&C.call(n,i)}},C=function(t){var e={type:"reference",object:t};void 0===n.internal.getPageInfo(t.page).pageContext.annotations.find(function(t){return t.type===e.type&&t.object===e.object})&&n.internal.getPageInfo(t.page).pageContext.annotations.push(e)},A=function(){if(void 0===n.internal.acroformPlugin.acroFormDictionaryRoot)throw new Error("putCatalogCallback: Root missing.");n.internal.write("/AcroForm "+n.internal.acroformPlugin.acroFormDictionaryRoot.objId+" 0 R")},T=function(){n.internal.events.unsubscribe(n.internal.acroformPlugin.acroFormDictionaryRoot._eventID),delete n.internal.acroformPlugin.acroFormDictionaryRoot._eventID,n.internal.acroformPlugin.printedOut=!0},O=function(t){var e=!t;for(var i in t||(n.internal.newObjectDeferredBegin(n.internal.acroformPlugin.acroFormDictionaryRoot.objId,!0),n.internal.acroformPlugin.acroFormDictionaryRoot.putStream()),t=t||n.internal.acroformPlugin.acroFormDictionaryRoot.Kids)if(t.hasOwnProperty(i)){var o=t[i],a=[],s=o.Rect;if(o.Rect&&(o.Rect=b.call(this,o.Rect)),n.internal.newObjectDeferredBegin(o.objId,!0),o.DA=X.createDefaultAppearanceStream(o),"object"===r(o)&&"function"==typeof o.getKeyValueListForStream&&(a=o.getKeyValueListForStream()),o.Rect=s,o.hasAppearanceStream&&!o.appearanceStreamContent){var c=w.call(this,o);a.push({key:"AP",value:"<</N "+c+">>"}),n.internal.acroformPlugin.xForms.push(c)}if(o.appearanceStreamContent){var l="";for(var u in o.appearanceStreamContent)if(o.appearanceStreamContent.hasOwnProperty(u)){var d=o.appearanceStreamContent[u];if(l+="/"+u+" ",l+="<<",1<=Object.keys(d).length||Array.isArray(d))for(var i in d){var p;d.hasOwnProperty(i)&&("function"==typeof(p=d[i])&&(p=p.call(this,o)),l+="/"+i+" "+p+" ",0<=n.internal.acroformPlugin.xForms.indexOf(p)||n.internal.acroformPlugin.xForms.push(p))}else"function"==typeof(p=d)&&(p=p.call(this,o)),l+="/"+i+" "+p,0<=n.internal.acroformPlugin.xForms.indexOf(p)||n.internal.acroformPlugin.xForms.push(p);l+=">>"}a.push({key:"AP",value:"<<\n"+l+">>"})}n.internal.putStream({additionalKeyValues:a}),n.internal.out("endobj")}e&&_.call(this,n.internal.acroformPlugin.xForms)},_=function(t){for(var e in t)if(t.hasOwnProperty(e)){var i=e,o=t[e];n.internal.newObjectDeferredBegin(o&&o.objId,!0),"object"===r(o)&&"function"==typeof o.putStream&&o.putStream(),delete t[i]}},P=function(){if(void 0!==this.internal&&(void 0===this.internal.acroformPlugin||!1===this.internal.acroformPlugin.isInitialized)){if(n=this,N.FieldNum=0,this.internal.acroformPlugin=JSON.parse(JSON.stringify(M)),this.internal.acroformPlugin.acroFormDictionaryRoot)throw new Error("Exception while creating AcroformDictionary");i=n.internal.scaleFactor,n.internal.acroformPlugin.acroFormDictionaryRoot=new L,n.internal.acroformPlugin.acroFormDictionaryRoot._eventID=n.internal.events.subscribe("postPutResources",T),n.internal.events.subscribe("buildDocument",E),n.internal.events.subscribe("putCatalog",A),n.internal.events.subscribe("postPutPages",O),n.internal.acroformPlugin.isInitialized=!0}},I=t.__acroform__.arrayToPdfArray=function(t){if(Array.isArray(t)){for(var e="[",n=0;n<t.length;n++)switch(0!==n&&(e+=" "),r(t[n])){case"boolean":case"number":case"object":e+=t[n].toString();break;case"string":"/"!==t[n].substr(0,1)?e+="("+o(t[n].toString())+")":e+=t[n].toString()}return e+"]"}throw new Error("Invalid argument passed to jsPDF.__acroform__.arrayToPdfArray")},k=function(t){return(t=t||"").toString(),"("+o(t)+")"},D=function(){var t;Object.defineProperty(this,"objId",{configurable:!0,get:function(){if(t||(t=n.internal.newObjectDeferred()),!t)throw new Error("AcroFormPDFObject: Couldn't create Object ID");return t},set:function(e){t=e}})};D.prototype.toString=function(){return this.objId+" 0 R"},D.prototype.putStream=function(){var t=this.getKeyValueListForStream();n.internal.putStream({data:this.stream,additionalKeyValues:t}),n.internal.out("endobj")},D.prototype.getKeyValueListForStream=function(){return function(t){var e=[],n=Object.getOwnPropertyNames(t).filter(function(t){return"content"!=t&&"appearanceStreamContent"!=t&&"_"!=t.substring(0,1)});for(var i in n)if(!1===Object.getOwnPropertyDescriptor(t,n[i]).configurable){var r=n[i],o=t[r];o&&(Array.isArray(o)?e.push({key:r,value:I(o)}):o instanceof D?e.push({key:r,value:o.objId+" 0 R"}):"function"!=typeof o&&e.push({key:r,value:o}))}return e}(this)};var R=function(){D.call(this),Object.defineProperty(this,"Type",{value:"/XObject",configurable:!1,writeable:!0}),Object.defineProperty(this,"Subtype",{value:"/Form",configurable:!1,writeable:!0}),Object.defineProperty(this,"FormType",{value:1,configurable:!1,writeable:!0});var t,e=[];Object.defineProperty(this,"BBox",{configurable:!1,writeable:!0,get:function(){return e},set:function(t){e=t}}),Object.defineProperty(this,"Resources",{value:"2 0 R",configurable:!1,writeable:!0}),Object.defineProperty(this,"stream",{enumerable:!1,configurable:!0,set:function(e){t=e.trim()},get:function(){return t||null}})};l(R,D);var L=function(){D.call(this);var t,e=[];Object.defineProperty(this,"Kids",{enumerable:!1,configurable:!0,get:function(){return 0<e.length?e:void 0}}),Object.defineProperty(this,"Fields",{enumerable:!1,configurable:!1,get:function(){return e}}),Object.defineProperty(this,"DA",{enumerable:!1,configurable:!1,get:function(){if(t)return"("+t+")"},set:function(e){t=e}})};l(L,D);var N=function t(){D.call(this);var e=4;Object.defineProperty(this,"F",{enumerable:!1,configurable:!1,get:function(){return e},set:function(t){if(isNaN(t))throw new Error('Invalid value "'+t+'" for attribute F supplied.');e=t}}),Object.defineProperty(this,"showWhenPrinted",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(e,3))},set:function(t){!0===Boolean(t)?this.F=v(e,3):this.F=y(e,3)}});var n=0;Object.defineProperty(this,"Ff",{enumerable:!1,configurable:!1,get:function(){return n},set:function(t){if(isNaN(t))throw new Error('Invalid value "'+t+'" for attribute Ff supplied.');n=t}});var i=[];Object.defineProperty(this,"Rect",{enumerable:!1,configurable:!1,get:function(){if(0!==i.length)return i},set:function(t){i=void 0!==t?t:[]}}),Object.defineProperty(this,"x",{enumerable:!0,configurable:!0,get:function(){return!i||isNaN(i[0])?0:d(i[0])},set:function(t){i[0]=u(t)}}),Object.defineProperty(this,"y",{enumerable:!0,configurable:!0,get:function(){return!i||isNaN(i[1])?0:d(i[1])},set:function(t){i[1]=u(t)}}),Object.defineProperty(this,"width",{enumerable:!0,configurable:!0,get:function(){return!i||isNaN(i[2])?0:d(i[2])},set:function(t){i[2]=u(t)}}),Object.defineProperty(this,"height",{enumerable:!0,configurable:!0,get:function(){return!i||isNaN(i[3])?0:d(i[3])},set:function(t){i[3]=u(t)}});var r="";Object.defineProperty(this,"FT",{enumerable:!0,configurable:!1,get:function(){return r},set:function(t){switch(t){case"/Btn":case"/Tx":case"/Ch":case"/Sig":r=t;break;default:throw new Error('Invalid value "'+t+'" for attribute FT supplied.')}}});var s=null;Object.defineProperty(this,"T",{enumerable:!0,configurable:!1,get:function(){if(!s||s.length<1){if(this instanceof H)return;s="FieldObject"+t.FieldNum++}return"("+o(s)+")"},set:function(t){s=t.toString()}}),Object.defineProperty(this,"fieldName",{configurable:!0,enumerable:!0,get:function(){return s},set:function(t){s=t}});var c="helvetica";Object.defineProperty(this,"fontName",{enumerable:!0,configurable:!0,get:function(){return c},set:function(t){c=t}});var l="normal";Object.defineProperty(this,"fontStyle",{enumerable:!0,configurable:!0,get:function(){return l},set:function(t){l=t}});var p=0;Object.defineProperty(this,"fontSize",{enumerable:!0,configurable:!0,get:function(){return d(p)},set:function(t){p=u(t)}});var h=50;Object.defineProperty(this,"maxFontSize",{enumerable:!0,configurable:!0,get:function(){return d(h)},set:function(t){h=u(t)}});var f="black";Object.defineProperty(this,"color",{enumerable:!0,configurable:!0,get:function(){return f},set:function(t){f=t}});var g="/F1 0 Tf 0 g";Object.defineProperty(this,"DA",{enumerable:!0,configurable:!1,get:function(){if(!(!g||this instanceof H||this instanceof q))return k(g)},set:function(t){t=t.toString(),g=t}});var b=null;Object.defineProperty(this,"DV",{enumerable:!1,configurable:!1,get:function(){if(b)return this instanceof B==0?k(b):b},set:function(t){t=t.toString(),b=this instanceof B==0?"("===t.substr(0,1)?a(t.substr(1,t.length-2)):a(t):t}}),Object.defineProperty(this,"defaultValue",{enumerable:!0,configurable:!0,get:function(){return this instanceof B==1?a(b.substr(1,b.length-1)):b},set:function(t){t=t.toString(),b=this instanceof B==1?"/"+t:t}});var w=null;Object.defineProperty(this,"V",{enumerable:!1,configurable:!1,get:function(){if(w)return this instanceof B==0?k(w):w},set:function(t){t=t.toString(),w=this instanceof B==0?"("===t.substr(0,1)?a(t.substr(1,t.length-2)):a(t):t}}),Object.defineProperty(this,"value",{enumerable:!0,configurable:!0,get:function(){return this instanceof B==1?a(w.substr(1,w.length-1)):w},set:function(t){t=t.toString(),w=this instanceof B==1?"/"+t:t}}),Object.defineProperty(this,"hasAnnotation",{enumerable:!0,configurable:!0,get:function(){return this.Rect}}),Object.defineProperty(this,"Type",{enumerable:!0,configurable:!1,get:function(){return this.hasAnnotation?"/Annot":null}}),Object.defineProperty(this,"Subtype",{enumerable:!0,configurable:!1,get:function(){return this.hasAnnotation?"/Widget":null}});var S,x=!1;Object.defineProperty(this,"hasAppearanceStream",{enumerable:!0,configurable:!0,writeable:!0,get:function(){return x},set:function(t){t=Boolean(t),x=t}}),Object.defineProperty(this,"page",{enumerable:!0,configurable:!0,writeable:!0,get:function(){if(S)return S},set:function(t){S=t}}),Object.defineProperty(this,"readOnly",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(this.Ff,1))},set:function(t){!0===Boolean(t)?this.Ff=v(this.Ff,1):this.Ff=y(this.Ff,1)}}),Object.defineProperty(this,"required",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(this.Ff,2))},set:function(t){!0===Boolean(t)?this.Ff=v(this.Ff,2):this.Ff=y(this.Ff,2)}}),Object.defineProperty(this,"noExport",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(this.Ff,3))},set:function(t){!0===Boolean(t)?this.Ff=v(this.Ff,3):this.Ff=y(this.Ff,3)}});var M=null;Object.defineProperty(this,"Q",{enumerable:!0,configurable:!1,get:function(){if(null!==M)return M},set:function(t){if(-1===[0,1,2].indexOf(t))throw new Error('Invalid value "'+t+'" for attribute Q supplied.');M=t}}),Object.defineProperty(this,"textAlign",{get:function(){var t="left";switch(M){case 0:default:t="left";break;case 1:t="center";break;case 2:t="right"}return t},configurable:!0,enumerable:!0,set:function(t){switch(t){case"right":case 2:M=2;break;case"center":case 1:M=1;break;case"left":case 0:default:M=0}}})};l(N,D);var j=function(){N.call(this),this.FT="/Ch",this.V="()",this.fontName="zapfdingbats";var t=0;Object.defineProperty(this,"TI",{enumerable:!0,configurable:!1,get:function(){return t},set:function(e){t=e}}),Object.defineProperty(this,"topIndex",{enumerable:!0,configurable:!0,get:function(){return t},set:function(e){t=e}});var e=[];Object.defineProperty(this,"Opt",{enumerable:!0,configurable:!1,get:function(){return I(e)},set:function(t){var n,i;i=[],"string"==typeof(n=t)&&(i=function(t,e,n){n||(n=1);for(var i,r=[];i=e.exec(t);)r.push(i[n]);return r}(n,/\((.*?)\)/g)),e=i}}),this.getOptions=function(){return e},this.setOptions=function(t){e=t,this.sort&&e.sort()},this.addOption=function(t){t=(t=t||"").toString(),e.push(t),this.sort&&e.sort()},this.removeOption=function(t,n){for(n=n||!1,t=(t=t||"").toString();-1!==e.indexOf(t)&&(e.splice(e.indexOf(t),1),!1!==n););},Object.defineProperty(this,"combo",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(this.Ff,18))},set:function(t){!0===Boolean(t)?this.Ff=v(this.Ff,18):this.Ff=y(this.Ff,18)}}),Object.defineProperty(this,"edit",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(this.Ff,19))},set:function(t){!0===this.combo&&(!0===Boolean(t)?this.Ff=v(this.Ff,19):this.Ff=y(this.Ff,19))}}),Object.defineProperty(this,"sort",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(this.Ff,20))},set:function(t){!0===Boolean(t)?(this.Ff=v(this.Ff,20),e.sort()):this.Ff=y(this.Ff,20)}}),Object.defineProperty(this,"multiSelect",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(this.Ff,22))},set:function(t){!0===Boolean(t)?this.Ff=v(this.Ff,22):this.Ff=y(this.Ff,22)}}),Object.defineProperty(this,"doNotSpellCheck",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(this.Ff,23))},set:function(t){!0===Boolean(t)?this.Ff=v(this.Ff,23):this.Ff=y(this.Ff,23)}}),Object.defineProperty(this,"commitOnSelChange",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(this.Ff,27))},set:function(t){!0===Boolean(t)?this.Ff=v(this.Ff,27):this.Ff=y(this.Ff,27)}}),this.hasAppearanceStream=!1};l(j,N);var V=function(){j.call(this),this.fontName="helvetica",this.combo=!1};l(V,j);var F=function(){V.call(this),this.combo=!0};l(F,V);var U=function(){F.call(this),this.edit=!0};l(U,F);var B=function(){N.call(this),this.FT="/Btn",Object.defineProperty(this,"noToggleToOff",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(this.Ff,15))},set:function(t){!0===Boolean(t)?this.Ff=v(this.Ff,15):this.Ff=y(this.Ff,15)}}),Object.defineProperty(this,"radio",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(this.Ff,16))},set:function(t){!0===Boolean(t)?this.Ff=v(this.Ff,16):this.Ff=y(this.Ff,16)}}),Object.defineProperty(this,"pushButton",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(this.Ff,17))},set:function(t){!0===Boolean(t)?this.Ff=v(this.Ff,17):this.Ff=y(this.Ff,17)}}),Object.defineProperty(this,"radioIsUnison",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(this.Ff,26))},set:function(t){!0===Boolean(t)?this.Ff=v(this.Ff,26):this.Ff=y(this.Ff,26)}});var t,e={};Object.defineProperty(this,"MK",{enumerable:!1,configurable:!1,get:function(){if(0!==Object.keys(e).length){var t,n=[];for(t in n.push("<<"),e)n.push("/"+t+" ("+e[t]+")");return n.push(">>"),n.join("\n")}},set:function(t){"object"===r(t)&&(e=t)}}),Object.defineProperty(this,"caption",{enumerable:!0,configurable:!0,get:function(){return e.CA||""},set:function(t){"string"==typeof t&&(e.CA=t)}}),Object.defineProperty(this,"AS",{enumerable:!1,configurable:!1,get:function(){return t},set:function(e){t=e}}),Object.defineProperty(this,"appearanceState",{enumerable:!0,configurable:!0,get:function(){return t.substr(1,t.length-1)},set:function(e){t="/"+e}})};l(B,N);var z=function(){B.call(this),this.pushButton=!0};l(z,B);var G=function(){B.call(this),this.radio=!0,this.pushButton=!1;var t=[];Object.defineProperty(this,"Kids",{enumerable:!0,configurable:!1,get:function(){return t},set:function(e){t=void 0!==e?e:[]}})};l(G,B);var H=function(){var t,e;N.call(this),Object.defineProperty(this,"Parent",{enumerable:!1,configurable:!1,get:function(){return t},set:function(e){t=e}}),Object.defineProperty(this,"optionName",{enumerable:!1,configurable:!0,get:function(){return e},set:function(t){e=t}});var n,i={};Object.defineProperty(this,"MK",{enumerable:!1,configurable:!1,get:function(){var t,e=[];for(t in e.push("<<"),i)e.push("/"+t+" ("+i[t]+")");return e.push(">>"),e.join("\n")},set:function(t){"object"===r(t)&&(i=t)}}),Object.defineProperty(this,"caption",{enumerable:!0,configurable:!0,get:function(){return i.CA||""},set:function(t){"string"==typeof t&&(i.CA=t)}}),Object.defineProperty(this,"AS",{enumerable:!1,configurable:!1,get:function(){return n},set:function(t){n=t}}),Object.defineProperty(this,"appearanceState",{enumerable:!0,configurable:!0,get:function(){return n.substr(1,n.length-1)},set:function(t){n="/"+t}}),this.optionName=name,this.caption="l",this.appearanceState="Off",this._AppearanceType=X.RadioButton.Circle,this.appearanceStreamContent=this._AppearanceType.createAppearanceStream(name)};l(H,N),G.prototype.setAppearance=function(t){if(!("createAppearanceStream"in t&&"getCA"in t))throw new Error("Couldn't assign Appearance to RadioButton. Appearance was Invalid!");for(var e in this.Kids)if(this.Kids.hasOwnProperty(e)){var n=this.Kids[e];n.appearanceStreamContent=t.createAppearanceStream(n.optionName),n.caption=t.getCA()}},G.prototype.createOption=function(t){this.Kids.length;var e=new H;return e.Parent=this,e.optionName=t,this.Kids.push(e),Y.call(this,e),e};var W=function(){B.call(this),this.fontName="zapfdingbats",this.caption="3",this.appearanceState="On",this.value="On",this.textAlign="center",this.appearanceStreamContent=X.CheckBox.createAppearanceStream()};l(W,B);var q=function(){N.call(this),this.FT="/Tx",Object.defineProperty(this,"multiline",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(this.Ff,13))},set:function(t){!0===Boolean(t)?this.Ff=v(this.Ff,13):this.Ff=y(this.Ff,13)}}),Object.defineProperty(this,"fileSelect",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(this.Ff,21))},set:function(t){!0===Boolean(t)?this.Ff=v(this.Ff,21):this.Ff=y(this.Ff,21)}}),Object.defineProperty(this,"doNotSpellCheck",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(this.Ff,23))},set:function(t){!0===Boolean(t)?this.Ff=v(this.Ff,23):this.Ff=y(this.Ff,23)}}),Object.defineProperty(this,"doNotScroll",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(this.Ff,24))},set:function(t){!0===Boolean(t)?this.Ff=v(this.Ff,24):this.Ff=y(this.Ff,24)}}),Object.defineProperty(this,"comb",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(this.Ff,25))},set:function(t){!0===Boolean(t)?this.Ff=v(this.Ff,25):this.Ff=y(this.Ff,25)}}),Object.defineProperty(this,"richText",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(this.Ff,26))},set:function(t){!0===Boolean(t)?this.Ff=v(this.Ff,26):this.Ff=y(this.Ff,26)}});var t=null;Object.defineProperty(this,"MaxLen",{enumerable:!0,configurable:!1,get:function(){return t},set:function(e){t=e}}),Object.defineProperty(this,"maxLength",{enumerable:!0,configurable:!0,get:function(){return t},set:function(e){Number.isInteger(e)&&(t=e)}}),Object.defineProperty(this,"hasAppearanceStream",{enumerable:!0,configurable:!0,get:function(){return this.V||this.DV}})};l(q,N);var K=function(){q.call(this),Object.defineProperty(this,"password",{enumerable:!0,configurable:!0,get:function(){return Boolean(m(this.Ff,14))},set:function(t){!0===Boolean(t)?this.Ff=v(this.Ff,14):this.Ff=y(this.Ff,14)}}),this.password=!0};l(K,q);var X={CheckBox:{createAppearanceStream:function(){return{N:{On:X.CheckBox.YesNormal},D:{On:X.CheckBox.YesPushDown,Off:X.CheckBox.OffPushDown}}},YesPushDown:function(t){var e=p(t),i=[],r=n.internal.getFont(t.fontName,t.fontStyle).id,o=n.__private__.encodeColorString(t.color),a=S(t,t.caption);return i.push("0.749023 g"),i.push("0 0 "+s(X.internal.getWidth(t))+" "+s(X.internal.getHeight(t))+" re"),i.push("f"),i.push("BMC"),i.push("q"),i.push("0 0 1 rg"),i.push("/"+r+" "+s(a.fontSize)+" Tf "+o),i.push("BT"),i.push(a.text),i.push("ET"),i.push("Q"),i.push("EMC"),e.stream=i.join("\n"),e},YesNormal:function(t){var e=p(t),i=n.internal.getFont(t.fontName,t.fontStyle).id,r=n.__private__.encodeColorString(t.color),o=[],a=X.internal.getHeight(t),c=X.internal.getWidth(t),l=S(t,t.caption);return o.push("1 g"),o.push("0 0 "+s(c)+" "+s(a)+" re"),o.push("f"),o.push("q"),o.push("0 0 1 rg"),o.push("0 0 "+s(c-1)+" "+s(a-1)+" re"),o.push("W"),o.push("n"),o.push("0 g"),o.push("BT"),o.push("/"+i+" "+s(l.fontSize)+" Tf "+r),o.push(l.text),o.push("ET"),o.push("Q"),e.stream=o.join("\n"),e},OffPushDown:function(t){var e=p(t),n=[];return n.push("0.749023 g"),n.push("0 0 "+s(X.internal.getWidth(t))+" "+s(X.internal.getHeight(t))+" re"),n.push("f"),e.stream=n.join("\n"),e}},RadioButton:{Circle:{createAppearanceStream:function(t){var e={D:{Off:X.RadioButton.Circle.OffPushDown},N:{}};return e.N[t]=X.RadioButton.Circle.YesNormal,e.D[t]=X.RadioButton.Circle.YesPushDown,e},getCA:function(){return"l"},YesNormal:function(t){var e=p(t),n=[],i=X.internal.getWidth(t)<=X.internal.getHeight(t)?X.internal.getWidth(t)/4:X.internal.getHeight(t)/4;i=Number((.9*i).toFixed(5));var r=X.internal.Bezier_C,o=Number((i*r).toFixed(5));return n.push("q"),n.push("1 0 0 1 "+c(X.internal.getWidth(t)/2)+" "+c(X.internal.getHeight(t)/2)+" cm"),n.push(i+" 0 m"),n.push(i+" "+o+" "+o+" "+i+" 0 "+i+" c"),n.push("-"+o+" "+i+" -"+i+" "+o+" -"+i+" 0 c"),n.push("-"+i+" -"+o+" -"+o+" -"+i+" 0 -"+i+" c"),n.push(o+" -"+i+" "+i+" -"+o+" "+i+" 0 c"),n.push("f"),n.push("Q"),e.stream=n.join("\n"),e},YesPushDown:function(t){var e=p(t),n=[],i=X.internal.getWidth(t)<=X.internal.getHeight(t)?X.internal.getWidth(t)/4:X.internal.getHeight(t)/4,r=(i=Number((.9*i).toFixed(5)),Number((2*i).toFixed(5))),o=Number((r*X.internal.Bezier_C).toFixed(5)),a=Number((i*X.internal.Bezier_C).toFixed(5));return n.push("0.749023 g"),n.push("q"),n.push("1 0 0 1 "+c(X.internal.getWidth(t)/2)+" "+c(X.internal.getHeight(t)/2)+" cm"),n.push(r+" 0 m"),n.push(r+" "+o+" "+o+" "+r+" 0 "+r+" c"),n.push("-"+o+" "+r+" -"+r+" "+o+" -"+r+" 0 c"),n.push("-"+r+" -"+o+" -"+o+" -"+r+" 0 -"+r+" c"),n.push(o+" -"+r+" "+r+" -"+o+" "+r+" 0 c"),n.push("f"),n.push("Q"),n.push("0 g"),n.push("q"),n.push("1 0 0 1 "+c(X.internal.getWidth(t)/2)+" "+c(X.internal.getHeight(t)/2)+" cm"),n.push(i+" 0 m"),n.push(i+" "+a+" "+a+" "+i+" 0 "+i+" c"),n.push("-"+a+" "+i+" -"+i+" "+a+" -"+i+" 0 c"),n.push("-"+i+" -"+a+" -"+a+" -"+i+" 0 -"+i+" c"),n.push(a+" -"+i+" "+i+" -"+a+" "+i+" 0 c"),n.push("f"),n.push("Q"),e.stream=n.join("\n"),e},OffPushDown:function(t){var e=p(t),n=[],i=X.internal.getWidth(t)<=X.internal.getHeight(t)?X.internal.getWidth(t)/4:X.internal.getHeight(t)/4,r=(i=Number((.9*i).toFixed(5)),Number((2*i).toFixed(5))),o=Number((r*X.internal.Bezier_C).toFixed(5));return n.push("0.749023 g"),n.push("q"),n.push("1 0 0 1 "+c(X.internal.getWidth(t)/2)+" "+c(X.internal.getHeight(t)/2)+" cm"),n.push(r+" 0 m"),n.push(r+" "+o+" "+o+" "+r+" 0 "+r+" c"),n.push("-"+o+" "+r+" -"+r+" "+o+" -"+r+" 0 c"),n.push("-"+r+" -"+o+" -"+o+" -"+r+" 0 -"+r+" c"),n.push(o+" -"+r+" "+r+" -"+o+" "+r+" 0 c"),n.push("f"),n.push("Q"),e.stream=n.join("\n"),e}},Cross:{createAppearanceStream:function(t){var e={D:{Off:X.RadioButton.Cross.OffPushDown},N:{}};return e.N[t]=X.RadioButton.Cross.YesNormal,e.D[t]=X.RadioButton.Cross.YesPushDown,e},getCA:function(){return"8"},YesNormal:function(t){var e=p(t),n=[],i=X.internal.calculateCross(t);return n.push("q"),n.push("1 1 "+s(X.internal.getWidth(t)-2)+" "+s(X.internal.getHeight(t)-2)+" re"),n.push("W"),n.push("n"),n.push(s(i.x1.x)+" "+s(i.x1.y)+" m"),n.push(s(i.x2.x)+" "+s(i.x2.y)+" l"),n.push(s(i.x4.x)+" "+s(i.x4.y)+" m"),n.push(s(i.x3.x)+" "+s(i.x3.y)+" l"),n.push("s"),n.push("Q"),e.stream=n.join("\n"),e},YesPushDown:function(t){var e=p(t),n=X.internal.calculateCross(t),i=[];return i.push("0.749023 g"),i.push("0 0 "+s(X.internal.getWidth(t))+" "+s(X.internal.getHeight(t))+" re"),i.push("f"),i.push("q"),i.push("1 1 "+s(X.internal.getWidth(t)-2)+" "+s(X.internal.getHeight(t)-2)+" re"),i.push("W"),i.push("n"),i.push(s(n.x1.x)+" "+s(n.x1.y)+" m"),i.push(s(n.x2.x)+" "+s(n.x2.y)+" l"),i.push(s(n.x4.x)+" "+s(n.x4.y)+" m"),i.push(s(n.x3.x)+" "+s(n.x3.y)+" l"),i.push("s"),i.push("Q"),e.stream=i.join("\n"),e},OffPushDown:function(t){var e=p(t),n=[];return n.push("0.749023 g"),n.push("0 0 "+s(X.internal.getWidth(t))+" "+s(X.internal.getHeight(t))+" re"),n.push("f"),e.stream=n.join("\n"),e}}},createDefaultAppearanceStream:function(t){var e=n.internal.getFont(t.fontName,t.fontStyle).id,i=n.__private__.encodeColorString(t.color);return"/"+e+" "+t.fontSize+" Tf "+i}};X.internal={Bezier_C:.551915024494,calculateCross:function(t){var e=X.internal.getWidth(t),n=X.internal.getHeight(t),i=Math.min(e,n);return{x1:{x:(e-i)/2,y:(n-i)/2+i},x2:{x:(e-i)/2+i,y:(n-i)/2},x3:{x:(e-i)/2,y:(n-i)/2},x4:{x:(e-i)/2+i,y:(n-i)/2+i}}}},X.internal.getWidth=function(t){var e=0;return"object"===r(t)&&(e=u(t.Rect[2])),e},X.internal.getHeight=function(t){var e=0;return"object"===r(t)&&(e=u(t.Rect[3])),e};var Y=t.addField=function(t){if(P.call(this),!(t instanceof N))throw new Error("Invalid argument passed to jsPDF.addField.");return function(t){n.internal.acroformPlugin.printedOut&&(n.internal.acroformPlugin.printedOut=!1,n.internal.acroformPlugin.acroFormDictionaryRoot=null),n.internal.acroformPlugin.acroFormDictionaryRoot||P.call(n),n.internal.acroformPlugin.acroFormDictionaryRoot.Fields.push(t)}.call(this,t),t.page=n.internal.getCurrentPageInfo().pageNumber,this};t.addButton=function(t){if(t instanceof B==0)throw new Error("Invalid argument passed to jsPDF.addButton.");return Y.call(this,t)},t.addTextField=function(t){if(t instanceof q==0)throw new Error("Invalid argument passed to jsPDF.addTextField.");return Y.call(this,t)},t.addChoiceField=function(t){if(t instanceof j==0)throw new Error("Invalid argument passed to jsPDF.addChoiceField.");return Y.call(this,t)},"object"==r(e)&&void 0===e.ChoiceField&&void 0===e.ListBox&&void 0===e.ComboBox&&void 0===e.EditBox&&void 0===e.Button&&void 0===e.PushButton&&void 0===e.RadioButton&&void 0===e.CheckBox&&void 0===e.TextField&&void 0===e.PasswordField?(e.ChoiceField=j,e.ListBox=V,e.ComboBox=F,e.EditBox=U,e.Button=B,e.PushButton=z,e.RadioButton=G,e.CheckBox=W,e.TextField=q,e.PasswordField=K,e.AcroForm={Appearance:X}):console.warn("AcroForm-Classes are not populated into global-namespace, because the class-Names exist already."),t.AcroFormChoiceField=j,t.AcroFormListBox=V,t.AcroFormComboBox=F,t.AcroFormEditBox=U,t.AcroFormButton=B,t.AcroFormPushButton=z,t.AcroFormRadioButton=G,t.AcroFormCheckBox=W,t.AcroFormTextField=q,t.AcroFormPasswordField=K,t.AcroFormAppearance=X,t.AcroForm={ChoiceField:j,ListBox:V,ComboBox:F,EditBox:U,Button:B,PushButton:z,RadioButton:G,CheckBox:W,TextField:q,PasswordField:K,Appearance:X}})((window.tmp=ft).API,"undefined"!=typeof window&&window||void 0!==i&&i),
  2423. /** @license
  2424. * jsPDF addImage plugin
  2425. * Copyright (c) 2012 Jason Siefken, https://github.com/siefkenj/
  2426. * 2013 Chris Dowling, https://github.com/gingerchris
  2427. * 2013 Trinh Ho, https://github.com/ineedfat
  2428. * 2013 Edwin Alejandro Perez, https://github.com/eaparango
  2429. * 2013 Norah Smith, https://github.com/burnburnrocket
  2430. * 2014 Diego Casorran, https://github.com/diegocr
  2431. * 2014 James Robb, https://github.com/jamesbrobb
  2432. *
  2433. *
  2434. */
  2435. function(t){var e="addImage_",n={PNG:[[137,80,78,71]],TIFF:[[77,77,0,42],[73,73,42,0]],JPEG:[[255,216,255,224,void 0,void 0,74,70,73,70,0],[255,216,255,225,void 0,void 0,69,120,105,102,0,0]],JPEG2000:[[0,0,0,12,106,80,32,32]],GIF87a:[[71,73,70,56,55,97]],GIF89a:[[71,73,70,56,57,97]],BMP:[[66,77],[66,65],[67,73],[67,80],[73,67],[80,84]]},i=t.getImageFileTypeByImageData=function(e,i){var r,o;i=i||"UNKNOWN";var a,s,c,l="UNKNOWN";for(c in t.isArrayBufferView(e)&&(e=t.arrayBufferToBinaryString(e)),n)for(a=n[c],r=0;r<a.length;r+=1){for(s=!0,o=0;o<a[r].length;o+=1)if(void 0!==a[r][o]&&a[r][o]!==e.charCodeAt(o)){s=!1;break}if(!0===s){l=c;break}}return"UNKNOWN"===l&&"UNKNOWN"!==i&&(console.warn('FileType of Image not recognized. Processing image as "'+i+'".'),l=i),l},o=function t(e){for(var n=this.internal.newObject(),i=this.internal.write,r=this.internal.putStream,o=(0,this.internal.getFilters)();-1!==o.indexOf("FlateEncode");)o.splice(o.indexOf("FlateEncode"),1);e.n=n;var a=[];if(a.push({key:"Type",value:"/XObject"}),a.push({key:"Subtype",value:"/Image"}),a.push({key:"Width",value:e.w}),a.push({key:"Height",value:e.h}),e.cs===this.color_spaces.INDEXED?a.push({key:"ColorSpace",value:"[/Indexed /DeviceRGB "+(e.pal.length/3-1)+" "+("smask"in e?n+2:n+1)+" 0 R]"}):(a.push({key:"ColorSpace",value:"/"+e.cs}),e.cs===this.color_spaces.DEVICE_CMYK&&a.push({key:"Decode",value:"[1 0 1 0 1 0 1 0]"})),a.push({key:"BitsPerComponent",value:e.bpc}),"dp"in e&&a.push({key:"DecodeParms",value:"<<"+e.dp+">>"}),"trns"in e&&e.trns.constructor==Array){for(var s="",c=0,l=e.trns.length;c<l;c++)s+=e.trns[c]+" "+e.trns[c]+" ";a.push({key:"Mask",value:"["+s+"]"})}"smask"in e&&a.push({key:"SMask",value:n+1+" 0 R"});var u=void 0!==e.f?["/"+e.f]:void 0;if(r({data:e.data,additionalKeyValues:a,alreadyAppliedFilters:u}),i("endobj"),"smask"in e){var d="/Predictor "+e.p+" /Colors 1 /BitsPerComponent "+e.bpc+" /Columns "+e.w,p={w:e.w,h:e.h,cs:"DeviceGray",bpc:e.bpc,dp:d,data:e.smask};"f"in e&&(p.f=e.f),t.call(this,p)}e.cs===this.color_spaces.INDEXED&&(this.internal.newObject(),r({data:this.arrayBufferToBinaryString(new Uint8Array(e.pal))}),i("endobj"))},a=function(){var t=this.internal.collections[e+"images"];for(var n in t)o.call(this,t[n])},s=function(){var t,n=this.internal.collections[e+"images"],i=this.internal.write;for(var r in n)i("/I"+(t=n[r]).i,t.n,"0","R")},c=function(e){return"function"==typeof t["process"+e.toUpperCase()]},l=function(t){return"object"===r(t)&&1===t.nodeType},u=function(e,n){if("IMG"===e.nodeName&&e.hasAttribute("src")){var i=""+e.getAttribute("src");if(0===i.indexOf("data:image/"))return unescape(i);var r=t.loadFile(i);if(void 0!==r)return btoa(r)}if("CANVAS"===e.nodeName){var o=e;return e.toDataURL("image/jpeg",1)}(o=document.createElement("canvas")).width=e.clientWidth||e.width,o.height=e.clientHeight||e.height;var a=o.getContext("2d");if(!a)throw"addImage requires canvas to be supported by browser.";return a.drawImage(e,0,0,o.width,o.height),o.toDataURL("png"==(""+n).toLowerCase()?"image/png":"image/jpeg")},d=function(t,e){var n;if(e)for(var i in e)if(t===e[i].alias){n=e[i];break}return n};t.color_spaces={DEVICE_RGB:"DeviceRGB",DEVICE_GRAY:"DeviceGray",DEVICE_CMYK:"DeviceCMYK",CAL_GREY:"CalGray",CAL_RGB:"CalRGB",LAB:"Lab",ICC_BASED:"ICCBased",INDEXED:"Indexed",PATTERN:"Pattern",SEPARATION:"Separation",DEVICE_N:"DeviceN"},t.decode={DCT_DECODE:"DCTDecode",FLATE_DECODE:"FlateDecode",LZW_DECODE:"LZWDecode",JPX_DECODE:"JPXDecode",JBIG2_DECODE:"JBIG2Decode",ASCII85_DECODE:"ASCII85Decode",ASCII_HEX_DECODE:"ASCIIHexDecode",RUN_LENGTH_DECODE:"RunLengthDecode",CCITT_FAX_DECODE:"CCITTFaxDecode"},t.image_compression={NONE:"NONE",FAST:"FAST",MEDIUM:"MEDIUM",SLOW:"SLOW"},t.sHashCode=function(t){var e,n=0;if(0===(t=t||"").length)return n;for(e=0;e<t.length;e++)n=(n<<5)-n+t.charCodeAt(e),n|=0;return n},t.isString=function(t){return"string"==typeof t},t.validateStringAsBase64=function(t){(t=t||"").toString().trim();var e=!0;return 0===t.length&&(e=!1),t.length%4!=0&&(e=!1),!1===/^[A-Za-z0-9+\/]+$/.test(t.substr(0,t.length-2))&&(e=!1),!1===/^[A-Za-z0-9\/][A-Za-z0-9+\/]|[A-Za-z0-9+\/]=|==$/.test(t.substr(-2))&&(e=!1),e},t.extractInfoFromBase64DataURI=function(t){return/^data:([\w]+?\/([\w]+?));\S*;*base64,(.+)$/g.exec(t)},t.extractImageFromDataUrl=function(t){var e=(t=t||"").split("base64,"),n=null;if(2===e.length){var i=/^data:(\w*\/\w*);*(charset=[\w=-]*)*;*$/.exec(e[0]);Array.isArray(i)&&(n={mimeType:i[1],charset:i[2],data:e[1]})}return n},t.supportsArrayBuffer=function(){return"undefined"!=typeof ArrayBuffer&&"undefined"!=typeof Uint8Array},t.isArrayBuffer=function(t){return!!this.supportsArrayBuffer()&&t instanceof ArrayBuffer},t.isArrayBufferView=function(t){return!!this.supportsArrayBuffer()&&"undefined"!=typeof Uint32Array&&(t instanceof Int8Array||t instanceof Uint8Array||"undefined"!=typeof Uint8ClampedArray&&t instanceof Uint8ClampedArray||t instanceof Int16Array||t instanceof Uint16Array||t instanceof Int32Array||t instanceof Uint32Array||t instanceof Float32Array||t instanceof Float64Array)},t.binaryStringToUint8Array=function(t){for(var e=t.length,n=new Uint8Array(e),i=0;i<e;i++)n[i]=t.charCodeAt(i);return n},t.arrayBufferToBinaryString=function(t){if("function"==typeof atob)return atob(this.arrayBufferToBase64(t))},t.arrayBufferToBase64=function(t){for(var e,n="",i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r=new Uint8Array(t),o=r.byteLength,a=o%3,s=o-a,c=0;c<s;c+=3)n+=i[(16515072&(e=r[c]<<16|r[c+1]<<8|r[c+2]))>>18]+i[(258048&e)>>12]+i[(4032&e)>>6]+i[63&e];return 1==a?n+=i[(252&(e=r[s]))>>2]+i[(3&e)<<4]+"==":2==a&&(n+=i[(64512&(e=r[s]<<8|r[s+1]))>>10]+i[(1008&e)>>4]+i[(15&e)<<2]+"="),n},t.createImageInfo=function(t,e,n,i,r,o,a,s,c,l,u,d,p){var h={alias:s,w:e,h:n,cs:i,bpc:r,i:a,data:t};return o&&(h.f=o),c&&(h.dp=c),l&&(h.trns=l),u&&(h.pal=u),d&&(h.smask=d),p&&(h.p=p),h},t.addImage=function(n,i,o,p,h,f,g,m,v){var y="";if("string"!=typeof i){var b=f;f=h,h=p,p=o,o=i,i=b}if("object"===r(n)&&!l(n)&&"imageData"in n){var w=n;n=w.imageData,i=w.format||i||"UNKNOWN",o=w.x||o||0,p=w.y||p||0,h=w.w||h,f=w.h||f,g=w.alias||g,m=w.compression||m,v=w.rotation||w.angle||v}var S=this.internal.getFilters();if(void 0===m&&-1!==S.indexOf("FlateEncode")&&(m="SLOW"),"string"==typeof n&&(n=unescape(n)),isNaN(o)||isNaN(p))throw console.error("jsPDF.addImage: Invalid coordinates",arguments),new Error("Invalid coordinates passed to jsPDF.addImage");var x,M,E,C,A,T,O,_=function(){var t=this.internal.collections[e+"images"];return t||(this.internal.collections[e+"images"]=t={},this.internal.events.subscribe("putResources",a),this.internal.events.subscribe("putXobjectDict",s)),t}.call(this);if(!((x=d(n,_))||(l(n)&&(n=u(n,i)),(null==(O=g)||0===O.length)&&(g="string"==typeof(T=n)?t.sHashCode(T):t.isArrayBufferView(T)?t.sHashCode(t.arrayBufferToBinaryString(T)):null),x=d(g,_)))){if(this.isString(n)&&(""!==(y=this.convertStringToImageData(n))||void 0!==(y=t.loadFile(n)))&&(n=y),i=this.getImageFileTypeByImageData(n,i),!c(i))throw new Error("addImage does not support files of type '"+i+"', please ensure that a plugin for '"+i+"' support is added.");if(this.supportsArrayBuffer()&&(n instanceof Uint8Array||(M=n,n=this.binaryStringToUint8Array(n))),!(x=this["process"+i.toUpperCase()](n,(A=0,(C=_)&&(A=Object.keys?Object.keys(C).length:function(t){var e=0;for(var n in t)t.hasOwnProperty(n)&&e++;return e}(C)),A),g,((E=m)&&"string"==typeof E&&(E=E.toUpperCase()),E in t.image_compression?E:t.image_compression.NONE),M)))throw new Error("An unknown error occurred whilst processing the image")}return function(t,e,n,i,r,o,a,s){var c=function(t,e,n){return t||e||(e=t=-96),t<0&&(t=-1*n.w*72/t/this.internal.scaleFactor),e<0&&(e=-1*n.h*72/e/this.internal.scaleFactor),0===t&&(t=e*n.w/n.h),0===e&&(e=t*n.h/n.w),[t,e]}.call(this,n,i,r),l=this.internal.getCoordinateString,u=this.internal.getVerticalCoordinateString;if(n=c[0],i=c[1],a[o]=r,s){s*=Math.PI/180;var d=Math.cos(s),p=Math.sin(s),h=function(t){return t.toFixed(4)},f=[h(d),h(p),h(-1*p),h(d),0,0,"cm"]}this.internal.write("q"),s?(this.internal.write([1,"0","0",1,l(t),u(e+i),"cm"].join(" ")),this.internal.write(f.join(" ")),this.internal.write([l(n),"0","0",l(i),"0","0","cm"].join(" "))):this.internal.write([l(n),"0","0",l(i),l(t),u(e+i),"cm"].join(" ")),this.internal.write("/I"+r.i+" Do"),this.internal.write("Q")}.call(this,o,p,h,f,x,x.i,_,v),this},t.convertStringToImageData=function(e){var n,i="";if(this.isString(e)){var r;n=null!==(r=this.extractImageFromDataUrl(e))?r.data:e;try{i=atob(n)}catch(e){throw t.validateStringAsBase64(n)?new Error("atob-Error in jsPDF.convertStringToImageData "+e.message):new Error("Supplied Data is not a valid base64-String jsPDF.convertStringToImageData ")}}return i};var p=function(t,e){return t.subarray(e,e+5)};t.processJPEG=function(t,e,n,r,o,a){var s,c=this.decode.DCT_DECODE;if(!this.isString(t)&&!this.isArrayBuffer(t)&&!this.isArrayBufferView(t))return null;if(this.isString(t)&&(s=function(t){var e;if("JPEG"!==i(t))throw new Error("getJpegSize requires a binary string jpeg file");for(var n=256*t.charCodeAt(4)+t.charCodeAt(5),r=4,o=t.length;r<o;){if(r+=n,255!==t.charCodeAt(r))throw new Error("getJpegSize could not find the size of the image");if(192===t.charCodeAt(r+1)||193===t.charCodeAt(r+1)||194===t.charCodeAt(r+1)||195===t.charCodeAt(r+1)||196===t.charCodeAt(r+1)||197===t.charCodeAt(r+1)||198===t.charCodeAt(r+1)||199===t.charCodeAt(r+1))return e=256*t.charCodeAt(r+5)+t.charCodeAt(r+6),[256*t.charCodeAt(r+7)+t.charCodeAt(r+8),e,t.charCodeAt(r+9)];r+=2,n=256*t.charCodeAt(r)+t.charCodeAt(r+1)}}(t)),this.isArrayBuffer(t)&&(t=new Uint8Array(t)),this.isArrayBufferView(t)&&(s=function(t){if(65496!=(t[0]<<8|t[1]))throw new Error("Supplied data is not a JPEG");for(var e,n=t.length,i=(t[4]<<8)+t[5],r=4;r<n;){if(i=((e=p(t,r+=i))[2]<<8)+e[3],(192===e[1]||194===e[1])&&255===e[0]&&7<i)return{width:((e=p(t,r+5))[2]<<8)+e[3],height:(e[0]<<8)+e[1],numcomponents:e[4]};r+=2}throw new Error("getJpegSizeFromBytes could not find the size of the image")}(t),t=o||this.arrayBufferToBinaryString(t)),void 0===a)switch(s.numcomponents){case 1:a=this.color_spaces.DEVICE_GRAY;break;case 4:a=this.color_spaces.DEVICE_CMYK;break;default:case 3:a=this.color_spaces.DEVICE_RGB}return this.createImageInfo(t,s.width,s.height,a,8,c,e,n)},t.processJPG=function(){return this.processJPEG.apply(this,arguments)},t.getImageProperties=function(e){var n,i,r="";if(l(e)&&(e=u(e)),this.isString(e)&&(""!==(r=this.convertStringToImageData(e))||void 0!==(r=t.loadFile(e)))&&(e=r),i=this.getImageFileTypeByImageData(e),!c(i))throw new Error("addImage does not support files of type '"+i+"', please ensure that a plugin for '"+i+"' support is added.");if(this.supportsArrayBuffer()&&(e instanceof Uint8Array||(e=this.binaryStringToUint8Array(e))),!(n=this["process"+i.toUpperCase()](e)))throw new Error("An unknown error occurred whilst processing the image");return{fileType:i,width:n.w,height:n.h,colorSpace:n.cs,compressionMode:n.f,bitsPerComponent:n.bpc}}}(ft.API),
  2436. /**
  2437. * @license
  2438. * Copyright (c) 2014 Steven Spungin (TwelveTone LLC) steven@twelvetone.tv
  2439. *
  2440. * Licensed under the MIT License.
  2441. * http://opensource.org/licenses/mit-license
  2442. */
  2443. a=ft.API,ft.API.events.push(["addPage",function(t){this.internal.getPageInfo(t.pageNumber).pageContext.annotations=[]}]),a.events.push(["putPage",function(t){for(var e=this.internal.getPageInfoByObjId(t.objId),n=t.pageContext.annotations,i=function(t){if(void 0!==t&&""!=t)return!0},r=!1,o=0;o<n.length&&!r;o++)switch((c=n[o]).type){case"link":if(i(c.options.url)||i(c.options.pageNumber)){r=!0;break}case"reference":case"text":case"freetext":r=!0}if(0!=r){this.internal.write("/Annots ["),this.internal.pageSize.height;var a=this.internal.getCoordinateString,s=this.internal.getVerticalCoordinateString;for(o=0;o<n.length;o++){var c;switch((c=n[o]).type){case"reference":this.internal.write(" "+c.object.objId+" 0 R ");break;case"text":var l=this.internal.newAdditionalObject(),u=this.internal.newAdditionalObject(),d=c.title||"Note";m="<</Type /Annot /Subtype /Text "+(h="/Rect ["+a(c.bounds.x)+" "+s(c.bounds.y+c.bounds.h)+" "+a(c.bounds.x+c.bounds.w)+" "+s(c.bounds.y)+"] ")+"/Contents ("+c.contents+")",m+=" /Popup "+u.objId+" 0 R",m+=" /P "+e.objId+" 0 R",m+=" /T ("+d+") >>",l.content=m;var p=l.objId+" 0 R";m="<</Type /Annot /Subtype /Popup "+(h="/Rect ["+a(c.bounds.x+30)+" "+s(c.bounds.y+c.bounds.h)+" "+a(c.bounds.x+c.bounds.w+30)+" "+s(c.bounds.y)+"] ")+" /Parent "+p,c.open&&(m+=" /Open true"),m+=" >>",u.content=m,this.internal.write(l.objId,"0 R",u.objId,"0 R");break;case"freetext":var h="/Rect ["+a(c.bounds.x)+" "+s(c.bounds.y)+" "+a(c.bounds.x+c.bounds.w)+" "+s(c.bounds.y+c.bounds.h)+"] ",f=c.color||"#000000";m="<</Type /Annot /Subtype /FreeText "+h+"/Contents ("+c.contents+")",m+=" /DS(font: Helvetica,sans-serif 12.0pt; text-align:left; color:#"+f+")",m+=" /Border [0 0 0]",m+=" >>",this.internal.write(m);break;case"link":if(c.options.name){var g=this.annotations._nameMap[c.options.name];c.options.pageNumber=g.page,c.options.top=g.y}else c.options.top||(c.options.top=0);h="/Rect ["+a(c.x)+" "+s(c.y)+" "+a(c.x+c.w)+" "+s(c.y+c.h)+"] ";var m="";if(c.options.url)m="<</Type /Annot /Subtype /Link "+h+"/Border [0 0 0] /A <</S /URI /URI ("+c.options.url+") >>";else if(c.options.pageNumber)switch(m="<</Type /Annot /Subtype /Link "+h+"/Border [0 0 0] /Dest ["+this.internal.getPageInfo(c.options.pageNumber).objId+" 0 R",c.options.magFactor=c.options.magFactor||"XYZ",c.options.magFactor){case"Fit":m+=" /Fit]";break;case"FitH":m+=" /FitH "+c.options.top+"]";break;case"FitV":c.options.left=c.options.left||0,m+=" /FitV "+c.options.left+"]";break;case"XYZ":default:var v=s(c.options.top);c.options.left=c.options.left||0,void 0===c.options.zoom&&(c.options.zoom=0),m+=" /XYZ "+c.options.left+" "+v+" "+c.options.zoom+"]"}""!=m&&(m+=" >>",this.internal.write(m))}}this.internal.write("]")}}]),a.createAnnotation=function(t){var e=this.internal.getCurrentPageInfo();switch(t.type){case"link":this.link(t.bounds.x,t.bounds.y,t.bounds.w,t.bounds.h,t);break;case"text":case"freetext":e.pageContext.annotations.push(t)}},a.link=function(t,e,n,i,r){this.internal.getCurrentPageInfo().pageContext.annotations.push({x:t,y:e,w:n,h:i,options:r,type:"link"})},a.textWithLink=function(t,e,n,i){var r=this.getTextWidth(t),o=this.internal.getLineHeight()/this.internal.scaleFactor;return this.text(t,e,n),n+=.2*o,this.link(e,n-o,r,o,i),r},a.getTextWidth=function(t){var e=this.internal.getFontSize();return this.getStringUnitWidth(t)*e/this.internal.scaleFactor},
  2444. /**
  2445. * @license
  2446. * Copyright (c) 2017 Aras Abbasi
  2447. *
  2448. * Licensed under the MIT License.
  2449. * http://opensource.org/licenses/mit-license
  2450. */
  2451. function(t){var e={1569:[65152],1570:[65153,65154],1571:[65155,65156],1572:[65157,65158],1573:[65159,65160],1574:[65161,65162,65163,65164],1575:[65165,65166],1576:[65167,65168,65169,65170],1577:[65171,65172],1578:[65173,65174,65175,65176],1579:[65177,65178,65179,65180],1580:[65181,65182,65183,65184],1581:[65185,65186,65187,65188],1582:[65189,65190,65191,65192],1583:[65193,65194],1584:[65195,65196],1585:[65197,65198],1586:[65199,65200],1587:[65201,65202,65203,65204],1588:[65205,65206,65207,65208],1589:[65209,65210,65211,65212],1590:[65213,65214,65215,65216],1591:[65217,65218,65219,65220],1592:[65221,65222,65223,65224],1593:[65225,65226,65227,65228],1594:[65229,65230,65231,65232],1601:[65233,65234,65235,65236],1602:[65237,65238,65239,65240],1603:[65241,65242,65243,65244],1604:[65245,65246,65247,65248],1605:[65249,65250,65251,65252],1606:[65253,65254,65255,65256],1607:[65257,65258,65259,65260],1608:[65261,65262],1609:[65263,65264,64488,64489],1610:[65265,65266,65267,65268],1649:[64336,64337],1655:[64477],1657:[64358,64359,64360,64361],1658:[64350,64351,64352,64353],1659:[64338,64339,64340,64341],1662:[64342,64343,64344,64345],1663:[64354,64355,64356,64357],1664:[64346,64347,64348,64349],1667:[64374,64375,64376,64377],1668:[64370,64371,64372,64373],1670:[64378,64379,64380,64381],1671:[64382,64383,64384,64385],1672:[64392,64393],1676:[64388,64389],1677:[64386,64387],1678:[64390,64391],1681:[64396,64397],1688:[64394,64395],1700:[64362,64363,64364,64365],1702:[64366,64367,64368,64369],1705:[64398,64399,64400,64401],1709:[64467,64468,64469,64470],1711:[64402,64403,64404,64405],1713:[64410,64411,64412,64413],1715:[64406,64407,64408,64409],1722:[64414,64415],1723:[64416,64417,64418,64419],1726:[64426,64427,64428,64429],1728:[64420,64421],1729:[64422,64423,64424,64425],1733:[64480,64481],1734:[64473,64474],1735:[64471,64472],1736:[64475,64476],1737:[64482,64483],1739:[64478,64479],1740:[64508,64509,64510,64511],1744:[64484,64485,64486,64487],1746:[64430,64431],1747:[64432,64433]},n={65247:{65154:65269,65156:65271,65160:65273,65166:65275},65248:{65154:65270,65156:65272,65160:65274,65166:65276},65165:{65247:{65248:{65258:65010}}},1617:{1612:64606,1613:64607,1614:64608,1615:64609,1616:64610}},i={1612:64606,1613:64607,1614:64608,1615:64609,1616:64610},r=[1570,1571,1573,1575];t.__arabicParser__={};var o=t.__arabicParser__.isInArabicSubstitutionA=function(t){return void 0!==e[t.charCodeAt(0)]},a=t.__arabicParser__.isArabicLetter=function(t){return"string"==typeof t&&/^[\u0600-\u06FF\u0750-\u077F\u08A0-\u08FF\uFB50-\uFDFF\uFE70-\uFEFF]+$/.test(t)},s=t.__arabicParser__.isArabicEndLetter=function(t){return a(t)&&o(t)&&e[t.charCodeAt(0)].length<=2},c=t.__arabicParser__.isArabicAlfLetter=function(t){return a(t)&&0<=r.indexOf(t.charCodeAt(0))},l=(t.__arabicParser__.arabicLetterHasIsolatedForm=function(t){return a(t)&&o(t)&&1<=e[t.charCodeAt(0)].length},t.__arabicParser__.arabicLetterHasFinalForm=function(t){return a(t)&&o(t)&&2<=e[t.charCodeAt(0)].length}),u=(t.__arabicParser__.arabicLetterHasInitialForm=function(t){return a(t)&&o(t)&&3<=e[t.charCodeAt(0)].length},t.__arabicParser__.arabicLetterHasMedialForm=function(t){return a(t)&&o(t)&&4==e[t.charCodeAt(0)].length}),d=t.__arabicParser__.resolveLigatures=function(t){var e=0,i=n,r=0,o="",a=0;for(e=0;e<t.length;e+=1)void 0!==i[t.charCodeAt(e)]?(a++,"number"==typeof(i=i[t.charCodeAt(e)])&&(r=-1!==(r=p(t.charAt(e),t.charAt(e-a),t.charAt(e+1)))?r:0,o+=String.fromCharCode(i),i=n,a=0),e===t.length-1&&(i=n,o+=t.charAt(e-(a-1)),e-=a-1,a=0)):(i=n,o+=t.charAt(e-a),e-=a,a=0);return o},p=(t.__arabicParser__.isArabicDiacritic=function(t){return void 0!==t&&void 0!==i[t.charCodeAt(0)]},t.__arabicParser__.getCorrectForm=function(t,e,n){return a(t)?!1===o(t)?-1:!l(t)||!a(e)&&!a(n)||!a(n)&&s(e)||s(t)&&!a(e)||s(t)&&c(e)||s(t)&&s(e)?0:u(t)&&a(e)&&!s(e)&&a(n)&&l(n)?3:s(t)||!a(n)?1:2:-1}),h=t.__arabicParser__.processArabic=t.processArabic=function(t){var n=0,i=0,r=0,o="",s="",c="",l=(t=t||"").split("\\s+"),u=[];for(n=0;n<l.length;n+=1){for(u.push(""),i=0;i<l[n].length;i+=1)o=l[n][i],s=l[n][i-1],c=l[n][i+1],a(o)?(r=p(o,s,c),u[n]+=-1!==r?String.fromCharCode(e[o.charCodeAt(0)][r]):o):u[n]+=o;u[n]=d(u[n])}return u.join(" ")};t.events.push(["preProcessText",function(t){var e=t.text,n=(t.x,t.y,t.options||{}),i=(t.mutex,n.lang,[]);if("[object Array]"===Object.prototype.toString.call(e)){var r=0;for(i=[],r=0;r<e.length;r+=1)"[object Array]"===Object.prototype.toString.call(e[r])?i.push([h(e[r][0]),e[r][1],e[r][2]]):i.push([h(e[r])]);t.text=i}else t.text=h(e)}])}(ft.API),ft.API.autoPrint=function(t){var e;switch((t=t||{}).variant=t.variant||"non-conform",t.variant){case"javascript":this.addJS("print({});");break;case"non-conform":default:this.internal.events.subscribe("postPutResources",function(){e=this.internal.newObject(),this.internal.out("<<"),this.internal.out("/S /Named"),this.internal.out("/Type /Action"),this.internal.out("/N /Print"),this.internal.out(">>"),this.internal.out("endobj")}),this.internal.events.subscribe("putCatalog",function(){this.internal.out("/OpenAction "+e+" 0 R")})}return this},
  2452. /**
  2453. * @license
  2454. * Copyright (c) 2014 Steven Spungin (TwelveTone LLC) steven@twelvetone.tv
  2455. *
  2456. * Licensed under the MIT License.
  2457. * http://opensource.org/licenses/mit-license
  2458. */
  2459. s=ft.API,(c=function(){var t=void 0;Object.defineProperty(this,"pdf",{get:function(){return t},set:function(e){t=e}});var e=150;Object.defineProperty(this,"width",{get:function(){return e},set:function(t){e=isNaN(t)||!1===Number.isInteger(t)||t<0?150:t,this.getContext("2d").pageWrapXEnabled&&(this.getContext("2d").pageWrapX=e+1)}});var n=300;Object.defineProperty(this,"height",{get:function(){return n},set:function(t){n=isNaN(t)||!1===Number.isInteger(t)||t<0?300:t,this.getContext("2d").pageWrapYEnabled&&(this.getContext("2d").pageWrapY=n+1)}});var i=[];Object.defineProperty(this,"childNodes",{get:function(){return i},set:function(t){i=t}});var r={};Object.defineProperty(this,"style",{get:function(){return r},set:function(t){r=t}}),Object.defineProperty(this,"parentNode",{get:function(){return!1}})}).prototype.getContext=function(t,e){var n;if("2d"!==(t=t||"2d"))return null;for(n in e)this.pdf.context2d.hasOwnProperty(n)&&(this.pdf.context2d[n]=e[n]);return(this.pdf.context2d._canvas=this).pdf.context2d},c.prototype.toDataURL=function(){throw new Error("toDataURL is not implemented.")},s.events.push(["initialized",function(){this.canvas=new c,this.canvas.pdf=this}]),
  2460. /**
  2461. * @license
  2462. * ====================================================================
  2463. * Copyright (c) 2013 Youssef Beddad, youssef.beddad@gmail.com
  2464. * 2013 Eduardo Menezes de Morais, eduardo.morais@usp.br
  2465. * 2013 Lee Driscoll, https://github.com/lsdriscoll
  2466. * 2014 Juan Pablo Gaviria, https://github.com/juanpgaviria
  2467. * 2014 James Hall, james@parall.ax
  2468. * 2014 Diego Casorran, https://github.com/diegocr
  2469. *
  2470. *
  2471. * ====================================================================
  2472. */
  2473. l=ft.API,d={x:void 0,y:void 0,w:void 0,h:void 0,ln:void 0},p=1,h=function(t,e,n,i,r){d={x:t,y:e,w:n,h:i,ln:r}},f=function(){return d},g={left:0,top:0,bottom:0},l.setHeaderFunction=function(t){u=t},l.getTextDimensions=function(t,e){var n=this.table_font_size||this.internal.getFontSize(),i=(this.internal.getFont().fontStyle,(e=e||{}).scaleFactor||this.internal.scaleFactor),r=0,o=0,a=0;if("string"==typeof t)0!=(r=this.getStringUnitWidth(t)*n)&&(o=1);else{if("[object Array]"!==Object.prototype.toString.call(t))throw new Error("getTextDimensions expects text-parameter to be of type String or an Array of Strings.");for(var s=0;s<t.length;s++)r<(a=this.getStringUnitWidth(t[s])*n)&&(r=a);0!==r&&(o=t.length)}return{w:r/=i,h:Math.max((o*n*this.getLineHeightFactor()-n*(this.getLineHeightFactor()-1))/i,0)}},l.cellAddPage=function(){var t=this.margins||g;this.addPage(),h(t.left,t.top,void 0,void 0),p+=1},l.cellInitialize=function(){d={x:void 0,y:void 0,w:void 0,h:void 0,ln:void 0},p=1},l.cell=function(t,e,n,i,r,o,a){var s=f(),c=!1;if(void 0!==s.ln)if(s.ln===o)t=s.x+s.w,e=s.y;else{var l=this.margins||g;s.y+s.h+i+13>=this.internal.pageSize.getHeight()-l.bottom&&(this.cellAddPage(),c=!0,this.printHeaders&&this.tableHeaderRow&&this.printHeaderRow(o,!0)),e=f().y+f().h,c&&(e=23)}if(void 0!==r[0])if(this.printingHeaderRow?this.rect(t,e,n,i,"FD"):this.rect(t,e,n,i),"right"===a){r instanceof Array||(r=[r]);for(var u=0;u<r.length;u++){var d=r[u],p=this.getStringUnitWidth(d)*this.internal.getFontSize()/this.internal.scaleFactor;this.text(d,t+n-p-3,e+this.internal.getLineHeight()*(u+1))}}else this.text(r,t+3,e+this.internal.getLineHeight());return h(t,e,n,i,o),this},l.arrayMax=function(t,e){var n,i,r,o=t[0];for(n=0,i=t.length;n<i;n+=1)r=t[n],e?-1===e(o,r)&&(o=r):o<r&&(o=r);return o},l.table=function(t,e,n,i,r){if(!n)throw"No data for PDF table";var o,a,s,c,u,h,f,m,v,y,b=[],w=[],S={},x={},M=[],E=[],C=!1,A=!0,T=12,O=g;if(O.width=this.internal.pageSize.getWidth(),r&&(!0===r.autoSize&&(C=!0),!1===r.printHeaders&&(A=!1),r.fontSize&&(T=r.fontSize),r.css&&void 0!==r.css["font-size"]&&(T=16*r.css["font-size"]),r.margins&&(O=r.margins)),this.lnMod=0,d={x:void 0,y:void 0,w:void 0,h:void 0,ln:void 0},p=1,this.printHeaders=A,this.margins=O,this.setFontSize(T),this.table_font_size=T,null==i)b=Object.keys(n[0]);else if(i[0]&&"string"!=typeof i[0])for(a=0,s=i.length;a<s;a+=1)o=i[a],b.push(o.name),w.push(o.prompt),x[o.name]=o.width*(19.049976/25.4);else b=i;if(C)for(y=function(t){return t[o]},a=0,s=b.length;a<s;a+=1){for(S[o=b[a]]=n.map(y),M.push(this.getTextDimensions(w[a]||o,{scaleFactor:1}).w),f=0,c=(h=S[o]).length;f<c;f+=1)u=h[f],M.push(this.getTextDimensions(u,{scaleFactor:1}).w);x[o]=l.arrayMax(M),M=[]}if(A){var _=this.calculateLineHeight(b,x,w.length?w:b);for(a=0,s=b.length;a<s;a+=1)o=b[a],E.push([t,e,x[o],_,String(w.length?w[a]:o)]);this.setTableHeaderRow(E),this.printHeaderRow(1,!1)}for(a=0,s=n.length;a<s;a+=1)for(m=n[a],_=this.calculateLineHeight(b,x,m),f=0,v=b.length;f<v;f+=1)o=b[f],this.cell(t,e,x[o],_,m[o],a+2,o.align);return this.lastCellPos=d,this.table_x=t,this.table_y=e,this},l.calculateLineHeight=function(t,e,n){for(var i,r=0,o=0;o<t.length;o++){n[i=t[o]]=this.splitTextToSize(String(n[i]),e[i]-3);var a=this.internal.getLineHeight()*n[i].length+3;r<a&&(r=a)}return r},l.setTableHeaderRow=function(t){this.tableHeaderRow=t},l.printHeaderRow=function(t,e){if(!this.tableHeaderRow)throw"Property tableHeaderRow does not exist.";var n,i,r,o;if(this.printingHeaderRow=!0,void 0!==u){var a=u(this,p);h(a[0],a[1],a[2],a[3],-1)}this.setFontStyle("bold");var s=[];for(r=0,o=this.tableHeaderRow.length;r<o;r+=1)this.setFillColor(200,200,200),n=this.tableHeaderRow[r],e&&(this.margins.top=13,n[1]=this.margins&&this.margins.top||0,s.push(n)),i=[].concat(n),this.cell.apply(this,i.concat(t));0<s.length&&this.setTableHeaderRow(s),this.setFontStyle("normal"),this.printingHeaderRow=!1},function(t,e){var n,i,o,a,s,c=function(t){return t=t||{},this.isStrokeTransparent=t.isStrokeTransparent||!1,this.strokeOpacity=t.strokeOpacity||1,this.strokeStyle=t.strokeStyle||"#000000",this.fillStyle=t.fillStyle||"#000000",this.isFillTransparent=t.isFillTransparent||!1,this.fillOpacity=t.fillOpacity||1,this.font=t.font||"10px sans-serif",this.textBaseline=t.textBaseline||"alphabetic",this.textAlign=t.textAlign||"left",this.lineWidth=t.lineWidth||1,this.lineJoin=t.lineJoin||"miter",this.lineCap=t.lineCap||"butt",this.path=t.path||[],this.transform=void 0!==t.transform?t.transform.clone():new L,this.globalCompositeOperation=t.globalCompositeOperation||"normal",this.globalAlpha=t.globalAlpha||1,this.clip_path=t.clip_path||[],this.currentPoint=t.currentPoint||new D,this.miterLimit=t.miterLimit||10,this.lastPoint=t.lastPoint||new D,this.ignoreClearRect="boolean"!=typeof t.ignoreClearRect||t.ignoreClearRect,this};t.events.push(["initialized",function(){this.context2d=new l(this),n=this.internal.f2,this.internal.f3,i=this.internal.getCoordinateString,o=this.internal.getVerticalCoordinateString,a=this.internal.getHorizontalCoordinate,s=this.internal.getVerticalCoordinate}]);var l=function(t){Object.defineProperty(this,"canvas",{get:function(){return{parentNode:!1,style:!1}}}),Object.defineProperty(this,"pdf",{get:function(){return t}});var e=!1;Object.defineProperty(this,"pageWrapXEnabled",{get:function(){return e},set:function(t){e=Boolean(t)}});var n=!1;Object.defineProperty(this,"pageWrapYEnabled",{get:function(){return n},set:function(t){n=Boolean(t)}});var i=0;Object.defineProperty(this,"posX",{get:function(){return i},set:function(t){isNaN(t)||(i=t)}});var r=0;Object.defineProperty(this,"posY",{get:function(){return r},set:function(t){isNaN(t)||(r=t)}});var o=!1;Object.defineProperty(this,"autoPaging",{get:function(){return o},set:function(t){o=Boolean(t)}});var a=0;Object.defineProperty(this,"lastBreak",{get:function(){return a},set:function(t){a=t}});var s=[];Object.defineProperty(this,"pageBreaks",{get:function(){return s},set:function(t){s=t}});var l=new c;Object.defineProperty(this,"ctx",{get:function(){return l},set:function(t){t instanceof c&&(l=t)}}),Object.defineProperty(this,"path",{get:function(){return l.path},set:function(t){l.path=t}});var d=[];Object.defineProperty(this,"ctxStack",{get:function(){return d},set:function(t){d=t}}),Object.defineProperty(this,"fillStyle",{get:function(){return this.ctx.fillStyle},set:function(t){var e;e=u(t),this.ctx.fillStyle=e.style,this.ctx.isFillTransparent=0===e.a,this.ctx.fillOpacity=e.a,this.pdf.setFillColor(e.r,e.g,e.b,{a:e.a}),this.pdf.setTextColor(e.r,e.g,e.b,{a:e.a})}}),Object.defineProperty(this,"strokeStyle",{get:function(){return this.ctx.strokeStyle},set:function(t){var e=u(t);this.ctx.strokeStyle=e.style,this.ctx.isStrokeTransparent=0===e.a,this.ctx.strokeOpacity=e.a,0===e.a?this.pdf.setDrawColor(255,255,255):(e.a,this.pdf.setDrawColor(e.r,e.g,e.b))}}),Object.defineProperty(this,"lineCap",{get:function(){return this.ctx.lineCap},set:function(t){-1!==["butt","round","square"].indexOf(t)&&(this.ctx.lineCap=t,this.pdf.setLineCap(t))}}),Object.defineProperty(this,"lineWidth",{get:function(){return this.ctx.lineWidth},set:function(t){isNaN(t)||(this.ctx.lineWidth=t,this.pdf.setLineWidth(t))}}),Object.defineProperty(this,"lineJoin",{get:function(){return this.ctx.lineJoin},set:function(t){-1!==["bevel","round","miter"].indexOf(t)&&(this.ctx.lineJoin=t,this.pdf.setLineJoin(t))}}),Object.defineProperty(this,"miterLimit",{get:function(){return this.ctx.miterLimit},set:function(t){isNaN(t)||(this.ctx.miterLimit=t,this.pdf.setMiterLimit(t))}}),Object.defineProperty(this,"textBaseline",{get:function(){return this.ctx.textBaseline},set:function(t){this.ctx.textBaseline=t}}),Object.defineProperty(this,"textAlign",{get:function(){return this.ctx.textAlign},set:function(t){-1!==["right","end","center","left","start"].indexOf(t)&&(this.ctx.textAlign=t)}}),Object.defineProperty(this,"font",{get:function(){return this.ctx.font},set:function(t){var e;if(this.ctx.font=t,null!==(e=/^\s*(?=(?:(?:[-a-z]+\s*){0,2}(italic|oblique))?)(?=(?:(?:[-a-z]+\s*){0,2}(small-caps))?)(?=(?:(?:[-a-z]+\s*){0,2}(bold(?:er)?|lighter|[1-9]00))?)(?:(?:normal|\1|\2|\3)\s*){0,3}((?:xx?-)?(?:small|large)|medium|smaller|larger|[.\d]+(?:\%|in|[cem]m|ex|p[ctx]))(?:\s*\/\s*(normal|[.\d]+(?:\%|in|[cem]m|ex|p[ctx])))?\s*([-_,\"\'\sa-z]+?)\s*$/i.exec(t))){var n=e[1],i=(e[2],e[3]),r=e[4],o=e[5],a=e[6];r="px"===o?Math.floor(parseFloat(r)):"em"===o?Math.floor(parseFloat(r)*this.pdf.getFontSize()):Math.floor(parseFloat(r)),this.pdf.setFontSize(r);var s="";("bold"===i||700<=parseInt(i,10)||"bold"===n)&&(s="bold"),"italic"===n&&(s+="italic"),0===s.length&&(s="normal");for(var c="",l=a.toLowerCase().replace(/"|'/g,"").split(/\s*,\s*/),u={arial:"Helvetica",verdana:"Helvetica",helvetica:"Helvetica","sans-serif":"Helvetica",fixed:"Courier",monospace:"Courier",terminal:"Courier",courier:"Courier",times:"Times",cursive:"Times",fantasy:"Times",serif:"Times"},d=0;d<l.length;d++){if(void 0!==this.pdf.internal.getFont(l[d],s,{noFallback:!0,disableWarning:!0})){c=l[d];break}if("bolditalic"===s&&void 0!==this.pdf.internal.getFont(l[d],"bold",{noFallback:!0,disableWarning:!0}))c=l[d],s="bold";else if(void 0!==this.pdf.internal.getFont(l[d],"normal",{noFallback:!0,disableWarning:!0})){c=l[d],s="normal";break}}if(""===c)for(d=0;d<l.length;d++)if(u[l[d]]){c=u[l[d]];break}c=""===c?"Times":c,this.pdf.setFont(c,s)}}}),Object.defineProperty(this,"globalCompositeOperation",{get:function(){return this.ctx.globalCompositeOperation},set:function(t){this.ctx.globalCompositeOperation=t}}),Object.defineProperty(this,"globalAlpha",{get:function(){return this.ctx.globalAlpha},set:function(t){this.ctx.globalAlpha=t}}),Object.defineProperty(this,"ignoreClearRect",{get:function(){return this.ctx.ignoreClearRect},set:function(t){this.ctx.ignoreClearRect=Boolean(t)}})};l.prototype.fill=function(){m.call(this,"fill",!1)},l.prototype.stroke=function(){m.call(this,"stroke",!1)},l.prototype.beginPath=function(){this.path=[{type:"begin"}]},l.prototype.moveTo=function(t,e){if(isNaN(t)||isNaN(e))throw console.error("jsPDF.context2d.moveTo: Invalid arguments",arguments),new Error("Invalid arguments passed to jsPDF.context2d.moveTo");var n=this.ctx.transform.applyToPoint(new D(t,e));this.path.push({type:"mt",x:n.x,y:n.y}),this.ctx.lastPoint=new D(t,e)},l.prototype.closePath=function(){var t=new D(0,0),e=0;for(e=this.path.length-1;-1!==e;e--)if("begin"===this.path[e].type&&"object"===r(this.path[e+1])&&"number"==typeof this.path[e+1].x){t=new D(this.path[e+1].x,this.path[e+1].y),this.path.push({type:"lt",x:t.x,y:t.y});break}"object"===r(this.path[e+2])&&"number"==typeof this.path[e+2].x&&this.path.push(JSON.parse(JSON.stringify(this.path[e+2]))),this.path.push({type:"close"}),this.ctx.lastPoint=new D(t.x,t.y)},l.prototype.lineTo=function(t,e){if(isNaN(t)||isNaN(e))throw console.error("jsPDF.context2d.lineTo: Invalid arguments",arguments),new Error("Invalid arguments passed to jsPDF.context2d.lineTo");var n=this.ctx.transform.applyToPoint(new D(t,e));this.path.push({type:"lt",x:n.x,y:n.y}),this.ctx.lastPoint=new D(n.x,n.y)},l.prototype.clip=function(){this.ctx.clip_path=JSON.parse(JSON.stringify(this.path)),m.call(this,null,!0)},l.prototype.quadraticCurveTo=function(t,e,n,i){if(isNaN(n)||isNaN(i)||isNaN(t)||isNaN(e))throw console.error("jsPDF.context2d.quadraticCurveTo: Invalid arguments",arguments),new Error("Invalid arguments passed to jsPDF.context2d.quadraticCurveTo");var r=this.ctx.transform.applyToPoint(new D(n,i)),o=this.ctx.transform.applyToPoint(new D(t,e));this.path.push({type:"qct",x1:o.x,y1:o.y,x:r.x,y:r.y}),this.ctx.lastPoint=new D(r.x,r.y)},l.prototype.bezierCurveTo=function(t,e,n,i,r,o){if(isNaN(r)||isNaN(o)||isNaN(t)||isNaN(e)||isNaN(n)||isNaN(i))throw console.error("jsPDF.context2d.bezierCurveTo: Invalid arguments",arguments),new Error("Invalid arguments passed to jsPDF.context2d.bezierCurveTo");var a=this.ctx.transform.applyToPoint(new D(r,o)),s=this.ctx.transform.applyToPoint(new D(t,e)),c=this.ctx.transform.applyToPoint(new D(n,i));this.path.push({type:"bct",x1:s.x,y1:s.y,x2:c.x,y2:c.y,x:a.x,y:a.y}),this.ctx.lastPoint=new D(a.x,a.y)},l.prototype.arc=function(t,e,n,i,r,o){if(isNaN(t)||isNaN(e)||isNaN(n)||isNaN(i)||isNaN(r))throw console.error("jsPDF.context2d.arc: Invalid arguments",arguments),new Error("Invalid arguments passed to jsPDF.context2d.arc");if(o=Boolean(o),!this.ctx.transform.isIdentity){var a=this.ctx.transform.applyToPoint(new D(t,e));t=a.x,e=a.y;var s=this.ctx.transform.applyToPoint(new D(0,n)),c=this.ctx.transform.applyToPoint(new D(0,0));n=Math.sqrt(Math.pow(s.x-c.x,2)+Math.pow(s.y-c.y,2))}Math.abs(r-i)>=2*Math.PI&&(i=0,r=2*Math.PI),this.path.push({type:"arc",x:t,y:e,radius:n,startAngle:i,endAngle:r,counterclockwise:o})},l.prototype.arcTo=function(t,e,n,i,r){throw new Error("arcTo not implemented.")},l.prototype.rect=function(t,e,n,i){if(isNaN(t)||isNaN(e)||isNaN(n)||isNaN(i))throw console.error("jsPDF.context2d.rect: Invalid arguments",arguments),new Error("Invalid arguments passed to jsPDF.context2d.rect");this.moveTo(t,e),this.lineTo(t+n,e),this.lineTo(t+n,e+i),this.lineTo(t,e+i),this.lineTo(t,e),this.lineTo(t+n,e),this.lineTo(t,e)},l.prototype.fillRect=function(t,e,n,i){if(isNaN(t)||isNaN(e)||isNaN(n)||isNaN(i))throw console.error("jsPDF.context2d.fillRect: Invalid arguments",arguments),new Error("Invalid arguments passed to jsPDF.context2d.fillRect");if(!d.call(this)){var r={};"butt"!==this.lineCap&&(r.lineCap=this.lineCap,this.lineCap="butt"),"miter"!==this.lineJoin&&(r.lineJoin=this.lineJoin,this.lineJoin="miter"),this.beginPath(),this.rect(t,e,n,i),this.fill(),r.hasOwnProperty("lineCap")&&(this.lineCap=r.lineCap),r.hasOwnProperty("lineJoin")&&(this.lineJoin=r.lineJoin)}},l.prototype.strokeRect=function(t,e,n,i){if(isNaN(t)||isNaN(e)||isNaN(n)||isNaN(i))throw console.error("jsPDF.context2d.strokeRect: Invalid arguments",arguments),new Error("Invalid arguments passed to jsPDF.context2d.strokeRect");p.call(this)||(this.beginPath(),this.rect(t,e,n,i),this.stroke())},l.prototype.clearRect=function(t,e,n,i){if(isNaN(t)||isNaN(e)||isNaN(n)||isNaN(i))throw console.error("jsPDF.context2d.clearRect: Invalid arguments",arguments),new Error("Invalid arguments passed to jsPDF.context2d.clearRect");this.ignoreClearRect||(this.fillStyle="#ffffff",this.fillRect(t,e,n,i))},l.prototype.save=function(t){t="boolean"!=typeof t||t;for(var e=this.pdf.internal.getCurrentPageInfo().pageNumber,n=0;n<this.pdf.internal.getNumberOfPages();n++)this.pdf.setPage(n+1),this.pdf.internal.out("q");if(this.pdf.setPage(e),t){this.ctx.fontSize=this.pdf.internal.getFontSize();var i=new c(this.ctx);this.ctxStack.push(this.ctx),this.ctx=i}},l.prototype.restore=function(t){t="boolean"!=typeof t||t;for(var e=this.pdf.internal.getCurrentPageInfo().pageNumber,n=0;n<this.pdf.internal.getNumberOfPages();n++)this.pdf.setPage(n+1),this.pdf.internal.out("Q");this.pdf.setPage(e),t&&0!==this.ctxStack.length&&(this.ctx=this.ctxStack.pop(),this.fillStyle=this.ctx.fillStyle,this.strokeStyle=this.ctx.strokeStyle,this.font=this.ctx.font,this.lineCap=this.ctx.lineCap,this.lineWidth=this.ctx.lineWidth,this.lineJoin=this.ctx.lineJoin)},l.prototype.toDataURL=function(){throw new Error("toDataUrl not implemented.")};var u=function(t){var e,n,i,r;if(!0===t.isCanvasGradient&&(t=t.getColor()),!t)return{r:0,g:0,b:0,a:0,style:t};if(/transparent|rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*0+\s*\)/.test(t))r=i=n=e=0;else{var o=/rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/.exec(t);if(null!==o)e=parseInt(o[1]),n=parseInt(o[2]),i=parseInt(o[3]),r=1;else if(null!==(o=/rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*([\d\.]+)\s*\)/.exec(t)))e=parseInt(o[1]),n=parseInt(o[2]),i=parseInt(o[3]),r=parseFloat(o[4]);else{if(r=1,"string"==typeof t&&"#"!==t.charAt(0)){var a=new RGBColor(t);t=a.ok?a.toHex():"#000000"}4===t.length?(e=t.substring(1,2),e+=e,n=t.substring(2,3),n+=n,i=t.substring(3,4),i+=i):(e=t.substring(1,3),n=t.substring(3,5),i=t.substring(5,7)),e=parseInt(e,16),n=parseInt(n,16),i=parseInt(i,16)}}return{r:e,g:n,b:i,a:r,style:t}},d=function(){return this.ctx.isFillTransparent||0==this.globalAlpha},p=function(){return Boolean(this.ctx.isStrokeTransparent||0==this.globalAlpha)};l.prototype.fillText=function(t,e,n,i){if(isNaN(e)||isNaN(n)||"string"!=typeof t)throw console.error("jsPDF.context2d.fillText: Invalid arguments",arguments),new Error("Invalid arguments passed to jsPDF.context2d.fillText");if(i=isNaN(i)?void 0:i,!d.call(this)){n=y.call(this,n);var r=_(this.ctx.transform.rotation),o=this.ctx.transform.scaleX;M.call(this,{text:t,x:e,y:n,scale:o,angle:r,align:this.textAlign,maxWidth:i})}},l.prototype.strokeText=function(t,e,n,i){if(isNaN(e)||isNaN(n)||"string"!=typeof t)throw console.error("jsPDF.context2d.strokeText: Invalid arguments",arguments),new Error("Invalid arguments passed to jsPDF.context2d.strokeText");if(!p.call(this)){i=isNaN(i)?void 0:i,n=y.call(this,n);var r=_(this.ctx.transform.rotation),o=this.ctx.transform.scaleX;M.call(this,{text:t,x:e,y:n,scale:o,renderingMode:"stroke",angle:r,align:this.textAlign,maxWidth:i})}},l.prototype.measureText=function(t){if("string"!=typeof t)throw console.error("jsPDF.context2d.measureText: Invalid arguments",arguments),new Error("Invalid arguments passed to jsPDF.context2d.measureText");var e=this.pdf,n=this.pdf.internal.scaleFactor,i=e.internal.getFontSize(),r=e.getStringUnitWidth(t)*i/e.internal.scaleFactor;return new function(t){var e=(t=t||{}).width||0;return Object.defineProperty(this,"width",{get:function(){return e}}),this}({width:r*=Math.round(96*n/72*1e4)/1e4})},l.prototype.scale=function(t,e){if(isNaN(t)||isNaN(e))throw console.error("jsPDF.context2d.scale: Invalid arguments",arguments),new Error("Invalid arguments passed to jsPDF.context2d.scale");var n=new L(t,0,0,e,0,0);this.ctx.transform=this.ctx.transform.multiply(n)},l.prototype.rotate=function(t){if(isNaN(t))throw console.error("jsPDF.context2d.rotate: Invalid arguments",arguments),new Error("Invalid arguments passed to jsPDF.context2d.rotate");var e=new L(Math.cos(t),Math.sin(t),-Math.sin(t),Math.cos(t),0,0);this.ctx.transform=this.ctx.transform.multiply(e)},l.prototype.translate=function(t,e){if(isNaN(t)||isNaN(e))throw console.error("jsPDF.context2d.translate: Invalid arguments",arguments),new Error("Invalid arguments passed to jsPDF.context2d.translate");var n=new L(1,0,0,1,t,e);this.ctx.transform=this.ctx.transform.multiply(n)},l.prototype.transform=function(t,e,n,i,r,o){if(isNaN(t)||isNaN(e)||isNaN(n)||isNaN(i)||isNaN(r)||isNaN(o))throw console.error("jsPDF.context2d.transform: Invalid arguments",arguments),new Error("Invalid arguments passed to jsPDF.context2d.transform");var a=new L(t,e,n,i,r,o);this.ctx.transform=this.ctx.transform.multiply(a)},l.prototype.setTransform=function(t,e,n,i,r,o){t=isNaN(t)?1:t,e=isNaN(e)?0:e,n=isNaN(n)?0:n,i=isNaN(i)?1:i,r=isNaN(r)?0:r,o=isNaN(o)?0:o,this.ctx.transform=new L(t,e,n,i,r,o)},l.prototype.drawImage=function(t,e,n,i,r,o,a,s,c){var l=this.pdf.getImageProperties(t),u=1,d=1,p=1,f=1;void 0!==i&&void 0!==s&&(p=s/i,f=c/r,u=l.width/i*s/i,d=l.height/r*c/r),void 0===o&&(o=e,a=n,n=e=0),void 0!==i&&void 0===s&&(s=i,c=r),void 0===i&&void 0===s&&(s=l.width,c=l.height);var m=this.ctx.transform.decompose(),y=_(m.rotate.shx);m.scale.sx,m.scale.sy;for(var b,w=new L,S=((w=(w=(w=w.multiply(m.translate)).multiply(m.skew)).multiply(m.scale)).applyToPoint(new D(s,c)),w.applyToRectangle(new R(o-e*p,a-n*f,i*u,r*d))),x=h.call(this,S),M=[],E=0;E<x.length;E+=1)-1===M.indexOf(x[E])&&M.push(x[E]);if(M.sort(),this.autoPaging)for(var C=M[0],A=M[M.length-1],T=C;T<A+1;T++){if(this.pdf.setPage(T),0!==this.ctx.clip_path.length){var O=this.path;b=JSON.parse(JSON.stringify(this.ctx.clip_path)),this.path=g(b,this.posX,-1*this.pdf.internal.pageSize.height*(T-1)+this.posY),v.call(this,"fill",!0),this.path=O}var P=JSON.parse(JSON.stringify(S));P=g([P],this.posX,-1*this.pdf.internal.pageSize.height*(T-1)+this.posY)[0],this.pdf.addImage(t,"jpg",P.x,P.y,P.w,P.h,null,null,y)}else this.pdf.addImage(t,"jpg",S.x,S.y,S.w,S.h,null,null,y)};var h=function(t,e,n){var i=[];switch(e=e||this.pdf.internal.pageSize.width,n=n||this.pdf.internal.pageSize.height,t.type){default:case"mt":case"lt":i.push(Math.floor((t.y+this.posY)/n)+1);break;case"arc":i.push(Math.floor((t.y+this.posY-t.radius)/n)+1),i.push(Math.floor((t.y+this.posY+t.radius)/n)+1);break;case"qct":var r=I(this.ctx.lastPoint.x,this.ctx.lastPoint.y,t.x1,t.y1,t.x,t.y);i.push(Math.floor(r.y/n)+1),i.push(Math.floor((r.y+r.h)/n)+1);break;case"bct":var o=k(this.ctx.lastPoint.x,this.ctx.lastPoint.y,t.x1,t.y1,t.x2,t.y2,t.x,t.y);i.push(Math.floor(o.y/n)+1),i.push(Math.floor((o.y+o.h)/n)+1);break;case"rect":i.push(Math.floor((t.y+this.posY)/n)+1),i.push(Math.floor((t.y+t.h+this.posY)/n)+1)}for(var a=0;a<i.length;a+=1)for(;this.pdf.internal.getNumberOfPages()<i[a];)f.call(this);return i},f=function(){var t=this.fillStyle,e=this.strokeStyle,n=this.font,i=this.lineCap,r=this.lineWidth,o=this.lineJoin;this.pdf.addPage(),this.fillStyle=t,this.strokeStyle=e,this.font=n,this.lineCap=i,this.lineWidth=r,this.lineJoin=o},g=function(t,e,n){for(var i=0;i<t.length;i++)switch(t[i].type){case"bct":t[i].x2+=e,t[i].y2+=n;case"qct":t[i].x1+=e,t[i].y1+=n;case"mt":case"lt":case"arc":default:t[i].x+=e,t[i].y+=n}return t},m=function(t,e){for(var n,i,r=this.fillStyle,o=this.strokeStyle,a=(this.font,this.lineCap),s=this.lineWidth,c=this.lineJoin,l=JSON.parse(JSON.stringify(this.path)),u=JSON.parse(JSON.stringify(this.path)),d=[],p=0;p<u.length;p++)if(void 0!==u[p].x)for(var m=h.call(this,u[p]),y=0;y<m.length;y+=1)-1===d.indexOf(m[y])&&d.push(m[y]);for(p=0;p<d.length;p++)for(;this.pdf.internal.getNumberOfPages()<d[p];)f.call(this);if(d.sort(),this.autoPaging){var b=d[0],w=d[d.length-1];for(p=b;p<w+1;p++){if(this.pdf.setPage(p),this.fillStyle=r,this.strokeStyle=o,this.lineCap=a,this.lineWidth=s,this.lineJoin=c,0!==this.ctx.clip_path.length){var S=this.path;n=JSON.parse(JSON.stringify(this.ctx.clip_path)),this.path=g(n,this.posX,-1*this.pdf.internal.pageSize.height*(p-1)+this.posY),v.call(this,t,!0),this.path=S}i=JSON.parse(JSON.stringify(l)),this.path=g(i,this.posX,-1*this.pdf.internal.pageSize.height*(p-1)+this.posY),!1!==e&&0!==p||v.call(this,t,e)}}else v.call(this,t,e);this.path=l},v=function(t,e){if(("stroke"!==t||e||!p.call(this))&&("stroke"===t||e||!d.call(this))){var n=[];this.ctx.globalAlpha,this.ctx.fillOpacity<1&&this.ctx.fillOpacity;for(var i,r=this.path,o=0;o<r.length;o++){var a=r[o];switch(a.type){case"begin":n.push({begin:!0});break;case"close":n.push({close:!0});break;case"mt":n.push({start:a,deltas:[],abs:[]});break;case"lt":var s=n.length;if(!isNaN(r[o-1].x)){var c=[a.x-r[o-1].x,a.y-r[o-1].y];if(0<s)for(;0<=s;s--)if(!0!==n[s-1].close&&!0!==n[s-1].begin){n[s-1].deltas.push(c),n[s-1].abs.push(a);break}}break;case"bct":c=[a.x1-r[o-1].x,a.y1-r[o-1].y,a.x2-r[o-1].x,a.y2-r[o-1].y,a.x-r[o-1].x,a.y-r[o-1].y],n[n.length-1].deltas.push(c);break;case"qct":var l=r[o-1].x+2/3*(a.x1-r[o-1].x),u=r[o-1].y+2/3*(a.y1-r[o-1].y),h=a.x+2/3*(a.x1-a.x),f=a.y+2/3*(a.y1-a.y),g=a.x,m=a.y;c=[l-r[o-1].x,u-r[o-1].y,h-r[o-1].x,f-r[o-1].y,g-r[o-1].x,m-r[o-1].y],n[n.length-1].deltas.push(c);break;case"arc":n.push({deltas:[],abs:[],arc:!0}),Array.isArray(n[n.length-1].abs)&&n[n.length-1].abs.push(a)}}for(i=e?null:"stroke"===t?"stroke":"fill",o=0;o<n.length;o++){if(n[o].arc)for(var v=n[o].abs,y=0;y<v.length;y++){var x=v[y];if(void 0!==x.startAngle){var M=_(x.startAngle),A=_(x.endAngle),T=x.x,O=x.y;b.call(this,T,O,x.radius,M,A,x.counterclockwise,i,e)}else E.call(this,x.x,x.y)}n[o].arc||!0===n[o].close||!0===n[o].begin||(T=n[o].start.x,O=n[o].start.y,C.call(this,n[o].deltas,T,O,null,null))}i&&w.call(this,i),e&&S.call(this)}},y=function(t){var e=this.pdf.internal.getFontSize()/this.pdf.internal.scaleFactor,n=e*(this.pdf.internal.getLineHeightFactor()-1);switch(this.ctx.textBaseline){case"bottom":return t-n;case"top":return t+e-n;case"hanging":return t+e-2*n;case"middle":return t+e/2-n;case"ideographic":return t;case"alphabetic":default:return t}};l.prototype.createLinearGradient=function(){var t=function(){};return t.colorStops=[],t.addColorStop=function(t,e){this.colorStops.push([t,e])},t.getColor=function(){return 0===this.colorStops.length?"#000000":this.colorStops[0][1]},t.isCanvasGradient=!0,t},l.prototype.createPattern=function(){return this.createLinearGradient()},l.prototype.createRadialGradient=function(){return this.createLinearGradient()};var b=function(t,e,n,i,r,o,a,s){this.pdf.internal.scaleFactor;for(var c=P(i),l=P(r),u=T.call(this,n,c,l,o),d=0;d<u.length;d++){var p=u[d];0===d&&x.call(this,p.x1+t,p.y1+e),A.call(this,t,e,p.x2,p.y2,p.x3,p.y3,p.x4,p.y4)}s?S.call(this):w.call(this,a)},w=function(t){switch(t){case"stroke":this.pdf.internal.out("S");break;case"fill":this.pdf.internal.out("f")}},S=function(){this.pdf.clip()},x=function(t,e){this.pdf.internal.out(i(t)+" "+o(e)+" m")},M=function(t){var e;switch(t.align){case"right":case"end":e="right";break;case"center":e="center";break;case"left":case"start":default:e="left"}var n=this.ctx.transform.applyToPoint(new D(t.x,t.y)),i=this.ctx.transform.decompose(),r=new L;r=(r=(r=r.multiply(i.translate)).multiply(i.skew)).multiply(i.scale);for(var o,a=this.pdf.getTextDimensions(t.text),s=this.ctx.transform.applyToRectangle(new R(t.x,t.y,a.w,a.h)),c=r.applyToRectangle(new R(t.x,t.y-a.h,a.w,a.h)),l=h.call(this,c),u=[],d=0;d<l.length;d+=1)-1===u.indexOf(l[d])&&u.push(l[d]);if(u.sort(),!0===this.autoPaging)for(var p=u[0],f=u[u.length-1],m=p;m<f+1;m++){if(this.pdf.setPage(m),0!==this.ctx.clip_path.length){var y=this.path;o=JSON.parse(JSON.stringify(this.ctx.clip_path)),this.path=g(o,this.posX,-1*this.pdf.internal.pageSize.height*(m-1)+this.posY),v.call(this,"fill",!0),this.path=y}var b=JSON.parse(JSON.stringify(s));if(b=g([b],this.posX,-1*this.pdf.internal.pageSize.height*(m-1)+this.posY)[0],.01<=t.scale){var w=this.pdf.internal.getFontSize();this.pdf.setFontSize(w*t.scale)}this.pdf.text(t.text,b.x,b.y,{angle:t.angle,align:e,renderingMode:t.renderingMode,maxWidth:t.maxWidth}),.01<=t.scale&&this.pdf.setFontSize(w)}else.01<=t.scale&&(w=this.pdf.internal.getFontSize(),this.pdf.setFontSize(w*t.scale)),this.pdf.text(t.text,n.x+this.posX,n.y+this.posY,{angle:t.angle,align:e,renderingMode:t.renderingMode,maxWidth:t.maxWidth}),.01<=t.scale&&this.pdf.setFontSize(w)},E=function(t,e,n,r){n=n||0,r=r||0,this.pdf.internal.out(i(t+n)+" "+o(e+r)+" l")},C=function(t,e,n){return this.pdf.lines(t,e,n,null,null)},A=function(t,e,i,r,o,c,l,u){this.pdf.internal.out([n(a(i+t)),n(s(r+e)),n(a(o+t)),n(s(c+e)),n(a(l+t)),n(s(u+e)),"c"].join(" "))},T=function(t,e,n,i){var r=2*Math.PI,o=e;(o<r||r<o)&&(o%=r);var a=n;(a<r||r<a)&&(a%=r);for(var s=[],c=Math.PI/2,l=i?-1:1,u=e,d=Math.min(r,Math.abs(a-o));1e-5<d;){var p=u+l*Math.min(d,c);s.push(O.call(this,t,u,p)),d-=Math.abs(p-u),u=p}return s},O=function(t,e,n){var i=(n-e)/2,r=t*Math.cos(i),o=t*Math.sin(i),a=r,s=-o,c=a*a+s*s,l=c+a*r+s*o,u=4/3*(Math.sqrt(2*c*l)-l)/(a*o-s*r),d=a-u*s,p=s+u*a,h=d,f=-p,g=i+e,m=Math.cos(g),v=Math.sin(g);return{x1:t*Math.cos(e),y1:t*Math.sin(e),x2:d*m-p*v,y2:d*v+p*m,x3:h*m-f*v,y3:h*v+f*m,x4:t*Math.cos(n),y4:t*Math.sin(n)}},_=function(t){return 180*t/Math.PI},P=function(t){return t*Math.PI/180},I=function(t,e,n,i,r,o){var a=t+.5*(n-t),s=e+.5*(i-e),c=r+.5*(n-r),l=o+.5*(i-o),u=Math.min(t,r,a,c),d=Math.max(t,r,a,c),p=Math.min(e,o,s,l),h=Math.max(e,o,s,l);return new R(u,p,d-u,h-p)},k=function(t,e,n,i,r,o,a,s){for(var c,l,u,d,p,h,f,g,m,v,y,b,w,S=n-t,x=i-e,M=r-n,E=o-i,C=a-r,A=s-o,T=0;T<41;T++)g=(h=(l=t+(c=T/40)*S)+c*((d=n+c*M)-l))+c*(d+c*(r+c*C-d)-h),m=(f=(u=e+c*x)+c*((p=i+c*E)-u))+c*(p+c*(o+c*A-p)-f),w=0==T?(b=v=g,y=m):(v=Math.min(v,g),y=Math.min(y,m),b=Math.max(b,g),Math.max(w,m));return new R(Math.round(v),Math.round(y),Math.round(b-v),Math.round(w-y))},D=function(t,e){var n=t||0;Object.defineProperty(this,"x",{enumerable:!0,get:function(){return n},set:function(t){isNaN(t)||(n=parseFloat(t))}});var i=e||0;Object.defineProperty(this,"y",{enumerable:!0,get:function(){return i},set:function(t){isNaN(t)||(i=parseFloat(t))}});var r="pt";return Object.defineProperty(this,"type",{enumerable:!0,get:function(){return r},set:function(t){r=t.toString()}}),this},R=function(t,e,n,i){D.call(this,t,e),this.type="rect";var r=n||0;Object.defineProperty(this,"w",{enumerable:!0,get:function(){return r},set:function(t){isNaN(t)||(r=parseFloat(t))}});var o=i||0;return Object.defineProperty(this,"h",{enumerable:!0,get:function(){return o},set:function(t){isNaN(t)||(o=parseFloat(t))}}),this},L=function(t,e,n,i,r,o){var a=[];return Object.defineProperty(this,"sx",{get:function(){return a[0]},set:function(t){a[0]=Math.round(1e5*t)/1e5}}),Object.defineProperty(this,"shy",{get:function(){return a[1]},set:function(t){a[1]=Math.round(1e5*t)/1e5}}),Object.defineProperty(this,"shx",{get:function(){return a[2]},set:function(t){a[2]=Math.round(1e5*t)/1e5}}),Object.defineProperty(this,"sy",{get:function(){return a[3]},set:function(t){a[3]=Math.round(1e5*t)/1e5}}),Object.defineProperty(this,"tx",{get:function(){return a[4]},set:function(t){a[4]=Math.round(1e5*t)/1e5}}),Object.defineProperty(this,"ty",{get:function(){return a[5]},set:function(t){a[5]=Math.round(1e5*t)/1e5}}),Object.defineProperty(this,"rotation",{get:function(){return Math.atan2(this.shx,this.sx)}}),Object.defineProperty(this,"scaleX",{get:function(){return this.decompose().scale.sx}}),Object.defineProperty(this,"scaleY",{get:function(){return this.decompose().scale.sy}}),Object.defineProperty(this,"isIdentity",{get:function(){return 1===this.sx&&0===this.shy&&0===this.shx&&1===this.sy&&0===this.tx&&0===this.ty}}),this.sx=isNaN(t)?1:t,this.shy=isNaN(e)?0:e,this.shx=isNaN(n)?0:n,this.sy=isNaN(i)?1:i,this.tx=isNaN(r)?0:r,this.ty=isNaN(o)?0:o,this};L.prototype.multiply=function(t){var e=t.sx*this.sx+t.shy*this.shx,n=t.sx*this.shy+t.shy*this.sy,i=t.shx*this.sx+t.sy*this.shx,r=t.shx*this.shy+t.sy*this.sy,o=t.tx*this.sx+t.ty*this.shx+this.tx,a=t.tx*this.shy+t.ty*this.sy+this.ty;return new L(e,n,i,r,o,a)},L.prototype.decompose=function(){var t=this.sx,e=this.shy,n=this.shx,i=this.sy,r=this.tx,o=this.ty,a=Math.sqrt(t*t+e*e),s=(t/=a)*n+(e/=a)*i;n-=t*s,i-=e*s;var c=Math.sqrt(n*n+i*i);return s/=c,t*(i/=c)<e*(n/=c)&&(t=-t,e=-e,s=-s,a=-a),{scale:new L(a,0,0,c,0,0),translate:new L(1,0,0,1,r,o),rotate:new L(t,e,-e,t,0,0),skew:new L(1,0,s,1,0,0)}},L.prototype.applyToPoint=function(t){var e=t.x*this.sx+t.y*this.shx+this.tx,n=t.x*this.shy+t.y*this.sy+this.ty;return new D(e,n)},L.prototype.applyToRectangle=function(t){var e=this.applyToPoint(t),n=this.applyToPoint(new D(t.x+t.w,t.y+t.h));return new R(e.x,e.y,n.x-e.x,n.y-e.y)},L.prototype.clone=function(){var t=this.sx,e=this.shy,n=this.shx,i=this.sy,r=this.tx,o=this.ty;return new L(t,e,n,i,r,o)}}(ft.API,"undefined"!=typeof self&&self||"undefined"!=typeof window&&window||void 0!==i&&i||Function('return typeof this === "object" && this.content')()||Function("return this")()),m=ft.API,v=function(t){var e,n,i,r,o,a,s,c,l,u;for(/[^\x00-\xFF]/.test(t),n=[],i=0,r=(t+=e="\0\0\0\0".slice(t.length%4||4)).length;i<r;i+=4)0!==(o=(t.charCodeAt(i)<<24)+(t.charCodeAt(i+1)<<16)+(t.charCodeAt(i+2)<<8)+t.charCodeAt(i+3))?(a=(o=((o=((o=((o=(o-(u=o%85))/85)-(l=o%85))/85)-(c=o%85))/85)-(s=o%85))/85)%85,n.push(a+33,s+33,c+33,l+33,u+33)):n.push(122);return function(t,n){for(var i=e.length;0<i;i--)t.pop()}(n),String.fromCharCode.apply(String,n)+"~>"},y=function(t){var e,n,i,r,o,a=String,s="length",c="charCodeAt",l="slice",u="replace";for(t[l](-2),t=t[l](0,-2)[u](/\s/g,"")[u]("z","!!!!!"),i=[],r=0,o=(t+=e="uuuuu"[l](t[s]%5||5))[s];r<o;r+=5)n=52200625*(t[c](r)-33)+614125*(t[c](r+1)-33)+7225*(t[c](r+2)-33)+85*(t[c](r+3)-33)+(t[c](r+4)-33),i.push(255&n>>24,255&n>>16,255&n>>8,255&n);return function(t,n){for(var i=e[s];0<i;i--)t.pop()}(i),a.fromCharCode.apply(a,i)},b=function(t){for(var e="",n=0;n<t.length;n+=1)e+=("0"+t.charCodeAt(n).toString(16)).slice(-2);return e+">"},w=function(t){var e=new RegExp(/^([0-9A-Fa-f]{2})+$/);if(-1!==(t=t.replace(/\s/g,"")).indexOf(">")&&(t=t.substr(0,t.indexOf(">"))),t.length%2&&(t+="0"),!1===e.test(t))return"";for(var n="",i=0;i<t.length;i+=2)n+=String.fromCharCode("0x"+(t[i]+t[i+1]));return n},S=function(t,e){e=Object.assign({predictor:1,colors:1,bitsPerComponent:8,columns:1},e);for(var n,i,r=[],o=t.length;o--;)r[o]=t.charCodeAt(o);return n=m.adler32cs.from(t),(i=new Deflater(6)).append(new Uint8Array(r)),t=i.flush(),(r=new Uint8Array(t.length+6)).set(new Uint8Array([120,156])),r.set(t,2),r.set(new Uint8Array([255&n,n>>8&255,n>>16&255,n>>24&255]),t.length+2),String.fromCharCode.apply(null,r)},m.processDataByFilters=function(t,e){var n=0,i=t||"",r=[];for("string"==typeof(e=e||[])&&(e=[e]),n=0;n<e.length;n+=1)switch(e[n]){case"ASCII85Decode":case"/ASCII85Decode":i=y(i),r.push("/ASCII85Encode");break;case"ASCII85Encode":case"/ASCII85Encode":i=v(i),r.push("/ASCII85Decode");break;case"ASCIIHexDecode":case"/ASCIIHexDecode":i=w(i),r.push("/ASCIIHexEncode");break;case"ASCIIHexEncode":case"/ASCIIHexEncode":i=b(i),r.push("/ASCIIHexDecode");break;case"FlateEncode":case"/FlateEncode":i=S(i),r.push("/FlateDecode");break;default:throw'The filter: "'+e[n]+'" is not implemented'}return{data:i,reverseChain:r.reverse().join(" ")}},(x=ft.API).loadFile=function(t,e,n){var i;e=e||!0,n=n||function(){};try{i=function(t,e,n){var i=new XMLHttpRequest,r=[],o=0,a=function(t){var e=t.length,n=String.fromCharCode;for(o=0;o<e;o+=1)r.push(n(255&t.charCodeAt(o)));return r.join("")};if(i.open("GET",t,!e),i.overrideMimeType("text/plain; charset=x-user-defined"),!1===e&&(i.onload=function(){return a(this.responseText)}),i.send(null),200===i.status)return e?a(i.responseText):void 0;console.warn('Unable to load file "'+t+'"')}(t,e)}catch(t){i=void 0}return i},x.loadImageFile=x.loadFile,M=ft.API,E="undefined"!=typeof window&&window||void 0!==i&&i,C=function(t){var e=r(t);return"undefined"===e?"undefined":"string"===e||t instanceof String?"string":"number"===e||t instanceof Number?"number":"function"===e||t instanceof Function?"function":t&&t.constructor===Array?"array":t&&1===t.nodeType?"element":"object"===e?"object":"unknown"},A=function(t,e){var n=document.createElement(t);if(e.className&&(n.className=e.className),e.innerHTML){n.innerHTML=e.innerHTML;for(var i=n.getElementsByTagName("script"),r=i.length;0<r--;null)i[r].parentNode.removeChild(i[r])}for(var o in e.style)n.style[o]=e.style[o];return n},(((T=function t(e){var n=Object.assign(t.convert(Promise.resolve()),JSON.parse(JSON.stringify(t.template))),i=t.convert(Promise.resolve(),n);return(i=i.setProgress(1,t,1,[t])).set(e)}).prototype=Object.create(Promise.prototype)).constructor=T).convert=function(t,e){return t.__proto__=e||T.prototype,t},T.template={prop:{src:null,container:null,overlay:null,canvas:null,img:null,pdf:null,pageSize:null,callback:function(){}},progress:{val:0,state:null,n:0,stack:[]},opt:{filename:"file.pdf",margin:[0,0,0,0],enableLinks:!0,x:0,y:0,html2canvas:{},jsPDF:{}}},T.prototype.from=function(t,e){return this.then(function(){switch(e=e||function(t){switch(C(t)){case"string":return"string";case"element":return"canvas"===t.nodeName.toLowerCase?"canvas":"element";default:return"unknown"}}(t)){case"string":return this.set({src:A("div",{innerHTML:t})});case"element":return this.set({src:t});case"canvas":return this.set({canvas:t});case"img":return this.set({img:t});default:return this.error("Unknown source type.")}})},T.prototype.to=function(t){switch(t){case"container":return this.toContainer();case"canvas":return this.toCanvas();case"img":return this.toImg();case"pdf":return this.toPdf();default:return this.error("Invalid target.")}},T.prototype.toContainer=function(){return this.thenList([function(){return this.prop.src||this.error("Cannot duplicate - no source HTML.")},function(){return this.prop.pageSize||this.setPageSize()}]).then(function(){var t={position:"relative",display:"inline-block",width:Math.max(this.prop.src.clientWidth,this.prop.src.scrollWidth,this.prop.src.offsetWidth)+"px",left:0,right:0,top:0,margin:"auto",backgroundColor:"white"},e=function t(e,n){for(var i=3===e.nodeType?document.createTextNode(e.nodeValue):e.cloneNode(!1),r=e.firstChild;r;r=r.nextSibling)!0!==n&&1===r.nodeType&&"SCRIPT"===r.nodeName||i.appendChild(t(r,n));return 1===e.nodeType&&("CANVAS"===e.nodeName?(i.width=e.width,i.height=e.height,i.getContext("2d").drawImage(e,0,0)):"TEXTAREA"!==e.nodeName&&"SELECT"!==e.nodeName||(i.value=e.value),i.addEventListener("load",function(){i.scrollTop=e.scrollTop,i.scrollLeft=e.scrollLeft},!0)),i}(this.prop.src,this.opt.html2canvas.javascriptEnabled);"BODY"===e.tagName&&(t.height=Math.max(document.body.scrollHeight,document.body.offsetHeight,document.documentElement.clientHeight,document.documentElement.scrollHeight,document.documentElement.offsetHeight)+"px"),this.prop.overlay=A("div",{className:"html2pdf__overlay",style:{position:"fixed",overflow:"hidden",zIndex:1e3,left:"-100000px",right:0,bottom:0,top:0}}),this.prop.container=A("div",{className:"html2pdf__container",style:t}),this.prop.container.appendChild(e),this.prop.container.firstChild.appendChild(A("div",{style:{clear:"both",border:"0 none transparent",margin:0,padding:0,height:0}})),this.prop.container.style.float="none",this.prop.overlay.appendChild(this.prop.container),document.body.appendChild(this.prop.overlay),this.prop.container.firstChild.style.position="relative",this.prop.container.height=Math.max(this.prop.container.firstChild.clientHeight,this.prop.container.firstChild.scrollHeight,this.prop.container.firstChild.offsetHeight)+"px"})},T.prototype.toCanvas=function(){var t=[function(){return document.body.contains(this.prop.container)||this.toContainer()}];return this.thenList(t).then(function(){var t=Object.assign({},this.opt.html2canvas);if(delete t.onrendered,this.isHtml2CanvasLoaded())return html2canvas(this.prop.container,t)}).then(function(t){(this.opt.html2canvas.onrendered||function(){})(t),this.prop.canvas=t,document.body.removeChild(this.prop.overlay)})},T.prototype.toContext2d=function(){var t=[function(){return document.body.contains(this.prop.container)||this.toContainer()}];return this.thenList(t).then(function(){var t=this.opt.jsPDF,e=Object.assign({async:!0,allowTaint:!0,backgroundColor:"#ffffff",imageTimeout:15e3,logging:!0,proxy:null,removeContainer:!0,foreignObjectRendering:!1,useCORS:!1},this.opt.html2canvas);if(delete e.onrendered,t.context2d.autoPaging=!0,t.context2d.posX=this.opt.x,t.context2d.posY=this.opt.y,e.windowHeight=e.windowHeight||0,e.windowHeight=0==e.windowHeight?Math.max(this.prop.container.clientHeight,this.prop.container.scrollHeight,this.prop.container.offsetHeight):e.windowHeight,this.isHtml2CanvasLoaded())return html2canvas(this.prop.container,e)}).then(function(t){(this.opt.html2canvas.onrendered||function(){})(t),this.prop.canvas=t,document.body.removeChild(this.prop.overlay)})},T.prototype.toImg=function(){return this.thenList([function(){return this.prop.canvas||this.toCanvas()}]).then(function(){var t=this.prop.canvas.toDataURL("image/"+this.opt.image.type,this.opt.image.quality);this.prop.img=document.createElement("img"),this.prop.img.src=t})},T.prototype.toPdf=function(){return this.thenList([function(){return this.toContext2d()}]).then(function(){this.prop.pdf=this.prop.pdf||this.opt.jsPDF})},T.prototype.output=function(t,e,n){return"img"===(n=n||"pdf").toLowerCase()||"image"===n.toLowerCase()?this.outputImg(t,e):this.outputPdf(t,e)},T.prototype.outputPdf=function(t,e){return this.thenList([function(){return this.prop.pdf||this.toPdf()}]).then(function(){return this.prop.pdf.output(t,e)})},T.prototype.outputImg=function(t,e){return this.thenList([function(){return this.prop.img||this.toImg()}]).then(function(){switch(t){case void 0:case"img":return this.prop.img;case"datauristring":case"dataurlstring":return this.prop.img.src;case"datauri":case"dataurl":return document.location.href=this.prop.img.src;default:throw'Image output type "'+t+'" is not supported.'}})},T.prototype.isHtml2CanvasLoaded=function(){var t=void 0!==E.html2canvas;return t||console.error("html2canvas not loaded."),t},T.prototype.save=function(t){if(this.isHtml2CanvasLoaded())return this.thenList([function(){return this.prop.pdf||this.toPdf()}]).set(t?{filename:t}:null).then(function(){this.prop.pdf.save(this.opt.filename)})},T.prototype.doCallback=function(t){if(this.isHtml2CanvasLoaded())return this.thenList([function(){return this.prop.pdf||this.toPdf()}]).then(function(){this.prop.callback(this.prop.pdf)})},T.prototype.set=function(t){if("object"!==C(t))return this;var e=Object.keys(t||{}).map(function(e){if(e in T.template.prop)return function(){this.prop[e]=t[e]};switch(e){case"margin":return this.setMargin.bind(this,t.margin);case"jsPDF":return function(){return this.opt.jsPDF=t.jsPDF,this.setPageSize()};case"pageSize":return this.setPageSize.bind(this,t.pageSize);default:return function(){this.opt[e]=t[e]}}},this);return this.then(function(){return this.thenList(e)})},T.prototype.get=function(t,e){return this.then(function(){var n=t in T.template.prop?this.prop[t]:this.opt[t];return e?e(n):n})},T.prototype.setMargin=function(t){return this.then(function(){switch(C(t)){case"number":t=[t,t,t,t];case"array":if(2===t.length&&(t=[t[0],t[1],t[0],t[1]]),4===t.length)break;default:return this.error("Invalid margin array.")}this.opt.margin=t}).then(this.setPageSize)},T.prototype.setPageSize=function(t){function e(t,e){return Math.floor(t*e/72*96)}return this.then(function(){(t=t||ft.getPageSize(this.opt.jsPDF)).hasOwnProperty("inner")||(t.inner={width:t.width-this.opt.margin[1]-this.opt.margin[3],height:t.height-this.opt.margin[0]-this.opt.margin[2]},t.inner.px={width:e(t.inner.width,t.k),height:e(t.inner.height,t.k)},t.inner.ratio=t.inner.height/t.inner.width),this.prop.pageSize=t})},T.prototype.setProgress=function(t,e,n,i){return null!=t&&(this.progress.val=t),null!=e&&(this.progress.state=e),null!=n&&(this.progress.n=n),null!=i&&(this.progress.stack=i),this.progress.ratio=this.progress.val/this.progress.state,this},T.prototype.updateProgress=function(t,e,n,i){return this.setProgress(t?this.progress.val+t:null,e||null,n?this.progress.n+n:null,i?this.progress.stack.concat(i):null)},T.prototype.then=function(t,e){var n=this;return this.thenCore(t,e,function(t,e){return n.updateProgress(null,null,1,[t]),Promise.prototype.then.call(this,function(e){return n.updateProgress(null,t),e}).then(t,e).then(function(t){return n.updateProgress(1),t})})},T.prototype.thenCore=function(t,e,n){n=n||Promise.prototype.then;var i=this;t&&(t=t.bind(i)),e&&(e=e.bind(i));var r=-1!==Promise.toString().indexOf("[native code]")&&"Promise"===Promise.name?i:T.convert(Object.assign({},i),Promise.prototype),o=n.call(r,t,e);return T.convert(o,i.__proto__)},T.prototype.thenExternal=function(t,e){return Promise.prototype.then.call(this,t,e)},T.prototype.thenList=function(t){var e=this;return t.forEach(function(t){e=e.thenCore(t)}),e},T.prototype.catch=function(t){t&&(t=t.bind(this));var e=Promise.prototype.catch.call(this,t);return T.convert(e,this)},T.prototype.catchExternal=function(t){return Promise.prototype.catch.call(this,t)},T.prototype.error=function(t){return this.then(function(){throw new Error(t)})},T.prototype.using=T.prototype.set,T.prototype.saveAs=T.prototype.save,T.prototype.export=T.prototype.output,T.prototype.run=T.prototype.then,ft.getPageSize=function(t,e,n){if("object"===r(t)){var i=t;t=i.orientation,e=i.unit||e,n=i.format||n}e=e||"mm",n=n||"a4",t=(""+(t||"P")).toLowerCase();var o=(""+n).toLowerCase(),a={a0:[2383.94,3370.39],a1:[1683.78,2383.94],a2:[1190.55,1683.78],a3:[841.89,1190.55],a4:[595.28,841.89],a5:[419.53,595.28],a6:[297.64,419.53],a7:[209.76,297.64],a8:[147.4,209.76],a9:[104.88,147.4],a10:[73.7,104.88],b0:[2834.65,4008.19],b1:[2004.09,2834.65],b2:[1417.32,2004.09],b3:[1000.63,1417.32],b4:[708.66,1000.63],b5:[498.9,708.66],b6:[354.33,498.9],b7:[249.45,354.33],b8:[175.75,249.45],b9:[124.72,175.75],b10:[87.87,124.72],c0:[2599.37,3676.54],c1:[1836.85,2599.37],c2:[1298.27,1836.85],c3:[918.43,1298.27],c4:[649.13,918.43],c5:[459.21,649.13],c6:[323.15,459.21],c7:[229.61,323.15],c8:[161.57,229.61],c9:[113.39,161.57],c10:[79.37,113.39],dl:[311.81,623.62],letter:[612,792],"government-letter":[576,756],legal:[612,1008],"junior-legal":[576,360],ledger:[1224,792],tabloid:[792,1224],"credit-card":[153,243]};switch(e){case"pt":var s=1;break;case"mm":s=72/25.4;break;case"cm":s=72/2.54;break;case"in":s=72;break;case"px":s=.75;break;case"pc":case"em":s=12;break;case"ex":s=6;break;default:throw"Invalid unit: "+e}if(a.hasOwnProperty(o))var c=a[o][1]/s,l=a[o][0]/s;else try{c=n[1],l=n[0]}catch(t){throw new Error("Invalid format: "+n)}if("p"===t||"portrait"===t){if(t="p",c<l){var u=l;l=c,c=u}}else{if("l"!==t&&"landscape"!==t)throw"Invalid orientation: "+t;t="l",l<c&&(u=l,l=c,c=u)}return{width:l,height:c,unit:e,k:s}},M.html=function(t,e){(e=e||{}).callback=e.callback||function(){},e.html2canvas=e.html2canvas||{},e.html2canvas.canvas=e.html2canvas.canvas||this.canvas,e.jsPDF=e.jsPDF||this,e.jsPDF;var n=new T(e);return e.worker?n:n.from(t).doCallback()},ft.API.addJS=function(t){return P=t,this.internal.events.subscribe("postPutResources",function(t){O=this.internal.newObject(),this.internal.out("<<"),this.internal.out("/Names [(EmbeddedJS) "+(O+1)+" 0 R]"),this.internal.out(">>"),this.internal.out("endobj"),_=this.internal.newObject(),this.internal.out("<<"),this.internal.out("/S /JavaScript"),this.internal.out("/JS ("+P+")"),this.internal.out(">>"),this.internal.out("endobj")}),this.internal.events.subscribe("putCatalog",function(){void 0!==O&&void 0!==_&&this.internal.out("/Names <</JavaScript "+O+" 0 R>>")}),this
  2474. /**
  2475. * @license
  2476. * Copyright (c) 2014 Steven Spungin (TwelveTone LLC) steven@twelvetone.tv
  2477. *
  2478. * Licensed under the MIT License.
  2479. * http://opensource.org/licenses/mit-license
  2480. */},
  2481. /**
  2482. * @license
  2483. * Copyright (c) 2014 Steven Spungin (TwelveTone LLC) steven@twelvetone.tv
  2484. *
  2485. * Licensed under the MIT License.
  2486. * http://opensource.org/licenses/mit-license
  2487. */
  2488. (I=ft.API).events.push(["postPutResources",function(){var t=this,e=/^(\d+) 0 obj$/;if(0<this.outline.root.children.length)for(var n=t.outline.render().split(/\r\n/),i=0;i<n.length;i++){var r=n[i],o=e.exec(r);if(null!=o){var a=o[1];t.internal.newObjectDeferredBegin(a,!1)}t.internal.write(r)}if(this.outline.createNamedDestinations){var s=this.internal.pages.length,c=[];for(i=0;i<s;i++){var l=t.internal.newObject();c.push(l);var u=t.internal.getPageInfo(i+1);t.internal.write("<< /D["+u.objId+" 0 R /XYZ null null null]>> endobj")}var d=t.internal.newObject();for(t.internal.write("<< /Names [ "),i=0;i<c.length;i++)t.internal.write("(page_"+(i+1)+")"+c[i]+" 0 R");t.internal.write(" ] >>","endobj"),t.internal.newObject(),t.internal.write("<< /Dests "+d+" 0 R"),t.internal.write(">>","endobj")}}]),I.events.push(["putCatalog",function(){0<this.outline.root.children.length&&(this.internal.write("/Outlines",this.outline.makeRef(this.outline.root)),this.outline.createNamedDestinations&&this.internal.write("/Names "+namesOid+" 0 R"))}]),I.events.push(["initialized",function(){var t=this;t.outline={createNamedDestinations:!1,root:{children:[]}},t.outline.add=function(t,e,n){var i={title:e,options:n,children:[]};return null==t&&(t=this.root),t.children.push(i),i},t.outline.render=function(){return this.ctx={},this.ctx.val="",this.ctx.pdf=t,this.genIds_r(this.root),this.renderRoot(this.root),this.renderItems(this.root),this.ctx.val},t.outline.genIds_r=function(e){e.id=t.internal.newObjectDeferred();for(var n=0;n<e.children.length;n++)this.genIds_r(e.children[n])},t.outline.renderRoot=function(t){this.objStart(t),this.line("/Type /Outlines"),0<t.children.length&&(this.line("/First "+this.makeRef(t.children[0])),this.line("/Last "+this.makeRef(t.children[t.children.length-1]))),this.line("/Count "+this.count_r({count:0},t)),this.objEnd()},t.outline.renderItems=function(e){this.ctx.pdf.internal.getCoordinateString;for(var n=this.ctx.pdf.internal.getVerticalCoordinateString,i=0;i<e.children.length;i++){var r=e.children[i];this.objStart(r),this.line("/Title "+this.makeString(r.title)),this.line("/Parent "+this.makeRef(e)),0<i&&this.line("/Prev "+this.makeRef(e.children[i-1])),i<e.children.length-1&&this.line("/Next "+this.makeRef(e.children[i+1])),0<r.children.length&&(this.line("/First "+this.makeRef(r.children[0])),this.line("/Last "+this.makeRef(r.children[r.children.length-1])));var o=this.count=this.count_r({count:0},r);if(0<o&&this.line("/Count "+o),r.options&&r.options.pageNumber){var a=t.internal.getPageInfo(r.options.pageNumber);this.line("/Dest ["+a.objId+" 0 R /XYZ 0 "+n(0)+" 0]")}this.objEnd()}for(i=0;i<e.children.length;i++)r=e.children[i],this.renderItems(r)},t.outline.line=function(t){this.ctx.val+=t+"\r\n"},t.outline.makeRef=function(t){return t.id+" 0 R"},t.outline.makeString=function(e){return"("+t.internal.pdfEscape(e)+")"},t.outline.objStart=function(t){this.ctx.val+="\r\n"+t.id+" 0 obj\r\n<<\r\n"},t.outline.objEnd=function(t){this.ctx.val+=">> \r\nendobj\r\n"},t.outline.count_r=function(t,e){for(var n=0;n<e.children.length;n++)t.count++,this.count_r(t,e.children[n]);return t.count}}]),
  2489. /**
  2490. * @license
  2491. *
  2492. * Copyright (c) 2014 James Robb, https://github.com/jamesbrobb
  2493. *
  2494. *
  2495. * ====================================================================
  2496. */
  2497. k=ft.API,D=function(){var t="function"==typeof Deflater;if(!t)throw new Error("requires deflate.js for compression");return t},R=function(t,e,n,i){var r=5,o=U;switch(i){case k.image_compression.FAST:r=3,o=F;break;case k.image_compression.MEDIUM:r=6,o=B;break;case k.image_compression.SLOW:r=9,o=z}t=j(t,e,n,o);var a=new Uint8Array(L(r)),s=N(t),c=new Deflater(r),l=c.append(t),u=c.flush(),d=a.length+l.length+u.length,p=new Uint8Array(d+4);return p.set(a),p.set(l,a.length),p.set(u,a.length+l.length),p[d++]=s>>>24&255,p[d++]=s>>>16&255,p[d++]=s>>>8&255,p[d++]=255&s,k.arrayBufferToBinaryString(p)},L=function(t,e){var n=Math.LOG2E*Math.log(32768)-8<<4|8,i=n<<8;return i|=Math.min(3,(e-1&255)>>1)<<6,i|=0,[n,255&(i+=31-i%31)]},N=function(t,e){for(var n,i=1,r=0,o=t.length,a=0;0<o;){for(o-=n=e<o?e:o;r+=i+=t[a++],--n;);i%=65521,r%=65521}return(r<<16|i)>>>0},j=function(t,e,n,i){for(var r,o,a,s=t.length/e,c=new Uint8Array(t.length+s),l=H(),u=0;u<s;u++){if(a=u*e,r=t.subarray(a,a+e),i)c.set(i(r,n,o),a+u);else{for(var d=0,p=l.length,h=[];d<p;d++)h[d]=l[d](r,n,o);var f=W(h.concat());c.set(h[f],a+u)}o=r}return c},V=function(t,e,n){var i=Array.apply([],t);return i.unshift(0),i},F=function(t,e,n){var i,r=[],o=0,a=t.length;for(r[0]=1;o<a;o++)i=t[o-e]||0,r[o+1]=t[o]-i+256&255;return r},U=function(t,e,n){var i,r=[],o=0,a=t.length;for(r[0]=2;o<a;o++)i=n&&n[o]||0,r[o+1]=t[o]-i+256&255;return r},B=function(t,e,n){var i,r,o=[],a=0,s=t.length;for(o[0]=3;a<s;a++)i=t[a-e]||0,r=n&&n[a]||0,o[a+1]=t[a]+256-(i+r>>>1)&255;return o},z=function(t,e,n){var i,r,o,a,s=[],c=0,l=t.length;for(s[0]=4;c<l;c++)i=t[c-e]||0,r=n&&n[c]||0,o=n&&n[c-e]||0,a=G(i,r,o),s[c+1]=t[c]-a+256&255;return s},G=function(t,e,n){var i=t+e-n,r=Math.abs(i-t),o=Math.abs(i-e),a=Math.abs(i-n);return r<=o&&r<=a?t:o<=a?e:n},H=function(){return[V,F,U,B,z]},W=function(t){for(var e,n,i,r=0,o=t.length;r<o;)((e=q(t[r].slice(1)))<n||!n)&&(n=e,i=r),r++;return i},q=function(t){for(var e=0,n=t.length,i=0;e<n;)i+=Math.abs(t[e++]);return i},k.processPNG=function(t,e,n,i,r){var o,a,s,c,l,u,d=this.color_spaces.DEVICE_RGB,p=this.decode.FLATE_DECODE,h=8;if(this.isArrayBuffer(t)&&(t=new Uint8Array(t)),this.isArrayBufferView(t)){if("function"!=typeof PNG||"function"!=typeof Nt)throw new Error("PNG support requires png.js and zlib.js");if(t=(o=new PNG(t)).imgData,h=o.bits,d=o.colorSpace,c=o.colors,-1!==[4,6].indexOf(o.colorType)){if(8===o.bits)for(var f,g=(A=32==o.pixelBitlength?new Uint32Array(o.decodePixels().buffer):16==o.pixelBitlength?new Uint16Array(o.decodePixels().buffer):new Uint8Array(o.decodePixels().buffer)).length,m=new Uint8Array(g*o.colors),v=new Uint8Array(g),y=o.pixelBitlength-o.bits,b=0,w=0;b<g;b++){for(S=A[b],f=0;f<y;)m[w++]=S>>>f&255,f+=o.bits;v[b]=S>>>f&255}if(16===o.bits){g=(A=new Uint32Array(o.decodePixels().buffer)).length,m=new Uint8Array(g*(32/o.pixelBitlength)*o.colors),v=new Uint8Array(g*(32/o.pixelBitlength));for(var S,x=1<o.colors,M=w=b=0;b<g;)S=A[b++],m[w++]=S>>>0&255,x&&(m[w++]=S>>>16&255,S=A[b++],m[w++]=S>>>0&255),v[M++]=S>>>16&255;h=8}i!==k.image_compression.NONE&&D()?(t=R(m,o.width*o.colors,o.colors,i),u=R(v,o.width,1,i)):(t=m,u=v,p=null)}if(3===o.colorType&&(d=this.color_spaces.INDEXED,l=o.palette,o.transparency.indexed)){var E=o.transparency.indexed,C=0;for(b=0,g=E.length;b<g;++b)C+=E[b];if((C/=255)==g-1&&-1!==E.indexOf(0))s=[E.indexOf(0)];else if(C!==g){var A=o.decodePixels();for(v=new Uint8Array(A.length),b=0,g=A.length;b<g;b++)v[b]=E[A[b]];u=R(v,o.width,1)}}var T=function(t){var e;switch(i){case k.image_compression.FAST:e=11;break;case k.image_compression.MEDIUM:e=13;break;case k.image_compression.SLOW:e=14;break;default:e=12}return e}();return a=p===this.decode.FLATE_DECODE?"/Predictor "+T+" /Colors "+c+" /BitsPerComponent "+h+" /Columns "+o.width:"/Colors "+c+" /BitsPerComponent "+h+" /Columns "+o.width,(this.isArrayBuffer(t)||this.isArrayBufferView(t))&&(t=this.arrayBufferToBinaryString(t)),(u&&this.isArrayBuffer(u)||this.isArrayBufferView(u))&&(u=this.arrayBufferToBinaryString(u)),this.createImageInfo(t,o.width,o.height,d,h,p,e,n,a,s,l,u,T)}throw new Error("Unsupported PNG image data, try using JPEG instead.")},
  2498. /**
  2499. * @license
  2500. * Copyright (c) 2017 Aras Abbasi
  2501. *
  2502. * Licensed under the MIT License.
  2503. * http://opensource.org/licenses/mit-license
  2504. */
  2505. (K=ft.API).processGIF89A=function(t,e,n,i,r){var o=new It(t),a=o.width,s=o.height,c=[];o.decodeAndBlitFrameRGBA(0,c);var l={data:c,width:a,height:s},u=new Dt(100).encode(l,100);return K.processJPEG.call(this,u,e,n,i)},K.processGIF87A=K.processGIF89A,(X=ft.API).processBMP=function(t,e,n,i,r){var o=new Rt(t,!1),a=o.width,s=o.height,c={data:o.getData(),width:a,height:s},l=new Dt(100).encode(c,100);return X.processJPEG.call(this,l,e,n,i)},ft.API.setLanguage=function(t){return void 0===this.internal.languageSettings&&(this.internal.languageSettings={},this.internal.languageSettings.isSubscribed=!1),void 0!=={af:"Afrikaans",sq:"Albanian",ar:"Arabic (Standard)","ar-DZ":"Arabic (Algeria)","ar-BH":"Arabic (Bahrain)","ar-EG":"Arabic (Egypt)","ar-IQ":"Arabic (Iraq)","ar-JO":"Arabic (Jordan)","ar-KW":"Arabic (Kuwait)","ar-LB":"Arabic (Lebanon)","ar-LY":"Arabic (Libya)","ar-MA":"Arabic (Morocco)","ar-OM":"Arabic (Oman)","ar-QA":"Arabic (Qatar)","ar-SA":"Arabic (Saudi Arabia)","ar-SY":"Arabic (Syria)","ar-TN":"Arabic (Tunisia)","ar-AE":"Arabic (U.A.E.)","ar-YE":"Arabic (Yemen)",an:"Aragonese",hy:"Armenian",as:"Assamese",ast:"Asturian",az:"Azerbaijani",eu:"Basque",be:"Belarusian",bn:"Bengali",bs:"Bosnian",br:"Breton",bg:"Bulgarian",my:"Burmese",ca:"Catalan",ch:"Chamorro",ce:"Chechen",zh:"Chinese","zh-HK":"Chinese (Hong Kong)","zh-CN":"Chinese (PRC)","zh-SG":"Chinese (Singapore)","zh-TW":"Chinese (Taiwan)",cv:"Chuvash",co:"Corsican",cr:"Cree",hr:"Croatian",cs:"Czech",da:"Danish",nl:"Dutch (Standard)","nl-BE":"Dutch (Belgian)",en:"English","en-AU":"English (Australia)","en-BZ":"English (Belize)","en-CA":"English (Canada)","en-IE":"English (Ireland)","en-JM":"English (Jamaica)","en-NZ":"English (New Zealand)","en-PH":"English (Philippines)","en-ZA":"English (South Africa)","en-TT":"English (Trinidad & Tobago)","en-GB":"English (United Kingdom)","en-US":"English (United States)","en-ZW":"English (Zimbabwe)",eo:"Esperanto",et:"Estonian",fo:"Faeroese",fj:"Fijian",fi:"Finnish",fr:"French (Standard)","fr-BE":"French (Belgium)","fr-CA":"French (Canada)","fr-FR":"French (France)","fr-LU":"French (Luxembourg)","fr-MC":"French (Monaco)","fr-CH":"French (Switzerland)",fy:"Frisian",fur:"Friulian",gd:"Gaelic (Scots)","gd-IE":"Gaelic (Irish)",gl:"Galacian",ka:"Georgian",de:"German (Standard)","de-AT":"German (Austria)","de-DE":"German (Germany)","de-LI":"German (Liechtenstein)","de-LU":"German (Luxembourg)","de-CH":"German (Switzerland)",el:"Greek",gu:"Gujurati",ht:"Haitian",he:"Hebrew",hi:"Hindi",hu:"Hungarian",is:"Icelandic",id:"Indonesian",iu:"Inuktitut",ga:"Irish",it:"Italian (Standard)","it-CH":"Italian (Switzerland)",ja:"Japanese",kn:"Kannada",ks:"Kashmiri",kk:"Kazakh",km:"Khmer",ky:"Kirghiz",tlh:"Klingon",ko:"Korean","ko-KP":"Korean (North Korea)","ko-KR":"Korean (South Korea)",la:"Latin",lv:"Latvian",lt:"Lithuanian",lb:"Luxembourgish",mk:"FYRO Macedonian",ms:"Malay",ml:"Malayalam",mt:"Maltese",mi:"Maori",mr:"Marathi",mo:"Moldavian",nv:"Navajo",ng:"Ndonga",ne:"Nepali",no:"Norwegian",nb:"Norwegian (Bokmal)",nn:"Norwegian (Nynorsk)",oc:"Occitan",or:"Oriya",om:"Oromo",fa:"Persian","fa-IR":"Persian/Iran",pl:"Polish",pt:"Portuguese","pt-BR":"Portuguese (Brazil)",pa:"Punjabi","pa-IN":"Punjabi (India)","pa-PK":"Punjabi (Pakistan)",qu:"Quechua",rm:"Rhaeto-Romanic",ro:"Romanian","ro-MO":"Romanian (Moldavia)",ru:"Russian","ru-MO":"Russian (Moldavia)",sz:"Sami (Lappish)",sg:"Sango",sa:"Sanskrit",sc:"Sardinian",sd:"Sindhi",si:"Singhalese",sr:"Serbian",sk:"Slovak",sl:"Slovenian",so:"Somani",sb:"Sorbian",es:"Spanish","es-AR":"Spanish (Argentina)","es-BO":"Spanish (Bolivia)","es-CL":"Spanish (Chile)","es-CO":"Spanish (Colombia)","es-CR":"Spanish (Costa Rica)","es-DO":"Spanish (Dominican Republic)","es-EC":"Spanish (Ecuador)","es-SV":"Spanish (El Salvador)","es-GT":"Spanish (Guatemala)","es-HN":"Spanish (Honduras)","es-MX":"Spanish (Mexico)","es-NI":"Spanish (Nicaragua)","es-PA":"Spanish (Panama)","es-PY":"Spanish (Paraguay)","es-PE":"Spanish (Peru)","es-PR":"Spanish (Puerto Rico)","es-ES":"Spanish (Spain)","es-UY":"Spanish (Uruguay)","es-VE":"Spanish (Venezuela)",sx:"Sutu",sw:"Swahili",sv:"Swedish","sv-FI":"Swedish (Finland)","sv-SV":"Swedish (Sweden)",ta:"Tamil",tt:"Tatar",te:"Teluga",th:"Thai",tig:"Tigre",ts:"Tsonga",tn:"Tswana",tr:"Turkish",tk:"Turkmen",uk:"Ukrainian",hsb:"Upper Sorbian",ur:"Urdu",ve:"Venda",vi:"Vietnamese",vo:"Volapuk",wa:"Walloon",cy:"Welsh",xh:"Xhosa",ji:"Yiddish",zu:"Zulu"}[t]&&(this.internal.languageSettings.languageCode=t,!1===this.internal.languageSettings.isSubscribed&&(this.internal.events.subscribe("putCatalog",function(){this.internal.write("/Lang ("+this.internal.languageSettings.languageCode+")")}),this.internal.languageSettings.isSubscribed=!0)),this
  2506. /** @license
  2507. * MIT license.
  2508. * Copyright (c) 2012 Willow Systems Corporation, willow-systems.com
  2509. * 2014 Diego Casorran, https://github.com/diegocr
  2510. *
  2511. *
  2512. * ====================================================================
  2513. */},Y=ft.API,Z=Y.getCharWidthsArray=function(t,e){var n,i,r,o=(e=e||{}).font||this.internal.getFont(),a=e.fontSize||this.internal.getFontSize(),s=e.charSpace||this.internal.getCharSpace(),c=e.widths?e.widths:o.metadata.Unicode.widths,l=c.fof?c.fof:1,u=e.kerning?e.kerning:o.metadata.Unicode.kerning,d=u.fof?u.fof:1,p=0,h=c[0]||l,f=[];for(n=0,i=t.length;n<i;n++)r=t.charCodeAt(n),"function"==typeof o.metadata.widthOfString?f.push((o.metadata.widthOfGlyph(o.metadata.characterToGlyph(r))+s*(1e3/a)||0)/1e3):f.push((c[r]||h)/l+(u[r]&&u[r][p]||0)/d),p=r;return f},J=Y.getArraySum=function(t){for(var e=t.length,n=0;e;)n+=t[--e];return n},Q=Y.getStringUnitWidth=function(t,e){var n=(e=e||{}).fontSize||this.internal.getFontSize(),i=e.font||this.internal.getFont(),r=e.charSpace||this.internal.getCharSpace();return"function"==typeof i.metadata.widthOfString?i.metadata.widthOfString(t,n,r)/n:J(Z.apply(this,arguments))},$=function(t,e,n,i){for(var r=[],o=0,a=t.length,s=0;o!==a&&s+e[o]<n;)s+=e[o],o++;r.push(t.slice(0,o));var c=o;for(s=0;o!==a;)s+e[o]>i&&(r.push(t.slice(c,o)),s=0,c=o),s+=e[o],o++;return c!==o&&r.push(t.slice(c,o)),r},tt=function(t,e,n){n||(n={});var i,r,o,a,s,c,l=[],u=[l],d=n.textIndent||0,p=0,h=0,f=t.split(" "),g=Z.apply(this,[" ",n])[0];if(c=-1===n.lineIndent?f[0].length+2:n.lineIndent||0){var m=Array(c).join(" "),v=[];f.map(function(t){1<(t=t.split(/\s*\n/)).length?v=v.concat(t.map(function(t,e){return(e&&t.length?"\n":"")+t})):v.push(t[0])}),f=v,c=Q.apply(this,[m,n])}for(o=0,a=f.length;o<a;o++){var y=0;if(i=f[o],c&&"\n"==i[0]&&(i=i.substr(1),y=1),r=Z.apply(this,[i,n]),e<d+p+(h=J(r))||y){if(e<h){for(s=$.apply(this,[i,r,e-(d+p),e]),l.push(s.shift()),l=[s.pop()];s.length;)u.push([s.shift()]);h=J(r.slice(i.length-(l[0]?l[0].length:0)))}else l=[i];u.push(l),d=h+c,p=g}else l.push(i),d+=p+h,p=g}if(c)var b=function(t,e){return(e?m:"")+t.join(" ")};else b=function(t){return t.join(" ")};return u.map(b)},Y.splitTextToSize=function(t,e,n){var i,r=(n=n||{}).fontSize||this.internal.getFontSize(),o=function(t){if(t.widths&&t.kerning)return{widths:t.widths,kerning:t.kerning};var e=this.internal.getFont(t.fontName,t.fontStyle),n="Unicode";return e.metadata[n]?{widths:e.metadata[n].widths||{0:1},kerning:e.metadata[n].kerning||{}}:{font:e.metadata,fontSize:this.internal.getFontSize(),charSpace:this.internal.getCharSpace()}}.call(this,n);i=Array.isArray(t)?t:t.split(/\r?\n/);var a=1*this.internal.scaleFactor*e/r;o.textIndent=n.textIndent?1*n.textIndent*this.internal.scaleFactor/r:0,o.lineIndent=n.lineIndent;var s,c,l=[];for(s=0,c=i.length;s<c;s++)l=l.concat(tt.apply(this,[i[s],a,o]));return l},
  2514. /** @license
  2515. jsPDF standard_fonts_metrics plugin
  2516. * Copyright (c) 2012 Willow Systems Corporation, willow-systems.com
  2517. * MIT license.
  2518. *
  2519. * ====================================================================
  2520. */
  2521. et=ft.API,it={codePages:["WinAnsiEncoding"],WinAnsiEncoding:(nt=function(t){for(var e="klmnopqrstuvwxyz",n={},i=0;i<e.length;i++)n[e[i]]="0123456789abcdef"[i];var r,o,a,s,c,l={},u=1,d=l,p=[],h="",f="",g=t.length-1;for(i=1;i!=g;)c=t[i],i+=1,"'"==c?o=o?(s=o.join(""),r):[]:o?o.push(c):"{"==c?(p.push([d,s]),d={},s=r):"}"==c?((a=p.pop())[0][a[1]]=d,s=r,d=a[0]):"-"==c?u=-1:s===r?n.hasOwnProperty(c)?(h+=n[c],s=parseInt(h,16)*u,u=1,h=""):h+=c:n.hasOwnProperty(c)?(f+=n[c],d[s]=parseInt(f,16)*u,u=1,s=r,f=""):f+=c;return l})("{19m8n201n9q201o9r201s9l201t9m201u8m201w9n201x9o201y8o202k8q202l8r202m9p202q8p20aw8k203k8t203t8v203u9v2cq8s212m9t15m8w15n9w2dw9s16k8u16l9u17s9z17x8y17y9y}")},rt={Unicode:{Courier:it,"Courier-Bold":it,"Courier-BoldOblique":it,"Courier-Oblique":it,Helvetica:it,"Helvetica-Bold":it,"Helvetica-BoldOblique":it,"Helvetica-Oblique":it,"Times-Roman":it,"Times-Bold":it,"Times-BoldItalic":it,"Times-Italic":it}},ot={Unicode:{"Courier-Oblique":nt("{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}"),"Times-BoldItalic":nt("{'widths'{k3o2q4ycx2r201n3m201o6o201s2l201t2l201u2l201w3m201x3m201y3m2k1t2l2r202m2n2n3m2o3m2p5n202q6o2r1w2s2l2t2l2u3m2v3t2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v2l3w3t3x3t3y3t3z3m4k5n4l4m4m4m4n4m4o4s4p4m4q4m4r4s4s4y4t2r4u3m4v4m4w3x4x5t4y4s4z4s5k3x5l4s5m4m5n3r5o3x5p4s5q4m5r5t5s4m5t3x5u3x5v2l5w1w5x2l5y3t5z3m6k2l6l3m6m3m6n2w6o3m6p2w6q2l6r3m6s3r6t1w6u1w6v3m6w1w6x4y6y3r6z3m7k3m7l3m7m2r7n2r7o1w7p3r7q2w7r4m7s3m7t2w7u2r7v2n7w1q7x2n7y3t202l3mcl4mal2ram3man3mao3map3mar3mas2lat4uau1uav3maw3way4uaz2lbk2sbl3t'fof'6obo2lbp3tbq3mbr1tbs2lbu1ybv3mbz3mck4m202k3mcm4mcn4mco4mcp4mcq5ycr4mcs4mct4mcu4mcv4mcw2r2m3rcy2rcz2rdl4sdm4sdn4sdo4sdp4sdq4sds4sdt4sdu4sdv4sdw4sdz3mek3mel3mem3men3meo3mep3meq4ser2wes2wet2weu2wev2wew1wex1wey1wez1wfl3rfm3mfn3mfo3mfp3mfq3mfr3tfs3mft3rfu3rfv3rfw3rfz2w203k6o212m6o2dw2l2cq2l3t3m3u2l17s3x19m3m}'kerning'{cl{4qu5kt5qt5rs17ss5ts}201s{201ss}201t{cks4lscmscnscoscpscls2wu2yu201ts}201x{2wu2yu}2k{201ts}2w{4qx5kx5ou5qx5rs17su5tu}2x{17su5tu5ou}2y{4qx5kx5ou5qx5rs17ss5ts}'fof'-6ofn{17sw5tw5ou5qw5rs}7t{cksclscmscnscoscps4ls}3u{17su5tu5os5qs}3v{17su5tu5os5qs}7p{17su5tu}ck{4qu5kt5qt5rs17ss5ts}4l{4qu5kt5qt5rs17ss5ts}cm{4qu5kt5qt5rs17ss5ts}cn{4qu5kt5qt5rs17ss5ts}co{4qu5kt5qt5rs17ss5ts}cp{4qu5kt5qt5rs17ss5ts}6l{4qu5ou5qw5rt17su5tu}5q{ckuclucmucnucoucpu4lu}5r{ckuclucmucnucoucpu4lu}7q{cksclscmscnscoscps4ls}6p{4qu5ou5qw5rt17sw5tw}ek{4qu5ou5qw5rt17su5tu}el{4qu5ou5qw5rt17su5tu}em{4qu5ou5qw5rt17su5tu}en{4qu5ou5qw5rt17su5tu}eo{4qu5ou5qw5rt17su5tu}ep{4qu5ou5qw5rt17su5tu}es{17ss5ts5qs4qu}et{4qu5ou5qw5rt17sw5tw}eu{4qu5ou5qw5rt17ss5ts}ev{17ss5ts5qs4qu}6z{17sw5tw5ou5qw5rs}fm{17sw5tw5ou5qw5rs}7n{201ts}fo{17sw5tw5ou5qw5rs}fp{17sw5tw5ou5qw5rs}fq{17sw5tw5ou5qw5rs}7r{cksclscmscnscoscps4ls}fs{17sw5tw5ou5qw5rs}ft{17su5tu}fu{17su5tu}fv{17su5tu}fw{17su5tu}fz{cksclscmscnscoscps4ls}}}"),"Helvetica-Bold":nt("{'widths'{k3s2q4scx1w201n3r201o6o201s1w201t1w201u1w201w3m201x3m201y3m2k1w2l2l202m2n2n3r2o3r2p5t202q6o2r1s2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v2l3w3u3x3u3y3u3z3x4k6l4l4s4m4s4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3r4v4s4w3x4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v2l5w1w5x2l5y3u5z3r6k2l6l3r6m3x6n3r6o3x6p3r6q2l6r3x6s3x6t1w6u1w6v3r6w1w6x5t6y3x6z3x7k3x7l3x7m2r7n3r7o2l7p3x7q3r7r4y7s3r7t3r7u3m7v2r7w1w7x2r7y3u202l3rcl4sal2lam3ran3rao3rap3rar3ras2lat4tau2pav3raw3uay4taz2lbk2sbl3u'fof'6obo2lbp3xbq3rbr1wbs2lbu2obv3rbz3xck4s202k3rcm4scn4sco4scp4scq6ocr4scs4mct4mcu4mcv4mcw1w2m2zcy1wcz1wdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3xek3rel3rem3ren3reo3rep3req5ter3res3ret3reu3rev3rew1wex1wey1wez1wfl3xfm3xfn3xfo3xfp3xfq3xfr3ufs3xft3xfu3xfv3xfw3xfz3r203k6o212m6o2dw2l2cq2l3t3r3u2l17s4m19m3r}'kerning'{cl{4qs5ku5ot5qs17sv5tv}201t{2ww4wy2yw}201w{2ks}201x{2ww4wy2yw}2k{201ts201xs}2w{7qs4qu5kw5os5qw5rs17su5tu7tsfzs}2x{5ow5qs}2y{7qs4qu5kw5os5qw5rs17su5tu7tsfzs}'fof'-6o7p{17su5tu5ot}ck{4qs5ku5ot5qs17sv5tv}4l{4qs5ku5ot5qs17sv5tv}cm{4qs5ku5ot5qs17sv5tv}cn{4qs5ku5ot5qs17sv5tv}co{4qs5ku5ot5qs17sv5tv}cp{4qs5ku5ot5qs17sv5tv}6l{17st5tt5os}17s{2kwclvcmvcnvcovcpv4lv4wwckv}5o{2kucltcmtcntcotcpt4lt4wtckt}5q{2ksclscmscnscoscps4ls4wvcks}5r{2ks4ws}5t{2kwclvcmvcnvcovcpv4lv4wwckv}eo{17st5tt5os}fu{17su5tu5ot}6p{17ss5ts}ek{17st5tt5os}el{17st5tt5os}em{17st5tt5os}en{17st5tt5os}6o{201ts}ep{17st5tt5os}es{17ss5ts}et{17ss5ts}eu{17ss5ts}ev{17ss5ts}6z{17su5tu5os5qt}fm{17su5tu5os5qt}fn{17su5tu5os5qt}fo{17su5tu5os5qt}fp{17su5tu5os5qt}fq{17su5tu5os5qt}fs{17su5tu5os5qt}ft{17su5tu5ot}7m{5os}fv{17su5tu5ot}fw{17su5tu5ot}}}"),Courier:nt("{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}"),"Courier-BoldOblique":nt("{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}"),"Times-Bold":nt("{'widths'{k3q2q5ncx2r201n3m201o6o201s2l201t2l201u2l201w3m201x3m201y3m2k1t2l2l202m2n2n3m2o3m2p6o202q6o2r1w2s2l2t2l2u3m2v3t2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v2l3w3t3x3t3y3t3z3m4k5x4l4s4m4m4n4s4o4s4p4m4q3x4r4y4s4y4t2r4u3m4v4y4w4m4x5y4y4s4z4y5k3x5l4y5m4s5n3r5o4m5p4s5q4s5r6o5s4s5t4s5u4m5v2l5w1w5x2l5y3u5z3m6k2l6l3m6m3r6n2w6o3r6p2w6q2l6r3m6s3r6t1w6u2l6v3r6w1w6x5n6y3r6z3m7k3r7l3r7m2w7n2r7o2l7p3r7q3m7r4s7s3m7t3m7u2w7v2r7w1q7x2r7y3o202l3mcl4sal2lam3man3mao3map3mar3mas2lat4uau1yav3maw3tay4uaz2lbk2sbl3t'fof'6obo2lbp3rbr1tbs2lbu2lbv3mbz3mck4s202k3mcm4scn4sco4scp4scq6ocr4scs4mct4mcu4mcv4mcw2r2m3rcy2rcz2rdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3rek3mel3mem3men3meo3mep3meq4ser2wes2wet2weu2wev2wew1wex1wey1wez1wfl3rfm3mfn3mfo3mfp3mfq3mfr3tfs3mft3rfu3rfv3rfw3rfz3m203k6o212m6o2dw2l2cq2l3t3m3u2l17s4s19m3m}'kerning'{cl{4qt5ks5ot5qy5rw17sv5tv}201t{cks4lscmscnscoscpscls4wv}2k{201ts}2w{4qu5ku7mu5os5qx5ru17su5tu}2x{17su5tu5ou5qs}2y{4qv5kv7mu5ot5qz5ru17su5tu}'fof'-6o7t{cksclscmscnscoscps4ls}3u{17su5tu5os5qu}3v{17su5tu5os5qu}fu{17su5tu5ou5qu}7p{17su5tu5ou5qu}ck{4qt5ks5ot5qy5rw17sv5tv}4l{4qt5ks5ot5qy5rw17sv5tv}cm{4qt5ks5ot5qy5rw17sv5tv}cn{4qt5ks5ot5qy5rw17sv5tv}co{4qt5ks5ot5qy5rw17sv5tv}cp{4qt5ks5ot5qy5rw17sv5tv}6l{17st5tt5ou5qu}17s{ckuclucmucnucoucpu4lu4wu}5o{ckuclucmucnucoucpu4lu4wu}5q{ckzclzcmzcnzcozcpz4lz4wu}5r{ckxclxcmxcnxcoxcpx4lx4wu}5t{ckuclucmucnucoucpu4lu4wu}7q{ckuclucmucnucoucpu4lu}6p{17sw5tw5ou5qu}ek{17st5tt5qu}el{17st5tt5ou5qu}em{17st5tt5qu}en{17st5tt5qu}eo{17st5tt5qu}ep{17st5tt5ou5qu}es{17ss5ts5qu}et{17sw5tw5ou5qu}eu{17sw5tw5ou5qu}ev{17ss5ts5qu}6z{17sw5tw5ou5qu5rs}fm{17sw5tw5ou5qu5rs}fn{17sw5tw5ou5qu5rs}fo{17sw5tw5ou5qu5rs}fp{17sw5tw5ou5qu5rs}fq{17sw5tw5ou5qu5rs}7r{cktcltcmtcntcotcpt4lt5os}fs{17sw5tw5ou5qu5rs}ft{17su5tu5ou5qu}7m{5os}fv{17su5tu5ou5qu}fw{17su5tu5ou5qu}fz{cksclscmscnscoscps4ls}}}"),Symbol:nt("{'widths'{k3uaw4r19m3m2k1t2l2l202m2y2n3m2p5n202q6o3k3m2s2l2t2l2v3r2w1t3m3m2y1t2z1wbk2sbl3r'fof'6o3n3m3o3m3p3m3q3m3r3m3s3m3t3m3u1w3v1w3w3r3x3r3y3r3z2wbp3t3l3m5v2l5x2l5z3m2q4yfr3r7v3k7w1o7x3k}'kerning'{'fof'-6o}}"),Helvetica:nt("{'widths'{k3p2q4mcx1w201n3r201o6o201s1q201t1q201u1q201w2l201x2l201y2l2k1w2l1w202m2n2n3r2o3r2p5t202q6o2r1n2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v1w3w3u3x3u3y3u3z3r4k6p4l4m4m4m4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3m4v4m4w3r4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v1w5w1w5x1w5y2z5z3r6k2l6l3r6m3r6n3m6o3r6p3r6q1w6r3r6s3r6t1q6u1q6v3m6w1q6x5n6y3r6z3r7k3r7l3r7m2l7n3m7o1w7p3r7q3m7r4s7s3m7t3m7u3m7v2l7w1u7x2l7y3u202l3rcl4mal2lam3ran3rao3rap3rar3ras2lat4tau2pav3raw3uay4taz2lbk2sbl3u'fof'6obo2lbp3rbr1wbs2lbu2obv3rbz3xck4m202k3rcm4mcn4mco4mcp4mcq6ocr4scs4mct4mcu4mcv4mcw1w2m2ncy1wcz1wdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3xek3rel3rem3ren3reo3rep3req5ter3mes3ret3reu3rev3rew1wex1wey1wez1wfl3rfm3rfn3rfo3rfp3rfq3rfr3ufs3xft3rfu3rfv3rfw3rfz3m203k6o212m6o2dw2l2cq2l3t3r3u1w17s4m19m3r}'kerning'{5q{4wv}cl{4qs5kw5ow5qs17sv5tv}201t{2wu4w1k2yu}201x{2wu4wy2yu}17s{2ktclucmucnu4otcpu4lu4wycoucku}2w{7qs4qz5k1m17sy5ow5qx5rsfsu5ty7tufzu}2x{17sy5ty5oy5qs}2y{7qs4qz5k1m17sy5ow5qx5rsfsu5ty7tufzu}'fof'-6o7p{17sv5tv5ow}ck{4qs5kw5ow5qs17sv5tv}4l{4qs5kw5ow5qs17sv5tv}cm{4qs5kw5ow5qs17sv5tv}cn{4qs5kw5ow5qs17sv5tv}co{4qs5kw5ow5qs17sv5tv}cp{4qs5kw5ow5qs17sv5tv}6l{17sy5ty5ow}do{17st5tt}4z{17st5tt}7s{fst}dm{17st5tt}dn{17st5tt}5o{ckwclwcmwcnwcowcpw4lw4wv}dp{17st5tt}dq{17st5tt}7t{5ow}ds{17st5tt}5t{2ktclucmucnu4otcpu4lu4wycoucku}fu{17sv5tv5ow}6p{17sy5ty5ow5qs}ek{17sy5ty5ow}el{17sy5ty5ow}em{17sy5ty5ow}en{5ty}eo{17sy5ty5ow}ep{17sy5ty5ow}es{17sy5ty5qs}et{17sy5ty5ow5qs}eu{17sy5ty5ow5qs}ev{17sy5ty5ow5qs}6z{17sy5ty5ow5qs}fm{17sy5ty5ow5qs}fn{17sy5ty5ow5qs}fo{17sy5ty5ow5qs}fp{17sy5ty5qs}fq{17sy5ty5ow5qs}7r{5ow}fs{17sy5ty5ow5qs}ft{17sv5tv5ow}7m{5ow}fv{17sv5tv5ow}fw{17sv5tv5ow}}}"),"Helvetica-BoldOblique":nt("{'widths'{k3s2q4scx1w201n3r201o6o201s1w201t1w201u1w201w3m201x3m201y3m2k1w2l2l202m2n2n3r2o3r2p5t202q6o2r1s2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v2l3w3u3x3u3y3u3z3x4k6l4l4s4m4s4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3r4v4s4w3x4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v2l5w1w5x2l5y3u5z3r6k2l6l3r6m3x6n3r6o3x6p3r6q2l6r3x6s3x6t1w6u1w6v3r6w1w6x5t6y3x6z3x7k3x7l3x7m2r7n3r7o2l7p3x7q3r7r4y7s3r7t3r7u3m7v2r7w1w7x2r7y3u202l3rcl4sal2lam3ran3rao3rap3rar3ras2lat4tau2pav3raw3uay4taz2lbk2sbl3u'fof'6obo2lbp3xbq3rbr1wbs2lbu2obv3rbz3xck4s202k3rcm4scn4sco4scp4scq6ocr4scs4mct4mcu4mcv4mcw1w2m2zcy1wcz1wdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3xek3rel3rem3ren3reo3rep3req5ter3res3ret3reu3rev3rew1wex1wey1wez1wfl3xfm3xfn3xfo3xfp3xfq3xfr3ufs3xft3xfu3xfv3xfw3xfz3r203k6o212m6o2dw2l2cq2l3t3r3u2l17s4m19m3r}'kerning'{cl{4qs5ku5ot5qs17sv5tv}201t{2ww4wy2yw}201w{2ks}201x{2ww4wy2yw}2k{201ts201xs}2w{7qs4qu5kw5os5qw5rs17su5tu7tsfzs}2x{5ow5qs}2y{7qs4qu5kw5os5qw5rs17su5tu7tsfzs}'fof'-6o7p{17su5tu5ot}ck{4qs5ku5ot5qs17sv5tv}4l{4qs5ku5ot5qs17sv5tv}cm{4qs5ku5ot5qs17sv5tv}cn{4qs5ku5ot5qs17sv5tv}co{4qs5ku5ot5qs17sv5tv}cp{4qs5ku5ot5qs17sv5tv}6l{17st5tt5os}17s{2kwclvcmvcnvcovcpv4lv4wwckv}5o{2kucltcmtcntcotcpt4lt4wtckt}5q{2ksclscmscnscoscps4ls4wvcks}5r{2ks4ws}5t{2kwclvcmvcnvcovcpv4lv4wwckv}eo{17st5tt5os}fu{17su5tu5ot}6p{17ss5ts}ek{17st5tt5os}el{17st5tt5os}em{17st5tt5os}en{17st5tt5os}6o{201ts}ep{17st5tt5os}es{17ss5ts}et{17ss5ts}eu{17ss5ts}ev{17ss5ts}6z{17su5tu5os5qt}fm{17su5tu5os5qt}fn{17su5tu5os5qt}fo{17su5tu5os5qt}fp{17su5tu5os5qt}fq{17su5tu5os5qt}fs{17su5tu5os5qt}ft{17su5tu5ot}7m{5os}fv{17su5tu5ot}fw{17su5tu5ot}}}"),ZapfDingbats:nt("{'widths'{k4u2k1w'fof'6o}'kerning'{'fof'-6o}}"),"Courier-Bold":nt("{'widths'{k3w'fof'6o}'kerning'{'fof'-6o}}"),"Times-Italic":nt("{'widths'{k3n2q4ycx2l201n3m201o5t201s2l201t2l201u2l201w3r201x3r201y3r2k1t2l2l202m2n2n3m2o3m2p5n202q5t2r1p2s2l2t2l2u3m2v4n2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v2l3w4n3x4n3y4n3z3m4k5w4l3x4m3x4n4m4o4s4p3x4q3x4r4s4s4s4t2l4u2w4v4m4w3r4x5n4y4m4z4s5k3x5l4s5m3x5n3m5o3r5p4s5q3x5r5n5s3x5t3r5u3r5v2r5w1w5x2r5y2u5z3m6k2l6l3m6m3m6n2w6o3m6p2w6q1w6r3m6s3m6t1w6u1w6v2w6w1w6x4s6y3m6z3m7k3m7l3m7m2r7n2r7o1w7p3m7q2w7r4m7s2w7t2w7u2r7v2s7w1v7x2s7y3q202l3mcl3xal2ram3man3mao3map3mar3mas2lat4wau1vav3maw4nay4waz2lbk2sbl4n'fof'6obo2lbp3mbq3obr1tbs2lbu1zbv3mbz3mck3x202k3mcm3xcn3xco3xcp3xcq5tcr4mcs3xct3xcu3xcv3xcw2l2m2ucy2lcz2ldl4mdm4sdn4sdo4sdp4sdq4sds4sdt4sdu4sdv4sdw4sdz3mek3mel3mem3men3meo3mep3meq4mer2wes2wet2weu2wev2wew1wex1wey1wez1wfl3mfm3mfn3mfo3mfp3mfq3mfr4nfs3mft3mfu3mfv3mfw3mfz2w203k6o212m6m2dw2l2cq2l3t3m3u2l17s3r19m3m}'kerning'{cl{5kt4qw}201s{201sw}201t{201tw2wy2yy6q-t}201x{2wy2yy}2k{201tw}2w{7qs4qy7rs5ky7mw5os5qx5ru17su5tu}2x{17ss5ts5os}2y{7qs4qy7rs5ky7mw5os5qx5ru17su5tu}'fof'-6o6t{17ss5ts5qs}7t{5os}3v{5qs}7p{17su5tu5qs}ck{5kt4qw}4l{5kt4qw}cm{5kt4qw}cn{5kt4qw}co{5kt4qw}cp{5kt4qw}6l{4qs5ks5ou5qw5ru17su5tu}17s{2ks}5q{ckvclvcmvcnvcovcpv4lv}5r{ckuclucmucnucoucpu4lu}5t{2ks}6p{4qs5ks5ou5qw5ru17su5tu}ek{4qs5ks5ou5qw5ru17su5tu}el{4qs5ks5ou5qw5ru17su5tu}em{4qs5ks5ou5qw5ru17su5tu}en{4qs5ks5ou5qw5ru17su5tu}eo{4qs5ks5ou5qw5ru17su5tu}ep{4qs5ks5ou5qw5ru17su5tu}es{5ks5qs4qs}et{4qs5ks5ou5qw5ru17su5tu}eu{4qs5ks5qw5ru17su5tu}ev{5ks5qs4qs}ex{17ss5ts5qs}6z{4qv5ks5ou5qw5ru17su5tu}fm{4qv5ks5ou5qw5ru17su5tu}fn{4qv5ks5ou5qw5ru17su5tu}fo{4qv5ks5ou5qw5ru17su5tu}fp{4qv5ks5ou5qw5ru17su5tu}fq{4qv5ks5ou5qw5ru17su5tu}7r{5os}fs{4qv5ks5ou5qw5ru17su5tu}ft{17su5tu5qs}fu{17su5tu5qs}fv{17su5tu5qs}fw{17su5tu5qs}}}"),"Times-Roman":nt("{'widths'{k3n2q4ycx2l201n3m201o6o201s2l201t2l201u2l201w2w201x2w201y2w2k1t2l2l202m2n2n3m2o3m2p5n202q6o2r1m2s2l2t2l2u3m2v3s2w1t2x2l2y1t2z1w3k3m3l3m3m3m3n3m3o3m3p3m3q3m3r3m3s3m203t2l203u2l3v1w3w3s3x3s3y3s3z2w4k5w4l4s4m4m4n4m4o4s4p3x4q3r4r4s4s4s4t2l4u2r4v4s4w3x4x5t4y4s4z4s5k3r5l4s5m4m5n3r5o3x5p4s5q4s5r5y5s4s5t4s5u3x5v2l5w1w5x2l5y2z5z3m6k2l6l2w6m3m6n2w6o3m6p2w6q2l6r3m6s3m6t1w6u1w6v3m6w1w6x4y6y3m6z3m7k3m7l3m7m2l7n2r7o1w7p3m7q3m7r4s7s3m7t3m7u2w7v3k7w1o7x3k7y3q202l3mcl4sal2lam3man3mao3map3mar3mas2lat4wau1vav3maw3say4waz2lbk2sbl3s'fof'6obo2lbp3mbq2xbr1tbs2lbu1zbv3mbz2wck4s202k3mcm4scn4sco4scp4scq5tcr4mcs3xct3xcu3xcv3xcw2l2m2tcy2lcz2ldl4sdm4sdn4sdo4sdp4sdq4sds4sdt4sdu4sdv4sdw4sdz3mek2wel2wem2wen2weo2wep2weq4mer2wes2wet2weu2wev2wew1wex1wey1wez1wfl3mfm3mfn3mfo3mfp3mfq3mfr3sfs3mft3mfu3mfv3mfw3mfz3m203k6o212m6m2dw2l2cq2l3t3m3u1w17s4s19m3m}'kerning'{cl{4qs5ku17sw5ou5qy5rw201ss5tw201ws}201s{201ss}201t{ckw4lwcmwcnwcowcpwclw4wu201ts}2k{201ts}2w{4qs5kw5os5qx5ru17sx5tx}2x{17sw5tw5ou5qu}2y{4qs5kw5os5qx5ru17sx5tx}'fof'-6o7t{ckuclucmucnucoucpu4lu5os5rs}3u{17su5tu5qs}3v{17su5tu5qs}7p{17sw5tw5qs}ck{4qs5ku17sw5ou5qy5rw201ss5tw201ws}4l{4qs5ku17sw5ou5qy5rw201ss5tw201ws}cm{4qs5ku17sw5ou5qy5rw201ss5tw201ws}cn{4qs5ku17sw5ou5qy5rw201ss5tw201ws}co{4qs5ku17sw5ou5qy5rw201ss5tw201ws}cp{4qs5ku17sw5ou5qy5rw201ss5tw201ws}6l{17su5tu5os5qw5rs}17s{2ktclvcmvcnvcovcpv4lv4wuckv}5o{ckwclwcmwcnwcowcpw4lw4wu}5q{ckyclycmycnycoycpy4ly4wu5ms}5r{cktcltcmtcntcotcpt4lt4ws}5t{2ktclvcmvcnvcovcpv4lv4wuckv}7q{cksclscmscnscoscps4ls}6p{17su5tu5qw5rs}ek{5qs5rs}el{17su5tu5os5qw5rs}em{17su5tu5os5qs5rs}en{17su5qs5rs}eo{5qs5rs}ep{17su5tu5os5qw5rs}es{5qs}et{17su5tu5qw5rs}eu{17su5tu5qs5rs}ev{5qs}6z{17sv5tv5os5qx5rs}fm{5os5qt5rs}fn{17sv5tv5os5qx5rs}fo{17sv5tv5os5qx5rs}fp{5os5qt5rs}fq{5os5qt5rs}7r{ckuclucmucnucoucpu4lu5os}fs{17sv5tv5os5qx5rs}ft{17ss5ts5qs}fu{17sw5tw5qs}fv{17sw5tw5qs}fw{17ss5ts5qs}fz{ckuclucmucnucoucpu4lu5os5rs}}}"),"Helvetica-Oblique":nt("{'widths'{k3p2q4mcx1w201n3r201o6o201s1q201t1q201u1q201w2l201x2l201y2l2k1w2l1w202m2n2n3r2o3r2p5t202q6o2r1n2s2l2t2l2u2r2v3u2w1w2x2l2y1w2z1w3k3r3l3r3m3r3n3r3o3r3p3r3q3r3r3r3s3r203t2l203u2l3v1w3w3u3x3u3y3u3z3r4k6p4l4m4m4m4n4s4o4s4p4m4q3x4r4y4s4s4t1w4u3m4v4m4w3r4x5n4y4s4z4y5k4m5l4y5m4s5n4m5o3x5p4s5q4m5r5y5s4m5t4m5u3x5v1w5w1w5x1w5y2z5z3r6k2l6l3r6m3r6n3m6o3r6p3r6q1w6r3r6s3r6t1q6u1q6v3m6w1q6x5n6y3r6z3r7k3r7l3r7m2l7n3m7o1w7p3r7q3m7r4s7s3m7t3m7u3m7v2l7w1u7x2l7y3u202l3rcl4mal2lam3ran3rao3rap3rar3ras2lat4tau2pav3raw3uay4taz2lbk2sbl3u'fof'6obo2lbp3rbr1wbs2lbu2obv3rbz3xck4m202k3rcm4mcn4mco4mcp4mcq6ocr4scs4mct4mcu4mcv4mcw1w2m2ncy1wcz1wdl4sdm4ydn4ydo4ydp4ydq4yds4ydt4sdu4sdv4sdw4sdz3xek3rel3rem3ren3reo3rep3req5ter3mes3ret3reu3rev3rew1wex1wey1wez1wfl3rfm3rfn3rfo3rfp3rfq3rfr3ufs3xft3rfu3rfv3rfw3rfz3m203k6o212m6o2dw2l2cq2l3t3r3u1w17s4m19m3r}'kerning'{5q{4wv}cl{4qs5kw5ow5qs17sv5tv}201t{2wu4w1k2yu}201x{2wu4wy2yu}17s{2ktclucmucnu4otcpu4lu4wycoucku}2w{7qs4qz5k1m17sy5ow5qx5rsfsu5ty7tufzu}2x{17sy5ty5oy5qs}2y{7qs4qz5k1m17sy5ow5qx5rsfsu5ty7tufzu}'fof'-6o7p{17sv5tv5ow}ck{4qs5kw5ow5qs17sv5tv}4l{4qs5kw5ow5qs17sv5tv}cm{4qs5kw5ow5qs17sv5tv}cn{4qs5kw5ow5qs17sv5tv}co{4qs5kw5ow5qs17sv5tv}cp{4qs5kw5ow5qs17sv5tv}6l{17sy5ty5ow}do{17st5tt}4z{17st5tt}7s{fst}dm{17st5tt}dn{17st5tt}5o{ckwclwcmwcnwcowcpw4lw4wv}dp{17st5tt}dq{17st5tt}7t{5ow}ds{17st5tt}5t{2ktclucmucnu4otcpu4lu4wycoucku}fu{17sv5tv5ow}6p{17sy5ty5ow5qs}ek{17sy5ty5ow}el{17sy5ty5ow}em{17sy5ty5ow}en{5ty}eo{17sy5ty5ow}ep{17sy5ty5ow}es{17sy5ty5qs}et{17sy5ty5ow5qs}eu{17sy5ty5ow5qs}ev{17sy5ty5ow5qs}6z{17sy5ty5ow5qs}fm{17sy5ty5ow5qs}fn{17sy5ty5ow5qs}fo{17sy5ty5ow5qs}fp{17sy5ty5qs}fq{17sy5ty5ow5qs}7r{5ow}fs{17sy5ty5ow5qs}ft{17sv5tv5ow}7m{5ow}fv{17sv5tv5ow}fw{17sv5tv5ow}}}")}},et.events.push(["addFont",function(t){var e,n,i,r=t.font,o="Unicode";(e=ot[o][r.postScriptName])&&((n=r.metadata[o]?r.metadata[o]:r.metadata[o]={}).widths=e.widths,n.kerning=e.kerning),(i=rt[o][r.postScriptName])&&((n=r.metadata[o]?r.metadata[o]:r.metadata[o]={}).encoding=i).codePages&&i.codePages.length&&(r.encoding=i.codePages[0])}]),
  2522. /**
  2523. * @license
  2524. * Licensed under the MIT License.
  2525. * http://opensource.org/licenses/mit-license
  2526. */
  2527. at=ft,"undefined"!=typeof self&&self||void 0!==i&&i||"undefined"!=typeof window&&window||Function("return this")(),at.API.events.push(["addFont",function(t){var e=t.font,n=t.instance;if(void 0!==n&&n.existsFileInVFS(e.postScriptName)){var i=n.getFileFromVFS(e.postScriptName);if("string"!=typeof i)throw new Error("Font is not stored as string-data in vFS, import fonts or remove declaration doc.addFont('"+e.postScriptName+"').");e.metadata=at.API.TTFFont.open(e.postScriptName,e.fontName,i,e.encoding),e.metadata.Unicode=e.metadata.Unicode||{encoding:{},kerning:{},widths:[]},e.metadata.glyIdsUsed=[0]}else if(!1===e.isStandardFont)throw new Error("Font does not exist in vFS, import fonts or remove declaration doc.addFont('"+e.postScriptName+"').")}]),
  2528. /** @license
  2529. * Copyright (c) 2012 Willow Systems Corporation, willow-systems.com
  2530. *
  2531. *
  2532. * ====================================================================
  2533. */
  2534. (st=ft.API).addSvg=function(t,e,n,i,r){if(void 0===e||void 0===n)throw new Error("addSVG needs values for 'x' and 'y'");function o(t){for(var e=parseFloat(t[1]),n=parseFloat(t[2]),i=[],r=3,o=t.length;r<o;)"c"===t[r]?(i.push([parseFloat(t[r+1]),parseFloat(t[r+2]),parseFloat(t[r+3]),parseFloat(t[r+4]),parseFloat(t[r+5]),parseFloat(t[r+6])]),r+=7):"l"===t[r]?(i.push([parseFloat(t[r+1]),parseFloat(t[r+2])]),r+=3):r+=1;return[e,n,i]}var a,s,c,l,u,d,p,h,f=(a=t,(c=((h=(l=document).createElement("iframe"),u=".jsPDF_sillysvg_iframe {display:none;position:absolute;}",(p=(d=l).createElement("style")).type="text/css",p.styleSheet?p.styleSheet.cssText=u:p.appendChild(d.createTextNode(u)),d.getElementsByTagName("head")[0].appendChild(p),h.name="childframe",h.setAttribute("width",0),h.setAttribute("height",0),h.setAttribute("frameborder","0"),h.setAttribute("scrolling","no"),h.setAttribute("seamless","seamless"),h.setAttribute("class","jsPDF_sillysvg_iframe"),l.body.appendChild(h),s=h).contentWindow||s.contentDocument).document).write(a),c.close(),c.getElementsByTagName("svg")[0]),g=[1,1],m=parseFloat(f.getAttribute("width")),v=parseFloat(f.getAttribute("height"));m&&v&&(i&&r?g=[i/m,r/v]:i?g=[i/m,i/m]:r&&(g=[r/v,r/v]));var y,b,w,S,x=f.childNodes;for(y=0,b=x.length;y<b;y++)(w=x[y]).tagName&&"PATH"===w.tagName.toUpperCase()&&((S=o(w.getAttribute("d").split(" ")))[0]=S[0]*g[0]+e,S[1]=S[1]*g[1]+n,this.lines.call(this,S[2],S[0],S[1],g));return this},st.addSVG=st.addSvg,st.addSvgAsImage=function(t,e,n,i,r,o,a,s){if(isNaN(e)||isNaN(n))throw console.error("jsPDF.addSvgAsImage: Invalid coordinates",arguments),new Error("Invalid coordinates passed to jsPDF.addSvgAsImage");if(isNaN(i)||isNaN(r))throw console.error("jsPDF.addSvgAsImage: Invalid measurements",arguments),new Error("Invalid measurements (width and/or height) passed to jsPDF.addSvgAsImage");var c=document.createElement("canvas");c.width=i,c.height=r;var l=c.getContext("2d");return l.fillStyle="#fff",l.fillRect(0,0,c.width,c.height),canvg(c,t,{ignoreMouse:!0,ignoreAnimation:!0,ignoreDimensions:!0,ignoreClear:!0}),this.addImage(c.toDataURL("image/jpeg",1),e,n,i,r,a,s),this},ft.API.putTotalPages=function(t){var e,n;n=parseInt(this.internal.getFont().id.substr(1),10)<15?(e=new RegExp(t,"g"),this.internal.getNumberOfPages()):(e=new RegExp(this.pdfEscape16(t,this.internal.getFont()),"g"),this.pdfEscape16(this.internal.getNumberOfPages()+"",this.internal.getFont()));for(var i=1;i<=this.internal.getNumberOfPages();i++)for(var r=0;r<this.internal.pages[i].length;r++)this.internal.pages[i][r]=this.internal.pages[i][r].replace(e,n);return this},ft.API.viewerPreferences=function(t,e){var n;t=t||{},e=e||!1;var i,o,a={HideToolbar:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},HideMenubar:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},HideWindowUI:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},FitWindow:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},CenterWindow:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},DisplayDocTitle:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.4},NonFullScreenPageMode:{defaultValue:"UseNone",value:"UseNone",type:"name",explicitSet:!1,valueSet:["UseNone","UseOutlines","UseThumbs","UseOC"],pdfVersion:1.3},Direction:{defaultValue:"L2R",value:"L2R",type:"name",explicitSet:!1,valueSet:["L2R","R2L"],pdfVersion:1.3},ViewArea:{defaultValue:"CropBox",value:"CropBox",type:"name",explicitSet:!1,valueSet:["MediaBox","CropBox","TrimBox","BleedBox","ArtBox"],pdfVersion:1.4},ViewClip:{defaultValue:"CropBox",value:"CropBox",type:"name",explicitSet:!1,valueSet:["MediaBox","CropBox","TrimBox","BleedBox","ArtBox"],pdfVersion:1.4},PrintArea:{defaultValue:"CropBox",value:"CropBox",type:"name",explicitSet:!1,valueSet:["MediaBox","CropBox","TrimBox","BleedBox","ArtBox"],pdfVersion:1.4},PrintClip:{defaultValue:"CropBox",value:"CropBox",type:"name",explicitSet:!1,valueSet:["MediaBox","CropBox","TrimBox","BleedBox","ArtBox"],pdfVersion:1.4},PrintScaling:{defaultValue:"AppDefault",value:"AppDefault",type:"name",explicitSet:!1,valueSet:["AppDefault","None"],pdfVersion:1.6},Duplex:{defaultValue:"",value:"none",type:"name",explicitSet:!1,valueSet:["Simplex","DuplexFlipShortEdge","DuplexFlipLongEdge","none"],pdfVersion:1.7},PickTrayByPDFSize:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.7},PrintPageRange:{defaultValue:"",value:"",type:"array",explicitSet:!1,valueSet:null,pdfVersion:1.7},NumCopies:{defaultValue:1,value:1,type:"integer",explicitSet:!1,valueSet:null,pdfVersion:1.7}},s=Object.keys(a),c=[],l=0,u=0,d=0,p=!0;function h(t,e){var n,i=!1;for(n=0;n<t.length;n+=1)t[n]===e&&(i=!0);return i}if(void 0===this.internal.viewerpreferences&&(this.internal.viewerpreferences={},this.internal.viewerpreferences.configuration=JSON.parse(JSON.stringify(a)),this.internal.viewerpreferences.isSubscribed=!1),n=this.internal.viewerpreferences.configuration,"reset"===t||!0===e){var f=s.length;for(d=0;d<f;d+=1)n[s[d]].value=n[s[d]].defaultValue,n[s[d]].explicitSet=!1}if("object"===r(t))for(i in t)if(o=t[i],h(s,i)&&void 0!==o){if("boolean"===n[i].type&&"boolean"==typeof o)n[i].value=o;else if("name"===n[i].type&&h(n[i].valueSet,o))n[i].value=o;else if("integer"===n[i].type&&Number.isInteger(o))n[i].value=o;else if("array"===n[i].type){for(l=0;l<o.length;l+=1)if(p=!0,1===o[l].length&&"number"==typeof o[l][0])c.push(String(o[l]-1));else if(1<o[l].length){for(u=0;u<o[l].length;u+=1)"number"!=typeof o[l][u]&&(p=!1);!0===p&&c.push([o[l][0]-1,o[l][1]-1].join(" "))}n[i].value="["+c.join(" ")+"]"}else n[i].value=n[i].defaultValue;n[i].explicitSet=!0}return!1===this.internal.viewerpreferences.isSubscribed&&(this.internal.events.subscribe("putCatalog",function(){var t,e=[];for(t in n)!0===n[t].explicitSet&&("name"===n[t].type?e.push("/"+t+" /"+n[t].value):e.push("/"+t+" "+n[t].value));0!==e.length&&this.internal.write("/ViewerPreferences\n<<\n"+e.join("\n")+"\n>>")}),this.internal.viewerpreferences.isSubscribed=!0),this.internal.viewerpreferences.configuration=n,this},ct=ft.API,dt=ut=lt="",ct.addMetadata=function(t,e){return ut=e||"http://jspdf.default.namespaceuri/",lt=t,this.internal.events.subscribe("postPutResources",function(){if(lt){var t='<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"><rdf:Description rdf:about="" xmlns:jspdf="'+ut+'"><jspdf:metadata>',e=unescape(encodeURIComponent('<x:xmpmeta xmlns:x="adobe:ns:meta/">')),n=unescape(encodeURIComponent(t)),i=unescape(encodeURIComponent(lt)),r=unescape(encodeURIComponent("</jspdf:metadata></rdf:Description></rdf:RDF>")),o=unescape(encodeURIComponent("</x:xmpmeta>")),a=n.length+i.length+r.length+e.length+o.length;dt=this.internal.newObject(),this.internal.write("<< /Type /Metadata /Subtype /XML /Length "+a+" >>"),this.internal.write("stream"),this.internal.write(e+n+i+r+o),this.internal.write("endstream"),this.internal.write("endobj")}else dt=""}),this.internal.events.subscribe("putCatalog",function(){dt&&this.internal.write("/Metadata "+dt+" 0 R")}),this},function(t,e){var n=t.API,i=n.pdfEscape16=function(t,e){for(var n,i=e.metadata.Unicode.widths,r=["","0","00","000","0000"],o=[""],a=0,s=t.length;a<s;++a){if(n=e.metadata.characterToGlyph(t.charCodeAt(a)),e.metadata.glyIdsUsed.push(n),e.metadata.toUnicode[n]=t.charCodeAt(a),-1==i.indexOf(n)&&(i.push(n),i.push([parseInt(e.metadata.widthOfGlyph(n),10)])),"0"==n)return o.join("");n=n.toString(16),o.push(r[4-n.length],n)}return o.join("")},r=function(t){var e,n,i,r,o,a,s;for(o="/CIDInit /ProcSet findresource begin\n12 dict begin\nbegincmap\n/CIDSystemInfo <<\n /Registry (Adobe)\n /Ordering (UCS)\n /Supplement 0\n>> def\n/CMapName /Adobe-Identity-UCS def\n/CMapType 2 def\n1 begincodespacerange\n<0000><ffff>\nendcodespacerange",i=[],a=0,s=(n=Object.keys(t).sort(function(t,e){return t-e})).length;a<s;a++)e=n[a],100<=i.length&&(o+="\n"+i.length+" beginbfchar\n"+i.join("\n")+"\nendbfchar",i=[]),r=("0000"+t[e].toString(16)).slice(-4),e=("0000"+(+e).toString(16)).slice(-4),i.push("<"+e+"><"+r+">");return i.length&&(o+="\n"+i.length+" beginbfchar\n"+i.join("\n")+"\nendbfchar\n"),o+"endcmap\nCMapName currentdict /CMap defineresource pop\nend\nend"};n.events.push(["putFont",function(e){!function(e,n,i,o){if(e.metadata instanceof t.API.TTFFont&&"Identity-H"===e.encoding){for(var a=e.metadata.Unicode.widths,s=e.metadata.subset.encode(e.metadata.glyIdsUsed,1),c="",l=0;l<s.length;l++)c+=String.fromCharCode(s[l]);var u=i();o({data:c,addLength1:!0}),n("endobj");var d=i();o({data:r(e.metadata.toUnicode),addLength1:!0}),n("endobj");var p=i();n("<<"),n("/Type /FontDescriptor"),n("/FontName /"+e.fontName),n("/FontFile2 "+u+" 0 R"),n("/FontBBox "+t.API.PDFObject.convert(e.metadata.bbox)),n("/Flags "+e.metadata.flags),n("/StemV "+e.metadata.stemV),n("/ItalicAngle "+e.metadata.italicAngle),n("/Ascent "+e.metadata.ascender),n("/Descent "+e.metadata.decender),n("/CapHeight "+e.metadata.capHeight),n(">>"),n("endobj");var h=i();n("<<"),n("/Type /Font"),n("/BaseFont /"+e.fontName),n("/FontDescriptor "+p+" 0 R"),n("/W "+t.API.PDFObject.convert(a)),n("/CIDToGIDMap /Identity"),n("/DW 1000"),n("/Subtype /CIDFontType2"),n("/CIDSystemInfo"),n("<<"),n("/Supplement 0"),n("/Registry (Adobe)"),n("/Ordering ("+e.encoding+")"),n(">>"),n(">>"),n("endobj"),e.objectNumber=i(),n("<<"),n("/Type /Font"),n("/Subtype /Type0"),n("/ToUnicode "+d+" 0 R"),n("/BaseFont /"+e.fontName),n("/Encoding /"+e.encoding),n("/DescendantFonts ["+h+" 0 R]"),n(">>"),n("endobj"),e.isAlreadyPutted=!0}}(e.font,e.out,e.newObject,e.putStream)}]),n.events.push(["putFont",function(e){!function(e,n,i,o){if(e.metadata instanceof t.API.TTFFont&&"WinAnsiEncoding"===e.encoding){e.metadata.Unicode.widths;for(var a=e.metadata.rawData,s="",c=0;c<a.length;c++)s+=String.fromCharCode(a[c]);var l=i();o({data:s,addLength1:!0}),n("endobj");var u=i();o({data:r(e.metadata.toUnicode),addLength1:!0}),n("endobj");var d=i();for(n("<<"),n("/Descent "+e.metadata.decender),n("/CapHeight "+e.metadata.capHeight),n("/StemV "+e.metadata.stemV),n("/Type /FontDescriptor"),n("/FontFile2 "+l+" 0 R"),n("/Flags 96"),n("/FontBBox "+t.API.PDFObject.convert(e.metadata.bbox)),n("/FontName /"+e.fontName),n("/ItalicAngle "+e.metadata.italicAngle),n("/Ascent "+e.metadata.ascender),n(">>"),n("endobj"),e.objectNumber=i(),c=0;c<e.metadata.hmtx.widths.length;c++)e.metadata.hmtx.widths[c]=parseInt(e.metadata.hmtx.widths[c]*(1e3/e.metadata.head.unitsPerEm));n("<</Subtype/TrueType/Type/Font/ToUnicode "+u+" 0 R/BaseFont/"+e.fontName+"/FontDescriptor "+d+" 0 R/Encoding/"+e.encoding+" /FirstChar 29 /LastChar 255 /Widths "+t.API.PDFObject.convert(e.metadata.hmtx.widths)+">>"),n("endobj"),e.isAlreadyPutted=!0}}(e.font,e.out,e.newObject,e.putStream)}]);var o=function(t){var e,n,r=t.text||"",o=t.x,a=t.y,s=t.options||{},c=t.mutex||{},l=c.pdfEscape,u=c.activeFontKey,d=c.fonts,p=(c.activeFontSize,""),h=0,f="",g=d[n=u].encoding;if("Identity-H"!==d[n].encoding)return{text:r,x:o,y:a,options:s,mutex:c};for(f=r,n=u,"[object Array]"===Object.prototype.toString.call(r)&&(f=r[0]),h=0;h<f.length;h+=1)d[n].metadata.hasOwnProperty("cmap")&&(e=d[n].metadata.cmap.unicode.codeMap[f[h].charCodeAt(0)]),e||f[h].charCodeAt(0)<256&&d[n].metadata.hasOwnProperty("Unicode")?p+=f[h]:p+="";var m="";return parseInt(n.slice(1))<14||"WinAnsiEncoding"===g?m=function(t){for(var e="",n=0;n<t.length;n++)e+=""+t.charCodeAt(n).toString(16);return e}(l(p,n)):"Identity-H"===g&&(m=i(p,d[n])),c.isHex=!0,{text:m,x:o,y:a,options:s,mutex:c}};n.events.push(["postProcessText",function(t){var e=t.text||"",n=t.x,i=t.y,r=t.options,a=t.mutex,s=(r.lang,[]),c={text:e,x:n,y:i,options:r,mutex:a};if("[object Array]"===Object.prototype.toString.call(e)){var l=0;for(l=0;l<e.length;l+=1)"[object Array]"===Object.prototype.toString.call(e[l])&&3===e[l].length?s.push([o(Object.assign({},c,{text:e[l][0]})).text,e[l][1],e[l][2]]):s.push(o(Object.assign({},c,{text:e[l]})).text);t.text=s}else t.text=o(Object.assign({},c,{text:e})).text}])}(ft,"undefined"!=typeof self&&self||void 0!==i&&i||"undefined"!=typeof window&&window||Function("return this")()),pt=ft.API,ht=function(t){return void 0!==t&&(void 0===t.vFS&&(t.vFS={}),!0)},pt.existsFileInVFS=function(t){return!!ht(this.internal)&&void 0!==this.internal.vFS[t]},pt.addFileToVFS=function(t,e){return ht(this.internal),this.internal.vFS[t]=e,this},pt.getFileFromVFS=function(t){return ht(this.internal),void 0!==this.internal.vFS[t]?this.internal.vFS[t]:null},ft.API.addHTML=function(t,e,n,i,r){if("undefined"==typeof html2canvas&&"undefined"==typeof rasterizeHTML)throw new Error("You need either https://github.com/niklasvh/html2canvas or https://github.com/cburgmer/rasterizeHTML.js");"number"!=typeof e&&(i=e,r=n),"function"==typeof i&&(r=i,i=null),"function"!=typeof r&&(r=function(){});var o=this.internal,a=o.scaleFactor,s=o.pageSize.getWidth(),c=o.pageSize.getHeight();if((i=i||{}).onrendered=function(t){e=parseInt(e)||0,n=parseInt(n)||0;var o=i.dim||{},l=Object.assign({top:0,right:0,bottom:0,left:0,useFor:"content"},i.margin),u=o.h||Math.min(c,t.height/a),d=o.w||Math.min(s,t.width/a)-e,p=i.format||"JPEG",h=i.imageCompression||"SLOW";if(t.height>c-l.top-l.bottom&&i.pagesplit){var f=function(t,e,n,r,o){var a=document.createElement("canvas");a.height=o,a.width=r;var s=a.getContext("2d");return s.mozImageSmoothingEnabled=!1,s.webkitImageSmoothingEnabled=!1,s.msImageSmoothingEnabled=!1,s.imageSmoothingEnabled=!1,s.fillStyle=i.backgroundColor||"#ffffff",s.fillRect(0,0,r,o),s.drawImage(t,e,n,r,o,0,0,r,o),a},g=function(){for(var i,o,u=0,g=0,m={},v=!1;;){var y;if(g=0,m.top=0!==u?l.top:n,m.left=0!==u?l.left:e,v=(s-l.left-l.right)*a<t.width,"content"===l.useFor?0===u?(i=Math.min((s-l.left)*a,t.width),o=Math.min((c-l.top)*a,t.height-u)):(i=Math.min(s*a,t.width),o=Math.min(c*a,t.height-u),m.top=0):(i=Math.min((s-l.left-l.right)*a,t.width),o=Math.min((c-l.bottom-l.top)*a,t.height-u)),v)for(;;){"content"===l.useFor&&(0===g?i=Math.min((s-l.left)*a,t.width):(i=Math.min(s*a,t.width-g),m.left=0));var b=[y=f(t,g,u,i,o),m.left,m.top,y.width/a,y.height/a,p,null,h];if(this.addImage.apply(this,b),(g+=i)>=t.width)break;this.addPage()}else b=[y=f(t,0,u,i,o),m.left,m.top,y.width/a,y.height/a,p,null,h],this.addImage.apply(this,b);if((u+=o)>=t.height)break;this.addPage()}r(d,u,null,b)}.bind(this);if("CANVAS"===t.nodeName){var m=new Image;m.onload=g,m.src=t.toDataURL("image/png"),t=m}else g()}else{var v=Math.random().toString(35),y=[t,e,n,d,u,p,v,h];this.addImage.apply(this,y),r(d,u,v,y)}}.bind(this),"undefined"!=typeof html2canvas&&!i.rstz)return html2canvas(t,i);if("undefined"==typeof rasterizeHTML)return null;var l="drawDocument";return"string"==typeof t&&(l=/^http/.test(t)?"drawURL":"drawHTML"),i.width=i.width||s*a,rasterizeHTML[l](t,void 0,i).then(function(t){i.onrendered(t.image)},function(t){r(null,t)})
  2535. /**
  2536. * jsPDF fromHTML plugin. BETA stage. API subject to change. Needs browser
  2537. * Copyright (c) 2012 Willow Systems Corporation, willow-systems.com
  2538. * 2014 Juan Pablo Gaviria, https://github.com/juanpgaviria
  2539. * 2014 Diego Casorran, https://github.com/diegocr
  2540. * 2014 Daniel Husar, https://github.com/danielhusar
  2541. * 2014 Wolfgang Gassler, https://github.com/woolfg
  2542. * 2014 Steven Spungin, https://github.com/flamenco
  2543. *
  2544. * @license
  2545. *
  2546. * ====================================================================
  2547. */},function(t){var e,n,i,o,a,s,c,l,u,d,p,h,f,g,m,v,y,b,w,S;e=function(){return function(e){return t.prototype=e,new t};function t(){}}(),d=function(t){var e,n,i,r,o,a,s;for(n=0,i=t.length,e=void 0,a=r=!1;!r&&n!==i;)(e=t[n]=t[n].trimLeft())&&(r=!0),n++;for(n=i-1;i&&!a&&-1!==n;)(e=t[n]=t[n].trimRight())&&(a=!0),n--;for(o=/\s+$/g,s=!0,n=0;n!==i;)"\u2028"!=t[n]&&(e=t[n].replace(/\s+/g," "),s&&(e=e.trimLeft()),e&&(s=o.test(e)),t[n]=e),n++;return t},h=function(t){var e,n,r;for(e=void 0,n=(r=t.split(",")).shift();!e&&n;)e=i[n.trim().toLowerCase()],n=r.shift();return e},f=function(t){var e;return-1<(t="auto"===t?"0px":t).indexOf("em")&&!isNaN(Number(t.replace("em","")))&&(t=18.719*Number(t.replace("em",""))+"px"),-1<t.indexOf("pt")&&!isNaN(Number(t.replace("pt","")))&&(t=1.333*Number(t.replace("pt",""))+"px"),(e=g[t])?e:void 0!==(e={"xx-small":9,"x-small":11,small:13,medium:16,large:19,"x-large":23,"xx-large":28,auto:0}[t])||(e=parseFloat(t))?g[t]=e/16:(e=t.match(/([\d\.]+)(px)/),Array.isArray(e)&&3===e.length?g[t]=parseFloat(e[1])/16:g[t]=1)},u=function(t){var e,n,i,r,u;return u=t,r=document.defaultView&&document.defaultView.getComputedStyle?document.defaultView.getComputedStyle(u,null):u.currentStyle?u.currentStyle:u.style,n=void 0,(e={})["font-family"]=h((i=function(t){return t=t.replace(/-\D/g,function(t){return t.charAt(1).toUpperCase()}),r[t]})("font-family"))||"times",e["font-style"]=o[i("font-style")]||"normal",e["text-align"]=a[i("text-align")]||"left","bold"===(n=s[i("font-weight")]||"normal")&&("normal"===e["font-style"]?e["font-style"]=n:e["font-style"]=n+e["font-style"]),e["font-size"]=f(i("font-size"))||1,e["line-height"]=f(i("line-height"))||1,e.display="inline"===i("display")?"inline":"block",n="block"===e.display,e["margin-top"]=n&&f(i("margin-top"))||0,e["margin-bottom"]=n&&f(i("margin-bottom"))||0,e["padding-top"]=n&&f(i("padding-top"))||0,e["padding-bottom"]=n&&f(i("padding-bottom"))||0,e["margin-left"]=n&&f(i("margin-left"))||0,e["margin-right"]=n&&f(i("margin-right"))||0,e["padding-left"]=n&&f(i("padding-left"))||0,e["padding-right"]=n&&f(i("padding-right"))||0,e["page-break-before"]=i("page-break-before")||"auto",e.float=c[i("cssFloat")]||"none",e.clear=l[i("clear")]||"none",e.color=i("color"),e},m=function(t,e,n){var i,r,o,a,s;if(o=!1,a=r=void 0,i=n["#"+t.id])if("function"==typeof i)o=i(t,e);else for(r=0,a=i.length;!o&&r!==a;)o=i[r](t,e),r++;if(i=n[t.nodeName],!o&&i)if("function"==typeof i)o=i(t,e);else for(r=0,a=i.length;!o&&r!==a;)o=i[r](t,e),r++;for(s="string"==typeof t.className?t.className.split(" "):[],r=0;r<s.length;r++)if(i=n["."+s[r]],!o&&i)if("function"==typeof i)o=i(t,e);else for(r=0,a=i.length;!o&&r!==a;)o=i[r](t,e),r++;return o},S=function(t,e){var n,i,r,o,a,s,c,l,u;for(n=[],i=[],r=0,u=t.rows[0].cells.length,c=t.clientWidth;r<u;)l=t.rows[0].cells[r],i[r]={name:l.textContent.toLowerCase().replace(/\s+/g,""),prompt:l.textContent.replace(/\r?\n/g,""),width:l.clientWidth/c*e.pdf.internal.pageSize.getWidth()},r++;for(r=1;r<t.rows.length;){for(s=t.rows[r],a={},o=0;o<s.cells.length;)a[i[o].name]=s.cells[o].textContent.replace(/\r?\n/g,""),o++;n.push(a),r++}return{rows:n,headers:i}};var x={SCRIPT:1,STYLE:1,NOSCRIPT:1,OBJECT:1,EMBED:1,SELECT:1},M=1;n=function(t,i,o){var a,s,c,l,d,p,h,f;for(s=t.childNodes,a=void 0,(d="block"===(c=u(t)).display)&&(i.setBlockBoundary(),i.setBlockStyle(c)),l=0,p=s.length;l<p;){if("object"===r(a=s[l])){if(i.executeWatchFunctions(a),1===a.nodeType&&"HEADER"===a.nodeName){var g=a,y=i.pdf.margins_doc.top;i.pdf.internal.events.subscribe("addPage",function(t){i.y=y,n(g,i,o),i.pdf.margins_doc.top=i.y+10,i.y+=10},!1)}if(8===a.nodeType&&"#comment"===a.nodeName)~a.textContent.indexOf("ADD_PAGE")&&(i.pdf.addPage(),i.y=i.pdf.margins_doc.top);else if(1!==a.nodeType||x[a.nodeName])if(3===a.nodeType){var b=a.nodeValue;if(a.nodeValue&&"LI"===a.parentNode.nodeName)if("OL"===a.parentNode.parentNode.nodeName)b=M+++". "+b;else{var w=c["font-size"],E=(3-.75*w)*i.pdf.internal.scaleFactor,C=.75*w*i.pdf.internal.scaleFactor,A=1.74*w/i.pdf.internal.scaleFactor;f=function(t,e){this.pdf.circle(t+E,e+C,A,"FD")}}16&a.ownerDocument.body.compareDocumentPosition(a)&&i.addText(b,c)}else"string"==typeof a&&i.addText(a,c);else{var T;if("IMG"===a.nodeName){var O=a.getAttribute("src");T=v[i.pdf.sHashCode(O)||O]}if(T){i.pdf.internal.pageSize.getHeight()-i.pdf.margins_doc.bottom<i.y+a.height&&i.y>i.pdf.margins_doc.top&&(i.pdf.addPage(),i.y=i.pdf.margins_doc.top,i.executeWatchFunctions(a));var _=u(a),P=i.x,I=12/i.pdf.internal.scaleFactor,k=(_["margin-left"]+_["padding-left"])*I,D=(_["margin-right"]+_["padding-right"])*I,R=(_["margin-top"]+_["padding-top"])*I,L=(_["margin-bottom"]+_["padding-bottom"])*I;void 0!==_.float&&"right"===_.float?P+=i.settings.width-a.width-D:P+=k,i.pdf.addImage(T,P,i.y+R,a.width,a.height),T=void 0,"right"===_.float||"left"===_.float?(i.watchFunctions.push(function(t,e,n,r){return i.y>=e?(i.x+=t,i.settings.width+=n,!0):!!(r&&1===r.nodeType&&!x[r.nodeName]&&i.x+r.width>i.pdf.margins_doc.left+i.pdf.margins_doc.width)&&(i.x+=t,i.y=e,i.settings.width+=n,!0)}.bind(this,"left"===_.float?-a.width-k-D:0,i.y+a.height+R+L,a.width)),i.watchFunctions.push(function(t,e,n){return!(i.y<t&&e===i.pdf.internal.getNumberOfPages())||1===n.nodeType&&"both"===u(n).clear&&(i.y=t,!0)}.bind(this,i.y+a.height,i.pdf.internal.getNumberOfPages())),i.settings.width-=a.width+k+D,"left"===_.float&&(i.x+=a.width+k+D)):i.y+=a.height+R+L}else if("TABLE"===a.nodeName)h=S(a,i),i.y+=10,i.pdf.table(i.x,i.y,h.rows,h.headers,{autoSize:!1,printHeaders:o.printHeaders,margins:i.pdf.margins_doc,css:u(a)}),i.y=i.pdf.lastCellPos.y+i.pdf.lastCellPos.h+20;else if("OL"===a.nodeName||"UL"===a.nodeName)M=1,m(a,i,o)||n(a,i,o),i.y+=10;else if("LI"===a.nodeName){var N=i.x;i.x+=20/i.pdf.internal.scaleFactor,i.y+=3,m(a,i,o)||n(a,i,o),i.x=N}else"BR"===a.nodeName?(i.y+=c["font-size"]*i.pdf.internal.scaleFactor,i.addText("\u2028",e(c))):m(a,i,o)||n(a,i,o)}}l++}if(o.outY=i.y,d)return i.setBlockBoundary(f)},v={},y=function(t,e,n,i){var r,o=t.getElementsByTagName("img"),a=o.length,s=0;function c(){e.pdf.internal.events.publish("imagesLoaded"),i(r)}function l(t,n,i){if(t){var o=new Image;r=++s,o.crossOrigin="",o.onerror=o.onload=function(){if(o.complete&&(0===o.src.indexOf("data:image/")&&(o.width=n||o.width||0,o.height=i||o.height||0),o.width+o.height)){var r=e.pdf.sHashCode(t)||t;v[r]=v[r]||o}--s||c()},o.src=t}}for(;a--;)l(o[a].getAttribute("src"),o[a].width,o[a].height);return s||c()},b=function(t,e,i){var r=t.getElementsByTagName("footer");if(0<r.length){r=r[0];var o=e.pdf.internal.write,a=e.y;e.pdf.internal.write=function(){},n(r,e,i);var s=Math.ceil(e.y-a)+5;e.y=a,e.pdf.internal.write=o,e.pdf.margins_doc.bottom+=s;for(var c=function(t){var o=void 0!==t?t.pageNumber:1,a=e.y;e.y=e.pdf.internal.pageSize.getHeight()-e.pdf.margins_doc.bottom,e.pdf.margins_doc.bottom-=s;for(var c=r.getElementsByTagName("span"),l=0;l<c.length;++l)-1<(" "+c[l].className+" ").replace(/[\n\t]/g," ").indexOf(" pageCounter ")&&(c[l].innerHTML=o),-1<(" "+c[l].className+" ").replace(/[\n\t]/g," ").indexOf(" totalPages ")&&(c[l].innerHTML="###jsPDFVarTotalPages###");n(r,e,i),e.pdf.margins_doc.bottom+=s,e.y=a},l=r.getElementsByTagName("span"),u=0;u<l.length;++u)-1<(" "+l[u].className+" ").replace(/[\n\t]/g," ").indexOf(" totalPages ")&&e.pdf.internal.events.subscribe("htmlRenderingFinished",e.pdf.putTotalPages.bind(e.pdf,"###jsPDFVarTotalPages###"),!0);e.pdf.internal.events.subscribe("addPage",c,!1),c(),x.FOOTER=1}},w=function(t,e,i,r,o,a){if(!e)return!1;var s,c,l,u;"string"==typeof e||e.parentNode||(e=""+e.innerHTML),"string"==typeof e&&(s=e.replace(/<\/?script[^>]*?>/gi,""),u="jsPDFhtmlText"+Date.now().toString()+(1e3*Math.random()).toFixed(0),(l=document.createElement("div")).style.cssText="position: absolute !important;clip: rect(1px 1px 1px 1px); /* IE6, IE7 */clip: rect(1px, 1px, 1px, 1px);padding:0 !important;border:0 !important;height: 1px !important;width: 1px !important; top:auto;left:-100px;overflow: hidden;",l.innerHTML='<iframe style="height:1px;width:1px" name="'+u+'" />',document.body.appendChild(l),(c=window.frames[u]).document.open(),c.document.writeln(s),c.document.close(),e=c.document.body);var d,h=new p(t,i,r,o);return y.call(this,e,h,o.elementHandlers,function(t){b(e,h,o.elementHandlers),n(e,h,o.elementHandlers),h.pdf.internal.events.publish("htmlRenderingFinished"),d=h.dispose(),"function"==typeof a?a(d):t&&console.error("jsPDF Warning: rendering issues? provide a callback to fromHTML!")}),d||{x:h.x,y:h.y}},(p=function(t,e,n,i){return this.pdf=t,this.x=e,this.y=n,this.settings=i,this.watchFunctions=[],this.init(),this}).prototype.init=function(){return this.paragraph={text:[],style:[]},this.pdf.internal.write("q")},p.prototype.dispose=function(){return this.pdf.internal.write("Q"),{x:this.x,y:this.y,ready:!0}},p.prototype.executeWatchFunctions=function(t){var e=!1,n=[];if(0<this.watchFunctions.length){for(var i=0;i<this.watchFunctions.length;++i)!0===this.watchFunctions[i](t)?e=!0:n.push(this.watchFunctions[i]);this.watchFunctions=n}return e},p.prototype.splitFragmentsIntoLines=function(t,n){var i,r,o,a,s,c,l,u,d,p,h,f,g,m;for(p=this.pdf.internal.scaleFactor,a={},c=l=u=m=s=o=d=r=void 0,f=[h=[]],i=0,g=this.settings.width;t.length;)if(s=t.shift(),m=n.shift(),s)if((o=a[(r=m["font-family"])+(d=m["font-style"])])||(o=this.pdf.internal.getFont(r,d).metadata.Unicode,a[r+d]=o),u={widths:o.widths,kerning:o.kerning,fontSize:12*m["font-size"],textIndent:i},l=this.pdf.getStringUnitWidth(s,u)*u.fontSize/p,"\u2028"==s)h=[],f.push(h);else if(g<i+l){for(c=this.pdf.splitTextToSize(s,g,u),h.push([c.shift(),m]);c.length;)h=[[c.shift(),m]],f.push(h);i=this.pdf.getStringUnitWidth(h[0][0],u)*u.fontSize/p}else h.push([s,m]),i+=l;if(void 0!==m["text-align"]&&("center"===m["text-align"]||"right"===m["text-align"]||"justify"===m["text-align"]))for(var v=0;v<f.length;++v){var y=this.pdf.getStringUnitWidth(f[v][0][0],u)*u.fontSize/p;0<v&&(f[v][0][1]=e(f[v][0][1]));var b=g-y;if("right"===m["text-align"])f[v][0][1]["margin-left"]=b;else if("center"===m["text-align"])f[v][0][1]["margin-left"]=b/2;else if("justify"===m["text-align"]){var w=f[v][0][0].split(" ").length-1;f[v][0][1]["word-spacing"]=b/w,v===f.length-1&&(f[v][0][1]["word-spacing"]=0)}}return f},p.prototype.RenderTextFragment=function(t,e){var n,i;i=0,this.pdf.internal.pageSize.getHeight()-this.pdf.margins_doc.bottom<this.y+this.pdf.internal.getFontSize()&&(this.pdf.internal.write("ET","Q"),this.pdf.addPage(),this.y=this.pdf.margins_doc.top,this.pdf.internal.write("q","BT",this.getPdfColor(e.color),this.pdf.internal.getCoordinateString(this.x),this.pdf.internal.getVerticalCoordinateString(this.y),"Td"),i=Math.max(i,e["line-height"],e["font-size"]),this.pdf.internal.write(0,(-12*i).toFixed(2),"Td")),n=this.pdf.internal.getFont(e["font-family"],e["font-style"]);var r=this.getPdfColor(e.color);r!==this.lastTextColor&&(this.pdf.internal.write(r),this.lastTextColor=r),void 0!==e["word-spacing"]&&0<e["word-spacing"]&&this.pdf.internal.write(e["word-spacing"].toFixed(2),"Tw"),this.pdf.internal.write("/"+n.id,(12*e["font-size"]).toFixed(2),"Tf","("+this.pdf.internal.pdfEscape(t)+") Tj"),void 0!==e["word-spacing"]&&this.pdf.internal.write(0,"Tw")},p.prototype.getPdfColor=function(t){var e,n,i,r=/rgb\s*\(\s*(\d+),\s*(\d+),\s*(\d+\s*)\)/.exec(t);if(null!=r)e=parseInt(r[1]),n=parseInt(r[2]),i=parseInt(r[3]);else{if("string"==typeof t&&"#"!=t.charAt(0)){var o=new RGBColor(t);t=o.ok?o.toHex():"#000000"}e=t.substring(1,3),e=parseInt(e,16),n=t.substring(3,5),n=parseInt(n,16),i=t.substring(5,7),i=parseInt(i,16)}if("string"==typeof e&&/^#[0-9A-Fa-f]{6}$/.test(e)){var a=parseInt(e.substr(1),16);e=a>>16&255,n=a>>8&255,i=255&a}var s=this.f3;return 0===e&&0===n&&0===i||void 0===n?s(e/255)+" g":[s(e/255),s(n/255),s(i/255),"rg"].join(" ")},p.prototype.f3=function(t){return t.toFixed(3)},p.prototype.renderParagraph=function(t){var e,n,i,r,o,a,s,c,l,u,p,h,f;if(i=d(this.paragraph.text),h=this.paragraph.style,e=this.paragraph.blockstyle,this.paragraph.priorblockstyle,this.paragraph={text:[],style:[],blockstyle:{},priorblockstyle:e},i.join("").trim()){s=this.splitFragmentsIntoLines(i,h),c=a=void 0,n=12/this.pdf.internal.scaleFactor,this.priorMarginBottom=this.priorMarginBottom||0,p=(Math.max((e["margin-top"]||0)-this.priorMarginBottom,0)+(e["padding-top"]||0))*n,u=((e["margin-bottom"]||0)+(e["padding-bottom"]||0))*n,this.priorMarginBottom=e["margin-bottom"]||0,"always"===e["page-break-before"]&&(this.pdf.addPage(),this.y=0,p=((e["margin-top"]||0)+(e["padding-top"]||0))*n),l=this.pdf.internal.write,o=r=void 0,this.y+=p,l("q","BT 0 g",this.pdf.internal.getCoordinateString(this.x),this.pdf.internal.getVerticalCoordinateString(this.y),"Td");for(var g=0;s.length;){for(r=c=0,o=(a=s.shift()).length;r!==o;)a[r][0].trim()&&(c=Math.max(c,a[r][1]["line-height"],a[r][1]["font-size"]),f=7*a[r][1]["font-size"]),r++;var m=0,v=0;for(void 0!==a[0][1]["margin-left"]&&0<a[0][1]["margin-left"]&&(m=(v=this.pdf.internal.getCoordinateString(a[0][1]["margin-left"]))-g,g=v),l(m+Math.max(e["margin-left"]||0,0)*n,(-12*c).toFixed(2),"Td"),r=0,o=a.length;r!==o;)a[r][0]&&this.RenderTextFragment(a[r][0],a[r][1]),r++;if(this.y+=c*n,this.executeWatchFunctions(a[0][1])&&0<s.length){var y=[],b=[];s.forEach(function(t){for(var e=0,n=t.length;e!==n;)t[e][0]&&(y.push(t[e][0]+" "),b.push(t[e][1])),++e}),s=this.splitFragmentsIntoLines(d(y),b),l("ET","Q"),l("q","BT 0 g",this.pdf.internal.getCoordinateString(this.x),this.pdf.internal.getVerticalCoordinateString(this.y),"Td")}}return t&&"function"==typeof t&&t.call(this,this.x-9,this.y-f/2),l("ET","Q"),this.y+=u}},p.prototype.setBlockBoundary=function(t){return this.renderParagraph(t)},p.prototype.setBlockStyle=function(t){return this.paragraph.blockstyle=t},p.prototype.addText=function(t,e){return this.paragraph.text.push(t),this.paragraph.style.push(e)},i={helvetica:"helvetica","sans-serif":"helvetica","times new roman":"times",serif:"times",times:"times",monospace:"courier",courier:"courier"},s={100:"normal",200:"normal",300:"normal",400:"normal",500:"bold",600:"bold",700:"bold",800:"bold",900:"bold",normal:"normal",bold:"bold",bolder:"bold",lighter:"normal"},o={normal:"normal",italic:"italic",oblique:"italic"},a={left:"left",right:"right",center:"center",justify:"justify"},c={none:"none",right:"right",left:"left"},l={none:"none",both:"both"},g={normal:1},t.fromHTML=function(t,e,n,i,r,o){return this.margins_doc=o||{top:0,bottom:0},i||(i={}),i.elementHandlers||(i.elementHandlers={}),w(this,t,isNaN(e)?4:e,isNaN(n)?4:n,i,r)}}(ft.API),ft.API,("undefined"!=typeof window&&window||void 0!==i&&i).html2pdf=function(t,e,n){var i=e.canvas;if(i){var r,o;if((i.pdf=e).annotations={_nameMap:[],createAnnotation:function(t,n){var i,r=e.context2d._wrapX(n.left),o=e.context2d._wrapY(n.top),a=(e.context2d._page(n.top),t.indexOf("#"));i=0<=a?{name:t.substring(a+1)}:{url:t},e.link(r,o,n.right-n.left,n.bottom-n.top,i)},setName:function(t,n){var i=e.context2d._wrapX(n.left),r=e.context2d._wrapY(n.top),o=e.context2d._page(n.top);this._nameMap[t]={page:o,x:i,y:r}}},i.annotations=e.annotations,e.context2d._pageBreakAt=function(t){this.pageBreaks.push(t)},e.context2d._gotoPage=function(t){for(;e.internal.getNumberOfPages()<t;)e.addPage();e.setPage(t)},"string"==typeof t){t=t.replace(/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,"");var a,s,c=document.createElement("iframe");document.body.appendChild(c),null!=(a=c.contentDocument)&&null!=a||(a=c.contentWindow.document),a.open(),a.write(t),a.close(),r=a.body,s=a.body||{},t=a.documentElement||{},o=Math.max(s.scrollHeight,s.offsetHeight,t.clientHeight,t.scrollHeight,t.offsetHeight)}else s=(r=t).body||{},o=Math.max(s.scrollHeight,s.offsetHeight,t.clientHeight,t.scrollHeight,t.offsetHeight);var l={async:!0,allowTaint:!0,backgroundColor:"#ffffff",canvas:i,imageTimeout:15e3,logging:!0,proxy:null,removeContainer:!0,foreignObjectRendering:!1,useCORS:!1,windowHeight:o=e.internal.pageSize.getHeight(),scrollY:o};e.context2d.pageWrapYEnabled=!0,e.context2d.pageWrapY=e.internal.pageSize.getHeight(),html2canvas(r,l).then(function(t){n&&(c&&c.parentElement.removeChild(c),n(e))})}else alert("jsPDF canvas plugin not installed")},window.tmp=html2pdf,function(t){var e=t.BlobBuilder||t.WebKitBlobBuilder||t.MSBlobBuilder||t.MozBlobBuilder;t.URL=t.URL||t.webkitURL||function(t,e){return(e=document.createElement("a")).href=t,e};var n=t.Blob,i=URL.createObjectURL,r=URL.revokeObjectURL,o=t.Symbol&&t.Symbol.toStringTag,a=!1,s=!1,c=!!t.ArrayBuffer,l=e&&e.prototype.append&&e.prototype.getBlob;try{a=2===new Blob(["ä"]).size,s=2===new Blob([new Uint8Array([1,2])]).size}catch(a){}function u(t){return t.map(function(t){if(t.buffer instanceof ArrayBuffer){var e=t.buffer;if(t.byteLength!==e.byteLength){var n=new Uint8Array(t.byteLength);n.set(new Uint8Array(e,t.byteOffset,t.byteLength)),e=n.buffer}return e}return t})}function d(t,n){n=n||{};var i=new e;return u(t).forEach(function(t){i.append(t)}),n.type?i.getBlob(n.type):i.getBlob()}function p(t,e){return new n(u(t),e||{})}if(t.Blob&&(d.prototype=Blob.prototype,p.prototype=Blob.prototype),o)try{File.prototype[o]="File",Blob.prototype[o]="Blob",FileReader.prototype[o]="FileReader"}catch(a){}function h(){var e=!!t.ActiveXObject||"-ms-scroll-limit"in document.documentElement.style&&"-ms-ime-align"in document.documentElement.style,n=t.XMLHttpRequest&&t.XMLHttpRequest.prototype.send;e&&n&&(XMLHttpRequest.prototype.send=function(t){t instanceof Blob&&this.setRequestHeader("Content-Type",t.type),n.call(this,t)});try{new File([],"")}catch(e){try{var i=new Function('class File extends Blob {constructor(chunks, name, opts) {opts = opts || {};super(chunks, opts || {});this.name = name;this.lastModifiedDate = opts.lastModified ? new Date(opts.lastModified) : new Date;this.lastModified = +this.lastModifiedDate;}};return new File([], ""), File')();t.File=i}catch(e){i=function(t,e,n){var i=new Blob(t,n),r=n&&void 0!==n.lastModified?new Date(n.lastModified):new Date;return i.name=e,i.lastModifiedDate=r,i.lastModified=+r,i.toString=function(){return"[object File]"},o&&(i[o]="File"),i},t.File=i}}}a?(h(),t.Blob=s?t.Blob:p):l?(h(),t.Blob=d):function(){function e(t){for(var e=[],n=0;n<t.length;n++){var i=t.charCodeAt(n);i<128?e.push(i):i<2048?e.push(192|i>>6,128|63&i):i<55296||57344<=i?e.push(224|i>>12,128|i>>6&63,128|63&i):(n++,i=65536+((1023&i)<<10|1023&t.charCodeAt(n)),e.push(240|i>>18,128|i>>12&63,128|i>>6&63,128|63&i))}return e}function n(t){var e,n,i,r,o,a;for(e="",i=t.length,n=0;n<i;)switch((r=t[n++])>>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:e+=String.fromCharCode(r);break;case 12:case 13:o=t[n++],e+=String.fromCharCode((31&r)<<6|63&o);break;case 14:o=t[n++],a=t[n++],e+=String.fromCharCode((15&r)<<12|(63&o)<<6|(63&a)<<0)}return e}function o(t){for(var e=new Array(t.byteLength),n=new Uint8Array(t),i=e.length;i--;)e[i]=n[i];return e}function a(t){for(var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",n=[],i=0;i<t.length;i+=3){var r=t[i],o=i+1<t.length,a=o?t[i+1]:0,s=i+2<t.length,c=s?t[i+2]:0,l=r>>2,u=(3&r)<<4|a>>4,d=(15&a)<<2|c>>6,p=63&c;s||(p=64,o||(d=64)),n.push(e[l],e[u],e[d],e[p])}return n.join("")}var s=Object.create||function(t){function e(){}return e.prototype=t,new e};if(c)var l=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],u=ArrayBuffer.isView||function(t){return t&&-1<l.indexOf(Object.prototype.toString.call(t))};function d(t,n){for(var i=0,r=(t=t||[]).length;i<r;i++){var a=t[i];a instanceof d?t[i]=a._buffer:"string"==typeof a?t[i]=e(a):c&&(ArrayBuffer.prototype.isPrototypeOf(a)||u(a))?t[i]=o(a):c&&(s=a)&&DataView.prototype.isPrototypeOf(s)?t[i]=o(a.buffer):t[i]=e(String(a))}var s;this._buffer=[].concat.apply([],t),this.size=this._buffer.length,this.type=n&&n.type||""}function p(t,e,n){var i=d.call(this,t,n=n||{})||this;return i.name=e,i.lastModifiedDate=n.lastModified?new Date(n.lastModified):new Date,i.lastModified=+i.lastModifiedDate,i}if(d.prototype.slice=function(t,e,n){return new d([this._buffer.slice(t||0,e||this._buffer.length)],{type:n})},d.prototype.toString=function(){return"[object Blob]"},(p.prototype=s(d.prototype)).constructor=p,Object.setPrototypeOf)Object.setPrototypeOf(p,d);else try{p.__proto__=d}catch(s){}function h(){if(!(this instanceof h))throw new TypeError("Failed to construct 'FileReader': Please use the 'new' operator, this DOM object constructor cannot be called as a function.");var t=document.createDocumentFragment();this.addEventListener=t.addEventListener,this.dispatchEvent=function(e){var n=this["on"+e.type];"function"==typeof n&&n(e),t.dispatchEvent(e)},this.removeEventListener=t.removeEventListener}function f(t,e,n){if(!(e instanceof d))throw new TypeError("Failed to execute '"+n+"' on 'FileReader': parameter 1 is not of type 'Blob'.");t.result="",setTimeout(function(){this.readyState=h.LOADING,t.dispatchEvent(new Event("load")),t.dispatchEvent(new Event("loadend"))})}p.prototype.toString=function(){return"[object File]"},h.EMPTY=0,h.LOADING=1,h.DONE=2,h.prototype.error=null,h.prototype.onabort=null,h.prototype.onerror=null,h.prototype.onload=null,h.prototype.onloadend=null,h.prototype.onloadstart=null,h.prototype.onprogress=null,h.prototype.readAsDataURL=function(t){f(this,t,"readAsDataURL"),this.result="data:"+t.type+";base64,"+a(t._buffer)},h.prototype.readAsText=function(t){f(this,t,"readAsText"),this.result=n(t._buffer)},h.prototype.readAsArrayBuffer=function(t){f(this,t,"readAsText"),this.result=t._buffer.slice()},h.prototype.abort=function(){},URL.createObjectURL=function(t){return t instanceof d?"data:"+t.type+";base64,"+a(t._buffer):i.call(URL,t)},URL.revokeObjectURL=function(t){r&&r.call(URL,t)};var g=t.XMLHttpRequest&&t.XMLHttpRequest.prototype.send;g&&(XMLHttpRequest.prototype.send=function(t){t instanceof d?(this.setRequestHeader("Content-Type",t.type),g.call(this,n(t._buffer))):g.call(this,t)}),t.FileReader=h,t.File=p,t.Blob=d}()}("undefined"!=typeof self&&self||"undefined"!=typeof window&&window||void 0!==i&&i||Function('return typeof this === "object" && this.content')()||Function("return this")());var gt,mt,vt,yt,bt,wt,St,xt,Mt,Et,Ct,At,Tt,Ot,_t,Pt=Pt||function(t){if(!(void 0===t||"undefined"!=typeof navigator&&/MSIE [1-9]\./.test(navigator.userAgent))){var e=t.document,n=function(){return t.URL||t.webkitURL||t},i=e.createElementNS("http://www.w3.org/1999/xhtml","a"),r="download"in i,o=/constructor/i.test(t.HTMLElement)||t.safari,a=/CriOS\/[\d]+/.test(navigator.userAgent),s=t.setImmediate||t.setTimeout,c=function(t){s(function(){throw t},0)},l=function(t){setTimeout(function(){"string"==typeof t?n().revokeObjectURL(t):t.remove()},4e4)},u=function(t){return/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(t.type)?new Blob([String.fromCharCode(65279),t],{type:t.type}):t},d=function(e,d,p){p||(e=u(e));var h,f=this,g="application/octet-stream"===e.type,m=function(){!function(t,e,n){for(var i=(e=[].concat(e)).length;i--;){var r=t["on"+e[i]];if("function"==typeof r)try{r.call(t,t)}catch(t){c(t)}}}(f,"writestart progress write writeend".split(" "))};if(f.readyState=f.INIT,r)return h=n().createObjectURL(e),void s(function(){var t,e;i.href=h,i.download=d,t=i,e=new MouseEvent("click"),t.dispatchEvent(e),m(),l(h),f.readyState=f.DONE},0);!function(){if((a||g&&o)&&t.FileReader){var i=new FileReader;return i.onloadend=function(){var e=a?i.result:i.result.replace(/^data:[^;]*;/,"data:attachment/file;");t.open(e,"_blank")||(t.location.href=e),e=void 0,f.readyState=f.DONE,m()},i.readAsDataURL(e),f.readyState=f.INIT}h||(h=n().createObjectURL(e)),g?t.location.href=h:t.open(h,"_blank")||(t.location.href=h),f.readyState=f.DONE,m(),l(h)}()},p=d.prototype;return"undefined"!=typeof navigator&&navigator.msSaveOrOpenBlob?function(t,e,n){return e=e||t.name||"download",n||(t=u(t)),navigator.msSaveOrOpenBlob(t,e)}:(p.abort=function(){},p.readyState=p.INIT=0,p.WRITING=1,p.DONE=2,p.error=p.onwritestart=p.onprogress=p.onwrite=p.onabort=p.onerror=p.onwriteend=null,function(t,e,n){return new d(t,e||t.name||"download",n)})}}("undefined"!=typeof self&&self||"undefined"!=typeof window&&window||void 0);function It(t){var e=0;if(71!==t[e++]||73!==t[e++]||70!==t[e++]||56!==t[e++]||56!=(t[e++]+1&253)||97!==t[e++])throw"Invalid GIF 87a/89a header.";var n=t[e++]|t[e++]<<8,i=t[e++]|t[e++]<<8,r=t[e++],o=r>>7,a=1<<1+(7&r);t[e++],t[e++];var s=null;o&&(s=e,e+=3*a);var c=!0,l=[],u=0,d=null,p=0,h=null;for(this.width=n,this.height=i;c&&e<t.length;)switch(t[e++]){case 33:switch(t[e++]){case 255:if(11!==t[e]||78==t[e+1]&&69==t[e+2]&&84==t[e+3]&&83==t[e+4]&&67==t[e+5]&&65==t[e+6]&&80==t[e+7]&&69==t[e+8]&&50==t[e+9]&&46==t[e+10]&&48==t[e+11]&&3==t[e+12]&&1==t[e+13]&&0==t[e+16])e+=14,h=t[e++]|t[e++]<<8,e++;else for(e+=12;0!==(E=t[e++]);)e+=E;break;case 249:if(4!==t[e++]||0!==t[e+4])throw"Invalid graphics extension block.";var f=t[e++];u=t[e++]|t[e++]<<8,d=t[e++],0==(1&f)&&(d=null),p=f>>2&7,e++;break;case 254:for(;0!==(E=t[e++]);)e+=E;break;default:throw"Unknown graphic control label: 0x"+t[e-1].toString(16)}break;case 44:var g=t[e++]|t[e++]<<8,m=t[e++]|t[e++]<<8,v=t[e++]|t[e++]<<8,y=t[e++]|t[e++]<<8,b=t[e++],w=b>>6&1,S=s,x=!1;b>>7&&(x=!0,S=e,e+=3*(1<<1+(7&b)));var M=e;for(e++;;){var E;if(0===(E=t[e++]))break;e+=E}l.push({x:g,y:m,width:v,height:y,has_local_palette:x,palette_offset:S,data_offset:M,data_length:e-M,transparent_index:d,interlaced:!!w,delay:u,disposal:p});break;case 59:c=!1;break;default:throw"Unknown gif block: 0x"+t[e-1].toString(16)}this.numFrames=function(){return l.length},this.loopCount=function(){return h},this.frameInfo=function(t){if(t<0||t>=l.length)throw"Frame index out of range.";return l[t]},this.decodeAndBlitFrameBGRA=function(e,i){var r=this.frameInfo(e),o=r.width*r.height,a=new Uint8Array(o);kt(t,r.data_offset,a,o);var s=r.palette_offset,c=r.transparent_index;null===c&&(c=256);var l=r.width,u=n-l,d=l,p=4*(r.y*n+r.x),h=4*((r.y+r.height)*n+r.x),f=p,g=4*u;!0===r.interlaced&&(g+=4*(l+u)*7);for(var m=8,v=0,y=a.length;v<y;++v){var b=a[v];if(0===d&&(d=l,h<=(f+=g)&&(g=u+4*(l+u)*(m-1),f=p+(l+u)*(m<<1),m>>=1)),b===c)f+=4;else{var w=t[s+3*b],S=t[s+3*b+1],x=t[s+3*b+2];i[f++]=x,i[f++]=S,i[f++]=w,i[f++]=255}--d}},this.decodeAndBlitFrameRGBA=function(e,i){var r=this.frameInfo(e),o=r.width*r.height,a=new Uint8Array(o);kt(t,r.data_offset,a,o);var s=r.palette_offset,c=r.transparent_index;null===c&&(c=256);var l=r.width,u=n-l,d=l,p=4*(r.y*n+r.x),h=4*((r.y+r.height)*n+r.x),f=p,g=4*u;!0===r.interlaced&&(g+=4*(l+u)*7);for(var m=8,v=0,y=a.length;v<y;++v){var b=a[v];if(0===d&&(d=l,h<=(f+=g)&&(g=u+4*(l+u)*(m-1),f=p+(l+u)*(m<<1),m>>=1)),b===c)f+=4;else{var w=t[s+3*b],S=t[s+3*b+1],x=t[s+3*b+2];i[f++]=w,i[f++]=S,i[f++]=x,i[f++]=255}--d}}}function kt(t,e,n,i){for(var r=t[e++],o=1<<r,a=o+1,s=a+1,c=r+1,l=(1<<c)-1,u=0,d=0,p=0,h=t[e++],f=new Int32Array(4096),g=null;;){for(;u<16&&0!==h;)d|=t[e++]<<u,u+=8,1===h?h=t[e++]:--h;if(u<c)break;var m=d&l;if(d>>=c,u-=c,m!==o){if(m===a)break;for(var v=m<s?m:g,y=0,b=v;o<b;)b=f[b]>>8,++y;var w=b;if(i<p+y+(v!==m?1:0))return void console.log("Warning, gif stream longer than expected.");n[p++]=w;var S=p+=y;for(v!==m&&(n[p++]=w),b=v;y--;)b=f[b],n[--S]=255&b,b>>=8;null!==g&&s<4096&&(f[s++]=g<<8|w,l+1<=s&&c<12&&(++c,l=l<<1|1)),g=m}else s=a+1,l=(1<<(c=r+1))-1,g=null}return p!==i&&console.log("Warning, gif stream shorter than expected."),n}try{e.GifWriter=function(t,e,n,i){var r=0,o=void 0===(i=void 0===i?{}:i).loop?null:i.loop,a=void 0===i.palette?null:i.palette;if(e<=0||n<=0||65535<e||65535<n)throw"Width/Height invalid.";function s(t){var e=t.length;if(e<2||256<e||e&e-1)throw"Invalid code/color length, must be power of 2 and 2 .. 256.";return e}t[r++]=71,t[r++]=73,t[r++]=70,t[r++]=56,t[r++]=57,t[r++]=97;var c=0,l=0;if(null!==a){for(var u=s(a);u>>=1;)++c;if(u=1<<c,--c,void 0!==i.background){if(u<=(l=i.background))throw"Background index out of range.";if(0===l)throw"Background index explicitly passed as 0."}}if(t[r++]=255&e,t[r++]=e>>8&255,t[r++]=255&n,t[r++]=n>>8&255,t[r++]=(null!==a?128:0)|c,t[r++]=l,t[r++]=0,null!==a)for(var d=0,p=a.length;d<p;++d){var h=a[d];t[r++]=h>>16&255,t[r++]=h>>8&255,t[r++]=255&h}if(null!==o){if(o<0||65535<o)throw"Loop count invalid.";t[r++]=33,t[r++]=255,t[r++]=11,t[r++]=78,t[r++]=69,t[r++]=84,t[r++]=83,t[r++]=67,t[r++]=65,t[r++]=80,t[r++]=69,t[r++]=50,t[r++]=46,t[r++]=48,t[r++]=3,t[r++]=1,t[r++]=255&o,t[r++]=o>>8&255,t[r++]=0}var f=!1;this.addFrame=function(e,n,i,o,c,l){if(!0===f&&(--r,f=!1),l=void 0===l?{}:l,e<0||n<0||65535<e||65535<n)throw"x/y invalid.";if(i<=0||o<=0||65535<i||65535<o)throw"Width/Height invalid.";if(c.length<i*o)throw"Not enough pixels for the frame size.";var u=!0,d=l.palette;if(null==d&&(u=!1,d=a),null==d)throw"Must supply either a local or global palette.";for(var p=s(d),h=0;p>>=1;)++h;p=1<<h;var g=void 0===l.delay?0:l.delay,m=void 0===l.disposal?0:l.disposal;if(m<0||3<m)throw"Disposal out of range.";var v=!1,y=0;if(void 0!==l.transparent&&null!==l.transparent&&(v=!0,(y=l.transparent)<0||p<=y))throw"Transparent color index.";if((0!==m||v||0!==g)&&(t[r++]=33,t[r++]=249,t[r++]=4,t[r++]=m<<2|(!0===v?1:0),t[r++]=255&g,t[r++]=g>>8&255,t[r++]=y,t[r++]=0),t[r++]=44,t[r++]=255&e,t[r++]=e>>8&255,t[r++]=255&n,t[r++]=n>>8&255,t[r++]=255&i,t[r++]=i>>8&255,t[r++]=255&o,t[r++]=o>>8&255,t[r++]=!0===u?128|h-1:0,!0===u)for(var b=0,w=d.length;b<w;++b){var S=d[b];t[r++]=S>>16&255,t[r++]=S>>8&255,t[r++]=255&S}r=function(t,e,n,i){t[e++]=n;var r=e++,o=1<<n,a=o-1,s=o+1,c=s+1,l=n+1,u=0,d=0;function p(n){for(;n<=u;)t[e++]=255&d,d>>=8,u-=8,e===r+256&&(t[r]=255,r=e++)}function h(t){d|=t<<u,u+=l,p(8)}var f=i[0]&a,g={};h(o);for(var m=1,v=i.length;m<v;++m){var y=i[m]&a,b=f<<8|y,w=g[b];if(void 0===w){for(d|=f<<u,u+=l;8<=u;)t[e++]=255&d,d>>=8,u-=8,e===r+256&&(t[r]=255,r=e++);4096===c?(h(o),c=s+1,l=n+1,g={}):(1<<l<=c&&++l,g[b]=c++),f=y}else f=w}return h(f),h(s),p(1),r+1===e?t[r]=0:(t[r]=e-r-1,t[e++]=0),e}(t,r,h<2?2:h,c)},this.end=function(){return!1===f&&(t[r++]=59,f=!0),r}},e.GifReader=It}catch(a){}function Dt(t){var e,n,i,r,o,a=Math.floor,s=new Array(64),c=new Array(64),l=new Array(64),u=new Array(64),d=new Array(65535),p=new Array(65535),h=new Array(64),f=new Array(64),g=[],m=0,v=7,y=new Array(64),b=new Array(64),w=new Array(64),S=new Array(256),x=new Array(2048),M=[0,1,5,6,14,15,27,28,2,4,7,13,16,26,29,42,3,8,12,17,25,30,41,43,9,11,18,24,31,40,44,53,10,19,23,32,39,45,52,54,20,22,33,38,46,51,55,60,21,34,37,47,50,56,59,61,35,36,48,49,57,58,62,63],E=[0,0,1,5,1,1,1,1,1,1,0,0,0,0,0,0,0],C=[0,1,2,3,4,5,6,7,8,9,10,11],A=[0,0,2,1,3,3,2,4,3,5,5,4,4,0,0,1,125],T=[1,2,3,0,4,17,5,18,33,49,65,6,19,81,97,7,34,113,20,50,129,145,161,8,35,66,177,193,21,82,209,240,36,51,98,114,130,9,10,22,23,24,25,26,37,38,39,40,41,42,52,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,225,226,227,228,229,230,231,232,233,234,241,242,243,244,245,246,247,248,249,250],O=[0,0,3,1,1,1,1,1,1,1,1,1,0,0,0,0,0],_=[0,1,2,3,4,5,6,7,8,9,10,11],P=[0,0,2,1,2,4,4,3,4,7,5,4,4,0,1,2,119],I=[0,1,2,3,17,4,5,33,49,6,18,65,81,7,97,113,19,34,50,129,8,20,66,145,161,177,193,9,35,51,82,240,21,98,114,209,10,22,36,52,225,37,241,23,24,25,26,38,39,40,41,42,53,54,55,56,57,58,67,68,69,70,71,72,73,74,83,84,85,86,87,88,89,90,99,100,101,102,103,104,105,106,115,116,117,118,119,120,121,122,130,131,132,133,134,135,136,137,138,146,147,148,149,150,151,152,153,154,162,163,164,165,166,167,168,169,170,178,179,180,181,182,183,184,185,186,194,195,196,197,198,199,200,201,202,210,211,212,213,214,215,216,217,218,226,227,228,229,230,231,232,233,234,242,243,244,245,246,247,248,249,250];function k(t,e){for(var n=0,i=0,r=new Array,o=1;o<=16;o++){for(var a=1;a<=t[o];a++)r[e[i]]=[],r[e[i]][0]=n,r[e[i]][1]=o,i++,n++;n*=2}return r}function D(t){for(var e=t[0],n=t[1]-1;0<=n;)e&1<<n&&(m|=1<<v),n--,--v<0&&(255==m?(R(255),R(0)):R(m),v=7,m=0)}function R(t){g.push(t)}function L(t){R(t>>8&255),R(255&t)}function N(t,e,n,i,r){for(var o,a=r[0],s=r[240],c=function(t,e){var n,i,r,o,a,s,c,l,u,d,p=0;for(u=0;u<8;++u){n=t[p],i=t[p+1],r=t[p+2],o=t[p+3],a=t[p+4],s=t[p+5],c=t[p+6];var f=n+(l=t[p+7]),g=n-l,m=i+c,v=i-c,y=r+s,b=r-s,w=o+a,S=o-a,x=f+w,M=f-w,E=m+y,C=m-y;t[p]=x+E,t[p+4]=x-E;var A=.707106781*(C+M);t[p+2]=M+A,t[p+6]=M-A;var T=.382683433*((x=S+b)-(C=v+g)),O=.5411961*x+T,_=1.306562965*C+T,P=.707106781*(E=b+v),I=g+P,k=g-P;t[p+5]=k+O,t[p+3]=k-O,t[p+1]=I+_,t[p+7]=I-_,p+=8}for(u=p=0;u<8;++u){n=t[p],i=t[p+8],r=t[p+16],o=t[p+24],a=t[p+32],s=t[p+40],c=t[p+48];var D=n+(l=t[p+56]),R=n-l,L=i+c,N=i-c,j=r+s,V=r-s,F=o+a,U=o-a,B=D+F,z=D-F,G=L+j,H=L-j;t[p]=B+G,t[p+32]=B-G;var W=.707106781*(H+z);t[p+16]=z+W,t[p+48]=z-W;var q=.382683433*((B=U+V)-(H=N+R)),K=.5411961*B+q,X=1.306562965*H+q,Y=.707106781*(G=V+N),Z=R+Y,J=R-Y;t[p+40]=J+K,t[p+24]=J-K,t[p+8]=Z+X,t[p+56]=Z-X,p++}for(u=0;u<64;++u)d=t[u]*e[u],h[u]=0<d?d+.5|0:d-.5|0;return h}(t,e),l=0;l<64;++l)f[M[l]]=c[l];var u=f[0]-n;n=f[0],0==u?D(i[0]):(D(i[p[o=32767+u]]),D(d[o]));for(var g=63;0<g&&0==f[g];g--);if(0==g)return D(a),n;for(var m,v=1;v<=g;){for(var y=v;0==f[v]&&v<=g;++v);var b=v-y;if(16<=b){m=b>>4;for(var w=1;w<=m;++w)D(s);b&=15}o=32767+f[v],D(r[(b<<4)+p[o]]),D(d[o]),v++}return 63!=g&&D(a),n}function j(t){t<=0&&(t=1),100<t&&(t=100),o!=t&&(function(t){for(var e=[16,11,10,16,24,40,51,61,12,12,14,19,26,58,60,55,14,13,16,24,40,57,69,56,14,17,22,29,51,87,80,62,18,22,37,56,68,109,103,77,24,35,55,64,81,104,113,92,49,64,78,87,103,121,120,101,72,92,95,98,112,100,103,99],n=0;n<64;n++){var i=a((e[n]*t+50)/100);i<1?i=1:255<i&&(i=255),s[M[n]]=i}for(var r=[17,18,24,47,99,99,99,99,18,21,26,66,99,99,99,99,24,26,56,99,99,99,99,99,47,66,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99],o=0;o<64;o++){var d=a((r[o]*t+50)/100);d<1?d=1:255<d&&(d=255),c[M[o]]=d}for(var p=[1,1.387039845,1.306562965,1.175875602,1,.785694958,.5411961,.275899379],h=0,f=0;f<8;f++)for(var g=0;g<8;g++)l[h]=1/(s[M[h]]*p[f]*p[g]*8),u[h]=1/(c[M[h]]*p[f]*p[g]*8),h++}(t<50?Math.floor(5e3/t):Math.floor(200-2*t)),o=t)}this.encode=function(t,o){var a,d;(new Date).getTime(),o&&j(o),g=new Array,m=0,v=7,L(65496),L(65504),L(16),R(74),R(70),R(73),R(70),R(0),R(1),R(1),R(0),L(1),L(1),R(0),R(0),function(){L(65499),L(132),R(0);for(var t=0;t<64;t++)R(s[t]);R(1);for(var e=0;e<64;e++)R(c[e])}(),a=t.width,d=t.height,L(65472),L(17),R(8),L(d),L(a),R(3),R(1),R(17),R(0),R(2),R(17),R(1),R(3),R(17),R(1),function(){L(65476),L(418),R(0);for(var t=0;t<16;t++)R(E[t+1]);for(var e=0;e<=11;e++)R(C[e]);R(16);for(var n=0;n<16;n++)R(A[n+1]);for(var i=0;i<=161;i++)R(T[i]);R(1);for(var r=0;r<16;r++)R(O[r+1]);for(var o=0;o<=11;o++)R(_[o]);R(17);for(var a=0;a<16;a++)R(P[a+1]);for(var s=0;s<=161;s++)R(I[s])}(),L(65498),L(12),R(3),R(1),R(0),R(2),R(17),R(3),R(17),R(0),R(63),R(0);var p=0,h=0,f=0;m=0,v=7,this.encode.displayName="_encode_";for(var S,M,k,V,F,U,B,z,G,H=t.data,W=t.width,q=t.height,K=4*W,X=0;X<q;){for(S=0;S<K;){for(U=F=K*X+S,B=-1,G=z=0;G<64;G++)U=F+(z=G>>3)*K+(B=4*(7&G)),q<=X+z&&(U-=K*(X+1+z-q)),K<=S+B&&(U-=S+B-K+4),M=H[U++],k=H[U++],V=H[U++],y[G]=(x[M]+x[k+256>>0]+x[V+512>>0]>>16)-128,b[G]=(x[M+768>>0]+x[k+1024>>0]+x[V+1280>>0]>>16)-128,w[G]=(x[M+1280>>0]+x[k+1536>>0]+x[V+1792>>0]>>16)-128;p=N(y,l,p,e,i),h=N(b,u,h,n,r),f=N(w,u,f,n,r),S+=32}X+=8}if(0<=v){var Y=[];Y[1]=v+1,Y[0]=(1<<v+1)-1,D(Y)}return L(65497),new Uint8Array(g)},(new Date).getTime(),t||(t=50),function(){for(var t=String.fromCharCode,e=0;e<256;e++)S[e]=t(e)}(),e=k(E,C),n=k(O,_),i=k(A,T),r=k(P,I),function(){for(var t=1,e=2,n=1;n<=15;n++){for(var i=t;i<e;i++)p[32767+i]=n,d[32767+i]=[],d[32767+i][1]=n,d[32767+i][0]=i;for(var r=-(e-1);r<=-t;r++)p[32767+r]=n,d[32767+r]=[],d[32767+r][1]=n,d[32767+r][0]=e-1+r;t<<=1,e<<=1}}(),function(){for(var t=0;t<256;t++)x[t]=19595*t,x[t+256>>0]=38470*t,x[t+512>>0]=7471*t+32768,x[t+768>>0]=-11059*t,x[t+1024>>0]=-21709*t,x[t+1280>>0]=32768*t+8421375,x[t+1536>>0]=-27439*t,x[t+1792>>0]=-5329*t}(),j(t),(new Date).getTime()}function Rt(t,e){if(this.pos=0,this.buffer=t,this.datav=new DataView(t.buffer),this.is_with_alpha=!!e,this.bottom_up=!0,this.flag=String.fromCharCode(this.buffer[0])+String.fromCharCode(this.buffer[1]),this.pos+=2,-1===["BM","BA","CI","CP","IC","PT"].indexOf(this.flag))throw new Error("Invalid BMP File");this.parseHeader(),this.parseBGR()}window.tmp=It,ft.API.adler32cs=(wt="function"==typeof ArrayBuffer&&"function"==typeof Uint8Array,St=null,xt=function(){if(!wt)return function(){return!1};try{var t={};"function"==typeof t.Buffer&&(St=t.Buffer)}catch(t){}return function(t){return t instanceof ArrayBuffer||null!==St&&t instanceof St}}(),Mt=null!==St?function(t){return new St(t,"utf8").toString("binary")}:function(t){return unescape(encodeURIComponent(t))},Et=function(t,e){for(var n=65535&t,i=t>>>16,r=0,o=e.length;r<o;r++)i=(i+(n=(n+(255&e.charCodeAt(r)))%65521))%65521;return(i<<16|n)>>>0},Ct=function(t,e){for(var n=65535&t,i=t>>>16,r=0,o=e.length;r<o;r++)i=(i+(n=(n+e[r])%65521))%65521;return(i<<16|n)>>>0},Tt=(At={}).Adler32=(((bt=(yt=function(t){if(!(this instanceof yt))throw new TypeError("Constructor cannot called be as a function.");if(!isFinite(t=null==t?1:+t))throw new Error("First arguments needs to be a finite number.");this.checksum=t>>>0}).prototype={}).constructor=yt).from=((gt=function(t){if(!(this instanceof yt))throw new TypeError("Constructor cannot called be as a function.");if(null==t)throw new Error("First argument needs to be a string.");this.checksum=Et(1,t.toString())}).prototype=bt,gt),yt.fromUtf8=((mt=function(t){if(!(this instanceof yt))throw new TypeError("Constructor cannot called be as a function.");if(null==t)throw new Error("First argument needs to be a string.");var e=Mt(t.toString());this.checksum=Et(1,e)}).prototype=bt,mt),wt&&(yt.fromBuffer=((vt=function(t){if(!(this instanceof yt))throw new TypeError("Constructor cannot called be as a function.");if(!xt(t))throw new Error("First argument needs to be ArrayBuffer.");var e=new Uint8Array(t);return this.checksum=Ct(1,e)}).prototype=bt,vt)),bt.update=function(t){if(null==t)throw new Error("First argument needs to be a string.");return t=t.toString(),this.checksum=Et(this.checksum,t)},bt.updateUtf8=function(t){if(null==t)throw new Error("First argument needs to be a string.");var e=Mt(t.toString());return this.checksum=Et(this.checksum,e)},wt&&(bt.updateBuffer=function(t){if(!xt(t))throw new Error("First argument needs to be ArrayBuffer.");var e=new Uint8Array(t);return this.checksum=Ct(this.checksum,e)}),bt.clone=function(){return new Tt(this.checksum)},yt),At.from=function(t){if(null==t)throw new Error("First argument needs to be a string.");return Et(1,t.toString())},At.fromUtf8=function(t){if(null==t)throw new Error("First argument needs to be a string.");var e=Mt(t.toString());return Et(1,e)},wt&&(At.fromBuffer=function(t){if(!xt(t))throw new Error("First argument need to be ArrayBuffer.");var e=new Uint8Array(t);return Ct(1,e)}),At),function(t){t.__bidiEngine__=t.prototype.__bidiEngine__=function(t){var n,i,r,o,a,s,c,l=e,u=[[0,3,0,1,0,0,0],[0,3,0,1,2,2,0],[0,3,0,17,2,0,1],[0,3,5,5,4,1,0],[0,3,21,21,4,0,1],[0,3,5,5,4,2,0]],d=[[2,0,1,1,0,1,0],[2,0,1,1,0,2,0],[2,0,2,1,3,2,0],[2,0,2,33,3,1,1]],p={L:0,R:1,EN:2,AN:3,N:4,B:5,S:6},h={0:0,5:1,6:2,7:3,32:4,251:5,254:6,255:7},f=["(",")","(","<",">","<","[","]","[","{","}","{","«","»","«","‹","›","‹","⁅","⁆","⁅","⁽","⁾","⁽","₍","₎","₍","≤","≥","≤","〈","〉","〈","﹙","﹚","﹙","﹛","﹜","﹛","﹝","﹞","﹝","﹤","﹥","﹤"],g=new RegExp(/^([1-4|9]|1[0-9]|2[0-9]|3[0168]|4[04589]|5[012]|7[78]|159|16[0-9]|17[0-2]|21[569]|22[03489]|250)$/),m=!1,v=0;this.__bidiEngine__={};var y=function(t){var e=t.charCodeAt(),n=e>>8,i=h[n];return void 0!==i?l[256*i+(255&e)]:252===n||253===n?"AL":g.test(n)?"L":8===n?"R":"N"},b=function(t){for(var e,n=0;n<t.length;n++){if("L"===(e=y(t.charAt(n))))return!1;if("R"===e)return!0}return!1},w=function(t,e,a,s){var c,l,u,d,p=e[s];switch(p){case"L":case"R":m=!1;break;case"N":case"AN":break;case"EN":m&&(p="AN");break;case"AL":m=!0,p="R";break;case"WS":p="N";break;case"CS":s<1||s+1>=e.length||"EN"!==(c=a[s-1])&&"AN"!==c||"EN"!==(l=e[s+1])&&"AN"!==l?p="N":m&&(l="AN"),p=l===c?l:"N";break;case"ES":p="EN"===(c=0<s?a[s-1]:"B")&&s+1<e.length&&"EN"===e[s+1]?"EN":"N";break;case"ET":if(0<s&&"EN"===a[s-1]){p="EN";break}if(m){p="N";break}for(u=s+1,d=e.length;u<d&&"ET"===e[u];)u++;p=u<d&&"EN"===e[u]?"EN":"N";break;case"NSM":if(r&&!o){for(d=e.length,u=s+1;u<d&&"NSM"===e[u];)u++;if(u<d){var h=t[s],f=1425<=h&&h<=2303||64286===h;if(c=e[u],f&&("R"===c||"AL"===c)){p="R";break}}}p=s<1||"B"===(c=e[s-1])?"N":a[s-1];break;case"B":n=!(m=!1),p=v;break;case"S":i=!0,p="N";break;case"LRE":case"RLE":case"LRO":case"RLO":case"PDF":m=!1;break;case"BN":p="N"}return p},S=function(t,e,n){var i=t.split("");return n&&x(i,n,{hiLevel:v}),i.reverse(),e&&e.reverse(),i.join("")},x=function(t,e,r){var o,a,s,c,l,h=-1,f=t.length,g=0,b=[],S=v?d:u,x=[];for(i=n=m=!1,a=0;a<f;a++)x[a]=y(t[a]);for(s=0;s<f;s++){if(l=g,b[s]=w(t,x,b,s),o=240&(g=S[l][p[b[s]]]),g&=15,e[s]=c=S[g][5],0<o)if(16===o){for(a=h;a<s;a++)e[a]=1;h=-1}else h=-1;if(S[g][6])-1===h&&(h=s);else if(-1<h){for(a=h;a<s;a++)e[a]=c;h=-1}"B"===x[s]&&(e[s]=0),r.hiLevel|=c}i&&function(t,e,n){for(var i=0;i<n;i++)if("S"===t[i]){e[i]=v;for(var r=i-1;0<=r&&"WS"===t[r];r--)e[r]=v}}(x,e,f)},M=function(t,e,i,r,o){if(!(o.hiLevel<t)){if(1===t&&1===v&&!n)return e.reverse(),void(i&&i.reverse());for(var a,s,c,l,u=e.length,d=0;d<u;){if(r[d]>=t){for(c=d+1;c<u&&r[c]>=t;)c++;for(l=d,s=c-1;l<s;l++,s--)a=e[l],e[l]=e[s],e[s]=a,i&&(a=i[l],i[l]=i[s],i[s]=a);d=c}d++}}},E=function(t,e,n){var i=t.split(""),r={hiLevel:v};return n||(n=[]),x(i,n,r),function(t,e,n){if(0!==n.hiLevel&&c)for(var i,r=0;r<t.length;r++)1===e[r]&&0<=(i=f.indexOf(t[r]))&&(t[r]=f[i+1])}(i,n,r),M(2,i,e,n,r),M(1,i,e,n,r),i.join("")};return this.__bidiEngine__.doBidiReorder=function(t,e,n){if(function(t,e){if(e)for(var n=0;n<t.length;n++)e[n]=n;void 0===o&&(o=b(t)),void 0===s&&(s=b(t))}(t,e),r||!a||s)if(r&&a&&o^s)v=o?1:0,t=S(t,e,n);else if(!r&&a&&s)v=o?1:0,t=E(t,e,n),t=S(t,e);else if(!r||o||a||s){if(r&&!a&&o^s)t=S(t,e),t=o?(v=0,E(t,e,n)):(v=1,t=E(t,e,n),S(t,e));else if(r&&o&&!a&&s)v=1,t=E(t,e,n),t=S(t,e);else if(!r&&!a&&o^s){var i=c;o?(v=1,t=E(t,e,n),v=0,c=!1,t=E(t,e,n),c=i):(v=0,t=E(t,e,n),t=S(t,e),c=!(v=1),t=E(t,e,n),c=i,t=S(t,e))}}else v=0,t=E(t,e,n);else v=o?1:0,t=E(t,e,n);return t},this.__bidiEngine__.setOptions=function(t){t&&(r=t.isInputVisual,a=t.isOutputVisual,o=t.isInputRtl,s=t.isOutputRtl,c=t.isSymmetricSwapping)},this.__bidiEngine__.setOptions(t),this.__bidiEngine__};var e=["BN","BN","BN","BN","BN","BN","BN","BN","BN","S","B","S","WS","B","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","B","B","B","S","WS","N","N","ET","ET","ET","N","N","N","N","N","ES","CS","ES","CS","CS","EN","EN","EN","EN","EN","EN","EN","EN","EN","EN","CS","N","N","N","N","N","N","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","N","N","N","N","N","N","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","N","N","N","N","BN","BN","BN","BN","BN","BN","B","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","CS","N","ET","ET","ET","ET","N","N","N","N","L","N","N","BN","N","N","ET","ET","EN","EN","N","L","N","N","N","EN","L","N","N","N","N","N","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","N","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","N","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","N","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","N","N","L","L","L","L","L","L","L","N","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","N","L","N","N","N","N","N","ET","N","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","R","NSM","R","NSM","NSM","R","NSM","NSM","R","NSM","N","N","N","N","N","N","N","N","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","N","N","N","N","N","R","R","R","R","R","N","N","N","N","N","N","N","N","N","N","N","AN","AN","AN","AN","AN","AN","N","N","AL","ET","ET","AL","CS","AL","N","N","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","AL","AL","N","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","AN","AN","AN","AN","AN","AN","AN","AN","AN","AN","ET","AN","AN","AL","AL","AL","NSM","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","NSM","NSM","NSM","NSM","NSM","NSM","NSM","AN","N","NSM","NSM","NSM","NSM","NSM","NSM","AL","AL","NSM","NSM","N","NSM","NSM","NSM","NSM","AL","AL","EN","EN","EN","EN","EN","EN","EN","EN","EN","EN","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","N","AL","AL","NSM","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","N","N","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","AL","N","N","N","N","N","N","N","N","N","N","N","N","N","N","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","R","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","R","R","N","N","N","N","R","N","N","N","N","N","WS","WS","WS","WS","WS","WS","WS","WS","WS","WS","WS","BN","BN","BN","L","R","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","WS","B","LRE","RLE","PDF","LRO","RLO","CS","ET","ET","ET","ET","ET","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","CS","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","WS","BN","BN","BN","BN","BN","N","LRI","RLI","FSI","PDI","BN","BN","BN","BN","BN","BN","EN","L","N","N","EN","EN","EN","EN","EN","EN","ES","ES","N","N","N","L","EN","EN","EN","EN","EN","EN","EN","EN","EN","EN","ES","ES","N","N","N","N","L","L","L","L","L","L","L","L","L","L","L","L","L","N","N","N","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","ET","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","L","L","L","L","L","L","L","N","N","N","N","N","N","N","N","N","N","N","N","L","L","L","L","L","N","N","N","N","N","R","NSM","R","R","R","R","R","R","R","R","R","R","ES","R","R","R","R","R","R","R","R","R","R","R","R","R","N","R","R","R","R","R","N","R","N","R","R","N","R","R","N","R","R","R","R","R","R","R","R","R","R","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","CS","N","CS","N","N","CS","N","N","N","N","N","N","N","N","N","ET","N","N","ES","ES","N","N","N","N","N","ET","ET","N","N","N","N","N","AL","AL","AL","AL","AL","N","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","N","N","BN","N","N","N","ET","ET","ET","N","N","N","N","N","ES","CS","ES","CS","CS","EN","EN","EN","EN","EN","EN","EN","EN","EN","EN","CS","N","N","N","N","N","N","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","N","N","N","N","N","N","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","N","N","N","N","N","N","N","N","N","N","N","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","N","N","N","L","L","L","L","L","L","N","N","L","L","L","L","L","L","N","N","L","L","L","L","L","L","N","N","L","L","L","N","N","N","ET","ET","N","N","N","ET","ET","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N","N"],n=new t.__bidiEngine__({isInputVisual:!0});t.API.events.push(["postProcessText",function(t){var e=t.text,i=(t.x,t.y,t.options||{}),r=(t.mutex,i.lang,[]);if("[object Array]"===Object.prototype.toString.call(e)){var o=0;for(r=[],o=0;o<e.length;o+=1)"[object Array]"===Object.prototype.toString.call(e[o])?r.push([n.doBidiReorder(e[o][0]),e[o][1],e[o][2]]):r.push([n.doBidiReorder(e[o])]);t.text=r}else t.text=n.doBidiReorder(e)}])}(ft),window.tmp=Dt,Rt.prototype.parseHeader=function(){if(this.fileSize=this.datav.getUint32(this.pos,!0),this.pos+=4,this.reserved=this.datav.getUint32(this.pos,!0),this.pos+=4,this.offset=this.datav.getUint32(this.pos,!0),this.pos+=4,this.headerSize=this.datav.getUint32(this.pos,!0),this.pos+=4,this.width=this.datav.getUint32(this.pos,!0),this.pos+=4,this.height=this.datav.getInt32(this.pos,!0),this.pos+=4,this.planes=this.datav.getUint16(this.pos,!0),this.pos+=2,this.bitPP=this.datav.getUint16(this.pos,!0),this.pos+=2,this.compress=this.datav.getUint32(this.pos,!0),this.pos+=4,this.rawSize=this.datav.getUint32(this.pos,!0),this.pos+=4,this.hr=this.datav.getUint32(this.pos,!0),this.pos+=4,this.vr=this.datav.getUint32(this.pos,!0),this.pos+=4,this.colors=this.datav.getUint32(this.pos,!0),this.pos+=4,this.importantColors=this.datav.getUint32(this.pos,!0),this.pos+=4,16===this.bitPP&&this.is_with_alpha&&(this.bitPP=15),this.bitPP<15){var t=0===this.colors?1<<this.bitPP:this.colors;this.palette=new Array(t);for(var e=0;e<t;e++){var n=this.datav.getUint8(this.pos++,!0),i=this.datav.getUint8(this.pos++,!0),r=this.datav.getUint8(this.pos++,!0),o=this.datav.getUint8(this.pos++,!0);this.palette[e]={red:r,green:i,blue:n,quad:o}}}this.height<0&&(this.height*=-1,this.bottom_up=!1)},Rt.prototype.parseBGR=function(){this.pos=this.offset;try{var t="bit"+this.bitPP,e=this.width*this.height*4;this.data=new Uint8Array(e),this[t]()}catch(t){console.log("bit decode error:"+t)}},Rt.prototype.bit1=function(){var t=Math.ceil(this.width/8),e=t%4,n=0<=this.height?this.height-1:-this.height;for(n=this.height-1;0<=n;n--){for(var i=this.bottom_up?n:this.height-1-n,r=0;r<t;r++)for(var o=this.datav.getUint8(this.pos++,!0),a=i*this.width*4+8*r*4,s=0;s<8&&8*r+s<this.width;s++){var c=this.palette[o>>7-s&1];this.data[a+4*s]=c.blue,this.data[a+4*s+1]=c.green,this.data[a+4*s+2]=c.red,this.data[a+4*s+3]=255}0!=e&&(this.pos+=4-e)}},Rt.prototype.bit4=function(){for(var t=Math.ceil(this.width/2),e=t%4,n=this.height-1;0<=n;n--){for(var i=this.bottom_up?n:this.height-1-n,r=0;r<t;r++){var o=this.datav.getUint8(this.pos++,!0),a=i*this.width*4+2*r*4,s=o>>4,c=15&o,l=this.palette[s];if(this.data[a]=l.blue,this.data[a+1]=l.green,this.data[a+2]=l.red,this.data[a+3]=255,2*r+1>=this.width)break;l=this.palette[c],this.data[a+4]=l.blue,this.data[a+4+1]=l.green,this.data[a+4+2]=l.red,this.data[a+4+3]=255}0!=e&&(this.pos+=4-e)}},Rt.prototype.bit8=function(){for(var t=this.width%4,e=this.height-1;0<=e;e--){for(var n=this.bottom_up?e:this.height-1-e,i=0;i<this.width;i++){var r=this.datav.getUint8(this.pos++,!0),o=n*this.width*4+4*i;if(r<this.palette.length){var a=this.palette[r];this.data[o]=a.red,this.data[o+1]=a.green,this.data[o+2]=a.blue,this.data[o+3]=255}else this.data[o]=255,this.data[o+1]=255,this.data[o+2]=255,this.data[o+3]=255}0!=t&&(this.pos+=4-t)}},Rt.prototype.bit15=function(){for(var t=this.width%3,e=parseInt("11111",2),n=this.height-1;0<=n;n--){for(var i=this.bottom_up?n:this.height-1-n,r=0;r<this.width;r++){var o=this.datav.getUint16(this.pos,!0);this.pos+=2;var a=(o&e)/e*255|0,s=(o>>5&e)/e*255|0,c=(o>>10&e)/e*255|0,l=o>>15?255:0,u=i*this.width*4+4*r;this.data[u]=c,this.data[u+1]=s,this.data[u+2]=a,this.data[u+3]=l}this.pos+=t}},Rt.prototype.bit16=function(){for(var t=this.width%3,e=parseInt("11111",2),n=parseInt("111111",2),i=this.height-1;0<=i;i--){for(var r=this.bottom_up?i:this.height-1-i,o=0;o<this.width;o++){var a=this.datav.getUint16(this.pos,!0);this.pos+=2;var s=(a&e)/e*255|0,c=(a>>5&n)/n*255|0,l=(a>>11)/e*255|0,u=r*this.width*4+4*o;this.data[u]=l,this.data[u+1]=c,this.data[u+2]=s,this.data[u+3]=255}this.pos+=t}},Rt.prototype.bit24=function(){for(var t=this.height-1;0<=t;t--){for(var e=this.bottom_up?t:this.height-1-t,n=0;n<this.width;n++){var i=this.datav.getUint8(this.pos++,!0),r=this.datav.getUint8(this.pos++,!0),o=this.datav.getUint8(this.pos++,!0),a=e*this.width*4+4*n;this.data[a]=o,this.data[a+1]=r,this.data[a+2]=i,this.data[a+3]=255}this.pos+=this.width%4}},Rt.prototype.bit32=function(){for(var t=this.height-1;0<=t;t--)for(var e=this.bottom_up?t:this.height-1-t,n=0;n<this.width;n++){var i=this.datav.getUint8(this.pos++,!0),r=this.datav.getUint8(this.pos++,!0),o=this.datav.getUint8(this.pos++,!0),a=this.datav.getUint8(this.pos++,!0),s=e*this.width*4+4*n;this.data[s]=o,this.data[s+1]=r,this.data[s+2]=i,this.data[s+3]=a}},Rt.prototype.getData=function(){return this.data},window.tmp=Rt,function(t){var e=[0,1,2,3,4,4,5,5,6,6,6,6,7,7,7,7,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,0,0,16,17,18,18,19,19,20,20,20,20,21,21,21,21,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29,29];function n(){var t=this;function e(t,e){for(var n=0;n|=1&t,t>>>=1,n<<=1,0<--e;);return n>>>1}t.build_tree=function(n){var i,r,o,a=t.dyn_tree,s=t.stat_desc.static_tree,c=t.stat_desc.elems,l=-1;for(n.heap_len=0,n.heap_max=573,i=0;i<c;i++)0!==a[2*i]?(n.heap[++n.heap_len]=l=i,n.depth[i]=0):a[2*i+1]=0;for(;n.heap_len<2;)a[2*(o=n.heap[++n.heap_len]=l<2?++l:0)]=1,n.depth[o]=0,n.opt_len--,s&&(n.static_len-=s[2*o+1]);for(t.max_code=l,i=Math.floor(n.heap_len/2);1<=i;i--)n.pqdownheap(a,i);for(o=c;i=n.heap[1],n.heap[1]=n.heap[n.heap_len--],n.pqdownheap(a,1),r=n.heap[1],n.heap[--n.heap_max]=i,n.heap[--n.heap_max]=r,a[2*o]=a[2*i]+a[2*r],n.depth[o]=Math.max(n.depth[i],n.depth[r])+1,a[2*i+1]=a[2*r+1]=o,n.heap[1]=o++,n.pqdownheap(a,1),2<=n.heap_len;);n.heap[--n.heap_max]=n.heap[1],function(e){var n,i,r,o,a,s,c=t.dyn_tree,l=t.stat_desc.static_tree,u=t.stat_desc.extra_bits,d=t.stat_desc.extra_base,p=t.stat_desc.max_length,h=0;for(o=0;o<=15;o++)e.bl_count[o]=0;for(c[2*e.heap[e.heap_max]+1]=0,n=e.heap_max+1;n<573;n++)p<(o=c[2*c[2*(i=e.heap[n])+1]+1]+1)&&(o=p,h++),c[2*i+1]=o,i>t.max_code||(e.bl_count[o]++,a=0,d<=i&&(a=u[i-d]),s=c[2*i],e.opt_len+=s*(o+a),l&&(e.static_len+=s*(l[2*i+1]+a)));if(0!==h){do{for(o=p-1;0===e.bl_count[o];)o--;e.bl_count[o]--,e.bl_count[o+1]+=2,e.bl_count[p]--,h-=2}while(0<h);for(o=p;0!==o;o--)for(i=e.bl_count[o];0!==i;)(r=e.heap[--n])>t.max_code||(c[2*r+1]!=o&&(e.opt_len+=(o-c[2*r+1])*c[2*r],c[2*r+1]=o),i--)}}(n),function(t,n,i){var r,o,a,s=[],c=0;for(r=1;r<=15;r++)s[r]=c=c+i[r-1]<<1;for(o=0;o<=n;o++)0!==(a=t[2*o+1])&&(t[2*o]=e(s[a]++,a))}(a,t.max_code,n.bl_count)}}function i(t,e,n,i,r){this.static_tree=t,this.extra_bits=e,this.extra_base=n,this.elems=i,this.max_length=r}function r(t,e,n,i,r){this.good_length=t,this.max_lazy=e,this.nice_length=n,this.max_chain=i,this.func=r}n._length_code=[0,1,2,3,4,5,6,7,8,8,9,9,10,10,11,11,12,12,12,12,13,13,13,13,14,14,14,14,15,15,15,15,16,16,16,16,16,16,16,16,17,17,17,17,17,17,17,17,18,18,18,18,18,18,18,18,19,19,19,19,19,19,19,19,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,27,28],n.base_length=[0,1,2,3,4,5,6,7,8,10,12,14,16,20,24,28,32,40,48,56,64,80,96,112,128,160,192,224,0],n.base_dist=[0,1,2,3,4,6,8,12,16,24,32,48,64,96,128,192,256,384,512,768,1024,1536,2048,3072,4096,6144,8192,12288,16384,24576],n.d_code=function(t){return t<256?e[t]:e[256+(t>>>7)]},n.extra_lbits=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],n.extra_dbits=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],n.extra_blbits=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],n.bl_order=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],i.static_ltree=[12,8,140,8,76,8,204,8,44,8,172,8,108,8,236,8,28,8,156,8,92,8,220,8,60,8,188,8,124,8,252,8,2,8,130,8,66,8,194,8,34,8,162,8,98,8,226,8,18,8,146,8,82,8,210,8,50,8,178,8,114,8,242,8,10,8,138,8,74,8,202,8,42,8,170,8,106,8,234,8,26,8,154,8,90,8,218,8,58,8,186,8,122,8,250,8,6,8,134,8,70,8,198,8,38,8,166,8,102,8,230,8,22,8,150,8,86,8,214,8,54,8,182,8,118,8,246,8,14,8,142,8,78,8,206,8,46,8,174,8,110,8,238,8,30,8,158,8,94,8,222,8,62,8,190,8,126,8,254,8,1,8,129,8,65,8,193,8,33,8,161,8,97,8,225,8,17,8,145,8,81,8,209,8,49,8,177,8,113,8,241,8,9,8,137,8,73,8,201,8,41,8,169,8,105,8,233,8,25,8,153,8,89,8,217,8,57,8,185,8,121,8,249,8,5,8,133,8,69,8,197,8,37,8,165,8,101,8,229,8,21,8,149,8,85,8,213,8,53,8,181,8,117,8,245,8,13,8,141,8,77,8,205,8,45,8,173,8,109,8,237,8,29,8,157,8,93,8,221,8,61,8,189,8,125,8,253,8,19,9,275,9,147,9,403,9,83,9,339,9,211,9,467,9,51,9,307,9,179,9,435,9,115,9,371,9,243,9,499,9,11,9,267,9,139,9,395,9,75,9,331,9,203,9,459,9,43,9,299,9,171,9,427,9,107,9,363,9,235,9,491,9,27,9,283,9,155,9,411,9,91,9,347,9,219,9,475,9,59,9,315,9,187,9,443,9,123,9,379,9,251,9,507,9,7,9,263,9,135,9,391,9,71,9,327,9,199,9,455,9,39,9,295,9,167,9,423,9,103,9,359,9,231,9,487,9,23,9,279,9,151,9,407,9,87,9,343,9,215,9,471,9,55,9,311,9,183,9,439,9,119,9,375,9,247,9,503,9,15,9,271,9,143,9,399,9,79,9,335,9,207,9,463,9,47,9,303,9,175,9,431,9,111,9,367,9,239,9,495,9,31,9,287,9,159,9,415,9,95,9,351,9,223,9,479,9,63,9,319,9,191,9,447,9,127,9,383,9,255,9,511,9,0,7,64,7,32,7,96,7,16,7,80,7,48,7,112,7,8,7,72,7,40,7,104,7,24,7,88,7,56,7,120,7,4,7,68,7,36,7,100,7,20,7,84,7,52,7,116,7,3,8,131,8,67,8,195,8,35,8,163,8,99,8,227,8],i.static_dtree=[0,5,16,5,8,5,24,5,4,5,20,5,12,5,28,5,2,5,18,5,10,5,26,5,6,5,22,5,14,5,30,5,1,5,17,5,9,5,25,5,5,5,21,5,13,5,29,5,3,5,19,5,11,5,27,5,7,5,23,5],i.static_l_desc=new i(i.static_ltree,n.extra_lbits,257,286,15),i.static_d_desc=new i(i.static_dtree,n.extra_dbits,0,30,15),i.static_bl_desc=new i(null,n.extra_blbits,0,19,7);var o=[new r(0,0,0,0,0),new r(4,4,8,4,1),new r(4,5,16,8,1),new r(4,6,32,32,1),new r(4,4,16,16,2),new r(8,16,32,32,2),new r(8,16,128,128,2),new r(8,32,128,256,2),new r(32,128,258,1024,2),new r(32,258,258,4096,2)],a=["need dictionary","stream end","","","stream error","data error","","buffer error","",""];function s(t,e,n,i){var r=t[2*e],o=t[2*n];return r<o||r==o&&i[e]<=i[n]}function c(){this.next_in_index=0,this.next_out_index=0,this.avail_in=0,this.total_in=0,this.avail_out=0,this.total_out=0}c.prototype={deflateInit:function(t,e){return this.dstate=new function(){var t,e,r,c,l,u,d,p,h,f,g,m,v,y,b,w,S,x,M,E,C,A,T,O,_,P,I,k,D,R,L,N,j,V,F,U,B,z,G,H,W,q=this,K=new n,X=new n,Y=new n;function Z(){var t;for(t=0;t<286;t++)L[2*t]=0;for(t=0;t<30;t++)N[2*t]=0;for(t=0;t<19;t++)j[2*t]=0;L[512]=1,q.opt_len=q.static_len=0,U=z=0}function J(t,e){var n,i,r=-1,o=t[1],a=0,s=7,c=4;for(0===o&&(s=138,c=3),t[2*(e+1)+1]=65535,n=0;n<=e;n++)i=o,o=t[2*(n+1)+1],++a<s&&i==o||(a<c?j[2*i]+=a:0!==i?(i!=r&&j[2*i]++,j[32]++):a<=10?j[34]++:j[36]++,r=i,c=(a=0)===o?(s=138,3):i==o?(s=6,3):(s=7,4))}function Q(t){q.pending_buf[q.pending++]=t}function $(t){Q(255&t),Q(t>>>8&255)}function tt(t,e){var n,i=e;16-i<W?($(H|=(n=t)<<W&65535),H=n>>>16-W,W+=i-16):(H|=t<<W&65535,W+=i)}function et(t,e){var n=2*t;tt(65535&e[n],65535&e[n+1])}function nt(t,e){var n,i,r=-1,o=t[1],a=0,s=7,c=4;for(0===o&&(s=138,c=3),n=0;n<=e;n++)if(i=o,o=t[2*(n+1)+1],!(++a<s&&i==o)){if(a<c)for(;et(i,j),0!=--a;);else 0!==i?(i!=r&&(et(i,j),a--),et(16,j),tt(a-3,2)):a<=10?(et(17,j),tt(a-3,3)):(et(18,j),tt(a-11,7));r=i,c=(a=0)===o?(s=138,3):i==o?(s=6,3):(s=7,4)}}function it(){16==W?($(H),W=H=0):8<=W&&(Q(255&H),H>>>=8,W-=8)}function rt(t,e){var i,r,o;if(q.pending_buf[B+2*U]=t>>>8&255,q.pending_buf[B+2*U+1]=255&t,q.pending_buf[V+U]=255&e,U++,0===t?L[2*e]++:(z++,t--,L[2*(n._length_code[e]+256+1)]++,N[2*n.d_code(t)]++),0==(8191&U)&&2<I){for(i=8*U,r=C-S,o=0;o<30;o++)i+=N[2*o]*(5+n.extra_dbits[o]);if(i>>>=3,z<Math.floor(U/2)&&i<Math.floor(r/2))return!0}return U==F-1}function ot(t,e){var i,r,o,a,s=0;if(0!==U)for(;i=q.pending_buf[B+2*s]<<8&65280|255&q.pending_buf[B+2*s+1],r=255&q.pending_buf[V+s],s++,0===i?et(r,t):(et((o=n._length_code[r])+256+1,t),0!==(a=n.extra_lbits[o])&&tt(r-=n.base_length[o],a),et(o=n.d_code(--i),e),0!==(a=n.extra_dbits[o])&&tt(i-=n.base_dist[o],a)),s<U;);et(256,t),G=t[513]}function at(){8<W?$(H):0<W&&Q(255&H),W=H=0}function st(t,e,n){var i,r;tt(0+(n?1:0),3),i=t,r=e,at(),G=8,$(r),$(~r),q.pending_buf.set(p.subarray(i,i+r),q.pending),q.pending+=r}function ct(e){(function(t,e,r){var o,a,s=0;0<I?(K.build_tree(q),X.build_tree(q),s=function(){var t;for(J(L,K.max_code),J(N,X.max_code),Y.build_tree(q),t=18;3<=t&&0===j[2*n.bl_order[t]+1];t--);return q.opt_len+=3*(t+1)+5+5+4,t}(),o=q.opt_len+3+7>>>3,(a=q.static_len+3+7>>>3)<=o&&(o=a)):o=a=e+5,e+4<=o&&-1!=t?st(t,e,r):a==o?(tt(2+(r?1:0),3),ot(i.static_ltree,i.static_dtree)):(tt(4+(r?1:0),3),function(t,e,i){var r;for(tt(t-257,5),tt(e-1,5),tt(i-4,4),r=0;r<i;r++)tt(j[2*n.bl_order[r]+1],3);nt(L,t-1),nt(N,e-1)}(K.max_code+1,X.max_code+1,s+1),ot(L,N)),Z(),r&&at()})(0<=S?S:-1,C-S,e),S=C,t.flush_pending()}function lt(){var e,n,i,r;do{if(0==(r=h-T-C)&&0===C&&0===T)r=l;else if(-1==r)r--;else if(l+l-262<=C){for(p.set(p.subarray(l,l+l),0),A-=l,C-=l,S-=l,i=e=v;n=65535&g[--i],g[i]=l<=n?n-l:0,0!=--e;);for(i=e=l;n=65535&f[--i],f[i]=l<=n?n-l:0,0!=--e;);r+=l}if(0===t.avail_in)return;e=t.read_buf(p,C+T,r),3<=(T+=e)&&(m=((m=255&p[C])<<w^255&p[C+1])&b)}while(T<262&&0!==t.avail_in)}function ut(t){var e,n,i=_,r=C,o=O,a=l-262<C?C-(l-262):0,s=R,c=d,u=C+258,h=p[r+o-1],g=p[r+o];D<=O&&(i>>=2),T<s&&(s=T);do{if(p[(e=t)+o]==g&&p[e+o-1]==h&&p[e]==p[r]&&p[++e]==p[r+1]){r+=2,e++;do{}while(p[++r]==p[++e]&&p[++r]==p[++e]&&p[++r]==p[++e]&&p[++r]==p[++e]&&p[++r]==p[++e]&&p[++r]==p[++e]&&p[++r]==p[++e]&&p[++r]==p[++e]&&r<u);if(n=258-(u-r),r=u-258,o<n){if(A=t,s<=(o=n))break;h=p[r+o-1],g=p[r+o]}}}while((t=65535&f[t&c])>a&&0!=--i);return o<=T?o:T}function dt(t){return t.total_in=t.total_out=0,t.msg=null,q.pending=0,q.pending_out=0,e=113,c=0,K.dyn_tree=L,K.stat_desc=i.static_l_desc,X.dyn_tree=N,X.stat_desc=i.static_d_desc,Y.dyn_tree=j,Y.stat_desc=i.static_bl_desc,W=H=0,G=8,Z(),function(){var t;for(h=2*l,t=g[v-1]=0;t<v-1;t++)g[t]=0;P=o[I].max_lazy,D=o[I].good_length,R=o[I].nice_length,_=o[I].max_chain,x=O=2,m=E=T=S=C=0}(),0}q.depth=[],q.bl_count=[],q.heap=[],L=[],N=[],j=[],q.pqdownheap=function(t,e){for(var n=q.heap,i=n[e],r=e<<1;r<=q.heap_len&&(r<q.heap_len&&s(t,n[r+1],n[r],q.depth)&&r++,!s(t,i,n[r],q.depth));)n[e]=n[r],e=r,r<<=1;n[e]=i},q.deflateInit=function(t,e,n,i,o,a){return i||(i=8),o||(o=8),a||(a=0),t.msg=null,-1==e&&(e=6),o<1||9<o||8!=i||n<9||15<n||e<0||9<e||a<0||2<a?-2:(t.dstate=q,d=(l=1<<(u=n))-1,b=(v=1<<(y=o+7))-1,w=Math.floor((y+3-1)/3),p=new Uint8Array(2*l),f=[],g=[],F=1<<o+6,q.pending_buf=new Uint8Array(4*F),r=4*F,B=Math.floor(F/2),V=3*F,I=e,k=a,dt(t))},q.deflateEnd=function(){return 42!=e&&113!=e&&666!=e?-2:(q.pending_buf=null,p=f=g=null,q.dstate=null,113==e?-3:0)},q.deflateParams=function(t,e,n){var i=0;return-1==e&&(e=6),e<0||9<e||n<0||2<n?-2:(o[I].func!=o[e].func&&0!==t.total_in&&(i=t.deflate(1)),I!=e&&(P=o[I=e].max_lazy,D=o[I].good_length,R=o[I].nice_length,_=o[I].max_chain),k=n,i)},q.deflateSetDictionary=function(t,n,i){var r,o=i,a=0;if(!n||42!=e)return-2;if(o<3)return 0;for(l-262<o&&(a=i-(o=l-262)),p.set(n.subarray(a,a+o),0),S=C=o,m=((m=255&p[0])<<w^255&p[1])&b,r=0;r<=o-3;r++)m=(m<<w^255&p[r+2])&b,f[r&d]=g[m],g[m]=r;return 0},q.deflate=function(n,s){var h,y,_,D,R,L;if(4<s||s<0)return-2;if(!n.next_out||!n.next_in&&0!==n.avail_in||666==e&&4!=s)return n.msg=a[4],-2;if(0===n.avail_out)return n.msg=a[7],-5;if(t=n,D=c,c=s,42==e&&(y=8+(u-8<<4)<<8,3<(_=(I-1&255)>>1)&&(_=3),y|=_<<6,0!==C&&(y|=32),e=113,Q((L=y+=31-y%31)>>8&255),Q(255&L)),0!==q.pending){if(t.flush_pending(),0===t.avail_out)return c=-1,0}else if(0===t.avail_in&&s<=D&&4!=s)return t.msg=a[7],-5;if(666==e&&0!==t.avail_in)return n.msg=a[7],-5;if(0!==t.avail_in||0!==T||0!=s&&666!=e){switch(R=-1,o[I].func){case 0:R=function(e){var n,i=65535;for(r-5<i&&(i=r-5);;){if(T<=1){if(lt(),0===T&&0==e)return 0;if(0===T)break}if(C+=T,n=S+i,((T=0)===C||n<=C)&&(T=C-n,C=n,ct(!1),0===t.avail_out))return 0;if(l-262<=C-S&&(ct(!1),0===t.avail_out))return 0}return ct(4==e),0===t.avail_out?4==e?2:0:4==e?3:1}(s);break;case 1:R=function(e){for(var n,i=0;;){if(T<262){if(lt(),T<262&&0==e)return 0;if(0===T)break}if(3<=T&&(m=(m<<w^255&p[C+2])&b,i=65535&g[m],f[C&d]=g[m],g[m]=C),0!==i&&(C-i&65535)<=l-262&&2!=k&&(x=ut(i)),3<=x)if(n=rt(C-A,x-3),T-=x,x<=P&&3<=T){for(x--;m=(m<<w^255&p[++C+2])&b,i=65535&g[m],f[C&d]=g[m],g[m]=C,0!=--x;);C++}else C+=x,x=0,m=((m=255&p[C])<<w^255&p[C+1])&b;else n=rt(0,255&p[C]),T--,C++;if(n&&(ct(!1),0===t.avail_out))return 0}return ct(4==e),0===t.avail_out?4==e?2:0:4==e?3:1}(s);break;case 2:R=function(e){for(var n,i,r=0;;){if(T<262){if(lt(),T<262&&0==e)return 0;if(0===T)break}if(3<=T&&(m=(m<<w^255&p[C+2])&b,r=65535&g[m],f[C&d]=g[m],g[m]=C),O=x,M=A,x=2,0!==r&&O<P&&(C-r&65535)<=l-262&&(2!=k&&(x=ut(r)),x<=5&&(1==k||3==x&&4096<C-A)&&(x=2)),3<=O&&x<=O){for(i=C+T-3,n=rt(C-1-M,O-3),T-=O-1,O-=2;++C<=i&&(m=(m<<w^255&p[C+2])&b,r=65535&g[m],f[C&d]=g[m],g[m]=C),0!=--O;);if(E=0,x=2,C++,n&&(ct(!1),0===t.avail_out))return 0}else if(0!==E){if((n=rt(0,255&p[C-1]))&&ct(!1),C++,T--,0===t.avail_out)return 0}else E=1,C++,T--}return 0!==E&&(n=rt(0,255&p[C-1]),E=0),ct(4==e),0===t.avail_out?4==e?2:0:4==e?3:1}(s)}if(2!=R&&3!=R||(e=666),0==R||2==R)return 0===t.avail_out&&(c=-1),0;if(1==R){if(1==s)tt(2,3),et(256,i.static_ltree),it(),1+G+10-W<9&&(tt(2,3),et(256,i.static_ltree),it()),G=7;else if(st(0,0,!1),3==s)for(h=0;h<v;h++)g[h]=0;if(t.flush_pending(),0===t.avail_out)return c=-1,0}}return 4!=s?0:1}},e||(e=15),this.dstate.deflateInit(this,t,e)},deflate:function(t){return this.dstate?this.dstate.deflate(this,t):-2},deflateEnd:function(){if(!this.dstate)return-2;var t=this.dstate.deflateEnd();return this.dstate=null,t},deflateParams:function(t,e){return this.dstate?this.dstate.deflateParams(this,t,e):-2},deflateSetDictionary:function(t,e){return this.dstate?this.dstate.deflateSetDictionary(this,t,e):-2},read_buf:function(t,e,n){var i=this.avail_in;return n<i&&(i=n),0===i?0:(this.avail_in-=i,t.set(this.next_in.subarray(this.next_in_index,this.next_in_index+i),e),this.next_in_index+=i,this.total_in+=i,i)},flush_pending:function(){var t=this,e=t.dstate.pending;e>t.avail_out&&(e=t.avail_out),0!==e&&(t.next_out.set(t.dstate.pending_buf.subarray(t.dstate.pending_out,t.dstate.pending_out+e),t.next_out_index),t.next_out_index+=e,t.dstate.pending_out+=e,t.total_out+=e,t.avail_out-=e,t.dstate.pending-=e,0===t.dstate.pending&&(t.dstate.pending_out=0))}};var l=t.zip||t;l.Deflater=l._jzlib_Deflater=function(t){var e=new c,n=new Uint8Array(512),i=t?t.level:-1;void 0===i&&(i=-1),e.deflateInit(i),e.next_out=n,this.append=function(t,i){var r,o=[],a=0,s=0,c=0;if(t.length){e.next_in_index=0,e.next_in=t,e.avail_in=t.length;do{if(e.next_out_index=0,e.avail_out=512,0!=e.deflate(0))throw new Error("deflating: "+e.msg);e.next_out_index&&(512==e.next_out_index?o.push(new Uint8Array(n)):o.push(new Uint8Array(n.subarray(0,e.next_out_index)))),c+=e.next_out_index,i&&0<e.next_in_index&&e.next_in_index!=a&&(i(e.next_in_index),a=e.next_in_index)}while(0<e.avail_in||0===e.avail_out);return r=new Uint8Array(c),o.forEach(function(t){r.set(t,s),s+=t.length}),r}},this.flush=function(){var t,i,r=[],o=0,a=0;do{if(e.next_out_index=0,e.avail_out=512,1!=(t=e.deflate(4))&&0!=t)throw new Error("deflating: "+e.msg);0<512-e.avail_out&&r.push(new Uint8Array(n.subarray(0,e.next_out_index))),a+=e.next_out_index}while(0<e.avail_in||0===e.avail_out);return e.deflateEnd(),i=new Uint8Array(a),r.forEach(function(t){i.set(t,o),o+=t.length}),i}}}("undefined"!=typeof self&&self||"undefined"!=typeof window&&window||void 0!==i&&i||Function('return typeof this === "object" && this.content')()||Function("return this")()),("undefined"!=typeof self&&self||"undefined"!=typeof window&&window||void 0!==i&&i||Function('return typeof this === "object" && this.content')()||Function("return this")()).RGBColor=function(t){var e;t=t||"",this.ok=!1,"#"==t.charAt(0)&&(t=t.substr(1,6)),t=(t=t.replace(/ /g,"")).toLowerCase();var n={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dodgerblue:"1e90ff",feldspar:"d19275",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgrey:"d3d3d3",lightgreen:"90ee90",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslateblue:"8470ff",lightslategray:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370d8",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"d87093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",violetred:"d02090",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"};for(var i in n)t==i&&(t=n[i]);for(var r=[{re:/^rgb\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/,example:["rgb(123, 234, 45)","rgb(255,234,245)"],process:function(t){return[parseInt(t[1]),parseInt(t[2]),parseInt(t[3])]}},{re:/^(\w{2})(\w{2})(\w{2})$/,example:["#00ff00","336699"],process:function(t){return[parseInt(t[1],16),parseInt(t[2],16),parseInt(t[3],16)]}},{re:/^(\w{1})(\w{1})(\w{1})$/,example:["#fb0","f0f"],process:function(t){return[parseInt(t[1]+t[1],16),parseInt(t[2]+t[2],16),parseInt(t[3]+t[3],16)]}}],o=0;o<r.length;o++){var a=r[o].re,s=r[o].process,c=a.exec(t);c&&(e=s(c),this.r=e[0],this.g=e[1],this.b=e[2],this.ok=!0)}this.r=this.r<0||isNaN(this.r)?0:255<this.r?255:this.r,this.g=this.g<0||isNaN(this.g)?0:255<this.g?255:this.g,this.b=this.b<0||isNaN(this.b)?0:255<this.b?255:this.b,this.toRGB=function(){return"rgb("+this.r+", "+this.g+", "+this.b+")"},this.toHex=function(){var t=this.r.toString(16),e=this.g.toString(16),n=this.b.toString(16);return 1==t.length&&(t="0"+t),1==e.length&&(e="0"+e),1==n.length&&(n="0"+n),"#"+t+e+n}},function(t){var e="+".charCodeAt(0),n="/".charCodeAt(0),i="0".charCodeAt(0),r="a".charCodeAt(0),o="A".charCodeAt(0),a="-".charCodeAt(0),s="_".charCodeAt(0),c=function(t){var c=t.charCodeAt(0);return c===e||c===a?62:c===n||c===s?63:c<i?-1:c<i+10?c-i+26+26:c<o+26?c-o:c<r+26?c-r+26:void 0};t.API.TTFFont=function(){function t(t,e,n){var i;if(this.rawData=t,i=this.contents=new u(t),this.contents.pos=4,"ttcf"===i.readString(4)){if(!e)throw new Error("Must specify a font name for TTC files.");throw new Error("Font "+e+" not found in TTC file.")}i.pos=0,this.parse(),this.subset=new _(this),this.registerTTF()}return t.open=function(e,n,i,r){if("string"!=typeof i)throw new Error("Invalid argument supplied in TTFFont.open");return new t(function(t){var e,n,i,r,o,a;if(0<t.length%4)throw new Error("Invalid string. Length must be a multiple of 4");var s=t.length;o="="===t.charAt(s-2)?2:"="===t.charAt(s-1)?1:0,a=new Uint8Array(3*t.length/4-o),i=0<o?t.length-4:t.length;var l=0;function u(t){a[l++]=t}for(n=e=0;e<i;e+=4,n+=3)u((16711680&(r=c(t.charAt(e))<<18|c(t.charAt(e+1))<<12|c(t.charAt(e+2))<<6|c(t.charAt(e+3))))>>16),u((65280&r)>>8),u(255&r);return 2===o?u(255&(r=c(t.charAt(e))<<2|c(t.charAt(e+1))>>4)):1===o&&(u((r=c(t.charAt(e))<<10|c(t.charAt(e+1))<<4|c(t.charAt(e+2))>>2)>>8&255),u(255&r)),a}(i),n,r)},t.prototype.parse=function(){return this.directory=new d(this.contents),this.head=new f(this),this.name=new S(this),this.cmap=new m(this),this.toUnicode=new Map,this.hhea=new v(this),this.maxp=new x(this),this.hmtx=new M(this),this.post=new b(this),this.os2=new y(this),this.loca=new O(this),this.glyf=new C(this),this.ascender=this.os2.exists&&this.os2.ascender||this.hhea.ascender,this.decender=this.os2.exists&&this.os2.decender||this.hhea.decender,this.lineGap=this.os2.exists&&this.os2.lineGap||this.hhea.lineGap,this.bbox=[this.head.xMin,this.head.yMin,this.head.xMax,this.head.yMax]},t.prototype.registerTTF=function(){var t,e,n,i,r;if(this.scaleFactor=1e3/this.head.unitsPerEm,this.bbox=function(){var e,n,i,r;for(r=[],e=0,n=(i=this.bbox).length;e<n;e++)t=i[e],r.push(Math.round(t*this.scaleFactor));return r}.call(this),this.stemV=0,this.post.exists?(n=255&(i=this.post.italic_angle),!0&(e=i>>16)&&(e=-(1+(65535^e))),this.italicAngle=+(e+"."+n)):this.italicAngle=0,this.ascender=Math.round(this.ascender*this.scaleFactor),this.decender=Math.round(this.decender*this.scaleFactor),this.lineGap=Math.round(this.lineGap*this.scaleFactor),this.capHeight=this.os2.exists&&this.os2.capHeight||this.ascender,this.xHeight=this.os2.exists&&this.os2.xHeight||0,this.familyClass=(this.os2.exists&&this.os2.familyClass||0)>>8,this.isSerif=1===(r=this.familyClass)||2===r||3===r||4===r||5===r||7===r,this.isScript=10===this.familyClass,this.flags=0,this.post.isFixedPitch&&(this.flags|=1),this.isSerif&&(this.flags|=2),this.isScript&&(this.flags|=8),0!==this.italicAngle&&(this.flags|=64),this.flags|=32,!this.cmap.unicode)throw new Error("No unicode cmap for font")},t.prototype.characterToGlyph=function(t){var e;return(null!=(e=this.cmap.unicode)?e.codeMap[t]:void 0)||0},t.prototype.widthOfGlyph=function(t){var e;return e=1e3/this.head.unitsPerEm,this.hmtx.forGlyph(t).advance*e},t.prototype.widthOfString=function(t,e,n){var i,r,o,a,s;for(r=a=o=0,s=(t=""+t).length;0<=s?a<s:s<a;r=0<=s?++a:--a)i=t.charCodeAt(r),o+=this.widthOfGlyph(this.characterToGlyph(i))+n*(1e3/e)||0;return o*(e/1e3)},t.prototype.lineHeight=function(t,e){var n;return null==e&&(e=!1),n=e?this.lineGap:0,(this.ascender+n-this.decender)/1e3*t},t}();var l,u=function(){function t(t){this.data=null!=t?t:[],this.pos=0,this.length=this.data.length}return t.prototype.readByte=function(){return this.data[this.pos++]},t.prototype.writeByte=function(t){return this.data[this.pos++]=t},t.prototype.readUInt32=function(){return 16777216*this.readByte()+(this.readByte()<<16)+(this.readByte()<<8)+this.readByte()},t.prototype.writeUInt32=function(t){return this.writeByte(t>>>24&255),this.writeByte(t>>16&255),this.writeByte(t>>8&255),this.writeByte(255&t)},t.prototype.readInt32=function(){var t;return 2147483648<=(t=this.readUInt32())?t-4294967296:t},t.prototype.writeInt32=function(t){return t<0&&(t+=4294967296),this.writeUInt32(t)},t.prototype.readUInt16=function(){return this.readByte()<<8|this.readByte()},t.prototype.writeUInt16=function(t){return this.writeByte(t>>8&255),this.writeByte(255&t)},t.prototype.readInt16=function(){var t;return 32768<=(t=this.readUInt16())?t-65536:t},t.prototype.writeInt16=function(t){return t<0&&(t+=65536),this.writeUInt16(t)},t.prototype.readString=function(t){var e,n,i;for(n=[],e=i=0;0<=t?i<t:t<i;e=0<=t?++i:--i)n[e]=String.fromCharCode(this.readByte());return n.join("")},t.prototype.writeString=function(t){var e,n,i,r;for(r=[],e=n=0,i=t.length;0<=i?n<i:i<n;e=0<=i?++n:--n)r.push(this.writeByte(t.charCodeAt(e)));return r},t.prototype.readShort=function(){return this.readInt16()},t.prototype.writeShort=function(t){return this.writeInt16(t)},t.prototype.readLongLong=function(){var t,e,n,i,r,o,a,s;return t=this.readByte(),e=this.readByte(),n=this.readByte(),i=this.readByte(),r=this.readByte(),o=this.readByte(),a=this.readByte(),s=this.readByte(),128&t?-1*(72057594037927940*(255^t)+281474976710656*(255^e)+1099511627776*(255^n)+4294967296*(255^i)+16777216*(255^r)+65536*(255^o)+256*(255^a)+(255^s)+1):72057594037927940*t+281474976710656*e+1099511627776*n+4294967296*i+16777216*r+65536*o+256*a+s},t.prototype.writeLongLong=function(t){var e,n;return e=Math.floor(t/4294967296),n=4294967295&t,this.writeByte(e>>24&255),this.writeByte(e>>16&255),this.writeByte(e>>8&255),this.writeByte(255&e),this.writeByte(n>>24&255),this.writeByte(n>>16&255),this.writeByte(n>>8&255),this.writeByte(255&n)},t.prototype.readInt=function(){return this.readInt32()},t.prototype.writeInt=function(t){return this.writeInt32(t)},t.prototype.read=function(t){var e,n;for(e=[],n=0;0<=t?n<t:t<n;0<=t?++n:--n)e.push(this.readByte());return e},t.prototype.write=function(t){var e,n,i,r;for(r=[],n=0,i=t.length;n<i;n++)e=t[n],r.push(this.writeByte(e));return r},t}(),d=function(){var t;function e(t){var e,n,i;for(this.scalarType=t.readInt(),this.tableCount=t.readShort(),this.searchRange=t.readShort(),this.entrySelector=t.readShort(),this.rangeShift=t.readShort(),this.tables={},n=0,i=this.tableCount;0<=i?n<i:i<n;0<=i?++n:--n)e={tag:t.readString(4),checksum:t.readInt(),offset:t.readInt(),length:t.readInt()},this.tables[e.tag]=e}return e.prototype.encode=function(e){var n,i,r,o,a,s,c,l,d,p,h,f,g;for(g in h=Object.keys(e).length,s=Math.log(2),d=16*Math.floor(Math.log(h)/s),o=Math.floor(d/s),l=16*h-d,(i=new u).writeInt(this.scalarType),i.writeShort(h),i.writeShort(d),i.writeShort(o),i.writeShort(l),r=16*h,c=i.pos+r,a=null,f=[],e)for(p=e[g],i.writeString(g),i.writeInt(t(p)),i.writeInt(c),i.writeInt(p.length),f=f.concat(p),"head"===g&&(a=c),c+=p.length;c%4;)f.push(0),c++;return i.write(f),n=2981146554-t(i.data),i.pos=a+8,i.writeUInt32(n),i.data},t=function(t){var e,n,i,r;for(t=E.call(t);t.length%4;)t.push(0);for(n=new u(t),i=e=0,r=t.length;i<r;i+=4)e+=n.readUInt32();return 4294967295&e},e}(),p={}.hasOwnProperty,h=function(t,e){for(var n in e)p.call(e,n)&&(t[n]=e[n]);function i(){this.constructor=t}return i.prototype=e.prototype,t.prototype=new i,t.__super__=e.prototype,t};l=function(){function t(t){var e;this.file=t,e=this.file.directory.tables[this.tag],this.exists=!!e,e&&(this.offset=e.offset,this.length=e.length,this.parse(this.file.contents))}return t.prototype.parse=function(){},t.prototype.encode=function(){},t.prototype.raw=function(){return this.exists?(this.file.contents.pos=this.offset,this.file.contents.read(this.length)):null},t}();var f=function(t){function e(){return e.__super__.constructor.apply(this,arguments)}return h(e,l),e.prototype.tag="head",e.prototype.parse=function(t){return t.pos=this.offset,this.version=t.readInt(),this.revision=t.readInt(),this.checkSumAdjustment=t.readInt(),this.magicNumber=t.readInt(),this.flags=t.readShort(),this.unitsPerEm=t.readShort(),this.created=t.readLongLong(),this.modified=t.readLongLong(),this.xMin=t.readShort(),this.yMin=t.readShort(),this.xMax=t.readShort(),this.yMax=t.readShort(),this.macStyle=t.readShort(),this.lowestRecPPEM=t.readShort(),this.fontDirectionHint=t.readShort(),this.indexToLocFormat=t.readShort(),this.glyphDataFormat=t.readShort()},e.prototype.encode=function(t){var e;return(e=new u).writeInt(this.version),e.writeInt(this.revision),e.writeInt(this.checkSumAdjustment),e.writeInt(this.magicNumber),e.writeShort(this.flags),e.writeShort(this.unitsPerEm),e.writeLongLong(this.created),e.writeLongLong(this.modified),e.writeShort(this.xMin),e.writeShort(this.yMin),e.writeShort(this.xMax),e.writeShort(this.yMax),e.writeShort(this.macStyle),e.writeShort(this.lowestRecPPEM),e.writeShort(this.fontDirectionHint),e.writeShort(t),e.writeShort(this.glyphDataFormat),e.data},e}(),g=function(){function t(t,e){var n,i,r,o,a,s,c,l,u,d,p,h,f,g,m,v,y,b;switch(this.platformID=t.readUInt16(),this.encodingID=t.readShort(),this.offset=e+t.readInt(),u=t.pos,t.pos=this.offset,this.format=t.readUInt16(),this.length=t.readUInt16(),this.language=t.readUInt16(),this.isUnicode=3===this.platformID&&1===this.encodingID&&4===this.format||0===this.platformID&&4===this.format,this.codeMap={},this.format){case 0:for(s=m=0;m<256;s=++m)this.codeMap[s]=t.readByte();break;case 4:for(p=t.readUInt16(),d=p/2,t.pos+=6,r=function(){var e,n;for(n=[],s=e=0;0<=d?e<d:d<e;s=0<=d?++e:--e)n.push(t.readUInt16());return n}(),t.pos+=2,f=function(){var e,n;for(n=[],s=e=0;0<=d?e<d:d<e;s=0<=d?++e:--e)n.push(t.readUInt16());return n}(),c=function(){var e,n;for(n=[],s=e=0;0<=d?e<d:d<e;s=0<=d?++e:--e)n.push(t.readUInt16());return n}(),l=function(){var e,n;for(n=[],s=e=0;0<=d?e<d:d<e;s=0<=d?++e:--e)n.push(t.readUInt16());return n}(),i=(this.length-t.pos+this.offset)/2,a=function(){var e,n;for(n=[],s=e=0;0<=i?e<i:i<e;s=0<=i?++e:--e)n.push(t.readUInt16());return n}(),s=v=0,b=r.length;v<b;s=++v)for(g=r[s],n=y=h=f[s];h<=g?y<=g:g<=y;n=h<=g?++y:--y)0===l[s]?o=n+c[s]:0!==(o=a[l[s]/2+(n-h)-(d-s)]||0)&&(o+=c[s]),this.codeMap[n]=65535&o}t.pos=u}return t.encode=function(t,e){var n,i,r,o,a,s,c,l,d,p,h,f,g,m,v,y,b,w,S,x,M,E,C,A,T,O,_,P,I,k,D,R,L,N,j,V,F,U,B,z,G,H,W,q,K,X;switch(P=new u,o=Object.keys(t).sort(function(t,e){return t-e}),e){case"macroman":for(g=0,m=function(){var t,e;for(e=[],f=t=0;t<256;f=++t)e.push(0);return e}(),y={0:0},r={},I=0,L=o.length;I<L;I++)null==y[W=t[i=o[I]]]&&(y[W]=++g),r[i]={old:t[i],new:y[t[i]]},m[i]=y[t[i]];return P.writeUInt16(1),P.writeUInt16(0),P.writeUInt32(12),P.writeUInt16(0),P.writeUInt16(262),P.writeUInt16(0),P.write(m),{charMap:r,subtable:P.data,maxGlyphID:g+1};case"unicode":for(O=[],d=[],y={},n={},v=c=null,k=b=0,N=o.length;k<N;k++)null==y[S=t[i=o[k]]]&&(y[S]=++b),n[i]={old:S,new:y[S]},a=y[S]-i,null!=v&&a===c||(v&&d.push(v),O.push(i),c=a),v=i;for(v&&d.push(v),d.push(65535),O.push(65535),A=2*(C=O.length),E=2*Math.pow(Math.log(C)/Math.LN2,2),p=Math.log(E/2)/Math.LN2,M=2*C-E,s=[],x=[],h=[],f=D=0,j=O.length;D<j;f=++D){if(T=O[f],l=d[f],65535===T){s.push(0),x.push(0);break}if(32768<=T-(_=n[T].new))for(s.push(0),x.push(2*(h.length+C-f)),i=R=T;T<=l?R<=l:l<=R;i=T<=l?++R:--R)h.push(n[i].new);else s.push(_-T),x.push(0)}for(P.writeUInt16(3),P.writeUInt16(1),P.writeUInt32(12),P.writeUInt16(4),P.writeUInt16(16+8*C+2*h.length),P.writeUInt16(0),P.writeUInt16(A),P.writeUInt16(E),P.writeUInt16(p),P.writeUInt16(M),G=0,V=d.length;G<V;G++)i=d[G],P.writeUInt16(i);for(P.writeUInt16(0),H=0,F=O.length;H<F;H++)i=O[H],P.writeUInt16(i);for(q=0,U=s.length;q<U;q++)a=s[q],P.writeUInt16(a);for(K=0,B=x.length;K<B;K++)w=x[K],P.writeUInt16(w);for(X=0,z=h.length;X<z;X++)g=h[X],P.writeUInt16(g);return{charMap:n,subtable:P.data,maxGlyphID:b+1}}},t}(),m=function(t){function e(){return e.__super__.constructor.apply(this,arguments)}return h(e,l),e.prototype.tag="cmap",e.prototype.parse=function(t){var e,n,i;for(t.pos=this.offset,this.version=t.readUInt16(),n=t.readUInt16(),this.tables=[],this.unicode=null,i=0;0<=n?i<n:n<i;0<=n?++i:--i)e=new g(t,this.offset),this.tables.push(e),e.isUnicode&&null==this.unicode&&(this.unicode=e);return!0},e.encode=function(t,e){var n,i;return null==e&&(e="macroman"),n=g.encode(t,e),(i=new u).writeUInt16(0),i.writeUInt16(1),n.table=i.data.concat(n.subtable),n},e}(),v=function(t){function e(){return e.__super__.constructor.apply(this,arguments)}return h(e,l),e.prototype.tag="hhea",e.prototype.parse=function(t){return t.pos=this.offset,this.version=t.readInt(),this.ascender=t.readShort(),this.decender=t.readShort(),this.lineGap=t.readShort(),this.advanceWidthMax=t.readShort(),this.minLeftSideBearing=t.readShort(),this.minRightSideBearing=t.readShort(),this.xMaxExtent=t.readShort(),this.caretSlopeRise=t.readShort(),this.caretSlopeRun=t.readShort(),this.caretOffset=t.readShort(),t.pos+=8,this.metricDataFormat=t.readShort(),this.numberOfMetrics=t.readUInt16()},e}(),y=function(t){function e(){return e.__super__.constructor.apply(this,arguments)}return h(e,l),e.prototype.tag="OS/2",e.prototype.parse=function(t){if(t.pos=this.offset,this.version=t.readUInt16(),this.averageCharWidth=t.readShort(),this.weightClass=t.readUInt16(),this.widthClass=t.readUInt16(),this.type=t.readShort(),this.ySubscriptXSize=t.readShort(),this.ySubscriptYSize=t.readShort(),this.ySubscriptXOffset=t.readShort(),this.ySubscriptYOffset=t.readShort(),this.ySuperscriptXSize=t.readShort(),this.ySuperscriptYSize=t.readShort(),this.ySuperscriptXOffset=t.readShort(),this.ySuperscriptYOffset=t.readShort(),this.yStrikeoutSize=t.readShort(),this.yStrikeoutPosition=t.readShort(),this.familyClass=t.readShort(),this.panose=function(){var e,n;for(n=[],e=0;e<10;++e)n.push(t.readByte());return n}(),this.charRange=function(){var e,n;for(n=[],e=0;e<4;++e)n.push(t.readInt());return n}(),this.vendorID=t.readString(4),this.selection=t.readShort(),this.firstCharIndex=t.readShort(),this.lastCharIndex=t.readShort(),0<this.version&&(this.ascent=t.readShort(),this.descent=t.readShort(),this.lineGap=t.readShort(),this.winAscent=t.readShort(),this.winDescent=t.readShort(),this.codePageRange=function(){var e,n;for(n=[],e=0;e<2;++e)n.push(t.readInt());return n}(),1<this.version))return this.xHeight=t.readShort(),this.capHeight=t.readShort(),this.defaultChar=t.readShort(),this.breakChar=t.readShort(),this.maxContext=t.readShort()},e}(),b=function(t){function e(){return e.__super__.constructor.apply(this,arguments)}return h(e,l),e.prototype.tag="post",e.prototype.parse=function(t){var e,n,i,r;switch(t.pos=this.offset,this.format=t.readInt(),this.italicAngle=t.readInt(),this.underlinePosition=t.readShort(),this.underlineThickness=t.readShort(),this.isFixedPitch=t.readInt(),this.minMemType42=t.readInt(),this.maxMemType42=t.readInt(),this.minMemType1=t.readInt(),this.maxMemType1=t.readInt(),this.format){case 65536:break;case 131072:for(n=t.readUInt16(),this.glyphNameIndex=[],i=0;0<=n?i<n:n<i;0<=n?++i:--i)this.glyphNameIndex.push(t.readUInt16());for(this.names=[],r=[];t.pos<this.offset+this.length;)e=t.readByte(),r.push(this.names.push(t.readString(e)));return r;case 151552:return n=t.readUInt16(),this.offsets=t.read(n);case 196608:break;case 262144:return this.map=function(){var e,n,i;for(i=[],e=0,n=this.file.maxp.numGlyphs;0<=n?e<n:n<e;0<=n?++e:--e)i.push(t.readUInt32());return i}.call(this)}},e}(),w=function(t,e){this.raw=t,this.length=t.length,this.platformID=e.platformID,this.encodingID=e.encodingID,this.languageID=e.languageID},S=function(t){function e(){return e.__super__.constructor.apply(this,arguments)}return h(e,l),e.prototype.tag="name",e.prototype.parse=function(t){var e,n,i,r,o,a,s,c,l,u,d,p;for(t.pos=this.offset,t.readShort(),e=t.readShort(),a=t.readShort(),n=[],r=l=0;0<=e?l<e:e<l;r=0<=e?++l:--l)n.push({platformID:t.readShort(),encodingID:t.readShort(),languageID:t.readShort(),nameID:t.readShort(),length:t.readShort(),offset:this.offset+a+t.readShort()});for(s={},r=u=0,d=n.length;u<d;r=++u)i=n[r],t.pos=i.offset,c=t.readString(i.length),o=new w(c,i),null==s[p=i.nameID]&&(s[p]=[]),s[i.nameID].push(o);this.strings=s,this.copyright=s[0],this.fontFamily=s[1],this.fontSubfamily=s[2],this.uniqueSubfamily=s[3],this.fontName=s[4],this.version=s[5];try{this.postscriptName=s[6][0].raw.replace(/[\x00-\x19\x80-\xff]/g,"")}catch(t){this.postscriptName=s[4][0].raw.replace(/[\x00-\x19\x80-\xff]/g,"")}return this.trademark=s[7],this.manufacturer=s[8],this.designer=s[9],this.description=s[10],this.vendorUrl=s[11],this.designerUrl=s[12],this.license=s[13],this.licenseUrl=s[14],this.preferredFamily=s[15],this.preferredSubfamily=s[17],this.compatibleFull=s[18],this.sampleText=s[19]},e}(),x=function(t){function e(){return e.__super__.constructor.apply(this,arguments)}return h(e,l),e.prototype.tag="maxp",e.prototype.parse=function(t){return t.pos=this.offset,this.version=t.readInt(),this.numGlyphs=t.readUInt16(),this.maxPoints=t.readUInt16(),this.maxContours=t.readUInt16(),this.maxCompositePoints=t.readUInt16(),this.maxComponentContours=t.readUInt16(),this.maxZones=t.readUInt16(),this.maxTwilightPoints=t.readUInt16(),this.maxStorage=t.readUInt16(),this.maxFunctionDefs=t.readUInt16(),this.maxInstructionDefs=t.readUInt16(),this.maxStackElements=t.readUInt16(),this.maxSizeOfInstructions=t.readUInt16(),this.maxComponentElements=t.readUInt16(),this.maxComponentDepth=t.readUInt16()},e}(),M=function(t){function e(){return e.__super__.constructor.apply(this,arguments)}return h(e,l),e.prototype.tag="hmtx",e.prototype.parse=function(t){var e,n,i,r,o,a,s;for(t.pos=this.offset,this.metrics=[],r=0,a=this.file.hhea.numberOfMetrics;0<=a?r<a:a<r;0<=a?++r:--r)this.metrics.push({advance:t.readUInt16(),lsb:t.readInt16()});for(n=this.file.maxp.numGlyphs-this.file.hhea.numberOfMetrics,this.leftSideBearings=function(){var e,i;for(i=[],e=0;0<=n?e<n:n<e;0<=n?++e:--e)i.push(t.readInt16());return i}(),this.widths=function(){var t,e,n,r;for(r=[],t=0,e=(n=this.metrics).length;t<e;t++)i=n[t],r.push(i.advance);return r}.call(this),e=this.widths[this.widths.length-1],s=[],o=0;0<=n?o<n:n<o;0<=n?++o:--o)s.push(this.widths.push(e));return s},e.prototype.forGlyph=function(t){return t in this.metrics?this.metrics[t]:{advance:this.metrics[this.metrics.length-1].advance,lsb:this.leftSideBearings[t-this.metrics.length]}},e}(),E=[].slice,C=function(t){function e(){return e.__super__.constructor.apply(this,arguments)}return h(e,l),e.prototype.tag="glyf",e.prototype.parse=function(t){return this.cache={}},e.prototype.glyphFor=function(t){var e,n,i,r,o,a,s,c,l,d;return(t=t)in this.cache?this.cache[t]:(r=this.file.loca,e=this.file.contents,n=r.indexOf(t),0===(i=r.lengthOf(t))?this.cache[t]=null:(e.pos=this.offset+n,o=(a=new u(e.read(i))).readShort(),c=a.readShort(),d=a.readShort(),s=a.readShort(),l=a.readShort(),this.cache[t]=-1===o?new T(a,c,d,s,l):new A(a,o,c,d,s,l),this.cache[t]))},e.prototype.encode=function(t,e,n){var i,r,o,a,s;for(o=[],r=[],a=0,s=e.length;a<s;a++)i=t[e[a]],r.push(o.length),i&&(o=o.concat(i.encode(n)));return r.push(o.length),{table:o,offsets:r}},e}(),A=function(){function t(t,e,n,i,r,o){this.raw=t,this.numberOfContours=e,this.xMin=n,this.yMin=i,this.xMax=r,this.yMax=o,this.compound=!1}return t.prototype.encode=function(){return this.raw.data},t}(),T=function(){function t(t,e,n,i,r){var o,a;for(this.raw=t,this.xMin=e,this.yMin=n,this.xMax=i,this.yMax=r,this.compound=!0,this.glyphIDs=[],this.glyphOffsets=[],o=this.raw;a=o.readShort(),this.glyphOffsets.push(o.pos),this.glyphIDs.push(o.readShort()),32&a;)o.pos+=1&a?4:2,128&a?o.pos+=8:64&a?o.pos+=4:8&a&&(o.pos+=2)}return t.prototype.encode=function(t){var e,n,i,r,o;for(n=new u(E.call(this.raw.data)),e=i=0,r=(o=this.glyphIDs).length;i<r;e=++i)o[e],n.pos=this.glyphOffsets[e];return n.data},t}(),O=function(t){function e(){return e.__super__.constructor.apply(this,arguments)}return h(e,l),e.prototype.tag="loca",e.prototype.parse=function(t){var e;return t.pos=this.offset,e=this.file.head.indexToLocFormat,this.offsets=0===e?function(){var e,n,i;for(i=[],e=0,n=this.length;e<n;e+=2)i.push(2*t.readUInt16());return i}.call(this):function(){var e,n,i;for(i=[],e=0,n=this.length;e<n;e+=4)i.push(t.readUInt32());return i}.call(this)},e.prototype.indexOf=function(t){return this.offsets[t]},e.prototype.lengthOf=function(t){return this.offsets[t+1]-this.offsets[t]},e.prototype.encode=function(t,e){for(var n=new Uint32Array(this.offsets.length),i=0,r=0,o=0;o<n.length;++o)if(n[o]=i,r<e.length&&e[r]==o){++r,n[o]=i;var a=this.offsets[o],s=this.offsets[o+1]-a;0<s&&(i+=s)}for(var c=new Array(4*n.length),l=0;l<n.length;++l)c[4*l+3]=255&n[l],c[4*l+2]=(65280&n[l])>>8,c[4*l+1]=(16711680&n[l])>>16,c[4*l]=(4278190080&n[l])>>24;return c},e}(),_=function(){function t(t){this.font=t,this.subset={},this.unicodes={},this.next=33}return t.prototype.generateCmap=function(){var t,e,n,i,r;for(e in i=this.font.cmap.tables[0].codeMap,t={},r=this.subset)n=r[e],t[e]=i[n];return t},t.prototype.glyphsFor=function(t){var e,n,i,r,o,a,s;for(i={},o=0,a=t.length;o<a;o++)i[r=t[o]]=this.font.glyf.glyphFor(r);for(r in e=[],i)(null!=(n=i[r])?n.compound:void 0)&&e.push.apply(e,n.glyphIDs);if(0<e.length)for(r in s=this.glyphsFor(e))n=s[r],i[r]=n;return i},t.prototype.encode=function(t,e){var n,i,r,o,a,s,c,l,u,d,p,h,f,g,v;for(i in n=m.encode(this.generateCmap(),"unicode"),o=this.glyphsFor(t),p={0:0},v=n.charMap)p[(s=v[i]).old]=s.new;for(h in d=n.maxGlyphID,o)h in p||(p[h]=d++);return l=function(t){var e,n;for(e in n={},t)n[t[e]]=e;return n}(p),u=Object.keys(l).sort(function(t,e){return t-e}),f=function(){var t,e,n;for(n=[],t=0,e=u.length;t<e;t++)a=u[t],n.push(l[a]);return n}(),r=this.font.glyf.encode(o,f,p),c=this.font.loca.encode(r.offsets,f),g={cmap:this.font.cmap.raw(),glyf:r.table,loca:c,hmtx:this.font.hmtx.raw(),hhea:this.font.hhea.raw(),maxp:this.font.maxp.raw(),post:this.font.post.raw(),name:this.font.name.raw(),head:this.font.head.encode(e)},this.font.os2.exists&&(g["OS/2"]=this.font.os2.raw()),this.font.directory.encode(g)},t}();t.API.PDFObject=function(){var t;function e(){}return t=function(t,e){return(Array(e+1).join("0")+t).slice(-e)},e.convert=function(n){var i,r,o,a;if(Array.isArray(n))return"["+function(){var t,r,o;for(o=[],t=0,r=n.length;t<r;t++)i=n[t],o.push(e.convert(i));return o}().join(" ")+"]";if("string"==typeof n)return"/"+n;if(null!=n?n.isString:void 0)return"("+n+")";if(n instanceof Date)return"(D:"+t(n.getUTCFullYear(),4)+t(n.getUTCMonth(),2)+t(n.getUTCDate(),2)+t(n.getUTCHours(),2)+t(n.getUTCMinutes(),2)+t(n.getUTCSeconds(),2)+"Z)";if("[object Object]"!=={}.toString.call(n))return""+n;for(r in o=["<<"],n)a=n[r],o.push("/"+r+" "+e.convert(a));return o.push(">>"),o.join("\n")},e}()}(ft),Ot="undefined"!=typeof self&&self||"undefined"!=typeof window&&window||void 0!==i&&i||Function('return typeof this === "object" && this.content')()||Function("return this")(),_t=function(){var t,e,n;function i(t){var e,n,i,r,o,a,s,c,l,u,d,p,h,f;for(this.data=t,this.pos=8,this.palette=[],this.imgData=[],this.transparency={},this.animation=null,this.text={},a=null;;){switch(e=this.readUInt32(),l=function(){var t,e;for(e=[],t=0;t<4;++t)e.push(String.fromCharCode(this.data[this.pos++]));return e}.call(this).join("")){case"IHDR":this.width=this.readUInt32(),this.height=this.readUInt32(),this.bits=this.data[this.pos++],this.colorType=this.data[this.pos++],this.compressionMethod=this.data[this.pos++],this.filterMethod=this.data[this.pos++],this.interlaceMethod=this.data[this.pos++];break;case"acTL":this.animation={numFrames:this.readUInt32(),numPlays:this.readUInt32()||1/0,frames:[]};break;case"PLTE":this.palette=this.read(e);break;case"fcTL":a&&this.animation.frames.push(a),this.pos+=4,a={width:this.readUInt32(),height:this.readUInt32(),xOffset:this.readUInt32(),yOffset:this.readUInt32()},o=this.readUInt16(),r=this.readUInt16()||100,a.delay=1e3*o/r,a.disposeOp=this.data[this.pos++],a.blendOp=this.data[this.pos++],a.data=[];break;case"IDAT":case"fdAT":for("fdAT"===l&&(this.pos+=4,e-=4),t=(null!=a?a.data:void 0)||this.imgData,p=0;0<=e?p<e:e<p;0<=e?++p:--p)t.push(this.data[this.pos++]);break;case"tRNS":switch(this.transparency={},this.colorType){case 3:if(i=this.palette.length/3,this.transparency.indexed=this.read(e),this.transparency.indexed.length>i)throw new Error("More transparent colors than palette size");if(0<(u=i-this.transparency.indexed.length))for(h=0;0<=u?h<u:u<h;0<=u?++h:--h)this.transparency.indexed.push(255);break;case 0:this.transparency.grayscale=this.read(e)[0];break;case 2:this.transparency.rgb=this.read(e)}break;case"tEXt":s=(d=this.read(e)).indexOf(0),c=String.fromCharCode.apply(String,d.slice(0,s)),this.text[c]=String.fromCharCode.apply(String,d.slice(s+1));break;case"IEND":return a&&this.animation.frames.push(a),this.colors=function(){switch(this.colorType){case 0:case 3:case 4:return 1;case 2:case 6:return 3}}.call(this),this.hasAlphaChannel=4===(f=this.colorType)||6===f,n=this.colors+(this.hasAlphaChannel?1:0),this.pixelBitlength=this.bits*n,this.colorSpace=function(){switch(this.colors){case 1:return"DeviceGray";case 3:return"DeviceRGB"}}.call(this),void(this.imgData=new Uint8Array(this.imgData));default:this.pos+=e}if(this.pos+=4,this.pos>this.data.length)throw new Error("Incomplete or corrupt PNG file")}}i.load=function(t,e,n){var r;return"function"==typeof e&&(n=e),(r=new XMLHttpRequest).open("GET",t,!0),r.responseType="arraybuffer",r.onload=function(){var t;return t=new i(new Uint8Array(r.response||r.mozResponseArrayBuffer)),"function"==typeof(null!=e?e.getContext:void 0)&&t.render(e),"function"==typeof n?n(t):void 0},r.send(null)},i.prototype.read=function(t){var e,n;for(n=[],e=0;0<=t?e<t:t<e;0<=t?++e:--e)n.push(this.data[this.pos++]);return n},i.prototype.readUInt32=function(){return this.data[this.pos++]<<24|this.data[this.pos++]<<16|this.data[this.pos++]<<8|this.data[this.pos++]},i.prototype.readUInt16=function(){return this.data[this.pos++]<<8|this.data[this.pos++]},i.prototype.decodePixels=function(t){var e=this.pixelBitlength/8,n=new Uint8Array(this.width*this.height*e),i=0,r=this;if(null==t&&(t=this.imgData),0===t.length)return new Uint8Array(0);function o(o,a,s,c){var l,u,d,p,h,f,g,m,v,y,b,w,S,x,M,E,C,A,T,O,_,P=Math.ceil((r.width-o)/s),I=Math.ceil((r.height-a)/c),k=r.width==P&&r.height==I;for(x=e*P,w=k?n:new Uint8Array(x*I),f=t.length,u=S=0;S<I&&i<f;){switch(t[i++]){case 0:for(p=C=0;C<x;p=C+=1)w[u++]=t[i++];break;case 1:for(p=A=0;A<x;p=A+=1)l=t[i++],h=p<e?0:w[u-e],w[u++]=(l+h)%256;break;case 2:for(p=T=0;T<x;p=T+=1)l=t[i++],d=(p-p%e)/e,M=S&&w[(S-1)*x+d*e+p%e],w[u++]=(M+l)%256;break;case 3:for(p=O=0;O<x;p=O+=1)l=t[i++],d=(p-p%e)/e,h=p<e?0:w[u-e],M=S&&w[(S-1)*x+d*e+p%e],w[u++]=(l+Math.floor((h+M)/2))%256;break;case 4:for(p=_=0;_<x;p=_+=1)l=t[i++],d=(p-p%e)/e,h=p<e?0:w[u-e],0===S?M=E=0:(M=w[(S-1)*x+d*e+p%e],E=d&&w[(S-1)*x+(d-1)*e+p%e]),g=h+M-E,m=Math.abs(g-h),y=Math.abs(g-M),b=Math.abs(g-E),v=m<=y&&m<=b?h:y<=b?M:E,w[u++]=(l+v)%256;break;default:throw new Error("Invalid filter algorithm: "+t[i-1])}if(!k){var D=((a+S*c)*r.width+o)*e,R=S*x;for(p=0;p<P;p+=1){for(var L=0;L<e;L+=1)n[D++]=w[R++];D+=(s-1)*e}}S++}}return t=(t=new Nt(t)).getBytes(),1==r.interlaceMethod?(o(0,0,8,8),o(4,0,8,8),o(0,4,4,8),o(2,0,4,4),o(0,2,2,4),o(1,0,2,2),o(0,1,1,2)):o(0,0,1,1),n},i.prototype.decodePalette=function(){var t,e,n,i,r,o,a,s,c;for(n=this.palette,o=this.transparency.indexed||[],r=new Uint8Array((o.length||0)+n.length),i=0,n.length,e=a=t=0,s=n.length;a<s;e=a+=3)r[i++]=n[e],r[i++]=n[e+1],r[i++]=n[e+2],r[i++]=null!=(c=o[t++])?c:255;return r},i.prototype.copyToImageData=function(t,e){var n,i,r,o,a,s,c,l,u,d,p;if(i=this.colors,u=null,n=this.hasAlphaChannel,this.palette.length&&(u=null!=(p=this._decodedPalette)?p:this._decodedPalette=this.decodePalette(),i=4,n=!0),l=(r=t.data||t).length,a=u||e,o=s=0,1===i)for(;o<l;)c=u?4*e[o/4]:s,d=a[c++],r[o++]=d,r[o++]=d,r[o++]=d,r[o++]=n?a[c++]:255,s=c;else for(;o<l;)c=u?4*e[o/4]:s,r[o++]=a[c++],r[o++]=a[c++],r[o++]=a[c++],r[o++]=n?a[c++]:255,s=c},i.prototype.decode=function(){var t;return t=new Uint8Array(this.width*this.height*4),this.copyToImageData(t,this.decodePixels()),t};try{e=Ot.document.createElement("canvas"),n=e.getContext("2d")}catch(t){return-1}return t=function(t){var i;return n.width=t.width,n.height=t.height,n.clearRect(0,0,t.width,t.height),n.putImageData(t,0,0),(i=new Image).src=e.toDataURL(),i},i.prototype.decodeFrames=function(e){var n,i,r,o,a,s,c,l;if(this.animation){for(l=[],i=a=0,s=(c=this.animation.frames).length;a<s;i=++a)n=c[i],r=e.createImageData(n.width,n.height),o=this.decodePixels(new Uint8Array(n.data)),this.copyToImageData(r,o),n.imageData=r,l.push(n.image=t(r));return l}},i.prototype.renderFrame=function(t,e){var n,i,r;return n=(i=this.animation.frames)[e],r=i[e-1],0===e&&t.clearRect(0,0,this.width,this.height),1===(null!=r?r.disposeOp:void 0)?t.clearRect(r.xOffset,r.yOffset,r.width,r.height):2===(null!=r?r.disposeOp:void 0)&&t.putImageData(r.imageData,r.xOffset,r.yOffset),0===n.blendOp&&t.clearRect(n.xOffset,n.yOffset,n.width,n.height),t.drawImage(n.image,n.xOffset,n.yOffset)},i.prototype.animate=function(t){var e,n,i,r,o,a,s=this;return n=0,a=this.animation,r=a.numFrames,i=a.frames,o=a.numPlays,(e=function(){var a,c;if(a=n++%r,c=i[a],s.renderFrame(t,a),1<r&&n/r<o)return s.animation._timeout=setTimeout(e,c.delay)})()},i.prototype.stopAnimation=function(){var t;return clearTimeout(null!=(t=this.animation)?t._timeout:void 0)},i.prototype.render=function(t){var e,n;return t._png&&t._png.stopAnimation(),t._png=this,t.width=this.width,t.height=this.height,e=t.getContext("2d"),this.animation?(this.decodeFrames(e),this.animate(e)):(n=e.createImageData(this.width,this.height),this.copyToImageData(n,this.decodePixels()),e.putImageData(n,0,0))},i}(),Ot.PNG=_t;var Lt=function(){function t(){this.pos=0,this.bufferLength=0,this.eof=!1,this.buffer=null}return t.prototype={ensureBuffer:function(t){var e=this.buffer,n=e?e.byteLength:0;if(t<n)return e;for(var i=512;i<t;)i<<=1;for(var r=new Uint8Array(i),o=0;o<n;++o)r[o]=e[o];return this.buffer=r},getByte:function(){for(var t=this.pos;this.bufferLength<=t;){if(this.eof)return null;this.readBlock()}return this.buffer[this.pos++]},getBytes:function(t){var e=this.pos;if(t){this.ensureBuffer(e+t);for(var n=e+t;!this.eof&&this.bufferLength<n;)this.readBlock();var i=this.bufferLength;i<n&&(n=i)}else{for(;!this.eof;)this.readBlock();n=this.bufferLength}return this.pos=n,this.buffer.subarray(e,n)},lookChar:function(){for(var t=this.pos;this.bufferLength<=t;){if(this.eof)return null;this.readBlock()}return String.fromCharCode(this.buffer[this.pos])},getChar:function(){for(var t=this.pos;this.bufferLength<=t;){if(this.eof)return null;this.readBlock()}return String.fromCharCode(this.buffer[this.pos++])},makeSubStream:function(t,e,n){for(var i=t+e;this.bufferLength<=i&&!this.eof;)this.readBlock();return new Stream(this.buffer,t,e,n)},skip:function(t){t||(t=1),this.pos+=t},reset:function(){this.pos=0}},t}(),Nt=function(){if("undefined"!=typeof Uint32Array){var t=new Uint32Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),e=new Uint32Array([3,4,5,6,7,8,9,10,65547,65549,65551,65553,131091,131095,131099,131103,196643,196651,196659,196667,262211,262227,262243,262259,327811,327843,327875,327907,258,258,258]),n=new Uint32Array([1,2,3,4,65541,65543,131081,131085,196625,196633,262177,262193,327745,327777,393345,393409,459009,459137,524801,525057,590849,591361,657409,658433,724993,727041,794625,798721,868353,876545]),i=[new Uint32Array([459008,524368,524304,524568,459024,524400,524336,590016,459016,524384,524320,589984,524288,524416,524352,590048,459012,524376,524312,589968,459028,524408,524344,590032,459020,524392,524328,59e4,524296,524424,524360,590064,459010,524372,524308,524572,459026,524404,524340,590024,459018,524388,524324,589992,524292,524420,524356,590056,459014,524380,524316,589976,459030,524412,524348,590040,459022,524396,524332,590008,524300,524428,524364,590072,459009,524370,524306,524570,459025,524402,524338,590020,459017,524386,524322,589988,524290,524418,524354,590052,459013,524378,524314,589972,459029,524410,524346,590036,459021,524394,524330,590004,524298,524426,524362,590068,459011,524374,524310,524574,459027,524406,524342,590028,459019,524390,524326,589996,524294,524422,524358,590060,459015,524382,524318,589980,459031,524414,524350,590044,459023,524398,524334,590012,524302,524430,524366,590076,459008,524369,524305,524569,459024,524401,524337,590018,459016,524385,524321,589986,524289,524417,524353,590050,459012,524377,524313,589970,459028,524409,524345,590034,459020,524393,524329,590002,524297,524425,524361,590066,459010,524373,524309,524573,459026,524405,524341,590026,459018,524389,524325,589994,524293,524421,524357,590058,459014,524381,524317,589978,459030,524413,524349,590042,459022,524397,524333,590010,524301,524429,524365,590074,459009,524371,524307,524571,459025,524403,524339,590022,459017,524387,524323,589990,524291,524419,524355,590054,459013,524379,524315,589974,459029,524411,524347,590038,459021,524395,524331,590006,524299,524427,524363,590070,459011,524375,524311,524575,459027,524407,524343,590030,459019,524391,524327,589998,524295,524423,524359,590062,459015,524383,524319,589982,459031,524415,524351,590046,459023,524399,524335,590014,524303,524431,524367,590078,459008,524368,524304,524568,459024,524400,524336,590017,459016,524384,524320,589985,524288,524416,524352,590049,459012,524376,524312,589969,459028,524408,524344,590033,459020,524392,524328,590001,524296,524424,524360,590065,459010,524372,524308,524572,459026,524404,524340,590025,459018,524388,524324,589993,524292,524420,524356,590057,459014,524380,524316,589977,459030,524412,524348,590041,459022,524396,524332,590009,524300,524428,524364,590073,459009,524370,524306,524570,459025,524402,524338,590021,459017,524386,524322,589989,524290,524418,524354,590053,459013,524378,524314,589973,459029,524410,524346,590037,459021,524394,524330,590005,524298,524426,524362,590069,459011,524374,524310,524574,459027,524406,524342,590029,459019,524390,524326,589997,524294,524422,524358,590061,459015,524382,524318,589981,459031,524414,524350,590045,459023,524398,524334,590013,524302,524430,524366,590077,459008,524369,524305,524569,459024,524401,524337,590019,459016,524385,524321,589987,524289,524417,524353,590051,459012,524377,524313,589971,459028,524409,524345,590035,459020,524393,524329,590003,524297,524425,524361,590067,459010,524373,524309,524573,459026,524405,524341,590027,459018,524389,524325,589995,524293,524421,524357,590059,459014,524381,524317,589979,459030,524413,524349,590043,459022,524397,524333,590011,524301,524429,524365,590075,459009,524371,524307,524571,459025,524403,524339,590023,459017,524387,524323,589991,524291,524419,524355,590055,459013,524379,524315,589975,459029,524411,524347,590039,459021,524395,524331,590007,524299,524427,524363,590071,459011,524375,524311,524575,459027,524407,524343,590031,459019,524391,524327,589999,524295,524423,524359,590063,459015,524383,524319,589983,459031,524415,524351,590047,459023,524399,524335,590015,524303,524431,524367,590079]),9],r=[new Uint32Array([327680,327696,327688,327704,327684,327700,327692,327708,327682,327698,327690,327706,327686,327702,327694,0,327681,327697,327689,327705,327685,327701,327693,327709,327683,327699,327691,327707,327687,327703,327695,0]),5];return(a.prototype=Object.create(Lt.prototype)).getBits=function(t){for(var e,n=this.codeSize,i=this.codeBuf,r=this.bytes,a=this.bytesPos;n<t;)void 0===(e=r[a++])&&o("Bad encoding in flate stream"),i|=e<<n,n+=8;return e=i&(1<<t)-1,this.codeBuf=i>>t,this.codeSize=n-=t,this.bytesPos=a,e},a.prototype.getCode=function(t){for(var e=t[0],n=t[1],i=this.codeSize,r=this.codeBuf,a=this.bytes,s=this.bytesPos;i<n;){var c;void 0===(c=a[s++])&&o("Bad encoding in flate stream"),r|=c<<i,i+=8}var l=e[r&(1<<n)-1],u=l>>16,d=65535&l;return(0==i||i<u||0==u)&&o("Bad encoding in flate stream"),this.codeBuf=r>>u,this.codeSize=i-u,this.bytesPos=s,d},a.prototype.generateHuffmanTable=function(t){for(var e=t.length,n=0,i=0;i<e;++i)t[i]>n&&(n=t[i]);for(var r=1<<n,o=new Uint32Array(r),a=1,s=0,c=2;a<=n;++a,s<<=1,c<<=1)for(var l=0;l<e;++l)if(t[l]==a){var u=0,d=s;for(i=0;i<a;++i)u=u<<1|1&d,d>>=1;for(i=u;i<r;i+=c)o[i]=a<<16|l;++s}return[o,n]},a.prototype.readBlock=function(){function a(t,e,n,i,r){for(var o=t.getBits(n)+i;0<o--;)e[f++]=r}var s=this.getBits(3);if(1&s&&(this.eof=!0),0!=(s>>=1)){var c,l;if(1==s)c=i,l=r;else if(2==s){for(var u=this.getBits(5)+257,d=this.getBits(5)+1,p=this.getBits(4)+4,h=Array(t.length),f=0;f<p;)h[t[f++]]=this.getBits(3);for(var g=this.generateHuffmanTable(h),m=0,v=(f=0,u+d),y=new Array(v);f<v;){var b=this.getCode(g);16==b?a(this,y,2,3,m):17==b?a(this,y,3,3,m=0):18==b?a(this,y,7,11,m=0):y[f++]=m=b}c=this.generateHuffmanTable(y.slice(0,u)),l=this.generateHuffmanTable(y.slice(u,v))}else o("Unknown block type in flate stream");for(var w=(k=this.buffer)?k.length:0,S=this.bufferLength;;){var x=this.getCode(c);if(x<256)w<=S+1&&(w=(k=this.ensureBuffer(S+1)).length),k[S++]=x;else{if(256==x)return void(this.bufferLength=S);var M=(x=e[x-=257])>>16;0<M&&(M=this.getBits(M)),m=(65535&x)+M,x=this.getCode(l),0<(M=(x=n[x])>>16)&&(M=this.getBits(M));var E=(65535&x)+M;w<=S+m&&(w=(k=this.ensureBuffer(S+m)).length);for(var C=0;C<m;++C,++S)k[S]=k[S-E]}}}else{var A,T=this.bytes,O=this.bytesPos;void 0===(A=T[O++])&&o("Bad block header in flate stream");var _=A;void 0===(A=T[O++])&&o("Bad block header in flate stream"),_|=A<<8,void 0===(A=T[O++])&&o("Bad block header in flate stream");var P=A;void 0===(A=T[O++])&&o("Bad block header in flate stream"),(P|=A<<8)!=(65535&~_)&&o("Bad uncompressed block length in flate stream"),this.codeBuf=0,this.codeSize=0;var I=this.bufferLength,k=this.ensureBuffer(I+_),D=I+_;this.bufferLength=D;for(var R=I;R<D;++R){if(void 0===(A=T[O++])){this.eof=!0;break}k[R]=A}this.bytesPos=O}},a}function o(t){throw new Error(t)}function a(t){var e=0,n=t[e++],i=t[e++];-1!=n&&-1!=i||o("Invalid header in flate stream"),8!=(15&n)&&o("Unknown compression method in flate stream"),((n<<8)+i)%31!=0&&o("Bad FCHECK in flate stream"),32&i&&o("FDICT bit set in flate stream"),this.bytes=t,this.bytesPos=2,this.codeSize=0,this.codeBuf=0,Lt.call(this)}}();window.tmp=Nt},void 0===(o=r.call(e,n,e,t))||(t.exports=o);try{t.exports=jsPDF}catch(t){}}).call(this,n(213))},function(t,e,n){t.exports=n(314)("iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAABhGlDQ1BJQ0MgcHJvZmlsZQAAKJF9kT1Iw0AcxV9TtSKVgnYQcchQnSyIijhqFYpQIdQKrTqYXPohNGlIUlwcBdeCgx+LVQcXZ10dXAVB8APEydFJ0UVK/F9SaBHjwXE/3t173L0DhHqZaVbHGKDptplOJsRsbkUMvaILEYQRQp/MLGNWklLwHV/3CPD1Ls6z/M/9OXrVvMWAgEg8wwzTJl4nntq0Dc77xFFWklXic+JRky5I/Mh1xeM3zkWXBZ4ZNTPpOeIosVhsY6WNWcnUiCeJY6qmU76Q9VjlvMVZK1dZ8578heG8vrzEdZpDSGIBi5AgQkEVGyjDRpxWnRQLadpP+PgHXb9ELoVcG2DkmEcFGmTXD/4Hv7u1ChPjXlI4AXS+OM7HMBDaBRo1x/k+dpzGCRB8Bq70lr9SB6Y/Sa+1tNgRENkGLq5bmrIHXO4AA0+GbMquFKQpFArA+xl9Uw7ovwV6Vr3emvs4fQAy1FXqBjg4BEaKlL3m8+7u9t7+PdPs7wf7KnJ3vnrwOAAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAAN1wAADdcBQiibeAAAAAd0SU1FB+QGDwwJB9CewUwAAAOISURBVHja7d1fiFRVHMDxb7ksrpXGItqGhiSku+GjCPkkBFIvJiKRY2LBGviyEOSDECSClImoBNpDQS8JLQQhrC/bH0pwBRF1jQgpF0qSCFNiqW1Jfbg3OHs6uzOOe+feye8HDtx75jd7zt75zfzOndk7C5IkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkqYoeKHn8B4FtwOIWjzsKDPnwl+814HZJbbWHP3sGlunJ+3Tsyuio0Fy+As4UPMYGYKUPezUT4CSwv+AxlpkA1SoBMgFkAsg1wDTmAYcS/XuAq/n2M8D26PbfgN0+vO2fAHOB/kT/e0ECrEjEjDWRAOuBV1r8qvgXcAC4aAKUXwo/AeaXMPZyYK1rgHJ1lvTgAyy0BFTLJFAreIwe4LBrgPomgOOJ/t+D7R8SMb/ew5j/AIMF/15PuQhszDiwpU7M13mTawCZAPpflYCH89Oz2M78XB/gWeD16PZrwKuzPJd+YGPUdxrYG+x/CDwWxRwEhk2A5k/Pnkv0h6dsSxMxYwXMpS8xzmS0v47sE8fQYJUPsCXANYBMALkIrKg/gXcT/eEbPaOJmOsFzOWLRM3/Ntp/H+iO+kZNgHtLgF11Ys7mrWgn8jaTty0BMgHkGmC2zAdOJfo3AZfz7Q1MfTMG4Gfg+VmeyxvAy1Hfl8BAsD8ELIli3gQ+MwGan9+qRH9XsN2diHmkgLk8nhjnSrTfy3/fCOq2BMgEkAkg1wB3bTxaZP3rarA9koi5WcBcPk3U/B+j/beABVHfiAnQvAngSJ2Y7/JWtG/yNpOPLAEyAWQCzJZH83oet6eDmFri9gsFzGVfYpyPo5gLiZhalQ9wRxskaOqCjTnBduqijiIu8uhK/NyHEuPGMZ2+AsgEkAkg1wB37Q/ghUT/WLA9nIgZL2AuH5B9kVXol2i/P7EuOGcCNG+S+h+l/pS3ol3K20yG2+0VwBJgCWg7L5F9Nh86D3ze4nk8AWxO9B8rqASZALkBYE3ioLc6AVaQfb1L7Hg7JYAlwNNAmQAyAeRZQNnWADsaiFuU6Otr8L7LG4iZ0+DP6p2mfytwo859F5t6mXco7x9GvBjMY26J8/j+fi4B10ocO3wb92+KuaC06seg9BJwlOyPKHtaPO55pn6z2C2yK4xqLX5STJB97a0kSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSQB3AL6S4v02CeJyAAAAAElFTkSuQmCC")},function(t,e,n){"use strict";e.byteLength=function(t){var e=l(t),n=e[0],i=e[1];return 3*(n+i)/4-i},e.toByteArray=function(t){var e,n,i=l(t),a=i[0],s=i[1],c=new o(3*(a+s)/4-s),u=0,d=s>0?a-4:a;for(n=0;n<d;n+=4)e=r[t.charCodeAt(n)]<<18|r[t.charCodeAt(n+1)]<<12|r[t.charCodeAt(n+2)]<<6|r[t.charCodeAt(n+3)],c[u++]=e>>16&255,c[u++]=e>>8&255,c[u++]=255&e;return 2===s&&(e=r[t.charCodeAt(n)]<<2|r[t.charCodeAt(n+1)]>>4,c[u++]=255&e),1===s&&(e=r[t.charCodeAt(n)]<<10|r[t.charCodeAt(n+1)]<<4|r[t.charCodeAt(n+2)]>>2,c[u++]=e>>8&255,c[u++]=255&e),c},e.fromByteArray=function(t){for(var e,n=t.length,r=n%3,o=[],a=0,s=n-r;a<s;a+=16383)o.push(u(t,a,a+16383>s?s:a+16383));return 1===r?(e=t[n-1],o.push(i[e>>2]+i[e<<4&63]+"==")):2===r&&(e=(t[n-2]<<8)+t[n-1],o.push(i[e>>10]+i[e>>4&63]+i[e<<2&63]+"=")),o.join("")};for(var i=[],r=[],o="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,c=a.length;s<c;++s)i[s]=a[s],r[a.charCodeAt(s)]=s;function l(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var n=t.indexOf("=");return-1===n&&(n=e),[n,n===e?0:4-n%4]}function u(t,e,n){for(var r,o,a=[],s=e;s<n;s+=3)r=(t[s]<<16&16711680)+(t[s+1]<<8&65280)+(255&t[s+2]),a.push(i[(o=r)>>18&63]+i[o>>12&63]+i[o>>6&63]+i[63&o]);return a.join("")}r["-".charCodeAt(0)]=62,r["_".charCodeAt(0)]=63},function(t,e){e.read=function(t,e,n,i,r){var o,a,s=8*r-i-1,c=(1<<s)-1,l=c>>1,u=-7,d=n?r-1:0,p=n?-1:1,h=t[e+d];for(d+=p,o=h&(1<<-u)-1,h>>=-u,u+=s;u>0;o=256*o+t[e+d],d+=p,u-=8);for(a=o&(1<<-u)-1,o>>=-u,u+=i;u>0;a=256*a+t[e+d],d+=p,u-=8);if(0===o)o=1-l;else{if(o===c)return a?NaN:1/0*(h?-1:1);a+=Math.pow(2,i),o-=l}return(h?-1:1)*a*Math.pow(2,o-i)},e.write=function(t,e,n,i,r,o){var a,s,c,l=8*o-r-1,u=(1<<l)-1,d=u>>1,p=23===r?Math.pow(2,-24)-Math.pow(2,-77):0,h=i?0:o-1,f=i?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,a=u):(a=Math.floor(Math.log(e)/Math.LN2),e*(c=Math.pow(2,-a))<1&&(a--,c*=2),(e+=a+d>=1?p/c:p*Math.pow(2,1-d))*c>=2&&(a++,c/=2),a+d>=u?(s=0,a=u):a+d>=1?(s=(e*c-1)*Math.pow(2,r),a+=d):(s=e*Math.pow(2,d-1)*Math.pow(2,r),a=0));r>=8;t[n+h]=255&s,h+=f,s/=256,r-=8);for(a=a<<r|s,l+=r;l>0;t[n+h]=255&a,h+=f,a/=256,l-=8);t[n+h-f]|=128*g}},function(t,e){var n={}.toString;t.exports=Array.isArray||function(t){return"[object Array]"==n.call(t)}},function(t,e,n){t.exports=n(314)("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")},function(t,e,n){t.exports=n(314)("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")},function(t,e,n){t.exports=n(314)("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")},function(t,e,n){t.exports=n.p+"route_start.png"},function(t,e,n){t.exports=n.p+"route_end.png"},function(t,e,n){t.exports=n.p+"location_marker.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(64),a=n(222),s=function(t){function e(){var e=t.call(this,"pointCloudRenderingChanged")||this;return e.data.mode=a.RenderingMode[a.RenderingMode.PointCloud],e}return r(e,t),e.prototype.isEnabled=function(t){return this.withData("enabled",t),this},e}(o.TrackingEvent);e.PointCloudRenderingModeChangedEvent=s;var c=function(t){function e(){var e=t.call(this,"panoramaRenderingChanged")||this;return e.data.mode=a.RenderingMode[a.RenderingMode.Panorama],e}return r(e,t),e.prototype.isEnabled=function(t){return this.withData("enabled",t),this},e}(o.TrackingEvent);e.PanoramaRenderingModeChangedEvent=c},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(64),a=n(222),s=function(t){function e(){return t.call(this,"sessionStarted")||this}return r(e,t),e.prototype.withRenderingMode=function(t,e){return this.withData("mode",a.RenderingMode[this.getRenderingMode(t,e)]),this},e.prototype.getRenderingMode=function(t,e){return t&&!e?a.RenderingMode.Panorama:e&&!t?a.RenderingMode.PointCloud:t&&e?a.RenderingMode.PanoramaAndPointCloud:a.RenderingMode.None},e}(o.TrackingEvent);e.SessionStartedEvent=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(20),a=n(1122),s=n(396),c=n(4),l=n(52),u=n(55),d=n(199),p=function(t){function e(e,n,i,r,o,s){var l=t.call(this)||this;l.factory=e,l.materialConfig=n,l.entity=i,l.path=r,l.holes=o,l.meshName=s,l.dragBottom=!1,l.dragTop=!1;for(var d=new c.Shape(l.path),p=0,h=l.holes;p<h.length;p++){var f=h[p];f.length>1&&d.holes.push(new c.Path(f))}var g={depth:void 0!==i.zMin&&void 0!==i.zMax?Math.abs(i.zMax-i.zMin):0,bevelEnabled:!1,UVGenerator:new a.MetricUVGenerator};return l.geometry=new c.ExtrudeGeometry(d,g),l.material=i.selected?l.materialConfig.highlightMaterials[i.type]:l.materialConfig.materials[i.type],void 0===i.zMin&&i.children[0]?l.position.z=i.children[0].zMin:l.position.z=i.zMin?i.zMin:0,l.name=l.meshName,i.selected?l.renderOrder=5:l.renderOrder=i.type===u.SiteModelType.FLOOR?4:3,l}return r(e,t),e.prototype.onMouseMove=function(t,e){if(this.entity.selected&&(e.name===l.SplitViewportName.EAST_WEST_VIEW||e.name===l.SplitViewportName.NORTH_SOUTH_VIEW)){var n=Math.abs(this.entity.zMax-this.entity.zMin),i=e.unprojectScreenCoordinates(t.x,t.y,1);i.z<this.entity.zMin+n/3||i.z>this.entity.zMax-n/3?"default"!==document.body.style.cursor&&""!==document.body.style.cursor||(document.body.style.cursor="row-resize"):"row-resize"===document.body.style.cursor&&(document.body.style.cursor="default")}},e.prototype.onMouseOut=function(t,e){"row-resize"===document.body.style.cursor&&(document.body.style.cursor="default")},e.prototype.onDragStart=function(t,e){if(this.entity.selected&&this.factory.ModeService.isSiteModelEditorMode()&&(e.name===l.SplitViewportName.EAST_WEST_VIEW||e.name===l.SplitViewportName.NORTH_SOUTH_VIEW)){this.factory.SiteModelEditorService.isDraggingHeight=!0;var n=e.unprojectScreenCoordinates(t.x,t.y,1);return this.dragStartZ=n.z,this.dragStartHeight=Math.abs(this.entity.zMax-this.entity.zMin),n.z<this.entity.zMin+this.dragStartHeight/3?this.dragBottom=!0:n.z>this.entity.zMax-this.dragStartHeight/3&&(this.dragTop=!0),!0}return!1},e.prototype.onDrag=function(t,e){if(this.entity.selected){var n=e.unprojectScreenCoordinates(t.x,t.y,1),i=this.dragStartZ-n.z,r=Math.floor(100*(this.dragStartHeight+i))/100,a=Math.floor(100*(this.dragStartHeight-i))/100;this.dragBottom&&r>d.SiteModelEditorService.MIN_FLOOR_HEIGHT&&r<this.factory.SiteModelEditorService.checkMaxHeight(this.entity,!0)&&(this.entity.height=r,this.factory.SiteModelEditorService.updateBottom(this.entity,!1)),this.dragTop&&a>d.SiteModelEditorService.MIN_FLOOR_HEIGHT&&a<this.factory.SiteModelEditorService.checkMaxHeight(this.entity,!1)&&(this.entity.height=a,this.factory.SiteModelEditorService.updateTop(this.entity,!1)),document.body.style.cursor="row-resize",o.invalidateAngular(),this.factory.SiteModelEditorService.redrawSiteModel.emit(!0)}},e.prototype.onDragEnd=function(){this.factory.SiteModelEditorService.markAsChanged(this.entity),this.factory.SiteModelEditorService.isDraggingHeight=this.dragBottom=this.dragTop=!1},e.prototype.onContextMenu=function(){var t=this;if(!this.factory.SiteModelEditorService.isDrawingMode()&&this.entity.selected)return[{name:this.factory.gettextCatalog.getString("Remove this entity"),icon:"delete",callback:function(){s.showDeleteConfirmationModal("#delete-confirmation-layer-modal",function(){return t.factory.SiteModelEditorService.deleteEntity(t.entity)},t.factory.gettextCatalog.getString("This entity and all its sub-entities will be deleted."))}}]},e}(c.Mesh);e.SiteModelEntityMesh=p},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),r=function(){function t(){this.a=new i.Vector3,this.b=new i.Vector3,this.c=new i.Vector3,this.d=new i.Vector3}return t.prototype.generateTopUV=function(t,e,n,r,o){return[new i.Vector2(e[3*n],e[3*n+1]),new i.Vector2(e[3*r],e[3*r+1]),new i.Vector2(e[3*o],e[3*o+1])]},t.prototype.generateSideWallUV=function(t,e,n,r,o,a){var s=e;this.a.set(s[3*n],s[3*n+1],s[3*n+2]),this.b.set(s[3*r],s[3*r+1],s[3*r+2]),this.c.set(s[3*o],s[3*o+1],s[3*o+2]),this.d.set(s[3*a],s[3*a+1],s[3*a+2]);var c=this.a.x!==this.b.x,l=c?this.b:this.d,u=this.a.distanceTo(l),d=l.distanceTo(this.c);return[new i.Vector2(this.a.x,0),c?new i.Vector2(this.a.x+u,0):new i.Vector2(this.a.x,d),new i.Vector2(this.a.x+u,d),c?new i.Vector2(this.a.x,d):new i.Vector2(this.a.x+u,0)]},t}();e.MetricUVGenerator=r},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(396),a=n(4),s=n(52),c=function(t){function e(e,n,i,r,o,a,s,c){var l=t.call(this)||this;l.factory=e,l.materialConfig=n,l.point=i,l.points=r,l.entity=o,l.idx=a,l.handleGeometry=s,l.siteModelSnapper=c;var u=i===l.factory.SiteModelEditorService.lastSelectedPoint||i===l.factory.SiteModelEditorService.lastTempPoint,d=l.materialConfig.handleMaterial;return u&&(d=l.materialConfig.selectedHandleMaterial),(i.virtual_||o.drawing)&&(d=l.materialConfig.virtualHandleMaterial),i===l.factory.SiteModelEditorService.lastClosingPoint&&(d=l.materialConfig.snappedHandleMaterial),l.geometry=l.handleGeometry,l.material=d,l.position.x=i.x,l.position.y=i.y,void 0===o.zMin&&o.children[0]?l.position.z=o.children[0].zMin:l.position.z=o.zMin?o.zMin:0,l.updateMatrix(),l.renderOrder=6,l}return r(e,t),e.prototype.onClick=function(t){return this.factory.SiteModelEditorService.selectPoint(this.points,this.point),!1},e.prototype.onDragStart=function(t,e){return!(!this.factory.ModeService.isSiteModelEditorMode()||e.name!==s.SplitViewportName.TOP_VIEW||(this.points.dragging=!0,this.factory.SiteModelEditorService.isDragging=!0,0))},e.prototype.onDrag=function(t,e){this.point.virtual_&&(this.points.splice(this.idx,0,this.point),this.point.virtual_=!1),this.factory.SiteModelEditorService.selectEntity(this.entity,!0),this.factory.SiteModelEditorService.selectPoint(this.points,this.point);var n=this.siteModelSnapper.getLocation(t,e);n&&(this.point.x=n.x,this.point.y=n.y,this.points.indexOf(this.point)===this.points.length-1&&(this.points[0].x=n.x,this.points[0].y=n.y),this.factory.SiteModelEditorService.redrawSiteModel.emit(!0))},e.prototype.onDragEnd=function(){this.factory.SiteModelEditorService.markAsChanged(this.entity),this.points.dragging=!1,this.factory.SiteModelEditorService.isDragging=!1},e.prototype.onMouseMove=function(t,e){("default"===document.body.style.cursor||""===document.body.style.cursor||this.factory.SiteModelEditorService.isDragging&&!this.entity.drawing)&&(document.body.style.cursor="move")},e.prototype.onMouseOver=function(t,e){("default"===document.body.style.cursor||""===document.body.style.cursor||this.factory.SiteModelEditorService.isDragging&&!this.entity.drawing)&&(document.body.style.cursor="move")},e.prototype.onMouseOut=function(t,e){"move"!==document.body.style.cursor||this.factory.SiteModelEditorService.isDragging||(document.body.style.cursor="default")},e.prototype.onContextMenu=function(){var t=this;if(this.factory.SiteModelEditorService.isDrawingMode())return[{name:this.factory.gettextCatalog.getString("Remove last placed point"),icon:"delete",callback:function(){t.factory.SiteModelEditorService.removeLastPointFromCurrentEntity()}},{name:this.factory.gettextCatalog.getString("Quit drawing mode"),icon:"quit",callback:function(){t.factory.SiteModelEditorService.cancelDrawingMode()}}];var e=[];return this.entity.polygon.holes.indexOf(this.points)>=0&&e.push({name:this.factory.gettextCatalog.getString("Remove this hole"),icon:"delete",callback:function(){o.showDeleteConfirmationModal("#delete-confirmation-layer-modal",function(){t.points.length=0,t.factory.SiteModelEditorService.markAsChanged(t.entity),t.factory.SiteModelEditorService.redrawSiteModel.emit()},t.factory.gettextCatalog.getString("This hole will be deleted."))}}),this.point.virtual_||e.push({name:this.factory.gettextCatalog.getString("Remove this point"),icon:"delete",callback:function(){o.showDeleteConfirmationModal("#delete-confirmation-layer-modal",function(){t.factory.SiteModelEditorService.selectPoint(t.points,t.point),t.factory.SiteModelEditorService.removeSelectedPoint()},t.factory.gettextCatalog.getString("This point will be deleted."))}}),e},e}(a.Mesh);e.SiteModelHandleMesh=c},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(t,e,n,i,r,o,a){this.factory=t,this.view=e,this.raycaster=n,this.rectLineGroup=i,this.snappingLineGroup=r,this.bottomLineMeshName=o,this.rectLineMeshName=a}return t.prototype.getLocation=function(e,n){var i;if(!this.factory.SiteModelEditorService.snappingEnabled&&!this.factory.SiteModelEditorService.rectangleSnapping){var r=this.view.getPositionOnGroundPlane(e.x,e.y,void 0,n);return this.isLocationValid(r)?r:void 0}var o=n.normalizeCoordinates(e.x,e.y,0);this.raycaster.setFromCamera(o,n.camera);var a=n.camera;this.raycaster.params.Line.threshold=(a.right-a.left)*t.SNAPPING_DISTANCE/n.screenWidth;var s=[];this.factory.SiteModelEditorService.rectangleSnapping&&(s=s.concat(this.rectLineGroup.children)),this.factory.SiteModelEditorService.snappingEnabled&&(s=s.concat(this.snappingLineGroup.children));var c=this.raycaster.intersectObjects(s,!0,void 0,!1);if(c.length>1&&c[0].object===c[1].object)i=this.findClosestVertex(c);else if(c.length>1&&c[0].object!==c[1].object&&c[0].object.name===this.rectLineMeshName&&c[1].object.name===this.rectLineMeshName)i=this.findCloseIntersection(c);else if(c.length>0)i=this.findClosestPoint(c);else if(i=this.view.getPositionOnGroundPlane(e.x,e.y,void 0,n),!this.isLocationValid(i))return;return i},t.prototype.findClosestVertex=function(t){for(var e,n=1/0,i=0,r=t[0].object.geometry.vertices;i<r.length;i++){var o=r[i];o.distanceTo(t[0].point)<n&&this.isLocationValid(o)&&(e=o,n=o.distanceTo(t[0].point))}return e},t.prototype.findCloseIntersection=function(t){var e=t[0].object.geometry.vertices[0],n=t[0].object.geometry.vertices[1].clone().sub(t[0].object.geometry.vertices[0]).normalize(),i=t[1].object.geometry.vertices[1].clone().sub(t[1].object.geometry.vertices[0]).normalize(),r=n.dot(i),o=[];return Math.abs(r)<1-1e-10&&(this.raycaster.set(e,n),o=this.raycaster.intersectObjects([t[1].object],!0,void 0,!1)),o.length&&o[0].point.distanceTo(t[0].point)<this.raycaster.params.Line.threshold?o[0].point:t[0].point},t.prototype.findClosestPoint=function(t){var e=this,n=t.find(function(t){return t.object.name===e.bottomLineMeshName}),i=n?n.point:t[0].point;if(n||this.isLocationValid(i))return i},t.prototype.isLocationValid=function(t){return!(this.factory.SiteModelEditorService.lastSelectedEntity.parent&&!this.factory.SiteModelService.pointInEntity(t,this.factory.SiteModelEditorService.lastSelectedEntity.parent)||this.factory.SiteModelEditorService.isCuttingMode()&&!this.factory.SiteModelService.pointInEntity(t,this.factory.SiteModelEditorService.lastSelectedEntity))},t.SNAPPING_DISTANCE=10,t}();e.SiteModelSnapper=i},function(t,e,n){t.exports=n.p+"gridmap.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},a=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var s=n(80),c=n(4),l=n(16),u=n(8),d=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i)||this;return o.params=i,o.factory=r,o.loadingInProgress=0,o.loadComplete=new l.Signal,o.maps=[],o.frustum=new c.Frustum,o.frustumMatrix=new c.Matrix4,o.tileColor=i&&i.tileColor?i.tileColor:new c.Color(16777215),o.sceneGroup.name="MapLayer",o.factory.GeoTransformationService.offsetChanged.connect(function(){return o.updateProjection()}),o}return r(e,t),e.prototype.visibilityChanged=function(){if(!this.visible)for(var t=0,e=this.maps;t<e.length;t++)e[t].removeFromSceneGroup(this.sceneGroup)},e.prototype.onAfterRenderViewport=function(e){var n=this;t.prototype.onAfterRenderViewport.call(this,e),this.isVisibleInViewport(e)&&(this.updateTimer||this.loadingInProgress||(this.updateTimer=window.setTimeout(function(){n.update(e).then(function(t){t&&n.loadComplete.emit(!0)}).catch(u.handleWarning)},100)))},e.prototype.addMap=function(t){t.updateObjectGroup(),this.maps.push(t),this.view.invalidateScene()},e.prototype.removeMap=function(t){var e=this.maps.indexOf(t);e>=0&&(t.removeFromSceneGroup(this.sceneGroup),this.maps.splice(e,1),this.view.invalidateScene())},e.prototype.update=function(t){return o(this,void 0,void 0,function(){var e,n,i,r,o,s;return a(this,function(a){for(this.updateTimer=void 0,e=t.camera,(n=e.projectionMatrix.clone()).elements[0]/=1.5,n.elements[5]/=1.5,this.frustumMatrix.multiplyMatrices(n,e.matrixWorldInverse),this.frustum.setFromProjectionMatrix(this.frustumMatrix),this.frustum.planes[4].setComponents(0,0,0,0),this.frustum.planes[5].setComponents(0,0,0,0),i=!0,r=0,o=this.maps;r<o.length;r++)s=o[r],i=s.update(t,this.frustum,this.sceneGroup)&&i;return[2,i]})})},e.prototype.getAttributions=function(){for(var t={},e=0,n=this.maps;e<n.length;e++)n[e].fillAttributions(t);return t},e.prototype.updateProjection=function(){for(var t=0,e=this.maps;t<e.length;t++){var n=e[t];n.clearProjection(),n.updateObjectGroup()}},e}(s.SceneLayer);e.MapLayerBase=d},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(547),a=n(4),s=function(t){function e(e,n,i,r,o,s){var c=t.call(this,e,r,o)||this;return c.baseUrl=n,c.attribution=s,c.tileSizePx=256,c.mapSizeM=40075017,c.maxDepth=i,c.projection=e.getReferenceSystem("EPSG:3857"),c.bias=.5,c.textureLoader=new a.TextureLoader,c.textureLoader.crossOrigin="anonymous",c}return r(e,t),e.prototype.getTileUrl=function(t,e,n){return this.baseUrl.replace(/\${z}/,t.toString(10)).replace(/\${x}/,e.toString(10)).replace(/\${y}/,n.toString(10))},e.prototype.fillAttributions=function(t){t[this.attribution]={score:50}},e}(o.TiledMapBase);e.TiledMapOpenStreetMap=s},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(1129),r=n(4),o=n(157),a=function(){function t(t,e,n){this.mapLayer=t,this.objectGroup=e,this.tileColor=n,this.meshAdded=!1,this.textureLoaded=!1,this.children=[]}return t.prototype.update=function(e,n,i,r,o,a,s){return!!t.doesNotContainTilesToBeDisplayed(e)||(0===i?this.updateTile(e,r,o,a):this.updateSubTiles(e,n,i,r,o,a,s))},t.doesNotContainTilesToBeDisplayed=function(t){return t.tilePresenceMap&&t.tilePresenceMap.empty},t.prototype.updateTile=function(t,e,n,i){return this.mesh||this.createTileObject(t,e,n,i),this.meshAdded||(this.objectGroup.add(this.mesh),this.meshAdded=!0),this.textureLoaded&&this.removeChildren(),this.textureLoaded},t.prototype.updateSubTiles=function(e,n,r,o,a,s,c){for(var l=!0,u=[-.25*o,.25*o,-.25*o,.25*o],d=[.25*o,.25*o,-.25*o,-.25*o],p=0;p<4;++p){var h=c+p.toString(10),f=a+u[p],g=s+d[p];i.sharedData.tempVector.set(f,g,0),e.isTileVisible(i.sharedData.tempVector,.5*o,n)?(this.children[p]||(this.children[p]=new t(this.mapLayer,this.objectGroup,this.tileColor)),l=this.children[p].update(e,n,r-1,.5*o,f,g,h)&&l):this.children[p]&&(this.children[p].remove(),delete this.children[p])}return l&&this.removeObject3D(),l},t.prototype.createTileObject=function(t,e,n,a){var s=this;this.mesh=this.createMesh(t.transformMapToLocal,e,n,a),this.textureLoaded=!1;var c=t.mapSizeM/e,l=Math.log(c)/Math.log(2),u=n/e+.5*(c-1),d=-a/e+.5*(c-1),p=t.getTileUrl(Math.round(l),Math.round(u),Math.round(d));p.includes("mapTest3/2")&&console.log(p),this.mesh.renderOrder=-(1e6-l-100*(t.zIndex||0));var h=this.mesh.material;h.map=t.textureLoader.load(p,function(t){s.mesh?(s.textureLoaded=!0,s.mesh.material.opacity=1,s.mapLayer.view.invalidateScene()):t.dispose(),s.mapLayer.loadingInProgress--},void 0,function(){s.textureLoaded=!0,s.mesh&&(o.disposeMeshMaterial(s.mesh),s.mesh.material=i.sharedData.errorMaterial,s.mapLayer.view.invalidateScene()),s.mapLayer.loadingInProgress--}),h.map.anisotropy=0,h.map.generateMipmaps=!1,h.map.minFilter=r.LinearFilter,h.map.magFilter=r.LinearFilter,this.mapLayer.loadingInProgress++},t.prototype.createMesh=function(t,e,n,o){var a=new r.Geometry;return i.sharedData.tempVector.set(n-e/2,o-e/2,0),a.vertices.push(t.transform(i.sharedData.tempVector).clone()),i.sharedData.tempVector.set(n+e/2,o-e/2,0),a.vertices.push(t.transform(i.sharedData.tempVector).clone()),i.sharedData.tempVector.set(n+e/2,o+e/2,0),a.vertices.push(t.transform(i.sharedData.tempVector).clone()),i.sharedData.tempVector.set(n-e/2,o+e/2,0),a.vertices.push(t.transform(i.sharedData.tempVector).clone()),a.faces.push(i.sharedData.face1),a.faces.push(i.sharedData.face2),a.faceVertexUvs[0].push(i.sharedData.face1UV),a.faceVertexUvs[0].push(i.sharedData.face2UV),new r.Mesh(a,this.createMaterial())},t.prototype.createMaterial=function(){var t=new r.MeshBasicMaterial({transparent:!0,depthWrite:!1,depthTest:!0,opacity:0,side:r.DoubleSide});return t.color=this.tileColor?this.tileColor:new r.Color(16777215),t},t.prototype.remove=function(){this.removeObject3D(),this.removeChildren()},t.prototype.removeObject3D=function(){if(this.mesh){if(this.objectGroup.remove(this.mesh),this.textureLoaded){var t=this.mesh.material.map;t&&t.dispose()}o.disposeMeshMaterial(this.mesh),this.mesh.geometry.dispose(),this.mesh=void 0}this.meshAdded=!1,this.textureLoaded=!1},t.prototype.removeChildren=function(){for(var t=0,e=this.children;t<e.length;t++){var n=e[t];n&&(n.removeObject3D(),n.removeChildren())}this.children.length=0},t}();e.MapTile=a},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),r=function(){function t(){this.tempVector=new i.Vector3,this.face1=new i.Face3(0,1,2),this.face2=new i.Face3(2,3,0),this.errorMaterial=this.createErrorMaterial(),this.uv00=new i.Vector2(0,0),this.uv01=new i.Vector2(0,1),this.uv10=new i.Vector2(1,0),this.uv11=new i.Vector2(1,1),this.face1UV=[this.uv00,this.uv10,this.uv11],this.face2UV=[this.uv11,this.uv01,this.uv00]}return t.prototype.createErrorMaterial=function(){var t=new i.MeshBasicMaterial({transparent:!0,depthWrite:!1,depthTest:!0,opacity:1,side:i.DoubleSide});return t.color=new i.Color(3355443),t},t}();e.sharedData=new r},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(547),a=n(101),s=function(t){function e(n,i,r,o,s){var c=t.call(this,n,r,o)||this;return c.tiledMapEntity=i,c.RestService=s,c.tileSizePx=i.tileSizePx,c.mapSizeM=i.mapSizeM,c.maxDepth=i.maxDepth,c.projection=n.crsLocal,c.zIndex=0,c.textureLoader=a.getTextureLoader(),c._tilePresenceMap=e.decodeBitStream(c.tiledMapEntity.quadtree),c}return r(e,t),e.prototype.getTileUrl=function(t,e,n){var i=(this.tiledMapEntity.filePath+"/"+this.tiledMapEntity.fileName).replace(/\$DEPTH/g,t.toString(10)).replace(/\$X/g,e.toString(10)).replace(/\$Y/g,n.toString(10));return i+="&t="+(new Date).getTime(),this.RestService.addAuthorizationQueryParameter(i)},e.prototype.fillAttributions=function(t){t.NavVis={score:100}},Object.defineProperty(e.prototype,"tilePresenceMap",{get:function(){return this._tilePresenceMap},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"position",{get:function(){return this.tiledMapEntity.location},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"quaternion",{get:function(){return this.tiledMapEntity.orientation},enumerable:!0,configurable:!0}),e.prototype.updateProjection=function(){this.projection=this.TransformService.crsLocal,t.prototype.updateProjection.call(this)},e.decodeBitStream=function(t){if(!t)return{empty:!0};for(var e={},n=[e],i=0;i<t.length;i++){var r=n.shift(),o=parseInt(t.substr(i,1),16);if(1&o){var a={};r[0]=a,n.push(a)}2&o&&(a={},r[1]=a,n.push(a)),4&o&&(a={},r[2]=a,n.push(a)),8&o&&(a={},r[3]=a,n.push(a))}var s={empty:!0};return this.computeHashes(s,e,""),s},e.computeHashes=function(t,e,n){for(var i=0;i<4;i++)e[i]&&(t[n+i.toString(10)]=!0,t.empty=!1,this.computeHashes(t,e[i],n+i.toString(10)))},e}(o.TiledMapBase);e.TiledMapFromEntity=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(7),a=n(101),s=n(108),c=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.meshes=[],e.alphaMasks=[],e.alphaMaskTextures=[],e.meshGeometries=[],e}return r(e,t),e.prototype.copy=function(e,n){return void 0===n&&(n=!1),t.prototype.fill.call(this,e),this.identifier=e.identifier,this.name=e.name,this.meshes=o.clone(e.meshes),this.alphaMasks=o.clone(e.alphaMasks),this.fnFormat=e.fnFormat,this.depthFnFormat=e.depthFnFormat,this.blending=e.blending,this.tiles=e.tiles,this.resolutions=e.resolutions,this.depthResolutions=e.depthResolutions,n||(this.alphaMaskTextures=e.alphaMaskTextures,this.meshGeometries=e.meshGeometries),this},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.identifier=e.identifier,this.name=e.name,this.meshes=o.clone(e.meshes),this.alphaMasks=e.alpha_masks?o.clone(e.alpha_masks):[],this.fnFormat=e.fn_format,this.depthFnFormat=e.depth_fn_format,this.blending=e.blending,this.tiles=e.tiles,this.resolutions=e.resolutions,this.depthResolutions=e.depth_resolutions},e.prototype.toData=function(){throw new s.IVFrontendException("4DKanKan cannot create or modify existing camera heads.")},e.prototype.fetchHeadData=function(t){if(!this.loading){var e=this.loadMeshes();this.loadAlphaMasks(t),this.loading=Promise.all(e)}return this.loading},e.prototype.loadMeshes=function(){var t=this,e=[];return this.meshes.forEach(function(n,i){e.push(t.loadMesh(i,n))}),e},e.prototype.loadMesh=function(t,e){var n=this;return a.getObjLoader().load("camera_head/"+e).then(function(e){var i=e.children[0].geometry;i.computeBoundingBox(),n.meshGeometries[t]=i})},e.prototype.loadAlphaMasks=function(t){var e=this;this.alphaMasks.forEach(function(n,i){e.loadAlphaMask(i,n,t)})},e.prototype.loadAlphaMask=function(t,e,n){this.alphaMaskTextures[t]=a.getTextureLoader().load("camera_head/"+e,function(t){n()})},e.prototype.getAlphaMaskTextures=function(){return this.alphaMaskTextures},e.prototype.getMeshGeometries=function(){return this.meshGeometries},e}(n(102).RepositoryObject);e.CameraHeadEntity=c},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.copy=function(e,n){return void 0===n&&(n=!1),t.prototype.fill.call(this,e),this.cameraHead=e.cameraHead,this.cameraHeadId=e.cameraHeadId,this.filePath=e.filePath,this.fileId=e.fileId,this.hidden=e.hidden,this.siteModelEntity=e.siteModelEntity,this.siteModelEntityId=e.siteModelEntityId,this},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.cameraHeadId=e.camera_head_id,this.filePath=ossPrefix+sceneNum+"/"+e.file_path,this.fileId=e.file_id,this.hidden=e.hidden,this.siteModelEntityId=e.site_model_entity_id},e.prototype.toData=function(){var e={};return t.prototype.fillDto.call(this,e),e.camera_head_id=this.cameraHead.id,e.file_path=this.filePath,e.file_id=this.fileId,e.hidden=this.hidden,e.site_model_entity_id=this.siteModelEntity?this.siteModelEntity.id:void 0,e},e}(n(376).LocationEntity);e.ImageEntity=o},function(t,e,n){var i,r,o;r=[n(19)],void 0===(o="function"==typeof(i=function(t){"use strict";var e;t.support.htmlMenuitem="HTMLMenuItemElement"in window,t.support.htmlCommand="HTMLCommandElement"in window,t.support.eventSelectstart="onselectstart"in document.documentElement,t.ui&&t.widget||(t.cleanData=(e=t.cleanData,function(n){var i,r,o;for(o=0;null!=n[o];o++){r=n[o];try{(i=t._data(r,"events"))&&i.remove&&t(r).triggerHandler("remove")}catch(t){}}e(n)}));var n=null,i=!1,r=t(window),o=0,a={},s={},c={},l={selector:null,appendTo:null,trigger:"right",autoHide:!1,delay:200,reposition:!0,hideOnSecondTrigger:!1,selectableSubMenu:!1,classNames:{hover:"context-menu-hover",disabled:"context-menu-disabled",visible:"context-menu-visible",notSelectable:"context-menu-not-selectable",icon:"context-menu-icon",iconEdit:"context-menu-icon-edit",iconCut:"context-menu-icon-cut",iconCopy:"context-menu-icon-copy",iconPaste:"context-menu-icon-paste",iconDelete:"context-menu-icon-delete",iconAdd:"context-menu-icon-add",iconQuit:"context-menu-icon-quit",iconLoadingClass:"context-menu-icon-loading"},determinePosition:function(e){if(t.ui&&t.ui.position)e.css("display","block").position({my:"center top",at:"center bottom",of:this,offset:"0 5",collision:"fit"}).css("display","none");else{var n=this.offset();n.top+=this.outerHeight(),n.left+=this.outerWidth()/2-e.outerWidth()/2,e.css(n)}},position:function(t,e,n){var i;if(e||n){if("maintain"===e&&"maintain"===n)i=t.$menu.position();else{var o=t.$menu.offsetParent().offset();i={top:n-o.top,left:e-o.left}}var a=r.scrollTop()+r.height(),s=r.scrollLeft()+r.width(),c=t.$menu.outerHeight(),l=t.$menu.outerWidth();i.top+c>a&&(i.top-=c),i.top<0&&(i.top=0),i.left+l>s&&(i.left-=l),i.left<0&&(i.left=0),t.$menu.css(i)}else t.determinePosition.call(this,t.$menu)},positionSubmenu:function(e){if(void 0!==e)if(t.ui&&t.ui.position)e.css("display","block").position({my:"left top-5",at:"right top",of:this,collision:"flipfit fit"}).css("display","");else{var n={top:-9,left:this.outerWidth()-5};e.css(n)}},zIndex:1,animation:{duration:50,show:"slideDown",hide:"slideUp"},events:{preShow:t.noop,show:t.noop,hide:t.noop,activated:t.noop},callback:null,items:{}},u={timer:null,pageX:null,pageY:null},d={abortevent:function(t){t.preventDefault(),t.stopImmediatePropagation()},contextmenu:function(e){var i=t(this);if(!1!==e.data.events.preShow(i,e)&&("right"===e.data.trigger&&(e.preventDefault(),e.stopImmediatePropagation()),!("right"!==e.data.trigger&&"demand"!==e.data.trigger&&e.originalEvent||!(void 0===e.mouseButton||!e.data||"left"===e.data.trigger&&0===e.mouseButton||"right"===e.data.trigger&&2===e.mouseButton)||i.hasClass("context-menu-active")||i.hasClass("context-menu-disabled")))){if(n=i,e.data.build){var r=e.data.build(n,e);if(!1===r)return;if(e.data=t.extend(!0,{},l,e.data,r||{}),!e.data.items||t.isEmptyObject(e.data.items))throw window.console&&(console.error||console.log).call(console,"No items specified to show in contextMenu"),new Error("No Items specified");e.data.$trigger=n,p.create(e.data)}p.show.call(i,e.data,e.pageX,e.pageY)}},click:function(e){e.preventDefault(),e.stopImmediatePropagation(),t(this).trigger(t.Event("contextmenu",{data:e.data,pageX:e.pageX,pageY:e.pageY}))},mousedown:function(e){var i=t(this);n&&n.length&&!n.is(i)&&n.data("contextMenu").$menu.trigger("contextmenu:hide"),2===e.button&&(n=i.data("contextMenuActive",!0))},mouseup:function(e){var i=t(this);i.data("contextMenuActive")&&n&&n.length&&n.is(i)&&!i.hasClass("context-menu-disabled")&&(e.preventDefault(),e.stopImmediatePropagation(),n=i,i.trigger(t.Event("contextmenu",{data:e.data,pageX:e.pageX,pageY:e.pageY}))),i.removeData("contextMenuActive")},mouseenter:function(e){var i=t(this),r=t(e.relatedTarget),o=t(document);r.is(".context-menu-list")||r.closest(".context-menu-list").length||n&&n.length||(u.pageX=e.pageX,u.pageY=e.pageY,u.data=e.data,o.on("mousemove.contextMenuShow",d.mousemove),u.timer=setTimeout(function(){u.timer=null,o.off("mousemove.contextMenuShow"),n=i,i.trigger(t.Event("contextmenu",{data:u.data,pageX:u.pageX,pageY:u.pageY}))},e.data.delay))},mousemove:function(t){u.pageX=t.pageX,u.pageY=t.pageY},mouseleave:function(e){var n=t(e.relatedTarget);if(!n.is(".context-menu-list")&&!n.closest(".context-menu-list").length){try{clearTimeout(u.timer)}catch(e){}u.timer=null}},layerClick:function(e){var n,i,o=t(this).data("contextMenuRoot"),a=e.button,s=e.pageX,c=e.pageY,l=void 0===s;e.preventDefault(),setTimeout(function(){if(l)null!=o&&null!==o.$menu&&void 0!==o.$menu&&o.$menu.trigger("contextmenu:hide");else{var u,d="left"===o.trigger&&0===a||"right"===o.trigger&&2===a;if(document.elementFromPoint&&o.$layer){if(o.$layer.hide(),(n=document.elementFromPoint(s-r.scrollLeft(),c-r.scrollTop())).isContentEditable){var p=document.createRange(),h=window.getSelection();p.selectNode(n),p.collapse(!0),h.removeAllRanges(),h.addRange(p)}t(n).trigger(e),o.$layer.show()}if(o.hideOnSecondTrigger&&d&&null!==o.$menu&&void 0!==o.$menu)o.$menu.trigger("contextmenu:hide");else{if(o.reposition&&d)if(document.elementFromPoint){if(o.$trigger.is(n))return void o.position.call(o.$trigger,o,s,c)}else if(i=o.$trigger.offset(),u=t(window),i.top+=u.scrollTop(),i.top<=e.pageY&&(i.left+=u.scrollLeft(),i.left<=e.pageX&&(i.bottom=i.top+o.$trigger.outerHeight(),i.bottom>=e.pageY&&(i.right=i.left+o.$trigger.outerWidth(),i.right>=e.pageX))))return void o.position.call(o.$trigger,o,s,c);n&&d&&o.$trigger.one("contextmenu:hidden",function(){t(n).contextMenu({x:s,y:c,button:a})}),null!=o&&null!==o.$menu&&void 0!==o.$menu&&o.$menu.trigger("contextmenu:hide")}}},50)},keyStop:function(t,e){e.isInput||t.preventDefault(),t.stopPropagation()},key:function(t){var e={};n&&(e=n.data("contextMenu")||{}),void 0===e.zIndex&&(e.zIndex=0);var i=0,r=function(t){""!==t.style.zIndex?i=t.style.zIndex:null!==t.offsetParent&&void 0!==t.offsetParent?r(t.offsetParent):null!==t.parentElement&&void 0!==t.parentElement&&r(t.parentElement)};if(r(t.target),!(e.$menu&&parseInt(i,10)>parseInt(e.$menu.css("zIndex"),10))){switch(t.keyCode){case 9:case 38:if(d.keyStop(t,e),e.isInput){if(9===t.keyCode&&t.shiftKey)return t.preventDefault(),e.$selected&&e.$selected.find("input, textarea, select").blur(),void(null!==e.$menu&&void 0!==e.$menu&&e.$menu.trigger("prevcommand"));if(38===t.keyCode&&"checkbox"===e.$selected.find("input, textarea, select").prop("type"))return void t.preventDefault()}else if(9!==t.keyCode||t.shiftKey)return void(null!==e.$menu&&void 0!==e.$menu&&e.$menu.trigger("prevcommand"));break;case 40:if(d.keyStop(t,e),!e.isInput)return void(null!==e.$menu&&void 0!==e.$menu&&e.$menu.trigger("nextcommand"));if(9===t.keyCode)return t.preventDefault(),e.$selected&&e.$selected.find("input, textarea, select").blur(),void(null!==e.$menu&&void 0!==e.$menu&&e.$menu.trigger("nextcommand"));if(40===t.keyCode&&"checkbox"===e.$selected.find("input, textarea, select").prop("type"))return void t.preventDefault();break;case 37:if(d.keyStop(t,e),e.isInput||!e.$selected||!e.$selected.length)break;if(!e.$selected.parent().hasClass("context-menu-root")){var o=e.$selected.parent().parent();return e.$selected.trigger("contextmenu:blur"),void(e.$selected=o)}break;case 39:if(d.keyStop(t,e),e.isInput||!e.$selected||!e.$selected.length)break;var a=e.$selected.data("contextMenu")||{};if(a.$menu&&e.$selected.hasClass("context-menu-submenu"))return e.$selected=null,a.$selected=null,void a.$menu.trigger("nextcommand");break;case 35:case 36:return e.$selected&&e.$selected.find("input, textarea, select").length?void 0:((e.$selected&&e.$selected.parent()||e.$menu).children(":not(."+e.classNames.disabled+", ."+e.classNames.notSelectable+")")[36===t.keyCode?"first":"last"]().trigger("contextmenu:focus"),void t.preventDefault());case 13:if(d.keyStop(t,e),e.isInput){if(e.$selected&&!e.$selected.is("textarea, select"))return void t.preventDefault();break}return void(void 0!==e.$selected&&null!==e.$selected&&e.$selected.trigger("mouseup"));case 32:case 33:case 34:return void d.keyStop(t,e);case 27:return d.keyStop(t,e),void(null!==e.$menu&&void 0!==e.$menu&&e.$menu.trigger("contextmenu:hide"));default:var s=String.fromCharCode(t.keyCode).toUpperCase();if(e.accesskeys&&e.accesskeys[s])return void e.accesskeys[s].$node.trigger(e.accesskeys[s].$menu?"contextmenu:focus":"mouseup")}t.stopPropagation(),void 0!==e.$selected&&null!==e.$selected&&e.$selected.trigger(t)}},prevItem:function(e){e.stopPropagation();var n=t(this).data("contextMenu")||{},i=t(this).data("contextMenuRoot")||{};if(n.$selected){var r=n.$selected;(n=n.$selected.parent().data("contextMenu")||{}).$selected=r}for(var o=n.$menu.children(),a=n.$selected&&n.$selected.prev().length?n.$selected.prev():o.last(),s=a;a.hasClass(i.classNames.disabled)||a.hasClass(i.classNames.notSelectable)||a.is(":hidden");)if((a=a.prev().length?a.prev():o.last()).is(s))return;n.$selected&&d.itemMouseleave.call(n.$selected.get(0),e),d.itemMouseenter.call(a.get(0),e);var c=a.find("input, textarea, select");c.length&&c.focus()},nextItem:function(e){e.stopPropagation();var n=t(this).data("contextMenu")||{},i=t(this).data("contextMenuRoot")||{};if(n.$selected){var r=n.$selected;(n=n.$selected.parent().data("contextMenu")||{}).$selected=r}for(var o=n.$menu.children(),a=n.$selected&&n.$selected.next().length?n.$selected.next():o.first(),s=a;a.hasClass(i.classNames.disabled)||a.hasClass(i.classNames.notSelectable)||a.is(":hidden");)if((a=a.next().length?a.next():o.first()).is(s))return;n.$selected&&d.itemMouseleave.call(n.$selected.get(0),e),d.itemMouseenter.call(a.get(0),e);var c=a.find("input, textarea, select");c.length&&c.focus()},focusInput:function(){var e=t(this).closest(".context-menu-item"),n=e.data(),i=n.contextMenu,r=n.contextMenuRoot;r.$selected=i.$selected=e,r.isInput=i.isInput=!0},blurInput:function(){var e=t(this).closest(".context-menu-item").data(),n=e.contextMenu;e.contextMenuRoot.isInput=n.isInput=!1},menuMouseenter:function(){t(this).data().contextMenuRoot.hovering=!0},menuMouseleave:function(e){var n=t(this).data().contextMenuRoot;n.$layer&&n.$layer.is(e.relatedTarget)&&(n.hovering=!1)},itemMouseenter:function(e){var n=t(this),i=n.data(),r=i.contextMenu,o=i.contextMenuRoot;o.hovering=!0,e&&o.$layer&&o.$layer.is(e.relatedTarget)&&(e.preventDefault(),e.stopImmediatePropagation()),(r.$menu?r:o).$menu.children("."+o.classNames.hover).trigger("contextmenu:blur").children(".hover").trigger("contextmenu:blur"),n.hasClass(o.classNames.disabled)||n.hasClass(o.classNames.notSelectable)?r.$selected=null:n.trigger("contextmenu:focus")},itemMouseleave:function(e){var n=t(this),i=n.data(),r=i.contextMenu,o=i.contextMenuRoot;if(o!==r&&o.$layer&&o.$layer.is(e.relatedTarget))return void 0!==o.$selected&&null!==o.$selected&&o.$selected.trigger("contextmenu:blur"),e.preventDefault(),e.stopImmediatePropagation(),void(o.$selected=r.$selected=r.$node);r&&r.$menu&&r.$menu.hasClass("context-menu-visible")||n.trigger("contextmenu:blur")},itemClick:function(e){var n,i=t(this),r=i.data(),o=r.contextMenu,a=r.contextMenuRoot,s=r.contextMenuKey;if(!(!o.items[s]||i.is("."+a.classNames.disabled+", .context-menu-separator, ."+a.classNames.notSelectable)||i.is(".context-menu-submenu")&&!1===a.selectableSubMenu)){if(e.preventDefault(),e.stopImmediatePropagation(),t.isFunction(o.callbacks[s])&&Object.prototype.hasOwnProperty.call(o.callbacks,s))n=o.callbacks[s];else{if(!t.isFunction(a.callback))return;n=a.callback}!1!==n.call(a.$trigger,s,a,e)?a.$menu.trigger("contextmenu:hide"):a.$menu.parent().length&&p.update.call(a.$trigger,a)}},inputClick:function(t){t.stopImmediatePropagation()},hideMenu:function(e,n){var i=t(this).data("contextMenuRoot");p.hide.call(i.$trigger,i,n&&n.force)},focusItem:function(e){e.stopPropagation();var n=t(this),i=n.data(),r=i.contextMenu,o=i.contextMenuRoot;n.hasClass(o.classNames.disabled)||n.hasClass(o.classNames.notSelectable)||(n.addClass([o.classNames.hover,o.classNames.visible].join(" ")).parent().find(".context-menu-item").not(n).removeClass(o.classNames.visible).filter("."+o.classNames.hover).trigger("contextmenu:blur"),r.$selected=o.$selected=n,r&&r.$node&&r.$node.hasClass("context-menu-submenu")&&r.$node.addClass(o.classNames.hover),r.$node&&o.positionSubmenu.call(r.$node,r.$menu))},blurItem:function(e){e.stopPropagation();var n=t(this),i=n.data(),r=i.contextMenu,o=i.contextMenuRoot;r.autoHide&&n.removeClass(o.classNames.visible),n.removeClass(o.classNames.hover),r.$selected=null}},p={show:function(e,i,r){var o=t(this),a={};if(t("#context-menu-layer").trigger("mousedown"),e.$trigger=o,!1!==e.events.show.call(o,e))if(!1!==p.update.call(o,e)){if(e.position.call(o,e,i,r),e.zIndex){var s=e.zIndex;"function"==typeof e.zIndex&&(s=e.zIndex.call(o,e)),a.zIndex=function(t){for(var e=0,n=o;e=Math.max(e,parseInt(n.css("z-index"),10)||0),(n=n.parent())&&n.length&&!("html body".indexOf(n.prop("nodeName").toLowerCase())>-1););return e}()+s}p.layer.call(e.$menu,e,a.zIndex),e.$menu.find("ul").css("zIndex",a.zIndex+1),e.$menu.css(a)[e.animation.show](e.animation.duration,function(){o.trigger("contextmenu:visible"),p.activated(e),e.events.activated(e)}),o.data("contextMenu",e).addClass("context-menu-active"),t(document).off("keydown.contextMenu").on("keydown.contextMenu",d.key),e.autoHide&&t(document).on("mousemove.contextMenuAutoHide",function(t){var n=o.offset();n.right=n.left+o.outerWidth(),n.bottom=n.top+o.outerHeight(),!e.$layer||e.hovering||t.pageX>=n.left&&t.pageX<=n.right&&t.pageY>=n.top&&t.pageY<=n.bottom||setTimeout(function(){e.hovering||null===e.$menu||void 0===e.$menu||e.$menu.trigger("contextmenu:hide")},50)})}else n=null;else n=null},hide:function(e,i){var r=t(this);if(e||(e=r.data("contextMenu")||{}),i||!e.events||!1!==e.events.hide.call(r,e)){if(r.removeData("contextMenu").removeClass("context-menu-active"),e.$layer){setTimeout((o=e.$layer,function(){o.remove()}),10);try{delete e.$layer}catch(t){e.$layer=null}}var o;n=null,e.$menu.find("."+e.classNames.hover).trigger("contextmenu:blur"),e.$selected=null,e.$menu.find("."+e.classNames.visible).removeClass(e.classNames.visible),t(document).off(".contextMenuAutoHide").off("keydown.contextMenu"),e.$menu&&e.$menu[e.animation.hide](e.animation.duration,function(){e.build&&(e.$menu.remove(),t.each(e,function(t){switch(t){case"ns":case"selector":case"build":case"trigger":return!0;default:e[t]=void 0;try{delete e[t]}catch(t){}return!0}})),setTimeout(function(){r.trigger("contextmenu:hidden")},10)})}},create:function(e,n){function i(e){var n=t("<span></span>");if(e._accesskey)e._beforeAccesskey&&n.append(document.createTextNode(e._beforeAccesskey)),t("<span></span>").addClass("context-menu-accesskey").text(e._accesskey).appendTo(n),e._afterAccesskey&&n.append(document.createTextNode(e._afterAccesskey));else if(e.isHtmlName){if(void 0!==e.accesskey)throw new Error("accesskeys are not compatible with HTML names and cannot be used together in the same item");n.html(e.name)}else n.text(e.name);return n}void 0===n&&(n=e),e.$menu=t('<ul class="context-menu-list"></ul>').addClass(e.className||"").data({contextMenu:e,contextMenuRoot:n}),e.dataAttr&&t.each(e.dataAttr,function(t,n){e.$menu.attr("data-"+e.key,n)}),t.each(["callbacks","commands","inputs"],function(t,i){e[i]={},n[i]||(n[i]={})}),n.accesskeys||(n.accesskeys={}),t.each(e.items,function(r,o){var a=t('<li class="context-menu-item"></li>').addClass(o.className||""),s=null,l=null;if(a.on("click",t.noop),"string"!=typeof o&&"cm_separator"!==o.type||(o={type:"cm_seperator"}),o.$node=a.data({contextMenu:e,contextMenuRoot:n,contextMenuKey:r}),void 0!==o.accesskey)for(var u,h=function(t){for(var e,n=o.accesskey.split(/\s+/),i=[],r=0;e=n[r];r++)e=e.charAt(0).toUpperCase(),i.push(e);return i}(),f=0;u=h[f];f++)if(!n.accesskeys[u]){n.accesskeys[u]=o;var g=o.name.match(new RegExp("^(.*?)("+u+")(.*)$","i"));g&&(o._beforeAccesskey=g[1],o._accesskey=g[2],o._afterAccesskey=g[3]);break}if(o.type&&c[o.type])c[o.type].call(a,o,e,n),t.each([e,n],function(n,i){i.commands[r]=o,!t.isFunction(o.callback)||void 0!==i.callbacks[r]&&void 0!==e.type||(i.callbacks[r]=o.callback)});else{switch("cm_seperator"===o.type?a.addClass("context-menu-separator "+n.classNames.notSelectable):"html"===o.type?a.addClass("context-menu-html "+n.classNames.notSelectable):"sub"!==o.type&&o.type?(s=t("<label></label>").appendTo(a),i(o).appendTo(s),a.addClass("context-menu-input"),e.hasTypes=!0,t.each([e,n],function(t,e){e.commands[r]=o,e.inputs[r]=o})):o.items&&(o.type="sub"),o.type){case"cm_seperator":break;case"text":l=t('<input type="text" value="1" name="" />').attr("name","context-menu-input-"+r).val(o.value||"").appendTo(s);break;case"textarea":l=t('<textarea name=""></textarea>').attr("name","context-menu-input-"+r).val(o.value||"").appendTo(s),o.height&&l.height(o.height);break;case"checkbox":l=t('<input type="checkbox" value="1" name="" />').attr("name","context-menu-input-"+r).val(o.value||"").prop("checked",!!o.selected).prependTo(s);break;case"radio":l=t('<input type="radio" value="1" name="" />').attr("name","context-menu-input-"+o.radio).val(o.value||"").prop("checked",!!o.selected).prependTo(s);break;case"select":l=t('<select name=""></select>').attr("name","context-menu-input-"+r).appendTo(s),o.options&&(t.each(o.options,function(e,n){t("<option></option>").val(e).text(n).appendTo(l)}),l.val(o.selected));break;case"sub":i(o).appendTo(a),o.appendTo=o.$node,a.data("contextMenu",o).addClass("context-menu-submenu"),o.callback=null,"function"==typeof o.items.then?p.processPromises(o,n,o.items):p.create(o,n);break;case"html":t(o.html).appendTo(a);break;default:t.each([e,n],function(n,i){i.commands[r]=o,!t.isFunction(o.callback)||void 0!==i.callbacks[r]&&void 0!==e.type||(i.callbacks[r]=o.callback)}),i(o).appendTo(a)}o.type&&"sub"!==o.type&&"html"!==o.type&&"cm_seperator"!==o.type&&(l.on("focus",d.focusInput).on("blur",d.blurInput),o.events&&l.on(o.events,e)),o.icon&&(t.isFunction(o.icon)?o._icon=o.icon.call(this,this,a,r,o):"string"!=typeof o.icon||"fab "!==o.icon.substring(0,4)&&"fas "!==o.icon.substring(0,4)&&"fad "!==o.icon.substring(0,4)&&"far "!==o.icon.substring(0,4)&&"fal "!==o.icon.substring(0,4)?"string"==typeof o.icon&&"fa-"===o.icon.substring(0,3)?o._icon=n.classNames.icon+" "+n.classNames.icon+"--fa fa "+o.icon:o._icon=n.classNames.icon+" "+n.classNames.icon+"-"+o.icon:(a.addClass(n.classNames.icon+" "+n.classNames.icon+"--fa5"),o._icon=t('<i class="'+o.icon+'"></i>')),"string"==typeof o._icon?a.addClass(o._icon):a.prepend(o._icon))}o.$input=l,o.$label=s,a.appendTo(e.$menu),!e.hasTypes&&t.support.eventSelectstart&&a.on("selectstart.disableTextSelect",d.abortevent)}),e.$node||e.$menu.css("display","none").addClass("context-menu-root"),e.$menu.appendTo(e.appendTo||document.body)},resize:function(e,n){var i;e.css({position:"absolute",display:"block"}),e.data("width",(i=e.get(0)).getBoundingClientRect?Math.ceil(i.getBoundingClientRect().width):e.outerWidth()+1),e.css({position:"static",minWidth:"0px",maxWidth:"100000px"}),e.find("> li > ul").each(function(){p.resize(t(this),!0)}),n||e.find("ul").addBack().css({position:"",display:"",minWidth:"",maxWidth:""}).outerWidth(function(){return t(this).data("width")})},update:function(e,n){var i=this;void 0===n&&(n=e,p.resize(e.$menu));var r=!1;return e.$menu.children().each(function(){var o,a=t(this),s=a.data("contextMenuKey"),c=e.items[s],l=t.isFunction(c.disabled)&&c.disabled.call(i,s,n)||!0===c.disabled;if((o=t.isFunction(c.visible)?c.visible.call(i,s,n):void 0===c.visible||!0===c.visible)&&(r=!0),a[o?"show":"hide"](),a[l?"addClass":"removeClass"](n.classNames.disabled),t.isFunction(c.icon)){a.removeClass(c._icon);var u=c.icon.call(this,i,a,s,c);"string"==typeof u?a.addClass(u):a.prepend(u)}if(c.type)switch(a.find("input, select, textarea").prop("disabled",l),c.type){case"text":case"textarea":c.$input.val(c.value||"");break;case"checkbox":case"radio":c.$input.val(c.value||"").prop("checked",!!c.selected);break;case"select":c.$input.val((0===c.selected?"0":c.selected)||"")}c.$menu&&p.update.call(i,c,n)&&(r=!0)}),r},layer:function(e,n){var i=e.$layer=t('<div id="context-menu-layer"></div>').css({height:r.height(),width:r.width(),display:"block",position:"fixed","z-index":n,top:0,left:0,opacity:0,filter:"alpha(opacity=0)","background-color":"#000"}).data("contextMenuRoot",e).insertBefore(this).on("contextmenu",d.abortevent).on("mousedown",d.layerClick);return void 0===document.body.style.maxWidth&&i.css({position:"absolute",height:t(document).height()}),i},processPromises:function(t,e,n){function i(t,e,n){void 0===n?(n={error:{name:"No items and no error item",icon:"context-menu-icon context-menu-icon-quit"}},window.console&&(console.error||console.log).call(console,'When you reject a promise, provide an "items" object, equal to normal sub-menu items')):"string"==typeof n&&(n={error:{name:n}}),r(t,e,n)}function r(t,e,n){void 0!==e.$menu&&e.$menu.is(":visible")&&(t.$node.removeClass(e.classNames.iconLoadingClass),t.items=n,p.create(t,e,!0),p.update(t,e),e.positionSubmenu.call(t.$node,t.$menu))}t.$node.addClass(e.classNames.iconLoadingClass),n.then(function(t,e,n){void 0===n&&i(void 0),r(t,e,n)}.bind(this,t,e),i.bind(this,t,e))},activated:function(e){var n=e.$menu,i=n.offset(),r=t(window).height(),o=t(window).scrollTop(),a=n.height();a>r?n.css({height:r+"px","overflow-x":"hidden","overflow-y":"auto",top:o+"px"}):(i.top<o||i.top+a>o+r)&&n.css({top:o+"px"})}};function h(e){return e.id&&t('label[for="'+e.id+'"]').val()||e.name}t.fn.contextMenu=function(e){var n=this,i=e;if(this.length>0)if(void 0===e)this.first().trigger("contextmenu");else if(void 0!==e.x&&void 0!==e.y)this.first().trigger(t.Event("contextmenu",{pageX:e.x,pageY:e.y,mouseButton:e.button}));else if("hide"===e){var r=this.first().data("contextMenu")?this.first().data("contextMenu").$menu:null;r&&r.trigger("contextmenu:hide")}else"destroy"===e?t.contextMenu("destroy",{context:this}):t.isPlainObject(e)?(e.context=this,t.contextMenu("create",e)):e?this.removeClass("context-menu-disabled"):e||this.addClass("context-menu-disabled");else t.each(s,function(){this.selector===n.selector&&(i.data=this,t.extend(i.data,{trigger:"demand"}))}),d.contextmenu.call(i.target,i);return this},t.contextMenu=function(e,n){"string"!=typeof e&&(n=e,e="create"),"string"==typeof n?n={selector:n}:void 0===n&&(n={});var r=t.extend(!0,{},l,n||{}),c=t(document),u=c,h=!1;switch(r.context&&r.context.length?(u=t(r.context).first(),r.context=u.get(0),h=!t(r.context).is(document)):r.context=document,e){case"update":if(h)p.update(u);else for(var f in s)s.hasOwnProperty(f)&&p.update(s[f]);break;case"create":if(!r.selector)throw new Error("No selector specified");if(r.selector.match(/.context-menu-(list|item|input)($|\s)/))throw new Error('Cannot bind to selector "'+r.selector+'" as it contains a reserved className');if(!r.build&&(!r.items||t.isEmptyObject(r.items)))throw new Error("No Items specified");if(o++,r.ns=".contextMenu"+o,h||(a[r.selector]=r.ns),s[r.ns]=r,r.trigger||(r.trigger="right"),!i){var g="click"===r.itemClickEvent?"click.contextMenu":"mouseup.contextMenu",m={"contextmenu:focus.contextMenu":d.focusItem,"contextmenu:blur.contextMenu":d.blurItem,"contextmenu.contextMenu":d.abortevent,"mouseenter.contextMenu":d.itemMouseenter,"mouseleave.contextMenu":d.itemMouseleave};m[g]=d.itemClick,c.on({"contextmenu:hide.contextMenu":d.hideMenu,"prevcommand.contextMenu":d.prevItem,"nextcommand.contextMenu":d.nextItem,"contextmenu.contextMenu":d.abortevent,"mouseenter.contextMenu":d.menuMouseenter,"mouseleave.contextMenu":d.menuMouseleave},".context-menu-list").on("mouseup.contextMenu",".context-menu-input",d.inputClick).on(m,".context-menu-item"),i=!0}switch(u.on("contextmenu"+r.ns,r.selector,r,d.contextmenu),h&&u.on("remove"+r.ns,function(){t(this).contextMenu("destroy")}),r.trigger){case"hover":u.on("mouseenter"+r.ns,r.selector,r,d.mouseenter).on("mouseleave"+r.ns,r.selector,r,d.mouseleave);break;case"left":u.on("click"+r.ns,r.selector,r,d.click);break;case"touchstart":u.on("touchstart"+r.ns,r.selector,r,d.click)}r.build||p.create(r);break;case"destroy":var v;if(h){var y=r.context;t.each(s,function(e,n){if(!n)return!0;if(!t(y).is(n.selector))return!0;(v=t(".context-menu-list").filter(":visible")).length&&v.data().contextMenuRoot.$trigger.is(t(n.context).find(n.selector))&&v.trigger("contextmenu:hide",{force:!0});try{s[n.ns].$menu&&s[n.ns].$menu.remove(),delete s[n.ns]}catch(t){s[n.ns]=null}return t(n.context).off(n.ns),!0})}else if(r.selector){if(a[r.selector]){(v=t(".context-menu-list").filter(":visible")).length&&v.data().contextMenuRoot.$trigger.is(r.selector)&&v.trigger("contextmenu:hide",{force:!0});try{s[a[r.selector]].$menu&&s[a[r.selector]].$menu.remove(),delete s[a[r.selector]]}catch(t){s[a[r.selector]]=null}c.off(a[r.selector])}}else c.off(".contextMenu .contextMenuAutoHide"),t.each(s,function(e,n){t(n.context).off(n.ns)}),a={},s={},o=0,i=!1,t("#context-menu-layer, .context-menu-list").remove();break;case"html5":(!t.support.htmlCommand&&!t.support.htmlMenuitem||"boolean"==typeof n&&n)&&t('menu[type="context"]').each(function(){this.id&&t.contextMenu({selector:"[contextmenu="+this.id+"]",items:t.contextMenu.fromMenu(this)})}).css("display","none");break;default:throw new Error('Unknown operation "'+e+'"')}return this},t.contextMenu.setInputValues=function(e,n){void 0===n&&(n={}),t.each(e.inputs,function(t,e){switch(e.type){case"text":case"textarea":e.value=n[t]||"";break;case"checkbox":e.selected=!!n[t];break;case"radio":e.selected=(n[e.radio]||"")===e.value;break;case"select":e.selected=n[t]||""}})},t.contextMenu.getInputValues=function(e,n){return void 0===n&&(n={}),t.each(e.inputs,function(t,e){switch(e.type){case"text":case"textarea":case"select":n[t]=e.$input.val();break;case"checkbox":n[t]=e.$input.prop("checked");break;case"radio":e.$input.prop("checked")&&(n[e.radio]=e.value)}}),n},t.contextMenu.fromMenu=function(e){var n={};return function e(n,i,r){return r||(r=0),i.each(function(){var i,o,a=t(this),s=this,c=this.nodeName.toLowerCase();switch("label"===c&&a.find("input, textarea, select").length&&(i=a.text(),c=(s=(a=a.children().first()).get(0)).nodeName.toLowerCase()),c){case"menu":o={name:a.attr("label"),items:{}},r=e(o.items,a.children(),r);break;case"a":case"button":o={name:a.text(),disabled:!!a.attr("disabled"),callback:function(){a.get(0).click()}};break;case"menuitem":case"command":switch(a.attr("type")){case void 0:case"command":case"menuitem":o={name:a.attr("label"),disabled:!!a.attr("disabled"),icon:a.attr("icon"),callback:function(){a.get(0).click()}};break;case"checkbox":o={type:"checkbox",disabled:!!a.attr("disabled"),name:a.attr("label"),selected:!!a.attr("checked")};break;case"radio":o={type:"radio",disabled:!!a.attr("disabled"),name:a.attr("label"),radio:a.attr("radiogroup"),value:a.attr("id"),selected:!!a.attr("checked")};break;default:o=void 0}break;case"hr":o="-------";break;case"input":switch(a.attr("type")){case"text":o={type:"text",name:i||h(s),disabled:!!a.attr("disabled"),value:a.val()};break;case"checkbox":o={type:"checkbox",name:i||h(s),disabled:!!a.attr("disabled"),selected:!!a.attr("checked")};break;case"radio":o={type:"radio",name:i||h(s),disabled:!!a.attr("disabled"),radio:!!a.attr("name"),value:a.val(),selected:!!a.attr("checked")};break;default:o=void 0}break;case"select":o={type:"select",name:i||h(s),disabled:!!a.attr("disabled"),selected:a.val(),options:{}},a.children().each(function(){o.options[this.value]=t(this).text()});break;case"textarea":o={type:"textarea",name:i||h(s),disabled:!!a.attr("disabled"),value:a.val()};break;case"label":break;default:o={type:"html",html:a.clone(!0)}}o&&(n["key"+ ++r]=o)}),r}(n,t(e).children()),n},t.contextMenu.defaults=l,t.contextMenu.types=c,t.contextMenu.handle=d,t.contextMenu.op=p,t.contextMenu.menus=s})?i.apply(e,r):i)||(t.exports=o)},function(t,e,n){var i,r,o;
  2548. /*! jQuery UI - v1.11.4 - 2016-05-04
  2549. * http://jqueryui.com
  2550. * Includes: position.js
  2551. * Copyright jQuery Foundation and other contributors; Licensed MIT */r=[n(19)],void 0===(o="function"==typeof(i=function(t){
  2552. /*!
  2553. * jQuery UI Position 1.11.4
  2554. * http://jqueryui.com
  2555. *
  2556. * Copyright jQuery Foundation and other contributors
  2557. * Released under the MIT license.
  2558. * http://jquery.org/license
  2559. *
  2560. * http://api.jqueryui.com/position/
  2561. */
  2562. !function(){t.ui=t.ui||{};var e,n,i=Math.max,r=Math.abs,o=Math.round,a=/left|center|right/,s=/top|center|bottom/,c=/[\+\-]\d+(\.[\d]+)?%?/,l=/^\w+/,u=/%$/,d=t.fn.position;function p(t,e,n){return[parseFloat(t[0])*(u.test(t[0])?e/100:1),parseFloat(t[1])*(u.test(t[1])?n/100:1)]}function h(e,n){return parseInt(t.css(e,n),10)||0}t.position={scrollbarWidth:function(){if(void 0!==e)return e;var n,i,r=t("<div style='display:block;position:absolute;width:50px;height:50px;overflow:hidden;'><div style='height:100px;width:auto;'></div></div>"),o=r.children()[0];return t("body").append(r),n=o.offsetWidth,r.css("overflow","scroll"),n===(i=o.offsetWidth)&&(i=r[0].clientWidth),r.remove(),e=n-i},getScrollInfo:function(e){var n=e.isWindow||e.isDocument?"":e.element.css("overflow-x"),i=e.isWindow||e.isDocument?"":e.element.css("overflow-y"),r="scroll"===n||"auto"===n&&e.width<e.element[0].scrollWidth;return{width:"scroll"===i||"auto"===i&&e.height<e.element[0].scrollHeight?t.position.scrollbarWidth():0,height:r?t.position.scrollbarWidth():0}},getWithinInfo:function(e){var n=t(e||window),i=t.isWindow(n[0]),r=!!n[0]&&9===n[0].nodeType;return{element:n,isWindow:i,isDocument:r,offset:n.offset()||{left:0,top:0},scrollLeft:n.scrollLeft(),scrollTop:n.scrollTop(),width:i||r?n.width():n.outerWidth(),height:i||r?n.height():n.outerHeight()}}},t.fn.position=function(e){if(!e||!e.of)return d.apply(this,arguments);e=t.extend({},e);var u,f,g,m,v,y,b=t(e.of),w=t.position.getWithinInfo(e.within),S=t.position.getScrollInfo(w),x=(e.collision||"flip").split(" "),M={};return y=function(e){var n=e[0];return 9===n.nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:t.isWindow(n)?{width:e.width(),height:e.height(),offset:{top:e.scrollTop(),left:e.scrollLeft()}}:n.preventDefault?{width:0,height:0,offset:{top:n.pageY,left:n.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()}}(b),b[0].preventDefault&&(e.at="left top"),f=y.width,g=y.height,m=y.offset,v=t.extend({},m),t.each(["my","at"],function(){var t,n,i=(e[this]||"").split(" ");1===i.length&&(i=a.test(i[0])?i.concat(["center"]):s.test(i[0])?["center"].concat(i):["center","center"]),i[0]=a.test(i[0])?i[0]:"center",i[1]=s.test(i[1])?i[1]:"center",t=c.exec(i[0]),n=c.exec(i[1]),M[this]=[t?t[0]:0,n?n[0]:0],e[this]=[l.exec(i[0])[0],l.exec(i[1])[0]]}),1===x.length&&(x[1]=x[0]),"right"===e.at[0]?v.left+=f:"center"===e.at[0]&&(v.left+=f/2),"bottom"===e.at[1]?v.top+=g:"center"===e.at[1]&&(v.top+=g/2),u=p(M.at,f,g),v.left+=u[0],v.top+=u[1],this.each(function(){var a,s,c=t(this),l=c.outerWidth(),d=c.outerHeight(),y=h(this,"marginLeft"),E=h(this,"marginTop"),C=l+y+h(this,"marginRight")+S.width,A=d+E+h(this,"marginBottom")+S.height,T=t.extend({},v),O=p(M.my,c.outerWidth(),c.outerHeight());"right"===e.my[0]?T.left-=l:"center"===e.my[0]&&(T.left-=l/2),"bottom"===e.my[1]?T.top-=d:"center"===e.my[1]&&(T.top-=d/2),T.left+=O[0],T.top+=O[1],n||(T.left=o(T.left),T.top=o(T.top)),a={marginLeft:y,marginTop:E},t.each(["left","top"],function(n,i){t.ui.position[x[n]]&&t.ui.position[x[n]][i](T,{targetWidth:f,targetHeight:g,elemWidth:l,elemHeight:d,collisionPosition:a,collisionWidth:C,collisionHeight:A,offset:[u[0]+O[0],u[1]+O[1]],my:e.my,at:e.at,within:w,elem:c})}),e.using&&(s=function(t){var n=m.left-T.left,o=n+f-l,a=m.top-T.top,s=a+g-d,u={target:{element:b,left:m.left,top:m.top,width:f,height:g},element:{element:c,left:T.left,top:T.top,width:l,height:d},horizontal:o<0?"left":n>0?"right":"center",vertical:s<0?"top":a>0?"bottom":"middle"};f<l&&r(n+o)<f&&(u.horizontal="center"),g<d&&r(a+s)<g&&(u.vertical="middle"),i(r(n),r(o))>i(r(a),r(s))?u.important="horizontal":u.important="vertical",e.using.call(this,t,u)}),c.offset(t.extend(T,{using:s}))})},t.ui.position={fit:{left:function(t,e){var n,r=e.within,o=r.isWindow?r.scrollLeft:r.offset.left,a=r.width,s=t.left-e.collisionPosition.marginLeft,c=o-s,l=s+e.collisionWidth-a-o;e.collisionWidth>a?c>0&&l<=0?(n=t.left+c+e.collisionWidth-a-o,t.left+=c-n):t.left=l>0&&c<=0?o:c>l?o+a-e.collisionWidth:o:c>0?t.left+=c:l>0?t.left-=l:t.left=i(t.left-s,t.left)},top:function(t,e){var n,r=e.within,o=r.isWindow?r.scrollTop:r.offset.top,a=e.within.height,s=t.top-e.collisionPosition.marginTop,c=o-s,l=s+e.collisionHeight-a-o;e.collisionHeight>a?c>0&&l<=0?(n=t.top+c+e.collisionHeight-a-o,t.top+=c-n):t.top=l>0&&c<=0?o:c>l?o+a-e.collisionHeight:o:c>0?t.top+=c:l>0?t.top-=l:t.top=i(t.top-s,t.top)}},flip:{left:function(t,e){var n,i,o=e.within,a=o.offset.left+o.scrollLeft,s=o.width,c=o.isWindow?o.scrollLeft:o.offset.left,l=t.left-e.collisionPosition.marginLeft,u=l-c,d=l+e.collisionWidth-s-c,p="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,h="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,f=-2*e.offset[0];u<0?((n=t.left+p+h+f+e.collisionWidth-s-a)<0||n<r(u))&&(t.left+=p+h+f):d>0&&((i=t.left-e.collisionPosition.marginLeft+p+h+f-c)>0||r(i)<d)&&(t.left+=p+h+f)},top:function(t,e){var n,i,o=e.within,a=o.offset.top+o.scrollTop,s=o.height,c=o.isWindow?o.scrollTop:o.offset.top,l=t.top-e.collisionPosition.marginTop,u=l-c,d=l+e.collisionHeight-s-c,p="top"===e.my[1]?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,h="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,f=-2*e.offset[1];u<0?((i=t.top+p+h+f+e.collisionHeight-s-a)<0||i<r(u))&&(t.top+=p+h+f):d>0&&((n=t.top-e.collisionPosition.marginTop+p+h+f-c)>0||r(n)<d)&&(t.top+=p+h+f)}},flipfit:{left:function(){t.ui.position.flip.left.apply(this,arguments),t.ui.position.fit.left.apply(this,arguments)},top:function(){t.ui.position.flip.top.apply(this,arguments),t.ui.position.fit.top.apply(this,arguments)}}},function(){var e,i,r,o,a,s=document.getElementsByTagName("body")[0],c=document.createElement("div");for(a in e=document.createElement(s?"div":"body"),r={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},s&&t.extend(r,{position:"absolute",left:"-1000px",top:"-1000px"}),r)e.style[a]=r[a];e.appendChild(c),(i=s||document.documentElement).insertBefore(e,i.firstChild),c.style.cssText="position: absolute; left: 10.7432222px;",o=t(c).offset().left,n=o>10&&o<11,e.innerHTML="",i.removeChild(e)}()}(),t.ui.position})?i.apply(e,r):i)||(t.exports=o)},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0}),e.$=t}).call(this,n(19))},function(t,e,n){"use strict";var i=this&&this.__spreadArrays||function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var i=Array(t),r=0;for(e=0;e<n;e++)for(var o=arguments[e],a=0,s=o.length;a<s;a++,r++)i[r]=o[a];return i};Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e,n){void 0===t&&(t=""),void 0===e&&(e=1e3/60),void 0===n&&(n=1e3/30),this.label=t,this.thresholdWarn=e,this.thresholdCritical=n,this.durations={},this.startTimes={}}return t.prototype.clear=function(){this.durations={},this.startTimes={}},t.prototype.time=function(t){this.startTimes[t]=performance.now()},t.prototype.timeEnd=function(t){var e=performance.now(),n=this.durations[t];n||(n=[],this.durations[t]=n),n.push(e-this.startTimes[t])},t.prototype.print=function(){var t=Object.keys(this.durations);if(t.length){for(var e=[],n="Timings["+this.label+"]",r=function(t){var i=o.durations[t],r=i.reduce(function(t,e){return t+e})/i.length,a=Math.sqrt(i.map(function(t){return(t-r)*(t-r)}).reduce(function(t,e){return t+e})/i.length),s=Math.max.apply(Math,i);n+="\t| "+t+" "+r.toFixed(1)+" ± "+a.toFixed(1)+"%c max "+s.toFixed(1)+"%c ms",e.push(o.getColor(s)),e.push("color: inherit")},o=this,a=0,s=t;a<s.length;a++)r(s[a]);console.log.apply(console,i([n],e))}},t.prototype.getColor=function(t){return t<this.thresholdWarn?"":t<this.thresholdCritical?"color: orange":"color: red"},t}();e.SectionTimer=r;var o=function(){function t(){}return t.prototype.clear=function(){},t.prototype.time=function(t){},t.prototype.timeEnd=function(t){},t.prototype.print=function(){},t}();e.NoOpSectionTimer=o;var a=function(){function t(t,e,n){this.label=t,this.enableFn=e,this.interval=n,this.enabled=!1}return Object.defineProperty(t.prototype,"enableReport",{get:function(){if(!this.enabled&&this.enableFn){this.enabled=!0;var t=new r(this.label);this.enableFn(t),setInterval(function(){t.print(),t.clear()},this.interval)}return!0},enumerable:!0,configurable:!0}),t.prototype.dispose=function(){this.enableFn=void 0},t}();e.SectionTimerConsoleControl=a,e.sectionTimerConsoleControl=function(t,e,n){void 0===n&&(n=5e3);var i=new a(t,e,n);return console.log(t,i),i}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(){this.frame=0,this.geometries=0,this.textures=0,this.programs=0,this.calls=0,this.triangles=0,this.points=0,this.lines=0}return t.prototype.reset=function(){this.frame++,this.calls=this.triangles=this.lines=this.points=0},t.prototype.update=function(t){this.geometries=t.info.memory.geometries,this.textures=t.info.memory.textures,this.programs=t.info.programs.length,this.calls+=t.info.render.calls,this.lines+=t.info.render.lines,this.points+=t.info.render.points,this.triangles+=t.info.render.triangles},t}();e.RenderStats=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(){}return t.prototype.set=function(t,e,n,i,r,o){this.depthTexture=t,this.rgbaTexture=e,this.viewportWidth=n,this.viewportHeight=i,this.viewportHorizontalOffset=r,this.viewportVerticalOffset=o},t}();e.OffscreenRenderOutput=i},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return t.call(this,document.createElement("div"))||this}return r(e,t),e.prototype.onResize=function(){this.dimensions={width:e.WIDTH,height:e.HEIGHT,aspectRatio:e.WIDTH/e.HEIGHT}},e.WIDTH=800,e.HEIGHT=600,e}(n(552).HTMLContainer);e.ScreenshotCanvasHtmlContainer=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(){this.elements=[],this.instructions=[]}return Object.defineProperty(t.prototype,"available",{get:function(){return this.elements.length>0},enumerable:!0,configurable:!0}),t}();e.RouteData=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(554),r=n(4),o=function(){function t(){}return t.prototype.fillFromData=function(t){this.location=new r.Vector3(t.longitude,t.latitude,t.z),this.distance=t.distance,this.floorId=t.floor_id,this.siteModelEntityId=t.site_model_entity_id,t.instruction&&(this.instruction=new i.InstructionEntity,this.instruction.fillFromData(t.instruction))},t}();e.RouteElementEntity=o},function(t,e,n){t.exports=n.p+"pano_instruction_bottomMarker.png"},function(t,e,n){t.exports=n.p+"dot.png"},function(t,e,n){t.exports=n.p+"list_instruction_start_route.png"},function(t,e,n){t.exports=n.p+"pano_instruction_start_route.png"},function(t,e,n){t.exports=n.p+"map_instruction_start_route.png"},function(t,e,n){t.exports=n.p+"list_instruction_reach_target.png"},function(t,e,n){t.exports=n.p+"pano_instruction_target_reached.png"},function(t,e,n){t.exports=n.p+"map_instruction_target_reached.png"},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),r=n(101),o=n(319),a=n(153),s=n(113),c=function(){function t(t,e){for(var n,i=[],r=2;r<arguments.length;r++)i[r-2]=arguments[r];this.injectables=t,this.floor=e,this._stairPositions=[],this._nonStairPositions=[],this.ICON_SPACING_FACTOR=2,this.views=new Set,this.resolveInjectables(),(n=this._nonStairPositions).push.apply(n,i);var a=this.GeoTransformationService.vectorArrayToLocal(i);this._distance=o.computePathLength(a)}return t.prototype.resolveInjectables=function(){this.UoMService=this.injectables.UoMService,this.IV=this.injectables.IV,this.GeoTransformationService=this.injectables.GeoTransformationService,this.FloorChangerService=this.injectables.FloorChangerService,this.ImageService=this.injectables.ImageService},t.prototype.build=function(){this.buildMaterials()},t.prototype.render=function(e,n,i,r){this.views.add(e),t.iconSize=r;var o=[];i||o.push.apply(o,this._stairPositions),o.push.apply(o,this._nonStairPositions),this.interpolateAndRender(e,n,o,i)},t.prototype.interpolateAndRender=function(t,e,n,i){for(var r=this.interpolatePositions(n,i),o=this.generateIconsToBeRendered(t,i,r),a=this.getStartIndex(e),s=0,c=o.slice(a,o.length-1);s<c.length;s++){var l=c[s];e.add(l)}},t.prototype.interpolatePositions=function(e,n){var i=this.GeoTransformationService.vectorArrayToLocal(e);return o.interpolatePoints(i,t.iconSize*this.ICON_SPACING_FACTOR,n)},t.prototype.getStartIndex=function(t){if(t.children.length<1)return 0;var e=t.children[t.children.length-1].position,n=this.GeoTransformationService.vectorToLocal(this.position);return e.x===n.x&&e.y===n.y?1:0},t.prototype.moveToInstruction=function(){var t=this,e=this._nonStairPositions;return 0===this._nonStairPositions.length&&(e=this._stairPositions),this.ImageService.getClosestImageOnFloorGlobal(e[0]).then(function(n){var i={lon:Math.atan2(e[0].y-e[1].y,e[0].x-e[1].x),lat:0};return t.IV.moveToImage(n,i)})},Object.defineProperty(t.prototype,"position",{get:function(){return this._stairPositions.length>0?this._stairPositions[0]:this._nonStairPositions[0]},enumerable:!0,configurable:!0}),t.prototype.onBeforeRender=function(t){},t.prototype.generateIconsToBeRendered=function(t,e,n){for(var i=[],r=0,a=n;r<a.length;r++){var s=a[r];i.push(this.selectCorrectIcon(s,e))}return e&&(i=this.removeDistantIcons(t,i)),o.orientIcons(i),i},t.prototype.removeDistantIcons=function(t,e){for(var n=t.getCamera().position,i=[],r=0,a=e;r<a.length;r++){var s=a[r];!o.isPositionInSight(n,s.position)||this.floor&&!this.FloorChangerService.isInCurrentFloors(this.floor)||i.push(s)}return i},t.prototype.selectCorrectIcon=function(e,n){return n?o.createIcon(this.panoramaRouteIcon,e,t.iconSize):this.floor?this.FloorChangerService.isInCurrentFloors(this.floor)?o.createIcon(this.activeFloorIcon,e,t.iconSize):o.createIcon(this.inactiveFloorIcon,e,t.iconSize):o.createIcon(this.fsnaIcon,e,t.iconSize)},t.prototype.buildMaterials=function(){var t=this,e=r.getTextureLoader();this.activeFloorIcon=new i.MeshBasicMaterial({map:e.load(n(1151),function(){return t.invalidateScenes()}),transparent:!0,opacity:1,depthWrite:!1,side:i.DoubleSide}),this.fsnaIcon=new i.MeshBasicMaterial({map:e.load(n(1152),function(){return t.invalidateScenes()}),transparent:!0,opacity:1,depthWrite:!1,side:i.DoubleSide}),this.inactiveFloorIcon=new i.MeshBasicMaterial({map:e.load(n(1153),function(){return t.invalidateScenes()}),transparent:!0,opacity:o.INACTIVE_FLOOR_ICON_OPACITY,depthWrite:!1,side:i.DoubleSide});var a=e.load(n(1154),function(){return t.invalidateScenes()});a.anisotropy=r.ANISOTROPIC_LEVEL,this.panoramaRouteIcon=new i.MeshBasicMaterial({map:a,transparent:!0,opacity:1,side:i.DoubleSide,depthTest:!1})},t.prototype.invalidateScenes=function(){this.views.forEach(function(t){return t.invalidateScene()})},Object.defineProperty(t.prototype,"stairPositions",{get:function(){return this._stairPositions},set:function(t){this._stairPositions=t;var e=this.GeoTransformationService.vectorArrayToLocal(t);this._distance+=o.computePathLength(e)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"nonStairPositions",{get:function(){return this._nonStairPositions},set:function(t){this._nonStairPositions=t;var e=this.GeoTransformationService.vectorArrayToLocal(t);this._distance+=o.computePathLength(e)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"distance",{get:function(){return this._distance},enumerable:!0,configurable:!0}),t.prototype.getFloor=function(){return this.floor},Object.defineProperty(t.prototype,"text",{get:function(){return"Walk "+this.UoMService.convert(this._distance,a.MeasurementDomain.DISTANCE,0)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"type",{get:function(){return s.InstructionType.EDGE},enumerable:!0,configurable:!0}),t}();e.EdgeInstruction=c},function(t,e,n){t.exports=n.p+"routePoint_map_activeFloor.png"},function(t,e,n){t.exports=n.p+"routePoint_map_fsna.png"},function(t,e,n){t.exports=n.p+"routePoint_map_inactiveFloor.png"},function(t,e,n){t.exports=n.p+"routePoint_panorama.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(138),a=n(113),s=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i)||this;return o.siteModelName=r,o}return r(e,t),e.prototype.buildText=function(){return this.siteModelName?this.gettextCatalog.getString("Enter building {{name}}",{name:this.siteModelName},"navigation instruction"):this.gettextCatalog.getString("Enter building",void 0,"navigation instruction")},e.prototype.buildIcons=function(){return{map:n(1156),panorama:n(1157),text:n(1158)}},Object.defineProperty(e.prototype,"type",{get:function(){return a.InstructionType.ENTER_BUILDING},enumerable:!0,configurable:!0}),e}(o.SpecialInstruction);e.EnterBuildingInstruction=s},function(t,e,n){t.exports=n.p+"5331e69636f6fc3bbcfefc4f29b2c8c2.map_instruction_building_enter.png"},function(t,e,n){t.exports=n.p+"3181f3e99ad663d9bb44ee631c2197a9.pano_instruction_building_enter.png"},function(t,e,n){t.exports=n.p+"a3de88be617b08f322aa949cd9cca8fc.list_instruction_enter_building.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(138),a=n(113),s=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i)||this;return o.siteModelName=r,o}return r(e,t),e.prototype.buildText=function(){return this.siteModelName?this.gettextCatalog.getString("Exit building {{name}}",{name:this.siteModelName},"navigation instruction"):this.gettextCatalog.getString("Exit building",void 0,"navigation instruction")},e.prototype.buildIcons=function(){return{panorama:n(1160),map:n(1161),text:n(1162)}},Object.defineProperty(e.prototype,"type",{get:function(){return a.InstructionType.EXIT_BUILDING},enumerable:!0,configurable:!0}),e}(o.SpecialInstruction);e.ExitBuildingInstruction=s},function(t,e,n){t.exports=n.p+"438a8ba925b0a32fccc3dee7de83663e.pano_instruction_building_leave.png"},function(t,e,n){t.exports=n.p+"1fe243b452f403e0fba7f1c437a60013.map_instruction_building_leave.png"},function(t,e,n){t.exports=n.p+"f6049bec65b449d4186e6ca3b3426699.list_instruction_exit_building.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(138),a=n(113),s=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i)||this;return o.siteModelName=r,o}return r(e,t),e.prototype.buildText=function(){return this.siteModelName?this.gettextCatalog.getString("Take stairs to floor {{name}}",{name:this.siteModelName},"navigation instruction"):this.gettextCatalog.getString("Take stairs up",void 0,"navigation instruction")},e.prototype.buildIcons=function(){return{map:n(1164),panorama:n(1165),text:n(1166)}},Object.defineProperty(e.prototype,"type",{get:function(){return a.InstructionType.ENTER_STAIRS_UP},enumerable:!0,configurable:!0}),e}(o.SpecialInstruction);e.StairsUpInstruction=s},function(t,e,n){t.exports=n.p+"1041b5ac520b2fd1531e7136a51eb2b6.map_instruction_stairs_up.png"},function(t,e,n){t.exports=n.p+"fd0e88041bea27c36aa371f728fdf9df.pano_instruction_stairs_up.png"},function(t,e,n){t.exports=n.p+"024ecb31b5d7cdf0d4e5f5f75c410b79.list_instruction_stairs_up.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(138),a=n(113),s=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i)||this;return o.siteModelName=r,o}return r(e,t),e.prototype.buildText=function(){return this.siteModelName?this.gettextCatalog.getString("Take stairs to floor {{name}}",{name:this.siteModelName},"navigation instruction"):this.gettextCatalog.getString("Take stairs down",void 0,"navigation instruction")},e.prototype.buildIcons=function(){return{map:n(1168),panorama:n(1169),text:n(1170)}},Object.defineProperty(e.prototype,"type",{get:function(){return a.InstructionType.ENTER_STAIRS_DOWN},enumerable:!0,configurable:!0}),e}(o.SpecialInstruction);e.StairsDownInstruction=s},function(t,e,n){t.exports=n.p+"16134081448e2f3e82a7dc9d74993dc8.map_instruction_stairs_down.png"},function(t,e,n){t.exports=n.p+"bbcd2a8bd66f3f01dd8bcfc7db266a67.pano_instruction_stairs_down.png"},function(t,e,n){t.exports=n.p+"089d1925d07d5d5917c673d29d747a3a.list_instruction_stairs_down.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(138),a=n(113),s=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i)||this;return o.siteModelName=r,o}return r(e,t),e.prototype.buildText=function(){return this.siteModelName?this.gettextCatalog.getString("Take elevator to floor {{name}}",{name:this.siteModelName},"navigation instruction"):this.gettextCatalog.getString("Take elevator down",void 0,"navigation instruction")},e.prototype.buildIcons=function(){return{map:n(1172),panorama:n(1173),text:n(1174)}},Object.defineProperty(e.prototype,"type",{get:function(){return a.InstructionType.ENTER_ELEVATOR_DOWN},enumerable:!0,configurable:!0}),e}(o.SpecialInstruction);e.ElevatorDownInstruction=s},function(t,e,n){t.exports=n.p+"bdff652621abd816819ae7b4cc667d46.map_instruction_elevator_down.png"},function(t,e,n){t.exports=n.p+"3beb0195e182d8950c36a0ab83df0be6.pano_instruction_elevator_down.png"},function(t,e,n){t.exports=n.p+"a655cb6ee3cfbf36218280ba05b8e04b.list_instruction_elevator_down.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(138),a=n(113),s=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i)||this;return o.siteModelName=r,o}return r(e,t),e.prototype.buildText=function(){return this.siteModelName?this.gettextCatalog.getString("Take elevator to floor {{name}}",{name:this.siteModelName},"navigation instruction"):this.gettextCatalog.getString("Take elevator up",void 0,"navigation instruction")},e.prototype.buildIcons=function(){return{map:n(1176),panorama:n(1177),text:n(1178)}},Object.defineProperty(e.prototype,"type",{get:function(){return a.InstructionType.ENTER_ELEVATOR_UP},enumerable:!0,configurable:!0}),e}(o.SpecialInstruction);e.ElevatorUpInstruction=s},function(t,e,n){t.exports=n.p+"32308edfcc4781ff1956d221db0c3b4a.map_instruction_elevator_up.png"},function(t,e,n){t.exports=n.p+"5e2b978297e86eae7e0e56e235fb6406.pano_instruction_elevator_up.png"},function(t,e,n){t.exports=n.p+"be2d6c616f4888bb9a649be749450e51.list_instruction_elevator_up.png"},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});e.InstructionsInjectables=function(){}},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(138),a=n(113),s=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i)||this;return o.siteModelName=r,o}return r(e,t),e.prototype.buildText=function(){return this.siteModelName?this.gettextCatalog.getString("Change up to floor {{name}}",{name:this.siteModelName},"navigation instruction"):this.gettextCatalog.getString("Change floor up",void 0,"navigation instruction")},e.prototype.buildIcons=function(){return{map:n(1181),panorama:n(1182),text:n(1183)}},Object.defineProperty(e.prototype,"type",{get:function(){return a.InstructionType.CHANGE_FLOOR_UP},enumerable:!0,configurable:!0}),e}(o.SpecialInstruction);e.GenericFloorUpInstruction=s},function(t,e,n){t.exports=n.p+"301b086a5737a614a867d64160488586.map_instruction_generic_floor_up.png"},function(t,e,n){t.exports=n.p+"1f94a1131aade72eb3d97625c2265682.pano_instruction_generic_floor_up.png"},function(t,e,n){t.exports=n.p+"7d2b299abdf2b228a7397299bfeda9bc.list_instruction_generic_floor_up.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(138),a=n(113),s=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i)||this;return o.siteModelName=r,o}return r(e,t),e.prototype.buildText=function(){return this.siteModelName?this.gettextCatalog.getString("Change down to floor {{name}}",{name:this.siteModelName},"navigation instruction"):this.gettextCatalog.getString("Change floor down",void 0,"navigation instruction")},e.prototype.buildIcons=function(){return{map:n(1185),panorama:n(1186),text:n(1187)}},Object.defineProperty(e.prototype,"type",{get:function(){return a.InstructionType.CHANGE_FLOOR_DOWN},enumerable:!0,configurable:!0}),e}(o.SpecialInstruction);e.GenericFloorDownInstruction=s},function(t,e,n){t.exports=n.p+"cbd1ebe9fd46a1da656cf0fcf3477640.map_instruction_generic_floor_down.png"},function(t,e,n){t.exports=n.p+"b6a07d33fcc66614f8bafbe4ec61c63c.pano_instruction_generic_floor_down.png"},function(t,e,n){t.exports=n.p+"324dbe11aa1f9727faf5a4a19e0cb2b3.list_instruction_generic_floor_down.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.applies=function(t){switch(this.getExceptionShortName(t)){case"NoNavgraphNearRouteStartException":return this.currentErrorMessage=this.gettextCatalog.getString("No route found: Start is outside the routable area.",void 0,"Route status message"),!0;case"NoNavgraphNearDestinationException":return this.currentErrorMessage=this.gettextCatalog.getString("No route found: Destination is outside the routable area.",void 0,"Route status message"),!0;case"NavgraphCacheException":return this.currentErrorMessage=this.gettextCatalog.getString("Route cannot be calculated: Route begins or ends with a node that is not connected to the navigation graph.",void 0,"Route status message"),!0;default:return!1}},e.prototype.getExceptionMessage=function(e){return t.prototype.getExceptionMessage.call(this,e)},e}(n(145).ServerExceptionClassDetector);e.ServerRoutingExceptionDetector=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(7),r=function(){function t(t){this.versionString=i.clone(t.version);var e=this.versionString.split(".");this.major=parseInt(e[0],10),this.minor=parseInt(e[1],10),this.revision=parseInt(e[2],10)}return t.prototype.compareTo=function(t,e,n){return this.major!==t?this.major-t:this.minor!==e?this.minor-e:this.revision-n},t}();e.VersionInfo=r},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var i=n(1191);function r(e,n){return void 0===n&&(n="utf8"),t.isBuffer(e)?a(e.toString("base64")):a(t.from(e,n).toString("base64"))}function o(t){return t=t.toString(),i.default(t).replace(/\-/g,"+").replace(/_/g,"/")}function a(t){return t.replace(/=/g,"").replace(/\+/g,"-").replace(/\//g,"_")}var s=r;s.encode=r,s.decode=function(e,n){return void 0===n&&(n="utf8"),t.from(o(e),"base64").toString(n)},s.toBase64=o,s.fromBase64=a,s.toBuffer=function(e){return t.from(o(e),"base64")},e.default=s}).call(this,n(315).Buffer)},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){var n=e.length,i=n%4;if(!i)return e;var r=n,o=4-i,a=n+o,s=t.alloc(a);for(s.write(e);o--;)s.write("=",r++);return s.toString()}}).call(this,n(315).Buffer)},function(t,e,n){t.exports=n.p+"arrow.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(4),a=n(157),s=function(t){function e(n,i,r){var a=this,s={map:{value:e.defaultTexture},depthMap:{value:e.defaultDepthTexture},alphaMap:{value:i},opacity:{value:0},depthOpacity:{value:0},depthB:{value:0},depthA:{value:0},hsv:{value:!1},inverseProjectionMatrix:{value:new o.Matrix4},viewport:{value:new o.Vector4}};return(a=t.call(this,{uniforms:s,vertexShader:e.imageVS,fragmentShader:r.depthOpacity>0?e.imageDepthFS:e.imageFS,transparent:!0,depthTest:e.ENABLE_DEPTH_TEST,depthFunc:e.ENABLE_DEPTH_TEST?o.AlwaysDepth:o.NeverDepth,depthWrite:e.ENABLE_DEPTH_TEST,wireframe:!1,blending:n})||this).setDepthUniforms(r),i&&(a.defines.USE_ALPHAMAP=void 0),e.ENABLE_DEPTH_TEST&&(a.extensions.fragDepth=!0),a}return r(e,t),e.disposeSharedTextures=function(){this.defaultTexture.dispose(),this.defaultDepthTexture.dispose()},e.prototype.disposeTextures=function(){this.disposeTexture(),this.disposeDepthTexture()},e.prototype.disposeTexture=function(){void 0!==this.map&&this.map!==e.defaultTexture&&this.map.dispose()},e.prototype.disposeDepthTexture=function(){void 0!==this.depthMap&&this.depthMap!==e.defaultDepthTexture&&this.depthMap.dispose()},e.prototype.setDepthUniforms=function(t){var e=t.maxDistance/2-.1;t.halfDistance=Math.min(t.halfDistance,e);var n=Math.pow(t.halfDistance,2)/(t.maxDistance-2*t.halfDistance),i=1/Math.log(t.maxDistance/n+1);this.uniforms.depthOpacity.value=t.depthOpacity,this.uniforms.depthA.value=n,this.uniforms.depthB.value=i,this.uniforms.hsv.value=t.hsv},Object.defineProperty(e.prototype,"map",{get:function(){return this.uniforms.map.value},set:function(t){this.uniforms.map.value=t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"depthMap",{get:function(){return this.uniforms.depthMap.value},set:function(t){this.uniforms.depthMap.value=t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"imageOpacity",{get:function(){return this.uniforms.opacity.value},set:function(t){this.uniforms.opacity.value=t},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"depthOverlay",{set:function(t){var n;this.setDepthUniforms(t),t.depthOpacity>0?n=e.imageDepthFS:(n=e.imageFS,this.disposeDepthTexture()),n!==this.fragmentShader&&(this.dispose(),this.fragmentShader=n)},enumerable:!0,configurable:!0}),e.prototype.updateCustomUniforms=function(t,e){t.getCurrentViewport(this.uniforms.viewport.value),this.uniforms.inverseProjectionMatrix.value.getInverse(e.projectionMatrix)},e.ENABLE_DEPTH_TEST=!0,e.defaultTexture=a.generateDataTexture(1,1,new o.Color(2105376)),e.defaultDepthTexture=a.generateDataTexture(1,1,new o.Color(0)),e.imageVS=n(1194),e.imageFS=n(1195),e.imageDepthFS=n(1196),e}(o.ShaderMaterial);e.ImageMaterial=s},function(t,e){t.exports="varying vec2 vUv;\n\nvoid main()\n{\n\tgl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.);\n\n\t// Forward texture coordinate to fragment shader\n\tvUv = uv;\n}\n"},function(t,e){t.exports="uniform sampler2D map;\nuniform float opacity;\nvarying vec2 vUv;\n\n#ifdef USE_ALPHAMAP\nuniform sampler2D alphaMap;\n#endif\n\n#ifdef GL_EXT_frag_depth\nuniform sampler2D depthMap;\nuniform mat4 inverseProjectionMatrix;\nuniform mat4 projectionMatrix;\nuniform vec4 viewport;\n#endif\n\nvoid main()\n{\n\tvec4 color = texture2D(map, vUv);\n\tfloat alpha = opacity;\n\n#ifdef USE_ALPHAMAP\n\talpha *= texture2D(alphaMap, vUv).g;\n#endif\n\n\tgl_FragColor = vec4(color.r, color.g, color.b, alpha);\n\n#ifdef GL_EXT_frag_depth\n\n/*\n* Useful resources:\n*\n* https://www.khronos.org/opengl/wiki/Vertex_Post-Processing#Viewport_transform\n* Clipping, perspective divide viewport transform\n*\n* https://www.khronos.org/opengl/wiki/Compute_eye_space_from_window_space\n* From window (viewport) space back to eye space in GLSL\n*\n* https://www.khronos.org/opengl/wiki/Vertex_Transformation\n* Summary of transformations object -> world -> eye (camera, view) -> clip -> NDC -> window\n*\n* http://slideplayer.com/slide/6837153/#\n* Overview presentation\n*\n* http://www.shaderific.com/glsl-variables/\n* GLSL built-in variables\n*/\n\n\tvec4 depth = texture2D(depthMap, vUv);\n\t float distance = (depth.g + depth.r / 256.) * 255.; // distance is now in meters\n\n\tvec4 ndcPos;\n\tndcPos.xy = ((2.0 * gl_FragCoord.xy) - (2.0 * viewport.xy)) / (viewport.zw) - 1.;\n\tndcPos.z = (2.0 * gl_FragCoord.z - gl_DepthRange.near - gl_DepthRange.far) /\n\t\t(gl_DepthRange.far - gl_DepthRange.near);\n\tndcPos.w = 1.0;\n\n\tvec4 clipPos = ndcPos / gl_FragCoord.w;\n\tvec4 eyePos = inverseProjectionMatrix * clipPos;\n\n\tdistance += .1; // add a safety margin\n\n\tvec4 eyePos2 = vec4(normalize(eyePos.xyz) * distance, 1.);\n\tvec4 clipPos2 = projectionMatrix * eyePos2;\n\tvec4 ndcPos2 = clipPos2 * 1. / clipPos2.w;\n\n\tgl_FragDepthEXT = 0.5 * ((gl_DepthRange.far - gl_DepthRange.near) * ndcPos2.z\n\t\t\t+ gl_DepthRange.near + gl_DepthRange.far);\n\n#endif\n\n}\n"},function(t,e){t.exports="uniform sampler2D map;\nuniform float opacity;\nvarying vec2 vUv;\n\nuniform sampler2D depthMap;\nuniform float depthOpacity;\nuniform float depthA;\nuniform float depthB;\nuniform bool hsv;\n\nvec3 hsv2rgb(float h, float s, float v)\n{\n vec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);\n vec3 p = abs(fract(h + K.xyz) * 6.0 - K.www);\n return v * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), s);\n}\n\n/**\n * A fragment shader that blends an RGB image and a depth image\n */\nvoid main()\n{\n\tvec4 color = texture2D(map, vUv);\n\tvec4 depth = texture2D(depthMap, vUv);\n\tfloat distance = depth.r + 256. * (depth.g + 256. * depth.b);\n\tdistance *= 255. * .001; // distance is now in meters\n\n\tfloat distanceValue = 0.; // used if no distance is available for this fragment\n\tif (distance > 0.)\n\t{\n\t\t// Map the distance to brightness with a logarithmic curve,\n\t\tdistanceValue = log(distance / depthA + 1.) * depthB;\n\t}\n\n\tvec3 depthColor = hsv\n\t\t// Use HSV color map\n\t\t? hsv2rgb(clamp(distanceValue, 0., 1.), 1., 1.)\n\t\t// Grayscale: subtract from 1 to make distant fragments dark and close ones bright\n\t\t: 1. - vec3(distanceValue);\n\n\tgl_FragColor = vec4(mix(color.rgb, depthColor, depthOpacity), opacity);\n}\n"},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});e.CursorData=function(t,e,n,i,r,o){this.geometry=t,this.location=e,this.orientation=n,this.datasetOrientation=i,this.datasetLocation=r,this.datasetId=o}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});e.Point=function(t){this.type="point",this.coordinates=t}},function(t,e,n){t.exports=n.p+"cursor_side.png"},function(t,e,n){t.exports=n.p+"cross_hair.png"},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),r=n(309),o=n(108),a=n(564),s=function(){function t(t,e,n,i){this.minDistance=t,this.poiPxSize=e,this.pixelsPerMeter=n,this.highlightedPois=i,this.poiGrid=[]}return t.prototype.addToGrid=function(t,e){var n=t.location,i=this.getRow(n),r=this.getColumn(n);if(!this.getCell(i,r)){var o=!0,a=this.getPoiCorners(t,e);this.checkBlockedCells(a.rowStart,a.rowEnd,a.columnStart,a.columnEnd)?o=!1:this.blockCells(a.rowStart,a.rowEnd,a.columnStart,a.columnEnd),o&&this.setCell(t,i,r)}},t.prototype.getArray=function(){var t=[];this.processGrid();for(var e=0,n=this.getRows();e<n.length;e++)for(var i=n[e],o=0,a=this.getColumns(i);o<a.length;o++){var s=a[o],c=this.poiGrid[i][s];c&&c instanceof r.PoiEntity&&t.push(c)}return t},t.prototype.getRow=function(t){return t instanceof i.Vector3?Math.floor(t.y/this.minDistance):Math.floor(t/this.minDistance)},t.prototype.getColumn=function(t){return t instanceof i.Vector3?Math.floor(t.x/this.minDistance):Math.floor(t/this.minDistance)},t.prototype.getRows=function(){return Object.keys(this.poiGrid).map(function(t){return parseInt(t,10)})},t.prototype.getColumns=function(t){return this.poiGrid[t]?Object.keys(this.poiGrid[t]).map(function(t){return parseInt(t,10)}):[]},t.prototype.getCell=function(t,e){return this.poiGrid[t]||(this.poiGrid[t]=[]),this.poiGrid[t][e]},t.prototype.setCell=function(t,e,n){this.poiGrid[e]||(this.poiGrid[e]=[]),this.poiGrid[e][n]=t},t.prototype.getPoiCorners=function(t,e){var n=this.poiPxSize/this.pixelsPerMeter,i={x:t.location.x-n/2,y:t.location.y-n/2,width:e.visibleSize.x/this.pixelsPerMeter,height:e.visibleSize.y/this.pixelsPerMeter};return{rowStart:this.getRow(i.y),rowEnd:this.getRow(i.y+i.height),columnStart:this.getColumn(i.x),columnEnd:this.getColumn(i.x+i.width)}},t.prototype.checkBlockedCells=function(t,e,n,i){if(!(isFinite(t)&&isFinite(e)&&isFinite(n)&&isFinite(i)))throw new o.IVFrontendException("Invalid arguments (grid range must be finite)");for(var r=t;r<=e;++r)for(var a=n;a<=i;++a)if(this.poiGrid[r]&&void 0!==this.poiGrid[r][a])return!0;return!1},t.prototype.blockCells=function(t,e,n,i){for(var r=t;r<=e;++r)for(var o=n;o<=i;++o)this.poiGrid[r]||(this.poiGrid[r]=[]),this.poiGrid[r][o]=!1},t.prototype.processGrid=function(){for(var t=0,e=this.getRows();t<e.length;t++){var n=e[t];if(!this.poiGrid[n])return;for(var i=0,r=this.getColumns(n);i<r.length;i++){var o=r[i];this.comparePOIs(n,o,n-1,o,this.highlightedPois),this.comparePOIs(n,o,n-1,o+1,this.highlightedPois),this.comparePOIs(n,o,n,o+1,this.highlightedPois),this.comparePOIs(n,o,n+1,o,this.highlightedPois),this.comparePOIs(n,o,n+1,o+1,this.highlightedPois)}}},t.prototype.comparePOIs=function(t,e,n,i,r){if(this.poiGrid[t]&&this.poiGrid[t][e]&&this.poiGrid[n]&&this.poiGrid[n][i]){var o=this.poiGrid[t][e],s=this.poiGrid[n][i];Math.abs(o.location.x-s.location.x)<this.minDistance&&Math.abs(o.location.y-s.location.y)<this.minDistance&&-1===a.comparePoiImportance(o,s,r)&&delete this.poiGrid[n][i]}},t}();e.PoiGridManager=s},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(1203),r=n(1204),o=n(68),a=function(){function t(){this._adjacencyList=new Map,this.localId=-1}return Object.defineProperty(t.prototype,"adjacencyList",{get:function(){return this._adjacencyList},enumerable:!0,configurable:!0}),t.prototype.createLocalId=function(){return this.localId--},t.prototype.addNode=function(t){this._adjacencyList.has(t.id)?this._adjacencyList.get(t.id).resource=t:this._adjacencyList.set(t.id,new i.NavGraphEditingAdjacencyListNode(t))},t.prototype.addEdges=function(t){for(var e=0,n=t;e<n.length;e++){var i=n[e];this.addEdge(i)}},t.prototype.addEdge=function(t){this._adjacencyList.has(t.source.id)||this._adjacencyList.set(t.source.id,new i.NavGraphEditingAdjacencyListNode),this._adjacencyList.get(t.source.id).edges.set(t.target.id,new r.NavGraphEditingAdjacencyListEdge(t)),this._adjacencyList.has(t.target.id)||this._adjacencyList.set(t.target.id,new i.NavGraphEditingAdjacencyListNode),this._adjacencyList.get(t.target.id).edges.set(t.source.id,new r.NavGraphEditingAdjacencyListEdge(t,!0))},t.prototype.removeNode=function(t){this._adjacencyList.delete(t)},t.prototype.removeEdge=function(t,e){this._adjacencyList.has(t)&&this._adjacencyList.get(t).edges.delete(e),this._adjacencyList.has(e)&&this._adjacencyList.get(e).edges.delete(t)},t.prototype.doesEdgeExist=function(t,e){return void 0!==(this._adjacencyList.has(t)?this._adjacencyList.get(t).edges.get(e):void 0)},t.prototype.getNode=function(t){return this._adjacencyList.has(t)?this._adjacencyList.get(t).resource:void 0},t.prototype.isTerminalNode=function(t){return!!this._adjacencyList.has(t)&&1===Array.from(this._adjacencyList.get(t).edges.values()).filter(function(t){return t.mesh&&t.resource}).length},t.prototype.getEdgeBetweenNodes=function(t,e){var n=this._adjacencyList.get(t),i=n?n.edges.get(e):void 0;return i?i.resource:void 0},t.prototype.getEdgesOfNode=function(t){var e=this._adjacencyList.get(t);if(!e)return[];var n=[];return e.edges.forEach(function(t){t.mesh&&t.resource&&n.push(t.resource)}),n},t.prototype.setNodeMesh=function(t){this._adjacencyList.get(t.userData.id).mesh=t},t.prototype.setEdgeMesh=function(t){var e=t.userData.source.id,n=t.userData.target.id;this._adjacencyList.get(e).edges.get(n).mesh=t,this._adjacencyList.get(n).edges.get(e).mesh=t},t.prototype.updateEdgeVertices=function(t){var e=this._adjacencyList.get(t);e.edges.forEach(function(n){if(n.mesh){var i=n.mesh.userData.source.id===t?o.NavGraphEditingConstantsSelectedNode.CURRENT:o.NavGraphEditingConstantsSelectedNode.PREVIOUS;n.mesh.geometry.vertices[i].copy(e.mesh.position),n.mesh.geometry.verticesNeedUpdate=!0}})},t.prototype.getNodeMesh=function(t){return this._adjacencyList.has(t)?this._adjacencyList.get(t).mesh:void 0},t.prototype.getEdgeMeshBetweenNodes=function(t,e){var n=this._adjacencyList.get(t),i=n?n.edges.get(e):void 0;return i?i.mesh:void 0},t}();e.NavGraphEditingAdjacencyList=a},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});e.NavGraphEditingAdjacencyListNode=function(t){this.edges=new Map,this.resource=t}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});e.NavGraphEditingAdjacencyListEdge=function(t,e){void 0===e&&(e=!1),this.resource=t,this.redundant=e}},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(7),a=n(565),s=n(96),c=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.attributes={},e}return r(e,t),Object.defineProperty(e.prototype,"location",{get:function(){return this._location},set:function(t){this._location=t,this._globalLocation=this.GeoTransformationService.vectorToGlobal(this._location).toArray()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"globalLocation",{get:function(){return this._globalLocation},set:function(t){this._globalLocation=t,this._location=this.GeoTransformationService.vectorToLocal(s.VectorFactory.fromArray3(this.globalLocation))},enumerable:!0,configurable:!0}),e.prototype.resolveInjectables=function(){t.prototype.resolveInjectables.call(this),this.GeoTransformationService=this.injectables.GeoTransformationService},e.prototype.copy=function(e,n){return void 0===n&&(n=!1),t.prototype.copy.call(this,e,n),this.globalLocation=e.globalLocation,this.attributes=o.cloneDeep(e.attributes),this.siteModelEntityId=e.siteModelEntityId,this.siteModelEntity=e.siteModelEntity,this},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.globalLocation=e.geometry,this.attributes=o.cloneDeep(e.attributes),this.siteModelEntityId=e.site_model_entity_id},e.prototype.toData=function(){var e={};return t.prototype.fillDto.call(this,e),e.geometry=this.globalLocation,e.attributes=o.cloneDeep(this.attributes)||{},e.site_model_entity_id=this.siteModelEntityId,e},e.prototype.onReferenceSystemChangedEvent=function(){this._location=this.GeoTransformationService.vectorToLocal(s.VectorFactory.fromArray3(this.globalLocation))},e}(a.AbstractNavGraphEntity);e.NodeEntity=c},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(7),a=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.attributes={},e}return r(e,t),e.prototype.resolveInjectables=function(){t.prototype.resolveInjectables.call(this),this.NodeRepository=this.injectables.NodeRepository},e.prototype.copy=function(e,n){return void 0===n&&(n=!1),t.prototype.copy.call(this,e,n),this.source=e.source,this.target=e.target,this.attributes=o.cloneDeep(e.attributes),this},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.source=this.NodeRepository.dataMap[e.source_node_id],this.target=this.NodeRepository.dataMap[e.target_node_id],this.source&&this.target||console.warn("Source and/or target node could not be found. Please ensure to first fetch the nodes before the edges"),this.attributes=o.cloneDeep(e.attributes)},e.prototype.toData=function(){var e={};return t.prototype.fillDto.call(this,e),e.source_node_id=this.source.id,e.target_node_id=this.target.id,e.attributes=o.cloneDeep(this.attributes)||{},e},e}(n(565).AbstractNavGraphEntity);e.EdgeEntity=a},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(4),o=n(68),a=function(){function t(t){this.mesh=t,this.originalPosition=i.copy(this.mesh.position),this.makeCurrentlySelected()}return t.prototype.select=function(){this.setColor(o.NavGraphEditingConstantsNodeColors.RED)},t.prototype.makeCurrentlySelected=function(){this.setColor(o.NavGraphEditingConstantsNodeColors.DARK_BLUE)},t.prototype.makeLastSelected=function(){this.setColor(o.NavGraphEditingConstantsNodeColors.LIGHT_BLUE)},t.prototype.historyColor=function(){this.setColor(o.NavGraphEditingConstantsNodeColors.LIGHT_LIGHT_BLUE)},t.prototype.resetColor=function(){this.setColor(o.NavGraphEditingConstantsNodeColors.GREEN)},t.prototype.reset=function(){this.resetColor(),this.mesh.position.x=this.originalPosition.x,this.mesh.position.y=this.originalPosition.y,this.mesh.updateMatrix()},t.prototype.setColor=function(t){this.mesh.material=new r.MeshLambertMaterial({color:t,transparent:!0,depthTest:!1})},t}();e.NavGraphEditingNode=a},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(183),a=n(68),s=function(t){function e(e,n,i,r,o){var s=t.call(this,a.NavGraphEditingConstantsType.NODE)||this;return s.NavGraphService=e,s.mesh=i,s.position=r,s.moveZ=o,s.resource=n,s}return r(e,t),e.prototype.apply=function(){this.startPosition=this.mesh.position.clone(),this.movedPosition=this.mesh.position.clone(),this.updatePosition(this.position)},e.prototype.merge=function(t){return t instanceof e&&t.resource===this.resource&&(this.updatePosition(t.position),!0)},e.prototype.commit=function(){return this.resource.id<0?Promise.resolve(void 0):this.NavGraphService.NodeRepository.save(this.createNodeForServer(this.resource)).then(function(){})},e.prototype.undo=function(){this.updatePosition(this.startPosition)},e.prototype.getDescription=function(){return this.NavGraphService.gettextCatalog.getString("Node moved")},e.prototype.updatePosition=function(t){void 0!==t.x&&(this.movedPosition.x=t.x,this.mesh.position.x=t.x),void 0!==t.y&&(this.movedPosition.y=t.y,this.mesh.position.y=t.y),void 0!==t.z&&this.moveZ&&(this.movedPosition.z=t.z,this.mesh.position.z=t.z),this.mesh.updateMatrix(),this.NavGraphService.adjacencyList.setNodeMesh(this.mesh),this.NavGraphService.adjacencyList.updateEdgeVertices(this.mesh.userData.id),this.NavGraphService.navgraphChanged.emit()},e.prototype.createNodeForServer=function(t){var e=this.NavGraphService.NodeRepository.create();return e.copy(t),e.location=this.movedPosition,e},e.prototype.updateMeshReference=function(t){this.mesh=t},e}(o.NavGraphEditingOperation);e.NavGraphEditingNodeMoveOperation=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(183),s=n(68),c=function(t){function e(e,n,i){var r=t.call(this,s.NavGraphEditingConstantsType.EDGE)||this;return r.NavGraphService=e,r.attributesMap=i,r.resource=n,r}return r(e,t),e.prototype.apply=function(){this.resource.attributes=this.attributesMap,this.originalAttributesMap=o.copy(this.resource.attributes)},e.prototype.commit=function(){return this.resource.id<0?Promise.resolve():this.NavGraphService.EdgeRepository.save(this.createEdgeForServer(this.resource)).then(function(){})},e.prototype.undo=function(){this.resource.attributes=this.originalAttributesMap},e.prototype.getDescription=function(){return this.NavGraphService.gettextCatalog.getString("Edge edited")},e.prototype.createEdgeForServer=function(t){var e=this.NavGraphService.EdgeRepository.create();return e.copy(t),e.attributes=this.resource.attributes,e},e}(a.NavGraphEditingOperation);e.NavGraphEditingEdgeEditOperation=c},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(183),s=n(68),c=function(t){function e(e,n,i){var r=t.call(this,s.NavGraphEditingConstantsType.NODE)||this;return r.NavGraphService=e,r.attributesMap=i,r.resource=n,r}return r(e,t),e.prototype.apply=function(){this.resource.attributes=this.attributesMap,this.originalAttributesMap=o.copy(this.attributesMap)},e.prototype.commit=function(){return this.resource.id<0?Promise.resolve(void 0):this.NavGraphService.NodeRepository.save(this.createNodeForServer(this.resource)).then(function(){})},e.prototype.undo=function(){this.resource.attributes=this.originalAttributesMap},e.prototype.getDescription=function(){return this.NavGraphService.gettextCatalog.getString("Node edited")},e.prototype.createNodeForServer=function(t){var e=this.NavGraphService.NodeRepository.create();return e.copy(t),e.attributes=this.resource.attributes,e},e}(a.NavGraphEditingOperation);e.NavGraphEditingNodeEditOperation=c},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(183),a=n(68),s=function(t){function e(e,n,i){var r=t.call(this,a.NavGraphEditingConstantsType.NODE)||this;return r.NavGraphService=e,r.mesh=i,r.deletedEdges=new Map,r.deletedNodes=new Map,r.resource=n,r}return r(e,t),e.prototype.apply=function(){for(var t=0,e=this.NavGraphService.adjacencyList.getEdgesOfNode(this.mesh.userData.id);t<e.length;t++){var n=e[t],i=n.source.id===this.resource.id?n.target.id:n.source.id,r=this.NavGraphService.adjacencyList.isTerminalNode(i);if(this.deletedEdges.set(n.id,n),this.deleteEdgeLocally(this.NavGraphService.adjacencyList.getEdgeMeshBetweenNodes(n.source.id,n.target.id)),r){var o=this.NavGraphService.adjacencyList.getNode(i),a=this.NavGraphService.adjacencyList.getNodeMesh(i);this.deletedNodes.set(i,o),this.deleteNodeLocally(a)}}this.deleteNodeLocally(this.mesh)},e.prototype.commit=function(){var t=this;if(this.resource.id<0)return Promise.resolve();var e=[];return this.deletedNodes.forEach(function(n){n.id>=0&&e.push(t.NavGraphService.NodeRepository.remove(n))}),Promise.all(e).then(function(){return t.deleteNodeOnServer()})},e.prototype.undo=function(){var t=this;this.NavGraphService.adjacencyList.addNode(this.resource),this.NavGraphService.nodeCreated.emit(this.resource),this.deletedNodes.forEach(function(e){t.NavGraphService.adjacencyList.addNode(e),t.NavGraphService.nodeCreated.emit(e)}),this.deletedEdges.forEach(function(e){var n=t.NavGraphService.adjacencyList.getNode(e.source.id),i=t.NavGraphService.adjacencyList.getNode(e.target.id);t.NavGraphService.adjacencyList.addEdge(e),t.NavGraphService.edgeCreated.emit(n,i)}),this.deletedEdges=new Map,this.deletedNodes=new Map},e.prototype.getDescription=function(){return this.NavGraphService.gettextCatalog.getString("Node deleted")},e.prototype.deleteNodeLocally=function(t){this.NavGraphService.adjacencyList.removeNode(t.userData.id),this.NavGraphService.nodeRemoved.emit(t)},e.prototype.deleteEdgeLocally=function(t){this.NavGraphService.adjacencyList.removeEdge(t.userData.source.id,t.userData.target.id),this.NavGraphService.edgeRemoved.emit(t)},e.prototype.deleteNodeOnServer=function(){var t=this;return this.NavGraphService.NodeRepository.remove(this.resource).then(function(){return t.NavGraphService.adjacencyList.removeNode(t.resource.id)})},e}(o.NavGraphEditingOperation);e.NavGraphEditingNodeDeleteOperation=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(183),a=n(68),s=function(t){function e(e,n,i,r,o){var s=t.call(this,a.NavGraphEditingConstantsType.EDGE)||this;return s.NavGraphService=e,s.sourceNode=n,s.targetNode=i,s.mesh=o,s.resource=r,s}return r(e,t),e.prototype.apply=function(){this.NavGraphService.adjacencyList.removeEdge(this.mesh.userData.source.id,this.mesh.userData.target.id),this.NavGraphService.edgeRemoved.emit(this.mesh)},e.prototype.commit=function(){var t=this;return this.resource.id<0?Promise.resolve():this.NavGraphService.EdgeRepository.remove(this.resource).then(function(){return t.NavGraphService.adjacencyList.removeEdge(t.resource.source.id,t.resource.target.id)})},e.prototype.undo=function(){this.NavGraphService.adjacencyList.addEdge(this.resource),this.NavGraphService.edgeCreated.emit(this.sourceNode,this.targetNode)},e.prototype.getDescription=function(){return this.NavGraphService.gettextCatalog.getString("Edge deleted")},e}(o.NavGraphEditingOperation);e.NavGraphEditingEdgeDeleteOperation=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(183),a=n(68),s=function(t){function e(e,n,i,r){var o=t.call(this,a.NavGraphEditingConstantsType.NODE)||this;return o.NavGraphService=e,o.mesh=i,o.z=r,o.resource=n,o}return r(e,t),e.prototype.apply=function(){this.startPosition=this.mesh.position.clone(),this.movedPosition=this.mesh.position.clone(),this.updatePosition(this.z)},e.prototype.merge=function(t){return t instanceof e&&t.resource===this.resource&&(this.updatePosition(t.z),!0)},e.prototype.commit=function(){return this.resource.id<0?Promise.resolve(void 0):this.NavGraphService.NodeRepository.save(this.createNodeForServer(this.resource)).then(function(){})},e.prototype.undo=function(){this.updatePosition(this.startPosition.z)},e.prototype.getDescription=function(){return this.NavGraphService.gettextCatalog.getString("Node moved")},e.prototype.updatePosition=function(t){this.movedPosition.z=t,this.mesh.position.z=t,this.mesh.updateMatrix(),this.NavGraphService.adjacencyList.updateEdgeVertices(this.mesh.userData.id),this.NavGraphService.navgraphChanged.emit()},e.prototype.createNodeForServer=function(t){var e=this.NavGraphService.NodeRepository.create();return e.copy(t),e.location=this.movedPosition,e},e.prototype.updateMeshReference=function(t){this.mesh=t},e}(o.NavGraphEditingOperation);e.NavGraphEditingNodeMoveInZOperation=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(68),a=function(t){function e(e,n){var i=t.call(this)||this;return i.NavGraphService=e,i.bundle=n,i.resourceType=o.NavGraphEditingConstantsType.SPLIT,i}return r(e,t),e.prototype.getDescription=function(){return this.NavGraphService.gettextCatalog.getString("Auto-split edge")+" | "+this.NavGraphService.gettextCatalog.getString("Bundle: {{bundle}}",{bundle:this.bundle.displayName})},e.prototype.apply=function(){},e}(n(570).EditingOperationCollection);e.NavGraphEditingAutoSplitEdgeOperation=a},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(1216),r=n(68),o=function(){function t(t,e,n){this.NavGraphEditingService=t,this.NavGraphService=e,this.ViewService=n}return t.prototype.isPathDrawingPossible=function(){return this.NavGraphEditingService.navGraphEditingMode===r.NavGraphEditingConstantsModes.PATH_DRAWING&&this.NavGraphEditingService.selectedNodes.length>0&&void 0!==this.pathDrawOperation},t.prototype.startPathDrawing=function(){if(!this.pathDrawOperation){this.NavGraphEditingService.navGraphEditingMode=r.NavGraphEditingConstantsModes.PATH_DRAWING;var t=this.NavGraphService.getCurrentBundle();this.pathDrawOperation=new i.NavGraphEditingPathDrawOperation(this.NavGraphService,t),this.updateCursor()}},t.prototype.removeTemporaryNodesAndEdges=function(){if(this.isPathDrawingPossible()){var t=this.NavGraphEditingService.selectedNodes[r.NavGraphEditingConstantsSelectedNode.CURRENT];this.anchorNode&&t.mesh!==this.anchorNode.mesh&&(this.pathDrawOperation.undoLastOperation(),this.pathDrawOperation.undoLastOperation())}},t.prototype.undoLastPathDrawOperation=function(){var t=this.NavGraphEditingService.selectedNodes[r.NavGraphEditingConstantsSelectedNode.PREVIOUS];this.pathDrawOperation.undoLastOperation(),this.pathDrawOperation.undoLastOperation(),this.anchorNode=t},t.prototype.finishPathDrawing=function(){this.normalizeAndApplyPathDrawn(),this.NavGraphEditingService.deselectAllNodes(),this.updateCursor(),this.pathDrawOperation=new i.NavGraphEditingPathDrawOperation(this.NavGraphService,this.NavGraphService.getCurrentBundle())},t.prototype.normalizeAndApplyPathDrawn=function(){this.pathDrawOperation&&!this.pathDrawOperation.isNoOp()&&(this.pathDrawOperation.normalizeNodeHeight(),this.NavGraphEditingService.editingHistory.apply(this.pathDrawOperation)),this.pathDrawOperation=void 0},t.prototype.startNodeEditing=function(){this.finishPathDrawing(),this.NavGraphEditingService.navGraphEditingMode=r.NavGraphEditingConstantsModes.NODE_EDITING,this.anchorNode=void 0,this.pathDrawOperation=void 0},t.prototype.createNodeAndEdgeInPath=function(t){if(t){var e=this.NavGraphEditingService.createNode(t.clone(),!1);e.apply();var n=this.NavGraphEditingService.createEdge(!1);n.apply(),this.pathDrawOperation.addOperation(e),this.pathDrawOperation.addOperation(n)}},t.prototype.resetAnchorIfPossible=function(){void 0===this.anchorNode&&(this.anchorNode=this.NavGraphEditingService.selectedNodes[r.NavGraphEditingConstantsSelectedNode.CURRENT])},t.prototype.drawPathAtPosition=function(t){this.removeTemporaryNodesAndEdges(),this.createNodeAndEdgeInPath(t)},t.prototype.savePathAtPosition=function(t){this.NavGraphEditingService.selectedNodes[r.NavGraphEditingConstantsSelectedNode.CURRENT]!==this.anchorNode&&(this.drawPathAtPosition(t),this.anchorNode=this.NavGraphEditingService.selectedNodes[r.NavGraphEditingConstantsSelectedNode.CURRENT])},t.prototype.joinPathWithMesh=function(t){this.removeTemporaryNodesAndEdges(),this.NavGraphEditingService.selectNode(t);var e=this.NavGraphEditingService.createEdge(!1);e.apply(),this.pathDrawOperation.addOperation(e),this.finishPathDrawing()},t.prototype.updateCursor=function(){var t;this.isPathDrawingPossible()?(t=this.ViewService.mainView.divContainer.container).classList.contains("path-draw-cursor")||t.classList.add("path-draw-cursor"):(t=this.ViewService.mainView.divContainer.container)&&t.classList.remove("path-draw-cursor")},t.prototype.discardPathDrawn=function(){this.pathDrawOperation&&this.pathDrawOperation.undo(),this.NavGraphEditingService.deselectAllNodes(),this.updateCursor(),this.pathDrawOperation=void 0},t.prototype.getAnchorNode=function(){return this.anchorNode},t}();e.NavGraphPathDrawingDelegate=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(68),a=n(570),s=n(568),c=n(567),l=n(4),u=function(t){function e(e,n){var i=t.call(this)||this;return i.NavGraphService=e,i.bundle=n,i.resourceType=o.NavGraphEditingConstantsType.PATH,i}return r(e,t),e.prototype.getDescription=function(){return this.NavGraphService.gettextCatalog.getString("Path drawn",void 0,"Title of the operation displayed in the NavGraphEditor history")+" | "+this.NavGraphService.gettextCatalog.getString("Bundle: {{bundle}}",{bundle:this.bundle.displayName})},e.prototype.apply=function(){},e.prototype.undoLastOperation=function(){var t=this.editingOperations.pop();t&&t.undo()},e.prototype.normalizeNodeHeight=function(){var t=this;if(!this.isNoOp()){var e=this.editingOperations.filter(function(t){return t instanceof s.NavGraphEditingEdgeCreateOperation}),n=e[e.length-1],i=e[0],r=this.NavGraphService.adjacencyList.getNodeMesh(i.resource.source.id),o=this.NavGraphService.adjacencyList.getNodeMesh(n.resource.target.id);if(n!==i&&r.position.z!==o.position.z){var a=0,u=[];e.forEach(function(e){if(e instanceof s.NavGraphEditingEdgeCreateOperation){var n=t.NavGraphService.adjacencyList.getNodeMesh(e.resource.source.id),i=t.NavGraphService.adjacencyList.getNodeMesh(e.resource.target.id),r=new l.Vector3(n.position.x,n.position.y,0),o=new l.Vector3(i.position.x,i.position.y,0),c=r.distanceTo(o);a+=c,u.push(c)}});var d=o.position.z-r.position.z,p=r.position.z,h=0;this.editingOperations.forEach(function(e){if(e instanceof c.NavGraphEditingNodeCreateOperation){var n=u[h]/a;p+=n*d;var i=e.resource.location;e.resource.location=new l.Vector3(i.x,i.y,p);var r=t.NavGraphService.adjacencyList.getNodeMesh(e.resource.id);r.position.z=p,r.updateMatrix(),t.NavGraphService.adjacencyList.updateEdgeVertices(r.userData.id),h+=1}}),this.NavGraphService.navgraphChanged.emit()}}},e.prototype.isNoOp=function(){return 0===this.editingOperations.length},e}(a.EditingOperationCollection);e.NavGraphEditingPathDrawOperation=u},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(4),a=n(323),s=function(t){function e(e,n,i,r,o,a){void 0===a&&(a=!0);var s=t.call(this,e,n,r,o)||this;return s.direction=i,s.applySnap=a,s.MINIMUM_FINAL_SCALE=.1,s}return r(e,t),e.prototype.onDragStart=function(t,e){this.applySnap&&(this.axisLine=this.findAxisLine(this.direction.clone()),this.planeOnTheAxis=this.findPlaneOnTheAxis(e.getCamera().position,this.axisLine)),this.startingPosition=this.getPositionInScene(t,e),this.startingPosition&&(this.boxFrame=this.parent.getObjectByName("box_frame"),this.box=this.parent.getObjectByName("box"),this.boxFrameStartingScale=this.boxFrame.scale.clone(),this.parentInitialPosition=this.parent.position.clone(),this.initialCirclePosition=this.position.clone())},e.prototype.onDrag=function(t,e){var n=this.getPositionInScene(t,e);if(n){var i=this.getDiffInModelCoordinates(n);this.scaleBoxFrame(i)&&(this.moveParentCubeAccordingly(i),this.view.invalidateScene())}},e.prototype.onDragCancel=function(){this.boxFrame.scale.copy(this.boxFrameStartingScale),this.box.scale.copy(this.boxFrameStartingScale),this.parent.position.copy(this.parentInitialPosition),this.position.copy(this.initialCirclePosition),this.parent.updateMatrixWorld(!0),this.view.invalidateScene()},e.prototype.onMouseOver=function(){},e.prototype.onMouseOut=function(){},e.prototype.onDragEnd=function(){},e.prototype.getPositionInScene=function(t,e){return this.applySnap?this.findPositionOnAxis(t,e).clone():e.unprojectScreenCoordinates(t.x,t.y)},e.prototype.getDiffInModelCoordinates=function(t){var e=(new o.Vector3).subVectors(t,this.startingPosition),n=(new o.Matrix4).getInverse(this.parent.matrixWorld);return a.DraggableObject3D.transformDirection(e,n)},e.prototype.scaleBoxFrame=function(t){var e=t.clone().multiply(this.direction),n=this.boxFrameStartingScale.clone().add(e);return!(n.x<this.MINIMUM_FINAL_SCALE||n.y<this.MINIMUM_FINAL_SCALE||n.z<this.MINIMUM_FINAL_SCALE||(this.box.scale.copy(n),this.boxFrame.scale.copy(n),0))},e.prototype.moveParentCubeAccordingly=function(t){var e=a.DraggableObject3D.transformDirection(t,this.matrixWorld).multiplyScalar(.5);this.parent.position.copy(this.parentInitialPosition).add(e)},e}(n(1218).DraggableCircle);e.DirectionalDragCircle=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(4),a=n(323),s=n(184),c=function(t){function e(n,i,r,a){var s=t.call(this,n,r,a)||this;return s.sphereGeometry=new o.SphereGeometry(.03,e.SPHERE_SEGMENTS,e.SPHERE_SEGMENTS),s.sphereOutlineGeometry=new o.SphereGeometry(.035,e.SPHERE_SEGMENTS,e.SPHERE_SEGMENTS),s.spherePickGeometry=new o.SphereGeometry(.04,8,6),s.createColoredSphere(i),s.createSphereOutline(),s.createPickSphere(),s}return r(e,t),e.prototype.createColoredSphere=function(t){var e=new o.MeshBasicMaterial({color:t,opacity:s.HighlightableObject3D.NON_HIGHLIGHTED_OPACITY,transparent:!0});this.object=new o.Mesh(this.sphereGeometry,e),this.add(this.object)},e.prototype.createSphereOutline=function(){var t=new o.MeshBasicMaterial({color:s.HighlightableObject3D.OUTLINE_COLOR,side:o.BackSide,opacity:s.HighlightableObject3D.NON_HIGHLIGHTED_OPACITY,transparent:!0});this.objectOutline=new o.Mesh(this.sphereOutlineGeometry,t),this.object.add(this.objectOutline)},e.prototype.createPickSphere=function(){var t=new o.MeshBasicMaterial({visible:!1,side:o.DoubleSide});this.pickObject=new o.Mesh(this.spherePickGeometry,t),this.pickObject.userData.is2D=!0,this.object.add(this.pickObject)},e.prototype.changeColor=function(t){this.object.material.color=t},e.SPHERE_SEGMENTS=32,e}(a.DraggableObject3D);e.DraggableCircle=c},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(4),a=n(323),s=n(184),c=function(t){function e(e,n,i,r){var a=t.call(this,e,i,r)||this;return a.axisGeometry=new o.BoxGeometry(.015,.015,.71),a.axisOutlineGeometry=new o.BoxGeometry(.019,.019,.72),a.axisPickGeometry=new o.BoxGeometry(.04,.04,.76),a.amountToMove=new o.Vector3,a.createColoredAxis(n),a.createAxisOutline(),a.createPickAxis(),a}return r(e,t),e.prototype.createColoredAxis=function(t){var e=new o.MeshBasicMaterial({color:t,opacity:s.HighlightableObject3D.NON_HIGHLIGHTED_OPACITY,transparent:!0});this.object=new o.Mesh(this.axisGeometry,e),this.object.renderOrder=10,this.add(this.object)},e.prototype.createAxisOutline=function(){var t=new o.MeshBasicMaterial({color:s.HighlightableObject3D.OUTLINE_COLOR,side:o.BackSide,opacity:s.HighlightableObject3D.NON_HIGHLIGHTED_OPACITY,transparent:!0});this.objectOutline=new o.Mesh(this.axisOutlineGeometry,t),this.objectOutline.renderOrder=0,this.object.add(this.objectOutline)},e.prototype.createPickAxis=function(){var t=new o.MeshBasicMaterial({visible:!1});this.pickObject=new o.Mesh(this.axisPickGeometry,t),this.object.add(this.pickObject)},e.prototype.onDragStart=function(t,e){this.axisLine=this.findAxisLine(new o.Vector3(0,0,1)),this.planeOnTheAxis=this.findPlaneOnTheAxis(e.getCamera().position,this.axisLine),this.startingPosition=this.findPositionOnAxis(t,e).clone(),this.startingPosition&&(this.parentInitialPosition=this.parent.position.clone())},e.prototype.onDrag=function(t,e){var n=this.findPositionOnAxis(t,e);this.moveParentPosition(this.startingPosition,n)},e.prototype.onDragCancel=function(){this.parent.position.copy(this.parentInitialPosition),this.parent.updateMatrixWorld(!0),this.view.invalidateScene()},e.prototype.moveParentPosition=function(t,e){var n=this.amountToMove.subVectors(e,t);this.parent.position.copy(this.parentInitialPosition).add(n),this.view.invalidateScene()},e.prototype.onMouseOut=function(){},e.prototype.onMouseOver=function(){},e.prototype.onDragEnd=function(){},e}(a.DraggableObject3D);e.DraggableAxis=c},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(4),a=n(184),s=function(t){function e(n,i,r,a,s,c){var l=t.call(this,n,i,a,s,c)||this;return l.mapMode=c,l.arcGeometry=new o.TorusGeometry(e.RADIUS,l.mapMode?.3:.013,e.RADIAL_SEGMENTS,e.TUBULAR_SEGMENTS,l.mapMode?2*Math.PI:Math.PI/2),l.outlineGeometry=new o.TorusGeometry(e.RADIUS,.015,e.RADIAL_SEGMENTS,e.TUBULAR_SEGMENTS,Math.PI/2),l.pickGeometry=new o.TorusGeometry(e.RADIUS,l.mapMode?3:.025,e.RADIAL_SEGMENTS,e.TUBULAR_SEGMENTS,l.mapMode?2*Math.PI:Math.PI/2),l.createColoredArc(r),l.createArcOutline(),l.createPickArc(),l}return r(e,t),e.prototype.createColoredArc=function(t){var e=new o.MeshBasicMaterial({color:t,opacity:a.HighlightableObject3D.NON_HIGHLIGHTED_OPACITY,transparent:!0,visible:!0});this.object=new o.Mesh(this.arcGeometry,e),this.add(this.object)},e.prototype.createArcOutline=function(){var t=new o.MeshBasicMaterial({color:a.HighlightableObject3D.OUTLINE_COLOR,side:o.BackSide,opacity:a.HighlightableObject3D.NON_HIGHLIGHTED_OPACITY,transparent:!0});this.objectOutline=new o.Mesh(this.outlineGeometry,t),this.objectOutline.renderOrder=0,this.objectOutline.visible=!this.mapMode,this.object.add(this.objectOutline)},e.prototype.createPickArc=function(){var t=new o.MeshBasicMaterial({visible:!1});this.pickObject=new o.Mesh(this.pickGeometry,t),this.object.add(this.pickObject)},e.RADIUS=.5,e.RADIAL_SEGMENTS=8,e.TUBULAR_SEGMENTS=64,e}(n(572).RotationObject);e.DraggableRotationArc=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(4),a=n(184),s=function(t){function e(e,n,i,r,o){var a=t.call(this,n,i)||this;return a.view=e,a.onDragCallback=r,a.onDragEndCallback=o,a}return r(e,t),e.prototype.onDragStart=function(t,e){return!a.HighlightableObject3D.isDragging&&e.getCamera()instanceof o.OrthographicCamera&&(this.initialPosition=this.parent.position.clone(),this.lastDragPosition=this.view.getPositionOnGroundPlane(t.x,t.y,void 0,e),!0)},e.prototype.onDrag=function(t,e){var n=this.view.getPositionOnGroundPlane(t.x,t.y,void 0,e),i=n.clone().sub(this.lastDragPosition);this.lastDragPosition=n,this.parent.position.x+=i.x,this.parent.position.y+=i.y,this.onDragCallback(),this.view.invalidateScene()},e.prototype.onDragEnd=function(){this.onDragEndCallback()},e.prototype.onDragCancel=function(){this.parent.position.copy(this.initialPosition),this.view.invalidateScene()},e.prototype.onMouseOver=function(){a.HighlightableObject3D.isDragging||(document.body.style.cursor="move")},e.prototype.onMouseOut=function(){document.body.style.cursor="default"},e}(o.Mesh);e.VolumeBox=s},function(t,e,n){t.exports=n.p+"rotation_circle.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(64),a=n(85),s=function(t){function e(){return t.call(this,"MeasurementCanceledEvent")||this}return r(e,t),e.prototype.withMagnifyingGlass=function(t){return this.withData("magnifyingGlassEnabled",t),this},e.prototype.withTool=function(t){return this.withData("tool",a.Tool[t]),this},e.prototype.numberOfPoints=function(t){return this.withData("numberOfPoints",t),this},e}(o.TrackingEvent);e.MeasurementCanceledEvent=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(64),a=n(85),s=function(t){function e(){return t.call(this,"MeasurementCompleted")||this}return r(e,t),e.prototype.withMagnifyingGlass=function(t){return this.withData("magnifyingGlassEnabled",t),this},e.prototype.finalPointEnteredIn=function(t){return this.withData("finalPointEnteredIn",t),this},e.prototype.withTool=function(t){return this.withData("tool",a.Tool[t]),this},e.prototype.numberOfPoints=function(t){return this.withData("numberOfPoints",t),this},e.prototype.withSize=function(t){return this.withData("measurementSize",t),this},e}(o.TrackingEvent);e.MeasurementCompletedEvent=s},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(55),r=function(){function t(t){this.fillFromSiteModelEntity(t)}return t.prototype.fillFromSiteModelEntity=function(t){for(var e=t;void 0!==e;){var n=e.label;switch(e.type){case i.SiteModelType.BUILDING:this.building=n;break;case i.SiteModelType.FLOOR:this.floor=n;break;case i.SiteModelType.ROOM:this.room=n}e=e.parent}},t}();e.SiteModelReadableLocation=r},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return t.call(this,"SingleMeasurementScreenshotRenderingTime")||this}return r(e,t),e.prototype.splitUI=function(){return this.withData("measurementUI","split"),this},e.prototype.fullMapUI=function(){return this.withData("measurementUI","full_map"),this},e.prototype.fromPointCoud=function(){return this.withData("ViewMode","pointcloud"),this},e.prototype.fromPanorama=function(){return this.withData("ViewMode","panorama"),this},e}(n(577).ScreenshotRenderingEvent);e.SingleMeasurementScreenshotRenderingTime=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return t.call(this,"AllMeasurementsScreenshotRenderingTime")||this}return r(e,t),e}(n(577).ScreenshotRenderingEvent);e.AllMeasurementsScreenshotsRenderingEvent=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(85),r=n(168),o=function(){function t(t,e){var n=this;this.MeasurementToolChanger=t,this.MeasurementsLayer=e,this.escape={combo:["esc"],description:r.translate("Cancel current measurement"),callback:function(){n.MeasurementsLayer.cancelCurrentMeasurement()||n.MeasurementToolChanger.toggleTool(void 0,i.EventSource.KEYBOARD_SHORTCUT)}},this.backspaceDelete={combo:["backspace","delete"],description:r.translate("Delete last point"),callback:function(){n.MeasurementsLayer.removeMostRecentPoint()&&n.MeasurementsLayer.cancelCurrentMeasurement()}},this.distance={combo:["1"],description:r.translate("Cycle Distance"),callback:function(){return n.MeasurementToolChanger.cycleTool(i.ToolGroup.Distance,i.EventSource.KEYBOARD_SHORTCUT)}},this.polygon={combo:["2"],description:r.translate("Cycle Polygon"),callback:function(){return n.MeasurementToolChanger.cycleTool(i.ToolGroup.Area,i.EventSource.KEYBOARD_SHORTCUT)}},this.rectangle={combo:["3"],description:r.translate("Cycle Rectangle"),callback:function(){return n.MeasurementToolChanger.cycleTool(i.ToolGroup.Rectangle,i.EventSource.KEYBOARD_SHORTCUT)}},this.horizontalDistance={combo:["shift+1"],description:r.translate("Horizontal Distance"),callback:function(){return n.MeasurementToolChanger.toggleTool(i.Tool.DISTANCE_HORIZONTAL_MEASUREMENT,i.EventSource.KEYBOARD_SHORTCUT)}},this.horizontalPolygon={combo:["shift+2"],description:r.translate("Horizontal Polygon"),callback:function(){return n.MeasurementToolChanger.toggleTool(i.Tool.AREA_HORIZONTAL_MEASUREMENT,i.EventSource.KEYBOARD_SHORTCUT)}},this.horizontalRectangle={combo:["shift+3"],description:r.translate("Horizontal Rectangle"),callback:function(){return n.MeasurementToolChanger.toggleTool(i.Tool.RECTANGLE_HORIZONTAL_MEASUREMENT,i.EventSource.KEYBOARD_SHORTCUT)}},this.verticalDistance={combo:["alt+1"],description:r.translate("Vertical Distance"),callback:function(){return n.MeasurementToolChanger.toggleTool(i.Tool.DISTANCE_VERTICAL_MEASUREMENT,i.EventSource.KEYBOARD_SHORTCUT)}},this.verticalPolygon={combo:["alt+2"],description:r.translate("Vertical Polygon"),callback:function(){return n.MeasurementToolChanger.toggleTool(i.Tool.AREA_VERTICAL_MEASUREMENT,i.EventSource.KEYBOARD_SHORTCUT)}},this.verticalRectangle={combo:["alt+3"],description:r.translate("Vertical Rectangle"),callback:function(){return n.MeasurementToolChanger.toggleTool(i.Tool.RECTANGLE_VERTICAL_MEASUREMENT,i.EventSource.KEYBOARD_SHORTCUT)}},this.complete={combo:["enter"],description:r.translate("Complete Measurement"),callback:function(){return n.MeasurementsLayer.completeCurrentAreaMeasurement()}}}return Object.defineProperty(t.prototype,"keyBindings",{get:function(){return[this.distance,this.polygon,this.rectangle,this.horizontalDistance,this.horizontalPolygon,this.horizontalRectangle,this.verticalDistance,this.verticalPolygon,this.verticalRectangle,this.complete,this.backspaceDelete,this.escape]},enumerable:!0,configurable:!0}),t}();e.HotKeyConfiguration=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(64),a=n(85),s=function(t){function e(){return t.call(this,"MeasurementStarted")||this}return r(e,t),e.prototype.withMagnifyingGlass=function(t){return this.withData("magnifyingGlassEnabled",t),this},e.prototype.pointEnteredIn=function(t){return this.withData("firstPointEnteredIn",t),this},e.prototype.withTool=function(t){return this.withData("tool",a.Tool[t]),this},e}(o.TrackingEvent);e.MeasurementStartedEvent=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(64),a=n(85),s=function(t){function e(){return t.call(this,"PointAddedToMeasurement")||this}return r(e,t),e.prototype.withNumberOfPointInMeasurement=function(t){return this.withData("numberOfPointInsMeasurement",t),this},e.prototype.withTool=function(t){return this.withData("tool",t),this},e.prototype.withMagnifyingGlass=function(t){return this.withData("magnifyingGlassEnabled",t),this},e.prototype.withPointEnteredIn=function(t){return this.withData("pointEnteredIn",t),this},e}(o.TrackingEvent);e.PointAddedToMeasurementEvent=s;var c=function(t){function e(){var e=t.call(this,"PointRemovedFromMeasurementEvent")||this;return e.data.eventSource=a.EventSource.KEYBOARD_SHORTCUT,e}return r(e,t),e.prototype.withTool=function(t){return this.withData("tool",t),this},e}(o.TrackingEvent);e.PointRemovedFromMeasurementEvent=c},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(e,n){var i=t.call(this,e)||this;return i._camera=n,i}return r(e,t),Object.defineProperty(e.prototype,"camera",{get:function(){return this._camera},enumerable:!0,configurable:!0}),e.prototype.centerOn=function(t,e){throw new Error("Method not Implemented")},e.prototype.drag=function(t,e,n){throw new Error("Method not Implemented")},e.prototype.updateCamera=function(){throw new Error("Method not Implemented")},e.prototype.zoomTo=function(t,e,n){throw new Error("Method not Implemented")},e}(n(317).CameraController);e.NoOpCameraController=o},function(t,e,n){t.exports=n.p+"mag_cross_hair.png"},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(580),a=n(7),s=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.vectorEntities=[],e.stats=new o.VectorMapStats,e.selected=!1,e}return r(e,t),e.prototype.copy=function(e,n){return void 0===n&&(n=!1),t.prototype.fill.call(this,e),this.name=e.name,this.visible=e.visible,this.drawingOrder=e.drawingOrder,this.color=e.color,this.vectorEntities=a.clone(e.vectorEntities),this.vectorMap=e.vectorMap,this.vectorMapId=e.vectorMapId,this.zMax=e.zMax,this.zMin=e.zMin,n||(this.stats.copy(e.stats),this.selected=e.selected),this},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.name=e.name,this.visible=e.visible,this.drawingOrder=e.drawing_order,this.color=e.color,this.vectorMapId=e.vector_map_id,this.zMin=e.z_min,this.zMax=e.z_max},e.prototype.toData=function(){var e={};return t.prototype.fillDto.call(this,e),e.name=this.name,e.visible=this.visible,e.drawing_order=this.drawingOrder,e.color=this.color,e.z_min=this.zMin,e.z_max=this.zMax,e.vector_map_id=this.vectorMapId,e},e}(n(102).RepositoryObject);e.VectorLayerEntity=s},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(7),r=n(4),o=function(){function t(t,e){if(this.GeoTransformationService=t,this.coordinates=[],e)for(var n=0,i=e.coordinates;n<i.length;n++){var o=i[n];this.coordinates.push(new r.Vector2(o[0],o[1]))}}return t.prototype.toData=function(){for(var t=[],e=0,n=this.coordinates;e<n.length;e++){var i=n[e];t.push([i.x,i.y])}return{coordinates:t,type:"LineString"}},t.prototype.toGeometry=function(){var t=new r.Geometry;return t.vertices=i.map(this.coordinates,function(t){return new r.Vector3(t.x,t.y,0)}),t},t.prototype.toLocalGeometry=function(){var t=new r.Geometry,e=this.GeoTransformationService.vectorArrayToLocal(this.coordinates);return t.vertices=i.map(e,function(t){return new r.Vector3(t.x,t.y,0)}),t},t.prototype.copy=function(t){this.coordinates=i.clone(t.coordinates)},t.prototype.clone=function(){var e=new t(this.GeoTransformationService);return e.copy(this),e},t.prototype.getFirstPoint=function(){return this.coordinates[0]},t}();e.LineString=o;e.LineStringRest=function(){this.type="LineString"}},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(e,n){var i=t.call(this,e,n)||this;return i.rx=1,i.ry=0,i.tx=0,i.ty=0,i.tz=0,i}return r(e,t),e.prototype.copy=function(e,n){return void 0===n&&(n=!1),t.prototype.fill.call(this,e),this.name=e.name,this.parent=e.parent,this.parentId=e.parentId,this.spatialReference=e.spatialReference,this.spatialReferenceString=e.spatialReferenceString,this.rx=e.rx,this.ry=e.ry,this.tx=e.tx,this.ty=e.ty,this.tz=e.tz,n||(this.dirty=e.dirty,this.crs=e.crs,this.transform=e.transform),this},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.name=e.name,this.parentId=e.parent_id,this.spatialReference=e.spatial_reference,this.spatialReferenceString=e.spatial_reference_string,this.rx=e.rx,this.ry=e.ry,this.tx=e.tx,this.ty=e.ty,this.tz=e.tz},e.prototype.toData=function(){var t,e={};return this.fillDto(e),e.name=this.name,e.parent_id=null===(t=this.parent)||void 0===t?void 0:t.id,e.spatial_reference=this.spatialReference,e.spatial_reference_string=this.spatialReferenceString||void 0,e.rx=this.rx,e.ry=this.ry,e.tx=this.tx,e.ty=this.ty,e.tz=this.tz,e},e}(n(102).RepositoryObject);e.AffineRefSysEntity=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.THREE="three",t.TWEEN="tweenjs",t.HAMMER="hammerjs",t.ANGULAR="angular",t.JQUERY="jquery"}(e.ThirdPartyLibraries||(e.ThirdPartyLibraries={}))},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};function o(t,e){var n=new Promise(function(e,n){t.onerror=function(){n()},t.onload=function(){e()}});return e.body.appendChild(t),n}function a(t,e){void 0===e&&(e=document);var n=e.createElement("script");return n.type="text/javascript",n.src=t,n}Object.defineProperty(e,"__esModule",{value:!0}),e.loadScriptWithTimeout=function(t,e,n){var s=function(t){return new Promise(function(e){return window.setTimeout(e,t)})}(e).then(function(){throw new Error("Could not load "+t+" before timeout")}),c=function(t,e){return i(this,void 0,void 0,function(){var n,i;return r(this,function(r){switch(r.label){case 0:return[4,o(n=document.createElement("iframe"),document)];case 1:r.sent(),e&&(n.contentWindow[e]=function(){}),i=a(t,n.contentDocument),r.label=2;case 2:return r.trys.push([2,4,5,6]),[4,o(i,n.contentDocument)];case 3:return r.sent(),[3,6];case 4:throw r.sent(),new Error("Load test in IFrame failed for "+i.src);case 5:return n.remove(),[7];case 6:return[2]}})})}(t,n);return Promise.race([c,s]).then(function(){document.body.appendChild(a(t))})}},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.copy=function(e,n){return void 0===n&&(n=!1),t.prototype.fill.call(this,e),this.lastModified=e.lastModified,this.fileId=e.fileId,this},e.prototype.fillFromData=function(e){t.prototype.fillFromData.call(this,e),this.lastModified=e.last_modified,this.fileId=e.file_id},e.prototype.toData=function(){var t={};return this.fillDto(t),t.file_id=this.fileId,t},e}(n(376).LocationEntity);e.PoseEntity=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return t.call(this,"MeasurementModeExited")||this}return r(e,t),e.prototype.measurementsTaken=function(t){return this.withData("measurementsTaken",t),this},e.prototype.measurementsDiscarded=function(t){return this.withData("measurementsDiscarded",t),this},e.prototype.measurementsSaved=function(t){return this.withData("measurementsSaved",t),this},e}(n(64).TrackingEvent);e.MeasurementModeExitedEvent=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(){this._measurementsSaved=0,this._measurementsDiscarded=0}return Object.defineProperty(t.prototype,"measurementsSaved",{get:function(){return this._measurementsSaved},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"measurementsDiscarded",{get:function(){return this._measurementsDiscarded},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"total",{get:function(){return this._measurementsDiscarded+this._measurementsSaved},enumerable:!0,configurable:!0}),t.prototype.saveMeasurements=function(t){void 0===t&&(t=1),this._measurementsSaved=this._measurementsSaved+t},t.prototype.discardMeasurements=function(t){void 0===t&&(t=1),this._measurementsDiscarded=this._measurementsDiscarded+t},t}();e.MeasurementSessionMetrics=i},function(t,e,n){var i="MenuUI/ToolboxMenuUI/ToolboxMenu.html",r='<div id="vertical-toolbox-menu" class="vertical-menu float-right"\n ng-class="{\'hide\': vm.ToolboxMenuService.isMenuHidden,\n \'sticky-headers-enabled\': vm.displayStickyHeaders}">\n\n\t\x3c!-- Draggable width --\x3e\n\t<div class="resize-handler"\n\t resize-handler direction="\'left\'" is-collapsed="vm.ToolboxMenuService.isCollapsed"\n\t collapsed-size="vm.getMenuCollapsedWidth"\n\t collapse-threshold="vm.getMenuCollapseThreshold"\n\t min-expanded-size="vm.getMenuDefaultWidth">\n\t</div>\n\n\t\x3c!-- Expand button --\x3e\n\t<span class="expand-wrapper"\n\t expand-handler direction="\'horizontal\'" collapsed-size="vm.getMenuCollapsedWidth"\n\t expanded-size="vm.getMenuDefaultWidth">\n\t\t\t<img class="ic_svg expand-handler" ng-src="'+n(583)+'"\n\t\t\t alt="{{\'Expand\'|translate}}">\n\t</span>\n\n\t<div class="vertical-menu-heading">\n\t\t\x3c!--Heading--\x3e\n\t\t<h3 title="{{vm.ToolboxMenuService.title | translate:\'title\'}}">\n\t\t\t{{vm.ToolboxMenuService.title | translate:"title"}}\n\t\t</h3>\n\n\t\t\x3c!--Close button--\x3e\n\t\t<img class="menu-close-button ic_svg"\n\t\t ng-click="vm.exit()"\n\t\t\t ng-disabled="vm.ToolboxMenuService.isCloseDisabled()"\n\t\t ng-src="'+n(1242)+'" alt="{{\'Close\'|translate}}">\n\t</div>\n\n\t\x3c!--Content--\x3e\n\t<div class="vertical-menu-content panel-autoscroll">\n\t\t<div ng-include src="vm.ToolboxMenuService.template"\n\t\t ng-hide="vm.ToolboxMenuService.isCollapsed && !vm.ToolboxMenuService.hasCollapsedTemplate"></div>\n\t</div>\n</div>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){t.exports=n.p+"963e14ae279259852631cf252e6591ea.ic_close_dark.svg"},function(t,e,n){var i=n(11),r=n(1244);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,".vertical-menu{position:relative;width:440px;max-width:100%;height:100%;border-radius:0;visibility:visible!important;transition:width .2s,left .2s;background-color:#fff}.vertical-menu.resizing{transition:none}.vertical-menu.fullscreen{width:100%}.vertical-menu>div{height:100%}.vertical-menu .panel-sticky-header>.panel-heading{position:absolute;top:0;left:0;right:0;padding-left:20px;padding-right:20px;height:53px;z-index:1;background-color:hsla(0,0%,100%,.95);min-width:375px}.indoorViewer.vertical-menu-min-width .vertical-menu .panel-sticky-header>.panel-heading{min-width:300px}.vertical-menu .panel-sticky-header>.panel-body{padding-top:53px}.vertical-menu:not(.sticky-headers-enabled) .panel-sticky-header>.panel-heading{position:relative}.vertical-menu:not(.sticky-headers-enabled) .panel-sticky-header>.panel-body{padding-top:0}.vertical-menu .vertical-menu-heading{position:relative;height:62px;background-color:#fff;border-bottom:1px solid #e6e6e6}.vertical-menu .vertical-menu-heading>h3{font-size:20px;color:#4a4a4a;margin:0 60px 0 0;padding:20px 0 20px 60px;overflow-x:hidden;white-space:nowrap;text-overflow:ellipsis}.vertical-menu .vertical-menu-heading .menu-close-button{top:9px;right:9px;z-index:1}.vertical-menu .vertical-menu-content{position:relative;height:calc(100% - 62px)}.vertical-menu .vertical-menu-content>.panel{border-radius:0}.vertical-menu .vertical-menu-content ul{padding-left:0;list-style:none}.vertical-menu .vertical-menu-content,.vertical-menu .vertical-menu-heading{min-width:375px}.indoorViewer.vertical-menu-min-width .vertical-menu .vertical-menu-heading,.vertical-menu .vertical-menu-content{min-width:300px}.vertical-menu .resize-handler{position:absolute;top:0;left:0;width:12px;height:100%;z-index:15;cursor:ew-resize;transition:width .2s,left .2s}.vertical-menu .resize-handler.resizing{left:auto;right:0;width:100vw}.indoorViewer.mobile-small .vertical-menu:not(.hide):not(.collapsed) .resize-handler,.indoorViewer.mobile .vertical-menu:not(.hide):not(.collapsed) .resize-handler{left:-50px;width:50px;background:rgba(0,0,0,.6)}.vertical-menu .expand-wrapper{display:none;background:#fff;position:absolute;bottom:0;height:62px;width:100%;z-index:2;border-top:1px solid #eee}.vertical-menu .expand-handler{position:absolute;padding:12px;bottom:6px;left:6px;font-size:2em;cursor:pointer}.vertical-menu.collapsed .vertical-menu-heading h3{display:none}.vertical-menu.collapsed .vertical-menu-heading .menu-close-button{left:9px}.vertical-menu.collapsed .expand-wrapper{display:block}toolbox-menu>.vertical-menu{box-shadow:0 3px 12px rgba(0,0,0,.23),0 3px 12px rgba(0,0,0,.16);z-index:11;min-width:19px}.indoorViewer.mobile-small toolbox-menu>.vertical-menu,.indoorViewer.mobile toolbox-menu>.vertical-menu{max-width:calc(100vw - 50px);width:60px}toolbox-menu>.vertical-menu.hide{width:0!important;min-width:0}toolbox-menu>.vertical-menu.sticky-headers-enabled .vertical-menu-content{position:static}toolbox-menu>.vertical-menu.sticky-headers-enabled .vertical-menu-content .panel-sticky-header>.panel-heading{top:62px}toolbox-menu>.vertical-menu.sticky-headers-enabled #vector-map-editor .panel-sticky-header>.panel-heading{height:90px}toolbox-menu>.vertical-menu.sticky-headers-enabled #vector-map-editor .panel-sticky-header>.panel-body{padding-top:90px}toolbox-menu>.vertical-menu .vertical-menu-heading{border-bottom:1px solid #eee}toolbox-menu>.vertical-menu .vertical-menu-heading h3{color:#000;padding-left:20px}toolbox-menu>.vertical-menu .vertical-menu-content{padding:15px 20px;max-height:none;overflow-x:hidden}toolbox-menu #nav-graph-toolbox>.panel>.panel-body{padding-left:0;padding-right:0;padding-bottom:0}toolbox-menu #nav-graph-toolbox .undo-button{position:relative;bottom:3px;float:right;padding:3px 5px;border:none;color:#337ab7;background-color:#fff}toolbox-menu #nav-graph-toolbox .undo-button:active,toolbox-menu #nav-graph-toolbox .undo-button:hover{color:#337ab7;background-color:#e6e6e6}toolbox-menu #nav-graph-toolbox .navgraph-history-item{display:block}toolbox-menu #nav-graph-toolbox .navgraph-history-item:hover{background-color:#e6e6e6}toolbox-menu .vertical-menu.collapsed .vertical-menu-content{padding:0}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(1246),n(1247);var i=n(2),r=n(153),o=n(7),a=n(8),s=function(){function t(t,e){var n=this;this.UnitService=t,this.$timeout=e,this.UoMSystem=r.UoMSystem,this.max=1/0,this.min=-1/0,this.fractionSize=2,this.allowEmpty=!1,this.domainChanged(),this.UnitService.unitChanged.connect(function(){n.currentUnit=r.UnitsOfMeasurement.getDefaultUnitByDomainAndSystem(n.domain,n.UnitService.currentSystem)})}return t.$inject=["UnitService","$timeout"],Object.defineProperty(t.prototype,"domain",{get:function(){return void 0===this._domain?r.MeasurementDomain.DISTANCE:this._domain},set:function(t){this._domain=t,this.domainChanged()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"step",{get:function(){var t;switch(this.currentUnit.name){case r.UnitsOfMeasurement.MILLIMETER[0]:t=1/r.UnitsOfMeasurement.DISTANCE.metric.Millimeter.factor;break;case r.UnitsOfMeasurement.CENTIMETER[0]:t=1/r.UnitsOfMeasurement.DISTANCE.metric.Centimeter.factor;break;case r.UnitsOfMeasurement.KILOMETER[0]:t=1/r.UnitsOfMeasurement.DISTANCE.metric.Kilometer.factor;break;case r.UnitsOfMeasurement.MILE[0]:t=.01;break;default:t=1}return t/Math.pow(10,this.fractionSize)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"convertedValue",{get:function(){if(!this.allowEmpty||!this.isEmpty(this.ngModel))return+this.currentUnit.fromBase(this.ngModel).toFixed(this.fractionSize)},set:function(t){var e=this;(this.allowEmpty&&this.isEmpty(t)||this.currentUnit.toBase(t)<this.max&&this.currentUnit.toBase(t)>this.min)&&(this.ngModel=this.allowEmpty&&this.isEmpty(t)?void 0:this.currentUnit.toBase(t),this.change&&this.$timeout(function(){return e.change()}).catch(a.handleWarning))},enumerable:!0,configurable:!0}),t.prototype.isEmpty=function(t){return null==t},t.prototype.switchUnit=function(t,e){this.UnitService.setUnit(e,!0),this.currentUnit=t},t.prototype.domainChanged=function(){this.currentUnit=r.UnitsOfMeasurement.getDefaultUnitByDomainAndSystem(this.domain,this.UnitService.currentSystem),this.metricDomainUnits=o.orderBy(r.UnitsOfMeasurement.getUnitsOfMeasurementByDomain(this.domain)[r.UoMSystem.METRIC],function(t){return t.factor}),this.usDomainUnits=o.orderBy(r.UnitsOfMeasurement.getUnitsOfMeasurementByDomain(this.domain)[r.UoMSystem.IMPERIAL],function(t){return t.factor})},t}();e.UnitAwareInputController=s;var c=function(){function t(){this.restrict="E",this.templateUrl="Core/UI/UnitAwareInput.html",this.controller=s,this.controllerAs="vm",this.scope=!0,this.bindToController={ngModel:"=",domain:"@?",change:"&",min:"=?",max:"=?",fractionSize:"@?",readOnly:"=",allowEmpty:"=?"}}return t.factory=function(){return function(){return new t}},t}();e.UnitAwareInputDirective=c,i.module("IVWebApp").directive("unitAwareInput",c.factory())},function(t,e){var n="Core/UI/UnitAwareInput.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="input-group">\n\t<input class="form-control" type="number" step="{{vm.step}}" ng-model="vm.convertedValue"\n\t ng-readonly="vm.readOnly" placeholder="{{\'N/A\' | translate}}">\n\t<div class="input-group-btn">\n\t\t<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown"\n\t\t aria-haspopup="true" aria-expanded="false">\n\t\t\t<span>{{vm.currentUnit.symbol}}</span>\n\t\t\t<span class="caret"></span>\n\t\t</button>\n\t\t<ul class="dropdown-menu dropdown-menu-right">\n\t\t\t<li ng-repeat="unit in vm.metricDomainUnits" ng-click="vm.switchUnit(unit, vm.UoMSystem.METRIC)">\n\t\t\t\t{{unit.symbol}}\n\t\t\t</li>\n\t\t\t<li role="separator" class="divider"></li>\n\t\t\t<li ng-repeat="unit in vm.usDomainUnits" ng-click="vm.switchUnit(unit, vm.UoMSystem.IMPERIAL)">\n\t\t\t\t{{unit.symbol}}\n\t\t\t</li>\n\t\t</ul>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1248);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"unit-aware-input .caret{visibility:hidden}unit-aware-input:hover .caret{visibility:inherit}unit-aware-input input[readonly]{padding-right:0}unit-aware-input .btn{padding-top:6px;padding-bottom:6px;white-space:nowrap!important}unit-aware-input .dropdown-menu{min-width:0;text-align:right}unit-aware-input .dropdown-menu li{text-align:center}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(7),o=n(108),a=function(t,e){this.cssClasses=t,this.defaultText=e},s=function(){function t(t,e){this.gettext=t,this.$compile=e,this.restrict="E",this.transclude=!0,this.tags={"ok-button":new a("btn-primary ok-button",this.gettext("Okay")),"save-button":new a("btn-primary save-button",this.gettext("Save")),"abort-button":new a("btn-default abort-button",this.gettext("Abort")),"cancel-button":new a("btn-default cancel-button",this.gettext("Cancel")),"close-button":new a("btn-default close-button",this.gettext("Close")),"discard-button":new a("btn-danger discard-button",this.gettext("Discard")),"delete-button":new a("btn-danger delete-button",this.gettext("Delete")),"undo-button":new a("btn-default undo-button",this.gettext("Undo")),"move-button":new a("btn-default move-button",this.gettext("Move")),"input-button":new a("btn-default",""),"default-button":new a("btn-default","")}}return t.factory=function(){return["gettext","$compile",function(e,n){return new t(e,n)}]},t.prototype.link=function(t,e,a,s,c){var l=this,u=e.prop("tagName").toLowerCase(),d=this.tags[u];if(!d)throw new o.IVFrontendException(u+" is an unimplemented button directive type!");var p="input-button"!==u?i.element("<button></button>"):i.element("<label></label>");if(p.append('<span class="spinner spinner-in-btn"><img class="in-btn-group" ng-src="'+n(94)+'"></span>'),r.forIn(a,function(t,e){if(!e.startsWith("$"))if("buttonTooltip"!==e){var n=a.$attr[e];p.attr(n,t)}else p.attr("iv-tooltip",t)}),a.ivTooltip)throw new o.IVFrontendException('Using "iv-tooltip" on '+u+' directive does not work, use "button-tooltip" instead');if(a.translate)throw new o.IVFrontendException('Using "translate" on '+u+" directive is not supported!");if(a.ngIf)throw new o.IVFrontendException('Using "ng-if on '+u+" doesn't work, use ng-show instead");if(a.type||p.attr("type","button"),a.inProgress){var h=a.inProgress;p.attr("ng-disabled",p.attr("ng-disabled")||h),p.attr("ng-class","{'in-progress': "+h+"}")}p.addClass("btn panel-control-button "+d.cssClasses+" "+a.class),e.replaceWith(p),c(function(e){r.some(e.toArray(),function(t){return!!t.outerHTML})?(l.$compile(p)(t),p.append(e)):(p.append("<span translate>"+d.defaultText+"</span>"),l.$compile(p)(t))})},t}();e.ButtonDirective=s,i.module("IVWebApp").directive("okButton",s.factory()).directive("saveButton",s.factory()).directive("abortButton",s.factory()).directive("cancelButton",s.factory()).directive("closeButton",s.factory()).directive("discardButton",s.factory()).directive("deleteButton",s.factory()).directive("undoButton",s.factory()).directive("moveButton",s.factory()).directive("inputButton",s.factory()).directive("defaultButton",s.factory())},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(20),o=n(212),a=n(8),s=function(){function e(t,e){this.$document=t,this.$timeout=e,this.restrict="E",this.transclude=!0}return e.factory=function(){return e.initCustomModalCloseHandlers(),["$document","$timeout",function(t,n){return new e(t,n)}]},e.initCustomModalCloseHandlers=function(){var n=this;t(document).on("click",e.customModalSelector,function(t){setTimeout(function(){var n=e.getCustomModalElement();t.target.classList.contains("menu-close-button")&&!n.length&&e.focusModalOnTop()})}),t(document).on("keydown",function(t){var i=e.getCustomModalElement(),r=t.keyCode===o.KeyEvent.DOM_VK_ESCAPE&&!t.shiftKey&&!t.altKey&&!t.ctrlKey,a=t.keyCode===o.KeyEvent.DOM_VK_SLASH&&t.shiftKey&&!t.altKey&&!t.ctrlKey,s=i.length>0&&(r||a),c=0===i.length&&a;e.transitionInProgress=c,setTimeout(function(){s?n.focusModalOnTop():c&&(e.transitionInProgress=!1,e.getCustomModalElement().focus())})})},e.prototype.link=function(t,n,o,s,c){var l=this;c(function(n){var o=l.$document[0].querySelector("body");i.element(o).append(n),l.$timeout(function(){var i=n.find(".modal").addBack(".modal");t.$on("$destroy",function(){n.remove(),l.getBackdropElement(i).remove()}),i.on("focus",function(){e.getCustomModalElement().length&&r.blurActiveElement()}),i.on("keydown",function(t){e.transitionInProgress&&t.stopImmediatePropagation()}),i.bind("show.bs.modal",function(){e.transitionInProgress=!0,Number.isFinite(l.$document.data("num_open_modals"))||l.$document.data("num_open_modals",0),i.is("[data-iv-modal-stack]")||l.$timeout(function(){var t=l.$document.data("num_open_modals");l.$document.data("num_open_modals",t+1),i.attr("data-iv-modal-stack",t),i.css("z-index",1502+10*l.$document.data("num_open_modals"));var e=l.$document.find(".modal-backdrop:not([data-iv-modal-stack])").first();e.attr("data-iv-modal-stack",t),e.css("z-index",1501+10*l.$document.data("num_open_modals"))}).catch(a.handleWarning)}),i.bind("shown.bs.modal",function(){return e.transitionInProgress=!1}),i.bind("hidden.bs.modal",function(){l.getBackdropElement(i).remove(),i.removeAttr("data-iv-modal-stack");var t=l.$document.data("num_open_modals")-1;l.$document.data("num_open_modals",t),e.focusModalOnTop()})}).catch(a.handleWarning)})},e.focusModalOnTop=function(){var e=t(document).data("num_open_modals");t(".modal[data-iv-modal-stack='"+(e-1)+"']").focus()},e.prototype.getBackdropElement=function(t){var e=t.attr("data-iv-modal-stack");return this.$document.find(".modal-backdrop[data-iv-modal-stack='"+e+"']")},e.getCustomModalElement=function(){return t(e.customModalSelector)},e.customModalSelector=".custom-modal",e.transitionInProgress=!1,e}();e.ModalDirective=s,i.module("IVWebApp").directive("modal",s.factory())}).call(this,n(19))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=function(){function t(t){this.$document=t,this.restrict="A"}return t.factory=function(){return["$document",function(e){return new t(e)}]},t.prototype.link=function(t,e,n,i){var r=this;e.bind(n.outsideEvents,function(t){t.originalEvent&&r.eventOn(t.originalEvent,!0)}),this.$document.bind(n.outsideEvents,function(e){r.$document[0].querySelector("body").classList.contains("modal-open")||e.originalEvent&&r.eventOn(e.originalEvent)||t.$apply(n.eventOutsideThis)})},t.prototype.eventOn=function(e,n){return e=e,void 0!==n&&(e[t.FIELD]=n),e[t.FIELD]},t.FIELD="eventOn",t}();e.EventOutsideDirective=r,i.module("IVWebApp").directive("eventOutsideThis",r.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=function(){function t(){this.require="ngModel"}return t.factory=function(){return function(){return new t}},t.prototype.link=function(t,e,n,i){i.$parsers.push(parseFloat),i.$formatters.push(function(t){return""+t})},t}();e.ConvertToNumberDirective=r,i.module("IVWebApp").directive("convertToNumber",r.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(40),o=function(){function t(t){this.StorageService=t,this.restrict="E",r.isPlatform(r.Platform.IOS)&&(r.isMobileBrowser()?t.set("mobile_browser",!0):!0===t.get("mobile_browser")&&document.head.querySelector("meta[name=viewport]").setAttribute("content","width=1024, initial-scale=0.0"))}return t.factory=function(){return["StorageService",function(e){return new t(e)}]},t}();e.MobileDesktopSiteDetectorDirective=o,i.module("IVWebApp").directive("mobileDesktopSiteDetector",o.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1255);var r=function(){function t(){var e=t.unique++;this.deleteConfirmationId="delete-confirmation-"+e}return t.unique=0,t}();e.DeleteConfirmationController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="Core/DeleteConfirmation/DeleteConfirmation.html",this.controller=r,this.controllerAs="vm",this.transclude={buttonContent:"?buttonContent"},this.scope={onConfirmCallback:"&",inProgress:"=?",buttonDisabled:"=?",buttonClass:"@?",additionalActionCallback:"&?",additionalActionName:"@?",dismissButtonTitle:"@?",deleteButtonTitle:"@?"}}return t.factory=function(){return function(){return new t}},t}();e.DeleteConfirmationDirective=o,i.module("IVWebApp").directive("deleteConfirmation",o.factory())},function(t,e){var n="Core/DeleteConfirmation/DeleteConfirmation.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'\x3c!-- Delete Modal --\x3e\n<delete-button data-toggle="modal" data-target="#{{vm.deleteConfirmationId}}"\n ng-disabled="buttonDisabled" class="{{buttonClass}}"\n in-progress="inProgress">\n\t<div ng-transclude="buttonContent">\n\t\t<span translate>Delete</span>\n\t</div>\n</delete-button>\n\n<delete-confirmation-modal delete-confirmation-id="{{vm.deleteConfirmationId}}"\n on-confirm-callback="onConfirmCallback()"\n additional-action-callback="additionalActionCallback()"\n additional-action-name="{{additionalActionName}}"\n dismiss-button-title="{{dismissButtonTitle}}"\n delete-button-title="{{deleteButtonTitle}}">\n\t<div ng-transclude>\n\t\t<span translate>Are you sure you want to delete?</span>\n\t</div>\n</delete-confirmation-modal>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1257);var r=function(){function t(){this.restrict="E",this.templateUrl="Core/DeleteConfirmationModal/DeleteConfirmationModal.html",this.transclude=!0,this.scope={deleteConfirmationId:"@",onConfirmCallback:"&",additionalActionCallback:"&?",additionalActionName:"@?",dismissButtonTitle:"@?",deleteButtonTitle:"@?"}}return t.factory=function(){return function(){return new t}},t}();e.DeleteConfirmationModalDirective=r,i.module("IVWebApp").directive("deleteConfirmationModal",r.factory())},function(t,e){var n="Core/DeleteConfirmationModal/DeleteConfirmationModal.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<modal>\n\t<div class="modal fade" id="{{deleteConfirmationId}}" tabindex="-1" role="dialog"\n\t aria-labelledby="{{deleteConfirmationId}}" aria-hidden="true">\n\t\t<div class="modal-dialog" role="document">\n\t\t\t<div class="modal-content">\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<h4 translate translate-context="title">Confirm</h4>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-body">\n\t\t\t\t\t<ng-transclude>\n\t\t\t\t\t\t<span translate>Are you sure you want to delete?</span>\n\t\t\t\t\t</ng-transclude>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-footer">\n\t\t\t\t\t<save-button class="pull-left"\n\t\t\t\t\t ng-show="additionalActionCallback && additionalActionName"\n\t\t\t\t\t ng-click="additionalActionCallback()">\n\t\t\t\t\t\t<span>{{additionalActionName}}</span>\n\t\t\t\t\t</save-button>\n\n\t\t\t\t\t<cancel-button class="btn btn-secondary" data-dismiss="modal"\n\t\t\t\t\t ng-show="!dismissButtonTitle">\n\t\t\t\t\t</cancel-button>\n\t\t\t\t\t<delete-button class="btn btn-primary" data-dismiss="modal"\n\t\t\t\t\t ng-click="onConfirmCallback()" ng-show="!deleteButtonTitle">\n\t\t\t\t\t</delete-button>\n\n\t\t\t\t\t<cancel-button class="btn btn-secondary" data-dismiss="modal"\n\t\t\t\t\t ng-show="dismissButtonTitle">\n\t\t\t\t\t\t<span>{{dismissButtonTitle}}</span>\n\t\t\t\t\t</cancel-button>\n\t\t\t\t\t<delete-button class="btn btn-primary" data-dismiss="modal"\n\t\t\t\t\t ng-show="deleteButtonTitle"\n\t\t\t\t\t ng-click="onConfirmCallback()"><span>{{deleteButtonTitle}}</span>\n\t\t\t\t\t</delete-button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n')}]),t.exports=n},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0}),n(586);var i=n(2),r=n(7),o=n(40),a=function(){function e(t,e,n,i){this.gettextCatalog=t,this.IV=e,this.LanguageService=n,this.$compile=i,this.restrict="A",this.scope={showTooltip:"=showTooltip",ngDisabled:"=ngDisabled"}}return e.factory=function(){return["gettextCatalog","IV","LanguageService","$compile",function(t,n,i,r){return new e(t,n,i,r)}]},e.prototype.link=function(t,n,i){var r=this;o.isMobileBrowser()||this.IV.bootstrapped(function(){var o=e.unique++;t.tooltipId="tooltip-"+o;var a=e.createTooltip(n,t.tooltipId,i);n.wrap(a),r.$compile(a)(t),r.defineCallbacks(n,i,t)})},e.createTooltip=function(e,n,i){var r=t(document.createElement("span"));return r.addClass("custom-tooltip"),r.attr("id",n),r.attr("title",i.ivTooltip),r.attr("data-toggle","tooltip"),r.attr("data-container","body"),this.moveDataAttributes(e,i,r),r},e.moveDataAttributes=function(t,e,n){var i=this;r.forIn(e,function(o,a){var s=e.$attr[a];r.includes(i.tooltipAttributes,s)&&(n.attr(s,o),t.removeAttr(s))})},e.prototype.defineCallbacks=function(t,n,i){var r=this,o=this.LanguageService.onLanguageChange.connect(function(){return e.updateTranslatedTitle(n.ivTooltip,i.tooltipId)});n.$observe("ivTooltip",function(){return e.updateTranslatedTitle(n.ivTooltip,i.tooltipId)}),i.$watch("showTooltip",function(t){var e=void 0===t||t;r.toggleTooltip(e,i.tooltipId)}),i.$watch("ngDisabled",function(t){var n=t||!1;e.updateCursorStyle(n,i.tooltipId)}),i.$on("$destroy",function(){return o.disconnect()}),t.on("$destroy",function(){r.toggleTooltip(!1,i.tooltipId)})},e.prototype.toggleTooltip=function(e,n){var i=t("#"+n);e?i.tooltip("enable"):i.tooltip("disable").tooltip("hide")},e.updateTranslatedTitle=function(e,n){t("#"+n).attr("title",e).tooltip("fixTitle")},e.updateCursorStyle=function(e,n){t("#"+n).attr("style",e?"cursor:not-allowed":"")},e.tooltipAttributes=["data-animation","data-container","data-delay","data-html","data-placement","data-selector","data-template","data-title","data-trigger","data-constraints","data-offset"],e.unique=0,e}();e.IvTooltipDirective=a,i.module("IVWebApp").directive("ivTooltip",a.factory())}).call(this,n(19))},function(t,e,n){(e=n(10)(!1)).push([t.i,".custom-tooltip>:disabled{pointer-events:none}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1261),n(1262);var r=n(1264),o=n(89),a=n(25),s=n(8),c=function(){function t(t,e,n,i,a){this.RestService=t,this.UrlService=e,this.$location=n,this.ConfigService=i,this.$timeout=a,this.feedbackProcessed=void 0,this.feedbackModel=new r.FeedbackEntity,this.showMessageDuration=5e3,this.promiseWrapper=new o.PromiseProgressWrapper}return t.$inject=["RestService","UrlService","$location","ConfigService","$timeout"],t.prototype.isVisible=function(){return""!==this.ConfigService.getString(a.Configs.FEEDBACK_EMAIL_RECIPIENT_EMAIL,"")},t.prototype.isDataPrivacyAgreementRequired=function(){return this.ConfigService.getBoolean(a.Configs.FEEDBACK_PRIVACY_TEXT_CHECKBOX,!1)},t.prototype.getDataPrivacyStatement=function(){return this.ConfigService.getString(a.Configs.FEEDBACK_PRIVACY_TEXT_TEXT,"")},t.prototype.getDataPrivacyAsHtml=function(){return this.ConfigService.getString(a.Configs.FEEDBACK_PRIVACY_HTML,"")},t.prototype.sendFeedback=function(){var t=this;if(!this.isDataPrivacyAgreementRequired()||this.feedbackModel.agreedToDataPrivacy){this.feedbackModel.addressBarUrl=this.$location.absUrl(),this.feedbackModel.sceneStateUrl=this.UrlService.generateShareUrl(),this.feedbackModel.devicePixelRatio=window.devicePixelRatio,this.feedbackModel.screenWidth=window.screen.width,this.feedbackModel.screenHeight=window.screen.height,this.feedbackModel.colorDepth=window.screen.colorDepth,this.feedbackModel.colorDepth=window.screen.colorDepth,this.feedbackModel.windowWidth=document.body.clientWidth,this.feedbackModel.windowHeight=Math.max(window.innerHeight,document.body.clientHeight);var e=this.RestService.postApi("feedbackmail",this.feedbackModel.toData(),void 0,!1).then(function(){return t.feedbackProcessed=!0}).catch(function(){return t.feedbackProcessed=!1}).then(function(){t.$timeout(function(){return t.feedbackProcessed=void 0},t.showMessageDuration).catch(s.handleWarning)});this.promiseWrapper.wrap(e).catch(s.handleWarning)}},t.prototype.isRequestInProgress=function(){return this.promiseWrapper.isInProgress},t.prototype.hasFeedbackBeenProcessed=function(){return void 0!==this.feedbackProcessed},t}();e.FeedbackController=c;var l=function(){function t(){this.restrict="E",this.templateUrl="FeedbackUI/Feedback.html",this.controller=c,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.FeedbackDirective=l,i.module("IVWebApp").directive("feedback",l.factory())},function(t,e,n){var i="FeedbackUI/Feedback.html",r='\x3c!-- Bottom left links --\x3e\n<a ng-if="vm.isVisible()" class="feedback"\n data-toggle="modal" data-target="#feedbackForm"\n title="{{\'Feedback\' | translate}}" translate>\n\tFeedback\n</a>\n\n\x3c!-- Modal box for feedback form --\x3e\n<modal>\n\t<div class="modal fade" id="feedbackForm" tabindex="-1" role="dialog"\n\t aria-labelledby="" aria-hidden="true" data-backdrop="static">\n\t\t<div class="modal-dialog">\n\t\t\t<div class="modal-content">\n\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t ng-src="'+n(35)+'"\n\t\t\t\t\t alt="{{\'Close\' | translate}}"\n\t\t\t\t\t data-dismiss="modal">\n\t\t\t\t\t<h4 translate translate-context="title">\n\t\t\t\t\t\tFeedback Form\n\t\t\t\t\t</h4>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="modal-body">\n\t\t\t\t\t<form name="feedback" ng-submit="vm.sendFeedback()" novalidate>\n\t\t\t\t\t\t\x3c!-- novalidate prevents HTML5 validation since we will be validating ourselves --\x3e\n\t\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t\t<span translate\n\t\t\t\t\t\t\t translate-context="followed by *-symbol (also translatable)">\n\t\t\t\t\t\t\t\tFields marked with this symbol are required:\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t<required></required>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t\t<label translate>First name</label>\n\t\t\t\t\t\t\t<input type="text" class="form-control" name="first_name"\n\t\t\t\t\t\t\t ng-model="vm.feedbackModel.firstName">\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t\t<label translate>Last name</label>\n\t\t\t\t\t\t\t<input type="text" class="form-control" name="last_name"\n\t\t\t\t\t\t\t ng-model="vm.feedbackModel.lastName">\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t\t<label translate>Email address</label>\n\t\t\t\t\t\t\t<required></required>\n\t\t\t\t\t\t\t<input type="email" class="form-control" name="user_email"\n\t\t\t\t\t\t\t ng-model="vm.feedbackModel.userEmail"\n\t\t\t\t\t\t\t required>\n\t\t\t\t\t\t\t<p ng-show="feedback.user_email.$invalid && !feedback.user_email.$pristine"\n\t\t\t\t\t\t\t class="help-block" translate>\n\t\t\t\t\t\t\t\tPlease enter a valid email address\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t\t<label translate>Feedback type</label>\n\t\t\t\t\t\t\t<select class="form-control" name="feedback_type"\n\t\t\t\t\t\t\t ng-model="vm.feedbackModel.feedbackType">\n\t\t\t\t\t\t\t\t<option value="{{\'Error\' | translate}}" translate>\n\t\t\t\t\t\t\t\t\tError\n\t\t\t\t\t\t\t\t</option>\n\t\t\t\t\t\t\t\t<option value="{{\'Suggestion\' | translate}}" translate>\n\t\t\t\t\t\t\t\t\tSuggestion\n\t\t\t\t\t\t\t\t</option>\n\t\t\t\t\t\t\t</select>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t\t<label translate>\n\t\t\t\t\t\t\t\tMessage\n\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t<required></required>\n\t\t\t\t\t\t\t<textarea class="form-control"\n\t\t\t\t\t\t\t rows="5"\n\t\t\t\t\t\t\t name="message"\n\t\t\t\t\t\t\t ng-model="vm.feedbackModel.message"\n\t\t\t\t\t\t\t required>\n\t\t\t\t\t\t\t</textarea>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div ng-bind-html="vm.getDataPrivacyAsHtml()"></div>\n\n\t\t\t\t\t\t<div class="form-group"\n\t\t\t\t\t\t ng-if="vm.isDataPrivacyAgreementRequired()">\n\t\t\t\t\t\t\t<label class="radio-inline no-padding-left">\n\t\t\t\t\t\t\t\t<input type="checkbox"\n\t\t\t\t\t\t\t\t class="form-control-inline"\n\t\t\t\t\t\t\t\t ng-model="vm.feedbackModel.agreedToDataPrivacy"\n\t\t\t\t\t\t\t\t required>\n\t\t\t\t\t\t\t\t{{vm.getDataPrivacyStatement()}}\n\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div class="form-group text-right">\n\t\t\t\t\t\t\t<span ng-show="vm.isRequestInProgress()"\n\t\t\t\t\t\t\t class="spinner next-to-btngroup">\n\t\t\t\t\t\t\t\t<img class="in-btn-group" ng-src="'+n(94)+'">\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t<div class="btn-group" role="group" aria-label="...">\n\t\t\t\t\t\t\t\t<button type="button" class="btn btn-default" data-dismiss="modal"\n\t\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\t\tClose\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t\t<button type="submit" class="btn btn-primary"\n\t\t\t\t\t\t\t\t ng-disabled="feedback.$invalid || vm.waitingForResponse"\n\t\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\t\tSubmit\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</form>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="modal-footer text-left" ng-if="vm.hasFeedbackBeenProcessed()">\n\t\t\t\t\t<div ng-if="!vm.feedbackProcessed" class="alert alert-danger">\n\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\tError while sending feedback.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div ng-if="vm.feedbackProcessed" class="alert alert-success">\n\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\tYour feedback has been sent successfully.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){var i=n(11),r=n(1263);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"feedback .feedback{font-size:.8em;line-height:2em;text-shadow:1px 1px 0 #fff;padding-left:1em;color:#000;cursor:pointer}feedback textarea{resize:vertical}feedback .next-to-btngroup{margin-right:5px}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(){}return t.prototype.toData=function(){var t={};return t.address_bar_url=this.addressBarUrl,t.scene_state_url=this.sceneStateUrl,t.device_pixel_ratio=this.devicePixelRatio,t.screen_width=this.screenWidth,t.screen_height=this.screenHeight,t.color_depth=this.colorDepth,t.window_width=this.windowWidth,t.window_height=this.windowHeight,t.first_name=this.firstName,t.last_name=this.lastName,t.user_email=this.userEmail,t.feedback_type=this.feedbackType,t.message=this.message,t.agreed_to_data_privacy=this.agreedToDataPrivacy,t},t}();e.FeedbackEntity=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(28),n(1266),n(1267);var r=n(25),o=n(105),a=function(){function t(t,e,n,i,r){var o=this;this.ConfigService=t,this.ModeService=e,this.NavGraphEditingService=n,this.FloorChangerService=i,this.ViewService=r,this.floorNames=[],t.initialized.then(function(){i.onFloorUpdate.connect(function(t){o.floorNames=t.floorNames})}).catch(function(){})}return t.$inject=["ConfigService","ModeService","NavGraphEditingService","FloorChangerService","ViewService"],t.prototype.isVisible=function(){return this.ConfigService.getBoolean(r.Configs.UI_FLOORCHANGER_VISIBLE,!0)&&this.ModeService.isNormalMode()||this.ModeService.isNavGraphEditorMode()&&!this.NavGraphEditingService.isPathDrawingPossible()||this.ModeService.isDownloadPointCloudMode()&&this.ViewService.getCurrentMainViewMode()===o.SceneViewMode.Map||this.ModeService.isMeasurementsMode()},t.prototype.getFloorClassByName=function(t){var e="";return this.FloorChangerService.getCurrentFloorName()===t&&(e=e.concat("active")),e},t.prototype.changeFloorByName=function(t){this.FloorChangerService.changeFloorByName(t).catch(function(){})},t}();e.FloorChangerController=a;var s=function(){function t(){this.controller=a,this.controllerAs="vm",this.restrict="EA",this.templateUrl="FloorChanger/FloorChanger.html",this.scope={floorNames:"="}}return t.factory=function(){return function(){return new t}},t}();e.FloorChangerDirective=s,i.module("IVWebApp").directive("floorChanger",s.factory())},function(t,e){var n="FloorChanger/FloorChanger.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div ng-if="vm.isVisible()" class="btn-group-vertical panel-autoscroll">\n\t<button ng-repeat="floorName in vm.floorNames | reverse"\n\t type="button"\n\t class="btn btn-default long-title"\n\t ng-class="vm.getFloorClassByName(floorName)"\n\t ng-click="vm.changeFloorByName(floorName)"\n\t title="{{floorName}}">\n\t\t{{floorName}}\n\t</button>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1268);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"floor-changer .btn-group-vertical{max-height:45vh;max-width:100px}floor-changer .btn-default{border:none}floor-changer .btn-default:focus,floor-changer .btn-default:hover{background-color:#f0f0f0}floor-changer .btn-default.active:focus,floor-changer .btn-default.active:hover,floor-changer .btn-default:active:focus,floor-changer .btn-default:active:hover{color:#3398c7;background-color:#e6e6e6}floor-changer .btn{font-weight:700;padding-left:20px;padding-right:20px}#floorChanger{overflow-x:hidden;background-color:#fff}",""]),t.exports=e},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(587),s=function(t){function e(e,n){var i=t.call(this)||this;return i.$scope=e,i.MainViewService=n,i}return r(e,t),e.$inject=["$scope","MainViewService"],e.prototype.create=function(t){var e=this.MainViewService.create(t);return this.$scope.$on("$destroy",function(){return e.destroy()}),e},e}(a.ViewComponent);e.MainViewComponent=s;var c=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.controller=s,e}return r(e,t),e.factory=function(){return function(){return new e}},e}(a.ViewDirective);e.MainViewDirective=c,o.module("IVWebApp").directive("ivMainView",c.factory())},function(t,e,n){var i=n(11),r=n(1271);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,".iv-view{display:inline-block;-webkit-overflow-scrolling:touch;overflow:hidden}.iv-view:focus{outline:none}",""]),t.exports=e},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(1273),n(1274),n(1276),n(1280);var a=n(587),s=function(t){function e(e,n){var i=t.call(this)||this;return i.$scope=e,i.MapViewService=n,i}return r(e,t),e.$inject=["$scope","MapViewService"],e.prototype.create=function(t){var e=this.MapViewService.create(t);return this.$scope.$on("$destroy",function(){return e.destroy()}),e},e}(a.ViewComponent);e.MapViewComponent=s;var c=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.templateUrl="MapView/UI/MapView.html",e.controller=s,e}return r(e,t),e.factory=function(){return function(){return new e}},e}(a.ViewDirective);e.MapViewDirective=c,o.module("IVWebApp").directive("ivMapView",c.factory())},function(t,e){var n="MapView/UI/MapView.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="map-info">\n\t\x3c!-- Map scale div --\x3e\n\t<map-scale map-view="vm.view"></map-scale>\n\t\x3c!-- Copyrights --\x3e\n\t<map-attribution map-view="vm.view"></map-attribution>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1275);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"iv-map-view .map-info{position:absolute;left:10px;right:10px;bottom:0}#insetPanel iv-map-view .map-info{right:44px}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1277),n(1278);var r=function(){function t(){}return Object.defineProperty(t.prototype,"attribution",{get:function(){var t=this.mapView&&this.mapView.getMapLayer(),e=t&&t.getAttributions(),n=[];for(var i in e)n.push({attribution:i,score:e[i].score});return n.sort(function(t,e){return e.score-t.score}),n.map(function(t){return t.attribution}).join(", ")},enumerable:!0,configurable:!0}),t}();e.MapAttributionController=r;var o=function(){function t(){this.restrict="EA",this.templateUrl="MapView/UI/MapAttribution.html",this.controller=r,this.controllerAs="vm",this.scope=!0,this.bindToController={mapView:"="}}return t.factory=function(){return function(){return new t}},t}();e.MapAttributionDirective=o,i.module("IVWebApp").directive("mapAttribution",o.factory())},function(t,e){var n="MapView/UI/MapAttribution.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<span title="4DKanKan, © 高德地图">4DKanKan, © 高德地图</span>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1279);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"map-attribution{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-align:right;font-size:.8em;line-height:2em;text-shadow:1px 1px 1px #fff;padding-left:1em}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1281),n(1282);var r=n(20),o=n(4),a=function(){function t(){}return Object.defineProperty(t.prototype,"mapView",{get:function(){return this._mapView},set:function(t){this._mapView=t,this.zoomSignalConnection&&this.zoomSignalConnection.disconnect(),t&&(this.zoomSignalConnection=t.onZoom.connect(r.invalidateAngular))},enumerable:!0,configurable:!0}),t.prototype.scalePixels=function(){return this.getMapScale()[1]},t.prototype.scaleUnit=function(){var t=this.getMapScale()[0];return t<1e3?t.toString()+" m":(t/1e3).toString()+" km"},t.prototype.getMapScale=function(){var e=this.mapView&&this.mapView.getDefaultViewport(),n=e&&e.getCamera();if(n instanceof o.OrthographicCamera){for(var i=(n.right-n.left)/e.getWidth(),r=1,a=t.SCALE_SIZES[0],s=a/i;s<t.MIN_SCALE_WIDTH&&r<t.SCALE_SIZES.length;)s=(a=t.SCALE_SIZES[r++])/i;return[a,s]}return[0,0]},t.SCALE_SIZES=[1,5,10,50,100,500,1e3,5e3,1e4,5e4,1e5,5e5,1e6,5e6],t.MIN_SCALE_WIDTH=30,t}();e.MapScaleController=a;var s=function(){function t(){this.restrict="EA",this.templateUrl="MapView/UI/MapScale.html",this.controller=a,this.controllerAs="vm",this.scope=!0,this.bindToController={mapView:"="}}return t.factory=function(){return function(){return new t}},t}();e.MapScaleDirective=s,i.module("IVWebApp").directive("mapScale",s.factory())},function(t,e){var n="MapView/UI/MapScale.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<div ng-style=\"{width: vm.scalePixels() + 'px'}\">\n\t{{vm.scaleUnit()}}\n</div>\n")}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1283);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"map-scale div{height:3px;border:1px solid #000;border-top:none;line-height:2em;text-align:center;width:150px;font-size:.8em;float:left;text-shadow:1px 1px 1px #fff;margin-bottom:1.5em;white-space:nowrap}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1285),n(1286),n(265);var r=n(25),o=n(40),a=function(){function t(t,e,n,i){this.AboutService=t,this.ConfigService=e,this.LicenseService=n,this.hotkeys=i,this.currentYear=(new Date).getFullYear(),this.config=t.config,this.version=t.version,this.isMobileBrowser=o.isMobileBrowser}return t.$inject=["AboutService","ConfigService","LicenseService","hotkeys"],t.prototype.fetchLicensesFile=function(t){this.AboutService.getThirdPartyLibraries().then(function(){i.element(document.querySelector(t)).modal("show")}).catch(function(){})},t.prototype.getPrivacyPolicy=function(){return this.ConfigService.getString(r.Configs.INFO_TERMS_PRIVACY)},t.prototype.havePrivacyPolicy=function(){return void 0!==this.ConfigService.getString(r.Configs.INFO_TERMS_PRIVACY)&&""!==this.ConfigService.getString(r.Configs.INFO_TERMS_PRIVACY)},t.prototype.getExtraCredits=function(){return this.ConfigService.getString(r.Configs.INFO_TERMS_EXTRA,void 0)},t.prototype.toggleHotkeysCheatSheet=function(){this.hotkeys.toggleCheatSheet()},t}();e.AboutController=a;var s=function(){function t(){this.restrict="E",this.templateUrl="Menu/About.html",this.controller=a,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.AboutDirective=s,i.module("IVWebApp").directive("about",s.factory())},function(t,e,n){var i="Menu/About.html",r='\x3c!--About Indoor Viewer--\x3e\n<modal>\n\t<div id="about-modal" class="modal fade" tabindex="-1" role="dialog"\n\t aria-hidden="true">\n\t\t<div class="modal-dialog modal-dialog-wide">\n\t\t\t<div class="modal-content">\n\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t data-dismiss="modal"\n\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}">\n\n\t\t\t\t\t<h4 translate translate-context="title">About 4DKanKan</h4>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="modal-body">\n\n\t\t\t\t\t<div class="logo-area">\n\t\t\t\t\t\t<a href="http://www.4DKanKan.com" target="_blank">\n\t\t\t\t\t\t\t<img ng-src="'+n(588)+'" alt="4DKanKan Logo">\n\t\t\t\t\t\t</a>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div style="font-size: 1.5em">\n\t\t\t\t\t\t4DKanKan\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="form-group" style="font-size: 1em; font-style: italic;"\n\t\t\t\t\t\t title="Build {{vm.version.build}} {{vm.version.branch}} {{vm.version.commit | limitTo:8}} {{vm.version.commit2 | limitTo:8}}">\n\t\t\t\t\t\t<span translate translate-params-version="vm.version.version"\n\t\t\t\t\t\t\t translate-context="IV version">\n\t\t\t\t\t\t\tVersion {{version}}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t<span translate translate-params-year="vm.currentYear">\n\t\t\t\t\t\t\t\tCopyright © {{year}}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t\t4DKanKan GmbH\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t<br>\n\t\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\t\tAll rights reserved\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</p>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div class="form-group" ng-if="vm.getExtraCredits()">\n\t\t\t\t\t\t<p ng-bind-html="vm.getExtraCredits()"></p>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t<span translate\n\t\t\t\t\t\t translate-context="Powered by many great software products: [...] any many more.">\n\t\t\t\t\t\t\tPowered by many great software products:\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<a href="http://github.com/mrdoob/three.js" target="_blank" class="blue">\n\t\t\t\t\t\t\t\t\tThree.js WebGL\n\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<a href="http://angularjs.org" target="_blank">\n\t\t\t\t\t\t\t\t\tAngularJS\n\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t<li translate\n\t\t\t\t\t\t\t\ttranslate-context="Powered by many great software products: [...] any many more.">\n\t\t\t\t\t\t\t\tand many more.\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t<div style="position:absolute; bottom:15px; right:15px">\n\t\t\t\t\t\t\t<span ng-click="vm.toggleHotkeysCheatSheet()"\n\t\t\t\t\t\t\t ng-hide="vm.isMobileBrowser()"\n\t\t\t\t\t\t\t class="link"\n\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\tKeyboard shortcuts\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t<br/>\n\t\t\t\t\t\t\t<span ng-click="vm.fetchLicensesFile(\'#licensesOfUsedLibsModal\')"\n\t\t\t\t\t\t\t id="third-party-licenses-button"\n\t\t\t\t\t\t\t class="link"\n\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\tThird party licenses\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t<span data-toggle="modal" data-target="#privacyPolicy"\n\t\t\t\t\t\t ng-if="vm.havePrivacyPolicy()"\n\t\t\t\t\t\t click="link"\n\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\tPrivacy policy\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n\n\x3c!--modal box for licenses--\x3e\n<modal>\n\t<div class="modal fade" id="licensesOfUsedLibsModal" tabindex="-1" role="dialog" aria-labelledby=""\n\t aria-hidden="true">\n\t\t<div class="modal-dialog modal-dialog-licenseText">\n\t\t\t<div class="modal-content">\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t data-dismiss="modal"\n\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}">\n\n\t\t\t\t\t<h4 translate translate-context="title">\n\t\t\t\t\t\tLicenses of Third Party Software\n\t\t\t\t\t</h4>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-body panel-autoscroll">\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<div class="row">\n\t\t\t\t\t\t\t<h4 class="col-sm-3" translate translate-context="title">\n\t\t\t\t\t\t\t\tName\n\t\t\t\t\t\t\t</h4>\n\t\t\t\t\t\t\t<h4 class="col-sm-6" translate translate-context="title">\n\t\t\t\t\t\t\t\tHomepage\n\t\t\t\t\t\t\t</h4>\n\t\t\t\t\t\t\t<h4 class="col-sm-3" translate translate-context="title">\n\t\t\t\t\t\t\t\tLicense\n\t\t\t\t\t\t\t</h4>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div ng-repeat="data in vm.config.openSourceSoftwareUsed">\n\t\t\t\t\t\t\t<div class="row space-from-top-between-rows">\n\t\t\t\t\t\t\t\t<div class="col-sm-3">\n\t\t\t\t\t\t\t\t\t{{data.name}}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div class="col-sm-6">\n\t\t\t\t\t\t\t\t\t<a ng-href="{{data.websiteUrl}}" target="_blank"\n\t\t\t\t\t\t\t\t\t class="blue">{{data.websiteUrl}}</a>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div class="col-sm-3">\n\t\t\t\t\t\t\t\t\t<a ng-click="data.show=!data.show" href>\n\t\t\t\t\t\t\t\t\t\t<span ng-show="!data.show" class="show-license-button" translate>\n\t\t\t\t\t\t\t\t\t\t\tShow license\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t<span ng-show="data.show" class="hide-license-button" translate>\n\t\t\t\t\t\t\t\t\t\t\tHide license\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t<div class="row space-from-top-between-rows"\n\t\t\t\t\t\t\t\t ng-show="data.show && data.sourceCodeUrl!==\'\'">\n\t\t\t\t\t\t\t\t<div class="col-sm-12">\n\t\t\t\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\t\t\t\tDownload source code:\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t<a ng-href="{{data.sourceCodeUrl}}" target="_blank"\n\t\t\t\t\t\t\t\t\t class="blue">{{data.sourceCodeUrl}}</a>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t<div class="row space-from-top-between-rows" ng-show="data.show">\n\t\t\t\t\t\t\t\t<div class="col-sm-12">\n\t\t\t\t\t\t\t\t\t<span ng-repeat="licenseText in data.licenses">\n\t\t\t\t\t\t\t\t\t\t<pre>{{licenseText}}</pre>\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n\n\x3c!-- Modal box for data privacy policy--\x3e\n<modal>\n\t<div class="modal fade" id="privacyPolicy" tabindex="-1" role="dialog"\n\t\t aria-labelledby="" aria-hidden="true">\n\t\t<div class="modal-dialog">\n\t\t\t<div class="modal-content">\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t data-dismiss="modal"\n\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}">\n\n\t\t\t\t\t<h4 translate translate-context="title">\n\t\t\t\t\t\tData Privacy Policy\n\t\t\t\t\t</h4>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-body" ng-bind-html="vm.getPrivacyPolicy()"></div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){var i=n(11),r=n(1287);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"#licensesOfUsedLibsModal .modal-dialog{width:calc(100% - 20px);margin:0 10px}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1289),n(1290);var r=n(40),o=n(1292),a=n(141);n(590);var s=n(25),c=n(21),l=function(){function t(t,e,n,i,r,o,a,s,c,l,u,d,p){this.SidebarMenuService=t,this.UrlService=e,this.ConfigService=n,this.SearchService=i,this.PoiService=r,this.ViewMenuService=o,this.UserService=a,this.ModeService=s,this.VectorMapService=c,this.IV=l,this.gettext=u,this.gettextCatalog=d,this.TrackingService=p,this.navbarItems=[],this.initMenuItems()}return t.$inject=["SidebarMenuService","UrlService","ConfigService","SearchService","PoiService","ViewMenuService","UserService","ModeService","VectorMapService","IV","gettext","gettextCatalog","TrackingService"],t.prototype.toggleItem=function(t){t.onClick&&t.onClick(),this.activeItem=t!==this.activeItem&&t.template?t:void 0},t.prototype.hideActiveItem=function(){this.activeItem&&this.activeItem.autoHide&&this.toggleItem(this.activeItem)},t.prototype.getItemTitle=function(t){return this.gettextCatalog.getString(t.title,void 0,"title")},t.prototype.initMenuItems=function(){var t=this,e=new o.NavbarMenuItem(this.gettext("Menu",void 0,"title"),new a.IconInfo("","",""+this.IV.base_url+n(1293)),function(){return t.SidebarMenuService.isAnyItemVisible()},"",function(){return t.ModeService.isNormalMode()&&(t.SearchService.isSearchBoxVisible()||t.SearchService.isAnyResultSelected()||t.PoiService.isRouteMode)?"navbar-menu-item-sidebar":"navbar-menu-item-sidebar shadow"},function(){t.SidebarMenuService.openMenu(),c.TrackingService.trackHamburgerClick()},[],!1),i=new o.NavbarMenuItem(this.gettext("New Window",void 0,"title"),new a.IconInfo("glyphicon glyphicon-fullscreen"),function(){return t.ConfigService.getBoolean(s.Configs.MENU_NEWWINDOW_VISIBLE,!0)&&r.isInIframe()},"",function(){return"navbar-menu-item-new-window"},function(){return window.open(t.UrlService.generateShareUrl(),"_blank")},[],!1),l=new o.NavbarMenuItem(this.gettext("User",void 0,"title"),new a.IconInfo("material-icons","person"),function(){return t.ConfigService.getBoolean(s.Configs.MENU_LOGIN_VISIBLE,!0)&&t.ModeService.isNormalMode()&&!t.VectorMapService.isVectorMapEditorActive&&!r.isMobileLayout()},c.TemplateName.LOGIN_MENU,function(){return t.UserService.isUserLoggedIn()?"navbar-menu-item-user user-logged-in":"navbar-menu-item-user"});this.navbarItems.push(e),this.navbarItems.push(i),this.navbarItems.push(l)},t}();e.NavbarMenuController=l;var u=function(){function t(){this.restrict="E",this.templateUrl="MenuUI/NavbarMenuUI/NavbarMenu.html",this.controller=l,this.controllerAs="vm",this.scope={}}return t.factory=function(){return function(){return new t}},t}();e.NavbarMenuDirective=u,i.module("IVWebApp").directive("navbarMenu",u.factory())},function(t,e){var n="MenuUI/NavbarMenuUI/NavbarMenu.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div event-outside-this="vm.hideActiveItem()"\n outside-events="mousedown touchstart"\n resize-event="vm.hideActiveItem()">\n\t<div class="navbar navbar-default">\n\t\t<ul class="nav navbar-custom float-right">\n\t\t\t<li ng-repeat="item in vm.navbarItems"\n\t\t\t ng-show="item.isVisible()"\n\t\t\t ng-class="item.getClass()"\n\t\t\t class="navbar-menu-item">\n\t\t\t\t<a ng-click="vm.toggleItem(item)">\n\t\t\t\t\t<icon icon-class="{{item.icon.className}}"\n\t\t\t\t\t icon-ligature="{{item.icon.ligature}}"\n\t\t\t\t\t icon-path="{{item.icon.path}}"\n\t\t\t\t\t iv-tooltip="{{vm.getItemTitle(item)}}"\n\t\t\t\t\t show-tooltip="item !== vm.activeItem"\n\t\t\t\t\t data-placement="bottom">\n\t\t\t\t\t</icon>\n\t\t\t\t</a>\n\t\t\t</li>\n\t\t</ul>\n\t</div>\n\n\t<div ng-if="vm.activeItem"\n\t ng-include src="vm.activeItem.template"\n\t class="navbar-menu-panel panel-autoscroll z-index-4">\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1291);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,'.z-index-1{box-shadow:none;position:relative;z-index:1}.z-index-2,navbar-menu .navbar-default .navbar-custom>li.navbar-menu-item-sidebar.shadow icon{box-shadow:0 1.5px 4px rgba(0,0,0,.24),0 1.5px 6px rgba(0,0,0,.12);position:relative;z-index:5}.z-index-3{box-shadow:0 3px 12px rgba(0,0,0,.23),0 3px 12px rgba(0,0,0,.16);position:relative;z-index:10}.z-index-4{box-shadow:0 6px 12px rgba(0,0,0,.23),0 10px 40px rgba(0,0,0,.19);position:relative;z-index:15}.z-index-5{box-shadow:0 10px 20px rgba(0,0,0,.22),0 14px 56px rgba(0,0,0,.25);position:relative;z-index:20}.front-element{z-index:1031}.full-window{position:fixed;margin:0;padding:0;left:0;right:0;top:0;bottom:0;z-index:1029;border-radius:0}.full-window-scroll{max-height:100vh}.full-window-scroll,.panel-autoscroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.panel-autoscroll{max-height:80vh}.autoscroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.fixed-top-right{position:fixed;top:10px;right:0}.center-vertical{position:absolute;top:50%;transform:translateY(-50%)}.float-left{float:left}.float-right{float:right}.margin-top-small{margin-top:5px!important}.margin-left-small{margin-left:5px!important}.margin-right-small{margin-right:5px!important}.margin-bottom-small{margin-bottom:5px!important}.margin-top{margin-top:15px!important}.margin-left{margin-left:15px!important}.margin-right{margin-right:15px!important}.margin-bottom{margin-bottom:15px!important}.margin-top-big{margin-top:25px!important}.margin-bottom-big{margin-bottom:25px!important}.no-margin{margin:0!important}.no-margin-bottom{margin-bottom:0!important}.padding-horizontal{padding-left:15px!important;padding-right:15px!important}.padding-top,.padding-vertical{padding-top:15px!important}#login-panel login-form,.padding-bottom,.padding-vertical{padding-bottom:15px!important}.no-padding-top{padding-top:0!important}.no-padding-bottom{padding-bottom:0!important}.no-padding-horizontal,.no-padding-left{padding-left:0!important}.no-padding-horizontal,.no-padding-right{padding-right:0!important}.no-padding{padding:0!important}.border{border:1px solid #e6e6e6}.border-top{border-top:1px solid #e6e6e6}.border-bottom{border-bottom:1px solid #e6e6e6}.border-left{border-left:1px solid #e6e6e6}.border-right{border-right:1px solid #e6e6e6}.no-border{border:none;border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.no-border-width{border:none}.border-radius{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.border-radius,.border-radius-top{border-top-left-radius:4px!important;border-top-right-radius:4px!important}.border-radius-bottom{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.no-border-radius{border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.indoorViewer.ios .no-hover-ios:hover{background-color:inherit!important}.no-shadow{box-shadow:none!important}.clear-background{border:0}.clear-background,.no-background{background:none!important}.no-overflow{overflow:hidden}.clickable,.clickable:hover,navbar-menu .navbar-default .navbar-custom>li.navbar-menu-item-sidebar,navbar-menu .navbar-default .navbar-custom>li.navbar-menu-item-sidebar:hover{cursor:pointer}.navbar-menu-item-user.user-logged-in .material-icons,.sidebar-menu-item-user.user-logged-in .material-icons{position:relative}.navbar-menu-item-user.user-logged-in .material-icons:after,.sidebar-menu-item-user.user-logged-in .material-icons:after{content:"";right:8px;bottom:11px;width:7px;height:7px;position:absolute;background-color:#5cb85c;border-radius:50%;box-shadow:0 0 3px #000}#login-panel{text-align:left;cursor:default}#login-panel login-form{display:block}#login-panel #collapse-user-settings{background-color:#f0f0f0}#login-panel button:focus{outline:none}#login-panel button{width:calc(100% - 30px);margin:0 15px}#login-panel button span{margin:0}#login-panel language-switcher>.panel-body{padding:15px!important}#login-panel ul{margin:0}#login-panel unit-switcher>.panel-body{padding:0 15px 15px!important}#login-panel .form-group{padding:0;margin:5px 15px 10px}#login-panel .list-group{margin-bottom:0;border-top:none}#login-panel .list-group .list-group-item{margin:0;border:none;background-color:#f0f0f0}#login-panel .login-button{width:90%;background-color:#fafafa}#login-panel .login-group{padding:15px 0 10px}#login-panel .panel{border:none;box-shadow:none;margin:0}#login-panel .panel>.panel-heading{text-align:left;padding:15px 0 15px 15px;border-radius:unset}#login-panel .panel .clickable:hover,#login-panel .panel navbar-menu .navbar-default .navbar-custom>li.navbar-menu-item-sidebar:hover,navbar-menu .navbar-default #login-panel .panel .navbar-custom>li.navbar-menu-item-sidebar:hover{background-color:#d4d4d4}#login-panel .panel-body{padding:0}#login-panel .panel-group{margin:0}#login-panel .panel-heading{background-color:#fff;user-select:none;-ms-user-select:none;-moz-user-select:none;-webkit-user-select:none}#login-panel .panel-heading .material-icons:after{display:none}#login-panel .panel-heading span{display:flex;align-items:center}#login-panel .spinner{display:inline-block;text-align:center;width:100%}#login-panel .spinner>img{margin:10px auto}#login-panel .text-danger{margin-left:0}#login-panel .user-group-header{background-color:#f5f5f5}#login-panel .user-group-item{border-bottom:none}#about-modal .logo-area{float:right}#about-modal .logo-area img{height:75px!important;margin-left:10px;margin-right:-10px}navbar-menu .navbar-default{position:absolute;left:0;right:0;padding-left:50%;background-color:transparent;border:none;margin:10px;text-align:right;z-index:10;pointer-events:none}navbar-menu .navbar-default .navbar-custom{display:flex;max-width:calc(100vw - 440px)}navbar-menu .navbar-default .navbar-custom>li{pointer-events:auto;position:relative;text-align:center;display:inline-block;margin-left:10px}navbar-menu .navbar-default .navbar-custom>li.navbar-menu-item-sidebar{position:absolute;top:0;left:5px;margin-left:0}navbar-menu .navbar-default .navbar-custom>li.navbar-menu-item-sidebar>a{height:42px;padding:5px 0}navbar-menu .navbar-default .navbar-custom>li.navbar-menu-item-sidebar>a icon{display:block;background-color:#fff;border-radius:4px}navbar-menu .navbar-default .navbar-custom>li.navbar-menu-item-sidebar>a icon i{width:40px;height:32px;color:transparent;text-shadow:none}navbar-menu .navbar-default .navbar-custom>li.navbar-menu-item-user{box-shadow:0 3px 12px rgba(0,0,0,.23),0 3px 12px rgba(0,0,0,.16);height:42px;background-color:#3398c7;border-radius:50%}navbar-menu .navbar-default .navbar-custom>li.navbar-menu-item-user:active,navbar-menu .navbar-default .navbar-custom>li.navbar-menu-item-user:hover{background-color:#2e88b3}navbar-menu .navbar-default .navbar-custom>li.navbar-menu-item-user>a i{top:0;text-shadow:none}navbar-menu .navbar-default .navbar-custom>li>a{color:#fff;text-shadow:1px 0 1px #444,-1px 0 1px #444,0 -1px 1px #444,0 1px 1px #444;font-size:1.4em;transition:font-size .2s ease;padding:0;user-select:none;-ms-user-select:none;-moz-user-select:none;-webkit-user-select:none}navbar-menu .navbar-default .navbar-custom>li>a:hover{background-color:transparent}navbar-menu .navbar-default .navbar-custom>li>a .custom-tooltip{display:inline-block}navbar-menu .navbar-default .navbar-custom>li>a icon>i{display:table-cell;vertical-align:middle;width:42px;height:42px;cursor:pointer}navbar-menu .navbar-default .navbar-custom>li>a icon>i.material-icons{font-size:26px}navbar-menu .navbar-default>ul{display:inline-block}navbar-menu .navbar-menu-panel{position:absolute;top:62px;right:10px;max-height:calc(100% - 72px);border-radius:4px;overflow-x:hidden}navbar-menu .navbar-menu-panel .panel{margin-bottom:0}navbar-menu .navbar-menu-panel #login-panel{min-width:258px;max-width:300px}',""]),t.exports=e},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(e,n,i,r,o,a,s,c,l){void 0===s&&(s=[]),void 0===c&&(c=!0),void 0===l&&(l=!0);var u=t.call(this,e,n,i,r,o,a,s,l)||this;return u.isVisible=i,u.items=s,u.autoHide=c,u}return r(e,t),e}(n(589).MenuItem);e.NavbarMenuItem=o},function(t,e,n){t.exports=n.p+"68fd36507543b1a24650ae30970b6e2b.ic_menu_hamburger.svg"},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1295),n(1296),n(38);var r=function(){function t(t){this.SidebarMenuService=t,this.items=this.SidebarMenuService.items}return t.$inject=["SidebarMenuService"],t.prototype.hasVisibleIcon=function(){return this.items.some(function(t){return void 0!==t.isPreviewIconVisible&&t.isPreviewIconVisible()})},t}();e.SidebarPreviewMenuController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="MenuUI/SidebarMenuUI/SidebarPreviewMenu.html",this.controller=r,this.controllerAs="vm",this.scope={}}return t.factory=function(){return function(){return new t}},t}();e.SidebarPreviewMenuDirective=o,i.module("IVWebApp").directive("sidebarPreviewMenu",o.factory())},function(t,e){var n="MenuUI/SidebarMenuUI/SidebarPreviewMenu.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="vertical-menu z-index-2 non-mobile" ng-class="{\'disable-events\': !vm.hasVisibleIcon()}">\n\t<div class="vertical-menu-content">\n\t\t<sidebar-menu-items-collection items="vm.items"\n\t\t preview-mode="true">\n\t\t</sidebar-menu-items-collection>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1297);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"sidebar-preview-menu.slide-left>.vertical-menu{transform:translateX(-60px)}sidebar-preview-menu>.vertical-menu{position:absolute;top:62px;width:60px;height:auto;transition:all .2s!important;box-shadow:none;background-color:transparent}sidebar-preview-menu>.vertical-menu.disable-events{pointer-events:none}sidebar-preview-menu>.vertical-menu>.vertical-menu-content{min-width:0}sidebar-preview-menu>.vertical-menu sidebar-menu-items-collection,sidebar-preview-menu>.vertical-menu sidebar-menu-items-collection>.panel-autoscroll,sidebar-preview-menu>.vertical-menu sidebar-menu-items-collection>.panel-autoscroll>ul{background-color:transparent}sidebar-preview-menu>.vertical-menu sidebar-menu-items-collection>.panel-autoscroll{height:auto}sidebar-preview-menu>.vertical-menu sidebar-menu-items-collection sidebar-menu-item.active:active>li,sidebar-preview-menu>.vertical-menu sidebar-menu-items-collection sidebar-menu-item.active:hover>li,sidebar-preview-menu>.vertical-menu sidebar-menu-items-collection sidebar-menu-item.active>li,sidebar-preview-menu>.vertical-menu sidebar-menu-items-collection sidebar-menu-item>li,sidebar-preview-menu>.vertical-menu sidebar-menu-items-collection sidebar-menu-item>li.active,sidebar-preview-menu>.vertical-menu sidebar-menu-items-collection sidebar-menu-item>li.active:active,sidebar-preview-menu>.vertical-menu sidebar-menu-items-collection sidebar-menu-item>li.active:hover{background-color:transparent!important}sidebar-preview-menu>.vertical-menu sidebar-menu-items-collection sidebar-menu-item>li{margin-left:4px;transition:transform .2s!important}sidebar-preview-menu>.vertical-menu sidebar-menu-items-collection sidebar-menu-item>li.slide-left{transform:translateX(-60px)}sidebar-preview-menu>.vertical-menu sidebar-menu-items-collection sidebar-menu-item>li:active,sidebar-preview-menu>.vertical-menu sidebar-menu-items-collection sidebar-menu-item>li:hover{background-color:transparent}sidebar-preview-menu>.vertical-menu sidebar-menu-items-collection sidebar-menu-item>li:active icon>i,sidebar-preview-menu>.vertical-menu sidebar-menu-items-collection sidebar-menu-item>li:hover icon>i{color:#e6e6e6}sidebar-preview-menu>.vertical-menu sidebar-menu-items-collection sidebar-menu-item>li icon>i{padding-top:14px;padding-bottom:14px;color:#fff;text-shadow:0 1px 5px rgba(0,0,0,.8)}sidebar-preview-menu>.vertical-menu sidebar-menu-items-collection sidebar-menu-item>li icon>i.material-icons{font-size:22px}",""]),t.exports=e},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(1299),n(1301),n(38),n(1303);var a=function(t){function e(e,n){var i=t.call(this,e)||this;return i.SidebarMenuService=n,i.currentYear=(new Date).getFullYear(),i.items=i.SidebarMenuService.items,i}return r(e,t),e.$inject=["$element","SidebarMenuService"],e}(n(584).VerticalMenuController);e.SidebarMenuController=a;var s=function(){function t(){this.restrict="E",this.templateUrl="MenuUI/SidebarMenuUI/SidebarMenu.html",this.controller=a,this.controllerAs="vm",this.scope={}}return t.factory=function(){return function(){return new t}},t}();e.SidebarMenuDirective=s,o.module("IVWebApp").directive("sidebarMenu",s.factory())},function(t,e,n){var i="MenuUI/SidebarMenuUI/SidebarMenu.html",r='<div class="vertical-menu z-index-4"\n ng-class="{\'hide\': vm.SidebarMenuService.isMenuHidden,\n \'fullscreen\': vm.SidebarMenuService.getActiveItem().isFullscreen,\n \'transitioning\': vm.SidebarMenuService.transitionInProgress,\n \'transitioning-switching-items\': vm.SidebarMenuService.switchingItemsInProgress,\n \'sticky-headers-enabled\': vm.displayStickyHeaders}">\n\n\t<div class="vertical-menu-heading">\n\t\t\x3c!--Root level heading--\x3e\n\t\t<div class="root-heading" ng-if="!vm.SidebarMenuService.getActiveItem()">\n\t\t\t<img ng-src="'+n(1300)+'" alt="4DKanKan Logo">\n\t\t\t<span>4DKanKan</span>\n\t\t</div>\n\n\t\t\x3c!--Nested menu heading--\x3e\n\t\t<h3 ng-if="vm.SidebarMenuService.getActiveItem()">\n\t\t\t{{vm.SidebarMenuService.getActiveItem().title | translate:"title"}}\n\t\t</h3>\n\n\t\t\x3c!--Close button--\x3e\n\t\t<img class="menu-close-button ic_svg"\n\t\t ng-if="vm.SidebarMenuService.navigationStack.length === 0"\n\t\t ng-click="vm.SidebarMenuService.closeMenu()"\n\t\t ng-src="'+n(583)+'" alt="{{\'Close\'|translate}}">\n\n\t\t<img class="menu-close-button ic_svg"\n\t\t ng-if="vm.SidebarMenuService.navigationStack.length > 0"\n\t\t ng-click="vm.SidebarMenuService.closeMenu()"\n\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}">\n\n\t\t\x3c!--Back button--\x3e\n\t\t<i ng-if="vm.SidebarMenuService.navigationStack.length > 0"\n\t\t ng-click="vm.SidebarMenuService.navigationStack[vm.SidebarMenuService.navigationStack.length-1].onBack();\n\t\t vm.SidebarMenuService.goBack()"\n\t\t class="fa fa-chevron-left back-button clickable">\n\t\t</i>\n\t</div>\n\n\t<div class="vertical-menu-content">\n\t\t\x3c!--Items--\x3e\n\t\t<sidebar-menu-items-collection items="vm.items"\n\t\t ng-class="{\'parent\': vm.SidebarMenuService.getActiveItem() !== undefined,\n\t\t \'transitioning\': vm.SidebarMenuService.internalTransitionInProgress}">\n\t\t</sidebar-menu-items-collection>\n\n\t\t\x3c!--Info panel--\x3e\n\t\t<div class="copyright-area"\n\t\t ng-class="{\'squeeze\': vm.SidebarMenuService.navigationStack.length > 0}">\n\t\t\t\x3c!--Logo--\x3e\n\t\t\t<a class="logo" href="http://www.4DKanKan.com" target="_blank">\n\t\t\t\t<img ng-src="'+n(588)+'" alt="4DKanKan Logo">\n\t\t\t</a>\n\t\t\t\x3c!--Info--\x3e\n\t\t\t<div class="info">\n\t\t\t\t<span class="copyright-text" translate translate-params-year="vm.currentYear">\n\t\t\t\t\tCopyright © {{year}}\n\t\t\t\t</span>\n\t\t\t\t\t<span class="about-link link clickable" data-toggle="modal"\n\t\t\t\t\t data-target="#about-modal" translate\n\t\t\t\t\t translate-context="Link that opens a popup with 4DKanKan information">\n\t\t\t\t\tAbout\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){t.exports=n.p+"11f6573cb3a58fc7ac95f100f16abdff.navvis_logo_noPadding.svg"},function(t,e,n){var i=n(11),r=n(1302);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,'.z-index-1{box-shadow:none;position:relative;z-index:1}.z-index-2{box-shadow:0 1.5px 4px rgba(0,0,0,.24),0 1.5px 6px rgba(0,0,0,.12);position:relative;z-index:5}.z-index-3{box-shadow:0 3px 12px rgba(0,0,0,.23),0 3px 12px rgba(0,0,0,.16);position:relative;z-index:10}.z-index-4{box-shadow:0 6px 12px rgba(0,0,0,.23),0 10px 40px rgba(0,0,0,.19);position:relative;z-index:15}.z-index-5{box-shadow:0 10px 20px rgba(0,0,0,.22),0 14px 56px rgba(0,0,0,.25);position:relative;z-index:20}.front-element{z-index:1031}.full-window{position:fixed;margin:0;padding:0;left:0;right:0;top:0;bottom:0;z-index:1029;border-radius:0}.full-window-scroll{max-height:100vh}.full-window-scroll,.panel-autoscroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.panel-autoscroll{max-height:80vh}.autoscroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.fixed-top-right{position:fixed;top:10px;right:0}.center-vertical,sidebar-menu>.vertical-menu>.vertical-menu-heading>.root-heading{position:absolute;top:50%;transform:translateY(-50%)}.float-left{float:left}.float-right{float:right}.margin-top-small{margin-top:5px!important}.margin-left-small{margin-left:5px!important}.margin-right-small{margin-right:5px!important}.margin-bottom-small{margin-bottom:5px!important}.margin-top{margin-top:15px!important}.margin-left{margin-left:15px!important}.margin-right{margin-right:15px!important}.margin-bottom{margin-bottom:15px!important}.margin-top-big{margin-top:25px!important}.margin-bottom-big{margin-bottom:25px!important}.no-margin{margin:0!important}.no-margin-bottom{margin-bottom:0!important}.padding-horizontal{padding-left:15px!important;padding-right:15px!important}.padding-top,.padding-vertical{padding-top:15px!important}#login-panel login-form,.padding-bottom,.padding-vertical{padding-bottom:15px!important}.no-padding-top{padding-top:0!important}.no-padding-bottom{padding-bottom:0!important}.no-padding-horizontal,.no-padding-left{padding-left:0!important}.no-padding-horizontal,.no-padding-right{padding-right:0!important}.no-padding{padding:0!important}.border{border:1px solid #e6e6e6}.border-top{border-top:1px solid #e6e6e6}.border-bottom{border-bottom:1px solid #e6e6e6}.border-left{border-left:1px solid #e6e6e6}.border-right{border-right:1px solid #e6e6e6}.no-border{border:none;border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.no-border-width{border:none}.border-radius{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.border-radius,.border-radius-top{border-top-left-radius:4px!important;border-top-right-radius:4px!important}.border-radius-bottom{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.no-border-radius{border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.indoorViewer.ios .no-hover-ios:hover{background-color:inherit!important}.no-shadow{box-shadow:none!important}.clear-background{border:0}.clear-background,.no-background{background:none!important}.no-overflow{overflow:hidden}.clickable,.clickable:hover{cursor:pointer}.navbar-menu-item-user.user-logged-in .material-icons,.sidebar-menu-item-user.user-logged-in .material-icons{position:relative}.navbar-menu-item-user.user-logged-in .material-icons:after,.sidebar-menu-item-user.user-logged-in .material-icons:after{content:"";right:8px;bottom:11px;width:7px;height:7px;position:absolute;background-color:#5cb85c;border-radius:50%;box-shadow:0 0 3px #000}#login-panel{text-align:left;cursor:default}#login-panel login-form{display:block}#login-panel #collapse-user-settings{background-color:#f0f0f0}#login-panel button:focus{outline:none}#login-panel button{width:calc(100% - 30px);margin:0 15px}#login-panel button span{margin:0}#login-panel language-switcher>.panel-body{padding:15px!important}#login-panel ul{margin:0}#login-panel unit-switcher>.panel-body{padding:0 15px 15px!important}#login-panel .form-group{padding:0;margin:5px 15px 10px}#login-panel .list-group{margin-bottom:0;border-top:none}#login-panel .list-group .list-group-item{margin:0;border:none;background-color:#f0f0f0}#login-panel .login-button{width:90%;background-color:#fafafa}#login-panel .login-group{padding:15px 0 10px}#login-panel .panel{border:none;box-shadow:none;margin:0}#login-panel .panel>.panel-heading{text-align:left;padding:15px 0 15px 15px;border-radius:unset}#login-panel .panel .clickable:hover{background-color:#d4d4d4}#login-panel .panel-body{padding:0}#login-panel .panel-group{margin:0}#login-panel .panel-heading{background-color:#fff;user-select:none;-ms-user-select:none;-moz-user-select:none;-webkit-user-select:none}#login-panel .panel-heading .material-icons:after{display:none}#login-panel .panel-heading span{display:flex;align-items:center}#login-panel .spinner{display:inline-block;text-align:center;width:100%}#login-panel .spinner>img{margin:10px auto}#login-panel .text-danger{margin-left:0}#login-panel .user-group-header{background-color:#f5f5f5}#login-panel .user-group-item{border-bottom:none}#about-modal .logo-area{float:right}#about-modal .logo-area img{height:75px!important;margin-left:10px;margin-right:-10px}.vertical-menu{position:relative;width:440px;max-width:100%;height:100%;border-radius:0;visibility:visible!important;transition:width .2s,left .2s;background-color:#fff}.vertical-menu.resizing{transition:none}.vertical-menu.fullscreen{width:100%}.vertical-menu>div{height:100%}.vertical-menu .panel-sticky-header>.panel-heading{position:absolute;top:0;left:0;right:0;padding-left:20px;padding-right:20px;height:53px;z-index:1;background-color:hsla(0,0%,100%,.95);min-width:375px}.indoorViewer.vertical-menu-min-width .vertical-menu .panel-sticky-header>.panel-heading{min-width:300px}.vertical-menu .panel-sticky-header>.panel-body{padding-top:53px}.vertical-menu:not(.sticky-headers-enabled) .panel-sticky-header>.panel-heading{position:relative}.vertical-menu:not(.sticky-headers-enabled) .panel-sticky-header>.panel-body{padding-top:0}.vertical-menu .vertical-menu-heading{position:relative;height:62px;background-color:#fff;border-bottom:1px solid #e6e6e6}.vertical-menu .vertical-menu-heading>h3{font-size:20px;color:#4a4a4a;margin:0 60px 0 0;padding:20px 0 20px 60px;overflow-x:hidden;white-space:nowrap;text-overflow:ellipsis}.vertical-menu .vertical-menu-heading .menu-close-button{top:9px;right:9px;z-index:1}.vertical-menu .vertical-menu-content{position:relative;height:calc(100% - 62px)}.vertical-menu .vertical-menu-content>.panel{border-radius:0}.vertical-menu .vertical-menu-content ul{padding-left:0;list-style:none}.vertical-menu .vertical-menu-content,.vertical-menu .vertical-menu-heading{min-width:375px}.indoorViewer.vertical-menu-min-width .vertical-menu .vertical-menu-heading,.vertical-menu .vertical-menu-content{min-width:300px}.vertical-menu .resize-handler{position:absolute;top:0;left:0;width:12px;height:100%;z-index:15;cursor:ew-resize;transition:width .2s,left .2s}.vertical-menu .resize-handler.resizing{left:auto;right:0;width:100vw}.indoorViewer.mobile-small .vertical-menu:not(.hide):not(.collapsed) .resize-handler,.indoorViewer.mobile .vertical-menu:not(.hide):not(.collapsed) .resize-handler{left:-50px;width:50px;background:rgba(0,0,0,.6)}.vertical-menu .expand-wrapper{display:none;background:#fff;position:absolute;bottom:0;height:62px;width:100%;z-index:2;border-top:1px solid #eee}.vertical-menu .expand-handler{position:absolute;padding:12px;bottom:6px;left:6px;font-size:2em;cursor:pointer}.vertical-menu.collapsed .vertical-menu-heading h3{display:none}.vertical-menu.collapsed .vertical-menu-heading .menu-close-button{left:9px}.vertical-menu.collapsed .expand-wrapper{display:block}sidebar-menu>.vertical-menu{overflow:hidden;position:absolute;left:0}sidebar-menu>.vertical-menu.hide{left:-461px}sidebar-menu>.vertical-menu:not(.hide).transitioning sidebar-menu-items-collection{transition:background-color .2s}sidebar-menu>.vertical-menu:not(.sticky-headers-enabled) sidebar-menu-items-collection>.panel-autoscroll>.sidebar-menu-template,sidebar-menu>.vertical-menu:not(.sticky-headers-enabled) sidebar-menu-items-collection>.panel-autoscroll>ul>*{transform:translateZ(0)}sidebar-menu>.vertical-menu .panel-sticky-header>.panel-heading{min-width:0!important}sidebar-menu>.vertical-menu.transitioning-switching-items sidebar-menu-items-collection,sidebar-menu>.vertical-menu.transitioning-switching-items sidebar-menu-items-collection sidebar-menu-item>li,sidebar-menu>.vertical-menu.transitioning-switching-items sidebar-menu-items-collection sidebar-menu-item>li>h4,sidebar-menu>.vertical-menu.transitioning-switching-items sidebar-menu-items-collection sidebar-menu-item>li icon>i{transition-duration:0s}sidebar-menu>.vertical-menu>.vertical-menu-heading>.root-heading{display:flex;align-items:center;color:#333332;height:24px}sidebar-menu>.vertical-menu>.vertical-menu-heading>.root-heading>img{width:101.2px;margin-left:25px;margin-right:15px}sidebar-menu>.vertical-menu>.vertical-menu-heading>.root-heading>span{font-size:24px}.indoorViewer.mobile-small sidebar-menu>.vertical-menu>.vertical-menu-heading>.root-heading{height:20px}.indoorViewer.mobile-small sidebar-menu>.vertical-menu>.vertical-menu-heading>.root-heading>span{font-size:20px}sidebar-menu>.vertical-menu>.vertical-menu-heading .back-button{position:absolute;top:9px;left:8px;width:44px;height:44px;padding:13px 15px;font-size:17px;color:#4a4a4a}sidebar-menu>.vertical-menu>.vertical-menu-content>sidebar-menu-items-collection>.panel-autoscroll,sidebar-menu>.vertical-menu>.vertical-menu-content sidebar-menu-items-collection.parent>.panel-autoscroll{padding-bottom:50px}sidebar-menu .copyright-area{position:absolute;bottom:0;left:0;right:0;height:50px;overflow:hidden;background-color:hsla(0,0%,100%,.95);transition:right .2s,background-color .2s}sidebar-menu .copyright-area.squeeze{right:calc(100% - 60px);background-color:hsla(0,0%,90.2%,.95)}sidebar-menu .copyright-area.squeeze>.logo img{width:60px}sidebar-menu .copyright-area.squeeze>.info{left:60px}sidebar-menu .copyright-area.squeeze>.info .about-link{transform:translateX(calc(100% + 30px))}sidebar-menu .copyright-area>.logo:active,sidebar-menu .copyright-area>.logo:focus,sidebar-menu .copyright-area>.logo:hover{text-decoration:none}sidebar-menu .copyright-area>.logo img{width:104px;height:100%;transition:width .2s}sidebar-menu .copyright-area>.info{position:absolute;top:0;left:104px;right:0;bottom:0;transition:left .2s}sidebar-menu .copyright-area>.info .copyright-text{position:relative;top:16px;white-space:nowrap}sidebar-menu .copyright-area>.info .about-link{position:absolute;top:16px;right:20px;transition:transform .1s}sidebar-menu #view-menu>.panel-body{padding-left:0;padding-right:0}sidebar-menu #view-menu>.panel-body>.row{padding-left:30px;padding-right:30px}sidebar-menu #view-menu>.panel-body>.checkbox{padding-left:20px;padding-right:20px}sidebar-menu #view-menu>.panel-body .checkbox{height:40px;margin:0}sidebar-menu #view-menu>.panel-body .checkbox.form-group{margin-bottom:15px}sidebar-menu #view-menu>.panel-body .checkbox:active,sidebar-menu #view-menu>.panel-body .checkbox:focus,sidebar-menu #view-menu>.panel-body .checkbox:hover{background-color:#e6e6e6}sidebar-menu #view-menu>.panel-body .checkbox>label{width:100%;height:100%;padding-top:10px}sidebar-menu #view-menu #pointcloud-menu>.checkbox,sidebar-menu #view-menu #pointcloud-menu>div{padding-left:20px;padding-right:20px}sidebar-menu #view-menu #pointcloud-menu #pointcloud-options{padding-left:30px;padding-right:30px}sidebar-menu #view-menu #pointcloud-menu #pointcloud-options>.checkbox{margin-left:-10px;margin-right:-10px;padding-left:10px;padding-right:10px}sidebar-menu #view-menu #pointcloud-menu #pointcloud-options .checkbox{border-top-left-radius:4px!important;border-top-right-radius:4px!important;border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}sidebar-menu #view-menu #pointcloud-menu #pointcloud-options #pointcloud-pane>div>select{width:calc(100% - 44px)}sidebar-menu #view-menu #pointcloud-menu #pointcloud-options #pointcloud-pane>div>button{position:relative;top:-1px;height:34px;max-height:none}sidebar-menu #view-menu #pointcloud-menu #pointcloud-options #pointcloud-pane>div>button>span{top:3px;left:1px}sidebar-menu #view-menu #pointcloud-menu #pointcloud-options #pointcloud-pane>div>.panel-body{padding:10px}sidebar-menu #view-menu #pointcloud-menu #pointcloud-options #pointcloud-pane>.btn-group{white-space:nowrap}sidebar-menu #view-menu #pointcloud-menu #pointcloud-options #pointcloud-pane>.btn-group>.btn{float:none}sidebar-menu #view-menu #pointcloud-menu #pointcloud-options #legacy-pointcloud-pane .checkbox,sidebar-menu #view-menu #pointcloud-menu #pointcloud-options #pointcloud-pane .checkbox{margin:2px -10px;padding:2px 10px}sidebar-menu #view-menu #pointcloud-menu #pointcloud-options #legacy-pointcloud-pane .checkbox>label,sidebar-menu #view-menu #pointcloud-menu #pointcloud-options #pointcloud-pane .checkbox>label{padding-top:8px}.indoorViewer.desktop sidebar-menu #view-menu #pointcloud-menu{min-width:310px}',""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1304),n(1305),n(1307),n(1311);var r=function(){function t(){this.restrict="E",this.templateUrl="MenuUI/SidebarMenuUI/SidebarMenuItemsCollection.html",this.scope={active:"=",items:"=",previewMode:"="}}return t.factory=function(){return function(){return new t}},t}();e.SidebarMenuItemsCollectionDirective=r,i.module("IVWebApp").directive("sidebarMenuItemsCollection",r.factory())},function(t,e){var n="MenuUI/SidebarMenuUI/SidebarMenuItemsCollection.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="panel-autoscroll">\n\n\t\x3c!--Item\'s template--\x3e\n\t<ng-include class="sidebar-menu-template"\n\t ng-if="active.active && active.compileTemplate"\n\t src="active.template">\n\t</ng-include>\n\n\t<static-include class="sidebar-menu-template"\n\t ng-if="active.active && !active.compileTemplate"\n\t src="{{active.template}}"\n\t disable-base-url-prefixing>\n\t</static-include>\n\n\t\x3c!--Child items--\x3e\n\t<ul class="margin-top margin-bottom">\n\t\t<sidebar-menu-item ng-repeat="item in items | orderBy: \'order\'"\n\t\t item="item"\n\t\t preview-mode="previewMode"\n\t\t ng-class="{\'active\': item.active}">\n\t\t</sidebar-menu-item>\n\t</ul>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1306);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"sidebar-menu-items-collection{position:absolute;top:0;right:0;bottom:0;left:0;cursor:default;transition:left .2s,right .2s,background-color .2s;background-color:#fff}sidebar-menu-items-collection>.panel-autoscroll,sidebar-menu-items-collection>.panel-autoscroll>.sidebar-menu-template,sidebar-menu-items-collection>.panel-autoscroll>ul{background-color:#fff;transition:background-color .2s}sidebar-menu-items-collection.parent,sidebar-menu-items-collection.parent>.panel-autoscroll,sidebar-menu-items-collection.parent>.panel-autoscroll>.sidebar-menu-template,sidebar-menu-items-collection.parent>.panel-autoscroll>ul{background-color:#e6e6e6}sidebar-menu-items-collection.child{z-index:2;left:100%;right:-100%}sidebar-menu-items-collection.child:not(.transitioning)>.panel-autoscroll>.sidebar-menu-template,sidebar-menu-items-collection.parent>.panel-autoscroll>.sidebar-menu-template{display:none}sidebar-menu-items-collection.active{left:60px;right:0;z-index:3}sidebar-menu-items-collection>.panel-autoscroll{height:100%;max-height:none;overflow-x:hidden}sidebar-menu-items-collection>.panel-autoscroll>.sidebar-menu-template{color:#000}sidebar-menu-items-collection>.panel-autoscroll>.sidebar-menu-template>.ng-scope>.panel,sidebar-menu-items-collection>.panel-autoscroll>.sidebar-menu-template>.panel{border:none;box-shadow:none}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1308),n(1309);var r=n(38);n(590);var o=n(8),a=n(81),s=n(218),c=function(){function t(t,e,n){this.SidebarMenuService=t,this.gettextCatalog=e,this.TrackingService=n,this.previewMode=!1}return t.$inject=["SidebarMenuService","gettextCatalog","TrackingService"],t.prototype.goToItem=function(t){t.key===a.SidebarMenuItemsKey.EDITOR_MODES_DOWNLOAD_POINT_CLOUD&&this.TrackingService.trackPointCloudDownloadEntered(s.MenuType.SidebarEditor),this.previewMode&&r.SidebarMenuService.isItemWithContent(t)&&this.SidebarMenuService.openMenu(),this.SidebarMenuService.goToItem(t).catch(o.handleWarning)},t.prototype.isTooltipEnabled=function(){return!!this.previewMode||!this.item.active&&this.SidebarMenuService.isTabSwitchItem(this.item)},t.prototype.getItemTitle=function(){return this.gettextCatalog.getString(this.item.title,void 0,"title")},t}();e.SidebarMenuItemController=c;var l=function(){function t(){this.restrict="E",this.templateUrl="MenuUI/SidebarMenuUI/SidebarMenuItem.html",this.controller=c,this.controllerAs="vm",this.scope=!0,this.bindToController={item:"=",previewMode:"="}}return t.factory=function(){return function(){return new t}},t}();e.SidebarMenuItemDirective=l,i.module("IVWebApp").directive("sidebarMenuItem",l.factory())},function(t,e){var n="MenuUI/SidebarMenuUI/SidebarMenuItem.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<li ng-show="item.isVisible()"\n ng-click="vm.goToItem(item)"\n ng-class="{\'slide-left\': previewMode && !item.isPreviewIconVisible()}"\n class="{{item.getClass()}} sidebar-menu-item clickable">\n\n\t<icon icon-class="{{item.icon.className}}"\n\t icon-ligature="{{item.icon.ligature}}"\n\t icon-path="{{item.icon.path}}"\n\t iv-tooltip="{{vm.getItemTitle()}}"\n\t show-tooltip="vm.isTooltipEnabled()"\n\t data-container="false"\n\t data-placement="right">\n\t</icon>\n\n\t<h4 ng-if="!previewMode" title="{{item.title | translate:\'title\'}}">\n\t\t{{item.title | translate:"title"}}\n\t</h4>\n\n\t<sidebar-menu-items-collection ng-if="!previewMode"\n\t active="item"\n\t items="item.items"\n\t ng-class="{\'parent\': vm.SidebarMenuService.isParentItemsCollection(item),\n\t \'active\': vm.SidebarMenuService.isActiveItemsCollection(item),\n\t \'child\': vm.SidebarMenuService.isChildItemsCollection(item),\n\t \'transitioning\': vm.SidebarMenuService.internalTransitionInProgress}">\n\t</sidebar-menu-items-collection>\n</li>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1310);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,".z-index-1{box-shadow:none;position:relative;z-index:1}.z-index-2{box-shadow:0 1.5px 4px rgba(0,0,0,.24),0 1.5px 6px rgba(0,0,0,.12);position:relative;z-index:5}.z-index-3{box-shadow:0 3px 12px rgba(0,0,0,.23),0 3px 12px rgba(0,0,0,.16);position:relative;z-index:10}.z-index-4{box-shadow:0 6px 12px rgba(0,0,0,.23),0 10px 40px rgba(0,0,0,.19);position:relative;z-index:15}.z-index-5{box-shadow:0 10px 20px rgba(0,0,0,.22),0 14px 56px rgba(0,0,0,.25);position:relative;z-index:20}.front-element{z-index:1031}.full-window{position:fixed;margin:0;padding:0;left:0;right:0;top:0;bottom:0;z-index:1029;border-radius:0}.full-window-scroll{max-height:100vh}.full-window-scroll,.panel-autoscroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.panel-autoscroll{max-height:80vh}.autoscroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.fixed-top-right{position:fixed;top:10px;right:0}.center-vertical{position:absolute;top:50%;transform:translateY(-50%)}.float-left{float:left}.float-right{float:right}.margin-top-small{margin-top:5px!important}.margin-left-small{margin-left:5px!important}.margin-right-small{margin-right:5px!important}.margin-bottom-small{margin-bottom:5px!important}.margin-top{margin-top:15px!important}.margin-left{margin-left:15px!important}.margin-right{margin-right:15px!important}.margin-bottom{margin-bottom:15px!important}.margin-top-big{margin-top:25px!important}.margin-bottom-big{margin-bottom:25px!important}.no-margin{margin:0!important}.no-margin-bottom{margin-bottom:0!important}.padding-horizontal{padding-left:15px!important;padding-right:15px!important}.padding-top,.padding-vertical{padding-top:15px!important}.padding-bottom,.padding-vertical{padding-bottom:15px!important}.no-padding-top{padding-top:0!important}.no-padding-bottom{padding-bottom:0!important}.no-padding-horizontal,.no-padding-left{padding-left:0!important}.no-padding-horizontal,.no-padding-right{padding-right:0!important}.no-padding{padding:0!important}.border{border:1px solid #e6e6e6}.border-top{border-top:1px solid #e6e6e6}.border-bottom{border-bottom:1px solid #e6e6e6}.border-left{border-left:1px solid #e6e6e6}.border-right{border-right:1px solid #e6e6e6}.no-border{border:none;border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.no-border-width{border:none}.border-radius{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.border-radius,.border-radius-top{border-top-left-radius:4px!important;border-top-right-radius:4px!important}.border-radius-bottom{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.no-border-radius{border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.indoorViewer.ios .no-hover-ios:hover{background-color:inherit!important}.no-shadow{box-shadow:none!important}.clear-background{border:0}.clear-background,.no-background{background:none!important}.no-overflow{overflow:hidden}.clickable,.clickable:hover{cursor:pointer}sidebar-menu-item>li{display:flex;align-items:center;height:50px;padding-left:10px;color:#000;transition:background-color .1s}sidebar-menu-item>li:active,sidebar-menu-item>li:hover{background-color:#e6e6e6!important}sidebar-menu-item>li icon{display:flex}sidebar-menu-item>li icon>i{display:inline-block;width:40px;padding:10px;text-align:center}sidebar-menu-item>li icon>i.material-icons{font-size:20px}sidebar-menu-item>li>h4{display:inline-block;max-width:calc(100% - 60px);margin:1px 10px 0;padding:10px 0;font-size:1.1em;overflow-x:hidden;white-space:nowrap;text-overflow:ellipsis}sidebar-menu-item>li>h4,sidebar-menu-item>li icon>i{transition:all .1s}sidebar-menu-item.active:active>li,sidebar-menu-item.active:hover>li,sidebar-menu-item.active>li,sidebar-menu-item>li.active,sidebar-menu-item>li.active:active,sidebar-menu-item>li.active:hover{color:#3398c7;background-color:#fff!important;cursor:default}sidebar-menu-items-collection:not(.parent):not(.child)>.panel-autoscroll>ul>sidebar-menu-item>li{transition-duration:0s}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(8),o=function(){function t(t,e){this.$http=t,this.$templateCache=e,this.restrict="E"}return t.factory=function(){return["$http","$templateCache",function(e,n){return new t(e,n)}]},t.prototype.link=function(t,e,n){if(n.src){var i={cache:this.$templateCache,disableBaseUrlPrefixing:void 0!==n.disableBaseUrlPrefixing};this.$http.get(n.src,i).then(function(t){e.html(t.data)}).catch(r.handleWarning)}},t}();e.StaticIncludeDirective=o,i.module("IVWebApp").directive("staticInclude",o.factory())},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(1313),n(61);var a=function(t){function e(e,n){var i=t.call(this,n.find(".modal"))||this;return i.MessageReportingService=e,e.messageReceived.connect(function(){return i.showModal()}),i}return r(e,t),e.$inject=["MessageReportingService","$element"],e.prototype.getTitle=function(){return this.MessageReportingService.message.title},e.prototype.getBody=function(){return this.MessageReportingService.message.body},e.prototype.renderAsPlainText=function(){return this.MessageReportingService.renderAsPlainText},e}(n(326).AbstractModalController);e.MessageReportingController=a;var s=function(){function t(){this.restrict="E",this.templateUrl="MessageReporting/MessageReporting.html",this.controller=a,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.MessageReportingDirective=s,o.module("IVWebApp").directive("messageReporting",s.factory())},function(t,e){var n="MessageReporting/MessageReporting.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="modal fade" tabindex="-1" role="dialog" aria-hidden="true" data-backdrop="static">\n\t<div class="modal-dialog">\n\t\t<div class="modal-content">\n\t\t\t<div class="modal-header"><h4>{{vm.getTitle()}}</h4></div>\n\t\t\t<div class="modal-body" ng-if="!vm.renderAsPlainText()" ng-bind-html="vm.getBody()">\n\t\t\t</div>\n\t\t\t<div class="modal-body" ng-if="vm.renderAsPlainText()">\n\t\t\t\t{{vm.getBody()}}\n\t\t\t</div>\n\t\t\t<div class="modal-footer">\n\t\t\t\t<ok-button data-dismiss="modal"></ok-button>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1315),n(1316),n(106);var r=function(){function t(t){this.ProgressReportService=t}return t.$inject=["ProgressReportService"],t.prototype.getTasks=function(){return this.ProgressReportService.getTasks()},t.prototype.isVisible=function(){return this.ProgressReportService.isVisible()},t.prototype.isModal=function(){return this.ProgressReportService.isModal()},t.prototype.isTransparent=function(){return this.ProgressReportService.isTransparent()},t.prototype.isCompactOnly=function(){return this.ProgressReportService.isCompactOnly()},t}();e.ProgressReportController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="ProgressReport/ProgressReport.html",this.controller=r,this.controllerAs="vm",this.scope={}}return t.factory=function(){return function(){return new t}},t}();e.ProgressReportDirective=o,i.module("IVWebApp").directive("progressReport",o.factory())},function(t,e,n){var i="ProgressReport/ProgressReport.html",r='<div id="progress-wrapper">\n\t<div class="progress-report"\n\t ng-class="{ \'modal-progress\': vm.isModal(),\n\t \'fade-out\': !vm.isVisible(),\n\t \'compact-progress\': vm.isCompactOnly() }">\n\n\t\t<div class="progress-report-container"\n\t\t ng-if="!vm.isCompactOnly()">\n\t\t\t<div class="task"\n\t\t\t ng-repeat="task in vm.getTasks()"\n\t\t\t ng-class="task.hideProgress ? \'no-progress\' : null"\n\t\t\t ng-if="!task.compact">\n\t\t\t\t<span class="spinner">\n\t\t\t\t\t<img ng-src="'+n(94)+'">\n\t\t\t\t</span>\n\n\t\t\t\t\x3c!-- task.name is translated in service before creation of task --\x3e\n\t\t\t\t{{task.name}}\n\t\t\t\t<div class="progress">\n\t\t\t\t\t<div class="progress-bar progress-bar-striped active" role="progressbar"\n\t\t\t\t\t ng-attr-aria-valuenow="{{task.percentage > 1 ? task.percentage : 1}}"\n\t\t\t\t\t aria-valuemin="0" aria-valuemax="100"\n\t\t\t\t\t ng-style="{width: (task.percentage > 1 ? task.percentage : 1) + \'%\'}">\n\t\t\t\t\t\t<span class="sr-only" translate\n\t\t\t\t\t\t translate-params-percent="task.percentage">\n\t\t\t\t\t\t\t{{percent}}% complete\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\n\t\t<div class="compact-progress-container"\n\t\t ng-if="vm.isCompactOnly()"\n\t\t ng-repeat="task in vm.getTasks()">\n\t\t\t<progress-arc ng-if="task.percentage > 0 && task.percentage < 100"\n\t\t\t title="{{task.name}}"\n\t\t\t size="32"\n\t\t\t stroke-width="7"\n\t\t\t complete="task.percentage / 100"></progress-arc>\n\t\t</div>\n\t</div>\n\n\t<div\n\t\t\tclass="modal-progress-bg"\n\t\t\tng-class="{\n\t\t\t\t\'fade-out\': !vm.isVisible() || !vm.isModal(),\n\t\t\t\t\'translucent\': vm.isModal() && vm.isTransparent()\n\t\t\t}">\n\t</div>\n</div>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){var i=n(11),r=n(1317);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,'progress-report .progress-report{max-width:100%;padding:10px 20px;transition-property:all;transition:.2s linear;background-color:#fff}progress-report .progress-report.modal-progress{position:absolute;z-index:2000;top:0;bottom:0;left:0;right:0;height:100%!important;width:auto!important;text-align:center;background:none;color:#fff}progress-report .progress-report.modal-progress:before{content:"";display:inline-block;height:100%;vertical-align:middle}progress-report .progress-report-container{display:inline-block;vertical-align:middle;width:600px;max-width:100%}progress-report .task.no-progress{box-sizing:border-box}progress-report .task:not(.no-progress){padding:5px 0}progress-report .task.no-progress .progress{display:none}progress-report .task:not(.no-progress) .progress{margin-top:.2em;margin-bottom:0}progress-report .task:not(.no-progress) span.spinner{display:none}progress-report .progress-report.modal-progress img{width:4em;margin:1.5em}progress-report .progress-report:not(.modal-progress) img{width:2em;margin:.5em}progress-report .progress-report:not(.modal-progress){position:absolute;bottom:0;margin-left:auto;margin-right:auto}progress-report .progress-report:not(.modal-progress):not(.compact-progress){opacity:.8;border-radius:0 4px 0 0;-moz-border-radius:0 4px 0 0;-webkit-border-radius:0 4px 0 0;-webkit-box-shadow:2px 2px 2px 0 rgba(0,0,0,.5);-moz-box-shadow:2px 2px 2px 0 rgba(0,0,0,.5);box-shadow:2px 2px 2px 0 rgba(0,0,0,.5)}progress-report .compact-progress{background-color:transparent}progress-report .compact-progress-container{display:inline-block}progress-report .compact-progress-container svg circle{stroke:#3399c8;fill:#222;fill-opacity:.3}progress-report .translucent{opacity:.75}.modal-progress-bg{background-color:#111;position:absolute;top:0;left:0;height:100%;width:100%;z-index:1000}',""]),t.exports=e},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(1319),n(425);var a=n(25),s=n(8),c=n(326),l=n(81),u=function(t){function e(e,n,i,r,o,a,c){var l=t.call(this,c.find(".modal"))||this;return l.StatusCheckService=e,l.ConfigService=n,l.AuthenticationService=i,l.UrlService=r,l.InstanceInformationService=o,l.SidebarMenuService=a,l.serverStatus=l.StatusCheckService.serverStatus,l.editorLink='<a class="clickable" ng-click="vm.goToNavgraphEditor()" translate translate-context="editor name">navigation graph editor</a>',l.reported=!1,l.isUrlServiceInitialized=!1,l.AuthenticationService.onAuthenticationChanged.connect(function(t){return l.checkStatus(t)}),l.AuthenticationService.initialized.then(function(t){return l.checkStatus(t)}).catch(s.handleWarning),l.UrlService.initialized.then(function(){return l.isUrlServiceInitialized=!0}).catch(s.handleWarning),l.InstanceInformationService.getInformation().then(function(t){return l.isCloud=t.isCloudInstance}).catch(s.handleWarning),l}return r(e,t),e.$inject=["StatusCheckService","ConfigService","AuthenticationService","UrlService","InstanceInformationService","SidebarMenuService","$element"],e.prototype.getDocsLink=function(t){return this.isUrlServiceInitialized?this.UrlService.getDocumentationLink(t):""},e.prototype.goToNavgraphEditor=function(){this.hideModal(),this.SidebarMenuService.isMenuHidden=!1,this.SidebarMenuService.goToItem(this.SidebarMenuService.getItem(l.SidebarMenuItemsKey.EDITOR_MODES_NAV_GRAPH)).catch(s.handleWarning)},e.prototype.checkStatus=function(t){var e=this;t.isAdmin()&&!this.reported&&this.ConfigService.initialized.then(function(){e.ConfigService.getBoolean(a.Configs.UI_STATUSCHECK_VISIBLE,!0)&&e.StatusCheckService.check().then(function(){return e.reportStatus()}).catch(s.handleWarning)}).catch(function(){})},e.prototype.reportStatus=function(){"UP"!==this.StatusCheckService.getGlobalStatus()&&(this.reported=!0,this.showModal())},e}(c.AbstractModalController);e.StatusCheckController=u;var d=function(){function t(){this.restrict="E",this.templateUrl="StatusCheck/StatusCheck.html",this.controller=u,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.StatusCheckDirective=d,o.module("IVWebApp").directive("statusCheck",d.factory())},function(t,e){var n="StatusCheck/StatusCheck.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div id="status-check-modal" class="modal fade" role="dialog" data-backdrop="static" tabindex="-1">\n\t<div class="modal-dialog">\n\t\t<div class="modal-content">\n\t\t\t<div class="modal-header">\n\t\t\t\t<h4 translate translate-context="title">\n\t\t\t\t\tThe 4DKanKan Server Is Not Configured Correctly\n\t\t\t\t</h4>\n\t\t\t</div>\n\t\t\t<div ng-if="vm.modalContentShown" class="modal-body">\n\t\t\t\t<p translate>The following issues have been found:</p>\n\t\t\t\t<ul>\n\t\t\t\t\t\x3c!-- required --\x3e\n\t\t\t\t\t<li ng-if="vm.serverStatus.health.components.db.status === \'DOWN\'">\n\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\tThe server database is not available.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<a ng-if="!vm.isCloud"\n\t\t\t\t\t\t ng-href="{{vm.getDocsLink(\'troubleshooting.html#db-unavailable\')}}"\n\t\t\t\t\t\t target="_blank" translate>\n\t\t\t\t\t\t\tDocumentation\n\t\t\t\t\t\t</a>\n\t\t\t\t\t</li>\n\t\t\t\t\t<li ng-if="vm.serverStatus.health.components.dataDir.details.readable === false">\n\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\t4DKanKan cannot read the resources directory.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<a ng-if="!vm.isCloud"\n\t\t\t\t\t\t ng-href="{{vm.getDocsLink(\'troubleshooting.html#resources-dir-unreadable\')}}"\n\t\t\t\t\t\t target="_blank" translate>\n\t\t\t\t\t\t\tDocumentation\n\t\t\t\t\t\t</a>\n\t\t\t\t\t</li>\n\t\t\t\t\t<li ng-if="vm.serverStatus.health.components.dataDir.details.writable === false">\n\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\t4DKanKan cannot write to the resources directory.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<a ng-if="!vm.isCloud"\n\t\t\t\t\t\t ng-href="{{vm.getDocsLink(\'troubleshooting.html#resources-dir-unwritable\')}}"\n\t\t\t\t\t\t target="_blank" translate>\n\t\t\t\t\t\t\tDocumentation\n\t\t\t\t\t\t</a>\n\t\t\t\t\t</li>\n\t\t\t\t\t<li ng-if="vm.serverStatus.health.components.uploadDir.details.writable === false">\n\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\t4DKanKan cannot write into the upload directory.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<a ng-if="!vm.isCloud"\n\t\t\t\t\t\t ng-href="{{vm.getDocsLink(\'troubleshooting.html#no-datasets\')}}"\n\t\t\t\t\t\t target="_blank" translate>\n\t\t\t\t\t\t\tDocumentation\n\t\t\t\t\t\t</a>\n\t\t\t\t\t</li>\n\t\t\t\t\t<li ng-if="vm.serverStatus.health.components.tmpDir.details.writable === false">\n\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\tCannot write to the temporary directory.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</li>\n\t\t\t\t\t<li ng-if="vm.serverStatus.health.components.flyway.details.cause === \'pending\'">\n\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\tThe database version is outdated.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</li>\n\t\t\t\t\t<li ng-if="vm.serverStatus.health.components.flyway.details.cause === \'failed\'">\n\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\tDatabase migration has failed.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</li>\n\t\t\t\t\t<li ng-if="vm.serverStatus.health.components.indoorLocationServer.status === \'DOWN\'">\n\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\tIndoor Location Server is not available.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</li>\n\t\t\t\t\t\x3c!-- check if siteModel is not present--\x3e\n\t\t\t\t\t<li ng-if="vm.serverStatus.health.components.siteModel.status === \'DOWN\'">\n\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\tNo site model has been created.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<a ng-href="{{vm.getDocsLink(\'setup/site_model.html\')}}"\n\t\t\t\t\t\t\t target="_blank" translate>\n\t\t\t\t\t\t\t\tDocumentation\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\x3c!-- check if there is a free space navigation area --\x3e\n\t\t\t\t\t\t<li ng-if="vm.serverStatus.health.components.fsna.status === \'DOWN\'">\n\t\t\t\t\t\t\t<strong translate>Free space navigation areas are no longer supported.</strong>\n\t\t\t\t\t\t\t<span translate>A free space navigation area has been detected in the site model.</span>\n\t\t\t\t\t\t\t<span translate\n\t\t\t\t\t\t\ttranslate-html-params-editor-link="vm.editorLink">\n\t\t\t\t\t\t\t\tTo route through this area, use the new path tool in the {{editorLink}} to draw a navigation graph through the space, then remove the free space area from the site model.\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t<a ng-href="{{vm.getDocsLink(\'setup/navgraph_maps.html\')}}"\n\t\t\t\t\t\t target="_blank" translate>\n\t\t\t\t\t\t\tDocumentation\n\t\t\t\t\t\t</a>\n\t\t\t\t\t</li>\n\t\t\t\t</ul>\n\t\t\t\t<span ng-if="vm.isCloud" translate>\n\t\t\t\t\tPlease contact your service provider.\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t\t<div class="modal-footer" style="text-align:right">\n\t\t\t\t<ok-button data-dismiss="modal"></ok-button>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1321),n(1322);var r=function(){function t(t){this.UnitService=t,this.currentSystem=this.UnitService.currentSystem,this.unitSystems=this.UnitService.unitSystems}return t.$inject=["UnitService"],t.prototype.changeSystem=function(){this.UnitService.setUnit(this.currentSystem,!0)},t}();e.UnitSwitcherController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="UnitSwitcher/UnitSwitcher.html",this.controller=r,this.controllerAs="unitSwitcherController"}return t.factory=function(){return function(){return new t}},t}();e.UnitSwitcherDirective=o,i.module("IVWebApp").directive("unitSwitcher",o.factory())},function(t,e){var n="UnitSwitcher/UnitSwitcher.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="panel-body no-padding-top no-padding-bottom">\n\t<label translate>\n\t\tUnit system\n\t</label>\n\t<div class="row">\n\t\t<select class="form-control"\n\t\t title="{{\'Unit system\' | translate}}"\n\t\t ng-model="unitSwitcherController.currentSystem"\n\t\t ng-options="unit as unit | translate:\'measurement system\' for unit in unitSwitcherController.unitSystems"\n\t\t\t\tng-change="unitSwitcherController.changeSystem()">\n\t\t</select>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1323);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"unit-switcher .panel-heading{background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom:1px solid #ddd;border-radius:0}unit-switcher .form-control{margin-left:15px;float:left;width:calc(100% - 30px)}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1325),n(1326),n(597),n(1347),n(1356),n(1360),n(1365),n(1372),n(1374);var r=n(25),o=n(40),a=n(21),s=function(){function t(t,e,n,i,r,o,s){this.PoiService=t,this.ModeService=e,this.SearchService=n,this.ConfigService=i,this.LicenseService=r,this.SiteModelService=o,this.ViewService=s,this.TemplateName=a.TemplateName}return t.$inject=["PoiService","ModeService","SearchService","ConfigService","LicenseService","SiteModelService","ViewService"],Object.defineProperty(t.prototype,"resultsList",{get:function(){return this.SearchService.resultsList},enumerable:!0,configurable:!0}),t.prototype.isPoiExtensionsBoxVisible=function(){return this.ConfigService.getBoolean(r.Configs.UI_POI_PANEL_VISIBLE,!0)},t.prototype.isFullscreenEnabled=function(){return this.PoiService.enableFeatures.fullScreen&&!this.isMobilePanoramaView()},t.prototype.isMobilePanoramaView=function(){return o.isMobileLayout()&&this.ViewService.isPanoPrimaryView()},t}();e.LeftPanelController=s;var c=function(){function t(){this.restrict="E",this.templateUrl="LeftPanel/LeftPanel.html",this.controller=s,this.controllerAs="vm",this.scope={}}return t.factory=function(){return function(){return new t}},t}();e.LeftPanelDirective=c,i.module("IVWebApp").directive("leftPanel",c.factory())},function(t,e){var n="LeftPanel/LeftPanel.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div>\n\t<results-list></results-list>\n\n\t<div class="threeD-overlay" ng-show="vm.ModeService.isNormalMode()">\n\t\t<typeahead-templates></typeahead-templates>\n\n\t\t<div id="left-panel-pois" class="border-radius"\n\t\t ng-class="{\'z-index-2\': !vm.isFullscreenEnabled() || !vm.SearchService.isAnyResultSelected(),\n\t\t \'z-index-3\': vm.isFullscreenEnabled() && vm.SearchService.isAnyResultSelected()}">\n\n\t\t\t<search-input ng-if="vm.SearchService.isSearchBoxVisible()"\n\t\t\t ng-hide="vm.PoiService.isRouteMode">\n\t\t\t</search-input>\n\n\t\t\t<route-inputs ng-if="vm.PoiService.isRouteMode">\n\t\t\t</route-inputs>\n\n\t\t\t<div ng-show="vm.isPoiExtensionsBoxVisible()"\n\t\t\t class="poi-extensions-box border-radius-bottom element-on-screen-trigger-wrapper"\n\t\t\t ng-class="{\'autoscroll\': !vm.isFullscreenEnabled() || !vm.SearchService.isAnyResultSelected()}">\n\n\t\t\t\t<div class="route-instructions-box">\n\t\t\t\t\t<route-instructions></route-instructions>\n\t\t\t\t</div>\n\n\t\t\t\t<site-model-details model="vm.SiteModelService.selectedModel"></site-model-details>\n\n\t\t\t\t<poi-details class="poi-details-box" model="vm.PoiService.openedPoi">\n\t\t\t\t</poi-details>\n\t\t\t</div>\n\t\t</div>\n\n\t\t<invalid-license-warning></invalid-license-warning>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1327),n(1329),n(1331);var r=n(40),o=n(180),a=n(20),s=n(392),c=n(8),l=n(260),u=n(57),d=function(){function t(t,e,n,i,o,a,s,c,l,u,d,p){this.PoiService=t,this.ViewMenuService=e,this.SearchService=n,this.SiteModelService=i,this.LicenseService=o,this.TrackingService=a,this.SiteModelRepository=s,this.CursorService=c,this.PoiRepository=l,this.ViewService=u,this.UserService=d,this.PoiTypeService=p,this.poiDescriptionExpandedOnMobile=!1,this.isMobileLayout=r.isMobileLayout,this.initEventHandlers()}return t.$inject=["PoiService","ViewMenuService","SearchService","SiteModelService","LicenseService","TrackingService","SiteModelRepository","CursorService","PoiRepository","ViewService","UserService","PoiTypeService"],Object.defineProperty(t.prototype,"resultsList",{get:function(){return this.SearchService.resultsList},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"enableFeatures",{get:function(){return this.PoiService.enableFeatures},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"movingPoi",{get:function(){return this.PoiService.movingPoi},set:function(t){this.PoiService.movingPoi=t},enumerable:!0,configurable:!0}),t.prototype.initEventHandlers=function(){var t=this;this.PoiService.onPoiClick.connect(function(e){return t.PoiService.isRoutePickingPhase()?t.PoiService.openPoi(e):t.PoiService.openHighlightAndGoToPoi(e).catch(c.handleWarning),!1},999),this.PoiService.onPoiOpen.connect(function(e){t.PoiService.isRoutePickingPhase()?t.makeRouteWithPoi(e):(t.poiDescriptionExpandedOnMobile=!1,a.invalidateAngular())}),this.PoiService.onPoiClose.connect(function(t){return a.invalidateAngular()}),this.SiteModelService.onSelect.connect(function(){return t.PoiService.closeAndUnhighlightPoi()}),this.PoiService.openEditor.connect(function(e){return t.openEditor(e)})},t.prototype.isFullscreenEnabled=function(){return this.PoiService.enableFeatures.fullScreen&&!this.isMobilePanoramaView()},t.prototype.isMobilePanoramaView=function(){return r.isMobileLayout()&&!this.ViewService.isMapPrimaryView()},t.prototype.isTopFloatingPanel=function(){return!this.isFullscreenEnabled()&&!this.PoiService.isRouteMode&&!this.SearchService.isSearchBoxVisible()},t.prototype.isPoiOpenedFromResultList=function(){return this.PoiService.openedPoi.id&&this.resultsList.selectedResult&&this.resultsList.selectedResult instanceof l.PoiSearchEntity&&this.resultsList.selectedResult.id===this.PoiService.openedPoi.id},t.prototype.isPoiDetailsClosable=function(){return this.PoiService.isRouteMode||this.isFullscreenEnabled()||!this.SearchService.isSearchBoxVisible()},t.prototype.isViewSwappable=function(){return r.isMobileLayout()&&this.ViewService.canSwapViews()},t.prototype.isDescriptionCollapsible=function(){return r.isMobileLayout()&&this.PoiService.openedPoi.description&&!this.isFullscreenEnabled()},t.prototype.closeResult=function(){this.SearchService.closeResult(!0,o.SearchResultType.POI)},t.prototype.returnToResultsList=function(){this.SearchService.closeResult(!1,o.SearchResultType.POI),this.SearchService.updatePoisToDisplay()},t.prototype.returnToSiteModel=function(){this.SiteModelService.selectPreviousModel()},t.prototype.goToPoi=function(t){return this.PoiService.goToPoi(t)},t.prototype.swapViews=function(){this.ViewService.swapViews()},t.prototype.selectedPoiIsEditable=function(){return!(!this.PoiService.openedPoi||!this.LicenseService.isLicenseValid)&&!this.PoiService.openedPoi.readOnly&&this.PoiService.openedPoi.security.canWrite},t.prototype.startRouteMenu=function(){this.PoiService.enterRouteMode();var t=this.PoiService.openedPoi;this.makeRouteWithPoi(t),this.PoiService.closePoi(),this.TrackingService.trackRouteInitiation(this.PoiService.routeEnd)},t.prototype.makeRouteWithPoi=function(t){this.PoiService.routeEnd&&this.PoiService.routeStart?this.PoiService.routeEnd=t:this.PoiService.routeEnd?this.PoiService.routeStart||(this.PoiService.routeStart=t):this.PoiService.routeEnd=t,this.SearchService.startRoute(),a.invalidateAngular()},t.prototype.toggleExpandedDescription=function(){this.poiDescriptionExpandedOnMobile=!this.poiDescriptionExpandedOnMobile},t.prototype.isPoiDescriptionExpanded=function(){return!!this.isFullscreenEnabled()||!(!this.PoiService.openedPoi||!this.PoiService.openedPoi.description)&&(!r.isMobileLayout()||this.poiDescriptionExpandedOnMobile)},t.prototype.finishMovePoi=function(t,e){void 0===e&&(e=!0),this.movingPoi&&(t&&(this.model=this.movingPoi),this.movingPoi=void 0,this.PoiService.openedPoi.location=this.model.location,this.PoiService.poisChanged.emit()),e&&i.element("#editPoi").modal("show")},t.prototype.openEditor=function(t,e){if(t){var n=this.PoiRepository.create();e?n.copyPose(e):this.CursorService.copyCursorPose(n),this.model=n}else this.model=this.PoiRepository.create().copy(this.PoiService.openedPoi);window.setTimeout(function(){i.element("#editPoi").modal("show"),a.invalidateAngular()})},t.prototype.startMovePoi=function(){this.PoiService.movingPoi=this.PoiRepository.create().copy(this.model)},t.prototype.getPoiShareType=function(){return this.PoiService.openedPoi&&this.PoiService.openedPoi.isLocationAsPoi?s.ShareType.CUSTOM_LOCATION:s.ShareType.POI},t.prototype.isCustomLocation=function(){return this.PoiService.openedPoi&&this.PoiService.openedPoi.isLocationAsPoi},t.prototype.isCreateButtonVisible=function(){return this.PoiService.openedPoi.isLocationAsPoi&&this.PoiService.openedPoi.orientation&&this.UserService.userInfo.checkAttribute(u.GroupAttributes.CAN_CREATE_POIS)&&this.PoiTypeService.isAnyVisible()&&this.LicenseService.isLicenseValid},t.prototype.createPoi=function(){this.openEditor(!0,this.PoiService.openedPoi)},t}();e.PoiDetailsController=d;var p=function(){function t(){this.restrict="E",this.templateUrl="PoiDetails/PoiDetails.html",this.controller=d,this.controllerAs="vm",this.scope={model:"="}}return t.factory=function(){return function(){return new t}},t}();e.PoiDetailsDirective=p,i.module("IVWebApp").directive("poiDetails",p.factory())},function(t,e,n){var i="PoiDetails/PoiDetails.html",r='\x3c!-- POI details --\x3e\n<div ng-if="vm.PoiService.openedPoi"\n id="poi-details-panel"\n class="panel panel-default"\n ng-class="{\'full-window full-window-scroll\': vm.isFullscreenEnabled(),\n \'border-radius-top padding-left-menu-icon\': vm.isTopFloatingPanel()}">\n\t<div class="return-label padding-horizontal">\n\t\t<a ng-click="vm.returnToResultsList()"\n\t\t ng-show="vm.isPoiOpenedFromResultList()"\n\t\t class="clickable">\n\t\t\t<i class="fa fa-chevron-left" aria-hidden="true"></i>\n\t\t\t<span translate>Return to results</span>\n\t\t</a>\n\t\t<a ng-click="vm.returnToSiteModel()"\n\t\t ng-show="!!vm.SiteModelService.previouslySelectedModel"\n\t\t class="return-to-sme clickable">\n\t\t\t<i class="fa fa-chevron-left" aria-hidden="true"></i>\n\t\t\t<span class="long-title"\n\t\t\t ng-if="vm.SiteModelService.previouslySelectedModel.type !== \'CUSTOM\'"\n\t\t\t translate\n\t\t\t translate-params-type="vm.SiteModelService.previouslySelectedModel.getTypeDisplayName() | translate"\n\t\t\t translate-params-name="vm.SiteModelService.previouslySelectedModel.name">\n\t\t\t\tReturn to {{type}} {{name}}\n\t\t\t</span>\n\t\t\t<span class="long-title"\n\t\t\t ng-if="vm.SiteModelService.previouslySelectedModel.type === \'CUSTOM\'"\n\t\t\t translate\n\t\t\t translate-params-name="vm.SiteModelService.previouslySelectedModel.name">\n\t\t\t\tReturn to {{name}}\n\t\t\t</span>\n\t\t</a>\n\t</div>\n\n\t\x3c!--Close POI details panel--\x3e\n\t<img class="menu-close-button ic_svg"\n\t ng-if="vm.isPoiDetailsClosable()"\n\t ng-click="vm.hideNavGraph(); vm.closeResult()"\n\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}">\n\n\t\x3c!-- Heading --\x3e\n\t<div class="panel-heading clear-background">\n\t\t<div class="row">\n\t\t\t<div class="col-xs-12 clickable" ng-click="vm.goToPoi()">\n\t\t\t\t\x3c!-- Icon --\x3e\n\t\t\t\t<div class="vcenter">\n\t\t\t\t\t<img ng-src="{{vm.PoiService.openedPoi.icon}}" class="poiIcon">\n\t\t\t\t</div>\n\t\t\t\t<div class="vcenter padding-horizontal">\n\t\t\t\t\t\x3c!-- Title --\x3e\n\t\t\t\t\t<h3 class="panel-title long-title no-margin"\n\t\t\t\t\t title="{{vm.PoiService.openedPoi.title}}">\n\t\t\t\t\t\t{{vm.PoiService.openedPoi.title}}\n\t\t\t\t\t</h3>\n\t\t\t\t\t\x3c!--Site Model Information--\x3e\n\t\t\t\t\t<site-data entity="vm.PoiService.openedPoi.siteModelEntity"\n\t\t\t\t\t clickable="true">\n\t\t\t\t\t</site-data>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n\n\t\x3c!-- Button controls --\x3e\n\t<div class="btn-toolbar poi-btn-toolbar" role="toolbar">\n\t\t<div class="btn-group">\n\t\t\t\x3c!-- Share --\x3e\n\t\t\t<button ng-if="vm.enableFeatures.share"\n\t\t\t ng-click="vm.goToPoi()"\n\t\t\t class="btn btn-default no-overflow" type="button" data-toggle="modal"\n\t\t\t data-target="#poi-url">\n\t\t\t\t<img class="ic_svg" ng-src="'+n(591)+'"><br>\n\t\t\t\t<span class="btn-description-mobile uppercase" translate>Share</span>\n\t\t\t</button>\n\n\t\t\t\x3c!-- Jump to panorama / point cloud mode --\x3e\n\t\t\t<button ng-if="vm.isViewSwappable() && vm.ViewService.isMapPrimaryView()"\n\t\t\t class="btn btn-default no-overflow" type="button"\n\t\t\t ng-click="vm.goToPoi(); vm.ViewService.swapViews()">\n\t\t\t\t<div ng-if="vm.ViewMenuService.config.showPanoramas === true">\n\t\t\t\t\t<img class="ic_svg" ng-src="'+n(426)+'"><br>\n\t\t\t\t\t<span class="btn-description-mobile uppercase" translate>Panorama</span>\n\t\t\t\t</div>\n\t\t\t\t<div ng-if="vm.ViewMenuService.config.showPanoramas === false">\n\t\t\t\t\t<img class="ic_svg" ng-src="'+n(592)+'"><br>\n\t\t\t\t\t<span class="btn-description-mobile uppercase" translate>Point cloud</span>\n\t\t\t\t</div>\n\t\t\t</button>\n\t\t\t\x3c!-- ...or jump to map mode --\x3e\n\t\t\t<button ng-if="vm.isViewSwappable() && vm.ViewService.isPanoPrimaryView()"\n\t\t\t class="btn btn-default no-overflow" type="button"\n\t\t\t ng-click="vm.goToPoi(); vm.swapViews()">\n\t\t\t\t<div>\n\t\t\t\t\t<img class="ic_svg" ng-src="'+n(427)+'"><br>\n\t\t\t\t\t<span class="btn-description-mobile uppercase" translate>Map</span>\n\t\t\t\t</div>\n\t\t\t</button>\n\n\t\t\t\x3c!-- Edit --\x3e\n\t\t\t<button ng-if="vm.selectedPoiIsEditable()"\n\t\t\t class="btn btn-default no-overflow" type="button"\n\t\t\t ng-click="vm.openEditor()">\n\t\t\t\t<img class="ic_svg" ng-src="'+n(593)+'"><br>\n\t\t\t\t<span class="btn-description-mobile uppercase" translate>Edit</span>\n\t\t\t</button>\n\n\t\t\t\x3c!-- Create --\x3e\n\t\t\t<button ng-if="vm.isCreateButtonVisible()"\n\t\t\t class="btn btn-default no-overflow" type="button"\n\t\t\t ng-click="vm.createPoi()">\n\t\t\t\t<img class="ic_svg" ng-src="'+n(1328)+'"><br>\n\t\t\t\t<span class="btn-description-mobile uppercase" translate>Create POI</span>\n\t\t\t</button>\n\n\t\t\t\x3c!-- Route --\x3e\n\t\t\t<button ng-if="vm.enableFeatures.routing"\n\t\t\t class="btn btn-default dropdown-toggle no-overflow" type="button"\n\t\t\t data-toggle="dropdown"\n\t\t\t ng-click="vm.startRouteMenu()">\n\t\t\t\t<img class="ic_svg" ng-src="'+n(594)+'"><br>\n\t\t\t\t<span class="btn-description-mobile uppercase" translate>Route</span>\n\t\t\t</button>\n\t\t</div>\n\t</div>\n\n\t\x3c!-- Expand / collapse description --\x3e\n\t<button type="button"\n\t ng-click="vm.toggleExpandedDescription()"\n\t ng-show="vm.isDescriptionCollapsible()"\n\t class="btn btn-default btn-showhide-poi-details no-hover-ios">\n\t\t<div ng-if="!vm.isPoiDescriptionExpanded()"\n\t\t class="show-hide-text uppercase" translate>\n\t\t\tShow details\n\t\t</div>\n\t\t<div ng-if="vm.isPoiDescriptionExpanded()"\n\t\t class="show-hide-text uppercase" translate>\n\t\t\tHide details\n\t\t</div>\n\t\t<span class="fa"\n\t\t ng-class="vm.isPoiDescriptionExpanded() ? \'fa-angle-up\' : \'fa-angle-down\'"></span>\n\t</button>\n\n\t<div class="panel-body border-top"\n\t ng-show="vm.isPoiDescriptionExpanded()">\n\n\t\t<div ng-bind-html="vm.PoiService.openedPoi.description"\n\t\t id="poi-description"\n\t\t class="collapse-content poi-description"></div>\n\t</div>\n\n\t\x3c!-- Extra panels below POI description --\x3e\n\t<ul class="list-group">\n\t\t\x3c!-- buttons for saving when POI is being moved --\x3e\n\t\t<li ng-if="vm.movingPoi" class="list-group-item">\n\t\t\t\x3c!-- Cancel --\x3e\n\t\t\t<cancel-button ng-click="vm.finishMovePoi(false)"></cancel-button>\n\t\t\t\x3c!-- Save --\x3e\n\t\t\t<button class="btn btn-default" type="button"\n\t\t\t ng-click="vm.finishMovePoi(true)"\n\t\t\t style="margin-left:5px">\n\t\t\t\t<span class="glyphicon glyphicon-save"></span>\n\t\t\t\t<span translate>\n\t\t\t\t\tSave position\n\t\t\t\t</span>\n\t\t\t</button>\n\t\t</li>\n\n\t</ul>\n</div>\n\n\x3c!-- POI editor dialog --\x3e\n<modal>\n\t<poi-editor modal-id="editPoi" model="vm.model" on-start-move="vm.startMovePoi()"></poi-editor>\n</modal>\n\n\x3c!-- Dialog for sharing URL --\x3e\n\x3c!--When escape key is pressed we hide the modal and re-enable the cursor with setCursorVisiblity method--\x3e\n<modal>\n\t<div class="modal fade" id="poi-url" tabindex="-1" role="dialog"\n\t aria-labelledby="poi-url" aria-hidden="true" data-dismiss="modal" x-trigger-cursor-viz>\n\t\t<div class="modal-dialog">\n\t\t\t<div class="modal-content">\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}"\n\t\t\t\t\t data-dismiss="modal">\n\t\t\t\t\t<h4 ng-if="!vm.isCustomLocation()" translate translate-context="title">\n\t\t\t\t\t\tShare POI\n\t\t\t\t\t</h4>\n\t\t\t\t\t<h4 ng-if="vm.isCustomLocation()" translate translate-context="title">\n\t\t\t\t\t\tShare Location\n\t\t\t\t\t</h4>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-body">\n\t\t\t\t\t<share-menu share-type="{{vm.getPoiShareType();}}"></share-menu>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){t.exports=n.p+"622af2284dbbc3b489362b4ee0fe303d.ic_location_blue.svg"},function(t,e,n){var i=n(11),r=n(1330);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"poi-details .return-to-sme{width:100%}poi-details .return-to-sme .long-title{vertical-align:middle;width:calc(100% - 15px)}poi-details .vcenter{display:inline-block}poi-details .vcenter.padding-horizontal{line-height:1;width:calc(100% - 37px)}poi-details .vcenter.padding-horizontal .long-title{line-height:1.3em;width:calc(100% + 15px)}",""]),t.exports=e},function(t,e,n){"use strict";(function(t){var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(1332),n(1333);var a=n(185);n(103),n(1335),n(123);var s=n(7),c=n(67);n(1337);var l=n(40),u=n(197),d=n(89),p=n(1339),h=n(252),f=n(253),g=function(e){function n(t,n,i,r,o,a,s,c,u,h,f,g,m,v,y){var b=e.call(this,t,r,a,o)||this;return b.PoiService=s,b.UploadService=c,b.LanguageService=u,b.ProgressReportService=h,b.TrackingService=f,b.GeoTransformationService=g,b.IV=m,b.ContentService=v,b.StorageService=y,b.isFullscreen=!1,b.isMobileLayout=l.isMobileLayout,b.localize=b.LanguageService.localize,b.showViewConfOptions=!1,b.poiValid={type:!0,fileUpload:!0},b._viewConfiguration=p.PoiViewConfiguration.CURRENT,b.viewConfigStorageKey="poiViewConfig",b.mediaUploadProgress=new d.PromiseProgressWrapper,b.iconUploadProgress=new d.PromiseProgressWrapper,b.preservePoiDescriptions=!1,b.movingPoiInProcess=!1,i.initialized.then(function(){return b.poiTypes=n.data}).catch(function(){}),b}return r(n,e),n.$inject=["PoiRepository","PoiTypeRepository","PoiTypeService","gettextCatalog","ErrorService","$element","PoiService","UploadService","LanguageService","ProgressReportService","TrackingService","GeoTransformationService","IV","ContentService","StorageService"],Object.defineProperty(n.prototype,"viewConfiguration",{get:function(){return this._viewConfiguration},set:function(t){this._viewConfiguration=t,t!==p.PoiViewConfiguration.SAVED&&this.StorageService.set(this.viewConfigStorageKey,t)},enumerable:!0,configurable:!0}),Object.defineProperty(n.prototype,"poiDescriptions",{get:function(){return this.model?this.model.descriptions:{}},enumerable:!0,configurable:!0}),n.prototype.isPreservePovOptionVisible=function(){return!this.movingPoiInProcess&&void 0!==this.model.id},n.prototype.isMediaUploadInProgress=function(){return this.mediaUploadProgress.isInProgress},n.prototype.isIconUploadInProgress=function(){return this.iconUploadProgress.isInProgress},n.prototype.changeViewConfig=function(){this.showViewConfOptions=!0,this.PoiService.recalculateTextEditorSize()},n.prototype.save=function(){var t=this,n=void 0===this.model.id,i=this.IV.getMainView();switch(this._viewConfiguration){case p.PoiViewConfiguration.CURRENT:this.model.pov=new f.PointOfView(this.GeoTransformationService.vectorToGlobal(i.getCamera().position),h.QuaternionFactory.fromLonLat(i.getViewDir()),i.getFov(),i.getImage()&&i.getImage().isAtPosition(i.getCamera().position)?i.getImage().id:void 0);break;case p.PoiViewConfiguration.CLOSEST_IMAGE:this.model.pov=void 0;break;case p.PoiViewConfiguration.SAVED:}return this.model.poiType?(this.movingPoiInProcess=!1,s.forEach(this.model.descriptions,function(e,n){e=t.ContentService.collapseSelfHostedUrls(e),t.model.descriptions[n]=e}),e.prototype.save.call(this,this.filterInlineData(this.model.descriptions)).then(function(e){return t.setOpenedPoi(e),t.PoiService.onPoiSave.emit(e,n),e})):(this.poiValid.type=!1,Promise.reject("No PoiType provided."))},n.prototype.cancel=function(){void 0!==this.model.id&&this.setOpenedPoi(this.repository.dataMap[this.model.id]),e.prototype.cancel.call(this),this.movingPoiInProcess=!1},n.prototype.remove=function(){return this.TrackingService.trackPoiDeleted(),e.prototype.remove.call(this)},n.prototype.setOpenedPoi=function(t){void 0!==t.id&&this.PoiService.openHighlightAndGoToPoi(t).catch(function(){})},n.prototype.onShow=function(){var t=this,e=o.element("#"+this.modalId+" #poi-editor-tab-home");e.on("shown.bs.tab",function(){t.PoiService.recalculateTextEditorSize()}),this.showViewConfOptions=this.movingPoiInProcess||!this.model.id,this.model.id?this._viewConfiguration=this.movingPoiInProcess?p.PoiViewConfiguration.CURRENT:p.PoiViewConfiguration.SAVED:this._viewConfiguration=this.getDefaultViewConfiguration(),e.tab("show"),o.element("#"+this.modalId+" #poi_editor_advanced").removeClass("active"),o.element("#"+this.modalId+" #poi_editor_home").addClass("active")},n.prototype.onHide=function(){e.prototype.onHide.call(this),this.poiValid.type=!0,this.poiValid.fileUpload=!0,this.preservePoiDescriptions||(this.model.descriptions={reset:"true"}),this.preservePoiDescriptions=!1},n.prototype.isUploadAvailable=function(){return this.UploadService.isProtectedUploadAvailable()},n.prototype.uploadFile=function(e){for(var i=this,r=function(e){o.reportErrorInModal(o.mediaUploadProgress.wrap(o.UploadService.upload(n.UPLOAD_URL,e).then(function(r){var o=n.UPLOAD_URL+"/"+r.url;i.poiValid.fileUpload=!0;var a="",s=i.poiDescriptions[i.selectedLanguage.key];if(e.type.indexOf("image")>-1){var c=t('<img id="dynamic">');c.attr("src",o),c.css("width","inherit"),a=c[0].outerHTML}else if(e.type.indexOf("pdf")>-1){var l=document.createElement("IFRAME");l.setAttribute("src",o),l.setAttribute("frameborder","0"),l.setAttribute("width","100%"),l.setAttribute("height","480px"),l.setAttribute("frameborder","0"),a=l.outerHTML}else e.type.indexOf("audio/")>-1&&(a='<audio controls><source src="'+o+'"></audio>');i.poiDescriptions[i.selectedLanguage.key]=s?s+a:a}).catch(function(t){throw 415===t.status&&(i.poiValid.fileUpload=!1,i.PoiService.recalculateTextEditorSize()),t}))).catch(function(){})},o=this,a=0,s=e;a<s.length;a++)r(s[a])},n.prototype.isMoveAvailable=function(){return this.model&&this.model.id&&void 0!==this.onStartMove},n.prototype.onMove=function(){this.preservePoiDescriptions=!0,this.movingPoiInProcess=!0,this.exitEditor(),this.onStartMove()},n.prototype.filterInlineData=function(t){var e=this;if(!this.isUploadAvailable())return Promise.resolve();var i=/(<.*src=["'])(data:\w+\/\w+;base64,(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=))(?:["'])(?:.*>)/g,r={};if(s.forEach(t,function(t,e){for(var n=i.exec(t);n;n=i.exec(t)){var o=n[1].length+n.index,a=n[2],s=r[a];if(s)s.languageIndex[e]?s.languageIndex[e].push(o):s.languageIndex[e]=[o];else{var l={};l[e]=[o],r[a]={file:u.blobToFile(c.dataURItoBlob(a)),languageIndex:l}}}}),0===s.size(r))return Promise.resolve();var o=[],a=this.ProgressReportService.addTask(this.gettextCatalog.getString("Uploading images..."),s.size(r));return s.forEach(r,function(t){o.push(e.UploadService.upload(n.UPLOAD_URL,t.file).then(function(e){t.url=n.UPLOAD_URL+"/"+e.url,a.itemDone()}).catch(function(){a.itemDone()}))}),this.reportErrorInModal(Promise.all(o).then(function(){s.forEach(r,function(e,n){e.url?s.forEach(e.languageIndex,function(i,r){for(var o=0,a=0,s=i;a<s.length;a++){var c=s[a],l=t[r];o-=l.length-(l=l.substr(0,c+o)+e.url+l.substr(c+n.length+o)).length,t[r]=l}}):console.warn("Upload for file type",e.file.type,"failed, not replacing.")})}))},n.prototype.getDefaultViewConfiguration=function(){return this.StorageService.get(this.viewConfigStorageKey)?this.StorageService.get(this.viewConfigStorageKey):p.PoiViewConfiguration.CURRENT},n.UPLOAD_URL="poi/image",n}(a.EntityEditorController);e.PoiEditorController=g;var m=function(){function t(){this.restrict="E",this.templateUrl="PoiUI/PoiEditor.html",this.controller=g,this.controllerAs="vm",this.scope=!0,this.bindToController={modalId:"@",model:"=",onStartMove:"&?"}}return t.factory=function(){return function(){return new t}},t}();e.PoiEditorDirective=m,o.module("IVWebApp").directive("poiEditor",m.factory())}).call(this,n(19))},function(t,e){var n="PoiUI/PoiEditor.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div id="{{vm.modalId}}" class="modal" role="dialog" aria-labelledby="{{vm.modalId}}"\n aria-hidden="false" data-backdrop="static">\n\t<div class="modal-dialog modal-poi-editor"\n\t ng-class="{\'full-window full-window-scroll\' : vm.isMobileLayout() || vm.isFullscreen}"\n\t role="document">\n\t\t<div class="modal-content">\n\t\t\t<div class="modal-header" style="border-bottom: 0px">\n\t\t\t\t<button type="button" class="close glyphicon"\n\t\t\t\t ng-class="\'glyphicon-resize-\' + (vm.isFullscreen ? \'small\' : \'full\')"\n\t\t\t\t ng-click="vm.isFullscreen = !vm.isFullscreen"\n\t\t\t\t ng-hide="vm.isMobileLayout()">\n\t\t\t\t</button>\n\t\t\t\t<ul class="nav nav-tabs" role="tablist">\n\t\t\t\t\t<li id="poi-editor-tab-home" class="active" role="presentation">\n\t\t\t\t\t\t<a href="#poi_editor_home" aria-controls="poi_editor_home" role="tab"\n\t\t\t\t\t\t data-toggle="tab" translate>\n\t\t\t\t\t\t\tEdit POI\n\t\t\t\t\t\t</a>\n\t\t\t\t\t</li>\n\t\t\t\t\t<li id="poi-editor-tab-advanced" role="presentation">\n\t\t\t\t\t\t<a href="#poi_editor_advanced" aria-controls="poi_editor_advanced"\n\t\t\t\t\t\t role="tab" data-toggle="tab" translate>\n\t\t\t\t\t\t\tAdvanced\n\t\t\t\t\t\t</a>\n\t\t\t\t\t</li>\n\t\t\t\t</ul>\n\t\t\t</div>\n\t\t\t<div class="modal-body">\n\t\t\t\t<div class="tab-content">\n\t\t\t\t\t<div role="tabpanel" class="tab-pane active" id="poi_editor_home">\n\t\t\t\t\t\t<form class="poiModalForm form-horizontal" role="form">\n\n\t\t\t\t\t\t\t\x3c!--POI language--\x3e\n\t\t\t\t\t\t\t<poi-translation-editor titles="vm.model.titles"\n\t\t\t\t\t\t\t selected-language="vm.selectedLanguage"\n\t\t\t\t\t\t\t descriptions="vm.model.descriptions"\n\t\t\t\t\t\t\t col-span="3">\n\t\t\t\t\t\t\t</poi-translation-editor>\n\n\t\t\t\t\t\t\t\x3c!--POI name--\x3e\n\t\t\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t\t\t<label class="col-sm-3 control-label" translate>\n\t\t\t\t\t\t\t\t\tName\n\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t<div class="col-sm-9">\n\t\t\t\t\t\t\t\t\t<input type="text" class="form-control"\n\t\t\t\t\t\t\t\t\t placeholder="{{\'Enter name of POI\'|translate}}"\n\t\t\t\t\t\t\t\t\t ng-model="vm.model.titles[vm.selectedLanguage.key]"\n\t\t\t\t\t\t\t\t\t init-focus>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t\x3c!--POI type--\x3e\n\t\t\t\t\t\t\t<div class="form-group" ng-class="{\'has-error\': !vm.poiValid.type}">\n\t\t\t\t\t\t\t\t<label class="col-sm-3 control-label" translate>\n\t\t\t\t\t\t\t\t\tCategory\n\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t<div class="col-sm-9">\n\t\t\t\t\t\t\t\t\t<select class="form-control" ng-model="vm.model.poiType"\n\t\t\t\t\t\t\t\t\t ng-options="type as vm.localize(type.name) group by vm.localize(type.poiTypeGroup.name) for type in vm.poiTypes">\n\t\t\t\t\t\t\t\t\t</select>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t\x3c!--View configuration--\x3e\n\t\t\t\t\t\t\t<div class="form-group" >\n\t\t\t\t\t\t\t\t<label class="col-sm-3 control-label" translate translate-context="POI view configuration">\n\t\t\t\t\t\t\t\t\tView configuration\n\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t<div class="col-sm-9">\n\t\t\t\t\t\t\t\t\t<div ng-if="!vm.showViewConfOptions" class="form-text">\n\t\t\t\t\t\t\t\t\t\t<span ng-if="vm.model.pov === undefined" translate translate-context="POI view configuration">\n\t\t\t\t\t\t\t\t\t\t\tuse closest panoramic image\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t<span ng-if="vm.model.pov !== undefined" translate translate-context="POI view configuration">\n\t\t\t\t\t\t\t\t\t\t\tuse previously specified view\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t<a class="clickable" ng-click="vm.changeViewConfig()" translate translate-context="POI view configuration">Change</a>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t<div ng-if="vm.showViewConfOptions">\n\t\t\t\t\t\t\t\t\t\t<div class="radio">\n\t\t\t\t\t\t\t\t\t\t\t<label>\n\t\t\t\t\t\t\t\t\t\t\t\t<input type="radio" ng-model="vm.viewConfiguration" value="current">\n\t\t\t\t\t\t\t\t\t\t\t\t<span translate translate-context="POI view configuration">use current view</span>\n\t\t\t\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t<div class="radio">\n\t\t\t\t\t\t\t\t\t\t\t<label>\n\t\t\t\t\t\t\t\t\t\t\t\t<input type="radio" ng-model="vm.viewConfiguration" value="closest">\n\t\t\t\t\t\t\t\t\t\t\t\t<span translate translate-context="POI view configuration">use closest panoramic image</span>\n\t\t\t\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t<div class="radio" ng-if="vm.isPreservePovOptionVisible()">\n\t\t\t\t\t\t\t\t\t\t\t<label>\n\t\t\t\t\t\t\t\t\t\t\t\t<input type="radio" ng-model="vm.viewConfiguration" value="saved">\n\t\t\t\t\t\t\t\t\t\t\t\t<span translate translate-context="POI view configuration">use previously specified view</span>\n\t\t\t\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t\x3c!--Permissions Editor --\x3e\n\t\t\t\t\t\t\t<permission-editor model="vm.model"\n\t\t\t\t\t\t\t model-type="\'poi\'"\n\t\t\t\t\t\t\t col-span="3">\n\t\t\t\t\t\t\t</permission-editor>\n\t\t\t\t\t\t</form>\n\n\t\t\t\t\t\t<cke-wrapper-lazy ng-if="!!vm.model" ng-model="vm.poiDescriptions[vm.selectedLanguage.key]"></cke-wrapper-lazy>\n\n\t\t\t\t\t\t<div id="upload_panel" class="panel panel-default"\n\t\t\t\t\t\t ng-if="vm.isUploadAvailable()">\n\t\t\t\t\t\t\t<input-button class="btn-block btn-file panel-control-button"\n\t\t\t\t\t\t\t in-progress="vm.isMediaUploadInProgress()">\n\t\t\t\t\t\t\t\t<i class="fa fa-upload"></i>\n\t\t\t\t\t\t\t\t<span translate>Add media (images, PDF, or audio)</span>\n\t\t\t\t\t\t\t\t\x3c!--accept needs to stay in sync with the MIME types allowed in the\n\t\t\t\t\t\t\t\t server\'s PoiImageController endpoint--\x3e\n\t\t\t\t\t\t\t\t<input type="file"\n\t\t\t\t\t\t\t\t accept=".mp3, .avi,\n\t\t\t\t\t\t\t\t application/pdf,\n\t\t\t\t\t\t\t\t image/jpeg, image/gif, image/png,\n\t\t\t\t\t\t\t\t audio/mpeg, audio/ogg,\n\t\t\t\t\t\t\t\t video/mp4, video/ogg, video/webm,\n\t\t\t\t\t\t\t\t application/ogg"\n\t\t\t\t\t\t\t\t ngf-select="vm.uploadFile($files)"\n\t\t\t\t\t\t\t\t ng-disabled="vm.isMediaUploadInProgress()">\n\t\t\t\t\t\t\t</input-button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t\x3c!-- Advanced options --\x3e\n\t\t\t\t\t<div role="tabpanel" class="tab-pane" id="poi_editor_advanced">\n\t\t\t\t\t\t<poi-editor-advanced poi="vm.model"\n\t\t\t\t\t\t upload-progress="vm.iconUploadProgress">\n\t\t\t\t\t\t</poi-editor-advanced>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="status-messages">\n\t\t\t\t\t\x3c!-- Unsupported media type --\x3e\n\t\t\t\t\t<span class="text-danger" ng-show="!vm.poiValid.fileUpload">\n\t\t\t\t\t\t<br>\n\t\t\t\t\t\t<span translate>Unsupported media type</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t\x3c!-- No POI category --\x3e\n\t\t\t\t\t<span id="no_type_warning" class="text-danger"\n\t\t\t\t\t ng-show="!vm.poiValid.type">\n\t\t\t\t\t\t<br>\n\t\t\t\t\t\t<span translate>Please select a POI category</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t\x3c!-- Server response status --\x3e\n\t\t\t\t\t<span class="text-danger" ng-show="!!vm.error">\n\t\t\t\t\t\t<br>\n\t\t\t\t\t\t<span translate translate-params-status="vm.error.statusText">\n\t\t\t\t\t\t\tStatus: {{status}}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</span>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class="modal-footer">\n\t\t\t\t\x3c!-- Delete --\x3e\n\t\t\t\t<delete-confirmation class="float-left" ng-show="vm.model.id"\n\t\t\t\t button-disabled="vm.isSavingInProgress()"\n\t\t\t\t on-confirm-callback="vm.remove()">\n\t\t\t\t</delete-confirmation>\n\n\t\t\t\t\x3c!-- Move --\x3e\n\t\t\t\t<move-button ng-show="vm.isMoveAvailable()" class="non-mobile"\n\t\t\t\t ng-click="vm.onMove()"\n\t\t\t\t ng-disabled="vm.isSavingInProgress()">\n\t\t\t\t</move-button>\n\n\t\t\t\t\x3c!-- Cancel --\x3e\n\t\t\t\t<cancel-button data-dismiss="modal" ng-click="vm.cancel()"></cancel-button>\n\n\t\t\t\t\x3c!-- Save --\x3e\n\t\t\t\t<save-button ng-disabled="vm.isMediaUploadInProgress() || vm.isIconUploadInProgress()"\n\t\t\t\t ng-click="vm.save()"\n\t\t\t\t in-progress="vm.isSavingInProgress()"></save-button>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1334);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"poi-editor .modal-poi-editor{width:700px}poi-editor .modal-poi-editor .full-window{overflow-y:auto;-webkit-overflow-scrolling:touch}poi-editor .modal-poi-editor .full-window>.modal-content{height:auto;min-height:100%}poi-editor .modal-poi-editor .modal-header{padding-right:15px}poi-editor .modal-poi-editor .modal-body{padding:15px}poi-editor .modal-poi-editor .form-group{margin-bottom:10px}poi-editor .modal .modal-body img{color:inherit;cursor:pointer;border-top-left-radius:4px!important;border-top-right-radius:4px!important;border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}poi-editor .modal .modal-body img:hover{background-color:#e6e6e6}poi-editor .form-text{padding-top:7px}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1336);var r=n(25),o=function(){function t(t,e,n,i,r){this.ConfigService=t,this.PoiService=e,this.UploadService=n,this.errorWrapper=r.createDefaultWrapper()}return t.$inject=["ConfigService","PoiService","UploadService","gettextCatalog","ErrorService"],t.prototype.visibilityCheckEnabled=function(){return this.ConfigService.getBoolean(r.Configs.POI_VISIBILITYCHECK_ENABLED,!0)},t.prototype.isUploadAvailable=function(){return this.UploadService.isProtectedUploadAvailable()},t.prototype.isUploadInProgress=function(){return this.uploadProgress.isInProgress},t.prototype.uploadIcon=function(e,n){for(var i=this,r=0,o=e;r<o.length;r++){var a=o[r];this.errorWrapper.wrap(this.uploadProgress.wrap(this.UploadService.upload(t.ICON_UPLOAD_URL,a).then(function(e){var n=t.UPLOAD_URL+"/"+e.url;i.poi.icon=n,i.PoiService.uploadedCustomIcon(n)}).catch(function(t){throw n.target.value="",t}))).catch(function(){})}},t.prototype.getUploadedIcons=function(){return this.PoiService.getUploadedIcons()},t.UPLOAD_URL="poi/image",t.ICON_UPLOAD_URL="poi/icon",t}();e.PoiEditorAdvancedController=o;var a=function(){function t(){this.restrict="E",this.templateUrl="PoiUI/PoiEditorAdvanced.html",this.controller=o,this.controllerAs="vm",this.scope=!0,this.bindToController={poi:"=",uploadProgress:"="}}return t.factory=function(){return function(){return new t}},t}();e.PoiEditorAdvancedDirective=a,i.module("IVWebApp").directive("poiEditorAdvanced",a.factory())},function(t,e,n){var i="PoiUI/PoiEditorAdvanced.html",r='<div>\n\t<form class="poiModalForm form-horizontal" role="form">\n\t\t\x3c!--poi importance--\x3e\n\t\t<div class="form-group">\n\t\t\t<label class="col-sm-3 control-label" translate>\n\t\t\t\tImportance\n\t\t\t</label>\n\t\t\t<div class="col-sm-9">\n\t\t\t\t<select class="form-control"\n\t\t\t\t ng-model="vm.poi.importance" convert-to-number>\n\t\t\t\t\t<option value="0" translate\n\t\t\t\t\t translate-context="Levels of importance">\n\t\t\t\t\t\tLow\n\t\t\t\t\t</option>\n\t\t\t\t\t<option value="0.5" translate\n\t\t\t\t\t translate-context="Levels of importance">\n\t\t\t\t\t\tMedium\n\t\t\t\t\t</option>\n\t\t\t\t\t<option value="1" translate\n\t\t\t\t\t translate-context="Levels of importance">\n\t\t\t\t\t\tHigh\n\t\t\t\t\t</option>\n\t\t\t\t</select>\n\t\t\t</div>\n\t\t</div>\n\n\t\t\x3c!--poi custom icon - uploading section--\x3e\n\t\t<div class="form-group">\n\t\t\t<label class="col-sm-3 control-label"\n\t\t\t title="{{\'By default, POIs are displayed using the category icon. Upload a custom image to override the category icon.\'|translate}}"\n\t\t\t translate>\n\t\t\t\tIcon\n\t\t\t</label>\n\t\t\t<div class="col-sm-9">\n\t\t\t\t<button type="button" class="btn btn-default"\n\t\t\t\t title="{{\'By default, POIs are displayed using the category icon. Upload a custom image to override the category icon.\'|translate}}"\n\t\t\t\t data-toggle="modal" data-target="#custom_icons_list"\n\t\t\t\t style="display:inline-block; margin-right:5px">\n\t\t\t\t\t<i class="fa fa-list"></i>\n\t\t\t\t</button>\n\t\t\t\t<input-button ng-show="vm.isUploadAvailable()"\n\t\t\t\t class="btn-file panel-control-button"\n\t\t\t\t in-progress="vm.isUploadInProgress()">\n\t\t\t\t\t<i class="fa fa-upload"></i>\n\t\t\t\t\t<span translate>Upload icon</span>\n\t\t\t\t\t<input type="file"\n\t\t\t\t\t accept="image/jpeg, image/gif, image/png"\n\t\t\t\t\t ngf-select="vm.uploadIcon($files, $event)"\n\t\t\t\t\t ng-disabled="vm.isUploadInProgress()">\n\t\t\t\t</input-button>\n\t\t\t</div>\n\t\t</div>\n\n\t\t\x3c!--poi custom icon- display and remove/revert to type section--\x3e\n\t\t<div ng-if="vm.poi.hasCustomIcon()" class="form-group">\n\t\t\t<label class="col-sm-3 control-label" translate>\n\t\t\t\tCustom icon\n\t\t\t</label>\n\n\t\t\t<div class="col-sm-9">\n\t\t\t\t<img ng-src={{vm.poi.icon}} class="poiIcon">\n\t\t\t\t<button class="btn btn-default " type="button" ng-click="vm.poi.icon = undefined">\n\t\t\t\t\t<span class="glyphicon glyphicon-remove"></span>\n\t\t\t\t\t<span translate>\n\t\t\t\t\t\tRemove icon\n\t\t\t\t\t</span>\n\t\t\t\t</button>\n\t\t\t</div>\n\t\t</div>\n\n\t\t\x3c!--poi position--\x3e\n\t\t<div class="form-group">\n\t\t\t<label class="col-sm-3 control-label" translate>\n\t\t\t\tPosition\n\t\t\t</label>\n\n\t\t\t<div class="col-sm-9">\n\t\t\t\t<p class="form-control-static" style="display:inline-block; margin-right:8px">\n\t\t\t\t\t<span translate\n\t\t\t\t\t translate-params-lat="vm.poi.globalLocation.y | number:5"\n\t\t\t\t\t translate-params-lon="vm.poi.globalLocation.x | number:5"\n\t\t\t\t\t translate-params-height="vm.poi.globalLocation.z | uom : \'DISTANCE\' : 2">\n\t\t\t\t\t\t{{lat}} N {{lon}} E, Height: {{height}}\n\t\t\t\t\t</span>\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t</div>\n\n\t\t\x3c!--poi custom data--\x3e\n\t\t<div class="form-group">\n\t\t\t<label class="col-sm-3 control-label" translate>\n\t\t\t\tCustom data\n\t\t\t</label>\n\t\t\t<div class="col-sm-9">\n\t\t\t\t<input type="text" class="form-control" ng-model="vm.poi.customData">\n\t\t\t</div>\n\t\t</div>\n\n\t\t\x3c!--check and adjust poi visibility, only shown when feature is enabled in settings --\x3e\n\t\t<div class="form-group" ng-if="vm.visibilityCheckEnabled()">\n\t\t\t<label class="col-sm-3 control-label" translate>\n\t\t\t\tCheck visibility\n\t\t\t</label>\n\t\t\t<div class="col-sm-9 poi-group">\n\t\t\t\t<input type="checkbox" ng-model="vm.poi.visibilityCheck">\n\t\t\t</div>\n\t\t</div>\n\t</form>\n</div>\n\n\x3c!--Presents user with a list of already uploaded custom icons he can choose from \t\t--\x3e\n<modal>\n\t<div class="modal fade" id="custom_icons_list" tabindex="-1" role="dialog" aria-labelledby=""\n\t aria-hidden="true">\n\t\t<div class="modal-dialog">\n\t\t\t<div class="modal-content">\n\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}"\n\t\t\t\t\t data-dismiss="modal">\n\t\t\t\t\t<h4 translate translate-context="title">Recently Uploaded Icons</h4>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="modal-body">\n\t\t\t\t\t<div class="row">\n\t\t\t\t\t\t<div class="col-sm-1" ng-repeat="(icon, unused) in vm.getUploadedIcons()"\n\t\t\t\t\t\t data-dismiss="modal">\n\t\t\t\t\t\t\t<img ng-src="{{icon}}" ng-click="vm.poi.icon=icon" class="poiIcon">\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="modal-footer">\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(7);n(595),n(596);var s=function(t){function e(e){var n=t.call(this,e)||this;return n.titlesLoaded=!1,n.descriptionsLoaded=!1,n}return r(e,t),e.$inject=["LanguageService"],Object.defineProperty(e.prototype,"titles",{get:function(){return this.controllerTitles},set:function(t){this.controllerTitles=t,this.titlesLoaded=!0,this.mergeTranslations(),this.modelChanged()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"descriptions",{get:function(){return this.controllerDescriptions},set:function(t){this.controllerDescriptions=t,t&&t.reset||(this.descriptionsLoaded=!0,this.mergeTranslations(),this.modelChanged())},enumerable:!0,configurable:!0}),e.prototype.create=function(e){t.prototype.create.call(this,e),this.descriptions[e.key]=""},e.prototype.remove=function(){var e=this.selectedLanguage;e&&(delete this.titles[e.key],delete this.descriptions[e.key]),t.prototype.remove.call(this)},e.prototype.getUsedLanguages=function(){var e=this,n=t.prototype.getUsedLanguages.call(this),i=a.keys(this.descriptions).map(function(t){return e.LanguageService.getLanguage(t)});return a.union(n,i)},e.prototype.mergeTranslations=function(){if(this.titlesLoaded&&this.descriptionsLoaded){var t=a.clone(this.controllerTitles);a.extend(t,this.controllerDescriptions),this.translations=t,this.titlesLoaded=!1,this.descriptionsLoaded=!1}},e}(n(273).TranslationEditorController);e.PoiTranslationEditorController=s;var c=function(){function t(){this.restrict="E",this.templateUrl="I18N/TranslationEditor.html",this.controller=s,this.controllerAs="vm",this.scope=!0,this.bindToController={titles:"=",descriptions:"=",colSpan:"@?",selectedLanguage:"="}}return t.factory=function(){return function(){return new t}},t}();e.PoiTranslationEditorDirective=c,o.module("IVWebApp").directive("poiTranslationEditor",c.factory())},function(t,e,n){(e=n(10)(!1)).push([t.i,".nav-pills-used-langs{padding-left:15px}.nav-pills-used-langs li>a{padding:7px 10px}.nav-pills-lang-controls{margin-top:1px;text-align:right}.nav-pills-lang-controls button{padding:6px 10px}.nav-pills-lang-controls .dropdown-menu{width:220px;left:auto;right:15px}.nav-pills-lang-controls div.dropdown-menu{position:absolute;top:38px;width:210px;height:52px;padding:4px 5px;border-bottom-left-radius:0;border-bottom-right-radius:0}.nav-pills-lang-controls input.dropdown-menu{top:38px;height:34px;width:180px;margin-top:10px;margin-right:10px;padding:0 10px}.nav-pills-lang-controls ul.dropdown-menu{top:90px;max-height:50vw;border-top-left-radius:0;border-top-right-radius:0;border-top-width:0}.nav-pills-lang-controls ul.dropdown-menu a:hover{background-color:inherit}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t.CLOSEST_IMAGE="closest",t.CURRENT="current",t.SAVED="saved"}(e.PoiViewConfiguration||(e.PoiViewConfiguration={}))},function(t,e,n){var i="SiteModelUI/SiteModelDetails.html",r='<div ng-if="vm.model"\n class="panel panel-default no-margin-bottom"\n ng-class="{\'full-window full-window-scroll element-on-screen-trigger-wrapper\': vm.isFullscreenEnabled(),\n \'border-radius-top padding-left-menu-icon\': vm.isTopFloatingPanel()}">\n\t<div ng-show="vm.isEntityOpenedFromResultList()"\n\t class="return-label padding-horizontal">\n\t\t<a ng-click="vm.closeResult()" class="clickable">\n\t\t\t<i class="fa fa-chevron-left" aria-hidden="true"></i>\n\t\t\t<span translate>Return to results</span>\n\t\t</a>\n\t</div>\n\n\t\x3c!--Close Site Model details panel--\x3e\n\t<img class="menu-close-button ic_svg"\n\t ng-if="vm.PoiService.isRouteMode || vm.isFullscreenEnabled() || !vm.SearchService.isSearchBoxVisible()"\n\t ng-click="vm.closeResult()"\n\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}">\n\n\t\x3c!-- Heading --\x3e\n\t<div class="panel-heading clear-background">\n\t\t<div class="row">\n\t\t\t<div class="col-xs-12 clickable" ng-click="vm.goToEntity(vm.model)">\n\t\t\t\t\x3c!-- Icon --\x3e\n\t\t\t\t<div class="vcenter">\n\t\t\t\t\t<img ng-src="{{vm.model.getTypeIconWithBg()}}" class="siteModelIcon">\n\t\t\t\t</div>\n\t\t\t\t<div class="vcenter padding-horizontal">\n\t\t\t\t\t\x3c!-- Title --\x3e\n\t\t\t\t\t<h3 class="panel-title long-title no-margin"\n\t\t\t\t\t title="{{vm.model.name}}">\n\t\t\t\t\t\t<span ng-if="vm.model.type !== \'CUSTOM\'">\n\t\t\t\t\t\t\t{{vm.model.getTypeDisplayName() | translate}}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t{{vm.model.name}}\n\t\t\t\t\t</h3>\n\t\t\t\t\t<site-data entity="vm.model" clickable="true" skip-entity="true"></site-data>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n\n\t\x3c!-- Button controls --\x3e\n\t<div class="btn-toolbar poi-btn-toolbar" role="toolbar">\n\t\t<div class="btn-group">\n\t\t\t\x3c!-- Share --\x3e\n\t\t\t<button ng-if="vm.isSharingEnabled()"\n\t\t\t ng-click="vm.goToEntity(vm.model)"\n\t\t\t class="btn btn-default no-overflow" type="button" data-toggle="modal"\n\t\t\t data-target="#site-model-share">\n\t\t\t\t<img class="ic_svg" ng-src="'+n(591)+'"><br>\n\t\t\t\t<span class="btn-description-mobile uppercase" translate>Share</span>\n\t\t\t</button>\n\n\t\t\t\x3c!-- Jump to panorama mode --\x3e\n\t\t\t<button ng-if="vm.canJumpToMainView()"\n\t\t\t class="btn btn-default no-overflow" type="button"\n\t\t\t ng-click="vm.goToEntity(vm.model); vm.swapViews()">\n\t\t\t\t<div ng-if="vm.arePanoramasEnabled()">\n\t\t\t\t\t<img class="ic_svg"\n\t\t\t\t\t ng-src="'+n(426)+'"><br>\n\t\t\t\t\t<span class="btn-description-mobile uppercase" translate>Panorama</span>\n\t\t\t\t</div>\n\t\t\t\t<div ng-if="!vm.arePanoramasEnabled()">\n\t\t\t\t\t<img class="ic_svg" ng-src="'+n(592)+'"><br>\n\t\t\t\t\t<span class="btn-description-mobile uppercase" translate>Point cloud</span>\n\t\t\t\t</div>\n\t\t\t</button>\n\t\t\t\x3c!-- ...or jump to map mode --\x3e\n\t\t\t<button ng-if="vm.canJumpToMapView()"\n\t\t\t class="btn btn-default no-overflow" type="button"\n\t\t\t ng-click="vm.goToEntity(vm.model); vm.swapViews()">\n\t\t\t\t<div>\n\t\t\t\t\t<img class="ic_svg" ng-src="'+n(427)+'"><br>\n\t\t\t\t\t<span class="btn-description-mobile uppercase" translate>Map</span>\n\t\t\t\t</div>\n\t\t\t</button>\n\n\t\t\t\x3c!-- Edit --\x3e\n\t\t\t<button ng-if="vm.isEntityEditable()"\n\t\t\t class="btn btn-default no-overflow" type="button"\n\t\t\t ng-click="vm.editEntity()">\n\t\t\t\t<img class="ic_svg" ng-src="'+n(593)+'"><br>\n\t\t\t\t<span class="btn-description-mobile uppercase" translate>Edit</span>\n\t\t\t</button>\n\n\t\t\t\x3c!-- Route --\x3e\n\t\t\t<button ng-if="vm.isRoutingEnabled()"\n\t\t\t class="btn btn-default no-overflow" type="button"\n\t\t\t ng-click="vm.routeToEntity(vm.model)">\n\t\t\t\t<img class="ic_svg" ng-src="'+n(594)+'"><br>\n\t\t\t\t<span class="btn-description-mobile uppercase" translate>Route</span>\n\t\t\t</button>\n\t\t</div>\n\t</div>\n\n\t<button type="button"\n\t ng-click="vm.toggleExpandedContent(vm.model)"\n\t ng-show="vm.canToggleContentExpansion(vm.model)"\n\t class="btn btn-default btn-showhide-poi-details left-panel-element no-hover-ios">\n\t\t<div ng-if="!vm.isContentExpanded(vm.model)"\n\t\t class="show-hide-text uppercase" translate>\n\t\t\tShow details\n\t\t</div>\n\t\t<div ng-if="vm.isContentExpanded(vm.model)"\n\t\t class="show-hide-text uppercase" translate>\n\t\t\tHide details\n\t\t</div>\n\t\t<span class="fa"\n\t\t ng-class="vm.isContentExpanded(vm.model) ? \'fa-angle-up\' : \'fa-angle-down\'"></span>\n\t</button>\n\n\t<div class="panel-body no-padding"\n\t ng-show="vm.isContentExpanded(vm.model)">\n\t\t<hr class="no-margin">\n\t\t\x3c!--Dimensions--\x3e\n\t\t<div class="container-fluid no-padding" ng-if="vm.hasDimensions(vm.model)">\n\t\t\t<div class="details-header padding-horizontal">\n\t\t\t\t<strong translate translate-context="title">Dimensions</strong>\n\t\t\t</div>\n\t\t\t<div class="sme-dimensions">\n\t\t\t\t<div class="sme-dimension" ng-if="vm.model.height">\n\t\t\t\t\t<span>{{vm.model.height | uom : vm.MeasurementDomain.DISTANCE : 2 : vm.currentUoMSystem : 0.01}}</span>\n\t\t\t\t\t<p translate>Height</p>\n\t\t\t\t</div>\n\t\t\t\t<div class="sme-dimension" ng-if="vm.model.area">\n\t\t\t\t\t<span>{{vm.model.area | uom : vm.MeasurementDomain.AREA : 0 : vm.currentUoMSystem : 0}}</span>\n\t\t\t\t\t<p translate>Area</p>\n\t\t\t\t</div>\n\t\t\t\t<div class="sme-dimension" ng-if="vm.model.volume">\n\t\t\t\t\t<span>{{vm.model.volume | uom : vm.MeasurementDomain.VOLUME : 0 : vm.currentUoMSystem : 0}}</span>\n\t\t\t\t\t<p translate translate-context="as in the amount of space">Volume</p>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t\x3c!--Attributes--\x3e\n\t\t<div class="container-fluid no-padding" ng-if="vm.hasAttributes(vm.model)">\n\t\t\t<div class="details-header padding-horizontal">\n\t\t\t\t<strong translate translate-context="title">Attributes</strong>\n\t\t\t</div>\n\t\t\t<div class="sme-attributes padding-horizontal">\n\t\t\t\t<table class="table">\n\t\t\t\t\t<tbody>\n\t\t\t\t\t\t<tr ng-repeat="(key, value) in vm.model.attributes">\n\t\t\t\t\t\t\t<td class="key-column long-title" title="{{key}}">{{key}}:</td>\n\t\t\t\t\t\t\t<td class="value-column long-title" title="{{value}}">{{value}}</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody>\n\t\t\t\t</table>\n\t\t\t</div>\n\t\t</div>\n\t\t\x3c!--POIs--\x3e\n\t\t<div class="container-fluid no-padding" ng-if="vm.pois.length">\n\t\t\t<div class="details-header padding-horizontal">\n\t\t\t\t<strong translate translate-context="title">Points of Interest</strong>\n\t\t\t</div>\n\t\t\t<paging fetch-pages-controller="vm" no-scroll="true">\n\t\t\t\t<div class="sme-pois">\n\t\t\t\t\t<div ng-repeat="poi in vm.pois"\n\t\t\t\t\t ng-click="vm.goToPoi(poi)"\n\t\t\t\t\t class="sme-poi col-xs-12 clickable">\n\t\t\t\t\t\t<img ng-src="{{poi.icon}}" class="poiIcon">\n\t\t\t\t\t\t<span class="long-title" title="{{poi.title}}">{{poi.title}}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</paging>\n\t\t</div>\n\t</div>\n\n</div>\n\n<modal>\n\t<site-model-entity-editor model="vm.model" parent-controller="vm" modal-id="editEntityFromDetails"></site-model-entity-editor>\n</modal>\n\n<modal>\n\t<div class="modal fade" id="site-model-share" tabindex="-1" role="dialog"\n\t aria-labelledby="site-model-share" aria-hidden="true" data-dismiss="modal" x-trigger-cursor-viz>\n\t\t<div class="modal-dialog" ng-if="vm.model">\n\t\t\t<div class="modal-content">\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}"\n\t\t\t\t\t data-dismiss="modal">\n\t\t\t\t\t<h4 translate translate-context="title">Share Location</h4>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-body">\n\t\t\t\t\t<share-menu share-type="sme"></share-menu>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){var i=n(11),r=n(1342);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,".z-index-1{box-shadow:none;position:relative;z-index:1}.z-index-2{box-shadow:0 1.5px 4px rgba(0,0,0,.24),0 1.5px 6px rgba(0,0,0,.12);position:relative;z-index:5}.z-index-3{box-shadow:0 3px 12px rgba(0,0,0,.23),0 3px 12px rgba(0,0,0,.16);position:relative;z-index:10}.z-index-4{box-shadow:0 6px 12px rgba(0,0,0,.23),0 10px 40px rgba(0,0,0,.19);position:relative;z-index:15}.z-index-5{box-shadow:0 10px 20px rgba(0,0,0,.22),0 14px 56px rgba(0,0,0,.25);position:relative;z-index:20}.front-element{z-index:1031}.full-window{position:fixed;margin:0;padding:0;left:0;right:0;top:0;bottom:0;z-index:1029;border-radius:0}.full-window-scroll{max-height:100vh}.full-window-scroll,.panel-autoscroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.panel-autoscroll{max-height:80vh}.autoscroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.fixed-top-right{position:fixed;top:10px;right:0}.center-vertical{position:absolute;top:50%;transform:translateY(-50%)}.float-left{float:left}.float-right{float:right}.margin-top-small{margin-top:5px!important}.margin-left-small{margin-left:5px!important}.margin-right-small{margin-right:5px!important}.margin-bottom-small{margin-bottom:5px!important}.margin-top,site-model-details .panel .return-label>*{margin-top:15px!important}.margin-left{margin-left:15px!important}.margin-right{margin-right:15px!important}.margin-bottom{margin-bottom:15px!important}.margin-top-big{margin-top:25px!important}.margin-bottom-big{margin-bottom:25px!important}.no-margin{margin:0!important}.no-margin-bottom{margin-bottom:0!important}.padding-horizontal{padding-left:15px!important;padding-right:15px!important}.padding-top,.padding-vertical{padding-top:15px!important}.padding-bottom,.padding-vertical{padding-bottom:15px!important}.no-padding-top{padding-top:0!important}.no-padding-bottom{padding-bottom:0!important}.no-padding-horizontal,.no-padding-left{padding-left:0!important}.no-padding-horizontal,.no-padding-right{padding-right:0!important}.no-padding{padding:0!important}.border{border:1px solid #e6e6e6}.border-top{border-top:1px solid #e6e6e6}.border-bottom{border-bottom:1px solid #e6e6e6}.border-left{border-left:1px solid #e6e6e6}.border-right{border-right:1px solid #e6e6e6}.no-border{border:none;border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.no-border-width{border:none}.border-radius{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.border-radius,.border-radius-top{border-top-left-radius:4px!important;border-top-right-radius:4px!important}.border-radius-bottom{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.no-border-radius{border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.indoorViewer.ios .no-hover-ios:hover{background-color:inherit!important}.no-shadow{box-shadow:none!important}.clear-background{border:0}.clear-background,.no-background{background:none!important}.no-overflow{overflow:hidden}.clickable,.clickable:hover{cursor:pointer}site-model-details .menu-close-button{z-index:1}site-model-details .details-header{padding-top:10px;padding-bottom:10px;background-color:#f0f0f0;color:#919191;font-size:.9em}site-model-details .panel{border-right:none;border-bottom:none;border-left:none}site-model-details .panel:not(.full-window){position:relative}site-model-details .panel.padding-left-menu-icon .panel-heading,site-model-details .panel.padding-left-menu-icon .return-label{padding-left:50px}site-model-details .panel .return-label>*{display:inline-block}site-model-details .panel .panel-body{padding-left:0;padding-right:0}site-model-details .vcenter{display:inline-block}site-model-details .vcenter.padding-horizontal{line-height:1;width:calc(100% - 37px)}site-model-details .vcenter.padding-horizontal .long-title{line-height:1.3em;width:calc(100% + 15px)}site-model-details .sme-dimensions{padding-top:20px;text-align:center}site-model-details .sme-dimensions .sme-dimension:first-child:last-child,site-model-details .sme-dimensions .sme-dimension:first-child:last-child~.sme-dimension{width:100%}site-model-details .sme-dimensions .sme-dimension:first-child:nth-last-child(2),site-model-details .sme-dimensions .sme-dimension:first-child:nth-last-child(2)~.sme-dimension{width:50%}site-model-details .sme-dimensions .sme-dimension:first-child:nth-last-child(3),site-model-details .sme-dimensions .sme-dimension:first-child:nth-last-child(3)~.sme-dimension{width:33.33333%}site-model-details .sme-dimensions .sme-dimension{float:left}site-model-details .sme-dimensions .sme-dimension p{margin-bottom:20px;text-transform:uppercase;color:#919191;font-size:.8em}site-model-details .sme-attributes{padding-top:10px}site-model-details .sme-attributes table{margin-bottom:10px}site-model-details .sme-attributes table,site-model-details .sme-attributes table>tbody,site-model-details .sme-attributes table>tbody>tr{display:block}site-model-details .sme-attributes td{padding:4px}site-model-details .sme-attributes .key-column{width:33%}site-model-details .sme-attributes .value-column{width:66%}site-model-details .sme-pois>:first-child{margin-top:10px}site-model-details .sme-pois>:last-child{margin-bottom:10px}site-model-details .sme-pois .sme-poi{padding-top:5px;padding-bottom:5px}site-model-details .sme-pois .sme-poi:hover{background-color:#e6e6e6}site-model-details .sme-pois .sme-poi img{display:inline-block;margin-right:5px;min-height:32px}site-model-details .sme-pois .sme-poi .long-title{vertical-align:middle;width:calc(100% - 42px)}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=function(){function t(){}return t.filter=["NaturalSortService",function(t){return function(e,n,i){return t.naturalSort(e,n,i)}}],t}();i.module("IVWebApp").filter("naturalSort",r.filter)},function(t,e){var n="SiteModelUI/SiteData.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div>\n\t<div ng-show="vm.showEntity(vm.siteData.building)"\n\t class="long-title">\n\n\t\t<span ng-click="vm.selectModel(vm.siteData.building)"\n\t\t ng-class="{\'decorateOnHover\': vm.clickable}"\n\t\t translate translate-params-name="vm.siteData.building.name"\n\t\t title="{{vm.siteData.building.name}}">\n\t\t\tBuilding: {{name}}\n\t\t</span>\n\t</div>\n\n\t<div ng-show="vm.showEntity(vm.siteData.floor)"\n\t class="long-title">\n\n\t\t<span ng-show="vm.showEntity(vm.siteData.building)"\n\t\t class="site-model-separator">\n\t\t\t|\n\t\t</span>\n\t\t<span ng-click="vm.selectModel(vm.siteData.floor)"\n\t\t ng-class="{\'decorateOnHover\': vm.clickable}"\n\t\t translate translate-params-name="vm.siteData.floor.name"\n\t\t title="{{vm.siteData.floor.name}}">\n\t\t\tFloor: {{name}}\n\t\t</span>\n\t</div>\n\n\t<div ng-show="vm.showEntity(vm.siteData.room)"\n\t class="long-title">\n\n\t\t<span ng-show="vm.showEntity(vm.siteData.building) || vm.showEntity(vm.siteData.floor)"\n\t\t class="site-model-separator">\n\t\t\t|\n\t\t</span>\n\t\t<span ng-click="vm.selectModel(vm.siteData.room)"\n\t\t ng-class="{\'decorateOnHover\': vm.clickable}"\n\t\t translate translate-params-name="vm.siteData.room.name"\n\t\t title="{{vm.siteData.room.name}}">\n\t\t\tRoom: {{name}}\n\t\t</span>\n\t</div>\n\n\n\t<div ng-show="vm.showEntity(vm.siteData.custom)"\n\t class="long-title">\n\n\t\t<span ng-show="vm.showEntity(vm.siteData.building) || vm.showEntity(vm.siteData.floor) || vm.showEntity(vm.siteData.room)"\n\t\t class="site-model-separator">\n\t\t\t|\n\t\t</span>\n\t\t<span ng-click="vm.selectModel(vm.siteData.custom)"\n\t\t ng-class="{\'decorateOnHover\': vm.clickable}"\n\t\t title="{{vm.siteData.custom.name}}">\n\t\t\t{{vm.siteData.custom.name}}\n\t\t</span>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1346);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"site-data{font-size:.8em;max-height:1.4em;overflow:hidden}site-data>div{display:flex;margin:2px 0}site-data>div>*{min-width:50px}site-data .decorateOnHover:hover{text-decoration:underline}site-data .long-title{width:auto!important}site-data .long-title .site-model-separator{margin-left:3px}",""]),t.exports=e},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(1348),n(1349),n(599),n(1351);var a=function(t){function e(e,n,i,r,o,a,s,c,l,u,d,p,h,f,g){var m=t.call(this,e,n,i,r,o,a,s,c,l,u,d,p,h,f)||this;return m.$element=g,m.SearchService.resultsList.hideResultsListCallback=function(){m.$element.find(".panel-autoscroll").scrollTop(0)},m}return r(e,t),e.$inject=["PoiService","SiteModelService","$timeout","FloorChangerService","SiteModelSearchRepository","IV","UrlService","SearchService","GeoTransformationService","ConfigService","SidebarMenuService","SiteModelRepository","ViewService","TrackingService","$element"],e.prototype.canDisplayResultsList=function(){return this.SearchService.canDisplayResultsList()},e.prototype.isResultsListNotEmpty=function(){return this.resultsList.results&&this.resultsList.results.length>0},e.prototype.isLoadingInProgress=function(){return this.resultsList.query&&!this.resultsList.results},e.prototype.hasFoundResults=function(){return this.resultsList.query&&this.isResultsListNotEmpty()},e.prototype.hasNotFoundResults=function(){return this.resultsList.query&&this.resultsList.results&&0===this.resultsList.results.length},e.prototype.isRouteMode=function(){return this.PoiService.isRouteMode},e}(n(429).AbstractSearchInputController);e.ResultsListController=a;var s=function(){function t(){this.restrict="E",this.templateUrl="SearchUI/ResultsList.html",this.controller=a,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.ResultsListDirective=s,o.module("IVWebApp").directive("resultsList",s.factory())},function(t,e,n){var i="SearchUI/ResultsList.html",r='<div id="results-list"\n class="vertical-menu z-index-2"\n ng-class="{\'show\': vm.canDisplayResultsList(),\n \'route-mode\': vm.isRouteMode()}">\n\n\t<div class="vertical-menu-content">\n\t\t\x3c!--Loading in progress spinner--\x3e\n\t\t<div ng-show="vm.isLoadingInProgress()"\n\t\t\t class="spinner">\n\t\t\t<img ng-src="'+n(94)+'">\n\t\t</div>\n\n\t\t\x3c!--Results heading--\x3e\n\t\t<div class="results-heading border-bottom"\n\t\t ng-show="vm.hasFoundResults()"\n\t\t translate translate-params-query="vm.resultsList.query">\n\t\t\tResults for \'{{query}}\'\n\t\t</div>\n\n\t\t\x3c!--No results found--\x3e\n\t\t<div class="no-results"\n\t\t\t ng-show="vm.hasNotFoundResults()"\n\t\t translate translate-params-query="vm.resultsList.query">\n\t\t\tNo results found for \'{{query}}\'\n\t\t</div>\n\n\t\t\x3c!--Results list--\x3e\n\t\t<paging fetch-pages-controller="vm"\n\t\t ng-if="vm.hasFoundResults()">\n\t\t\t<ul class="list-group">\n\n\t\t\t\t<li ng-repeat="result in vm.resultsList.results"\n\t\t\t\t class="list-group-item"\n\t\t\t\t ng-class="{\'clickable\': vm.resultsList.onSelect}"\n\t\t\t\t ng-click="vm.resultsList.onSelect(result)"\n\t\t\t\t ng-mouseenter="vm.goToHighlightedResult(result)"\n\t\t\t\t ng-mouseleave="vm.goToHighlightedResult(undefined)">\n\n\t\t\t\t\t<results-element result="result"></results-element>\n\n\t\t\t\t</li>\n\n\t\t\t</ul>\n\t\t</paging>\n\t</div>\n</div>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){var i=n(11),r=n(1350);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"#results-list{position:absolute;top:0;left:0;background-color:#e6e6e6;opacity:0;transition:transform .2s,top .2s,opacity 0s linear .2s;padding-top:62px}.indoorViewer.desktop #results-list{width:440px;transform:translateX(-100%)}.indoorViewer.desktop #results-list.show{transform:none}.indoorViewer.mobile-small #results-list{width:100%;transform:translateY(100%)}.indoorViewer.mobile-small #results-list.show{transform:none}.indoorViewer.mobile-small #results-list .vertical-menu-content,.indoorViewer.mobile-small #results-list .vertical-menu-heading{min-width:0}.indoorViewer.mobile #results-list{width:100%;transform:translateY(100%)}.indoorViewer.mobile #results-list.show{transform:none}.indoorViewer.mobile #results-list .vertical-menu-content,.indoorViewer.mobile #results-list .vertical-menu-heading{min-width:0}#results-list.show{opacity:1;transition:transform .2s,top .2s,opacity 0s}#results-list.route-mode{padding-top:105px}#results-list.route-mode .vertical-menu-content{height:calc(100% - 105px)}#results-list .panel-autoscroll{height:calc(100% - 53px);max-height:none}#results-list .vertical-menu-content{position:absolute;left:0;right:0;height:calc(100% - 62px);background-color:#fff}#results-list .results-heading{font-size:1.2em;padding:15px;background-color:#fff}#results-list .no-results,#results-list .spinner{margin:15px;text-align:center;overflow-x:hidden}#results-list .results-footer{padding:20px;text-align:center}#results-list .list-group{max-height:none;background-color:#fff;border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}#results-list .list-group .list-group-item{height:68px;padding:0 0 0 15px;border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important;border:none}#results-list .list-group .list-group-item:hover{background-color:#f0f0f0}#results-list .list-group .list-group-item:active{background-color:#e6e6e6}#results-list .list-group .list-group-item .poiIcon,#results-list .list-group .list-group-item .siteModelIcon{margin:15px 15px 15px 0;vertical-align:super}#results-list .list-group .list-group-item .result-info-wrapper{margin:0;height:67px;border-bottom:1px solid #e6e6e6}#results-list .list-group .search-result-header{padding:10px 15px;color:#919191}#results-list .list-group .search-result-header:hover{background:#fff;cursor:default}#results-list .list-group .search-result-header:not(:first-child){position:relative;top:-1px}#results-list .list-group .search-result-header:not(:first-of-type){border-top:1px solid #e6e6e6}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1352),n(1353),n(1355);var r=function(){function t(){this.noScroll=!1,this.currentPage=0}return t.prototype.fetchNextPage=function(){this.fetchPagesController.areAllPagesFetched()||(this.currentPage+=1,this.fetchPagesController.fetchPage(this.currentPage))},t.prototype.clear=function(){this.currentPage=0},t}();e.PagingController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="Core/UI/Paging/Paging.html",this.controller=r,this.controllerAs="vm",this.transclude={},this.scope=!0,this.bindToController={fetchPagesController:"=",noScroll:"="}}return t.factory=function(){return function(){return new t}},t.prototype.link=function(t,e,n,i){i.fetchPagesController.clearPaging.connect(function(){return i.clear()})},t}();e.PagingDirective=o,i.module("IVWebApp").directive("paging",o.factory())},function(t,e,n){var i="Core/UI/Paging/Paging.html",r='<div ng-class="{\'panel-autoscroll\': !vm.noScroll}"\n class="element-on-screen-trigger-wrapper">\n\t<div ng-transclude></div>\n\n\t\x3c!--Loading next page spinner--\x3e\n\t<div class="paging-footer"\n\t ng-if="!vm.fetchPagesController.areAllPagesFetched()"\n\t element-on-screen-trigger="vm.fetchNextPage()">\n\t\t<img ng-src="'+n(94)+'">\n\t</div>\n</div>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){var i=n(11),r=n(1354);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"paging .paging-footer{display:inline-block;text-align:center;width:100%;height:50px}paging .paging-footer>img{margin-left:auto;margin-right:auto}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(215),o=n(8),a=function(){function t(t){this.$timeout=t,this.restrict="A",this.lastVisibility=!1}return t.factory=function(){return["$timeout",function(e){return new t(e)}]},t.prototype.link=function(e,n,i){var a=this,s=n.parents(".element-on-screen-trigger-wrapper"),c=n[0],l=function(){var n=t.isVisibleOnScreen(c);n&&n!==a.lastVisibility&&e.$eval(i.elementOnScreenTrigger),a.lastVisibility=n};s.bind("scroll",l),this.$timeout(function(){return r.addResizeEventListener(s[0],l)}).catch(o.handleWarning)},t.isVisibleOnScreen=function(t){var e=t.getBoundingClientRect();if(0===e.width&&0===e.height)return!1;var n=Math.max(document.documentElement.clientHeight,window.innerHeight);return!(e.bottom<0||e.top-n>=0)},t}();e.ElementOnScreenTriggerDirective=a,i.module("IVWebApp").directive("elementOnScreenTrigger",a.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1357),n(1358);var r=n(180),o=n(55),a=function(){function t(){}return t.prototype.isPoi=function(){return this.result.resultType===r.SearchResultType.POI},t.prototype.isSme=function(){return this.result.resultType===r.SearchResultType.SITE_MODEL},t.prototype.isCustomSme=function(){return this.result.entity.type===o.SiteModelType.CUSTOM},t}();e.ResultsElementController=a;var s=function(){function t(){this.restrict="E",this.templateUrl="SearchUI/ResultsElement.html",this.controller=a,this.controllerAs="vm",this.scope=!0,this.bindToController={result:"="}}return t.factory=function(){return function(){return new t}},t}();e.ResultsElementDirective=s,i.module("IVWebApp").directive("resultsElement",s.factory())},function(t,e){var n="SearchUI/ResultsElement.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'\x3c!-- Result is a POI --\x3e\n<div ng-if="vm.isPoi()">\n\n\t<img ng-src="{{vm.result.icon}}" class="poiIcon">\n\n\t<div class="result-info-wrapper">\n\t\t<div class="result-info">\n\t\t\t\x3c!-- Name --\x3e\n\t\t\t<div ng-bind-html="vm.result.matchingTitle"\n\t\t\t class="result-search-name long-title"></div>\n\t\t\t\x3c!-- Description --\x3e\n\t\t\t<div class="result-search-description" ng-if="vm.result.matchingDescription">\n\t\t\t\t<span class="long-title"\n\t\t\t\t ng-bind-html="vm.result.matchingDescription"></span>\n\t\t\t</div>\n\t\t\t\x3c!-- Site model information --\x3e\n\t\t\t<site-data entity="vm.result.fakePoi.siteModelEntity"></site-data>\n\t\t</div>\n\t</div>\n\n</div>\n\n\x3c!-- Result is a SME --\x3e\n<div ng-if="vm.isSme()">\n\n\t<img ng-src="{{vm.result.entity.getTypeIconWithBg()}}" class="siteModelIcon">\n\n\t<div class="result-info-wrapper">\n\t\t<div class="result-info">\n\t\t\t<span class="long-title">\n\t\t\t\t<span ng-if="!vm.isCustomSme()"\n\t\t\t\t ng-bind-html="vm.result.entity.getTypeDisplayName() | translate"\n\t\t\t\t class="result-search-name"></span>\n\t\t\t\t\x3c!--Name--\x3e\n\t\t\t\t<span ng-bind-html="vm.result.matchingTitle"\n\t\t\t\t class="result-search-name"></span>\n\t\t\t\t</span>\n\t\t\t\t\x3c!-- Site model information --\x3e\n\t\t\t\t<div class="result-search-description long-title"\n\t\t\t\t ng-if="vm.result.matchingDescription">\n\t\t\t\t<span ng-bind-html="vm.result.matchingDescription"></span>\n\t\t\t</div>\n\t\t\t<site-data entity="vm.result.entity" skip-entity="true"></site-data>\n\t\t</div>\n\t</div>\n\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1359);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"results-element .result-info-wrapper{display:inline-block;position:relative;width:calc(100% - 51px);height:60px;margin-top:5px}results-element .result-info-wrapper .result-info{position:absolute;top:50%;transform:translateY(-50%);padding-right:10px;width:100%}results-element .result-info-wrapper .result-info>.long-title{display:block}results-element .result-info-wrapper .result-info .result-search-name{font-size:1.1em;max-height:1.5em;overflow:hidden}results-element .result-info-wrapper .result-info .result-search-description{font-size:.8em;max-height:1.4em;overflow:hidden}",""]),t.exports=e},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(1361),n(1362),n(603);var a=function(t){function e(e,n,i,r,o,a,s,c,l,u,d,p,h,f){return t.call(this,e,n,i,r,o,a,s,c,l,u,d,p,h,f)||this}return r(e,t),e.$inject=["PoiService","SiteModelService","$timeout","FloorChangerService","SiteModelSearchRepository","IV","UrlService","SearchService","GeoTransformationService","ConfigService","SidebarMenuService","SiteModelRepository","ViewService","TrackingService"],e.prototype.queryChanged=function(e){t.prototype.queryChanged.call(this,e),!this.SearchService.selectedResult&&e&&this.SearchService.closeResult(!1)},e}(n(429).AbstractSearchInputController);e.SearchInputController=a;var s=function(){function t(){this.restrict="E",this.templateUrl="SearchUI/SearchInput.html",this.controller=a,this.controllerAs="vm"}return t.factory=function(){return function(){return new t}},t}();e.SearchInputDirective=s,o.module("IVWebApp").directive("searchInput",s.factory())},function(t,e,n){var i="SearchUI/SearchInput.html",r='<div class="search-box border-radius" >\n\t<div class="form">\n\t\t<form name="searchForm">\n\t\t\t<div class="input-group">\n\t\t\t\t<div class="menu-icon-area border-right non-desktop"></div>\n\t\t\t\t\x3c!--Search input--\x3e\n\t\t\t\t<input type="search" class="form-control no-border"\n\t\t\t\t name="searchInput"\n\t\t\t\t id="searchInput"\n\t\t\t\t typeahead-min-length="0"\n\t\t\t\t ng-model="vm.SearchService.selectedResult"\n\t\t\t\t typeahead="result as result.title for result in vm.search($viewValue)"\n\t\t\t\t typeahead-popup-template-url="template/typeahead/result-popup.html"\n\t\t\t\t typeahead-editable="false"\n\t\t\t\t typeahead-wait-ms="300"\n\t\t\t\t placeholder="{{\'Search\'|translate}}"\n\t\t\t\t typeahead-on-select="vm.manuallySelectResult($item, false, searchForm.searchInput.$viewValue, vm.resultsList.results.length)"\n\t\t\t\t typeahead-focus-first="false"\n\t\t\t\t ng-class="{\'padding-left-menu-icon\': vm.SidebarMenuService.isAnyItemVisible(),\n\t\t\t\t \'search-box-radius-poi-selected\': vm.SearchService.canDisplayResultDetails()}"\n\t\t\t\t ng-blur="vm.leaveSearchBox(searchForm.searchInput.$viewValue)"\n\t\t\t\t clear-button="vm.clearSearchBox(searchForm.searchInput.$viewValue);\n\t\t\t\t searchForm.searchInput.$setViewValue(undefined)"\n\t\t\t\t clear-button-visible="!vm.SearchService.isAnyResultSelected()"\n\t\t\t\t press-key=\'{ "enter" : "vm.showResultsListByKey(searchForm.searchInput.$viewValue);"\n\t\t\t\t\t\t , "left": "vm.searchKeyPress(\\"Left\\")"\n\t\t\t\t\t\t , "up": "vm.searchKeyPress(\\"Up\\")"\n\t\t\t\t\t\t , "right": "vm.searchKeyPress(\\"Right\\")"\n\t\t\t\t\t\t , "down": "vm.searchKeyPress(\\"Down\\")"\n\t\t\t\t\t\t , "esc": "vm.searchKeyPress(\\"esc\\")"\n\t\t\t\t\t\t}\'\n\t\t\t\t on-change="vm.queryChanged(searchForm.searchInput.$viewValue)"\n\t\t\t\t on-change-watched="{{searchForm.searchInput.$viewValue}}"\n\t\t\t\t ng-focus="vm.inputFocused(\'search\')"\n\t\t\t\t autocomplete="off"\n\t\t\t\t aria-autocomplete="none"\n\t\t\t\t loading-indicator="vm.isSearchInProgress()"\n\t\t\t\t loading-indicator-delay="300">\n\t\t\t\t<span class="input-group-addon"\n\t\t\t\t ng-class="{\'search-box-radius-poi-selected\': vm.SearchService.canDisplayResultDetails()}">\n\t\t\t\t\t\x3c!--Show results list--\x3e\n\t\t\t\t\t<img class="ic_svg clickable border-left" ng-src="'+n(602)+'" alt="{{\'Search\'|translate}}"\n\t\t\t\t\t ng-show="!vm.SearchService.canDisplayResultsList() && !vm.SearchService.isAnyResultSelected()"\n\t\t\t\t\t ng-click="vm.showResultsListByClick(searchForm.searchInput.$viewValue)"\n\t\t\t\t\t style="padding: 7px 15px"/>\n\t\t\t\t\t\x3c!--Hide results list / Close POI details panel--\x3e\n\t\t\t\t\t<img class="ic_svg clickable"\n\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}"\n\t\t\t\t\t ng-class="vm.enableFeatures.fullScreen && !vm.resultsList.canDisplay() ? \'fixed-top-right front-element\' : \'border-left\'"\n\t\t\t\t\t ng-show="vm.SearchService.canDisplayResultsList() || vm.SearchService.isAnyResultSelected()"\n\t\t\t\t\t ng-click="searchForm.searchInput.$setViewValue(\'\'); vm.clickHideResultsButton()"\n\t\t\t\t\t style="padding: 4px 12px"/>\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t</form>\n\t</div>\n</div>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){var i=n(11),r=n(1363);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,".search-box input~.clear-button{visibility:hidden}.search-box input:active~.clear-button,.search-box input:focus~.clear-button{visibility:visible}.search-box{margin:0;background:#fff}.search-box #searchInput{height:42px;padding-bottom:7px;font-size:1.2em;border-top-left-radius:4px!important}.search-box #searchInput.padding-left-menu-icon{padding-left:60px}.search-box #searchInput:not(.search-box-radius-poi-selected){border-bottom-left-radius:4px!important}.search-box #searchInput.loading-indicator-shown{padding-right:67px}.search-box .dropdown-menu{width:100%;transform:translateY(-2px)}.search-box .search-result-header{padding:5px .8em!important;color:#919191;border-bottom:none}.search-box .search-result-header:hover{background:#fff;cursor:default}.search-box i{display:inline-block;margin-left:10px;margin-right:15px;vertical-align:25px}.search-box .input-group{z-index:1}.search-box .input-group>.input-group-addon{padding:0;background-color:#fff;border:none;border-top-right-radius:4px!important}.search-box .input-group>.input-group-addon:not(.search-box-radius-poi-selected){border-bottom-right-radius:4px!important}.search-box .clear-button{right:49px;margin:0 10px}.search-box .loading-indicator{height:22px;position:absolute;top:50%;transform:translateY(-50%);right:84px;z-index:5}.search-box-radius-poi-selected{border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.route-box input:focus,.search-box input:focus{outline:none;box-shadow:inherit}.dropdown-menu.dropdown-menu-search-results.dropdown-margin-bottom-extended li.show-results-area{border-bottom:1px solid #e6e6e6}.dropdown-menu.dropdown-menu-search-results li.show-results-area{display:block;padding:15px 20px}.dropdown-menu.dropdown-menu-search-results li.show-results-area img{margin-right:10px}.dropdown-menu.dropdown-menu-search-results li:not(.show-results-area){padding-top:0;padding-bottom:0}.dropdown-menu.dropdown-menu-search-results li:not(.show-results-area) img{margin-right:5px;vertical-align:sub;top:50%;transform:translateY(-50%)}",""]),t.exports=e},function(t,e,n){var i="SearchUI/TypeaheadTemplates.html",r='\x3c!--Typeahead popup definition --\x3e\n<script type="text/ng-template" id="template/typeahead/result-popup.html">\n\t<ul class="dropdown-menu dropdown-menu-item-separators dropdown-menu-search-results"\n\t ng-show="isOpen() && !moveInProgress"\n\t ng-class="{\'dropdown-margin-bottom-extended\': $parent.vm.dropdownMarginBottomExtended}"\n\t ng-style="{top: position().top + \'px\', left: position().left + \'px\'}"\n\t style="display: block;"\n\t role="listbox"\n\t aria-hidden="{{!isOpen()}}"\n\t on-change="$parent.vm.goToHighlightedResult(matches[active].model)"\n\t on-change-watched="{{active}}">\n\n\t\t<li ng-repeat="match in matches track by $index"\n\t\t ng-class="{active: isActive($index) }"\n\t\t class="no-hover-ios"\n\t\t ng-mouseenter="selectActive($index)"\n\t\t ng-click="selectMatch($index)"\n\t\t role="option"\n\t\t id="{{::match.id}}">\n\n\t\t\t<div typeahead-match\n\t\t\t index="$index"\n\t\t\t match="match"\n\t\t\t query="query"\n\t\t\t template-url="\'template/typeahead/result.html\'"></div>\n\n\t\t</li>\n\n\t\t\x3c!--Show results area--\x3e\n\t\t<li class="show-results-area long-title"\n\t\t ng-show="$parent.vm.resultsList"\n\t\t ng-click=\'$parent.vm.showResultsListByMoreClick(query)\'>\n\n\t\t\t<img class="ic_svg clickable"\n\t\t\t ng-src="'+n(602)+'"\n\t\t\t alt="{{\'Search\' | translate}}">\n\n\t\t\t<span translate translate-params-query="query">\n\t\t\t\tMore results for: {{query}}\n\t\t\t</span>\n\t\t</li>\n\t</ul>\n<\/script>\n\n\x3c!-- Typeahead result --\x3e\n<script type="text/ng-template" id="template/typeahead/result.html">\n\t<a tabindex="-1">\n\t\t<results-element result="match.model"></results-element>\n\t</a>\n<\/script>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(1366),n(1370),n(603);var a=n(429);n(600),n(83),n(28);var s=n(40);n(181);var c=n(309),l=n(316),u=n(260),d=n(428);n(601);var p=n(107),h=n(8),f=function(t){function e(e,n,i,r,o,a,c,u,d,p,h,f,g,m,v,y){var b,w=t.call(this,e,n,i,r,o,a,c,u,d,p,h,f,g,m)||this;return w.gettextCatalog=v,w.RouteService=y,w.RoutePoint=l.RoutePoint,w.routePoints=((b={})[l.RoutePoint.START]={searchText:"",searchPromisesInProgress:new Set},b[l.RoutePoint.END]={searchText:"",searchPromisesInProgress:new Set},b),w.isMobileLayout=s.isMobileLayout,w}return r(e,t),e.$inject=["PoiService","SiteModelService","$timeout","FloorChangerService","SiteModelSearchRepository","IV","UrlService","SearchService","GeoTransformationService","ConfigService","SidebarMenuService","SiteModelRepository","ViewService","TrackingService","gettextCatalog","RouteService"],Object.defineProperty(e.prototype,"routePointStart",{get:function(){return this.PoiService.routeStart},set:function(t){var e=this;this.setRoutePoint(t,l.RoutePoint.START).then(function(){return e.selectRoutePOIFromTypeahead(e.routePoints[l.RoutePoint.START].searchText,e.resultsList.results?e.resultsList.results.length:void 0,l.RoutePoint.START)}).catch(h.handleWarning)},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"routePointEnd",{get:function(){return this.PoiService.routeEnd},set:function(t){var e=this;this.setRoutePoint(t,l.RoutePoint.END).then(function(){return e.selectRoutePOIFromTypeahead(e.routePoints[l.RoutePoint.END].searchText,e.resultsList.results?e.resultsList.results.length:void 0,l.RoutePoint.END)}).catch(h.handleWarning)},enumerable:!0,configurable:!0}),e.prototype.search=function(e,n,i){var r=this.routePoints[i],o=p.promiseFinally(t.prototype.search.call(this,e,n,i),function(){r&&r.searchPromisesInProgress.delete(o)});return r&&r.searchPromisesInProgress.add(o),o},e.prototype.inputFocused=function(t){var e=this;this.resultsList.onSelect=function(n){e.setRoutePoint(n,t).then(function(){e.selectRoutePOIFromTypeahead(e.resultsList.query,e.resultsList.results.length,l.RoutePoint.START),e.SearchService.hideSearchResultsList()}).catch(h.handleWarning)}},e.prototype.selectRoutePOIFromTypeahead=function(t,e,n){this.SearchService.startRoute(),this.TrackingService.trackRoutePointSelection(t,e,n)},e.prototype.routeClearSearchBox=function(t,e){this.clearRoutePoint(t),this.dismissTypeaheadDropdown(),this.TrackingService.trackRouteInputClear(e,t)},e.prototype.clearRoutePoint=function(t){var e=this;this.routePoints[t].searchPromisesInProgress.clear(),this.setRoutePoint(void 0,t).then(function(){e.UrlService.resetRouteParameters(),e.RouteService.clearStoredRoute(),e.SearchService.clearSearchResults()}).catch(h.handleWarning)},e.prototype.reverseRoute=function(){var t=this.PoiService.routeEnd;this.PoiService.routeEnd=this.PoiService.routeStart,this.PoiService.routeStart=t,this.SearchService.startRoute(),this.TrackingService.trackRouteReversal(this.PoiService.routeStart,this.PoiService.routeEnd)},e.prototype.exitRouteMenu=function(){this.RouteService.clear(),this.SearchService.selectedResult=void 0,this.SearchService.clearSearchResults(),this.TrackingService.trackRouteClose()},e.prototype.showLastPositionRouteOption=function(){return this.RouteService.hasStoredView()&&this.RouteService.getStoredImage()!==this.ViewService.mainView.currentImage&&!this.PoiService.routeStart&&this.PoiService.routeEnd&&!e.isCustomPoi(this.PoiService.routeEnd)},e.prototype.showCurrentPositionRouteOption=function(){return void 0!==this.ViewService.mainView.currentImage&&!this.PoiService.routeStart&&e.isCustomPoi(this.PoiService.routeEnd)},e.prototype.routeFromLastPosition=function(){var t=this.PoiService.getLocationAsPoi(this.RouteService.getStoredImage().globalFloorLocation,!0);this.PoiService.routeStart=t,this.IV.moveToPoi(t,!0,this.RouteService.getStoredViewDir()).catch(h.handleWarning),this.SearchService.startRoute()},e.prototype.routeFromCurrentPosition=function(){this.PoiService.routeStart=this.PoiService.getLocationAsPoi(this.ViewService.mainView.currentImage.globalFloorLocation,!0),this.SearchService.startRoute()},e.prototype.isRouteSearchInProgress=function(t){return this.routePoints[t].searchPromisesInProgress.size>0},e.prototype.setRoutePoint=function(t,e){var n=this;if(t instanceof c.PoiEntity)this.setRoutePois(e,t);else{if(t instanceof u.PoiSearchEntity)return this.PoiService.getPoiFromSearchResultAsPoi(t.fakePoi).then(function(t){return n.setRoutePois(e,t)});t instanceof d.SiteModelSearchEntity?this.SiteModelService.routeToEntity(t.entity,e):this.setRoutePois(e,void 0)}return Promise.resolve()},e.prototype.setRoutePois=function(t,e){t===l.RoutePoint.START?this.PoiService.routeStart=e:t===l.RoutePoint.END&&(this.PoiService.routeEnd=e)},e.isCustomPoi=function(t){return t&&t.isLocationAsPoi&&!t.isSiteModelAsPoi},e}(a.AbstractSearchInputController);e.RouteInputsController=f;var g=function(){function t(){this.restrict="E",this.templateUrl="SearchUI/RouteInputs.html",this.controller=f,this.controllerAs="vm"}return t.factory=function(){return function(){return new t}},t}();e.RouteInputsDirective=g,o.module("IVWebApp").directive("routeInputs",g.factory())},function(t,e,n){var i="SearchUI/RouteInputs.html",r='<div class="route-box padding-left-menu-icon border-radius">\n\t<div class="form">\n\t\t<div class="col-xs-1 start-end-icons">\n\t\t\t<div class="route-label">\n\t\t\t\t<img class="ic_svg route-point-icon" ng-src="'+n(1367)+'">\n\t\t\t</div>\n\t\t\t<div class="route-label">\n\t\t\t\t<img class="ic_svg route-point-icon" ng-src="'+n(1368)+'">\n\t\t\t</div>\n\t\t</div>\n\t\t<form name="routeForm">\n\t\t\t<div class="input-group col-sm-9 col-xs-8 border-bottom">\n\t\t\t\t\x3c!-- Start route --\x3e\n\t\t\t\t<input type="search" class="form-control route-input route-input-start no-border"\n\t\t\t\t name="routeStartInput"\n\t\t\t\t ng-model="vm.routePointStart"\n\t\t\t\t typeahead="result as result.title for result in vm.search($viewValue, [vm.PoiService.routeEnd.id], vm.RoutePoint.START)"\n\t\t\t\t typeahead-popup-template-url="template/typeahead/result-popup.html"\n\t\t\t\t typeahead-editable="false"\n\t\t\t\t typeahead-wait-ms="300"\n\t\t\t\t placeholder="{{\'Search or select\'|translate}}"\n\t\t\t\t typeahead-on-select=\'vm.routePoints[vm.RoutePoint.START].searchText = routeForm.routeStartInput.$viewValue\'\n\t\t\t\t typeahead-focus-first="false"\n\t\t\t\t ng-blur="vm.clearSearchResults(true); vm.dismissTypeaheadDropdown(true)"\n\t\t\t\t clear-button="vm.routeClearSearchBox(vm.RoutePoint.START, routeForm.routeStartInput.$viewValue);\n\t\t\t\t routeForm.routeStartInput.$setViewValue(undefined)"\n\t\t\t\t press-key=\'{ "enter" : "vm.showResultsListByKey(routeForm.routeStartInput.$viewValue)"\n\t\t\t\t\t\t , "left": "vm.searchKeyPress(\\"Left\\", \\"RoutingStart\\")"\n\t\t\t\t\t\t , "up": "vm.searchKeyPress(\\"Up\\", \\"RoutingStart\\")"\n\t\t\t\t\t\t , "right": "vm.searchKeyPress(\\"Right\\", \\"RoutingStart\\")"\n\t\t\t\t\t\t , "down": "vm.searchKeyPress(\\"Down\\", \\"RoutingStart\\")"\n\t\t\t\t\t\t , "esc": "vm.searchKeyPress(\\"esc\\", \\"RoutingStart\\")"\n\t\t\t\t\t\t}\'\n\t\t\t\t on-change="vm.queryChanged(routeForm.routeStartInput.$viewValue)"\n\t\t\t\t on-change-watched="{{routeForm.routeStartInput.$viewValue}}"\n\t\t\t\t ng-focus="vm.inputFocused(vm.RoutePoint.START)"\n\t\t\t\t init-focus\n\t\t\t\t autocomplete="off"\n\t\t\t\t aria-autocomplete="none"\n\t\t\t\t loading-indicator="vm.isRouteSearchInProgress(vm.RoutePoint.START)"\n\t\t\t\t loading-indicator-delay="300">\n\t\t\t</div>\n\t\t\t<div class="input-group col-sm-9 col-xs-8">\n\t\t\t\t\x3c!-- End route --\x3e\n\t\t\t\t<input type="search" class="form-control route-input route-input-end no-border"\n\t\t\t\t name="routeEndInput"\n\t\t\t\t ng-model="vm.routePointEnd"\n\t\t\t\t typeahead="result as result.title for result in vm.search($viewValue, [vm.PoiService.routeStart.id], vm.RoutePoint.END)"\n\t\t\t\t typeahead-popup-template-url="template/typeahead/result-popup.html"\n\t\t\t\t typeahead-editable="false"\n\t\t\t\t typeahead-wait-ms="300"\n\t\t\t\t placeholder="{{\'Search or select\'|translate}}"\n\t\t\t\t typeahead-on-select=\'vm.routePoints[vm.RoutePoint.END].searchText = routeForm.routeEndInput.$viewValue\'\n\t\t\t\t typeahead-focus-first="false"\n\t\t\t\t ng-blur="vm.clearSearchResults(true); vm.dismissTypeaheadDropdown(true)"\n\t\t\t\t clear-button="vm.routeClearSearchBox(vm.RoutePoint.END, routeForm.routeEndInput.$viewValue);\n\t\t\t\t routeForm.routeEndInput.$setViewValue(undefined)"\n\t\t\t\t press-key=\'{ "enter" : "vm.showResultsListByKey(routeForm.routeEndInput.$viewValue)"\n\t\t\t\t\t\t , "left": "vm.searchKeyPress(\\"Left\\", \\"RoutingEnd\\")"\n\t\t\t\t\t\t , "up": "vm.searchKeyPress(\\"Up\\", \\"RoutingEnd\\")"\n\t\t\t\t\t\t , "right": "vm.searchKeyPress(\\"Right\\", \\"RoutingEnd\\")"\n\t\t\t\t\t\t , "down": "vm.searchKeyPress(\\"Down\\", \\"RoutingEnd\\")"\n\t\t\t\t\t\t , "esc": "vm.searchKeyPress(\\"esc\\", \\"RoutingEnd\\")"\n\t\t\t\t\t\t}\'\n\t\t\t\t on-change="vm.queryChanged(routeForm.routeEndInput.$viewValue)"\n\t\t\t\t on-change-watched="{{routeForm.routeEndInput.$viewValue}}"\n\t\t\t\t ng-focus="vm.inputFocused(vm.RoutePoint.END)"\n\t\t\t\t autocomplete="off"\n\t\t\t\t aria-autocomplete="none"\n\t\t\t\t loading-indicator="vm.isRouteSearchInProgress(vm.RoutePoint.END)"\n\t\t\t\t loading-indicator-delay="300">\n\t\t\t</div>\n\t\t</form>\n\n\t\t\x3c!-- Reverse route --\x3e\n\t\t<button title="{{\'Reverse route\'|translate}}" class="btn btn-default btn-reverse-route no-border border-left no-hover-ios"\n\t\t type="button"\n\t\t ng-click="vm.reverseRoute()">\n\t\t\t<img class="ic_svg" ng-src="'+n(1369)+'" alt="{{\'Reverse route\'|translate}}"><br>\n\t\t</button>\n\t</div>\n\n\t\x3c!-- Close Route Menu and end route --\x3e\n\t<button title="{{\'Close\'|translate}}" class="btn btn-default btn-close no-border border-left" type="button"\n\t ng-click="vm.exitRouteMenu()">\n\t\t<img class="ic_svg" ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}" ><br>\n\t</button>\n\n\t<div ng-if="vm.showLastPositionRouteOption() && (!routeForm.routeStartInput.$viewValue || !routeForm.routeEndInput.$viewValue)"\n\t ng-click="vm.routeFromLastPosition()"\n\t class="clickable padding-bottom route-last-position">\n\t\t<hr>\n\t\t<img class="ic_svg" ng-src="'+n(604)+'">\n\t\t<span translate class="padding-horizontal">Route from last position</span>\n\t</div>\n\n\t<div ng-if="vm.showCurrentPositionRouteOption() && (!routeForm.routeStartInput.$viewValue || !routeForm.routeEndInput.$viewValue)"\n\t ng-click="vm.routeFromCurrentPosition()"\n\t class="clickable padding-bottom route-last-position">\n\t\t<hr>\n\t\t<img class="ic_svg" ng-src="'+n(604)+'">\n\t\t<span translate class="padding-horizontal">Route from current position</span>\n\t</div>\n</div>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){t.exports=n.p+"c92fe8d9c097b56fe0806cf817994474.ic_route_start.svg"},function(t,e,n){t.exports=n.p+"f167ee26571eca6e112bd482b490a856.ic_route_end.svg"},function(t,e,n){t.exports=n.p+"46619d5209db0bf45a4fe212b66b5520.ic_swap_targets_grey.svg"},function(t,e,n){var i=n(11),r=n(1371);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,".route-box{background:#fff;width:100%;margin:0;padding-left:10px}.route-box.padding-left-menu-icon{padding-left:50px}.route-box input{box-shadow:none;background:transparent;border-radius:0}.route-box input.loading-indicator-shown{padding-right:87px}.route-box .form{position:relative}.route-box .form .start-end-icons{width:30px}.route-box .dropdown-menu{left:-80px!important;width:420px;max-width:calc(100vw - 20px);margin-top:-2px}.route-box .search-result-header{padding:5px .8em!important;color:#919191;border-bottom:none}.route-box .search-result-header:hover{background:#fff;cursor:default}.route-box i{display:inline-block;margin-left:10px;margin-right:15px;vertical-align:25px}.route-box .route-point-icon{width:15px;max-height:20px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);top:53%}.route-box .route-input{height:42px}.route-box .route-input-start+.dropdown-menu{top:200%!important}.route-box .clear-button{right:20px;margin:0 10px}.route-box .clear-button-padding{padding-right:45px}.route-box .loading-indicator{height:22px;position:absolute;top:50%;transform:translateY(-50%);right:55px;z-index:5}.route-box .btn-close{padding-left:12px;padding-right:12px;z-index:4;background-color:transparent;border:none;border-top-right-radius:4px!important;border-bottom-left-radius:4px!important}.route-box .btn-close:active,.route-box .btn-close:hover{background-color:#e6e6e6}.route-box .btn-reverse-route{position:absolute;right:40px;bottom:28px;padding:4px 10px;max-height:none;background-color:#fff;z-index:3;border:none;border-top-left-radius:4px!important;border-top-right-radius:4px!important;border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.route-box .btn-reverse-route:active,.route-box .btn-reverse-route:hover{background-color:#e6e6e6}.route-box .route-last-position{margin-left:-50px;border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.route-box .route-last-position hr{margin-top:0}.route-box .route-last-position img{padding-left:14px}.route-box .route-last-position:active,.route-box .route-last-position:hover{background-color:#e6e6e6}.route-label{height:3em;position:relative;width:100%}.route-label>span{position:absolute;top:50%;transform:translateY(-50%);color:#9b9b9b}",""]),t.exports=e},function(t,e,n){var i=n(11),r=n(1373);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,".z-index-1{box-shadow:none;position:relative;z-index:1}.z-index-2{box-shadow:0 1.5px 4px rgba(0,0,0,.24),0 1.5px 6px rgba(0,0,0,.12);position:relative;z-index:5}.z-index-3{box-shadow:0 3px 12px rgba(0,0,0,.23),0 3px 12px rgba(0,0,0,.16);position:relative;z-index:10}.z-index-4{box-shadow:0 6px 12px rgba(0,0,0,.23),0 10px 40px rgba(0,0,0,.19);position:relative;z-index:15}.z-index-5{box-shadow:0 10px 20px rgba(0,0,0,.22),0 14px 56px rgba(0,0,0,.25);position:relative;z-index:20}.front-element{z-index:1031}.full-window{position:fixed;margin:0;padding:0;left:0;right:0;top:0;bottom:0;z-index:1029;border-radius:0}.full-window-scroll{max-height:100vh}.full-window-scroll,.panel-autoscroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.panel-autoscroll{max-height:80vh}.autoscroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.fixed-top-right{position:fixed;top:10px;right:0}.center-vertical{position:absolute;top:50%;transform:translateY(-50%)}.float-left{float:left}.float-right{float:right}.margin-top-small{margin-top:5px!important}.margin-left-small{margin-left:5px!important}.margin-right-small{margin-right:5px!important}.margin-bottom-small{margin-bottom:5px!important}.margin-top,left-panel .poi-details-box #poi-details-panel .return-label>*{margin-top:15px!important}.margin-left{margin-left:15px!important}.margin-right{margin-right:15px!important}.margin-bottom{margin-bottom:15px!important}.margin-top-big{margin-top:25px!important}.margin-bottom-big{margin-bottom:25px!important}.no-margin{margin:0!important}.no-margin-bottom{margin-bottom:0!important}.padding-horizontal{padding-left:15px!important;padding-right:15px!important}.padding-top,.padding-vertical{padding-top:15px!important}.padding-bottom,.padding-vertical{padding-bottom:15px!important}.no-padding-top{padding-top:0!important}.no-padding-bottom{padding-bottom:0!important}.no-padding-horizontal,.no-padding-left{padding-left:0!important}.no-padding-horizontal,.no-padding-right{padding-right:0!important}.no-padding{padding:0!important}.border{border:1px solid #e6e6e6}.border-top,left-panel .poi-extensions-box>*>*{border-top:1px solid #e6e6e6}.border-bottom{border-bottom:1px solid #e6e6e6}.border-left{border-left:1px solid #e6e6e6}.border-right{border-right:1px solid #e6e6e6}.no-border{border:none;border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.no-border-width{border:none}.border-radius{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.border-radius,.border-radius-top{border-top-left-radius:4px!important;border-top-right-radius:4px!important}.border-radius-bottom{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.no-border-radius,left-panel .poi-extensions-box>*>*{border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.indoorViewer.ios .no-hover-ios:hover{background-color:inherit!important}.no-shadow{box-shadow:none!important}.clear-background{border:0}.clear-background,.no-background{background:none!important}.no-overflow{overflow:hidden}.clickable,.clickable:hover{cursor:pointer}left-panel .threeD-overlay{width:calc(100% - 20px);max-width:420px;position:absolute;margin:10px}left-panel .poi-extensions-box{max-height:calc(100vh - 62px)}.indoorViewer.mobile-small left-panel .poi-extensions-box,.indoorViewer.mobile left-panel .poi-extensions-box{max-height:calc(80vh - 62px)}left-panel .poi-extensions-box>*>*{border-right:none;border-bottom:none;border-left:none}left-panel .poi-details-box #poi-details-panel{position:relative;margin-bottom:0}left-panel .poi-details-box #poi-details-panel.padding-left-menu-icon .panel-heading,left-panel .poi-details-box #poi-details-panel.padding-left-menu-icon .return-label{padding-left:50px!important}left-panel .poi-details-box #poi-details-panel.full-window{position:fixed}left-panel .poi-details-box #poi-details-panel .menu-close-button{z-index:1}left-panel .poi-details-box #poi-details-panel .return-label>*{display:inline-block}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1375);var r=n(40),o=function(){function t(t,e,n,i){this.LicenseService=t,this.ModeService=e,this.SearchService=n,this.ViewService=i}return t.$inject=["LicenseService","ModeService","SearchService","ViewService"],t.prototype.isLicenseInvalid=function(){return this.LicenseService.licenseFetched&&!this.LicenseService.isLicenseValid},t.prototype.isTopFloatingLicensePanel=function(){return!this.SearchService.isSearchBoxVisible()&&!this.SearchService.canDisplayResultDetails()&&!this.isMobilePanoramaView()},t.prototype.isMobilePanoramaView=function(){return r.isMobileLayout()&&this.ViewService.isPanoPrimaryView()},t}();e.InvalidLicenseWarningController=o;var a=function(){function t(){this.restrict="E",this.templateUrl="LicenseWarning/InvalidLicenseWarning.html",this.controller=o,this.controllerAs="vm",this.scope={}}return t.factory=function(){return function(){return new t}},t}();e.InvalidLicenseDirective=a,i.module("IVWebApp").directive("invalidLicenseWarning",a.factory())},function(t,e){var n="LicenseWarning/InvalidLicenseWarning.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div ng-show="vm.isLicenseInvalid() && vm.ModeService.isNormalMode()"\n class="alert alert-danger iv-panel-warning z-index-3"\n ng-class="vm.isTopFloatingLicensePanel() ? \'margin-top-no-search-box\' : \'margin-top\'">\n\t<span class="fa fa-exclamation-triangle" aria-hidden="true"></span>\n\t<div>\n\t\t<strong translate>\n\t\t\tInvalid instance key!\n\t\t</strong>\n\t\t<span translate ng-if="vm.LicenseService.isLicenseExpired()">\n\t\t\tThe existing instance key is either not yet valid or has expired.\n\t\t</span>\n\t\t<span translate ng-if="vm.LicenseService.isLicenseAreaExceeded()">\n\t\t\tThe licensed area is smaller than the hosted area.\n\t\t</span>\n\t\t<span translate ng-if="vm.LicenseService.isLicenseSignatureInvalid()">\n\t\t\tThe license signature is invalid.\n\t\t</span>\n\t\t<span translate ng-if="vm.LicenseService.isLicenseRegisteredUsersExceeded()">\n\t\t\tThere are more registered users than the instance key allows.\n\t\t</span>\n\t\t<span translate>\n\t\t\tPlease contact your service provider to get a valid instance key.\n\t\t</span>\n\t</div>\n</div>')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=function(){function t(e,n,i,r){if(!t.setFunctionPatched){t.setFunctionPatched=!0;var o=r.__proto__.$set;r.__proto__.$set=function(t,n,i,r){return"src"!==t||(n=e.expandUploadedContentUrl(n)),o.apply(this,[t,n,i,r])}}}return t.$inject=["ContentService","$scope","$element","$attrs"],t.setFunctionPatched=!1,t}();e.ImageController=r;var o=function(){function t(){this.restrict="E",this.priority=99,this.controller=r}return t.factory=function(){return function(){return new t}},t}();e.ImageDirective=o,i.module("IVWebApp").directive("img",o.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(8),o=function(){function t(t,e,n){e.$watch(function(){return n.onChangeWatched},function(i,o){i!==o&&t(function(){return e.$eval(n.onChange)}).catch(r.handleWarning)})}return t.$inject=["$timeout","$scope","$attrs"],t}();e.OnChangeController=o;var a=function(){function t(){this.restrict="A",this.controller=o}return t.factory=function(){return function(){return new t}},t}();e.OnChangeDirective=a,i.module("IVWebApp").directive("onChange",a.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=function(){function t(){}return t.filter=function(){return function(t){return t.slice().reverse()}},t}();i.module("IVWebApp").filter("reverse",r.filter)},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(7),o=n(8),a=function(){function t(t,e,n,i,r){var o=this;this.$timeout=t,this.$scope=e,this.$element=n;var a=i.optionsDisabled.match(/^\s*(.+)\s+for\s+(.+)\s+in\s+(.+)?\s*/),s=a[3],c=r(a[1]);e.$watch(s,function(t){t&&o.disableOptions(a[2],t,c)},!0),e.$watch(i.ngModel,function(t){var n=r(s)(e);t&&o.disableOptions(a[2],n,c)})}return t.$inject=["$timeout","$scope","$element","$attrs","$parse"],t.prototype.disableOptions=function(t,e,n){var a=this;e&&this.$timeout(function(){var o=0;r.forEach(a.$element.find("option"),function(r){var s=i.element(r);if(""!==s.val()&&"?"!==s.val()){var c={};c[t]=e[o],s.attr("disabled",n(a.$scope,c)),++o}})}).catch(o.handleWarning)},t}();e.OptionsDisabledController=a;var s=function(){function t(){this.priority=0,this.require="ngModel",this.controller=a}return t.factory=function(){return function(){return new t}},t}();e.OptionsDisabledDirective=s,i.module("IVWebApp").directive("optionsDisabled",s.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(215),o=n(8),a=function(){function t(t,e,n,i){var a=this;this.$scope=t,this.$timeout=e,this.$attrs=n,this.delay=this.$attrs.delay||0,e(function(){return r.addResizeEventListener(i[0],function(){return a.resizeFn()})}).catch(o.handleWarning)}return t.$inject=["$scope","$timeout","$attrs","$element"],t.prototype.resizeFn=function(){var t=this;this.$timeout(function(){t.$scope.$apply(function(){t.$scope.$eval(t.$attrs.resizeEvent)})},this.delay).catch(o.handleWarning)},t}();e.ResizeEventController=a;var s=function(){function t(){this.restrict="A",this.controller=a}return t.factory=function(){return function(){return new t}},t}();e.ResizeEventDirective=s,i.module("IVWebApp").directive("resizeEvent",s.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i,r=n(2),o=n(215),a=n(347);!function(t){t.LEFT="left",t.RIGHT="right",t.TOP="top",t.BOTTOM="bottom"}(i||(i={}));var s=function(){function t(t,e,n){var i=this;this.$element=t,this.$document=e,this.TrackingService=n,this.RESIZING_CLASS="resizing",this.COLLAPSED_CLASS="collapsed",this.WIDTH_PROPERTY="width",this.HEIGHT_PROPERTY="height",this.isResizing=!1,this.$element.on("mousedown",function(){return i.onMouseDown()}),this.$element.on("touchstart",function(){return i.collapse()}),this.$document.on("mousemove",function(t){return i.onMouseMove(t)}).on("mouseup",function(){return i.onMouseUp()}),o.addResizeEventListener(this.$element.parent()[0],function(){return i.defineCollapsedClass()}),window.addEventListener("resize",function(){return i.expandOrCollapse()},!1)}return t.$inject=["$element","$document","TrackingService"],t.prototype.onMouseDown=function(){this.isResizing=!0,this.$element.addClass(this.RESIZING_CLASS),this.$element.parent().addClass(this.RESIZING_CLASS)},t.prototype.onMouseMove=function(t){if(this.isResizing){var e=this.$element.parent()[0].getBoundingClientRect();this.isHorizontal()?this.resizeHorizontally(t.clientX,e):this.resizeVertically(t.clientY,e)}},t.prototype.onMouseUp=function(){this.isResizing&&(this.isResizing=!1,this.$element.removeClass(this.RESIZING_CLASS),this.$element.parent().removeClass(this.RESIZING_CLASS),void 0!==this.collapsedSize()&&void 0!==this.minExpandedSize&&this.expandOrCollapse())},t.prototype.resizeHorizontally=function(t,e){var n=this.direction===i.LEFT?e.right-t:t-e.left;this.$element.parent().css(this.WIDTH_PROPERTY,n+"px")},t.prototype.resizeVertically=function(t,e){var n=this.direction===i.TOP?e.bottom-t:t-e.top;this.$element.parent().css(this.HEIGHT_PROPERTY,n+"px")},t.prototype.expandOrCollapse=function(){var t=this.isHorizontal()?this.$element.parent().width():this.$element.parent().height(),e=t<=this.collapseThreshold()?this.collapsedSize():Math.max(t,this.minExpandedSize());this.TrackingService.trackPreDefinedEvent((new a.ToolbarVisibilityChangedEvent).visible(e>this.collapsedSize()).withNewWidth(e)),this.$element.parent().css(this.getSizeAttribute(),e+"px")},t.prototype.collapse=function(){this.$element.parent().css(this.getSizeAttribute(),this.collapsedSize()+"px")},t.prototype.defineCollapsedClass=function(){(this.isHorizontal()?this.$element.parent().width():this.$element.parent().height())<=this.collapseThreshold()?(this.$element.parent().addClass(this.COLLAPSED_CLASS),this.isCollapsed=!0):(this.$element.parent().removeClass(this.COLLAPSED_CLASS),this.isCollapsed=!1)},t.prototype.isHorizontal=function(){return this.direction===i.LEFT||this.direction===i.RIGHT},t.prototype.getSizeAttribute=function(){return this.isHorizontal()?this.WIDTH_PROPERTY:this.HEIGHT_PROPERTY},t}();e.ResizeHandlerController=s;var c=function(){function t(){this.restrict="A",this.controller=s,this.bindToController={isCollapsed:"=",direction:"=",collapseThreshold:"=",collapsedSize:"=",minExpandedSize:"="}}return t.factory=function(){return function(){return new t}},t}();e.ResizeHandlerDirective=c,r.module("IVWebApp").directive("resizeHandler",c.factory())},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(128),o=n(8),a=function(){function e(e,i,o,a,s){var c=this;this.$timeout=e,this.$scope=i,this.$element=o,this.$attrs=a,this.clearButtonClasses="ic_svg clear-button",this.clearButtonSrc=n(1383),this.callback=this.$attrs.clearButton||"",this.HIDE_CLASS="hide";var l=a.clearButtonVisible||!0,u=t('<img class="'+this.clearButtonClasses+'" ng-src="'+this.clearButtonSrc+'" ng-show="'+l+'">');this.clearButton=s(u)(i),o.parent().append(this.clearButton),o.addClass("clear-button-padding"),i.$watch(function(){return o.val()},function(t){t?c.clearButton.removeClass(c.HIDE_CLASS):c.clearButton.addClass(c.HIDE_CLASS)}),r(this.clearButton[0]).on("tap",function(){return c.onTap()})}return e.$inject=["$timeout","$scope","$element","$attrs","$compile"],e.prototype.onTap=function(){var t=this;this.$element.val(""),this.clearButton.addClass(this.HIDE_CLASS),this.$timeout(function(){t.$scope.$eval(t.callback),t.$element.focus()}).catch(o.handleWarning)},e}();e.ClearButtonController=a;var s=function(){function t(){this.restrict="A",this.controller=a}return t.factory=function(){return function(){return new t}},t}();e.ClearButtonDirective=s,i.module("IVWebApp").directive("clearButton",s.factory())}).call(this,n(19))},function(t,e,n){t.exports=n.p+"28893daf75fa13ecd3eca1e669de82ea.icn_clear_input_grey.svg"},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=function(){function t(t,e,n){var i=this;this.keys={Enter:"enter",Escape:"esc",ArrowLeft:"left",ArrowUp:"up",ArrowRight:"right",ArrowDown:"down"},t.bind("keydown keypress",function(t){var r=i.keys[t.key];if(r&&!t.shiftKey&&!t.ctrlKey&&!t.metaKey){var o=JSON.parse(e.pressKey);n.$apply(function(){n.$eval(o[r]+"("+o.data+")")}),"left"!==r&&"right"!==r&&t.preventDefault()}})}return t.$inject=["$element","$attrs","$scope"],t}();e.PressKeyController=r;var o=function(){function t(){this.controller=r}return t.factory=function(){return function(){return new t}},t}();e.PressKeyDirective=o,i.module("IVWebApp").directive("pressKey",o.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(347),o=function(){function t(t,e){var n=this;this.$element=t,this.TrackingService=e,t.on("click",function(){return n.onClick()}),window.addEventListener("resize",function(){return n.$onInit()},!1)}return t.$inject=["$element","TrackingService"],t.prototype.$onInit=function(){this.previousSize=this.expandedSize()},t.prototype.onClick=function(){var t="horizontal"===this.direction?this.toggleHorizontally():this.toggleVertically();this.defineCollapsedClass(t),this.TrackingService.trackPreDefinedEvent((new r.ToolbarVisibilityChangedEvent).visible(t>this.collapsedSize()).withNewWidth(t))},t.prototype.toggleHorizontally=function(){var t=this.computeSize(this.$element.parent().width());return this.$element.parent().css("width",t+"px"),t},t.prototype.toggleVertically=function(){var t=this.computeSize(this.$element.parent().height());return this.$element.parent().css("height",t+"px"),t},t.prototype.computeSize=function(t){var e=t<=this.collapsedSize()?this.previousSize:this.collapsedSize();return e===this.collapsedSize()&&(this.previousSize=Math.max(t,this.expandedSize())),e},t.prototype.defineCollapsedClass=function(t){t<=this.collapsedSize()?this.$element.parent().addClass("collapsed"):this.$element.parent().removeClass("collapsed")},t}();e.ExpandHandlerController=o;var a=function(){function t(){this.restrict="A",this.controller=o,this.bindToController={direction:"=",collapsedSize:"=",expandedSize:"="}}return t.factory=function(){return function(){return new t}},t}();e.ExpandHandlerDirective=a,i.module("IVWebApp").directive("expandHandler",a.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(8),o=function(){function t(t,e,n,i){e.controller("ngModel").$parsers.unshift(function(t){return i(function(){return e[0].focus()}).catch(r.handleWarning),t})}return t.$inject=["$scope","$element","$attrs","$timeout"],t}();e.KeepFocusController=o;var a=function(){function t(){this.restrict="A",this.require="ngModel",this.controller=o}return t.factory=function(){return function(){return new t}},t}();e.KeepFocusDirective=a,i.module("IVWebApp").directive("keepFocus",a.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(40),o=n(8),a=function(){function t(t,e,n){this.$timeout=t,this.$element=e;var i=n.initFocus;if(!r.isMobileBrowser()||i){var o=e.parents(".modal");o.length?this.initFocusOnElementInModal(o):this.initFocusOnElement()}}return t.$inject=["$timeout","$element","$attrs"],t.prototype.initFocusOnElementInModal=function(t){var e=this;t.bind("shown.bs.modal",function(){return e.focusElement()})},t.prototype.initFocusOnElement=function(){var t=this;this.$timeout(function(){return t.focusElement()}).catch(o.handleWarning)},t.prototype.focusElement=function(){var t=this.$element[0];t.readOnly||t.disabled||this.$element[0].focus()},t}();e.InitFocusController=a;var s=function(){function t(){this.controller=a}return t.factory=function(){return function(){return new t}},t}();e.InitFocusDirective=s,i.module("IVWebApp").directive("initFocus",s.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(54),n(1389),n(1390),n(1400);var r=n(25),o=n(8),a=n(40),s=function(){function t(t,e,n,i,r,o,a,s,c,l,u,d,p,h,f,g,m,v,y,b,w,S,x){this.ViewService=t,this.SidebarMenuService=e,this.ConfigService=n,this.ModeService=i,this.GeoTransformationService=r,this.FloorChangerService=o,this.PointCloudMenuService=a,this.TrackingService=s,this.$location=c,this.SearchService=l,this.PoiService=u,this.LicenseService=d,this.IV=p,this.UserModule=h,this.DatasetsModule=f,this.ViewModule=g,this.PoiTypesModule=m,this.MeasurementsModule=v,this.EditorModesModule=y,this.ShareModule=b,this.SettingsModule=w,this.CloudProcessingModule=S,this.DeveloperModule=x,this.mainViewDeferred=this.ViewService.mainViewDeferred,this.mapViewDeferred=this.ViewService.mapViewDeferred,this.mapZoomFactor=2,this.mapZoomDuration=200}return t.$inject=["ViewService","SidebarMenuService","ConfigService","ModeService","GeoTransformationService","FloorChangerService","PointCloudMenuService","TrackingService","$location","SearchService","PoiService","LicenseService","IV","UserModule","DatasetsModule","ViewModule","PoiTypesModule","MeasurementsModule","EditorModesModule","ShareModule","SettingsModule","CloudProcessingModule","DeveloperModule"],t.prototype.zoomMapView=function(t){this.ViewService.mapView.zoomMap(t?1/this.mapZoomFactor:this.mapZoomFactor,this.mapZoomDuration),this.TrackingService.trackMapZoom(t)},t.prototype.swapScenes=function(){this.ViewService.swapViews()},t.prototype.resizeViewHandler=function(){var t=this;this.ConfigService.initialized.then(function(){a.isMobileLayout()||t.SidebarMenuService.itemsVisibilityUpdated.emit(),a.isMobileLayout()&&!t.$location.search().image&&t.ModeService.isNormalMode()&&t.ViewService.getPrimaryView()!==t.ConfigService.getString(r.Configs.CORE_INIT_VIEW_MOBILE)&&t.ViewService.swapViews()}).catch(o.handleWarning)},t.prototype.fixCursor=function(){"pointer"===document.body.style.cursor&&(document.body.style.cursor="default")},t.prototype.isPreviewMenuVisible=function(){var t=this.SearchService.canDisplayResultDetails()||this.PoiService.isRouteMode&&this.ConfigService.getBoolean(r.Configs.UI_POI_PANEL_VISIBLE,!0);return this.ModeService.isNormalMode()&&!t&&(!this.LicenseService.licenseFetched||this.LicenseService.isLicenseValid)},t.prototype.isMapPrimaryView=function(){return this.ViewService.isMapPrimaryView()},t.prototype.isPanoPrimaryView=function(){return this.ViewService.isPanoPrimaryView()},t.prototype.isViewSwapAllowed=function(){return this.ViewService.viewSwapAllowed},t.prototype.isGeoRegistrationMode=function(){return this.ModeService.isGeoRegistrationMode()},t.prototype.showMapZoomControls=function(){return this.ViewService.isMapPrimaryView()&&this.ModeService.isNormalMode()},t.prototype.doSlideDown=function(){return!this.ViewService.canSwapViews()||this.ViewService.isMapPrimaryView()&&!this.hasPanoramaOnMapCenter()},t.prototype.isSecondaryViewHovered=function(){return this.ViewService.secondaryViewHovered},t.prototype.useLongerTransition=function(){return a.isMobileBrowser()&&this.ViewService.isPanoPrimaryView()},t.prototype.showSecondaryView=function(){return this.ViewService.showSecondaryView},t.prototype.reinitIV=function(){this.IV.reinit()},t.prototype.setStartupView=function(){if(this.ViewService.mainView.getImage()&&!this.PointCloudMenuService.isCloudVisible())this.ConfigService.saveConfig(r.Configs.CORE_INIT_IMAGE,this.ViewService.mainView.getImage().id).catch(o.handleWarning),this.ConfigService.saveConfig(r.Configs.CORE_INIT_LOCATION_LON,void 0).catch(o.handleWarning),this.ConfigService.saveConfig(r.Configs.CORE_INIT_LOCATION_LAT,void 0).catch(o.handleWarning),this.ConfigService.saveConfig(r.Configs.CORE_INIT_LOCATION_Z,void 0).catch(o.handleWarning);else{var t=this.GeoTransformationService.vectorToGlobal(this.ViewService.mainView.getCamera().position);this.ConfigService.saveConfig(r.Configs.CORE_INIT_LOCATION_LON,t.x).catch(o.handleWarning),this.ConfigService.saveConfig(r.Configs.CORE_INIT_LOCATION_LAT,t.y).catch(o.handleWarning),this.ConfigService.saveConfig(r.Configs.CORE_INIT_LOCATION_Z,t.z).catch(o.handleWarning),this.ConfigService.saveConfig(r.Configs.CORE_INIT_IMAGE,void 0).catch(o.handleWarning)}this.ConfigService.saveConfig(r.Configs.CORE_INIT_LON,this.ViewService.mainView.getViewDir().lon).catch(o.handleWarning),this.ConfigService.saveConfig(r.Configs.CORE_INIT_LAT,this.ViewService.mainView.getViewDir().lat).catch(o.handleWarning);var e=this.ViewService.mapView.getCamera(),n=this.GeoTransformationService.vectorToGlobal(e.position),i=Math.min(Math.abs(e.right-e.left),Math.abs(e.top-e.bottom));this.ConfigService.saveConfig(r.Configs.CORE_INIT_MAP_LON,n.x).catch(o.handleWarning),this.ConfigService.saveConfig(r.Configs.CORE_INIT_MAP_LAT,n.y).catch(o.handleWarning),this.ConfigService.saveConfig(r.Configs.CORE_INIT_MAP_FOV,i).catch(o.handleWarning),this.FloorChangerService.getCurrentFloorName()&&this.ConfigService.saveConfig(r.Configs.CORE_INIT_MAP_FLOOR,this.FloorChangerService.getCurrentFloorName()).catch(o.handleWarning)},t.prototype.resetStartupView=function(){this.ConfigService.saveConfig(r.Configs.CORE_INIT_IMAGE,void 0).catch(o.handleWarning),this.ConfigService.saveConfig(r.Configs.CORE_INIT_LOCATION_LON,void 0).catch(o.handleWarning),this.ConfigService.saveConfig(r.Configs.CORE_INIT_LOCATION_LAT,void 0).catch(o.handleWarning),this.ConfigService.saveConfig(r.Configs.CORE_INIT_LOCATION_Z,void 0).catch(o.handleWarning),this.ConfigService.saveConfig(r.Configs.CORE_INIT_LON,void 0).catch(o.handleWarning),this.ConfigService.saveConfig(r.Configs.CORE_INIT_LAT,void 0).catch(o.handleWarning),this.ConfigService.saveConfig(r.Configs.CORE_INIT_MAP_LON,void 0).catch(o.handleWarning),this.ConfigService.saveConfig(r.Configs.CORE_INIT_MAP_LAT,void 0).catch(o.handleWarning),this.ConfigService.saveConfig(r.Configs.CORE_INIT_MAP_FOV,void 0).catch(o.handleWarning),this.ConfigService.saveConfig(r.Configs.CORE_INIT_MAP_FLOOR,void 0).catch(o.handleWarning)},t.prototype.hasPanoramaOnMapCenter=function(){return void 0!==this.ViewService.mapView.imageOnCenter},t}();e.IvBodyController=s;var c=function(){function t(){this.templateUrl="BodyUI/IvBody.html",this.restrict="E",this.controller=s,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.IvBodyDirective=c,i.module("IVWebApp").directive("ivBody",c.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(215),o=n(40),a=n(8),s=function(){function t(t){this.$timeout=t,this.restrict="A",this.smallMobileMaxWidth=374,this.mobileMaxWidth=767,this.verticalMenuMinWidth=375}return t.factory=function(){return["$timeout",function(e){return new t(e)}]},t.prototype.link=function(t,e){var n=this,i=e.attr("class")?e.attr("class"):"",o=this.getPlatformClass();this.$timeout(function(){r.addResizeEventListener(e[0],function(){var t,r=e.width();t=r<=n.smallMobileMaxWidth?"mobile-small":r<=n.mobileMaxWidth?"mobile":"desktop";var a=[];r<=n.verticalMenuMinWidth&&a.push("vertical-menu-min-width"),e.attr("class",i+" "+o+" "+t+" "+a.join(" "))})}).catch(a.handleWarning)},t.prototype.getPlatformClass=function(){return o.isPlatform(o.Platform.IOS)?"ios":""},t}();e.LayoutDetectorDirective=s,i.module("IVWebApp").directive("layoutDetector",s.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(1391);var i=n(2);n(1392),n(1396);var r=function(){function t(){this.restrict="E",this.templateUrl="WelcomeScreenUI/EntryScreen.html"}return t.factory=function(){return function(){return new t}},t}();e.EntryScreenDirective=r,i.module("IVWebApp").directive("entryScreen",r.factory())},function(t,e){var n="WelcomeScreenUI/EntryScreen.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,"<modal>\n\t<welcome-screen></welcome-screen>\n\t<welcome-screen-selector></welcome-screen-selector>\n\t<login-screen></login-screen>\n</modal>\n")}]),t.exports=n},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},a=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var s=n(2);n(1393),n(1394);var c=n(81),l=n(8),u=n(326),d=n(232),p=function(t){function e(e,n,i,r,o,a,s,c){var u=t.call(this,s.find(".modal"))||this;return u.UserService=e,u.SidebarMenuService=n,u.StorageService=i,u.InstanceInformationService=r,u.AuthenticationService=o,u.FeatureFlagsService=a,u.settingsLink='<a class="clickable" ng-click="vm.goToSettings()" translate translate-context="title">Settings</a>',u.managementLink='<a class="clickable" ng-click="vm.goToDatasetManagement()" translate translate-context="title">Dataset Management</a>',u.doNotShowKey="welcome_screen_hide",c.initialized.then(function(){return u.docsUrl=c.getDocumentationLink("setup/datasets.html")}).catch(l.handleWarning),u.AuthenticationService.onAuthenticationChanged.connect(function(){return u.update()}),u.update().catch(l.handleWarning),u}return r(e,t),e.$inject=["UserService","SidebarMenuService","StorageService","InstanceInformationService","AuthenticationService","FeatureFlagsService","$element","UrlService"],Object.defineProperty(e.prototype,"doNotShow",{get:function(){return this.StorageService.get(this.doNotShowKey)},set:function(t){this.StorageService.set(this.doNotShowKey,t)},enumerable:!0,configurable:!0}),e.prototype.goToSettings=function(){this.hideModal(),this.SidebarMenuService.isMenuHidden=!1,this.SidebarMenuService.goToItem(this.SidebarMenuService.getItem(c.SidebarMenuItemsKey.SETTINGS)).catch(l.handleWarning)},e.prototype.goToDatasetManagement=function(){this.hideModal(),this.SidebarMenuService.isMenuHidden=!1,this.SidebarMenuService.goToItem(this.SidebarMenuService.getItem(c.SidebarMenuItemsKey.SETTINGS)).catch(l.handleWarning),this.SidebarMenuService.goToItem(this.SidebarMenuService.getItem(c.SidebarMenuItemsKey.SETTINGS_DATASET_MANAGEMENT)).catch(l.handleWarning)},e.prototype.isUserLoggedIn=function(){return this.UserService.isUserLoggedIn()},e.prototype.isAdmin=function(){return this.UserService.isAdmin()},e.prototype.getUsername=function(){return this.isUserLoggedIn()?this.UserService.userInfo.getDisplayName():""},e.prototype.update=function(){return o(this,void 0,void 0,function(){var t,e;return a(this,function(n){switch(n.label){case 0:return[4,this.showWelcome()];case 1:return t=n.sent(),[4,this.isPaas()];case 2:return e=n.sent(),t&&!e?this.showModal():this.hideModal(),[2]}})})},e.prototype.showWelcome=function(){return o(this,void 0,void 0,function(){var t,e;return a(this,function(n){switch(n.label){case 0:return[4,this.InstanceInformationService.getInformation()];case 1:return(t=n.sent()).isEmpty?this.doNotShow?[2,!1]:!(e=this.AuthenticationService.currentUser)||e.isGuest()||e.isAdmin()?t.isPrivate&&!this.UserService.isUserLoggedIn()?[2,!1]:[2,!0]:[2,!1]:[2,!1]}})})},e.prototype.isPaas=function(){return o(this,void 0,void 0,function(){return a(this,function(t){return[2,this.FeatureFlagsService.isEnabled(d.FeatureFlag.CLOUD_PROCESSING).then(function(t){return!0}).catch(function(t){return!1})]})})},e}(u.AbstractModalController);e.WelcomeScreenController=p;var h=function(){function t(){this.restrict="E",this.templateUrl="WelcomeScreenUI/WelcomeScreen.html",this.controller=p,this.controllerAs="vm",this.scope=!0,this.bindToController={}}return t.factory=function(){return function(){return new t}},t}();e.WelcomeScreenDirective=h,s.module("IVWebApp").directive("welcomeScreen",h.factory())},function(t,e,n){var i="WelcomeScreenUI/WelcomeScreen.html",r='<div id="welcome-screen" class="modal fade" tabindex="-1" role="dialog" data-backdrop="static">\n\t<div class="modal-dialog">\n\t\t<div class="modal-content">\n\t\t\t<div class="modal-header no-border text-center">\n\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t data-dismiss="modal"\n\t\t\t\t ng-src="'+n(35)+'"\n\t\t\t\t alt="{{\'Close\'|translate}}">\n\t\t\t\t<h3>\n\t\t\t\t\t<span translate\n\t\t\t\t\t translate-context="title"\n\t\t\t\t\t translate-params-username="vm.getUsername()">\n\t\t\t\t\t\tWelcome {{username}}\n\t\t\t\t\t</span>\n\t\t\t\t</h3>\n\t\t\t</div>\n\t\t\t<div ng-if="vm.modalContentShown" class="modal-body container-fluid">\n\t\t\t\t<div>\n\t\t\t\t\t<div ng-if="!vm.isAdmin()" class="form-group" translate>\n\t\t\t\t\t\tTo set up your instance, please sign in as admin:\n\t\t\t\t\t</div>\n\t\t\t\t\t<login-form></login-form>\n\t\t\t\t</div>\n\t\t\t\t<div ng-if="vm.isAdmin()">\n\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t<ok-button ng-click="vm.goToDatasetManagement()">\n\t\t\t\t\t\t\t<span translate>Upload your data now</span>\n\t\t\t\t\t\t</ok-button>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t<span translate translate-html-params-settings-link="vm.settingsLink"\n\t\t\t\t\t\t translate-html-params-management-link="vm.managementLink">\n\t\t\t\t\t\t\tAlternatively, manage your instance any time in {{settingsLink}} under {{managementLink}}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div ng-if="vm.isAdmin()" class="modal-footer">\n\t\t\t\t<a ng-if="vm.isAdmin()" class="float-left" href="{{vm.docsUrl}}" target="_blank"\n\t\t\t\t translate>\n\t\t\t\t\tLearn more\n\t\t\t\t</a>\n\t\t\t\t<div class="checkbox float-right no-margin">\n\t\t\t\t\t<label>\n\t\t\t\t\t\t<input type="checkbox" ng-model="vm.doNotShow">\n\t\t\t\t\t\t<span translate>Do not show again</span>\n\t\t\t\t\t</label>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){var i=n(11),r=n(1395);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"welcome-screen .modal .modal-header{padding:15px 60px}welcome-screen .modal .modal-header h3{margin-top:0}welcome-screen .modal .modal-body{text-align:center}welcome-screen .modal login-form{display:block;max-width:300px;margin:0 auto}",""]),t.exports=e},function(t,e,n){"use strict";(function(t){var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},a=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var s=n(2);n(1397),n(1398);var c=n(326),l=n(8),u=function(e){function n(n,i,r,o){var a=e.call(this,o.find(".modal"))||this;return a.InstanceInformationService=n,a.UserService=i,a.AuthenticationService=r,a.modalElement.on("shown.bs.modal",function(){return t(".modal-backdrop").css({opacity:1})}),a.modalElement.on("hidden.bs.modal",function(){return t(".modal-backdrop").css({opacity:""})}),r.onAuthenticationChanged.connect(function(){return a.update()}),r.showLoginScreenModal.connect(function(){return a.showModal()}),a.update().catch(l.handleWarning),a}return r(n,e),n.$inject=["InstanceInformationService","UserService","AuthenticationService","$element"],n.prototype.update=function(){return o(this,void 0,void 0,function(){return a(this,function(t){switch(t.label){case 0:return[4,this.AuthenticationService.initialized];case 1:return t.sent(),this.UserService.isUserLoggedIn()?(this.hideModal(),[2]):[4,this.InstanceInformationService.getInformation()];case 2:return t.sent().isPrivate?(this.showModal(),[2]):[2]}})})},n}(c.AbstractModalController);e.LoginScreenController=u;var d=function(){function t(){this.restrict="E",this.templateUrl="WelcomeScreenUI/LoginScreen.html",this.controller=u,this.controllerAs="vm",this.scope=!0,this.bindToController={}}return t.factory=function(){return function(){return new t}},t}();e.LoginScreenDirective=d,s.module("IVWebApp").directive("loginScreen",d.factory())}).call(this,n(19))},function(t,e){var n="WelcomeScreenUI/LoginScreen.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div id="login-screen" class="modal fade" tabindex="-1" role="dialog" data-backdrop="static"\n data-keyboard="false">\n\t<div class="modal-dialog">\n\t\t<div class="modal-content">\n\t\t\t<div class="modal-header no-border text-center">\n\t\t\t\t<h3>\n\t\t\t\t\t<span translate translate-context="title">\n\t\t\t\t\t\tWelcome\n\t\t\t\t\t</span>\n\t\t\t\t</h3>\n\t\t\t</div>\n\t\t\t<div ng-if="vm.modalContentShown" class="modal-body container-fluid">\n\t\t\t\t<login-form></login-form>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1399);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"login-screen .modal .modal-header{padding:15px 60px}login-screen .modal .modal-header h3{margin-top:0}login-screen .modal .modal-body{text-align:center}login-screen .modal login-form{display:block;max-width:300px;margin:0 auto}",""]),t.exports=e},function(t,e,n){var i="BodyUI/IvBody.html",r='<div class="indoorViewer" layout-detector>\n\t<entry-screen></entry-screen>\n\n\t\x3c!--Sidebar preview menu--\x3e\n\t<sidebar-preview-menu ng-class="{\'slide-left\': !vm.isPreviewMenuVisible()}">\n\t</sidebar-preview-menu>\n\n\t\x3c!--Sidebar menu--\x3e\n\t<sidebar-menu></sidebar-menu>\n\n\t\x3c!--Right toolbox menu--\x3e\n\t<toolbox-menu></toolbox-menu>\n\n\t<div class="indoorViewer-scene" resize-event="vm.resizeViewHandler()">\n\t\t<button type="button" id="swap-scenes-mobile"\n\t\t class="btn btn-default non-desktop no-border-width"\n\t\t ng-if="vm.isViewSwapAllowed()"\n\t\t ng-class="{\'map\': vm.isMapPrimaryView(),\n\t\t \'panorama\': vm.isPanoPrimaryView(),\n\t\t \'slide-down\': vm.doSlideDown()}"\n\t\t ng-click="vm.swapScenes()">\n\t\t\t\x3c!--Swap to panorama--\x3e\n\t\t\t<img class="ic_svg" ng-if="vm.isMapPrimaryView()"\n\t\t\t ng-src="'+n(426)+'">\n\t\t\t\x3c!--Swap to map--\x3e\n\t\t\t<img class="ic_svg" ng-if="vm.isPanoPrimaryView()"\n\t\t\t ng-src="'+n(427)+'">\n\t\t\t<br>\n\t\t</button>\n\n\t\t\x3c!--Main Panel (shrunken when the right toolbox menu is expanded)--\x3e\n\t\t<div>\n\t\t\t\x3c!--Navigation bar menu--\x3e\n\t\t\t<navbar-menu></navbar-menu>\n\n\t\t\t\x3c!--Main scene webGL container--\x3e\n\t\t\t<iv-main-view class="main-view"\n\t\t\t tabindex="0" ng-show="!vm.isGeoRegistrationMode()"\n\t\t\t deferred="vm.mainViewDeferred"></iv-main-view>\n\n\t\t\t\x3c!-- Geo registration open layers map --\x3e\n\t\t\t<geo-registration-map\n\t\t\t\t\tng-if="vm.isGeoRegistrationMode()"></geo-registration-map>\n\t\t</div>\n\n\t\t\x3c!-- Dataset alignment viewport name labels and controller --\x3e\n\t\t<point-cloud-viewport></point-cloud-viewport>\n\n\t\t\x3c!--Inset Panel - border, webGL scene, UI buttons --\x3e\n\t\t<div id="insetPanel" class="z-index-2 border-radius"\n\t\t ng-show="vm.showSecondaryView()"\n\t\t ng-class="{ \'hover\': vm.isSecondaryViewHovered(),\n\t\t \'transition-hover-longer-delay\': vm.useLongerTransition(),\n\t\t \'margin-bottom-big\': vm.isMapPrimaryView() }"\n\t\t ng-mouseleave="vm.fixCursor()">\n\n\t\t\t<iv-map-view class="map-view" tabindex="1"\n\t\t\t deferred="vm.mapViewDeferred"></iv-map-view>\n\n\t\t\t<div class="swap-views-button">\n\t\t\t\t<span ng-click="vm.swapScenes()"\n\t\t\t\t class="glyphicon glyphicon-resize-full"\n\t\t\t\t ng-if="vm.isViewSwapAllowed()"></span>\n\t\t\t</div>\n\t\t</div>\n\n\t\t\x3c!--POI, routing--\x3e\n\t\t<left-panel></left-panel>\n\n\t\t<div id="rightControls">\n\t\t\t\x3c!-- FIXME move out into own directive --\x3e\n\t\t\t\x3c!-- Floor changer --\x3e\n\t\t\t<div id="floorChanger" class="z-index-2 border-radius">\n\t\t\t\t<div ng-include src="\'templates/FloorChanger.html\'"></div>\n\t\t\t</div>\n\t\t\t\x3c!-- Map View zoom controls --\x3e\n\t\t\t<div id="mapZoomControls" class="z-index-2 non-mobile" ng-if="vm.showMapZoomControls()">\n\t\t\t\t<zoom-control (zoom-in)="vm.zoomMapView(true)" (zoom-out)="vm.zoomMapView(false)">\n\t\t\t\t</zoom-control>\n\t\t\t</div>\n\t\t</div>\n\n\t\t\x3c!--bottom left links--\x3e\n\t\t<div id="BLLinks" ng-class="{\'above-map-info\' : vm.isMapPrimaryView()}">\n\t\t\t<feedback></feedback>\n\t\t</div>\n\n\t\t<div>\n\t\t\t\x3c!-- FIXME move out into own directive --\x3e\n\t\t\t\x3c!--Modals from menus needed to be moved outside, since inside fullscreen menu pages their z-index is overriden --\x3e\n\t\t\t\x3c!--by the fullscreen menu\'s z-index--\x3e\n\t\t\t<div ng-include src="\'templates/menu/ModalsInMenus.html\'"></div>\n\n\t\t\t<vector-map-upload></vector-map-upload>\n\n\t\t\t<modal>\n\t\t\t\t<affine-ref-sys-list></affine-ref-sys-list>\n\t\t\t</modal>\n\t\t</div>\n\n\t\t\x3c!--Display a simple message to user in a modal box e.g. when image/poi in URL dont exist --\x3e\n\t\t<modal>\n\t\t\t<message-reporting></message-reporting>\n\t\t</modal>\n\n\t\t\x3c!-- FIXME move out into own directive --\x3e\n\t\t\x3c!--WebGL missing error message--\x3e\n\t\t<div id="webGlMissing" class="webGlMissing" style="display: none;">\n\t\t\t<div ng-include src="\'templates/WebGLMissing.html\'"></div>\n\t\t</div>\n\n\t\t\x3c!-- Cover the page until we have finished loading everything to avoid displaying a sketchy UI --\x3e\n\t\t<div id="modal-cover" class="modal-progress-bg"></div>\n\n\t\t\x3c!-- Server status check div --\x3e\n\t\t<modal>\n\t\t\t<status-check></status-check>\n\t\t</modal>\n\n\t\t\x3c!--About modal--\x3e\n\t\t<about></about>\n\n\t\t\x3c!-- This modal is used whenever a delete confirmation is needed from a Layer.\n\t\t\t Remember to redeclare the onConfirmCallback() on the scope from the Layer,\n\t\t\t see POILayer.addPoiHoverEventHandlers for an example--\x3e\n\t\t<delete-confirmation-modal delete-confirmation-id="delete-confirmation-layer-modal"\n\t\t on-confirm-callback="onConfirmCallback()">\n\t\t</delete-confirmation-modal>\n\t</div>\n\n\t\x3c!-- Progress reporting div --\x3e\n\t<progress-report></progress-report>\n</div>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(141),o=n(25),a=n(40);n(27),n(27),n(15),n(38);var s=n(147);n(1402),n(1412);var c=n(148),l=n(21),u=n(81),d=(n(24),n(202),n(6)),p=n(0),h=n(0),f=n(27),g=n(38),m=n(15),v=n(24),y=n(202),b=function(){function t(t,e,n,i,r,o){this.UserService=t,this.SidebarMenuService=e,this.ConfigService=n,this.ModeService=i,this.VectorMapService=r,this.gettext=o,this.initSideMenuItem()}return t.prototype.initSideMenuItem=function(){var t=this,e=(new c.SidebarMenuItemBuilder).setKey(u.SidebarMenuItemsKey.USER).setTitle(this.gettext("User",void 0,"title")).setIcon(new r.IconInfo("material-icons","person")).setIsVisible(function(){return t.ConfigService.getBoolean(o.Configs.MENU_LOGIN_VISIBLE,!0)&&t.ModeService.isNormalMode()&&!t.VectorMapService.isVectorMapEditorActive&&a.isMobileLayout()}).setTemplate(l.TemplateName.LOGIN_MENU).setClassCallback(function(){return t.UserService.isUserLoggedIn()?"sidebar-menu-item-user user-logged-in":"sidebar-menu-item-user"}).setOrder(s.SidebarMenuItemsOrder.USER).build();this.SidebarMenuService.addItem(e)},t.ɵfac=function(e){return new(e||t)(h.ɵɵinject(f.UserService),h.ɵɵinject(g.SidebarMenuService),h.ɵɵinject(m.ConfigService),h.ɵɵinject(v.ModeService),h.ɵɵinject(y.VectorMapService),h.ɵɵinject("gettext"))},t.ɵprov=h.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.UserModule=b,h.ɵsetClassMetadata(b,[{type:p.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:f.UserService},{type:g.SidebarMenuService},{type:m.ConfigService},{type:v.ModeService},{type:y.VectorMapService},{type:void 0,decorators:[{type:p.Inject,args:["gettext"]}]}]},null),i.module("IVWebApp").service("UserModule",d.downgradeInjectable(b))},function(t,e,n){"use strict";n.r(e),function(t){var e=n(2),i=n(118),r=n(89),o=(n(1403),n(178),n(92)),a=(n(1408),n(72)),s=(n(606),n(8)),c=n(16),l=n(114);function u(n,u,d,p,h,f,g,m,v,y,b,w,S,x,M,E,C){var A;n.UserService=p,n.GroupService=h,n.LicenseService=M,n.loginInProgress=!1,n.logoutInProgress=!1,n.wrongUserCredentials=!1,n.passwordExpired=!1,n.error=void 0,n.selectedUsers=[],n.edited={},n.adding={},n.docsUrl="",n.permissionsData=n.permissionsData||{},n.groupsTree=(A={showChecks:!0,selectable:!1,showAttributes:!1,excludeGroupId:l.GroupService.publicGroupId},new i.GroupsTree(h,A)),n.groupsData=[],n.warningDialogConfig={TITLE:x("Unsaved Changes",void 0,"title"),TEXT:x("Your changes are not saved and will be lost if you proceed. Are you sure you want to leave?")},n.current_page="USERS",n.isUserLoggedIn=p.isUserLoggedIn,n.showDocumentation=function(){return P||p.isUserLoggedIn()},n.logout=function(){function t(){n.logoutInProgress=!1}n.logoutInProgress=!0,p.logout().then(R).then(t).catch(t)},n.isLogoutDisabled=function(){return m.loggedInWithToken},n.getNrOfUserAttributes=function(t){var e=p.userInfo.attributes;return t?Object.keys(e).filter(function(t){return e[t]}).length:Object.keys(e).length},n.removeUsers=function(t){Object(e.forEach)(t,function(t){p.removeUser(t).then(function(){_.remove(T,{id:t}),M.initialize(!0).catch(s.handleWarning)}).catch(function(){var e=n.getUserById(t,n.permissionsData.users);f.showMessage(d.getString("Error While Removing the User {{username}}",{username:e.username},"title"),d.getString("The user has not been removed."))})})},n.isUserVisibleInList=L,n.isUserEnabledInList=N,n.selectAllUsers=function(){n.selectedUsers=n.permissionsData.users.map(function(t){return L(t)&&N(t)?t.id:void 0}).filter(Boolean),n.updateGroupsForSelectedUsers()},n.deselectAllUsers=function(){n.selectedUsers=[],n.updateGroupsForSelectedUsers()},n.refreshUsersList=function(){n.permissionsData.users=void 0,v.findAll(!0)},n.getUserById=function(t,e){return _.find(e,{id:t})},n.updateGroupsForSelectedUsers=function(){var t=F();n.groupsTree.checkGroups(t,i.CheckState.UNCHECKED),n.groupsTree.expandGroups(t,!1),n.groupsTree.enableGroups(t,n.selectedUsers.length>0);var r={};Object(e.forEach)(n.selectedUsers,function(t){var i=n.getUserById(t,n.permissionsData.users);Object(e.forEach)(U(i.primaryGroups),function(t){r[t]=r[t]||{},r[t].count=r[t].count?r[t].count+1:1})}),Object(e.forEach)(r,function(e,r){var o=n.groupsTree.getGroupById(r,t);e.has_ancestor?(n.groupsTree.checkGroup(o,i.CheckState.CHECKED),n.groupsTree.enableGroup(o,!1)):e.count===n.selectedUsers.length?n.groupsTree.checkGroup(o,i.CheckState.CHECKED):e.count>0&&n.groupsTree.checkGroup(o,i.CheckState.SEMI_CHECKED),n.groupsTree.revealGroup(o,t)})},n.updateSelectedUsersAfterGroupCheck=function(t){var i=F(),r=h.publicGroupId,o=i.filter(function(t){return n.groupsTree.isGroupChecked(t)&&t.id!==r}),a=i.filter(function(t){return n.groupsTree.isGroupSemiChecked(t)&&t.id!==r}),s=n.groupsTree.getGroupsIds(o),c=n.groupsTree.getGroupsIds(a);Object(e.forEach)(n.selectedUsers,function(t){var i=n.getUserById(t,n.permissionsData.users),o=Object(e.copy)(s);o.push(r),Object(e.forEach)(c,function(t){i.primaryGroups.indexOf(t)>-1&&o.push(t)});var a=n.getUserById(t,v.data);n.groupsTree.sameGroupsIds(o,a.primaryGroups)?delete T[i.id]:(i.primaryGroups=o,T[i.id]=i)})},n.toggleGroupChecked=function(t){n.groupsTree.isGroupEnabled(t)&&(n.groupsTree.isGroupChecked(t)||n.groupsTree.isGroupSemiChecked(t)?function(t){n.groupsTree.checkGroup(t,i.CheckState.UNCHECKED),n.updateSelectedUsersAfterGroupCheck(t)}(t):function(t){n.groupsTree.checkGroup(t,i.CheckState.CHECKED),n.groupsTree.checkGroups(n.groupsTree.getGroupAncestors(t,F()),i.CheckState.UNCHECKED),n.groupsTree.checkGroups(n.groupsTree.getGroupDescendants(t),i.CheckState.UNCHECKED),n.updateSelectedUsersAfterGroupCheck(t)}(t))},n.toggleGroupExpanded=function(t){n.groupsTree.toggleGroupExpanded(t)},n.resetUserGroups=j,n.saveUserGroups=function(){Object.keys(T).length&&function(){var t=[];function n(){v.findAll(),M.initialize(!0).catch(s.handleWarning),T={}}Object(e.forEach)(T,function(e){var n=p.updateUserPrimaryGroups(e.id,U(e.primaryGroups));t.push(n)}),O.wrapPromises(t).then(n).catch(function(){f.showMessage(d.getString("Error While Updating Users",void 0,"title"),d.getString("The users have not been updated")),j(),n()})}()},n.isDataChanged=V,n.getAllGroups=F,n.discardPublicGroup=U,n.editProfile=function(e){e||(e=p.userInfo),n.edited=v.create().copy(e),t("#edit-profile-modal").modal()},n.addUser=function(){n.adding=v.create(),n.adding.provider=a.UserProvider.LOCAL,t("#save-user-modal").modal()},n.canAddUser=function(){return B()&&M.isFeatureEnabled(o.LicenseFeatureType.USER_MANAGEMENT)},n.userProviderIsPreauth=function(){return p.userInfo&&p.userInfo.provider===a.UserProvider.PREAUTH},n.warningContinueHandler=function(){j(),S.continueHoldAction(),Object(e.element)(document.getElementById("users-unsaved-changes-modal")).modal("hide")},n.isSavingInProgress=function(){return O.isInProgress},n.getFriendlyName=function(t){return t.firstName&&t.lastName?"".concat(t.firstName," ").concat(t.lastName," (").concat(t.username,") (").concat(t.provider,")"):"".concat(t.username," (").concat(t.provider,")")};var T={},O=new r.PromiseProgressWrapper,P=!1;function I(){return!!V()&&(Object(e.element)(document.getElementById("users-unsaved-changes-modal")).modal("show"),!0)}function k(){n.permissionsData.users=D(v.data),n.permissionsData.isDataChanged=V}function D(t){return p.userInfo?Object(e.copy)(t).sort(function(t,e){return t.id===p.userInfo.id?-1:e.id===p.userInfo.id?1:t.username.localeCompare(e.username)}):[]}function R(){return(B()?v.findAll().then(k):(v.resetCache(),k(),Promise.resolve())).then(function(){return function(){h.clearGroups();var t=p.userInfo,i=t?t.primaryGroups:[0];return h.getGroupsAsTree(i).then(function(t){n.permissionsData.groups=Object(e.copy)(t),n.groupsTree.setGroups(n.permissionsData.groups),B()&&n.updateGroupsForSelectedUsers(),n.groupsData=h.createGroupsArray(n.permissionsData.groups)})}()})}function L(t){return t.id>=0}function N(t){return t.id!==p.userInfo.id}function j(){T={},n.permissionsData.users=D(v.data),n.updateGroupsForSelectedUsers()}function V(){return Object.keys(T).length>0}function F(){return n.permissionsData?h.createGroupsArray(n.permissionsData.groups):[]}function U(t){return n.groupsTree.discardPublicGroup(t)}function B(){return p.isAdmin()}!function(){var t=S.getActiveItem();t&&(t.onExit=I);var e=new c.SignalConnections;e.add(v.entityCreated.connect(function(){return k()})),e.add(v.entityRemoved.connect(function(){return k()})),m.initialized.then(function(){return R().catch(s.handleWarning)}),e.add(m.onAuthenticationChanged.connect(function(){return R().catch(s.handleWarning)})),E.initialized.then(function(){return n.docsUrl=E.getDocumentationLink()}).catch(s.handleWarning),C.getInformation().then(function(t){return P=t.isCloudInstance}).catch(s.handleWarning),n.$on("$destroy",function(){return e.disconnectAll()})}()}u.$inject=["$scope","$window","gettextCatalog","UserService","GroupService","MessageReportingService","IV","AuthenticationService","UserRepository","RestService","JWTTokenService","ConfigService","SidebarMenuService","gettext","LicenseService","UrlService","InstanceInformationService"],Object(e.module)("IVWebApp").controller("UserController",u)}.call(this,n(19))},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1404),n(1405),n(178);var r=n(72);n(606);var o=n(21),a=function(){function e(t,e,n,i,r,o){var a=this;this.UserService=t,this.MessageReportingService=e,this.gettextCatalog=n,this.UserRepository=i,this.LicenseService=r,this.TrackingService=o,this.usernameRequiredLength={min:3,max:254},this.validationResults={usernameUnique:!0,emailFormat:!0,currentPassword:!0},this.isCurrentUser=function(){return a.UserService.userInfo&&a.UserService.userInfo.id===a.user.id},this.isUserInfoValid=function(){return!!a.user&&(void 0===a.user.id?a.isUsernameFormatValid()&&a.isPasswordValid()&&a.isPasswordRepeatValid():a.isUsernameFormatValid()&&a.passwordsMatch(a.passwordNew,a.passwordNewRepeat))}}return e.$inject=["UserService","MessageReportingService","gettextCatalog","UserRepository","LicenseService","TrackingService"],Object.defineProperty(e.prototype,"user",{get:function(){return this.controllerUser},set:function(t){this.controllerUser=t,this.clearPasswords()},enumerable:!0,configurable:!0}),e.prototype.isUsernameEditable=function(){return this.user&&void 0===this.user.id},e.prototype.isUsernameFormatValid=function(){if(!this.user)return!1;var t=this.user.username;return t&&t.length>=this.usernameRequiredLength.min&&t.length<=this.usernameRequiredLength.max&&/^[a-zA-Z0-9-_@.]*$/.test(t)},e.prototype.isPasswordValid=function(){return this.isPasswordFormatValid(this.password)},e.prototype.isPasswordRepeatValid=function(){return this.isPasswordFormatValid(this.passwordRepeat)&&this.passwordsMatch(this.password,this.passwordRepeat)},e.prototype.isCurrentPasswordNeeded=function(){return!this.UserService.isAdmin()||this.isCurrentUser()},e.prototype.saveProfile=function(){var t=this;(void 0===this.user.id?this.addUser():this.updateUserProfile()).then(function(){return t.closeModal()}).catch(function(e){if(e.data&&e.data.msg){var n=!1;if(-1!==e.data.msg.toLowerCase().indexOf("user exists in the database")&&(t.validationResults.usernameUnique=!1,n=!0),-1!==e.data.msg.toLowerCase().indexOf("not a well-formed email address")&&(t.validationResults.emailFormat=!1,n=!0),-1!==e.data.msg.toLowerCase().indexOf("invalid current password")&&(t.validationResults.currentPassword=!1,n=!0),n)return void t.clearError()}t.reportError(e)})},e.prototype.closeModal=function(){this.clearPasswords(),this.clearError(),t("#"+this.modalId).modal("hide")},e.prototype.passwordsMatch=function(t,e){return!t||t===e},e.prototype.isUserLocal=function(){return this.user&&this.user.provider===r.UserProvider.LOCAL},e.prototype.clearPasswords=function(){this.password=void 0,this.passwordRepeat=void 0,this.passwordNew=void 0,this.passwordNewRepeat=void 0},e.prototype.isPasswordFormatValid=function(t){return!!t},e.prototype.addUser=function(){return this.user.password=this.password,o.TrackingService.trackUserAdded(),this.UserRepository.saveUser(this.user)},e.prototype.updateUserProfile=function(){var t=this;return this.UserService.updateUserProfile(this.user).then(function(){return t.passwordNew?t.UserService.changePassword(t.user.id,t.user.username,t.password,t.passwordNew).then(function(){return t.user}):t.user})},e.prototype.reportError=function(t){this.error={text:this.gettextCatalog.getString("Error while saving the user {{name}}",{name:this.user.username}),status:t.status,statusText:t.statusText&&t.statusText.length?t.statusText:this.gettextCatalog.getString("Network error"),details:t.data?t.data.msg:""}},e.prototype.clearError=function(){this.error=void 0},e}();e.UserEditorController=a;var s=function(){function t(){this.restrict="E",this.templateUrl="User/UserEditor.html",this.controller=a,this.controllerAs="vm",this.scope=!0,this.bindToController={modalId:"@",user:"="}}return t.factory=function(){return function(){return new t}},t}();e.UserEditorDirective=s,i.module("IVWebApp").directive("userEditor",s.factory())}).call(this,n(19))},function(t,e,n){var i="User/UserEditor.html",r='<modal>\n\t<div class="modal fade" id="{{vm.modalId}}" tabindex="-1" role="dialog" data-backdrop="static"\n\t aria-hidden="true">\n\t\t<div class="modal-dialog">\n\t\t\t<div class="modal-content panel-autoscroll">\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<h4>\n\t\t\t\t\t\t<span ng-if="vm.user.id === undefined" translate translate-context="title">Add User</span>\n\t\t\t\t\t\t<span ng-if="vm.user.id !== undefined && !vm.isCurrentUser()" translate translate-context="title">Edit User</span>\n\t\t\t\t\t\t<span ng-if="vm.user.id !== undefined && vm.isCurrentUser()" translate translate-context="title">Edit Profile</span>\n\t\t\t\t\t</h4>\n\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t data-dismiss="modal"\n\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}">\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-body">\n\t\t\t\t\t\x3c!-- Required fields --\x3e\n\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t<span translate translate-context="followed by *-symbol (also translatable)">\n\t\t\t\t\t\t\tFields marked with this symbol are required:\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<required></required>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t\x3c!-- Username --\x3e\n\t\t\t\t\t<div class="form-group"\n\t\t\t\t\t ng-class="{\'has-success\' : vm.isUsernameEditable() && vm.isUsernameFormatValid() && vm.validationResults.usernameUnique,\n\t\t\t\t\t\t \'has-error\' : vm.isUsernameEditable() && (!vm.isUsernameFormatValid() || !vm.validationResults.usernameUnique)}">\n\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t<span translate>Username</span>\n\t\t\t\t\t\t\t<required></required>\n\t\t\t\t\t\t</p>\n\t\t\t\t\t\t<input class="form-control form-group"\n\t\t\t\t\t\t maxlength="{{vm.usernameRequiredLength.max}}"\n\t\t\t\t\t\t ng-model="vm.user.username" ng-disabled="!vm.isUsernameEditable()"\n\t\t\t\t\t\t ng-change="vm.validationResults.usernameUnique = true" init-focus>\n\t\t\t\t\t\t<p ng-show="!vm.validationResults.usernameUnique" class="text-danger" translate>\n\t\t\t\t\t\t\tUsername is already being used\n\t\t\t\t\t\t</p>\n\t\t\t\t\t\t<div ng-show="!vm.isUsernameFormatValid() && vm.isUserLocal()">\n\t\t\t\t\t\t\t<p class="text-danger" style="margin-bottom:0"\n\t\t\t\t\t\t\t translate-params-min="vm.usernameRequiredLength.min"\n\t\t\t\t\t\t\t translate-params-max="vm.usernameRequiredLength.max" translate>\n\t\t\t\t\t\t\t\tRequired length: between {{min}} and {{max}}</p>\n\t\t\t\t\t\t\t<p class="text-danger" translate-params-symbols="\'(. _ - @)\'" translate>\n\t\t\t\t\t\t\t\tAllowed characters: alphanumeric with symbols {{symbols}}\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t\x3c!-- Password --\x3e\n\t\t\t\t\t<div ng-if="vm.user.id === undefined" class="form-group"\n\t\t\t\t\t ng-class="{\'has-success\': vm.isPasswordValid(),\n\t\t\t\t\t \'has-error\': !vm.isPasswordValid()}">\n\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t<span translate>Password</span>\n\t\t\t\t\t\t\t<required></required>\n\t\t\t\t\t\t</p>\n\t\t\t\t\t\t<input class="form-control" type="password" ng-model="vm.password" autocomplete="new-password">\n\t\t\t\t\t</div>\n\n\t\t\t\t\t\x3c!-- Password (repeated - must match) --\x3e\n\t\t\t\t\t<div ng-if="vm.user.id === undefined" class="form-group"\n\t\t\t\t\t ng-class="{\'has-success\': vm.isPasswordRepeatValid(),\n\t\t\t\t\t \'has-error\': !vm.isPasswordRepeatValid()}">\n\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t<span translate>Repeat password</span>\n\t\t\t\t\t\t\t<required></required>\n\t\t\t\t\t\t</p>\n\t\t\t\t\t\t<input class="form-control" type="password" ng-model="vm.passwordRepeat" autocomplete="new-password">\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<p ng-show="!vm.passwordsMatch(vm.password, vm.passwordRepeat)"\n\t\t\t\t\t ng-if="vm.user.id === undefined"\n\t\t\t\t\t class="text-danger" translate>\n\t\t\t\t\t\tPasswords do not match\n\t\t\t\t\t</p>\n\n\t\t\t\t\t\x3c!-- Optional fields --\x3e\n\n\t\t\t\t\t\x3c!-- First name --\x3e\n\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t<p translate>First name</p>\n\t\t\t\t\t\t<input class="form-control" ng-model="vm.user.firstName"\n\t\t\t\t\t\t ng-disabled="!vm.isUserLocal()">\n\t\t\t\t\t</div>\n\t\t\t\t\t\x3c!-- Last name --\x3e\n\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t<p translate>Last name</p>\n\t\t\t\t\t\t<input class="form-control" ng-model="vm.user.lastName"\n\t\t\t\t\t\t ng-disabled="!vm.isUserLocal()">\n\t\t\t\t\t</div>\n\t\t\t\t\t\x3c!-- Email --\x3e\n\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t<p translate>Email address</p>\n\t\t\t\t\t\t<input class="form-control" ng-model="vm.user.email"\n\t\t\t\t\t\t ng-change="vm.validationResults.emailFormat = true"\n\t\t\t\t\t\t ng-class="{\'has-error\' : !vm.validationResults.emailFormat }"\n\t\t\t\t\t\t ng-disabled="!vm.isUserLocal()">\n\t\t\t\t\t</div>\n\t\t\t\t\t<p ng-show="!vm.validationResults.emailFormat" class="text-danger" translate>\n\t\t\t\t\t\tWrong email format\n\t\t\t\t\t</p>\n\n\t\t\t\t\t\x3c!-- Change password - for existing user / user profile --\x3e\n\t\t\t\t\t<div class="panel-group" id="accordion" role="tablist" aria-multiselectable="true"\n\t\t\t\t\t ng-if="vm.user.id !== undefined && vm.isUserLocal()">\n\t\t\t\t\t\t<div class="panel panel-default">\n\t\t\t\t\t\t\t<div class="panel-heading" role="tab" id="headingOne">\n\t\t\t\t\t\t\t\t<h4 class="panel-title">\n\t\t\t\t\t\t\t\t\t<a role="button" data-toggle="collapse" data-parent="#accordion"\n\t\t\t\t\t\t\t\t\t href="#collapse-change-password" class="collapsed"\n\t\t\t\t\t\t\t\t\t aria-controls="collapse-change-password" translate\n\t\t\t\t\t\t\t\t\t translate-context="title">\n\t\t\t\t\t\t\t\t\t\tChange Password\n\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t</h4>\n\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t<div id="collapse-change-password" class="panel-collapse collapse"\n\t\t\t\t\t\t\t role="tabpanel" aria-labelledby="headingOne">\n\t\t\t\t\t\t\t\t<div class="panel-body">\n\t\t\t\t\t\t\t\t\t\x3c!-- Password --\x3e\n\t\t\t\t\t\t\t\t\t<div class="form-group" ng-if="vm.isCurrentPasswordNeeded()">\n\t\t\t\t\t\t\t\t\t\t<p translate>Current password</p>\n\t\t\t\t\t\t\t\t\t\t<input class="form-control" type="password"\n\t\t\t\t\t\t\t\t\t\t ng-model="vm.password">\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t<p ng-show="!vm.validationResults.currentPassword"\n\t\t\t\t\t\t\t\t\t class="text-danger" translate>\n\t\t\t\t\t\t\t\t\t\tInvalid current password\n\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t\t\x3c!-- New Password --\x3e\n\t\t\t\t\t\t\t\t\t<div class="form-group" ng-if="vm.user.id !== undefined">\n\t\t\t\t\t\t\t\t\t\t<p translate>New password</p>\n\t\t\t\t\t\t\t\t\t\t<input class="form-control" type="password"\n\t\t\t\t\t\t\t\t\t\t ng-model="vm.passwordNew" autocomplete="new-password">\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t<div class="form-group" ng-if="vm.user.id !== undefined">\n\t\t\t\t\t\t\t\t\t\t<p translate>Repeat new password</p>\n\t\t\t\t\t\t\t\t\t\t<input class="form-control" type="password"\n\t\t\t\t\t\t\t\t\t\t ng-model="vm.passwordNewRepeat" autocomplete="new-password">\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t<p ng-show="!vm.passwordsMatch(vm.passwordNew, vm.passwordNewRepeat)"\n\t\t\t\t\t\t\t\t\t ng-if="vm.user.id !== undefined"\n\t\t\t\t\t\t\t\t\t class="text-danger" translate>\n\t\t\t\t\t\t\t\t\t\tPasswords do not match\n\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t\x3c!-- general error reporting --\x3e\n\t\t\t\t\t<span class="text-danger" ng-show="!!vm.error">\n\t\t\t\t\t\t{{vm.error.text}}: {{vm.error.statusText}} ({{vm.error.status}})\n\t\t\t\t\t</span>\n\t\t\t\t\t<div ng-show="!!vm.error.details">\n\t\t\t\t\t\t{{vm.error.details}}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="modal-footer">\n\t\t\t\t\t<close-button ng-click="vm.closeModal()"></close-button>\n\t\t\t\t\t<save-button ng-disabled="!vm.isUserInfoValid()"\n\t\t\t\t\t ng-click="vm.saveProfile()"></save-button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1406);var r=function(){function t(){this.restrict="E",this.templateUrl="Core/Misc/Required.html"}return t.factory=function(){return function(){return new t}},t}();e.RequiredDirective=r,i.module("IVWebApp").directive("required",r.factory())},function(t,e){var n="Core/Misc/Required.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<span translate translate-context="Marker used for marking required fields in forms.">*</span>\n')}]),t.exports=n},function(t,e){var n="LicenseWarning/LicenseUserLimitWarning.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'\x3c!-- Approaching registered user limit --\x3e\n<div class="alert alert-warning license-user-limit-warning iv-panel-warning"\n ng-if="vm.isUserLimitMinusOneReached()">\n\t<span class="fa fa-exclamation-triangle" aria-hidden="true"></span>\n\t<div>\n\t\t<p translate\n\t\t translate-context="The parameters \'limit\' and \'link\' will be replaced with the appropriate value."\n\t\t translate-params-limit="vm.maxUsersWithgroups"\n\t\t translate-html-params-link="vm.LINK">\n\t\t\tYou can still assign 1 more user to a group, and then reach your subscription limit of {{limit}} users assigned to a group. If you would like to assign more users to a group in the future, you can always {{link}}.\n\t\t</p>\n\t</div>\n</div>\n\n\x3c!-- Reached registered user limit --\x3e\n<div class="alert alert-warning license-user-limit-warning iv-panel-warning"\n ng-if="vm.isUserLimitReached()">\n\t<span class="fa fa-exclamation-triangle" aria-hidden="true"></span>\n\t<div>\n\t\t<p translate\n\t\t translate-context="The parameters \'limit\' and \'link\' will be replaced with the appropriate value."\n\t\t translate-params-limit="vm.maxUsersWithgroups"\n\t\t translate-html-params-link="vm.LINK">\n\t\t\tYou have assigned all users allowed by your subscription to a group - {{limit}} users assigned to a group. If you would like to assign more users to a group, you need to {{link}} or unset the group from one of the existing users.\n\t\t</p>\n\t\t<p translate>\n\t\t\tPlease contact your service provider.\n\t\t</p>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1409),n(1410);var r=n(8),o=function(){function t(t,e,n){var i=this;this.$window=t,this.UserService=e,this.login="",this.password="",this.wrongUserCredentials=!1,this.loginInProgress=!1,this.passwordExpired=!1,this.passwordChangeFailed=!1,n.getInformation().then(function(t){i.oauthLoginUrl=t.oauthLoginUrl}).catch(r.handleWarning)}return t.$inject=["$window","UserService","InstanceInformationService"],t.prototype.isUserLoggedIn=function(){return this.UserService.isUserLoggedIn()},t.prototype.localLogin=function(){var t=this;this.loginInProgress=!0,this.UserService.localLogin(this.login,this.password).then(function(){t.login="",t.wrongUserCredentials=!1,t.onLoginFinally()}).catch(function(e){e.data&&"User credentials have expired"===e.data.msg?(t.wrongUserCredentials=!1,t.passwordExpiredResponse=e,t.credentialsExpiredError()):t.wrongUserCredentials=!0,t.onLoginFinally()})},t.prototype.onLoginFinally=function(){this.passwordExpired||(this.password=""),this.loginInProgress=!1},t.prototype.credentialsExpiredError=function(){this.passwordExpired=!0},t.prototype.changeExpiredPassword=function(){var t=this;this.loginInProgress=!0,this.passwordChangeFailed=!1,this.UserService.changePassword(this.passwordExpiredResponse.data.user_id,this.login,this.password,this.newPassword).then(function(){return t.changePasswordSuccess()}).catch(function(){return t.changePasswordError()})},t.prototype.changePasswordSuccess=function(){this.password=this.newPassword,this.newPassword=void 0,this.repeatNewPassword=void 0,this.passwordExpired=!1,this.localLogin(),this.loginInProgress=!1},t.prototype.changePasswordError=function(){this.passwordChangeFailed=!0,this.loginInProgress=!1},t.prototype.isOidcLoginAvailable=function(){return!!this.oauthLoginUrl},t.prototype.startOidcLogin=function(){this.$window.location.href=this.oauthLoginUrl+"?redirect_uri="+encodeURIComponent(this.$window.location.href)},t}();e.LoginFormController=o;var a=function(){function t(){this.restrict="E",this.templateUrl="Login/LoginForm.html",this.controller=o,this.controllerAs="vm",this.scope=!0,this.bindToController={}}return t.factory=function(){return function(){return new t}},t}();e.LoginFormDirective=a,i.module("IVWebApp").directive("loginForm",a.factory())},function(t,e,n){var i="Login/LoginForm.html",r='\x3c!-- Login spinner --\x3e\n<div ng-if="!vm.isUserLoggedIn() && vm.loginInProgress">\n\t<span class="spinner">\n\t\t<img class="in-btn-group" ng-src="'+n(94)+'">\n\t</span>\n</div>\n\n\x3c!-- Login form --\x3e\n<div ng-if="!vm.isUserLoggedIn() && !vm.loginInProgress && !vm.passwordExpired">\n\t<form class="form-horizontal" ng-submit="vm.localLogin()">\n\t\t<div class="form-group login-group">\n\t\t\t\x3c!-- Username input --\x3e\n\t\t\t<input class="login-username form-control"\n\t\t\t ng-model="vm.login"\n\t\t\t placeholder="{{\'Username\' | translate}}"\n\t\t\t init-focus>\n\t\t\t\x3c!-- Password input --\x3e\n\t\t\t<input type="password"\n\t\t\t class="login-password form-control margin-top-small"\n\t\t\t ng-model="vm.password"\n\t\t\t placeholder="{{\'Password\' | translate}}">\n\t\t</div>\n\n\t\t\x3c!-- Wrong credentials error --\x3e\n\t\t<div class="form-group" ng-if="vm.wrongUserCredentials">\n\t\t\t<span class="text-danger" translate>Wrong username or password</span>\n\t\t</div>\n\n\t\t\x3c!-- Login button --\x3e\n\t\t<ok-button type="submit"\n\t\t ng-show="!vm.isUserLoggedIn()"\n\t\t ng-disabled="!vm.login">\n\t\t\t<span translate>Sign in</span>\n\t\t</ok-button>\n\n\t\t\x3c!-- OAuth Login button --\x3e\n\t\t<ok-button ng-click="vm.startOidcLogin()"\n\t\t ng-show="!vm.isUserLoggedIn() && vm.isOidcLoginAvailable()"\n\t\t class="margin-top-small">\n\t\t\t<span translate>Sign in with OAuth</span>\n\t\t</ok-button>\n\t</form>\n</div>\n\n\x3c!-- Change expired password form --\x3e\n<div ng-if="!vm.isUserLoggedIn() && !vm.loginInProgress && vm.passwordExpired">\n\t<form class="form-horizontal" ng-submit="vm.changeExpiredPassword()">\n\t\t\x3c!-- Password expired form --\x3e\n\t\t<div class="form-group">\n\t\t\t<div class="form-group">\n\t\t\t\t<span class="text-danger" ng-if="!passwordChangeFailed" translate>\n\t\t\t\t\tThis is the first sign in. For security reasons, please change your password.\n\t\t\t\t</span>\n\t\t\t\t<span class="text-danger" ng-if="passwordChangeFailed" translate>Password change has failed</span>\n\t\t\t</div>\n\n\t\t\t\x3c!-- Password input --\x3e\n\t\t\t<div class="form-group margin-bottom-small">\n\t\t\t\t<input type="password" autocomplete="new-password"\n\t\t\t\t class="form-control"\n\t\t\t\t ng-model="vm.newPassword"\n\t\t\t\t placeholder="{{\'New password\' | translate}}"\n\t\t\t\t init-focus>\n\t\t\t</div>\n\n\t\t\t\x3c!-- Repeat password input --\x3e\n\t\t\t<div class="form-group">\n\t\t\t\t<input type="password" autocomplete="new-password"\n\t\t\t\t class="form-control"\n\t\t\t\t ng-model="vm.repeatNewPassword"\n\t\t\t\t placeholder="{{\'Repeat new password\' | translate}}">\n\t\t\t</div>\n\n\t\t\t\x3c!-- Change password button --\x3e\n\t\t\t<ok-button type="submit"\n\t\t\t ng-disabled="vm.repeatNewPassword !== vm.newPassword">\n\t\t\t\t<span translate>Change password</span>\n\t\t\t</ok-button>\n\t\t</div>\n\t</form>\n</div>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){var i=n(11),r=n(1411);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"login-form .form-horizontal .form-group{margin-left:0;margin-right:0}login-form button{width:100%}login-form .spinner{display:inline-block;text-align:center;width:100%}login-form .spinner>img{margin:10px auto}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1413),n(1414),n(50);var r=function(){function t(t,e){this.LanguageService=t,this.PoiService=e,this.language=this.LanguageService.getLanguage(this.LanguageService.getCurrentLanguage()),this.languages=this.LanguageService.getRegisteredLanguages()}return t.$inject=["LanguageService","PoiService"],t.prototype.getCurrentLanguage=function(){return this.LanguageService.getCurrentLanguage()},t.prototype.getBrowserLocale=function(){return this.LanguageService.getBrowserLocale()},t.prototype.changeLanguage=function(){var t=this.language.key;this.LanguageService.setLanguage(t).catch(function(){}),this.PoiService.poisChanged.emit()},t.prototype.resetToBrowserLanguage=function(){this.language=this.LanguageService.resetLanguage()},t}();e.LanguageSwitcherController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="I18N/LanguageSwitcher.html",this.controller=r,this.controllerAs="vm"}return t.factory=function(){return function(){return new t}},t}();e.LanguageSwitcherDirective=o,i.module("IVWebApp").directive("languageSwitcher",o.factory())},function(t,e){var n="I18N/LanguageSwitcher.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="panel-body no-padding-top no-padding-bottom">\n\t<label translate>\n\t\tLanguage\n\t</label>\n\t<div class="row">\n\t\t<select class="form-control"\n\t\t ng-class="(vm.getCurrentLanguage() !== vm.getBrowserLocale()) ? \'less-width\' : \'full-width\'"\n\t\t title="{{\'Language\' | translate}}"\n\t\t ng-model="vm.language"\n\t\t ng-options="language as language.nativeName for language in vm.languages | orderBy:\'nativeName\'"\n\t\t ng-change="vm.changeLanguage()">\n\t\t</select>\n\t\t<button id="resetLanguageButton" ng-if="vm.getCurrentLanguage() !== vm.getBrowserLocale()"\n\t\t type="button" class="btn btn-primary" title="{{\'Reset to browser default language\'|translate}}"\n\t\t ng-click="vm.resetToBrowserLanguage()">\n\t\t\t<i class="fa fa-repeat fa-flip-horizontal"></i>\n\t\t</button>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1415);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"language-switcher .panel-heading{background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom:1px solid #ddd;border-radius:0}language-switcher .form-control{margin-left:15px;float:left}language-switcher .form-control.full-width{width:calc(100% - 30px)}language-switcher .form-control.less-width{width:calc(100% - 70px)}language-switcher #resetLanguageButton{margin-right:10px;margin-top:1px;margin-left:2px;width:37px!important}",""]),t.exports=e},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(e,n,i,r,o,a,s,c,l,u,d,p,h){void 0===s&&(s=1/0),void 0===d&&(d=[]),void 0===p&&(p=!1),void 0===h&&(h=!0);var f=t.call(this,n,i,r,o,a,l,d,h)||this;return f.key=e,f.isVisible=r,f.order=s,f.onExit=c,f.isPreviewIconVisible=u,f.items=d,f.isFullscreen=p,f.active=!1,f}return r(e,t),e}(n(589).MenuItem);e.SidebarMenuItem=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(141),o=n(25),a=(n(15),n(38),n(24),n(147));n(1418),n(1422),n(1426),n(1430),n(1435),n(394),n(1440),n(1444),n(1448),n(597);var s=n(148),c=(n(31),n(21)),l=n(81),u=n(6),d=n(0),p=n(0),h=n(38),f=n(15),g=n(24),m=n(31),v=function(){function t(t,e,n,i,r){this.SidebarMenuService=t,this.ConfigService=e,this.ModeService=n,this.DatasetRepository=i,this.gettext=r,this.initSideMenuItem()}return t.prototype.initSideMenuItem=function(){var t=this,e=(new s.SidebarMenuItemBuilder).setKey(l.SidebarMenuItemsKey.DATASETS).setTitle(this.gettext("Datasets",void 0,"title")).setIcon(new r.IconInfo("material-icons","dashboard")).setIsVisible(function(){return t.ConfigService.getBoolean(o.Configs.MENU_DATASETS_VISIBLE,!0)&&(t.ModeService.isNormalMode()||t.ModeService.isNavGraphEditorMode()||t.ModeService.isMeasurementsMode())&&t.DatasetRepository.data.length>0}).setTemplate(c.TemplateName.DATASETS_MENU).setClassCallback(function(){return"sidebar-menu-item-datasets"}).setOrder(a.SidebarMenuItemsOrder.DATASETS).build();this.SidebarMenuService.addItem(e)},t.ɵfac=function(e){return new(e||t)(p.ɵɵinject(h.SidebarMenuService),p.ɵɵinject(f.ConfigService),p.ɵɵinject(g.ModeService),p.ɵɵinject(m.DatasetRepository),p.ɵɵinject("gettext"))},t.ɵprov=p.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.DatasetsModule=v,p.ɵsetClassMetadata(v,[{type:d.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:h.SidebarMenuService},{type:f.ConfigService},{type:g.ModeService},{type:m.DatasetRepository},{type:void 0,decorators:[{type:d.Inject,args:["gettext"]}]}]},null),i.module("IVWebApp").service("DatasetsModule",u.downgradeInjectable(v))},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1419),n(1420);var r=n(55),o=function(){function e(t,e){this.ModeService=t,this.SiteModelService=e}return e.$inject=["ModeService","SiteModelService"],e.prototype.toggleDatasetSelection=function(){this.areNoDatasetsSelected()?this.selectDatasets():this.deselectDatasets()},e.prototype.selectDatasets=function(){this.parentController.selectDatasets(this.datasets)},e.prototype.deselectDatasets=function(){this.parentController.deselectDatasets(this.datasets)},e.prototype.areAllDatasetsSelected=function(){return this.parentController.areAllDatasetsSelected(this.datasets)},e.prototype.areNoDatasetsSelected=function(){return this.parentController.areNoDatasetsSelected(this.datasets)},e.prototype.showAlertItemInfo=function(){return this.datasets&&this.datasets.length&&this.datasets.every(function(t){return!t.canWrite})&&this.treeConfig.showDatasetLockButtons},e.prototype.zoomToDatasets=function(){this.parentController.zoomToDatasets(this.datasets)},e.prototype.toggleLockDatasets=function(){this.areAllDatasetsLocked()?this.unlockDatasets():this.lockDatasets()},e.prototype.lockDatasets=function(){var t=this.getDatasetsWithWritePermission();this.parentController.lockDatasets(t)},e.prototype.unlockDatasets=function(){var t=this.getDatasetsWithWritePermission();this.parentController.unlockDatasets(t)},e.prototype.getDatasetsWithWritePermission=function(){return this.datasets.filter(function(t){return t.canWrite})},e.prototype.areAllDatasetsLocked=function(){return!!this.parentController.areAllDatasetsLocked&&this.parentController.areAllDatasetsLocked(this.datasets)},e.prototype.jumpToSiteModelEntity=function(t){this.SiteModelService.selectModel(t,!0)},e.prototype.showSimpleAddButton=function(t){return this.ModeService.isSiteModelEditorMode()&&t&&t.type!==r.SiteModelType.FREE_SPACE_NAVIGATION&&(t.type!==r.SiteModelType.BUILDING||!t.children.length)},e.prototype.showExtendedAddButton=function(t){return this.ModeService.isSiteModelEditorMode()&&t&&t.type===r.SiteModelType.BUILDING&&t.children.length>0},e.prototype.dropdownToggle=function(e){t(e.currentTarget).parent().toggleClass("open")},e}();e.DatasetGroupToolbarController=o;var a=function(){function t(){this.restrict="E",this.templateUrl="DatasetUI/DatasetGroupToolbar.html",this.controller=o,this.controllerAs="vm",this.scope=!0,this.bindToController={datasets:"=",parentController:"=",siteModelEntity:"=",treeConfig:"="}}return t.factory=function(){return function(){return new t}},t}();e.DatasetGroupToolbarDirective=a,i.module("IVWebApp").directive("datasetGroupToolbar",a.factory())}).call(this,n(19))},function(t,e){var n="DatasetUI/DatasetGroupToolbar.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="dataset-grp-toolbar" ng-click="$event.stopPropagation()">\n\t<button class="btn btn-default btn-borderless"\n\t title="{{\'Select all\'|translate}}"\n\t ng-if="vm.treeConfig.showDatasetSelectButtons && vm.treeConfig.showDatasets && vm.datasets.length"\n\t ng-click="vm.toggleDatasetSelection(vm.datasets)">\n\t\t<i class="fa"\n\t\t ng-class="vm.areAllDatasetsSelected(vm.datasets) ? \'fa-check-square-o\' : \'fa-square-o\'"></i>\n\t</button>\n\t<button class="btn btn-default btn-borderless"\n\t ng-click="vm.jumpToSiteModelEntity(vm.siteModelEntity)"\n\t ng-if="vm.treeConfig.showSiteModelJumpButtons && vm.siteModelEntity && vm.siteModelEntity.globalCenter"\n\t title="{{\'Show site model entity details\'|translate}}">\n\t\t<i class="glyphicon glyphicon-info-sign"></i>\n\t</button>\n\t<button class="btn btn-default btn-borderless"\n\t ng-if="vm.treeConfig.showDatasetZoomButtons && vm.datasets.length"\n\t ng-click="vm.zoomToDatasets()"\n\t title="{{\'Zoom map to dataset\'|translate}}">\n\t\t<i class="fa fa-crosshairs"></i>\n\t</button>\n\t<button class="btn btn-default btn-borderless"\n\t ng-if="vm.treeConfig.showDatasetLockButtons && vm.treeConfig.showDatasets && !vm.showAlertItemInfo()"\n\t title="{{\'Lock transformation\'|translate}}"\n\t ng-click="vm.toggleLockDatasets()">\n\t\t<i class="fa" ng-class="vm.areAllDatasetsLocked() ? \'fa-lock\' : \'fa-unlock-alt\'"></i>\n\t</button>\n\t\x3c!-- \'no write permission to edit any dataset in this group\' alert --\x3e\n\t<div class="alert-item-info"\n\t ng-if="vm.showAlertItemInfo()"\n\t title="{{\'You do not have permission to edit these datasets\' | translate}}">\n\t\t<span class="fa fa-exclamation-triangle"></span>\n\t</div>\n\t<button class="btn btn-default btn-borderless"\n\t ng-if="vm.treeConfig.showSiteModelEditButtons && vm.showSimpleAddButton(vm.siteModelEntity) && !vm.parentController.isCuttingMode()"\n\t title="{{\'Add sub-entity\'|translate}}"\n\t ng-disabled="vm.parentController.isDrawingMode()"\n\t ng-click="vm.parentController.addEntity(undefined, vm.siteModelEntity, false)">\n\t\t<i class="fa fa-plus"></i>\n\t</button>\n\t<div class="btn-group dropdown" ng-if="vm.treeConfig.showSiteModelEditButtons && vm.showExtendedAddButton(vm.siteModelEntity) && !vm.parentController.isCuttingMode()">\n\t\t<button class="btn btn-default btn-borderless dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" ng-click="vm.dropdownToggle($event)"\n\t\t ng-disabled="vm.parentController.isDrawingMode()"\n\t\t title="{{\'Add floor\'|translate}}">\n\t\t\t<i class="fa fa-plus"></i>\n\t\t\t<span class="caret"></span>\n\t\t</button>\n\t\t<ul class="dropdown-menu dropdown-center" ng-click="vm.dropdownToggle($event)">\n\t\t\t<li ng-click="vm.parentController.addEntity(undefined, vm.siteModelEntity, false)" class="text-center">\n\t\t\t\t<i class="fa fa-plus"></i>\n\t\t\t\t<span translate>Add floor on top</span>\n\t\t\t</li>\n\t\t\t<li ng-click="vm.parentController.addEntity(undefined, vm.siteModelEntity, true)" class="text-center">\n\t\t\t\t<i class="fa fa-plus"></i>\n\t\t\t\t<span translate>Add floor on bottom</span>\n\t\t\t</li>\n\t\t</ul>\n\t</div>\n\t<button class="btn btn-default btn-borderless"\n\t ng-if="vm.treeConfig.showSiteModelEditButtons && !vm.parentController.isCuttingMode() && vm.siteModelEntity"\n\t ng-disabled="vm.parentController.isDrawingMode()"\n\t title="{{\'Edit entity\'|translate}}"\n\t ng-click="vm.parentController.editEntity(vm.siteModelEntity);$event.stopPropagation()">\n\t\t<i class="fa fa-pencil"></i>\n\t</button>\n\t<button class="btn btn-default btn-borderless"\n\t ng-if="vm.treeConfig.showSiteModelEditButtons && vm.parentController.isCuttingMode() && vm.siteModelEntity && !vm.siteModelEntity.drawing"\n\t title="{{\'Use this entity\\\'s outline as hole\'|translate}}"\n\t ng-click="vm.parentController.useOutlineAsHole(vm.siteModelEntity);$event.stopPropagation()">\n\t\t<i class="fa fa-dot-circle-o"></i>\n\t</button>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1421);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,".dataset-grp-toolbar{position:absolute;top:0;right:10px;display:inline-block;vertical-align:middle;margin-left:1em;background:#fff}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1423),n(1424);var r=function(){function t(t){this.AlignmentService=t}return t.$inject=["AlignmentService"],t.prototype.showAlertItemInfo=function(){return this.treeConfig.checkForMapData?!this.dataset.canWrite&&this.AlignmentService.mapDataPresent[this.dataset.id]:!this.dataset.canWrite&&this.treeConfig.showDatasetLockButtons},t.prototype.zoomToDataset=function(){this.AlignmentService.zoomToDatasets([this.dataset])},t.prototype.isNotSelected=function(){return!this.AlignmentService.isDatasetSelected(this.dataset)},t.prototype.hasMapData=function(){return this.AlignmentService.mapDataPresent[this.dataset.id]},t.prototype.isPrimaryDataset=function(){return this.AlignmentService.primary===this.dataset},t.prototype.toggleSelection=function(){this.parentController.toggleSelection(this.dataset)},t.prototype.isDatasetSelected=function(){return this.parentController.isDatasetSelected(this.dataset)},t.prototype.setAsPrimary=function(){this.parentController.setAsPrimary(this.dataset)},t.prototype.toggleLock=function(){this.parentController.toggleLock(this.dataset)},t.prototype.setResourceToEdit=function(){this.parentController.setResourceToEdit(this.dataset)},t.prototype.jumpToDataset=function(){this.parentController.jumpToDataset(this.dataset,this.siteModelEntity)},t.prototype.colorChanged=function(){this.AlignmentService.stateDirty=!0},t}();e.DatasetController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="DatasetUI/Dataset.html",this.controller=r,this.controllerAs="vm",this.scope=!0,this.bindToController={dataset:"=",siteModelEntity:"=?",parentController:"=",treeConfig:"="}}return t.factory=function(){return function(){return new t}},t}();e.DatasetDirective=o,i.module("IVWebApp").directive("dataset",o.factory())},function(t,e){var n="DatasetUI/Dataset.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="list-group-item"\n ng-click="(vm.treeConfig.checkForMapData ? vm.hasMapData() : true) ? vm.toggleSelection() : \'\'"\n ng-class="{\n\t\t\t \'active\': vm.isDatasetSelected(),\n\t\t\t \'disabled\': vm.treeConfig.checkForMapData && !vm.hasMapData(),\n\t\t\t\t\'first\': $first ,\n\t\t\t\t\'middle\': $middle,\n\t\t\t\t\'last\': $last\n\t }">\n\t<div class="data-set-controls">\n\t\t<div ng-if="vm.treeConfig.checkForMapData ? vm.hasMapData() : true"\n\t\t ng-click="$event.stopPropagation()">\n\t\t\t\x3c!-- set as primary dataset --\x3e\n\t\t\t<button class="btn btn-default btn-borderless"\n\t\t\t ng-disabled="vm.isNotSelected()"\n\t\t\t ng-click="vm.setAsPrimary()"\n\t\t\t ng-if="vm.treeConfig.showDatasetReferenceMarkerButtons"\n\t\t\t title="{{\'Select as reference dataset\' | translate}}">\n\t\t\t\t<i ng-class="vm.isPrimaryDataset() ? \'fa fa-star\' : \'fa fa-star-o\'"></i>\n\t\t\t</button>\n\t\t\t\x3c!-- zoom to dataset --\x3e\n\t\t\t<button class="btn btn-default btn-borderless"\n\t\t\t ng-click="vm.zoomToDataset()"\n\t\t\t ng-if="vm.treeConfig.showDatasetZoomButtons"\n\t\t\t title="{{\'Zoom map to dataset\' | translate}}">\n\t\t\t\t<i class="fa fa-crosshairs"></i>\n\t\t\t</button>\n\t\t\t\x3c!-- lock/unlock dataset --\x3e\n\t\t\t<button class="btn btn-default btn-borderless"\n\t\t\t ng-disabled="vm.isNotSelected()"\n\t\t\t ng-click="vm.toggleLock()"\n\t\t\t ng-if="vm.treeConfig.showDatasetLockButtons && !vm.showAlertItemInfo()"\n\t\t\t title="{{\'Lock transformation\' | translate}}">\n\t\t\t\t<span ng-class="vm.dataset.locked ? \'fa fa-lock\' : \'fa fa-unlock-alt\'"></span>\n\t\t\t</button>\n\t\t\t\x3c!-- \'no write permission to edit this dataset\' alert --\x3e\n\t\t\t<div class="alert-item-info"F\n\t\t\t ng-if="vm.showAlertItemInfo()"\n\t\t\t title="{{\'You do not have permission to edit this dataset\' | translate}}">\n\t\t\t\t<span class="fa fa-exclamation-triangle"></span>\n\t\t\t</div>\n\t\t\t\x3c!-- edit dataset modal --\x3e\n\t\t\t<button class="btn btn-default btn-borderless"\n\t\t\t ng-click="vm.setResourceToEdit()"\n\t\t\t ng-if="vm.treeConfig.showDatasetEditButtons && vm.dataset.canWrite"\n\t\t\t title="{{\'Edit dataset\' | translate}}">\n\t\t\t\t<span class="fa fa-pencil"></span>\n\t\t\t</button>\n\t\t\t\x3c!-- jump to dataset --\x3e\n\t\t\t<button class="btn btn-default btn-borderless"\n\t\t\t ng-click="vm.jumpToDataset()"\n\t\t\t ng-if="vm.treeConfig.showDatasetJumpButtons"\n\t\t\t title="{{\'Jump to dataset\' | translate}}">\n\t\t\t\t<i class="glyphicon glyphicon-share-alt"></i>\n\t\t\t</button>\n\t\t</div>\n\n\t\t\x3c!-- \'no map data for this dataset\' alert --\x3e\n\t\t<div class="alert-item-info"\n\t\t ng-if="vm.treeConfig.checkForMapData && !vm.hasMapData()">\n\t\t\t<span class="fa fa-exclamation-triangle"></span>\n\t\t\t<span translate>No map data</span>\n\t\t</div>\n\n\t</div>\n\t<div class="data-set-info">\n\t\t\x3c!-- dataset icon --\x3e\n\t\t<div class="data-set-icon color-pickable" colorpicker="hex"\n\t\t ng-if="vm.treeConfig.showColorpicker"\n\t\t ng-init="vm.dataset.color"\n\t\t ng-model="vm.dataset.color"\n\t\t ng-change="vm.colorChanged()"\n\t\t ng-click="$event.stopPropagation();"\n\t\t ng-style="{\'background-color\': vm.dataset.color}"></div>\n\t\t<div class="data-set-icon"\n\t\t ng-if="!vm.treeConfig.showColorpicker"\n\t\t ng-style="{\'background-color\': vm.dataset.color}"></div>\n\n\t\t\x3c!-- dataset title --\x3e\n\t\t<div class="dataset-title-container">\n\t\t\t<div class="dataset-title">{{vm.dataset.title || "&nbsp;"}}</div>\n\t\t\t<div class="dataset-mgmt-name">{{vm.dataset.name}}</div>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1425);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"dataset .list-group-item{margin-bottom:-1px;width:100%;overflow:hidden;border:none}dataset .list-group-item.first{border-top-right-radius:4px!important;border-top-left-radius:4px!important}dataset .list-group-item.middle{border-radius:0}dataset .list-group-item.last{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important;margin-bottom:0}dataset .list-group-item:first-child,dataset .list-group-item:last-child{border-radius:0}dataset .list-group-item:hover{cursor:default}dataset .list-group-item.active{z-index:0}dataset .list-group-item.active .dataset-mgmt-name,dataset .list-group-item.active .fa{color:#fff}dataset .list-group-item.active .fa.fa-unlock-alt{opacity:.3}dataset .list-group-item.active .glyphicon{color:#fff}dataset .dataset-grp{width:100%}dataset .dataset-title-container{display:inline-block;width:calc(100% - 2.2em);white-space:nowrap}dataset .dataset-title{overflow:hidden;text-overflow:ellipsis;width:100%}dataset .data-set-icon{margin-top:-1.6em;border:1px solid #adadad}dataset .data-set-icon.color-pickable{cursor:pointer}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(7);n(1427),n(1428);var o=function(){function t(t,e,n){var i=this;this.datasets=t.data,this.siteModel=e.data,this.updateUnassignedDatasets();var r=[t.entityCreated.connect(function(){return i.updateUnassignedDatasets()}),t.entityRemoved.connect(function(){return i.updateUnassignedDatasets()}),e.entityCreated.connect(function(){return i.updateUnassignedDatasets()}),e.entityRemoved.connect(function(){return i.updateUnassignedDatasets()})];n.$on("$destroy",function(){return r.forEach(function(t){return t.disconnect()})})}return t.$inject=["DatasetRepository","SiteModelRepository","$scope"],Object.defineProperty(t.prototype,"datasets",{get:function(){return this._datasets},set:function(t){this._datasets=t,this.updateUnassignedDatasets()},enumerable:!0,configurable:!0}),t.prototype.updateUnassignedDatasets=function(){this.unassignedDatasets=r.filter(this.datasets,function(t){return 0===t.siteModelEntities.length})},t}();e.DatasetTreeController=o;var a=function(){function t(){this.restrict="E",this.templateUrl="DatasetUI/DatasetTree.html",this.controller=o,this.controllerAs="vm",this.scope=!0,this.bindToController={parentController:"=",siteModelEditor:"=",datasets:"=?",treeConfig:"="}}return t.factory=function(){return function(){return new t}},t}();e.DatasetTreeDirective=a,i.module("IVWebApp").directive("datasetTree",a.factory())},function(t,e){var n="DatasetUI/DatasetTree.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="multiple-dataset-selector">\n\t<h4>\n\t\t<span>{{vm.treeConfig.title | translate:"title"}}</span>\n\t\t<toggle-switch class="float-right"\n\t\t title="{{\'Show/hide datasets\' | translate}}"\n\t\t ng-model="vm.treeConfig.showDatasets"\n\t\t ng-if="vm.treeConfig.showDatasetVisibilitySwitcher && !vm.unassignedDatasets.length"></toggle-switch>\n\t</h4>\n\t<div class="tree-wrapper">\n\t\t<site-model-collection sites="vm.siteModel"\n\t\t parent-controller="vm.parentController"\n\t\t site-model-editor="vm.siteModelEditor"\n\t\t datasets="vm.datasets"\n\t\t tree-config="vm.treeConfig">\n\t\t</site-model-collection>\n\n\t\t<div ng-if="vm.unassignedDatasets.length > 0"\n\t\t class="unassigned-datasets margin-bottom-small">\n\t\t\t<div data-toggle="collapse" data-target="#unassigned-datasets" role="button">\n\t\t\t\t<i class="collapse-expand-chevron"></i>\n\t\t\t\t<span>\n\t\t\t\t\t<strong translate translate-context="title">Unassigned Datasets</strong>\n\t\t\t\t</span>\n\t\t\t\t<dataset-group-toolbar datasets="vm.unassignedDatasets"\n\t\t\t\t show-datasets="true"\n\t\t\t\t parent-controller="vm.parentController"\n\t\t\t\t tree-config="vm.treeConfig"></dataset-group-toolbar>\n\t\t\t</div>\n\t\t\t<div class="list-group dataset-grp collapse in" id="unassigned-datasets">\n\t\t\t\t<dataset ng-repeat="dataset in vm.unassignedDatasets | orderBy: \'title\'"\n\t\t\t\t dataset="dataset"\n\t\t\t\t parent-controller="vm.parentController"\n\t\t\t\t tree-config="vm.treeConfig">\n\t\t\t\t</dataset>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1429);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"dataset-tree .list-group{padding-left:20px;margin-bottom:0}",""]),t.exports=e},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(7);n(1431),n(1432),n(430);var o=n(220),a=n(8),s=function(){function e(t,e,n,i,r,a,s,c,l,u){this.GeoTransformationService=t,this.ImageService=e,this.IV=n,this.PointCloudMenuService=i,this.ViewMenuService=r,this.GroupService=a,this.ModeService=s,this.SiteModelRepository=c,this.DatasetRepository=l,this.gettext=u,this.siteModel=this.SiteModelRepository.data,this.datasetEditorModel=this.DatasetRepository.create(),this.treeConfig=o.DatasetTreeConfigurationFactory.createDatasetMenuConfig(this.gettext("Datasets",void 0,"title"))}return e.$inject=["GeoTransformationService","ImageService","IV","PointCloudMenuService","ViewMenuService","GroupService","ModeService","SiteModelRepository","DatasetRepository","gettext"],e.prototype.areAllDatasetsSelected=function(t){return r.every(t,function(t){return t.pointCloudVisible})},e.prototype.areNoDatasetsSelected=function(t){return r.every(t,function(t){return!t.pointCloudVisible})},e.prototype.selectDatasets=function(t){for(var e=0,n=t;e<n.length;e++)n[e].pointCloudVisible=!0},e.prototype.deselectDatasets=function(t){for(var e=0,n=t;e<n.length;e++)n[e].pointCloudVisible=!1},e.prototype.toggleSelection=function(t){t.pointCloudVisible=!t.pointCloudVisible},e.prototype.isDatasetSelected=function(t){return t.pointCloudVisible},e.prototype.jumpToDataset=function(t,e){var n=this;this.ImageService.getFirstImageInDataset(t,e).then(function(e){return n.GeoTransformationService.checkAndFixOffset(t),e?n.IV.moveToImage(e):(t.pointCloudVisible=!0,n.PointCloudMenuService.showPointClouds(!0),n.ViewMenuService.showPanoramas(!1),n.IV.moveToGeoLocation(t.getCenter(),!0,void 0,void 0,void 0,void 0,!0))}).catch(a.handleWarning)},e.prototype.setResourceToEdit=function(e){var n=e.pcObj_;e.pcObj_=void 0,this.datasetEditorModel.copy(e),e.pcObj_=n,t("#editDataset").modal()},e}();e.DatasetMenuController=s;var c=function(){function t(){this.restrict="E",this.templateUrl="DatasetUI/DatasetMenu.html",this.controller=s,this.controllerAs="vm"}return t.factory=function(){return function(){return new t}},t}();e.DatasetMenuDirective=c,i.module("IVWebApp").directive("datasetMenu",c.factory())}).call(this,n(19))},function(t,e){var n="DatasetUI/DatasetMenu.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="panel no-border no-shadow">\n\t<div class="panel-body">\n\t\t<dataset-tree parent-controller="vm" tree-config="vm.treeConfig"></dataset-tree>\n\t</div>\n</div>\n\n\x3c!--modal for editing dataset--\x3e\n<modal>\n\t<dataset-editor model="vm.datasetEditorModel"></dataset-editor>\n</modal>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1433);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"",""]),t.exports=e},function(t,e,n){var i="Core/Misc/WarningDialog.html",r='<modal>\n\t<div class="modal fade" id="{{modalId}}" tabindex="-1" role="dialog" aria-hidden="false"\n\t data-backdrop="static">\n\t\t<div class="modal-dialog">\n\t\t\t<div class="modal-content">\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t\x3c!-- Close button --\x3e\n\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t ng-click="parentController.warningCancelHandler()"\n\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}"\n\t\t\t\t\t data-dismiss="modal">\n\t\t\t\t\t\x3c!-- Title --\x3e\n\t\t\t\t\t<h4>\n\t\t\t\t\t\t{{parentController.warningDialogConfig.TITLE | translate:"title"}}\n\t\t\t\t\t</h4>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-body">\n\t\t\t\t\t\x3c!-- Body --\x3e\n\t\t\t\t\t<p style="margin: 14px 0">\n\t\t\t\t\t\t{{parentController.warningDialogConfig.TEXT | translate}}\n\t\t\t\t\t</p>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-footer" style="margin-top: 0">\n\t\t\t\t\t\x3c!-- Control buttons --\x3e\n\t\t\t\t\t<cancel-button ng-click="parentController.warningCancelHandler()" data-dismiss="modal"></cancel-button>\n\t\t\t\t\t<ok-button ng-click="parentController.warningContinueHandler()">\n\t\t\t\t\t\t<span translate>Continue</span>\n\t\t\t\t\t</ok-button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(1436),n(431);var a=function(t){function e(e,n,i,r){return t.call(this,e,n,i,r)||this}return r(e,t),e.$inject=["DatasetRepository","gettextCatalog","$element","ErrorService"],e}(n(185).EntityEditorController);e.DatasetEditorController=a;var s=function(){function t(){this.restrict="E",this.templateUrl="DatasetUI/DatasetEditor.html",this.controller=a,this.controllerAs="vm",this.scope=!0,this.bindToController={model:"="}}return t.factory=function(){return function(){return new t}},t}();e.DatasetEditorDirective=s,o.module("IVWebApp").directive("datasetEditor",s.factory())},function(t,e,n){var i="DatasetUI/DatasetEditor.html",r='<div class="modal fade" id="editDataset" tabindex="-1" role="dialog" aria-labelledby="editDataset"\n aria-hidden="true" data-backdrop="static">\n\t<div class="modal-dialog">\n\t\t<div class="modal-content">\n\n\t\t\t<div class="modal-header">\n\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}"\n\t\t\t\t data-dismiss="modal">\n\t\t\t\t<h4 translate translate-context="title">\n\t\t\t\t\tEdit Dataset\n\t\t\t\t</h4>\n\t\t\t</div>\n\n\t\t\t<div class="modal-body">\n\t\t\t\t<div class="form-horizontal">\n\t\t\t\t\t\x3c!-- Title --\x3e\n\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t<label class="col-sm-3 control-label" for="datasetTitleEdit" translate>Title</label>\n\t\t\t\t\t\t<div class="col-sm-9">\n\t\t\t\t\t\t\t<input class="form-control" id="datasetTitleEdit" type="text" ng-model="vm.model.title" init-focus>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t\x3c!-- Permissions Editor --\x3e\n\t\t\t\t\t<permission-editor\n\t\t\t\t\t\t\tmodel="vm.model"\n\t\t\t\t\t\t\tmodel-type="\'dataset\'"\n\t\t\t\t\t\t\tcol-span="3">\n\t\t\t\t\t</permission-editor>\n\t\t\t\t</div>\n\n\t\t\t\t<span class="text-danger" ng-show="vm.error">\n\t\t\t\t\t{{vm.error.text}}: {{vm.error.statusText}} ({{vm.error.status}})\n\t\t\t\t</span>\n\t\t\t\t<div ng-show="!!vm.error.details">\n\t\t\t\t\t{{vm.error.details}}\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class="modal-footer">\n\t\t\t\t<cancel-button data-dismiss="modal">\n\t\t\t\t</cancel-button>\n\t\t\t\t<ok-button ng-click="vm.save()">\n\t\t\t\t</ok-button>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e){var n="Core/Misc/PermissionEditor.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'\x3c!-- Permissions warning dialog --\x3e\n<warning-dialog modal-id="modelType + \'-\' + model.id + \'-\' + vm.warningDialogConfig.POSTFIX" parent-controller="vm"></warning-dialog>\n\n<div ng-show="vm.UserService.isUserLoggedIn() && model.security.canWrite !== false" class="form-group">\n\t<div class="{{colSpan ? \'\' : \'form-group col-sm-6 no-padding-left\'}}">\n\t\t<label translate translate-context="noun"\n\t\t class="text-overflow-ellipsis control-label {{colSpan ? \'col-sm-\' + colSpan : \'col-sm-12 no-padding-left no-padding-right\'}}">\n\t\t\tView\n\t\t</label>\n\t\t<div class="{{colSpan ? \'margin-bottom-small col-sm-\' + (6 - colSpan) : \'\'}}">\n\t\t\t<select id="permissionsViewSettings" class="form-control"\n\t\t\t ng-model="model.security.groupRead"\n\t\t\t ng-options="group.id as (vm.getGroupIndent(group, \'-\') + \' \' + group.name) for group in vm.GroupService.getGroupsAsArray()"\n\t\t\t options-disabled="!vm.isGroupSelectable(group) for group in vm.GroupService.getGroupsAsArray()"\n\t\t\t ng-change="vm.groupChanged(model, modelType, \'groupRead\', {{model.security.groupRead}})">\n\t\t\t</select>\n\t\t</div>\n\t</div>\n\n\t<div class="{{colSpan ? \'\' : \'form-group col-sm-6 no-padding-left\'}}">\n\t\t<label translate class="text-overflow-ellipsis control-label {{colSpan ? \'col-sm-\' + colSpan : \'col-sm-12 no-padding-left no-padding-right\'}}">\n\t\t\tEdit\n\t\t</label>\n\t\t<div class="{{colSpan ? \'margin-bottom-small col-sm-\' + (6 - colSpan) : \'\'}}">\n\t\t\t<select id="permissionsEditSettings" class="form-control"\n\t\t\t ng-model="model.security.groupWrite"\n\t\t\t ng-options="group.id as (vm.getGroupIndent(group, \'-\') + \' \' + group.name) for group in vm.GroupService.getGroupsAsArray()"\n\t\t\t options-disabled="!vm.isGroupSelectable(group) for group in vm.GroupService.getGroupsAsArray()"\n\t\t\t ng-change="vm.groupChanged(model, modelType, \'groupWrite\', {{model.security.groupWrite}})">\n\t\t\t</select>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1439);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"permission-editor .text-overflow-ellipsis{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1441),n(1442);var r=n(7),o=n(20),a=n(8);n(629);var s=function(){function t(e,n,i,r){var o=this;this.SiteModelEditorService=e,this.SiteModelToDatasetsService=n;var a=this.SiteModelToDatasetsService.mappingUpdated.connect(function(){return o.updateDatasets()});this.childListId="child-list-"+t.UNIQUE++;var s=i.onSelect.connect(function(t,e,n){t.id===o.siteModelEntity.id&&e&&o.collapseEntity(n)});r.$on("$destroy",function(){a.disconnect(),s.disconnect()})}return t.$inject=["SiteModelEditorService","SiteModelToDatasetsService","SiteModelService","$scope"],Object.defineProperty(t.prototype,"siteModelEntity",{get:function(){return this._siteModelEntity},set:function(t){this._siteModelEntity=t,this.updateDatasets()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"datasets",{get:function(){return this._datasets},set:function(e){this._datasets=e,this.updateDatasets(),this.datasetsOpened=e.length<t.START_OPEN_THRESHOLD},enumerable:!0,configurable:!0}),t.prototype.updateDatasets=function(){if(this.siteModelEntity&&this.siteModelEntity.id){var t=this.SiteModelToDatasetsService.getDatasetsWhereMostSpecificIs(this._siteModelEntity),e=this.SiteModelToDatasetsService.getDatasetsFromChildren(this._siteModelEntity);e.push.apply(e,t),this.filteredDescendantDatasets=r.intersection(e,this._datasets),this.siteModelDatasets=r.intersection(t,this._datasets)}},t.prototype.selectEntity=function(t,e){t.stopImmediatePropagation(),this.SiteModelEditorService.selectEntity(e)},t.prototype.collapseEntity=function(t){var e=i.element(document.getElementById(""+this.childListId));if(!(e.hasClass("in")&&t||e.hasClass("collapsing"))){var n=e.prev(".site-model-button");n&&n.toggleClass("collapsed"),e.collapse("toggle")}},t.UNIQUE=0,t.START_OPEN_THRESHOLD=20,t}();e.SiteModelController=s;var c=function(){function t(t,e){var n=this;this.$compile=t,this.$timeout=e,this.controller=s,this.controllerAs="vm",this.restrict="E",this.templateUrl="SiteModelUI/SiteModel.html",this.scope=!0,this.bindToController={datasets:"=",siteModelEntity:"=",siteModelEditor:"=",parentController:"=",treeConfig:"="},this.link={pre:function(t,e,i,r){return n.preLink(t,e,i,r)}}}return t.factory=function(){return["$compile","$timeout",function(e,n){return new t(e,n)}]},t.prototype.preLink=function(t,e,n,r){var s=this,c=e.find("children");i.isArray(t.site.children)&&c.append('<site-model-collection sites="site.children" tree-config="treeConfig" site-model-editor="siteModelEditor" parent-controller="parentController" datasets="datasets"></site-model-collection>'),this.$timeout(function(){s.$compile(c.contents())(t),i.element(e[0].querySelector("#"+r.childListId)).on("show.bs.collapse",function(){r.datasetsOpened=!0,o.invalidateAngular()})}).catch(a.handleWarning)},t}();e.SiteModelDirective=c,i.module("IVWebApp").directive("siteModel",c.factory())},function(t,e){var n="SiteModelUI/SiteModel.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="site-model-tree-entity"\n ng-hide="!vm.treeConfig.showEmptySiteModelEntities && vm.filteredDescendantDatasets.length === 0">\n\t<div data-toggle="collapse"\n\t data-target="#{{vm.childListId}}"\n\t role="button" class="site-model-button"\n\t ng-click="vm.siteModelEditor && vm.selectEntity($event, vm.siteModelEntity)"\n\t ng-class="{\'collapsed\': !vm.datasetsOpened, \'selected\': vm.siteModelEntity.selected}"\n\t ng-style="{\'padding-right\': vm.treeConfig.siteModelTitlePadding + \'px\'}">\n\t\t<i ng-class="(vm.treeConfig.showDatasets && vm.siteModelDatasets.length > 0) || vm.siteModelEntity.children.length > 0 ? \'collapse-expand-chevron\' : \'not-collapsible\'"></i>\n\t\t<img ng-src="{{vm.siteModelEntity.getTypeIcon()}}" class="siteModelIcon">\n\t\t<div class="long-title" title="{{vm.siteModelEntity.name}}">\n\t\t\t<strong class="uppercase">{{vm.siteModelEntity.getTypeDisplayName() | translate}}</strong> {{vm.siteModelEntity.name}}\n\t\t</div>\n\t\t<dataset-group-toolbar\n\t\t\t\tdatasets="vm.filteredDescendantDatasets"\n\t\t\t\tparent-controller="vm.parentController"\n\t\t\t\tsite-model-entity="vm.siteModelEntity"\n\t\t\t\ttree-config="vm.treeConfig">\n\t\t</dataset-group-toolbar>\n\t</div>\n\t<div id="{{vm.childListId}}"\n\t class="dataset-grp collapse"\n\t ng-class="{\'in\': vm.datasetsOpened, \'site-model-grp\' : vm.siteModelEditor}">\n\t\t<div ng-if="vm.treeConfig.showDatasets === true && vm.siteModelDatasets.length > 0 && vm.datasetsOpened"\n\t\t class="list-group">\n\t\t\t<dataset ng-repeat="dataset in vm.siteModelDatasets | orderBy: \'title\'"\n\t\t\t dataset="dataset"\n\t\t\t site-model-entity="vm.siteModelEntity"\n\t\t\t parent-controller="vm.parentController"\n\t\t\t tree-config="vm.treeConfig">\n\t\t\t</dataset>\n\t\t</div>\n\t\t<children></children>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1443);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,".multiple-dataset-selector>div>site-model-collection>.site-model-collection{margin-left:-20px}.site-model-tree-entity{padding:.2em 0 .2em 20px}.site-model-tree-entity img{display:inline}.site-model-tree-entity span{white-space:nowrap}.site-model-tree-entity>[role=button]{position:relative}.site-model-tree-entity>.list-group{margin-left:20px;margin-bottom:0}.site-model-tree-entity .long-title{width:calc(100% - 60px);vertical-align:middle}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1445),n(1446);var r=function(){function t(){this.restrict="E",this.templateUrl="SiteModelUI/SiteModelCollection.html",this.scope={sites:"=",datasets:"=",siteModelEditor:"=",parentController:"=",treeConfig:"="}}return t.factory=function(){return function(){return new t}},t}();e.SiteModelCollectionDirective=r,i.module("IVWebApp").directive("siteModelCollection",r.factory())},function(t,e){var n="SiteModelUI/SiteModelCollection.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="site-model-collection">\n\t<site-model ng-repeat="site in sites | orderSites"\n\t datasets="datasets"\n\t site-model-entity="site"\n\t site-model-editor="siteModelEditor"\n\t parent-controller="parentController"\n\t tree-config="treeConfig">\n\t</site-model>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1447);var r=n(55),o=function(){function t(){}return t.filter=["NaturalSortService",function(t){return function(e){if(!e||e.length<2)return e;var n=!1,i="name";return e[0].type===r.SiteModelType.FLOOR&&(n=!0,i="zMin"),t.naturalSort(e,i,n)}}],t}();i.module("IVWebApp").filter("orderSites",o.filter)},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(7),o=n(6),a=n(0),s=n(0),c=function(){function t(){this.naturalSort=function(t,e,n){void 0===n&&(n=!1);var i=n?"desc":"asc",o=r.filter(t,function(t){return isFinite(t[e])}),a=r.difference(t,o);return o=r.orderBy(o,function(t){return Number.parseFloat(t[e])},i),a=r.orderBy(a,e,i),o.concat(a)}}return t.ɵfac=function(e){return new(e||t)},t.ɵprov=s.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.NaturalSortService=c,s.ɵsetClassMetadata(c,[{type:a.Injectable,args:[{providedIn:"root"}]}],null,null),i.module("IVWebApp").service("NaturalSortService",o.downgradeInjectable(c))},function(t,e,n){"use strict";(function(t){var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(1449),n(1450),n(1452);var a=n(528);n(1456),n(1458);var s=n(197);n(607);var c=n(89),l=n(220),u=n(55),d=(function(t){r(function(){return null!==t&&t.apply(this,arguments)||this},t)}(a.SiteModelEntity),function(){function e(t,e,n,i,r,o,a,s,d,p,h,f,g,m){var v=this;this.SiteModelService=t,this.SiteModelEditorService=e,this.hotkeys=n,this.gettext=i,this.ViewService=r,this.PointCloudMenuService=o,this.DatasetAlignmentService=a,this.ModeService=s,this.SiteModelRepository=d,this.MessageReportingService=p,this.TiledMapRepository=h,this.gettextCatalog=f,this.$scope=g,this.AlignmentService=m,this.siteModel=this.SiteModelRepository.data,this.SiteModelType=u.SiteModelType,this.generatePromiseWrapper=new c.PromiseProgressWrapper,this.addEntity=function(t,e,n){return v.SiteModelEditorService.addEntity(t,e,n)},this.unlockEntityToggle=function(t){return v.SiteModelEditorService.unlockEntityToggle(t)},this.enableCuttingMode=function(t){return v.SiteModelEditorService.enableCuttingMode(t)},this.isCuttingMode=function(){return v.SiteModelEditorService.isCuttingMode()},this.isDrawingMode=function(){return v.SiteModelEditorService.isDrawingMode()},this.useOutlineAsHole=function(t){return v.SiteModelEditorService.useOutlineAsHole(t)},this.updateHeight=function(t,e){return v.SiteModelEditorService.updateHeight(t,e)},this.updateTop=function(t,e){return v.SiteModelEditorService.updateTop(t,e)},this.checkMinHeight=function(t){return v.SiteModelEditorService.checkMinHeight(t)},this.checkMaxHeight=function(t,e){return v.SiteModelEditorService.checkMaxHeight(t,e)},this.zoomToDatasets=function(t){return v.AlignmentService.zoomToDatasets(t)},this.deselectDatasets=function(t){return v.AlignmentService.deselectAll(t)},this.toggleSelection=function(t){return v.AlignmentService.toggleSelection(t)},this.SiteModelService.onSelect.connect(function(t,e,n){e&&v.collapseEntity(t,n)}),1===this.siteModel.length&&this.SiteModelEditorService.selectEntity(this.siteModel[0]),this.activateHotkeys(),this.treeConfig=l.DatasetTreeConfigurationFactory.createSiteModelEditorConfig(i("Datasets",void 0,"title"))}return e.$inject=["SiteModelService","SiteModelEditorService","hotkeys","gettext","ViewService","PointCloudMenuService","DatasetAlignmentService","ModeService","SiteModelRepository","MessageReportingService","TiledMapRepository","gettextCatalog","$scope","AlignmentService"],Object.defineProperty(e.prototype,"modalDeferred",{get:function(){return this.SiteModelEditorService.modalDeferred},enumerable:!0,configurable:!0}),e.prototype.activateHotkeys=function(){var t=this;this.hotkeys.bindTo(this.$scope).add({combo:"backspace",description:this.gettext("Remove last placed or selected point"),callback:function(){t.SiteModelEditorService.isDrawingMode()?t.SiteModelEditorService.removeLastPointFromCurrentEntity():t.SiteModelEditorService.removeSelectedPoint()}}).add({combo:"esc",callback:function(){t.SiteModelEditorService.isDrawingMode()&&t.SiteModelEditorService.cancelDrawingMode()}}).add({combo:"shift",action:"keyup",callback:function(){t.SiteModelEditorService.snappingEnabled=!t.SiteModelEditorService.snappingEnabled}}).add({combo:"shift",description:this.gettext("Toggle snapping to lines and vertices"),action:"keydown",callback:function(){t.SiteModelEditorService.snappingEnabled=!t.SiteModelEditorService.snappingEnabled}}).add({combo:["L","l"],action:"keyup",callback:function(){t.keyDown=!1,t.SiteModelEditorService.rectangleSnapping=!t.SiteModelEditorService.rectangleSnapping}}).add({combo:["L","l"],description:this.gettext("Toggle snapping to 90° angle"),action:"keydown",callback:function(){t.keyDown||(t.keyDown=!0,t.SiteModelEditorService.rectangleSnapping=!t.SiteModelEditorService.rectangleSnapping)}}).add({combo:["G","g"],description:this.gettext("Show hovered scene in fullscreen"),callback:function(){var e=t.ViewService.mainView.getLastMousePosition(),n=t.ViewService.mainView.getViewport(e.x,e.y);n&&t.ViewService.mainView.toggleViewportFullscreen(n)}})},e.prototype.collapseEntity=function(e,n){var i="#site-model-"+e.hashKey,r=t(i);if(!(r.hasClass("in")&&n||r.hasClass("collapsing"))){var o=r.prev(".site-model-button");o&&o.toggleClass("collapsed"),r.collapse("toggle")}},e.prototype.validateAndSaveSiteModel=function(){var t=this;return this.SiteModelEditorService.isDrawingMode()&&this.SiteModelEditorService.cancelDrawingMode(),this.SiteModelEditorService.savePromiseWrapper.wrap(this.SiteModelRepository.getSiteModelValidityReport(this.siteModel).then(function(e){return 0!==e.siteModelErrors.length?(t.displaySiteModelErrorModal(e),Promise.reject("The provided site model is invalid")):Promise.resolve()}).then(function(){return t.SiteModelRepository.isAnyFloorChanging(t.siteModel)}).then(function(e){return e.are_maps_invalidated?(t.askForConfirmation(e.total_floor_changing),Promise.reject("")):t.saveSiteModel()}))},e.prototype.askForConfirmation=function(e){this.totalMapToRegenerate=e,t("#confirmSiteModelChange.modal").modal("show")},e.prototype.saveSiteModel=function(){var t=this;return this.SiteModelEditorService.savePromiseWrapper.wrap(this.SiteModelRepository.save(this.siteModel).then(function(){return t.removeOldSiteModelMaps()})).then(function(){return t.SiteModelEditorService.resetChangeTracking()})},e.prototype.discardChanges=function(){return this.SiteModelEditorService.discardChanges()},e.prototype.displaySiteModelErrorModal=function(t){this.SiteModelEditorService.showSiteModelErrorsModal.emit(t)},e.prototype.removeOldSiteModelMaps=function(){this.TiledMapRepository.resetCache(),this.SiteModelEditorService.redrawSiteModel.emit(!0)},e.prototype.exportSiteModel=function(t,e){this.SiteModelRepository.exportSiteModel(t,e)},e.prototype.importSiteModelToEditorEntity=function(t){var e=this;this.importingSiteModel=!0,s.processJsonFile(t[0]).then(function(t){e.isJsonArrayStructured(t)?e.SiteModelRepository.importSiteModel(t,e.siteModelEditorModel.id).then(function(){e.importingSiteModel=!1,e.SiteModelEditorService.redrawSiteModel.emit(!0)}).catch(function(){e.importingSiteModel=!1}):e.importingSiteModel=!1}).catch(function(t){e.importingSiteModel=!1,e.checkParsingError(t)})},e.prototype.importSiteModel=function(t){var e=this;this.importingSiteModel=!0,s.processJsonFile(t[0]).then(function(t){e.isJsonArrayStructured(t)&&e.areEntitiesTopLevel(t)?e.SiteModelRepository.importSiteModel(t).then(function(){e.importingSiteModel=!1,e.SiteModelEditorService.redrawSiteModel.emit(!0)}).catch(function(){e.importingSiteModel=!1}):e.importingSiteModel=!1}).catch(function(t){e.importingSiteModel=!1,e.checkParsingError(t)})},e.prototype.generateSiteModel=function(){t("#confirmSiteModelGeneration.modal").modal("show")},e.prototype.confirmSiteModelGeneration=function(){var t=this;this.generatePromiseWrapper.wrap(this.SiteModelRepository.generate()).then(function(){t.SiteModelEditorService.redrawSiteModel.emit(!0),t.TiledMapRepository.resetCache()}).catch(function(){})},e.prototype.isGenerateInProgress=function(){return this.generatePromiseWrapper.isInProgress},e.prototype.prepareEntityToDelete=function(t){var e=this;this.SiteModelEditorService.deleteConfirmedCallback=function(){e.SiteModelEditorService.deleteEntity(t)}},e.prototype.deleteConfirmed=function(){this.SiteModelEditorService.deleteConfirmedCallback&&(this.SiteModelEditorService.deleteConfirmedCallback(),t("#editEntityFromEditor").modal("hide"))},e.prototype.areAllDatasetsSelected=function(t){return this.AlignmentService.areAllDatasetsSelected(t)},e.prototype.areNoDatasetsSelected=function(t){return this.AlignmentService.areNoDatasetsSelected(t)},e.prototype.selectDatasets=function(t){this.AlignmentService.selectAll(t)},e.prototype.isDatasetSelected=function(t){return this.AlignmentService.isDatasetSelected(t)},e.prototype.editEntity=function(e){this.SiteModelEditorService.selectEntity(e,!0),this.siteModelEditorModel=e,t("#editEntityFromEditor").modal()},e.prototype.setHasChanges=function(){this.SiteModelEditorService.stateDirty=!0},e.prototype.isJsonArrayStructured=function(t){return t instanceof Array||(this.MessageReportingService.showMessage(this.gettextCatalog.getString("Unable to Import Site Model",void 0,"title"),this.gettextCatalog.getString("The file format is invalid. It does not contain an array of site model entities.")),!1)},e.prototype.areEntitiesTopLevel=function(t){return!t.some(function(t){return t.polygon_inherited})||(this.MessageReportingService.showMessage(this.gettextCatalog.getString("Unable to Import Site Model",void 0,"title"),this.gettextCatalog.getString("The file contains entities that inherited their polygon but do not have a parent. Please import them into an existing entity.")),!1)},e.prototype.checkParsingError=function(t){t&&this.MessageReportingService.showMessage(this.gettextCatalog.getString("Unable to Import Site Model",void 0,"title"),this.gettextCatalog.getString("Error while parsing the JSON file: ").concat(t))},e}());e.SiteModelEditorController=d;var p=function(){function t(){this.controller=d,this.controllerAs="vm",this.restrict="E",this.templateUrl="SiteModelUI/SiteModelEditor.html",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.SiteModelEditorDirective=p,o.module("IVWebApp").directive("siteModelEditor",p.factory())}).call(this,n(19))},function(t,e,n){var i="SiteModelUI/SiteModelEditor.html",r='<form role="form">\n\t<dataset-tree parent-controller="vm" site-model-editor="true" tree-config="vm.treeConfig"></dataset-tree>\n\n\t<div class="form-group text-right mt-10">\n\t\t<save-button ng-click="vm.validateAndSaveSiteModel()"\n\t\t in-progress="vm.SiteModelEditorService.isSaveInProgress()">\n\t\t</save-button>\n\t</div>\n\n\t<div class="panel panel-default">\n\t\t<div class="panel-heading" data-toggle="collapse" data-target="#siteModelEditorOptions">\n\t\t\t<i class="collapse-expand-chevron"></i>\n\t\t\t<span class="panel-title" translate translate-context="editor is site model editor; title">\n\t\t\t\tEditor Options\n\t\t\t</span>\n\t\t</div>\n\t\t<div id="siteModelEditorOptions" class="panel-collapse collapse in">\n\t\t\t<div class="panel-body">\n\t\t\t\t<default-button class="btn-block add-building" ng-click="vm.addEntity(vm.SiteModelType.BUILDING)">\n\t\t\t\t\t<i class="fa fa-plus"></i>\n\t\t\t\t\t<span translate>Building</span>\n\t\t\t\t</default-button>\n\t\t\t\t<default-button class="btn-block btn-default" ng-show="vm.siteModel.length"\n\t\t\t\t ng-click="vm.exportSiteModel()">\n\t\t\t\t\t<i class="fa fa-download"></i>\n\t\t\t\t\t<span translate>Export site model</span>\n\t\t\t\t</default-button>\n\t\t\t\t<input-button class="btn-block btn-file panel-control-button"\n\t\t\t\t in-progress="vm.importingSiteModel">\n\t\t\t\t\t<i class="fa fa-upload"></i>\n\t\t\t\t\t<span translate>Import site model</span>\n\t\t\t\t\t<input type="file" accept=".json,application/json" hidden\n\t\t\t\t\t ng-disabled="vm.importingSiteModel"\n\t\t\t\t\t ngf-select="vm.importSiteModel($files)">\n\t\t\t\t</input-button>\n\t\t\t\t<default-button class="btn-block btn-default"\n\t\t\t\t ng-click="vm.generateSiteModel()"\n\t\t\t\t in-progress="vm.isGenerateInProgress()">\n\t\t\t\t\t<i class="fa fa-magic"></i>\n\t\t\t\t\t<span translate>Auto-generate</span>\n\t\t\t\t</default-button>\n\t\t\t\t<hr>\n\t\t\t\t<div class="checkbox">\n\t\t\t\t\t<label>\n\t\t\t\t\t\t<input type="checkbox" ng-model="vm.SiteModelEditorService.snappingEnabled">\n\t\t\t\t\t\t<span translate>Snap to lines and vertices</span>\n\t\t\t\t\t</label>\n\t\t\t\t</div>\n\t\t\t\t<div class="checkbox">\n\t\t\t\t\t<label>\n\t\t\t\t\t\t<input type="checkbox" ng-model="vm.SiteModelEditorService.rectangleSnapping">\n\t\t\t\t\t\t<span translate>Snap to 90° angle</span>\n\t\t\t\t\t</label>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n\t<vector-map-selection></vector-map-selection>\n\t<alignment-helper></alignment-helper>\n\n\t<modal>\n\t\t<div class="modal fade" id="confirmSiteModelGeneration" tabindex="-1" role="dialog"\n\t\t aria-labelledby="confirmSiteModelGeneration" aria-hidden="true" data-backdrop="static">\n\t\t\t<div class="modal-dialog">\n\t\t\t\t<div class="modal-content">\n\t\t\t\t\t<div class="modal-header">\n\t\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}"\n\t\t\t\t\t\t data-dismiss="modal">\n\t\t\t\t\t\t<h4 translate translate-context="title">\n\t\t\t\t\t\t\tConfirm\n\t\t\t\t\t\t</h4>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="modal-body">\n\t\t\t\t\t\t<span translate>Please confirm the automatic generation of the site model. This action will overwrite the existing site model and remove all maps that may have been added.</span>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="modal-footer">\n\t\t\t\t\t\t<close-button data-dismiss="modal"></close-button>\n\t\t\t\t\t\t<ok-button data-dismiss="modal"\n\t\t\t\t\t\t ng-click="vm.confirmSiteModelGeneration()">\n\t\t\t\t\t\t</ok-button>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</modal>\n\n\t<modal>\n\t\t<div class="modal fade" id="confirmSiteModelChange" tabindex="-1" role="dialog"\n\t\t aria-labelledby="confirmSiteModelChange" aria-hidden="true" data-backdrop="static">\n\t\t\t<div class="modal-dialog">\n\t\t\t\t<div class="modal-content">\n\t\t\t\t\t<div class="modal-header">\n\t\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}"\n\t\t\t\t\t\t data-dismiss="modal">\n\t\t\t\t\t\t<h4 translate translate-context="title">\n\t\t\t\t\t\t\tConfirm\n\t\t\t\t\t\t</h4>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="modal-body">\n\t\t\t\t\t\t<span translate\n\t\t\t\t\t\t translate-params-count="vm.totalMapToRegenerate"\n\t\t\t\t\t\t translate-n="vm.totalMapToRegenerate"\n\t\t\t\t\t\t translate-plural="{{count}} maps will be removed. This action will require you to regenerate your maps.">\n\t\t\t\t\t\t\t1 map will be removed. This action will require you to regenerate your maps.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="modal-footer">\n\t\t\t\t\t\t<cancel-button data-dismiss="modal"></cancel-button>\n\t\t\t\t\t\t<ok-button data-dismiss="modal"\n\t\t\t\t\t\t ng-click="vm.saveSiteModel()">\n\t\t\t\t\t\t</ok-button>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</modal>\n\n\t<site-model-errors></site-model-errors>\n</form>\n\n<modal>\n\t<site-model-entity-editor model="vm.siteModelEditorModel" parent-controller="vm"\n\t full-editor="true" modal-id="editEntityFromEditor">\n\t</site-model-entity-editor>\n</modal>\n\n<save-discard-confirmation\n\t\tmodal-id="confirmUnsavedSiteModel"\n\t\ton-save-callback="vm.validateAndSaveSiteModel()"\n\t\ton-discard-callback="vm.discardChanges()"\n\t\tdeferred-promise="vm.modalDeferred"\n\t\tsubject= "{{\'Site Model\' | translate:\'title\'}}">\n</save-discard-confirmation>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){var i=n(11),r=n(1451);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"site-model-editor .site-model-tree-entity>[role=button].selected,site-model-editor .site-model-tree-entity>[role=button].selected>dataset-group-toolbar .dataset-grp-toolbar button{color:#3398c7}site-model-editor .site-model-tree-entity>[role=button].selected>dataset-group-toolbar .dataset-grp-toolbar button:hover{border-color:#3398c7}site-model-editor .add-building{background-color:rgba(12,103,122,.8)}site-model-editor .add-building:focus,site-model-editor .add-building:hover{background-color:#15b5d7}site-model-editor .add-navigation{background-color:#00953e}site-model-editor .add-navigation:focus,site-model-editor .add-navigation:hover{background-color:#00c853}",""]),t.exports=e},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1453),n(1454);var r=n(20),o=n(179),a=function(){function e(t,e){var n=this;this.SiteModelEditorService=t,this.gettextCatalog=e,this.ViolationType=o.ViolationType,this.SiteModelEditorService.showSiteModelErrorsModal.connect(function(t){return n.showErrorList(t)})}return e.$inject=["SiteModelEditorService","gettextCatalog"],e.prototype.isBlank=function(t){return r.isBlank(t)},e.prototype.getFullName=function(t){var e=r.isBlank(t.label)?"":t.label;return r.isBlank(t.name)?e+" <i translate>unnamed</i>":e},e.prototype.showErrorList=function(e){this.siteModelErrors=e.siteModelErrors,this.numberOfErrors=this.getTotalNumberOfViolations(),t("#site-model-errors.modal").modal("show")},e.prototype.getTotalNumberOfViolations=function(){for(var t=0,e=0,n=this.siteModelErrors;e<n.length;e++)t+=n[e].violations.length;return t},e}();e.SiteModelErrorsController=a;var s=function(){function t(){this.controller=a,this.controllerAs="vm",this.restrict="E",this.templateUrl="SiteModelUI/SiteModelErrors/SiteModelErrors.html",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.SiteModelErrorsDirective=s,i.module("IVWebApp").directive("siteModelErrors",s.factory())}).call(this,n(19))},function(t,e,n){var i="SiteModelUI/SiteModelErrors/SiteModelErrors.html",r='<modal>\n\t<div class="modal fade" id="site-model-errors" tabindex="-1" role="dialog"\n\t data-backdrop="static" aria-labelledby="site-model-errors" aria-hidden="true">\n\t\t<div class="modal-dialog">\n\t\t\t<div class="modal-content">\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}"\n\t\t\t\t\t data-dismiss="modal">\n\t\t\t\t\t<h4 translate translate-context="title">\n\t\t\t\t\t\tCannot Save Site Model\n\t\t\t\t\t</h4>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-body">\n\t\t\t\t\t<div class="modal-title"\n\t\t\t\t\t translate\n\t\t\t\t\t translate-params-count="vm.numberOfErrors"\n\t\t\t\t\t translate-n="vm.numberOfErrors"\n\t\t\t\t\t translate-plural="We found {{count}} errors in your site model. Please fix the following entities:">\n\t\t\t\t\t\tWe found 1 error in your site model. Please fix the following entity:\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="site-model-error" ng-repeat="siteModelError in vm.siteModelErrors">\n\t\t\t\t\t\t\x3c!-- Site model entity icon --\x3e\n\t\t\t\t\t\t<img class="entity-icon"\n\t\t\t\t\t\t ng-src="{{siteModelError.affectedEntity.getTypeIcon()}}">\n\n\t\t\t\t\t\t<div class="entity-with-errors">\n\n\t\t\t\t\t\t\t\x3c!-- Names of the entity\'s hierarchy, or \'unnamed\' if no name --\x3e\n\t\t\t\t\t\t\t<span class="text-light-gray" ng-repeat="name in siteModelError.hierarchyNames">\n\t\t\t\t\t\t\t\t<i ng-if="vm.isBlank(name)" translate>unnamed ></i>\n\t\t\t\t\t\t\t\t<span ng-if="!vm.isBlank(name)">{{name}} ></span>\n\t\t\t\t\t\t\t</span>\n\n\t\t\t\t\t\t\t\x3c!-- Name of the entity that contains errors --\x3e\n\t\t\t\t\t\t\t<strong ng-bind-html="vm.getFullName(siteModelError.affectedEntity)">\n\t\t\t\t\t\t\t</strong>\n\n\t\t\t\t\t\t\t\x3c!--List of errors for this site model entity --\x3e\n\t\t\t\t\t\t\t<div ng-repeat="violation in siteModelError.violations">\n\t\t\t\t\t\t\t\t<div ng-if="violation.type === vm.ViolationType.INVALID_GEOMETRY"\n\t\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\t\tMake sure all geometries are closed, do not self-intersect and holes do not touch other holes or the outer boundary\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div ng-if="violation.type === vm.ViolationType.OVERLAPPING_VOLUMES">\n\t\t\t\t\t\t\t\t\t<span translate\n\t\t\t\t\t\t\t\t\t translate-params-full-name="vm.getFullName(violation.overlappingEntity)"\n\t\t\t\t\t\t\t\t\t translate-context="The name of the entity which is\n\t\t\t\t\t\t\t\t\t overlapped will be added at the end of this phrase">\n\t\t\t\t\t\t\t\t\t\tRemove any overlaps with nearby {{fullName}}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div ng-if="violation.type === vm.ViolationType.INCORRECT_HIERARCHY_TYPE">\n\t\t\t\t\t\t\t\t\t<span translate\n\t\t\t\t\t\t\t\t\t translate-context="A list of accepted types will follow.">\n\t\t\t\t\t\t\t\t\t\tThe type of this entity is incompatible with its parent type. Allowed types are:\n\t\t\t\t\t\t\t\t\t</span>\n\n\t\t\t\t\t\t\t\t\t\x3c!-- List of all accepted types --\x3e\n\t\t\t\t\t\t\t\t\t<span ng-repeat="acceptedType in violation.acceptedTypes">\n\t\t\t\t\t\t\t\t\t\t{{acceptedType}},\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div ng-if="violation.type === vm.ViolationType.FREE_SPACE_NAVIGATION_AREA_WITH_CHILDREN"\n\t\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\t\tFree space navigation areas can\'t have children.\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div ng-if="violation.type === vm.ViolationType.CHILD_NOT_CONTAINED_IN_PARENT_ENTITY"\n\t\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\t\tMake sure this entity is completely contained in the parent entity.\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div ng-if="violation.type === vm.ViolationType.HEIGHT_NOT_CONTAINED_IN_PARENT"\n\t\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\t\tMake sure the height of this entity is fully contained in the parent entity\'s height.\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-footer">\n\t\t\t\t\t<ok-button data-dismiss="modal"></ok-button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){var i=n(11),r=n(1455);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"#site-model-errors .site-model-error{margin-left:15px;padding:9px 0;border-bottom:1px solid #d3d3d3}#site-model-errors .site-model-error:last-child{border-bottom:none}#site-model-errors .modal-title{padding-bottom:10px}#site-model-errors .modal-body{padding:15px 15px 0}#site-model-errors .entity-icon{width:50px;height:50px;vertical-align:top}#site-model-errors .entity-with-errors{display:inline-block;max-width:499px}",""]),t.exports=e},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(1457);var a=n(185),s=n(199),c=function(t){function e(e,n,i,r,o,a,c){var l=t.call(this,a,c,r,o)||this;return l.UserService=e,l.SiteModelService=n,l.SiteModelTypeService=i,l.MIN_FLOOR_HEIGHT=s.SiteModelEditorService.MIN_FLOOR_HEIGHT,l}return r(e,t),e.$inject=["UserService","SiteModelService","SiteModelTypeService","$element","ErrorService","SiteModelRepository","gettextCatalog"],e.prototype.canEditName=function(){return this.UserService.isAdmin()},e}(a.EntityEditorController);e.SiteModelEntityEditorController=c;var l=function(){function t(){this.restrict="E",this.templateUrl="SiteModelUI/SiteModelEntityEditor.html",this.controller=c,this.controllerAs="vm",this.scope=!0,this.bindToController={model:"=",parentController:"=",modalId:"@",fullEditor:"@?"}}return t.factory=function(){return function(){return new t}},t}();e.SiteModelEntityEditorDirective=l,o.module("IVWebApp").directive("siteModelEntityEditor",l.factory())},function(t,e,n){var i="SiteModelUI/SiteModelEntityEditor.html",r='<div class="modal fade" id="{{vm.modalId}}" tabindex="-1" role="dialog"\n aria-labelledby="{{vm.modalId}}"\n aria-hidden="true"\n data-backdrop="static">\n\t<div class="modal-dialog modal-dialog-wide">\n\t\t<div class="modal-content">\n\n\t\t\t<div class="modal-header">\n\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t data-dismiss="modal"\n\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}">\n\t\t\t\t<h4 translate translate-context="title">\n\t\t\t\t\tEdit Site Model Entity\n\t\t\t\t</h4>\n\t\t\t</div>\n\n\t\t\t<div class="modal-body">\n\t\t\t\t<div class="form-horizontal">\n\t\t\t\t\t<div class="form-group no-margin">\n\t\t\t\t\t\t\x3c!--Name--\x3e\n\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t<label class="col-sm-3 control-label no-padding-left" for="siteModelNameEdit"\n\t\t\t\t\t\t\t translate>Name</label>\n\t\t\t\t\t\t\t<div class="col-sm-3 no-padding-horizontal margin-bottom">\n\t\t\t\t\t\t\t\t<input class="form-control" id="siteModelNameEdit" type="text"\n\t\t\t\t\t\t\t\t ng-model="vm.model.name" ng-change="vm.parentController.setHasChanges()" init-focus ng-readonly="!vm.canEditName()">\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\x3c!--Type--\x3e\n\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t<label class="col-sm-3 control-label no-padding-left" for="siteModelTypeEdit"\n\t\t\t\t\t\t\t translate>Type</label>\n\t\t\t\t\t\t\t<div class="col-sm-3 no-padding-horizontal margin-bottom" ng-if="vm.model.getTypeIsChangeable()">\n\t\t\t\t\t\t\t\t<select class="form-control uppercase" id="siteModelTypeEdit"\n\t\t\t\t\t\t\t\t ng-model="vm.model.type"\n\t\t\t\t\t\t\t\t ng-options="attr.type as attr.displayName | translate for attr in vm.SiteModelTypeService.getChangeableTypes()" ng-change="vm.parentController.setHasChanges()">\n\t\t\t\t\t\t\t\t</select>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div class="col-sm-3 no-padding-horizontal margin-bottom" ng-if="!vm.model.getTypeIsChangeable()">\n\t\t\t\t\t\t\t\t<input class="form-control uppercase" type="text" readonly\n\t\t\t\t\t\t\t\t value="{{vm.model.getTypeDisplayName() | translate}}">\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="form-group no-margin">\n\t\t\t\t\t\t\x3c!--Area--\x3e\n\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t<label class="col-sm-3 control-label no-padding-left">\n\t\t\t\t\t\t\t\t<span translate>Area</span>\n\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t<div class="col-sm-3 no-padding-horizontal margin-bottom">\n\t\t\t\t\t\t\t\t<unit-aware-input ng-model="vm.model.area" domain="AREA"\n\t\t\t\t\t\t\t\t fraction-size="0" read-only="true">\n\t\t\t\t\t\t\t\t</unit-aware-input>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\x3c!--Volume--\x3e\n\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t<label class="col-sm-3 control-label no-padding-left">\n\t\t\t\t\t\t\t\t<span translate translate-context="as in the amount of space">Volume</span>\n\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t<div class="col-sm-3 no-padding-horizontal margin-bottom">\n\t\t\t\t\t\t\t\t<unit-aware-input ng-model="vm.model.volume" domain="VOLUME"\n\t\t\t\t\t\t\t\t fraction-size="0" read-only="true">\n\t\t\t\t\t\t\t\t</unit-aware-input>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t\x3c!-- Base level for buildings --\x3e\n\t\t\t\t\t<div class="form-group no-margin"\n\t\t\t\t\t ng-if="vm.model.type === \'BUILDING\' && vm.model.children.length">\n\t\t\t\t\t\t<label class="col-sm-3 control-label no-padding-left"\n\t\t\t\t\t\t translate>Base level</label>\n\t\t\t\t\t\t<div class="col-sm-3 no-padding-horizontal margin-bottom">\n\t\t\t\t\t\t\t<unit-aware-input ng-model="vm.model.children[0].zMin" fraction-size="2"\n\t\t\t\t\t\t\t read-only="!vm.fullEditor"\n\t\t\t\t\t\t\t max="vm.parentController.checkMinHeight(vm.model.children[0])"\n\t\t\t\t\t\t\t change="vm.parentController.updateHeight(vm.model.children[0], true)">\n\t\t\t\t\t\t\t</unit-aware-input>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t\x3c!-- Height for floors and other sub-entities --\x3e\n\t\t\t\t\t<div class="form-group no-margin"\n\t\t\t\t\t ng-if="vm.model.type === \'FLOOR\' || vm.model.type === \'ROOM\' || vm.model.type === \'CUSTOM\'">\n\t\t\t\t\t\t<label class="col-sm-3 control-label no-padding-left"\n\t\t\t\t\t\t translate>Height</label>\n\t\t\t\t\t\t<div class="col-sm-3 no-padding-horizontal margin-bottom">\n\t\t\t\t\t\t\t<unit-aware-input ng-model="vm.model.height" fraction-size="2"\n\t\t\t\t\t\t\t read-only="!vm.fullEditor"\n\t\t\t\t\t\t\t min="vm.MIN_FLOOR_HEIGHT"\n\t\t\t\t\t\t\t max="vm.parentController.checkMaxHeight(vm.model)"\n\t\t\t\t\t\t\t allow-empty="true"\n\t\t\t\t\t\t\t change="vm.parentController.updateTop(vm.model, true)">\n\t\t\t\t\t\t\t</unit-aware-input>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t\x3c!-- add/edit custom attributes --\x3e\n\t\t\t\t\t<attributes-editor model="vm.model"\n\t\t\t\t\t key-suggestions="[\'external_entity_id\']"\n\t\t\t\t\t value-suggestions="[\'true\', \'false\']"\n\t\t\t\t\t on-change="vm.parentController.setHasChanges()">\n\t\t\t\t\t</attributes-editor>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class="modal-footer">\n\t\t\t\t<div class="text-left" ng-if="vm.fullEditor">\n\t\t\t\t\t<button class="btn btn-default" ng-if="vm.model.parent && vm.model.inherited"\n\t\t\t\t\t title="{{\'Unlock this entity\\\'s outline from its parent\'|translate}}"\n\t\t\t\t\t ng-click="vm.parentController.unlockEntityToggle(vm.model)">\n\t\t\t\t\t\t<i class="fa fa-chain-broken"></i>\n\t\t\t\t\t\t<span translate>Unlock outline</span>\n\t\t\t\t\t</button>\n\n\t\t\t\t\t<button class="btn btn-default" ng-if="vm.model.parent && !vm.model.inherited"\n\t\t\t\t\t title="{{\'Reset this entity\\\'s outline to its parent\'|translate}}"\n\t\t\t\t\t data-toggle="modal"\n\t\t\t\t\t data-target="#{{vm.modalId}}-resetConfirmation">\n\t\t\t\t\t\t<i class="fa fa-link"></i>\n\t\t\t\t\t\t<span translate>Reset outline</span>\n\t\t\t\t\t</button>\n\n\t\t\t\t\t<default-button\n\t\t\t\t\t\t\ttitle="{{\'Cut a hole in this entity\'|translate}}"\n\t\t\t\t\t\t\tdata-dismiss="modal"\n\t\t\t\t\t\t\tng-click="vm.parentController.enableCuttingMode(vm.model)">\n\t\t\t\t\t\t<i class="fa fa-scissors"></i>\n\t\t\t\t\t\t<span translate>Cut a hole</span>\n\t\t\t\t\t</default-button>\n\n\t\t\t\t\t<button class="btn btn-default"\n\t\t\t\t\t ng-if="vm.model.type !== \'FREE_SPACE_NAVIGATION\' && (vm.model.type !== \'BUILDING\' || !vm.model.children.length)"\n\t\t\t\t\t title="{{\'Add sub-entity\'|translate}}"\n\t\t\t\t\t ng-click="vm.parentController.addEntity(undefined, vm.model, false)">\n\t\t\t\t\t\t<i class="fa fa-plus"></i>\n\t\t\t\t\t\t<span translate>Add sub-entity</span>\n\t\t\t\t\t</button>\n\n\t\t\t\t\t<div class="btn-group dropdown"\n\t\t\t\t\t ng-if="vm.model.type === \'BUILDING\' && vm.model.children.length > 0">\n\t\t\t\t\t\t<default-button class="dropdown-toggle btn-default" data-toggle="dropdown"\n\t\t\t\t\t\t aria-haspopup="true" aria-expanded="false"\n\t\t\t\t\t\t title="{{\'Add floor\'|translate}}">\n\t\t\t\t\t\t\t<i class="fa fa-plus"></i>\n\t\t\t\t\t\t\t<span translate>Add floor</span>\n\t\t\t\t\t\t\t<span class="caret"></span>\n\t\t\t\t\t\t</default-button>\n\t\t\t\t\t\t<ul class="dropdown-menu dropdown-center">\n\t\t\t\t\t\t\t<li ng-click="vm.parentController.addEntity(undefined, vm.model, false)"\n\t\t\t\t\t\t\t class="text-center">\n\t\t\t\t\t\t\t\t<i class="fa fa-plus"></i>\n\t\t\t\t\t\t\t\t<span translate>Add floor on top</span>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t<li ng-click="vm.parentController.addEntity(undefined, vm.model, true)"\n\t\t\t\t\t\t\t class="text-center">\n\t\t\t\t\t\t\t\t<i class="fa fa-plus"></i>\n\t\t\t\t\t\t\t\t<span translate>Add floor on bottom</span>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t</ul>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="mt-10">\n\t\t\t\t\t<button class="btn btn-default pull-left"\n\t\t\t\t\t title="{{\'Export entity\'|translate}}"\n\t\t\t\t\t ng-if="vm.model.id !== undefined"\n\t\t\t\t\t ng-click="vm.parentController.exportSiteModel([vm.model.id], vm.model.name ? vm.model.name : \'site_model_entity\')">\n\t\t\t\t\t\t<i class="fa fa-download"></i>\n\t\t\t\t\t\t<span translate>Export entity</span>\n\t\t\t\t\t</button>\n\t\t\t\t\t<input-button class="btn-file panel-control-button pull-left"\n\t\t\t\t\t in-progress="vm.parentController.importingSiteModel"\n\t\t\t\t\t ng-show="vm.model.id !== undefined && vm.fullEditor">\n\t\t\t\t\t\t<i class="fa fa-upload"></i>\n\t\t\t\t\t\t<span translate>Import to entity</span>\n\t\t\t\t\t\t<input type="file" accept=".json,application/json" hidden\n\t\t\t\t\t\t ng-disabled="vm.parentController.importingSiteModel"\n\t\t\t\t\t\t ngf-select="vm.parentController.importSiteModelToEditorEntity($files)">\n\t\t\t\t\t</input-button>\n\n\t\t\t\t\t<delete-confirmation\n\t\t\t\t\t\t\tng-click="vm.parentController.prepareEntityToDelete(vm.model)"\n\t\t\t\t\t\t\ton-confirm-callback="vm.parentController.deleteConfirmed()"\n\t\t\t\t\t\t\tng-show="vm.fullEditor">\n\t\t\t\t\t\t<span translate>This entity and all its sub-entities will be deleted.</span>\n\t\t\t\t\t</delete-confirmation>\n\n\t\t\t\t\t<save-button ng-show="!vm.fullEditor"\n\t\t\t\t\t\t\tdata-dismiss="modal"\n\t\t\t\t\t\t\tng-click="vm.parentController.saveSitemodel()">\n\t\t\t\t\t</save-button>\n\n\t\t\t\t\t<ok-button ng-show="vm.fullEditor"\n\t\t\t\t\t data-dismiss="modal">\n\t\t\t\t\t</ok-button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n\n\x3c!-- Confirm a reset of the outline --\x3e\n<modal>\n\t<div class="modal fade" id="{{vm.modalId}}-resetConfirmation" tabindex="-1" role="dialog"\n\t aria-labelledby="{{vm.modalId}}-resetConfirmation" aria-hidden="true">\n\t\t<div class="modal-dialog">\n\t\t\t<div class="modal-content">\n\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<h4 translate translate-context="title">Confirm</h4>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="modal-body">\n\t\t\t\t\t<span translate>\n\t\t\t\t\t\tThe outline of this entity will be reset to its parent.\n\t\t\t\t\t</span>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="modal-footer">\n\t\t\t\t\t<cancel-button data-dismiss="modal"></cancel-button>\n\t\t\t\t\t<discard-button data-dismiss="modal" ng-click="vm.parentController.unlockEntityToggle(vm.model)">\n\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\tReset\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</discard-button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1459);var r=function(){function t(){}return Object.defineProperty(t.prototype,"model",{get:function(){return this._model},set:function(t){this._model=t,this.resetInputs()},enumerable:!0,configurable:!0}),t.prototype.addNewAttribute=function(){void 0!==this.newKey&&void 0!==this.newValue&&(this.model.attributes[this.newKey]=this.newValue,this.onChange&&this.onChange(),this.resetInputs())},t.prototype.removeAttribute=function(t){delete this.model.attributes[t]},t.prototype.resetInputs=function(){this.newKey=void 0,this.newValue=void 0},t}();e.AttributesEditorController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="Core/Misc/AttributesEditor.html",this.controller=r,this.controllerAs="vm",this.scope=!0,this.bindToController={model:"=",keySuggestions:"=?",valueSuggestions:"=?",onChange:"&?"}}return t.factory=function(){return function(){return new t}},t}();e.AttributesEditorDirective=o,i.module("IVWebApp").directive("attributesEditor",o.factory())},function(t,e){var n="Core/Misc/AttributesEditor.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="form-group no-margin">\n\t<div class="col-sm-12 margin-top margin-bottom no-padding-left">\n\t\t<strong translate translate-context="title">Custom Attributes</strong>\n\t</div>\n\t<label class="col-sm-2 col-sm-offset-1 control-label no-padding-left" for="attributeKeyEdit"\n\t translate translate-context="key as in key-value pair">Key</label>\n\t<div class="col-sm-3 no-padding-horizontal margin-bottom">\n\t\t<input class="form-control" id="attributeKeyEdit" type="text" list="key-suggestions"\n\t\t ng-model="vm.newKey">\n\t</div>\n\t<label class="col-sm-2 control-label no-padding-left" for="attributeValueEdit"\n\t translate>Value</label>\n\t<div class="col-sm-3 no-padding-horizontal margin-bottom">\n\t\t<input class="form-control" id="attributeValueEdit" type="text" list="value-suggestions"\n\t\t ng-model="vm.newValue">\n\t</div>\n\t<div class="col-sm-1 text-right no-padding-horizontal margin-bottom">\n\t\t<button class="btn btn-primary" ng-click="vm.addNewAttribute()" title="{{\'Add attribute\'|translate}}">\n\t\t\t<i class="fa fa-plus"></i>\n\t\t</button>\n\t</div>\n\t<datalist id="key-suggestions">\n\t\t<option ng-repeat="suggestion in keySuggestions" value="{{suggestion}}"></option>\n\t</datalist>\n\t<datalist id="value-suggestions">\n\t\t<option ng-repeat="suggestion in valueSuggestions" value="{{suggestion}}"></option>\n\t</datalist>\n</div>\n\n<div class="form-group no-margin" ng-repeat="(key, value) in vm.model.attributes">\n\t<div>\n\t\t<div class="col-sm-offset-3 col-sm-3 no-padding-horizontal margin-bottom">\n\t\t\t<input class="form-control" type="text" readonly\n\t\t\t ng-model="key">\n\t\t</div>\n\t\t<div class="col-sm-offset-2 col-sm-3 no-padding-horizontal margin-bottom">\n\t\t\t<input class="form-control" type="text" readonly\n\t\t\t ng-model="value">\n\t\t</div>\n\t\t<div class="col-sm-1 text-right no-padding-horizontal margin-bottom">\n\t\t\t<button class="btn btn-default" ng-click="vm.removeAttribute(key)" title="{{\'Remove attribute\'|translate}}">\n\t\t\t\t<i class="fa fa-trash-o"></i>\n\t\t\t</button>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e){var n="Alignment/AlignmentHelper.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="panel panel-default">\n\t<div class="panel-heading" data-toggle="collapse" data-target="#viewConfiguration">\n\t\t<i class="collapse-expand-chevron"></i>\n\t\t<span class="panel-title" translate translate-context="title">\n\t\t\tView Configuration\n\t\t</span>\n\t</div>\n\t<div id="viewConfiguration" class="panel-collapse collapse in">\n\t\t<div class="panel-body">\n\t\t\t<div class="checkbox">\n\t\t\t\t<label>\n\t\t\t\t\t<input type="checkbox"\n\t\t\t\t\t ng-model="vmAlignmentHelper.helperTV.visible"\n\t\t\t\t\t ng-change="vmAlignmentHelper.alignmentHelperChanged()">\n\t\t\t\t\t<div class="data-set-icon"\n\t\t\t\t\t ng-style="{background: vmAlignmentHelper.helperTV.viewport.info.getColorCSS()}"></div>\n\t\t\t\t\t{{vmAlignmentHelper.helperTV.viewport.info.caption | translate}}\n\t\t\t\t</label>\n\t\t\t</div>\n\t\t\t<div class="checkbox">\n\t\t\t\t<label>\n\t\t\t\t\t<input type="checkbox"\n\t\t\t\t\t ng-model="vmAlignmentHelper.helperSV2.visible"\n\t\t\t\t\t ng-change="vmAlignmentHelper.alignmentHelperChanged()">\n\t\t\t\t\t<div class="data-set-icon"\n\t\t\t\t\t ng-style="{background: vmAlignmentHelper.helperSV2.viewport.info.getColorCSS()}"></div>\n\t\t\t\t\t{{vmAlignmentHelper.helperSV2.viewport.info.caption | translate}}\n\t\t\t\t</label>\n\t\t\t</div>\n\t\t\t<div class="checkbox">\n\t\t\t\t<label>\n\t\t\t\t\t<input type="checkbox"\n\t\t\t\t\t ng-model="vmAlignmentHelper.helperSV1.visible"\n\t\t\t\t\t ng-change="vmAlignmentHelper.alignmentHelperChanged()">\n\t\t\t\t\t<div class="data-set-icon"\n\t\t\t\t\t ng-style="{background: vmAlignmentHelper.helperSV1.viewport.info.getColorCSS()}"></div>\n\t\t\t\t\t{{vmAlignmentHelper.helperSV1.viewport.info.caption | translate}}\n\t\t\t\t</label>\n\t\t\t</div>\n\t\t\t<div class="checkbox">\n\t\t\t\t<label>\n\t\t\t\t\t<input type="checkbox"\n\t\t\t\t\t ng-model="vmAlignmentHelper.helperDefault.visible"\n\t\t\t\t\t ng-change="vmAlignmentHelper.alignmentHelperChanged()">\n\t\t\t\t\t<div class="data-set-icon"\n\t\t\t\t\t ng-style="{background: vmAlignmentHelper.helperDefault.viewport.info.getColorCSS()}"></div>\n\t\t\t\t\t{{vmAlignmentHelper.helperDefault.viewport.info.caption | translate}}\n\t\t\t\t</label>\n\t\t\t</div>\n\t\t\t<hr>\n\t\t\t<div class="checkbox">\n\t\t\t\t<label>\n\t\t\t\t\t<input type="checkbox"\n\t\t\t\t\t ng-model="vmAlignmentHelper.pointCloudConfig.showPanosInPerspective"\n\t\t\t\t\t ng-change="vmAlignmentHelper.settingShowPanosInPerspectiveChangedCallback()">\n\t\t\t\t\t<span translate>\n\t\t\t\t\tShow panoramas in perspective view\n\t\t\t\t</span>\n\t\t\t\t</label>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1462);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"alignment-helper .data-set-icon{margin-top:-4px}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(141),o=n(25),a=(n(15),n(38),n(147));n(65),n(1464),n(646),n(1465),n(1466);var s=n(148),c=n(21),l=n(81),u=n(6),d=n(0),p=n(0),h=n(38),f=n(15),g=function(){function t(t,e,n){this.SidebarMenuService=t,this.ConfigService=e,this.gettext=n,this.initSideMenuItem()}return t.prototype.initSideMenuItem=function(){var t=this,e=(new s.SidebarMenuItemBuilder).setKey(l.SidebarMenuItemsKey.VIEW).setTitle(this.gettext("View",void 0,"title")).setIcon(new r.IconInfo("material-icons","remove_red_eye")).setIsVisible(function(){return t.ConfigService.getBoolean(o.Configs.MENU_VIEW_VISIBLE,!0)}).setTemplate(c.TemplateName.VIEW_MENU).setClassCallback(function(){return"sidebar-menu-item-view"}).setOrder(a.SidebarMenuItemsOrder.VIEW).build();this.SidebarMenuService.addItem(e)},t.ɵfac=function(e){return new(e||t)(p.ɵɵinject(h.SidebarMenuService),p.ɵɵinject(f.ConfigService),p.ɵɵinject("gettext"))},t.ɵprov=p.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.ViewModule=g,p.ɵsetClassMetadata(g,[{type:d.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:h.SidebarMenuService},{type:f.ConfigService},{type:void 0,decorators:[{type:d.Inject,args:["gettext"]}]}]},null),i.module("IVWebApp").service("ViewModule",u.downgradeInjectable(g))},function(t,e,n){"use strict";n.r(e);var i=n(2);!function(){function t(t,e,n,i,r){t.config=e.config,t.ViewService=i,this.togglePanoramas=function(){e.showPanoramas(!e.config.showPanoramas)},this.toggleMeshes=function(){e.showMeshes(!e.config.showMeshes)},this.showMeshMenu=function(){return e.config.showMeshes},this.toggleLocationMarkers=function(){e.showLocationMarkers(!e.config.showLocationMarkers)},this.isMeshesOptionFeatureEnabled=function(){return r.featureFlags.meshesEnabled},this.showMeshesOptionEnabled=function(){return e.config.showMeshesOptionEnabled},this.showPanoramasOptionEnabled=function(){return e.config.showPanoramasOptionEnabled},this.showSecondaryViewOptionEnabled=function(){return e.config.showSecondaryViewOptionEnabled},this.showLocationMarkersOptionEnabled=function(){return e.config.showLocationMarkersOptionEnabled}}t.$inject=["$scope","ViewMenuService","IV","ViewService","FeatureFlagsService"],Object(i.module)("IVWebApp").controller("ViewMenuController",t)}()},function(t,e,n){"use strict";n.r(e);var i=n(2),r=n(254),o=n(7),a=n(143),s=n(222);IndoorViewerWebApp.controller("PointCloudMenuController",["$scope","gettextCatalog","PointCloudMenuService","ModeService","DatasetRepository","ViewMenuService","TrackingService",function(t,e,n,c,l,u,d){function p(n){1==n.material.useEDL?(t.tooltips[n.name].inactiveFromShading=e.getString("Inactive: Shading is enabled"),1==n.material.opacity?t.tooltips[n.name].inactiveFromShadingOpacity=e.getString("Inactive: Shading is enabled and opacity is 1"):t.tooltips[n.name].inactiveFromShadingOpacity=e.getString("Inactive: Shading is enabled")):1==n.material.opacity?(t.tooltips[n.name].inactiveFromShading="",t.tooltips[n.name].inactiveFromShadingOpacity=e.getString("Inactive: Opacity is 1")):(t.tooltips[n.name].inactiveFromShading="",t.tooltips[n.name].inactiveFromShadingOpacity="")}t.config=n.config,t.dropdownMenus=n.dropdownMenus,t.settingsPanes=n.settingsPanes,t.mode=c.currentMode,t.tooltips={},t.settingAutoActivationChangedCallback=function(){n.configAutoActivationChanged.emit(t.config[a.PointCloudConfig.AUTO_ACTIVATION])},t.settingBrightnessChangedCallback=function(){n.configBrightnessChanged.emit(t.config[a.PointCloudConfig.BRIGHTNESS])},t.settingColorHueOffsetChangedCallback=function(){n.configColorHueOffsetChanged.emit(t.config[a.PointCloudConfig.HUE_OFFSET])},t.settingColorHueScaleChangedCallback=function(){n.configColorHueScaleChanged.emit(t.config[a.PointCloudConfig.HUE_SCALE])},t.settingDepthCullingChangedCallback=function(){n.configDepthCullingChanged.emit(t.config[a.PointCloudConfig.MAX_DIST])},t.settingOpacityChangedCallback=function(){n.configOpacityChanged.emit(t.config[a.PointCloudConfig.OPACITY])},t.settingPcResolutionChangedCallback=function(){n.configPcResolutionChanged.emit(t.config[a.PointCloudConfig.MAX_DEPTH])},t.settingShowPointCloudChangedCallback=function(){var e=t.config[a.PointCloudConfig.SHOW_POINT_CLOUD];n.configShowPointCloudChanged.emit(e),d.trackRenderingModeChanged(s.RenderingMode.PointCloud,e),u.showPanoramas(!e,!1)},t.settingZBufferingChangedCallback=function(){n.configZBufferingChanged.emit(t.config[a.PointCloudConfig.Z_BUFFERING])},t.advancedSettingChangedCallback=function(t){n.advancedSettingChangedCallback(t),p(t)},t.applyPreset=function(t,e,i){n.applyPreset(t,e,i),p(i)},t.showLegacyOptions=function(){return Object(o.some)(l.data,function(t){return t.pointCloudVisible&&t.getPointCloudType()===r.PointCloudType.OCTREE})},t.showPotreeOptions=function(){return Object(o.some)(l.data,function(t){return t.pointCloudVisible&&t.getPointCloudType()===r.PointCloudType.POTREE})},t.showPointCloudOptionEnabled=function(){return u.config.showPointCloudOptionEnabled},t.showPointCloudAutomaticActivationOptionEnabled=function(){return u.config.showPointCloudAutomaticActivationOptionEnabled},Object(i.forEach)(n.settingsPanes,function(e){e.collapsed=!0,t.tooltips[e.name]={},p(e)}),n.findBoundingBox()}])},function(t,e,n){"use strict";n.r(e);var i=n(2),r=n(20),o=n(40),a=n(25),s=n(16),c=n(342),l=n(105);function u(t,e){var n;if("undefined"==typeof Symbol||null==t[Symbol.iterator]){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return d(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?d(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var i=0,r=function(){};return{s:r,n:function(){return i>=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,s=!1;return{s:function(){n=t[Symbol.iterator]()},n:function(){var t=n.next();return a=t.done,t},e:function(t){s=!0,o=t},f:function(){try{a||null==n.return||n.return()}finally{if(s)throw o}}}}function d(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,i=new Array(e);n<e;n++)i[n]=t[n];return i}IndoorViewerWebApp.service("PointCloudMenuService",["ConfigService","DatasetRepository","gettext","ModeService","ViewService","TransformService",function(t,e,n,d,p,h){var f=this,g=this;this.showPointClouds=function(t){g.config.showPointCloud!==t&&(g.config.showPointCloud=t,g.configShowPointCloudChanged.emit(t))},this.isCloudVisible=function(){return g.config.showPointCloud},this.findBoundingBox=function(){e.findAll().then(function(t){var e,n=!1,i=u(t);try{for(i.s();!(e=i.n()).done;){var r=e.value;"POTREE"===r.getPointCloudType()&&(w(r),n=!0)}}catch(t){i.e(t)}finally{i.f()}n&&(g.config.perspectiveMaterial.z[0]=g.config.orthoMaterial.z[0]=g.config.zMin,g.config.perspectiveMaterial.z[1]=g.config.orthoMaterial.z[1]=g.config.zMax)})};var m={id:c.PointSizeType.FIXED,name:n("Fixed"),minSize:.01,maxSize:10,stepSize:.01},v={id:c.PointSizeType.ATTENUATED,name:n("Attenuated"),minSize:.01,maxSize:1,stepSize:.01},y={id:c.PointSizeType.ADAPTIVE,name:n("Adaptive"),minSize:.01,maxSize:1,stepSize:.01},b=v;function w(t){var e=t.dataset2local(t.getBoundingBoxMin().clone()),n=t.dataset2local(t.getBoundingBoxMax().clone());void 0===g.config.zMin?(g.config.zMin=Math.floor(10*e.z)/10,g.config.zMax=Math.ceil(10*n.z)/10):(g.config.zMin=Math.min(Math.floor(10*e.z)/10,g.config.zMin),g.config.zMax=Math.max(Math.ceil(10*n.z)/10,g.config.zMax))}this.config={showPointCloud:!1,showPanosInPerspective:!1,autoActivation:!0,opacity:.1,brightness:1e3,maxDist:300,maxDepth:6,hueOffset:0,hueScale:-.2,zBuffering:!1,distance_to_depth:[[8,8],[12,7],[25,6],[1/0,5]],same_res:!1,zMin:void 0,zMax:void 0,pointCountTarget:4,minNodeSize:50,perspectiveMaterial:{opacity:.4,brightness:1e3,z:[9.8,15.6],useEDL:!1,EDLStrength:1,pointSize:.7,pointSizeSelectedOption:v,colorStyleSelectedOption:{id:"0",name:n("Full color")},pointShapeSelectedOption:{id:"1",name:n("Circle")},normalsFiltering:!1},orthoMaterial:{opacity:.1,brightness:1e3,z:[9.8,15.6],pointSize:.7,colorStyleSelectedOption:{id:"0",name:n("Full color")},pointShapeSelectedOption:{id:"1",name:n("Circle")},pointSizeSelectedOption:m,normalsFiltering:!0}},this.dropdownMenus={pointSizeOptions:[m,v,y],colorStyleOptions:[{id:"1",name:n("Single color")},{id:"0",name:n("Full color")},{id:"3",name:n("Elevation")},{id:"11",name:n("Normals")},{id:"4",name:n("Intensity")},{id:"5",name:n("Intensity Gradient")}],pointShapeOptions:[{id:"0",name:n("Square",void 0,"Geometric Shape")},{id:"1",name:n("Circle",void 0,"Geometric Shape")}]},this.presets={colored:{name:"colored",caption:n("Colored"),settings:{pointSize:.4,opacity:1,useEDL:!1},generalSettings:{},dropdowns:{pointSizeSelectedOption:b,colorStyleSelectedOption:{id:"0",name:n("Full color")},pointShapeSelectedOption:{id:"0",name:n("Square")}}},ortho_colored:{name:"ortho_colored",caption:n("Colored"),settings:{pointSize:.4,opacity:1},generalSettings:{},dropdowns:{pointSizeSelectedOption:m,colorStyleSelectedOption:{id:"0",name:n("Full color")},pointShapeSelectedOption:{id:"0",name:n("Square")}}},shaded:{name:"shaded",caption:n("Shaded"),settings:{pointSize:.2,useEDL:!0},generalSettings:{},dropdowns:{pointSizeSelectedOption:b,colorStyleSelectedOption:{id:"0",name:n("Full color")},pointShapeSelectedOption:{id:"0",name:n("Square")}}},singleColorHighTransparency:{name:"singleColorHighTransparency",caption:n("Transparent color"),settings:{pointSize:.4,opacity:.25,brightness:1e3,useEDL:!1},generalSettings:{},dropdowns:{pointSizeSelectedOption:b,colorStyleSelectedOption:{id:"1",name:n("Single color")},pointShapeSelectedOption:{id:"0",name:n("Square")}}},singleColor:{name:"singleColor",caption:n("Single color"),settings:{pointSize:.2,opacity:.3},generalSettings:{},dropdowns:{colorStyleSelectedOption:{id:"1",name:n("Single color")},pointShapeSelectedOption:{id:"0",name:n("Square")}}},elevation:{name:"elevation",caption:n("Elevation"),settings:{pointSize:.2,opacity:.3},generalSettings:{},dropdowns:{colorStyleSelectedOption:{id:"3",name:n("Elevation")},pointShapeSelectedOption:{id:"0",name:n("Square")}}},highPerformance:{name:"highPerformance",caption:n("High performance"),settings:{},generalSettings:{maxDist:50,pointCountTarget:1,maxDepth:4,minNodeSize:50},dropdowns:{}},balanced:{name:"balanced",caption:n("Balanced"),settings:{},generalSettings:{maxDist:150,maxDepth:5,pointCountTarget:4,minNodeSize:50},dropdowns:{}},highQuality:{name:"highQuality",caption:n("High quality"),settings:{},generalSettings:{maxDist:300,maxDepth:8,pointCountTarget:8,minNodeSize:50},dropdowns:{}}},this.settingsPanes=[{name:"quality",caption:n("Quality",void 0,"title"),presets:[this.presets.highPerformance,this.presets.balanced,this.presets.highQuality],material:{},visibleSettings:{maxDist:!0,maxDepth:!0,pointCountTarget:!0,minNodeSize:!0},visible:function(){return g.config.showPointCloud},currentPreset:void 0,collapsed:!0},{name:"perspective",caption:n("Perspective Appearance",void 0,"title"),presets:[this.presets.colored,this.presets.elevation,this.presets.singleColorHighTransparency],material:this.config.perspectiveMaterial,visibleSettings:{opacity:!0,brightness:!0,colorStyle:!0,pointSizeMode:!0,pointSize:!0,pointShape:!0,edl:!0,edlSupport:!0},visible:function(){return g.config.showPointCloud&&(!d.isDownloadPointCloudMode()||p.getCurrentMainViewMode()===l.SceneViewMode.Perspective)},currentPreset:void 0,collapsed:!0},{name:"ortho",caption:n("Orthographic Appearance",void 0,"title"),presets:[this.presets.ortho_colored,this.presets.singleColor,this.presets.elevation],material:this.config.orthoMaterial,visibleSettings:{opacity:!0,colorStyle:!0,pointSize:!0,pointShape:!0,normalsFiltering:!0},visible:function(){return g.config.showPointCloud&&(d.isDatasetAlignmentMode()||d.isSiteModelEditorMode()||d.isMeasurementsMode()||g.isDownloadPointCloudMapMode())},currentPreset:void 0,collapsed:!0}],this.pointCloudChanged=new s.Signal,this.pointCloudsClearEvent=new s.Signal,this.configAutoActivationChanged=new s.Signal,this.configBrightnessChanged=new s.Signal,this.configColorHueOffsetChanged=new s.Signal,this.configColorHueScaleChanged=new s.Signal,this.configDepthCullingChanged=new s.Signal,this.configOpacityChanged=new s.Signal,this.configPcResolutionChanged=new s.Signal,this.configShowPanosInPerspectiveChanged=new s.Signal,this.configShowPointCloudChanged=new s.Signal,this.configZBufferingChanged=new s.Signal,this.isDownloadPointCloudMapMode=function(){return d.isDownloadPointCloudMode()&&p.getCurrentMainViewMode()===l.SceneViewMode.Map},this.applyPreset=function(t,e,n){if(null!=t){for(var r in n.currentPreset=t,g.presets[t].settings)e[r]=g.presets[t].settings[r];for(var r in g.presets[t].dropdowns)e[r]&&(e[r]={},Object(i.copy)(g.presets[t].dropdowns[r],e[r]));for(var r in g.presets[t].generalSettings)this.config[r]=g.presets[t].generalSettings[r];this.pointCloudChanged.emit()}},this.advancedSettingChangedCallback=function(t){t.currentPreset=void 0,this.pointCloudChanged.emit()},this.applyPreset(Object(o.isMobileBrowser)()?"highPerformance":"balanced",null,this.settingsPanes[0]),this.applyPreset("colored",this.config.perspectiveMaterial,this.settingsPanes[1]),this.applyPreset("singleColor",this.config.orthoMaterial,this.settingsPanes[2]),t.initialized.then(function(){g.showPointClouds(t.getBoolean(a.Configs.LAYERS_POINTCLOUD_VISIBLE,g.config.showPointCloud)),g.config.same_res=t.getBoolean(a.Configs.LAYERS_POINTCLOUD_SAME_RES,!1),g.config.same_res&&console.log("Warning: loading all point cloud tiles at same resolution"),Object(r.invalidateAngular)()}),h.onAfterLocalReferenceSystemChange.connect(function(){f.pointCloudsClearEvent.emit()})}])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(141),o=n(25),a=(n(15),n(38),n(147));n(1468),n(267),n(39),n(391),n(1476),n(1482),n(204);var s=n(148),c=n(21),l=n(81),u=n(6),d=n(0),p=n(0),h=n(38),f=n(15),g=function(){function t(t,e,n){this.SidebarMenuService=t,this.ConfigService=e,this.gettext=n,this.initSideMenuItem()}return t.prototype.initSideMenuItem=function(){var t=this,e=(new s.SidebarMenuItemBuilder).setKey(l.SidebarMenuItemsKey.POI_TYPES).setTitle(this.gettext("POI Types",void 0,"title")).setIcon(new r.IconInfo("material-icons","location_on")).setIsVisible(function(){return t.ConfigService.getBoolean(o.Configs.MENU_POI_VISIBLE,!0)}).setTemplate(c.TemplateName.POITYPES_MENU).setClassCallback(function(){return"sidebar-menu-item-poi-types"}).setOrder(a.SidebarMenuItemsOrder.POI_TYPES).build();this.SidebarMenuService.addItem(e)},t.ɵfac=function(e){return new(e||t)(p.ɵɵinject(h.SidebarMenuService),p.ɵɵinject(f.ConfigService),p.ɵɵinject("gettext"))},t.ɵprov=p.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.PoiTypesModule=g,p.ɵsetClassMetadata(g,[{type:d.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:h.SidebarMenuService},{type:f.ConfigService},{type:void 0,decorators:[{type:d.Inject,args:["gettext"]}]}]},null),i.module("IVWebApp").service("PoiTypesModule",u.downgradeInjectable(g))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(1469),n(1471),n(1472),n(609),n(1474);var i=n(2),r=n(40),o=n(57),a=function(){function t(t,e,n){var i=this;this.PoiTypeService=t,this.LanguageService=e,this.UserService=n,this.localize=this.LanguageService.localize,this.getPoiTypeGroupName=function(t){return i.localize(t.name)},this.typeGroupEditorModel=this.PoiTypeService.createPoiTypeGroup(),this.typeEditorModel=this.PoiTypeService.createPoiType()}return t.$inject=["PoiTypeService","LanguageService","UserService"],t.prototype.isPlatformIos=function(){return r.isPlatform(r.Platform.IOS)},t.prototype.showAll=function(){this.PoiTypeService.types.forEach(function(t){return t.selected=!0})},t.prototype.hideAll=function(){this.PoiTypeService.types.forEach(function(t){return t.selected=!1})},t.prototype.edit=function(t){t||(t=this.PoiTypeService.createPoiTypeGroup()),this.typeGroupEditorModel.copy(t)},Object.defineProperty(t.prototype,"typeGroups",{get:function(){return this.PoiTypeService.typeGroups},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"canCreateGroups",{get:function(){return void 0!==this.UserService.userInfo&&this.UserService.userInfo.checkAttribute(o.GroupAttributes.CAN_CREATE_POI_GROUPS)},enumerable:!0,configurable:!0}),t}();e.PoiTypeGroupListController=a;var s=function(){function t(){this.restrict="E",this.templateUrl="PoiTypeUI/PoiTypeGroupList.html",this.controller=a,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.PoiTypeGroupListDirective=s,i.module("IVWebApp").directive("poiTypeGroupList",s.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1470),n(608);var r=n(57),o=function(){function t(t,e,n){var i=this;this.PoiTypeService=t,this.LanguageService=e,this.UserService=n,this.localize=this.LanguageService.localize,this.getPoiTypeName=function(t){return i.localize(t.name)}}return t.$inject=["PoiTypeService","LanguageService","UserService"],t.prototype.edit=function(t){t||((t=this.PoiTypeService.createPoiType()).poiTypeGroup=this.group),this.editorModel.copy(t)},t.prototype.canCreate=function(){return!!this.group.canWrite&&(0!==this.group.security.groupRead||this.UserService.userInfo&&this.UserService.userInfo.checkAttribute(r.GroupAttributes.CAN_MAKE_PUBLIC))},t}();e.PoiTypeListController=o;var a=function(){function t(){this.restrict="E",this.templateUrl="PoiTypeUI/PoiTypeList.html",this.controller=o,this.controllerAs="vm",this.scope=!0,this.bindToController={group:"=",editorModel:"="}}return t.factory=function(){return function(){return new t}},t}();e.PoiTypeListDirective=a,i.module("IVWebApp").directive("poiTypeList",a.factory())},function(t,e){var n="PoiTypeUI/PoiTypeList.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'\x3c!--editing types and groups and selecting which to render in 3d scene --\x3e\n<div class="checkbox" ng-repeat="type in group.types | orderBy: vm.getPoiTypeName">\n\n\t\x3c!--click to setup and open a modal for editing an existing type--\x3e\n\t<div ng-if="type.poiTypeGroup.canWrite" title="{{\'Edit category\'|translate}}"\n\t ng-click="vm.edit(type)"\n\t data-toggle="modal" data-target="#PoiTypeEditor"\n\t class="poi-type-edit-btn fa fa-pencil" aria-hidden="true"></div>\n\n\t<label>\n\t\t\x3c!--show this types POIs in the 3d scene--\x3e\n\t\t<input type="checkbox" ng-model="type.selected">\n\n\t\t\x3c!--type icon--\x3e\n\t\t<img ng-src="{{type.icon}}" class="poiIcon">\n\n\t\t\x3c!--type name--\x3e\n\t\t<span class="long-title poi-type-title" title="{{type.id + \'. \' + vm.localize(type.name)}}">\n\t\t\t{{vm.localize(type.name)}}\n\t\t</span>\n\t</label>\n</div>\n\n\x3c!-- Add a new POI Type --\x3e\n<div class="checkbox"\n ng-if="vm.canCreate()">\n\t<span title="{{\'Add a new category\'|translate}}" ng-click="vm.edit()"\n\t data-toggle="modal" data-target="#PoiTypeEditor" class="poi-type-add-btn fa fa-plus"\n\t aria-hidden="true">\n\t</span>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(608),n(273);var a=n(185),s=n(273),c=n(7),l=n(136),u=n(8),d=n(89),p=function(t){function e(e,n,i,r,o,a,s,c,l,u){var p=t.call(this,s,c,u,l)||this;return p.PoiTypeService=e,p.PoiService=n,p.LanguageService=i,p.UploadService=r,p.ViewService=o,p.PoiRepository=a,p.localize=p.LanguageService.localize,p.isEmpty=!1,p.countPoisProgress=new d.PromiseProgressWrapper,p.uploadProgress=new d.PromiseProgressWrapper,p}return r(e,t),e.$inject=["PoiTypeService","PoiService","LanguageService","UploadService","ViewService","PoiRepository","PoiTypeRepository","gettextCatalog","ErrorService","$element"],e.prototype.isCountInProgress=function(){return this.countPoisProgress.isInProgress},e.prototype.isUploadInProgress=function(){return this.uploadProgress.isInProgress},e.prototype.save=function(){return s.TranslationEditorController.removeEmptyTranslations(this.model.name),this.isEmpty=s.TranslationEditorController.areTranslationsEmpty(this.model.name),this.isEmpty?Promise.reject(void 0):t.prototype.save.call(this)},e.prototype.onHide=function(){t.prototype.onHide.call(this),this.isEmpty=!1},Object.defineProperty(e.prototype,"zoomLevel",{get:function(){var t=this.ViewService.mapView.getDefaultViewport(),e=this.ViewService.mapView.getCamera(),n=t.getWidth()/(e.right-e.left);return Number(n.toFixed(4))},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"writablePoiTypeGroups",{get:function(){return c.filter(this.PoiTypeService.typeGroups,function(t){return t.security.canWrite})},enumerable:!0,configurable:!0}),e.prototype.isUploadAvailable=function(){return this.UploadService.isProtectedUploadAvailable()},e.prototype.uploadIcon=function(t,n){for(var i=this,r=0,o=t;r<o.length;r++){var a=o[r];this.reportErrorInModal(this.uploadProgress.wrap(this.UploadService.upload(e.ICON_UPLOAD_URL,a).then(function(t){i.model.icon=e.UPLOAD_URL+"/"+t.url}).catch(function(t){throw n.target.value="",t}))).catch(function(){})}},e.prototype.countAssociatedPois=function(){var t=this;this.countPoisProgress.wrap(this.PoiRepository.count((new l.PoiRestFilterBuilder).poiType([this.model]).build())).then(function(e){return t.associatedPoisCount=e}).catch(u.handleWarning)},e.UPLOAD_URL="poi/image",e.ICON_UPLOAD_URL="poi/icon",e}(a.EntityEditorController);e.PoiTypeEditorController=p;var h=function(){function t(){this.restrict="E",this.templateUrl="PoiTypeUI/PoiTypeEditor.html",this.controller=p,this.controllerAs="vm",this.scope=!0,this.bindToController={model:"="}}return t.factory=function(){return function(){return new t}},t}();e.PoiTypeEditorDirective=h,o.module("IVWebApp").directive("poiTypeEditor",h.factory())},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(1473),n(273),n(431),n(430);var a=n(185),s=n(273),c=n(136),l=n(8),u=n(89),d=function(t){function e(e,n,i,r,o,a,s,c,l){var d=t.call(this,o,a,c,l)||this;return d.PoiTypeService=e,d.PoiService=n,d.LanguageService=i,d.PoiRepository=r,d.GroupService=s,d.localize=d.LanguageService.localize,d.isEmpty=!1,d.countPoisProgress=new u.PromiseProgressWrapper,d}return r(e,t),e.$inject=["PoiTypeService","PoiService","LanguageService","PoiRepository","PoiTypeGroupRepository","gettextCatalog","GroupService","$element","ErrorService"],e.prototype.isCountInProgress=function(){return this.countPoisProgress.isInProgress},e.prototype.save=function(){return s.TranslationEditorController.removeEmptyTranslations(this.model.name),this.isEmpty=s.TranslationEditorController.areTranslationsEmpty(this.model.name),this.isEmpty?Promise.reject(void 0):t.prototype.save.call(this)},e.prototype.onHide=function(){t.prototype.onHide.call(this),this.isEmpty=!1},e.prototype.countAssociatedPois=function(){var t=this;this.countPoisProgress.wrap(this.PoiRepository.count((new c.PoiRestFilterBuilder).poiTypeGroup([this.model]).build())).then(function(e){return t.associatedPoisCount=e}).catch(l.handleWarning)},e}(a.EntityEditorController);e.PoiTypeGroupEditorController=d;var p=function(){function t(){this.restrict="E",this.templateUrl="PoiTypeUI/PoiTypeGroupEditor.html",this.controller=d,this.controllerAs="vm",this.scope=!0,this.bindToController={model:"="}}return t.factory=function(){return function(){return new t}},t}();e.PoiTypeGroupEditorDirective=p,o.module("IVWebApp").directive("poiTypeGroupEditor",p.factory())},function(t,e,n){var i="PoiTypeUI/PoiTypeGroupEditor.html",r='\x3c!-- POI Type Group Editor --\x3e\n<div class="modal fade" id="PoiTypeGroupEditor" tabindex="-1" role="dialog"\n aria-labelledby="PoiTypeGroupEditor" aria-hidden="true" data-backdrop="static">\n\t<div class="modal-dialog">\n\t\t<div class="modal-content">\n\n\t\t\t<div class="modal-header">\n\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}"\n\t\t\t\t data-dismiss="modal">\n\n\t\t\t\t<h4 ng-if="!vm.model.id" translate translate-context="title">\n\t\t\t\t\tAdd a New Category Group\n\t\t\t\t</h4>\n\t\t\t\t<h4 ng-if="vm.model.id" translate translate-context="title">\n\t\t\t\t\tEdit Category Group\n\t\t\t\t</h4>\n\t\t\t</div>\n\n\t\t\t<div class="modal-body">\n\t\t\t\t<div class="form-horizontal">\n\t\t\t\t\t\x3c!-- Language --\x3e\n\t\t\t\t\t<translation-editor translations="vm.model.name"\n\t\t\t\t\t col-span="3"\n\t\t\t\t\t selected-language="selectedLanguage">\n\t\t\t\t\t</translation-editor>\n\n\t\t\t\t\t\x3c!-- Type group name --\x3e\n\t\t\t\t\t<div class="form-group" ng-class="{\'has-error\': vm.isEmpty}">\n\t\t\t\t\t\t<label class="col-sm-3 control-label" translate>\n\t\t\t\t\t\t\tName\n\t\t\t\t\t\t</label>\n\t\t\t\t\t\t<div class="col-sm-9">\n\t\t\t\t\t\t\t<input type="text" class="form-control"\n\t\t\t\t\t\t\t ng-model="vm.model.name[selectedLanguage.key]"\n\t\t\t\t\t\t\t ng-disabled="!selectedLanguage.key"\n\t\t\t\t\t\t\t init-focus>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t\x3c!--<div class="form-group"--\x3e\n\t\t\t\t\t \x3c!--ng-include src="\'templates/PermissionsEditor.html\'"--\x3e\n\t\t\t\t\t \x3c!--style="margin-top: 20px"></div>--\x3e\n\n\t\t\t\t\t<div class="form-group" ng-if="vm.model.id">\n\t\t\t\t\t\t<label class="col-sm-3 control-label" translate>\n\t\t\t\t\t\t\tId\n\t\t\t\t\t\t</label>\n\t\t\t\t\t\t<div class="col-sm-9 radio">\x3c!-- radio to get Bootstrap\'s top padding --\x3e\n\t\t\t\t\t\t\t{{vm.model.id}}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t\x3c!--Permissions Editor --\x3e\n\t\t\t\t\t<permission-editor model="vm.model"\n\t\t\t\t\t model-type="\'poi_type_group\'"\n\t\t\t\t\t col-span="3">\n\t\t\t\t\t</permission-editor>\n\n\t\t\t\t</div>\n\n\t\t\t\t<span class="text-danger" ng-show="vm.isEmpty" translate>\n\t\t\t\t\tName cannot be empty\n\t\t\t\t</span>\n\t\t\t\t<span class="text-danger" ng-show="vm.error">\n\t\t\t\t\t{{vm.error.text}}: {{vm.error.statusText}} ({{vm.error.status}})\n\t\t\t\t</span>\n\t\t\t\t<div ng-show="!!vm.error.details">\n\t\t\t\t\t{{vm.error.details}}\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class="modal-footer">\n\t\t\t\t<delete-confirmation class="float-left" ng-show="vm.model.id"\n\t\t\t\t ng-click="vm.countAssociatedPois()"\n\t\t\t\t on-confirm-callback="vm.remove()">\n\t\t\t\t\t<span translate>Are you sure you want to delete this group?</span>\n\t\t\t\t\t<span ng-if="vm.isCountInProgress()" translate\n\t\t\t\t\t translate-context="As in: counting the number of items">\n\t\t\t\t\t\tCounting...\n\t\t\t\t\t</span>\n\t\t\t\t\t<span ng-if="!vm.isCountInProgress()">\n\t\t\t\t\t\t<span translate translate-n="vm.associatedPoisCount"\n\t\t\t\t\t\t translate-plural="All categories will be deleted as well as {{$count}} associated POIs.">\n\t\t\t\t\t\t\tAll categories will be deleted as well as 1 associated POI.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span translate>\n\t\t\t\t\t\tAll categories in this group will also be deleted.\n\t\t\t\t\t</span>\n\t\t\t\t</delete-confirmation>\n\n\t\t\t\t<cancel-button data-dismiss="modal" ng-click="vm.cancel()"></cancel-button>\n\t\t\t\t<ok-button ng-click="vm.save()"></ok-button>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){var i=n(11),r=n(1475);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"poi-type-group-list .panel{padding-left:0;padding-right:0}poi-type-group-list .panel-ios{height:100%}poi-type-group-list .panel-ios .panel-body{padding:0 0 100px;height:inherit;overflow-y:auto}poi-type-group-list .long-title{vertical-align:middle}poi-type-group-list .long-title.poi-type-group-title{width:calc(100% - 25px)}poi-type-group-list .long-title.poi-type-title{width:calc(100% - 36px)}poi-type-group-list .poi-group input[type=checkbox]{display:inline-block;margin-top:8px}poi-type-group-list .poi-group .poi-group-edit-btn{cursor:pointer}poi-type-group-list .poi-group-add-btn{padding-top:9px;padding-bottom:9px;cursor:pointer}poi-type-group-list .poi-group-edit-btn{display:inline-block;margin-right:.6em}poi-type-list label{width:calc(100% - 30px)}poi-type-list .poi-type-add-btn,poi-type-list .poi-type-edit-btn{cursor:pointer;margin-left:.4em}poi-type-list .poi-type-edit-btn,poi-type-list .poiIcon{display:inline-block}poi-type-list .poi-type-edit-btn{margin-right:.6em}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(7),r=n(2);n(1477),n(1478),n(609);var o=n(384),a=n(89),s=n(197),c=n(8),l=n(1480),u=n(630),d=n(610);n(647);var p=n(1481),h=function(){function t(t,e,n,i,r,o,s,c,h,f){var g=this;this.PoiRepository=t,this.MessageReportingService=e,this.gettextCatalog=n,this.UserService=i,this.PoiTypeService=r,this.PoiService=o,this.LanguageService=s,this.ProgressReportService=c,this.ErrorService=h,this.commaSeparator=u.CsvSeparators.COMMA,this.tabSeparator=u.CsvSeparators.TAB,this.semiColonSeparator=u.CsvSeparators.SEMICOLON,this.CSV_FORMAT=".csv",this.JSON_FORMAT=".json",this.exportFormat=this.CSV_FORMAT,this.visibleLanguageFormats=[],this.exportCsvModal="export-csv-modal",this.importCsvModal="import-csv-modal",this.importJsonModal="import-json-modal",this.totalPois=0,this.importedPois=0,this.updatedPois=0,this.importedTypes=0,this.importedGroups=0,this.allPoisCount=0,this.model=new l.DummyRepositoryObject({}),this.importMode=d.PoiImportMode.PRESERVE,this.countPoisProgress=new a.PromiseProgressWrapper,this.importPromiseWrapper=new a.PromiseProgressWrapper,this.clearPromiseWrapper=new a.PromiseProgressWrapper,this.conflictWrapper=this.ErrorService.newWrapper().detector(new p.PoiImportConflictDetector(n)).report().exceptions().network().build(),this.visibleLanguageFormats=this.LanguageService.getUniqueLanguageNumberFormats(),this.setFormats(),s.onLanguageChange.connect(function(){return g.setFormats()}),f.initialized.then(function(){g.model.security.groupRead=f.currentUser.defaultGroupRead,g.model.security.groupWrite=f.currentUser.defaultGroupWrite}).catch(function(){g.model.security.groupRead=0,g.model.security.groupWrite=1})}return t.$inject=["PoiRepository","MessageReportingService","gettextCatalog","UserService","PoiTypeService","PoiService","LanguageService","ProgressReportService","ErrorService","AuthenticationService"],t.prototype.setFormats=function(){this.languageFormat=this.LanguageService.getCurrentLanguageNumberFormat(this.visibleLanguageFormats);var t=this.LanguageService.getLanguage(this.languageFormat.key).decimalSeparator;this.csvSeparator=t===o.DecimalSeparators.COMMA?u.CsvSeparators.SEMICOLON:u.CsvSeparators.COMMA},t.prototype.isImportInProgress=function(){return this.importPromiseWrapper.isInProgress},t.prototype.isClearInProgress=function(){return this.clearPromiseWrapper.isInProgress},t.prototype.isCountInProgress=function(){return this.countPoisProgress.isInProgress},t.prototype.clear=function(){var t=this,e=i.clone(this.PoiRepository.data);this.clearPromiseWrapper.wrap(this.PoiRepository.removeAll()).then(function(){t.PoiService.poisChanged.emit();for(var n=0,i=e;n<i.length;n++){var r=i[n];t.PoiService.onPoiDelete.emit(r)}}).catch(function(){})},t.prototype.isAvailable=function(){return this.UserService.isAdmin()},t.prototype.checkExportFormat=function(){this.exportFormat===this.CSV_FORMAT?r.element("#"+this.exportCsvModal).modal("show"):this.exportJson()},t.prototype.checkImportFormat=function(t){t.length&&(this.file=t[0],this.file.name.endsWith(this.CSV_FORMAT)?r.element("#"+this.importCsvModal).modal("show"):this.file.name.endsWith(this.JSON_FORMAT)?r.element("#"+this.importJsonModal).modal("show"):this.displayError(this.gettextCatalog.getString("Incorrect File Type",void 0,"title"),this.gettextCatalog.getString("Please select a file with a valid file ending of either {{csvFormat}} or {{jsonFormat}}.",{csvFormat:this.CSV_FORMAT,jsonFormat:this.JSON_FORMAT})))},t.prototype.exportJson=function(){this.PoiRepository.exportJson()},t.prototype.exportCsv=function(){var t="t"===this.csvSeparator?"\t":this.csvSeparator;this.PoiRepository.exportCsv(t,this.languageFormat.key),r.element("#"+this.exportCsvModal).modal("hide")},t.prototype.importJson=function(t){var e=this;t&&(this.importData(s.processJsonFile(t).catch(function(t){return e.displayParsingError(t)}).then(function(){return e.PoiRepository.importJson(t,e.model.security.groupRead,e.model.security.groupWrite,e.importMode)}),this.importPromiseWrapper),r.element("#"+this.importJsonModal).modal("hide"))},t.prototype.importCsv=function(t){if(t){var e="t"===this.csvSeparator?"\t":this.csvSeparator;this.importData(this.PoiRepository.importCsv(t,e,this.languageFormat.key,this.model.security.groupRead,this.model.security.groupWrite,this.importMode),this.importPromiseWrapper),r.element("#"+this.importCsvModal).modal("hide")}},t.prototype.countAllPois=function(){var t=this;this.countPoisProgress.wrap(this.PoiRepository.count()).then(function(e){return t.allPoisCount=e}).catch(c.handleWarning)},t.prototype.importData=function(t,e){var n=this,i=this.ProgressReportService.addTask(this.gettextCatalog.getString("Importing POIs..."),1,!0,!0);this.conflictWrapper.wrap(e.wrap(t)).then(function(t){i.itemDone(),n.showPoiImportSummaryModal(t.total_poi_count,t.poi_count,t.updated_count,t.type_count,t.group_count)}).then(function(){return n.PoiRepository.resetCache()}).then(function(){return n.PoiTypeService.fetchAndMapData(!0)}).then(function(){return n.PoiService.poisChanged.emit()}).catch(function(){return i.itemDone()})},t.prototype.showPoiImportSummaryModal=function(t,e,n,i,o){var a=r.element("#poi-import-summary");this.totalPois=t,this.importedPois=e,this.updatedPois=n,this.importedTypes=i,this.importedGroups=o,a.modal("show")},t.prototype.displayParsingError=function(t){throw this.displayError(this.gettextCatalog.getString("Unable to Import POIs",void 0,"title"),this.gettextCatalog.getString("Error while parsing the JSON file: {{error}}",{error:t.toString()})),new Error("parsing failed")},t.prototype.displayError=function(t,e){this.MessageReportingService.showMessage(t,e)},t}();e.PoiExportImportController=h;var f=function(){function t(){this.restrict="E",this.templateUrl="Poi/ExportImport/PoiExportImport.html",this.controller=h,this.controllerAs="vm",this.scope={}}return t.factory=function(){return function(){return new t}},t}();e.PoiExportImportDirective=f,r.module("IVWebApp").directive("poiExportImport",f.factory())},function(t,e,n){var i="Poi/ExportImport/PoiExportImport.html",r='\x3c!-- POI Export Import --\x3e\n<div class="panel-heading no-background margin-top margin-bottom"\n ng-if="vm.isAvailable()">\n\t<div class="collapse-style">\n\t\t<default-button class="btn-block btn-borderless collapsed"\n\t\t data-toggle="collapse"\n\t\t data-target="#collapseExportImport">\n\t\t\t<h3 translate translate-context="title">Import/Export POIs</h3>\n\t\t</default-button>\n\t\t<div class="collapse modal-export-import" id="collapseExportImport">\n\t\t\t<input-button\n\t\t\t\t\tclass="btn-block btn-primary margin-top margin-bottom btn-file"\n\t\t\t\t\tin-progress="vm.isImportInProgress()">\n\t\t\t\t<div role="group">\n\t\t\t\t\t<span translate>Import</span>\n\t\t\t\t\t<input type="file"\n\t\t\t\t\t ng-disabled="vm.isImportInProgress()"\n\t\t\t\t\t accept=".csv, .json, text/csv, application/json"\n\t\t\t\t\t ngf-select="vm.checkImportFormat($files)">\n\t\t\t\t</div>\n\t\t\t</input-button>\n\t\t\t<div class="btn-group btn-group-justified" role="group">\n\t\t\t\t<div class="btn-group" role="group">\n\t\t\t\t\t<default-button class="btn-primary btn-group-first"\n\t\t\t\t\t ng-click="vm.checkExportFormat()">\n\t\t\t\t\t\t<span translate>Export</span>\n\t\t\t\t\t</default-button>\n\t\t\t\t</div>\n\t\t\t\t<div class="btn-group" role="group">\n\t\t\t\t\t<default-button class="dropdown-toggle"\n\t\t\t\t\t id="btn-csv-json"\n\t\t\t\t\t data-toggle="dropdown">\n\t\t\t\t\t\t{{vm.exportFormat}}\n\t\t\t\t\t\t<span class="caret"></span>\n\t\t\t\t\t</default-button>\n\t\t\t\t\t<ul class="dropdown-menu btn-block btn-csv-json">\n\t\t\t\t\t\t<li class="menu-submenu" ng-click="vm.exportFormat=vm.CSV_FORMAT"><a>{{vm.CSV_FORMAT}}</a>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t\t<li class="menu-submenu" ng-click="vm.exportFormat=vm.JSON_FORMAT"><a>{{vm.JSON_FORMAT}}</a>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t</ul>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<delete-confirmation\n\t\t\t\t\tng-click="vm.countAllPois()"\n\t\t\t\t\ton-confirm-callback="vm.clear()"\n\t\t\t\t\tbutton-disabled="vm.isClearInProgress()"\n\t\t\t\t\tbutton-class="btn-block margin-top margin-bottom btn-delete"\n\t\t\t\t\tadditional-action-callback="vm.exportJson()"\n\t\t\t\t\tadditional-action-name="{{\'Export\'|translate}}">\n\t\t\t\t<button-content>\n\t\t\t\t\t<span translate>Delete all POIs</span>\n\t\t\t\t</button-content>\n\t\t\t\t<div>\n\t\t\t\t\t<span ng-if="vm.isCountInProgress()" translate\n\t\t\t\t\t translate-context="As in: counting the number of items">\n\t\t\t\t\t\tCounting...\n\t\t\t\t\t</span>\n\t\t\t\t\t<span ng-if="!vm.isCountInProgress()">\n\t\t\t\t\t\t<span translate translate-n="vm.allPoisCount"\n\t\t\t\t\t\t translate-plural="{{$count}} POIs will be deleted.">\n\t\t\t\t\t\t\t1 POI will be deleted.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span translate>\n\t\t\t\t\t\tTo save a backup, first export POIs.\n\t\t\t\t\t</span>\n\t\t\t\t</div>\n\t\t\t</delete-confirmation>\n\t\t</div>\n\t</div>\n</div>\n\n<modal>\n\t<div class="modal fade" id="{{vm.exportCsvModal}}" tabindex="-1" role="dialog">\n\t\t<div class="modal-dialog">\n\t\t\t<div class="modal-content">\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}"\n\t\t\t\t\t data-dismiss="modal">\n\t\t\t\t\t<h4 translate translate-context="title">Export POIs to CSV File</h4>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-body">\n\t\t\t\t\t<div class="form-horizontal">\n\t\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t\t<label class="col-sm-3 control-label" translate>Delimiter</label>\n\t\t\t\t\t\t\t<form class="col-sm-9">\n\t\t\t\t\t\t\t\t<label class="radio-inline">\n\t\t\t\t\t\t\t\t\t<input ng-model="vm.csvSeparator" type="radio" name="delim"\n\t\t\t\t\t\t\t\t\t value="{{vm.tabSeparator}}">\n\t\t\t\t\t\t\t\t\t<span translate translate-context="CSV separator option">\n\t\t\t\t\t\t\t\t\t\tTab\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t<label class="radio-inline">\n\t\t\t\t\t\t\t\t\t<input ng-model="vm.csvSeparator" type="radio" name="delim"\n\t\t\t\t\t\t\t\t\t value="{{vm.commaSeparator}}" checked>\n\t\t\t\t\t\t\t\t\t<span translate translate-context="CSV separator option">\n\t\t\t\t\t\t\t\t\t\tComma ( , )\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t<label class="radio-inline">\n\t\t\t\t\t\t\t\t\t<input ng-model="vm.csvSeparator" type="radio" name="delim"\n\t\t\t\t\t\t\t\t\t value="{{vm.semiColonSeparator}}">\n\t\t\t\t\t\t\t\t\t<span translate translate-context="CSV separator option">\n\t\t\t\t\t\t\t\t\t\tSemicolon ( ; )\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t</form>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t\t<label class="col-sm-3 control-label" translate>\n\t\t\t\t\t\t\t\tNumber Format\n\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t<div class="col-sm-9">\n\t\t\t\t\t\t\t\t<select class="form-control"\n\t\t\t\t\t\t\t\t ng-model="vm.languageFormat"\n\t\t\t\t\t\t\t\t ng-options="format.numberFormat for format in vm.visibleLanguageFormats">\n\t\t\t\t\t\t\t\t</select>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-footer">\n\t\t\t\t\t<cancel-button data-dismiss="modal"></cancel-button>\n\n\t\t\t\t\t<default-button ng-click="vm.exportCsv()"\n\t\t\t\t\t class="btn-file btn-primary">\n\t\t\t\t\t\t<span translate>Export POIs</span>\n\t\t\t\t\t</default-button>\n\t\t\t\t\t<div align="left">\n\t\t\t\t\t\t<h6 translate>\n\t\t\t\t\t\t\tWarning: you may not be able to import this file in a future version of the 4DKanKan. Backward data compatibility is only available for JSON.\n\t\t\t\t\t\t</h6>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n\n<modal>\n\t<div class="modal fade" id="{{vm.importJsonModal}}" tabindex="-1" role="dialog">\n\t\t<div class="modal-dialog">\n\t\t\t<div class="modal-content">\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}"\n\t\t\t\t\t data-dismiss="modal">\n\t\t\t\t\t<h4 translate translate-context="title">Import POIs from JSON File</h4>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-body">\n\t\t\t\t\t<div class="form-horizontal">\n\t\t\t\t\t\t\x3c!-- ID radio buttons --\x3e\n\t\t\t\t\t\t<poi-import-mode (on-import-mode-change)="vm.importMode=$event" [selected-mode]="vm.importMode"></poi-import-mode>\n\t\t\t\t\t\t\x3c!--Permissions Editor --\x3e\n\t\t\t\t\t\t<permission-editor model="vm.model"\n\t\t\t\t\t\t model-type="\'poiImport\'"\n\t\t\t\t\t\t col-span="3">\n\t\t\t\t\t\t</permission-editor>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="permissions-group-info" translate>\n\t\t\t\t\t\tGroup permissions will not be impacted\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-footer">\n\t\t\t\t\t<cancel-button data-dismiss="modal"></cancel-button>\n\t\t\t\t\t<ok-button ng-click="vm.importJson(vm.file)"\n\t\t\t\t\t class="btn-file"\n\t\t\t\t\t in-progress="vm.isImportInProgress()">\n\t\t\t\t\t\t<span translate>Import POIs</span>\n\t\t\t\t\t</ok-button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n\n<modal>\n\t<div class="modal fade" id="{{vm.importCsvModal}}" tabindex="-1" role="dialog">\n\t\t<div class="modal-dialog">\n\t\t\t<div class="modal-content">\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}"\n\t\t\t\t\t data-dismiss="modal">\n\t\t\t\t\t<h4 translate translate-context="title">Import POIs from CSV File</h4>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-body">\n\t\t\t\t\t<div class="form-horizontal">\n\t\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t\t<label class="col-sm-3 control-label" translate>Delimiter</label>\n\t\t\t\t\t\t\t<form class="col-sm-9">\n\t\t\t\t\t\t\t\t<label class="radio-inline">\n\t\t\t\t\t\t\t\t\t<input ng-model="vm.csvSeparator" type="radio" name="delim"\n\t\t\t\t\t\t\t\t\t value="{{vm.tabSeparator}}" translate\n\t\t\t\t\t\t\t\t\t translate-context="CSV separator option">Tab\n\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t<label class="radio-inline">\n\t\t\t\t\t\t\t\t\t<input ng-model="vm.csvSeparator" type="radio" name="delim"\n\t\t\t\t\t\t\t\t\t value="{{vm.commaSeparator}}" translate\n\t\t\t\t\t\t\t\t\t translate-context="CSV separator option" checked>Comma ( , )\n\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t<label class="radio-inline">\n\t\t\t\t\t\t\t\t\t<input ng-model="vm.csvSeparator" type="radio" name="delim"\n\t\t\t\t\t\t\t\t\t value="{{vm.semiColonSeparator}}" translate\n\t\t\t\t\t\t\t\t\t translate-context="CSV separator option">Semicolon ( ; )\n\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t</form>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t\t<label class="col-sm-3 control-label" translate>\n\t\t\t\t\t\t\t\tNumber Format\n\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t<div class="col-sm-9">\n\t\t\t\t\t\t\t\t<select class="form-control"\n\t\t\t\t\t\t\t\t ng-model="vm.languageFormat"\n\t\t\t\t\t\t\t\t ng-options="format.numberFormat for format in vm.visibleLanguageFormats">\n\t\t\t\t\t\t\t\t</select>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\x3c!-- ID radio buttons --\x3e\n\t\t\t\t\t\t<poi-import-mode (on-import-mode-change)="vm.importMode=$event" [selected-mode]="vm.importMode"></poi-import-mode>\n\t\t\t\t\t\t\x3c!--Permissions Editor --\x3e\n\t\t\t\t\t\t<permission-editor model="vm.model"\n\t\t\t\t\t\t model-type="\'poiImport\'"\n\t\t\t\t\t\t col-span="3">\n\t\t\t\t\t\t</permission-editor>\n\t\t\t\t\t\t<div class="permissions-group-info" translate>\n\t\t\t\t\t\t\tGroup permissions will not be impacted\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-footer">\n\t\t\t\t\t<cancel-button data-dismiss="modal"></cancel-button>\n\t\t\t\t\t<ok-button ng-click="vm.importCsv(vm.file)"\n\t\t\t\t\t class="btn-file"\n\t\t\t\t\t in-progress="vm.isImportInProgress()">\n\t\t\t\t\t\t<span translate>Import POIs</span>\n\t\t\t\t\t</ok-button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n\n\x3c!-- Poi import summary modal --\x3e\n<modal>\n\t<div class="modal fade" id="poi-import-summary" tabindex="-1" role="dialog"\n\t aria-labelledby="poiImportSummary" aria-hidden="true">\n\t\t<div class="modal-dialog" role="document">\n\t\t\t<div class="modal-content">\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<h4 translate-context="A message stating the import was successful; title"\n\t\t\t\t\t translate>\n\t\t\t\t\t\tImport Successful\n\t\t\t\t\t</h4>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-body">\n\t\t\t\t\t<span translate translate-params-total="vm.totalPois">\n\t\t\t\t\t\tThe total number of POIs is now {{total}}.\n\t\t\t\t\t</span>\n\t\t\t\t\t<ul class="mt-10">\n\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t<span translate-context="A message stating how many POIs have been imported"\n\t\t\t\t\t\t\t translate-n="vm.importedPois"\n\t\t\t\t\t\t\t translate-plural="{{$count}} POIs have been imported."\n\t\t\t\t\t\t\t ng-if="vm.importedPois > 0"\n\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\t1 POI has been imported.\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t<span ng-if="vm.importedPois === 0" translate>\n\t\t\t\t\t\t\t\tNo new POIs imported.\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t\t<li ng-if="vm.updatedPois > 0">\n\t\t\t\t\t\t\t<span translate-context="A message stating how many POIs have been updated"\n\t\t\t\t\t\t\t\t translate-n="vm.updatedPois"\n\t\t\t\t\t\t\t\t translate-plural="{{$count}} POIs have been updated."\n\t\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\t1 POI has been updated.\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t\t<li ng-if="vm.importedTypes > 0">\n\t\t\t\t\t\t\t<span translate-context="A message stating how many POI types have been imported"\n\t\t\t\t\t\t\t translate-n="vm.importedTypes"\n\t\t\t\t\t\t\t translate-plural="{{$count}} new POI types have been imported."\n\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\t1 new POI type has been imported.\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t\t<li ng-if="vm.importedGroups > 0">\n\t\t\t\t\t\t\t<span translate-context="A message stating how many POI type groups have been imported"\n\t\t\t\t\t\t\t translate-n="vm.importedGroups"\n\t\t\t\t\t\t\t translate-plural="{{$count}} new POI type groups have been imported."\n\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t1 new POI type group has been imported.\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t</ul>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-footer">\n\t\t\t\t\t<ok-button class="btn btn-primary" data-dismiss="modal"></ok-button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){var i=n(11),r=n(1479);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,'.z-index-1{box-shadow:none;position:relative;z-index:1}.z-index-2{box-shadow:0 1.5px 4px rgba(0,0,0,.24),0 1.5px 6px rgba(0,0,0,.12);position:relative;z-index:5}.z-index-3{box-shadow:0 3px 12px rgba(0,0,0,.23),0 3px 12px rgba(0,0,0,.16);position:relative;z-index:10}.z-index-4{box-shadow:0 6px 12px rgba(0,0,0,.23),0 10px 40px rgba(0,0,0,.19);position:relative;z-index:15}.z-index-5{box-shadow:0 10px 20px rgba(0,0,0,.22),0 14px 56px rgba(0,0,0,.25);position:relative;z-index:20}.front-element{z-index:1031}.full-window{position:fixed;margin:0;padding:0;left:0;right:0;top:0;bottom:0;z-index:1029;border-radius:0}.full-window-scroll{max-height:100vh}.full-window-scroll,.panel-autoscroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.panel-autoscroll{max-height:80vh}.autoscroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.fixed-top-right{position:fixed;top:10px;right:0}.center-vertical{position:absolute;top:50%;transform:translateY(-50%)}.float-left{float:left}.float-right{float:right}.margin-top-small{margin-top:5px!important}.margin-left-small{margin-left:5px!important}.margin-right-small{margin-right:5px!important}.margin-bottom-small{margin-bottom:5px!important}.margin-top{margin-top:15px!important}.margin-left{margin-left:15px!important}.margin-right{margin-right:15px!important}.margin-bottom{margin-bottom:15px!important}.margin-top-big{margin-top:25px!important}.margin-bottom-big{margin-bottom:25px!important}.no-margin,poi-export-import #btn-csv-json,poi-export-import .open>.dropdown-menu{margin:0!important}.no-margin-bottom{margin-bottom:0!important}.padding-horizontal{padding-left:15px!important;padding-right:15px!important}.padding-top,.padding-vertical{padding-top:15px!important}.padding-bottom,.padding-vertical{padding-bottom:15px!important}.no-padding-top{padding-top:0!important}.no-padding-bottom{padding-bottom:0!important}.no-padding-horizontal,.no-padding-left{padding-left:0!important}.no-padding-horizontal,.no-padding-right{padding-right:0!important}.no-padding{padding:0!important}.border{border:1px solid #e6e6e6}.border-top{border-top:1px solid #e6e6e6}.border-bottom{border-bottom:1px solid #e6e6e6}.border-left{border-left:1px solid #e6e6e6}.border-right{border-right:1px solid #e6e6e6}.no-border,poi-export-import .menu-submenu a:active,poi-export-import .menu-submenu a:focus,poi-export-import .menu-submenu a:hover{border:none;border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.no-border-width{border:none}.border-radius{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.border-radius,.border-radius-top{border-top-left-radius:4px!important;border-top-right-radius:4px!important}.border-radius-bottom{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.no-border-radius{border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.indoorViewer.ios .no-hover-ios:hover{background-color:inherit!important}.no-shadow{box-shadow:none!important}.clear-background,poi-export-import .btn-borderless{background:none!important;border:0}.no-background{background:none!important}.no-overflow{overflow:hidden}.clickable,.clickable:hover{cursor:pointer}poi-export-import .collapse-style{background-color:#fff;position:absolute;bottom:0;left:0;right:0;padding-left:20px;padding-right:20px;box-shadow:0 0 6px rgba(0,0,0,.24)}poi-export-import .collapse-style>button>h3{text-overflow:ellipsis;width:100%;overflow:hidden}poi-export-import .panel-heading [data-toggle=collapse].collapsed:before,poi-export-import .panel-heading [data-toggle=collapse]:before{content:none}poi-export-import .panel-heading [data-toggle=collapse]:after{font-family:FontAwesome;content:"\\f0d7";color:#000;position:absolute;right:0;top:10px}poi-export-import .panel-heading [data-toggle=collapse].collapsed:after{content:"\\f0d8"}poi-export-import .dropdown-menu{background-color:#4f93ce;min-width:0;text-align:right;border:none}poi-export-import .dropdown-menu li{text-align:center;padding:0}poi-export-import .open>.dropdown-menu{display:block!important;left:0;text-align:left;background-color:#4f93ce;border:none}poi-export-import .menu-submenu{text-align:right}poi-export-import .menu-submenu a{color:#fff!important;background-color:#4f93ce}poi-export-import .menu-submenu a:active,poi-export-import .menu-submenu a:focus,poi-export-import .menu-submenu a:hover{background-color:#3b87c8!important}poi-export-import .btn-borderless{max-height:inherit}poi-export-import .btn-borderless:active,poi-export-import .btn-borderless:focus,poi-export-import .btn-borderless:hover{box-shadow:none}poi-export-import .btn-delete{color:#d9534f!important;background-color:transparent!important;border:none}poi-export-import .btn-delete:active,poi-export-import .btn-delete:focus,poi-export-import .btn-delete:hover{color:#d9534f!important;border-color:#f0f0f0!important;background-color:#f0f0f0!important}poi-export-import .btn-group.open .dropdown-toggle{border-bottom-right-radius:0}poi-export-import .btn-group-justified>.btn-group:nth-of-type(2n){width:.45%}poi-export-import #btn-csv-json{left:0;background-color:#4f93ce;color:#fff;border:none}poi-export-import #btn-csv-json:active,poi-export-import #btn-csv-json:focus,poi-export-import #btn-csv-json:hover{background-color:#3b87c8;color:#fff;border-color:transparent}.permissions-group-info{font-size:.8em;color:#999;text-align:right}.modal-export-import .btn-primary,.modal-export-import .btn-primary:active,.modal-export-import .btn-primary:focus,.modal-export-import .btn-primary:hover{border:none}',""]),t.exports=e},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.copy=function(t,e){},e.prototype.toData=function(){},e}(n(198).SecureRepositoryObject);e.DummyRepositoryObject=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r(e,t),e.prototype.networkApplies=function(t,e,n){return 409===t},e.prototype.report=function(){return this.gettextCatalog.getString("The import was aborted because one or more POIs already exist.")},e}(n(308).NetworkIssueDetector);e.PoiImportConflictDetector=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1483),n(1484),n(1486),n(1490);var r=n(7),o=n(138),a=function(){function t(t,e,n){var i=this;this.RouteService=t,this.PoiService=e,this.LanguageService=n,n.onLanguageChange.connect(function(){return i.RouteService.refreshLastRoute()}),t.onRouteChanged.connect(function(t){i.route=t,i.calculateTimeEstimate()})}return t.$inject=["RouteService","PoiService","LanguageService"],t.prototype.routeInstructionMouseOver=function(t){this.RouteService.onRouteInstructionMouseOver.emit(this.route.instructions[t],t)},t.prototype.routeInstructionMouseLeave=function(t){this.RouteService.onRouteInstructionMouseOut.emit(this.route.instructions[t],t)},t.prototype.routeInstructionClick=function(t){this.route.instructions[t]instanceof o.SpecialInstruction&&(this.activeSpecialInstruction=this.route.instructions[t]),this.RouteService.onRouteInstructionClick.emit(this.route.instructions[t],t)},t.prototype.isRouteInstructionVisible=function(){return!!this.PoiService.routeStart&&!!this.PoiService.routeEnd},t.prototype.calculateTimeEstimate=function(){this.route&&this.route.available?this.timeEstimate=r.ceil(this.route.routeLength/t.WALK_SPEED):this.timeEstimate=0},t.WALK_SPEED=84,t}();e.RouteInstructionsController=a;var s=function(){function t(){this.restrict="E",this.templateUrl="RouteUI/RouteInstructions.html",this.controller=a,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.RouteInstructionsDirective=s,i.module("IVWebApp").directive("routeInstructions",s.factory())},function(t,e,n){var i="RouteUI/RouteInstructions.html",r='\x3c!-- Routing --\x3e\n<div ng-if="vm.isRouteInstructionVisible()"\n class="panel panel-default left-panel-element-flexible-height no-border no-shadow">\n\t\x3c!-- Spinner --\x3e\n\t<div class="panel-body" ng-if="!vm.route">\n\t\t<div class="spinner">\n\t\t\t<img ng-src="'+n(94)+'">\n\t\t</div>\n\t</div>\n\n\t\x3c!-- Results --\x3e\n\t<div class="panel-body" ng-if="vm.route">\n\t\t\x3c!-- Route message --\x3e\n\t\t<div ng-if="vm.route.message" class="text-warning">\n\t\t\t{{vm.route.message}}\n\t\t</div>\n\n\t\t\x3c!-- Route instructions --\x3e\n\t\t<div ng-if="vm.route.available" class="non-mobile">\n\t\t\t\x3c!--Overview--\x3e\n\t\t\t<div class="overview">\n\t\t\t\t<strong translate translate-context="navigation instruction"\n\t\t\t\t translate-params-time="vm.timeEstimate | number:0">\n\t\t\t\t\t{{time}} min\n\t\t\t\t</strong>\n\t\t\t\t<span class="route-distance">({{vm.route.routeLength | uom:"distance":0}})</span>\n\t\t\t</div>\n\t\t\t\x3c!--Instructions--\x3e\n\t\t\t<div class="instructions-list">\n\t\t\t\t<div class="row" ng-repeat="instruction in vm.route.instructions track by $index">\n\t\t\t\t\t<div ng-if="instruction.distance">\n\t\t\t\t\t\t<div class="col-xs-2"></div>\n\t\t\t\t\t\t<div class="col-xs-10"\n\t\t\t\t\t\t ng-click="vm.routeInstructionClick($index)"\n\t\t\t\t\t\t ng-mouseover="vm.routeInstructionMouseOver($index)"\n\t\t\t\t\t\t ng-mouseleave="vm.routeInstructionMouseLeave($index)">\n\t\t\t\t\t\t\t<walk-instruction instruction="instruction"></walk-instruction>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div ng-if="!instruction.distance"\n\t\t\t\t\t ng-click="vm.routeInstructionClick($index)"\n\t\t\t\t\t ng-mouseover="vm.routeInstructionMouseOver($index)"\n\t\t\t\t\t ng-mouseleave="vm.routeInstructionMouseLeave($index)"\n\t\t\t\t\t ng-class="{\'active\': vm.activeSpecialInstruction === instruction}"\n\t\t\t\t\t class="col-xs-12">\n\t\t\t\t\t\t<special-instruction instruction="instruction"></special-instruction>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){var i=n(11),r=n(1485);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,".z-index-1{box-shadow:none;position:relative;z-index:1}.z-index-2{box-shadow:0 1.5px 4px rgba(0,0,0,.24),0 1.5px 6px rgba(0,0,0,.12);position:relative;z-index:5}.z-index-3{box-shadow:0 3px 12px rgba(0,0,0,.23),0 3px 12px rgba(0,0,0,.16);position:relative;z-index:10}.z-index-4{box-shadow:0 6px 12px rgba(0,0,0,.23),0 10px 40px rgba(0,0,0,.19);position:relative;z-index:15}.z-index-5{box-shadow:0 10px 20px rgba(0,0,0,.22),0 14px 56px rgba(0,0,0,.25);position:relative;z-index:20}.front-element{z-index:1031}.full-window{position:fixed;margin:0;padding:0;left:0;right:0;top:0;bottom:0;z-index:1029;border-radius:0}.full-window-scroll{max-height:100vh}.full-window-scroll,.panel-autoscroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.panel-autoscroll{max-height:80vh}.autoscroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.fixed-top-right{position:fixed;top:10px;right:0}.center-vertical{position:absolute;top:50%;transform:translateY(-50%)}.float-left{float:left}.float-right{float:right}.margin-top-small{margin-top:5px!important}.margin-left-small{margin-left:5px!important}.margin-right-small{margin-right:5px!important}.margin-bottom-small{margin-bottom:5px!important}.margin-top{margin-top:15px!important}.margin-left{margin-left:15px!important}.margin-right{margin-right:15px!important}.margin-bottom{margin-bottom:15px!important}.margin-top-big{margin-top:25px!important}.margin-bottom-big{margin-bottom:25px!important}.no-margin{margin:0!important}.no-margin-bottom{margin-bottom:0!important}.padding-horizontal,route-instructions .panel .panel-body>*{padding-left:15px!important;padding-right:15px!important}.padding-top,.padding-vertical{padding-top:15px!important}.padding-bottom,.padding-vertical{padding-bottom:15px!important}.no-padding-top{padding-top:0!important}.no-padding-bottom{padding-bottom:0!important}.no-padding-horizontal,.no-padding-left{padding-left:0!important}.no-padding-horizontal,.no-padding-right{padding-right:0!important}.no-padding{padding:0!important}.border{border:1px solid #e6e6e6}.border-top{border-top:1px solid #e6e6e6}.border-bottom{border-bottom:1px solid #e6e6e6}.border-left{border-left:1px solid #e6e6e6}.border-right{border-right:1px solid #e6e6e6}.no-border{border:none;border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.no-border-width{border:none}.border-radius{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.border-radius,.border-radius-top{border-top-left-radius:4px!important;border-top-right-radius:4px!important}.border-radius-bottom{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.no-border-radius{border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.indoorViewer.ios .no-hover-ios:hover{background-color:inherit!important}.no-shadow{box-shadow:none!important}.clear-background{border:0}.clear-background,.no-background{background:none!important}.no-overflow{overflow:hidden}.clickable,.clickable:hover{cursor:pointer}route-instructions .panel{max-height:calc(100vh - 105px);margin-bottom:0}route-instructions .panel .panel-body{padding:0}route-instructions .panel .panel-body>:first-child{border-top:1px solid #e6e6e6}route-instructions .panel .panel-body .text-warning{font-style:italic;color:initial;padding:20px 0}route-instructions .panel .panel-body .overview{margin:20px .1em;font-size:large}route-instructions .panel .panel-body .overview .route-distance{color:rgba(0,0,0,.54)}route-instructions .panel .panel-body .spinner{padding:20px 0;text-align:center}route-instructions .panel .panel-body .spinner>img{display:inline-block;max-height:28px}route-instructions .panel .panel-body .instructions-list{margin-top:15px;border-top:1px solid #e6e6e6}route-instructions .panel .panel-body .instructions-list>div:first-child,route-instructions .panel .panel-body .instructions-list>div:last-child{font-size:1.1em;font-weight:700}route-instructions .panel .panel-body .instructions-list>.row>div{margin-top:-1px;border-left:4px solid transparent}route-instructions .panel .panel-body .instructions-list>.row>div.active{border-left-color:#3398c7}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1487),n(1488);var r=function(){};e.WalkInstructionController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="RouteUI/WalkInstruction.html",this.controller=r,this.controllerAs="vm",this.scope=!0,this.bindToController={instruction:"="}}return t.factory=function(){return function(){return new t}},t}();e.WalkInstructionDirective=o,i.module("IVWebApp").directive("walkInstruction",o.factory())},function(t,e){var n="RouteUI/WalkInstruction.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div>\n\t<small class="text">\n\t\t{{vm.instruction.distance | uom:"distance":0}}\n\t</small>\n\t<hr class="divider">\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1489);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"walk-instruction div{display:flex;flex-direction:row;align-items:center;margin-top:-14px;margin-bottom:-12px}walk-instruction div .text{flex:initial;white-space:nowrap;margin:.5em .5em .5em 0}walk-instruction div hr.divider{height:2px;margin:.7em 0 .4em;border-top-color:#f0f0f0}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1491),n(1492);var r=n(555),o=n(556),a=function(){function t(){}return t.prototype.isStartOrEnd=function(){return this.instruction instanceof r.StartInstruction||this.instruction instanceof o.EndInstruction},t}();e.SpecialInstructionController=a;var s=function(){function t(){this.restrict="E",this.templateUrl="RouteUI/SpecialInstruction.html",this.controller=a,this.controllerAs="vm",this.scope=!0,this.bindToController={instruction:"="}}return t.factory=function(){return function(){return new t}},t}();e.SpecialInstructionDirective=s,i.module("IVWebApp").directive("specialInstruction",s.factory())},function(t,e){var n="RouteUI/SpecialInstruction.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="row clickable"\n ng-click="vm.instruction.moveToInstruction()">\n\t<div class="col-xs-2 icon">\n\t\t<div>\n\t\t\t<img ng-src="{{vm.instruction.icons.text}}">\n\t\t</div>\n\t</div>\n\t<div class="col-xs-10">\n\t\t<div class="text">\n\t\t\t<div>\n\t\t\t\t{{vm.instruction.text | translate}}\n\t\t\t</div>\n\t\t\t<div ng-if="vm.isStartOrEnd()">\n\t\t\t\t<site-data entity="vm.instruction.getFloor()"\n\t\t\t\t clickable="false"\n\t\t\t\t class="site-model-info"></site-data>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1493);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"special-instruction .row{padding:15px 0;display:flex}special-instruction .row>[class*=col-]{display:flex;justify-content:flex-start;align-items:center}special-instruction .row .text{padding:.6em 0}special-instruction .row .text>div>.site-model-info{font-size:.8em;font-weight:400}special-instruction .row .icon>div{width:100%}special-instruction .row .icon>div>img{height:auto}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(141),o=n(25);n(27),n(27),n(15),n(38);var a=n(24),s=(n(203),n(147));n(1495),n(203),n(154),n(1513),n(1525),n(272),n(1529),n(1531),n(155),n(1535),n(1541),n(406),n(1547),n(269),n(1557),n(1558),n(1573),n(1575),n(204);var c=n(148),l=(n(31),n(131),n(21)),u=n(8),d=n(81),p=(n(75),n(202),n(6)),h=n(0),f=(n(120),n(65),n(0)),g=n(27),m=n(38),v=n(15),y=n(203),b=n(24),w=n(120),S=n(65),x=n(31),M=n(131),E=n(202),C=n(75),A=function(){function t(t,e,n,i,r,o,a,s,c,l,d,p){var h=this;this.UserService=t,this.SidebarMenuService=e,this.ConfigService=n,this.ModeSwitchService=i,this.ModeService=r,this.FeatureFlagsService=o,this.ViewMenuService=a,this.DatasetRepository=s,this.ToolboxMenuService=c,this.VectorMapService=l,this.BundleRepository=d,this.gettext=p,this.FeatureFlagsService.initialized.then(function(){return h.initSideMenuItem()}).catch(u.handleWarning)}return t.prototype.initSideMenuItem=function(){var t=this;console.log("!!!!!"),IV.SidebarMenuService=t.SidebarMenuService,console.log(IV),window.eventBus=new EventBus,window.eventBus.on("my-event",function(){t.SidebarMenuService.closeMenu()});var e=this,n=(new c.SidebarMenuItemBuilder).setKey(d.SidebarMenuItemsKey.EDITOR_MODES_GEO_REG).setTitle(this.gettext("Geo-Registration",void 0,"title")).setIcon(new r.IconInfo("material-icons","public")).setIsVisible(function(){return e.canWriteAnyDataset()}).setClassCallback(this.getClassForMode(function(){return e.ModeService.isGeoRegistrationMode()},"sidebar-menu-item-mode-geo-reg")).setOrder(s.SidebarMenuItemsOrder.EDITOR_MODES_GEO_REG).setOnClick(function(){e.switchToMode(a.ModeState.GEO_REGISTRATION)}).build(),i=(new c.SidebarMenuItemBuilder).setKey(d.SidebarMenuItemsKey.EDITOR_MODES_ALIGNMENT).setTitle(this.gettext("Dataset Alignment",void 0,"title")).setIcon(new r.IconInfo("material-icons","view_quilt")).setIsVisible(function(){return e.canWriteAnyDataset()}).setClassCallback(this.getClassForMode(function(){return e.ModeService.isDatasetAlignmentMode()},"sidebar-menu-item-mode-alignment")).setOrder(s.SidebarMenuItemsOrder.EDITOR_MODES_ALIGNMENT).setOnClick(function(){e.switchToMode(a.ModeState.DATASET_ALIGNMENT)}).build(),p=(new c.SidebarMenuItemBuilder).setKey(d.SidebarMenuItemsKey.EDITOR_MODES_SITE_MODEL).setTitle(this.gettext("Site Model",void 0,"title")).setIcon(new r.IconInfo("material-icons","domain")).setIsVisible(function(){return e.isAdmin()}).setClassCallback(this.getClassForMode(function(){return e.ModeService.isSiteModelEditorMode()},"sidebar-menu-item-mode-site-model")).setOrder(s.SidebarMenuItemsOrder.EDITOR_MODES_SITE_MODEL).setOnClick(function(){e.switchToMode(a.ModeState.SITE_MODEL_EDITOR)}).build(),h=(new c.SidebarMenuItemBuilder).setKey(d.SidebarMenuItemsKey.EDITOR_MODES_EXPLORE).setTitle(this.gettext("Explore",void 0,"title")).setIcon(new r.IconInfo("material-icons","explore")).setIsVisible(function(){return n.isVisible()||i.isVisible()||p.isVisible()}).setClassCallback(this.getClassForMode(function(){return e.isNormalModeHighlighted()},"sidebar-menu-item-mode-normal")).setOrder(s.SidebarMenuItemsOrder.EDITOR_MODES_EXPLORE).setOnClick(function(){e.SidebarMenuService.closeMenu(),e.switchToNormalMode().catch(u.handleWarning)}).build(),f=(new c.SidebarMenuItemBuilder).setKey(d.SidebarMenuItemsKey.EDITOR_MODES_NAV_GRAPH).setTitle(this.gettext("Navigation Graph Editor",void 0,"title")).setIcon(new r.IconInfo("material-icons","linear_scale")).setIsVisible(function(){return e.canWriteAnyBundle()}).setClassCallback(this.getClassForMode(function(){return e.ModeService.isNavGraphEditorMode()},"sidebar-menu-item-mode-nav-graph")).setOrder(s.SidebarMenuItemsOrder.EDITOR_MODES_NAV_GRAPH).setOnClick(function(){e.switchToMode(a.ModeState.NAV_GRAPH_EDITOR)}).build(),g=(new c.SidebarMenuItemBuilder).setKey(d.SidebarMenuItemsKey.EDITOR_MODES_VECTOR_MAP).setTitle(this.gettext("Vector Map Editor",void 0,"title")).setIcon(new r.IconInfo("material-icons","border_style")).setIsVisible(function(){return e.isAdmin()}).setClassCallback(this.getClassForMode(function(){return e.VectorMapService.isVectorMapEditorActive},"sidebar-menu-item-mode-vector-map")).setOrder(s.SidebarMenuItemsOrder.EDITOR_MODES_VECTOR_MAP).setOnClick(function(){e.SidebarMenuService.closeMenu(),e.switchToNormalMode().then(function(){e.VectorMapService.isVectorMapEditorActive=!0,e.ToolboxMenuService.openMenu(e.gettext("Vector Map Editor",void 0,"title"),l.TemplateName.VECTORMAP_MODE,{afterClose:function(){return e.VectorMapService.isVectorMapEditorActive=!1}})}).catch(u.handleWarning)}).build(),m=(new c.SidebarMenuItemBuilder).setKey(d.SidebarMenuItemsKey.EDITOR_MODES_DOWNLOAD_POINT_CLOUD).setTitle(this.gettext("Crop and Download Point Cloud",void 0,"title")).setIcon(new r.IconInfo("material-icons","file_download")).setIsVisible(function(){return e.canCropAndDownloadPointCloud()}).setClassCallback(this.getClassForMode(function(){return e.ModeService.isDownloadPointCloudMode()},"sidebar-menu-item-mode-download-pc")).setOrder(s.SidebarMenuItemsOrder.EDITOR_MODES_DOWNLOAD_POINT_CLOUD).setOnClick(function(){return e.switchToMode(a.ModeState.DOWNLOAD_POINT_CLOUD)}).build(),v=[h,n,i,p,f,g,m],y=(new c.SidebarMenuItemBuilder).setKey(d.SidebarMenuItemsKey.EDITOR_MODES).setTitle(this.gettext("Editor Modes",void 0,"title")).setIcon(new r.IconInfo("material-icons","mode_edit")).setIsVisible(function(){return e.ConfigService.getBoolean(o.Configs.MENU_MODE_VISIBLE,!0)}).setClassCallback(function(){return"sidebar-menu-item-mode"}).setOrder(s.SidebarMenuItemsOrder.EDITOR_MODES).setItems(v).build();this.SidebarMenuService.addItem(y),this.ToolboxMenuService.switchToNormal.connect(function(){e.ModeSwitchService.switchToMode(a.ModeState.NORMAL).catch(u.handleWarning)})},t.prototype.isNormalModeHighlighted=function(){return this.ModeService.isNormalMode()&&!this.ViewMenuService.config.showNavGraph&&!this.VectorMapService.isVectorMapEditorActive},t.prototype.isAdmin=function(){return this.UserService.isAdmin()},t.prototype.canCropAndDownloadPointCloud=function(){return this.UserService.canCropAndDownloadPointCloud()},t.prototype.canWriteAnyDataset=function(){return this.DatasetRepository.data.some(function(t){return t.security.canWrite})},t.prototype.canWriteAnyBundle=function(){return this.BundleRepository.data.some(function(t){return t.security.canWrite})},t.prototype.switchToNormalMode=function(){var t=this;return this.ToolboxMenuService.closeMenu(!1).then(function(){return t.ModeSwitchService.switchToMode(a.ModeState.NORMAL)})},t.prototype.switchToMode=function(t,e){var n=this;this.SidebarMenuService.closeMenu(),this.ModeService.currentMode!==t&&this.ToolboxMenuService.closeMenu(!1).then(function(){return n.ModeSwitchService.switchToMode(t,e)}).catch(u.handleWarning)},t.prototype.getClassForMode=function(t,e){return function(){return t()?e+" active":e}},t.ɵfac=function(e){return new(e||t)(f.ɵɵinject(g.UserService),f.ɵɵinject(m.SidebarMenuService),f.ɵɵinject(v.ConfigService),f.ɵɵinject(y.ModeSwitchService),f.ɵɵinject(b.ModeService),f.ɵɵinject(w.FeatureFlagsService),f.ɵɵinject(S.ViewMenuService),f.ɵɵinject(x.DatasetRepository),f.ɵɵinject(M.ToolboxMenuService),f.ɵɵinject(E.VectorMapService),f.ɵɵinject(C.BundleRepository),f.ɵɵinject("gettext"))},t.ɵprov=f.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.EditorModesModule=A,f.ɵsetClassMetadata(A,[{type:h.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:g.UserService},{type:m.SidebarMenuService},{type:v.ConfigService},{type:y.ModeSwitchService},{type:b.ModeService},{type:w.FeatureFlagsService},{type:S.ViewMenuService},{type:x.DatasetRepository},{type:M.ToolboxMenuService},{type:E.VectorMapService},{type:C.BundleRepository},{type:void 0,decorators:[{type:h.Inject,args:["gettext"]}]}]},null),i.module("IVWebApp").service("EditorModesModule",p.downgradeInjectable(A))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1496),n(1500),n(1501),n(1503),n(1505),n(1509);var r=function(){function t(){var t=this;this.referenceDatasetSelectedCallback=function(e){return t.selectedReferenceDataset=e},this.selectedDatasetsCallback=function(e){return t.selectedDatasetsUpdated(e)}}return t.prototype.selectedDatasetsUpdated=function(t){this.selectedDatasets=t},t}();e.DownloadPointCloudController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="DownloadPointcloud/DownloadPointCloud.html",this.controller=r,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.DownloadPointCloudDirective=o,i.module("IVWebApp").directive("downloadPointCloud",o.factory())},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var o=n(2),a=n(8);n(1497),n(1498);var s=function(){function t(t,e,n){var i=this;this.ViewService=t,this.DownloadPointCloudService=e,this.DatasetRepository=n,this.MAX_DATASET_DISTANCE=1e4,this.selectedReferenceDataset=this.DownloadPointCloudService.selectedReferenceDataset,this.volumeChangedSignalConnection=this.DownloadPointCloudService.onVolumeChangeEnd.connect(function(){i.initializeReferenceDatasetAndSelectionList().catch(a.handleWarning)})}return t.$inject=["ViewService","DownloadPointCloudService","DatasetRepository"],t.prototype.updateSelectedReferenceDataset=function(t){this.selectedReferenceDataset=t,this.DownloadPointCloudService.selectedReferenceDataset=t,this.onReferenceDatasetSelected(t)},t.prototype.$onDestroy=function(){this.volumeChangedSignalConnection.disconnect()},t.prototype.getDatasetsWithinRadius=function(){return i(this,void 0,void 0,function(){var t,e,n=this;return r(this,function(i){switch(i.label){case 0:return t=this.ViewService.mainView.getVolumeClippingLayer().getBoxFrame(),e=t.position,[4,this.DatasetRepository.findAll()];case 1:return[2,i.sent().filter(function(t){return t.getCenter().distanceTo(e)<=n.MAX_DATASET_DISTANCE}).sort(function(t,e){var n=t.title?t.title:t.name,i=e.title?e.title:e.name;return n.localeCompare(i)})]}})})},t.prototype.initializeReferenceDatasetAndSelectionList=function(){return i(this,void 0,void 0,function(){var t;return r(this,function(e){switch(e.label){case 0:return t=this,[4,this.getDatasetsWithinRadius()];case 1:return t.availableReferenceDatasets=e.sent(),!this.selectedReferenceDataset&&this.availableReferenceDatasets.length>0&&this.updateSelectedReferenceDataset(this.availableReferenceDatasets[0]),this.addReferenceDatasetToAvailableDatasets(),[2]}})})},t.prototype.addReferenceDatasetToAvailableDatasets=function(){this.selectedReferenceDataset&&-1===this.availableReferenceDatasets.indexOf(this.selectedReferenceDataset)&&this.availableReferenceDatasets.push(this.selectedReferenceDataset)},t}();e.ReferenceDatasetSelectionController=s;var c=function(){function t(){this.restrict="E",this.templateUrl="DownloadPointcloud/ReferenceDatasetSelection/ReferenceDatasetSelection.html",this.controller=s,this.controllerAs="vm",this.scope=!0,this.bindToController={onReferenceDatasetSelected:"<"}}return t.factory=function(){return function(){return new t}},t}();e.ReferenceDatasetSelectionDirective=c,o.module("IVWebApp").directive("referenceDatasetSelection",c.factory())},function(t,e){var n="DownloadPointcloud/ReferenceDatasetSelection/ReferenceDatasetSelection.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="dataset-selection">\n\t<label translate class="text-overflow-ellipsis control-label">\n\t\tChoose the reference dataset\n\t</label>\n\t<select id="referenceDatasetSelectionSetting" class="form-control"\n\t ng-model="vm.selectedReferenceDataset"\n\t ng-change="vm.updateSelectedReferenceDataset(vm.selectedReferenceDataset)"\n\t ng-options="(dataset.title ? dataset.title: dataset.name) for dataset in vm.availableReferenceDatasets">\n\t</select>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1499);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"reference-dataset-selection .dataset-selection{margin-bottom:110px}",""]),t.exports=e},function(t,e){var n="DownloadPointcloud/DownloadPointCloud.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="padding-top">\n\t<bounding-box-filtered-dataset-tree selection-changed="vm.selectedDatasetsCallback">\n\t</bounding-box-filtered-dataset-tree>\n</div>\n\n<div class="padding-top">\n\t<reference-dataset-selection\n\t\t\ton-reference-dataset-selected="vm.referenceDatasetSelectedCallback">\n\t</reference-dataset-selection>\n</div>\n\n<download-button\n\t\tselected-datasets="vm.selectedDatasets"\n\t\tselected-reference-dataset="vm.selectedReferenceDataset">\n</download-button>\n\n<download-point-cloud-usage-video></download-point-cloud-usage-video>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1502);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"download-point-cloud .icon-in-btn{margin-right:8px}",""]),t.exports=e},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}},o=this&&this.__spreadArrays||function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var i=Array(t),r=0;for(e=0;e<n;e++)for(var o=arguments[e],a=0,s=o.length;a<s;a++,r++)i[r]=o[a];return i};Object.defineProperty(e,"__esModule",{value:!0});var a=n(2),s=n(220);n(1504);var c=n(7),l=n(4),u=n(8),d=n(254),p=n(322),h=function(){function t(t,e,n){var i=this;this.gettextCatalog=t,this.DatasetRepository=e,this.DownloadPointCloudService=n,this.datasetTreeConfig=s.DatasetTreeConfigurationFactory.createSelectDatasetConfig(this.gettextCatalog.getString("Datasets",void 0,"title")),this.availableDatasets=[],this.filteredDatasets=[],this.onVolumeChangeConnection=this.DownloadPointCloudService.onVolumeChangeEnd.connect(function(t){return i.volumeChanged(t).catch(u.handleWarning)})}return t.$inject=["gettextCatalog","DatasetRepository","DownloadPointCloudService"],t.prototype.$onDestroy=function(){this.onVolumeChangeConnection.disconnect()},t.prototype.areAllDatasetsSelected=function(t){var e=this;return t.every(function(t){return e.isDatasetSelected(t)})},t.prototype.areNoDatasetsSelected=function(t){var e=this;return t.every(function(t){return!e.isDatasetSelected(t)})},t.prototype.isDatasetSelected=function(t){return this.filteredDatasets.indexOf(t)>=0},t.prototype.toggleSelection=function(t){this.isDatasetSelected(t)?this.deselectDatasets([t]):this.selectDatasets([t])},t.prototype.deselectDatasets=function(t){for(var e=0,n=t;e<n.length;e++)n[e].pointCloudVisible=!1;this.filteredDatasets=c.without.apply(void 0,o([this.filteredDatasets],t)),this.selectionChanged(this.filteredDatasets)},t.prototype.selectDatasets=function(t){for(var e=0,n=t;e<n.length;e++)n[e].pointCloudVisible=!0;this.filteredDatasets=c.union(this.filteredDatasets,t),this.selectionChanged(this.filteredDatasets)},t.prototype.volumeChanged=function(t){return i(this,void 0,void 0,function(){var e,n,i,a,s,u;return r(this,function(r){switch(r.label){case 0:return(e=t.getObjectByName(p.ClipVolume.BOX_FRAME_NAME)).geometry.boundingBox||e.geometry.computeBoundingBox(),n=(new l.Box3).setFromObject(e),[4,this.DatasetRepository.findAll()];case 1:return i=r.sent(),a=i.filter(function(t){return t.getPointCloudType()===d.PointCloudType.POTREE&&t.getLocalBoundingBox().intersectsBox(n)}),s=c.without.apply(void 0,o([a],this.availableDatasets)),u=c.without.apply(void 0,o([this.availableDatasets],a)),this.availableDatasets=a,this.selectDatasets(s),this.deselectDatasets(u),[2]}})})},t}();e.BoundingBoxFilteredDatasetTreeController=h;var f=function(){function t(){this.restrict="E",this.templateUrl="DownloadPointcloud/BoundingBoxFilteredDatasetTree/BoundingBoxFilteredDatasetTree.html",this.controller=h,this.controllerAs="vm",this.scope=!0,this.bindToController={selectionChanged:"<"}}return t.factory=function(){return function(){return new t}},t}();e.BoundingBoxFilteredDatasetTreeDirective=f,a.module("IVWebApp").directive("boundingBoxFilteredDatasetTree",f.factory())},function(t,e){var n="DownloadPointcloud/BoundingBoxFilteredDatasetTree/BoundingBoxFilteredDatasetTree.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div>\n\t<dataset-tree parent-controller="vm"\n\t tree-config="vm.datasetTreeConfig"\n\t datasets="vm.availableDatasets">\n\t</dataset-tree>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1506),n(1507);var r=n(8),o=function(){function t(t,e){this.StorageService=t,this.$timeout=e,this.doNotShowKey="download_point_cloud_usage_video"}return t.$inject=["StorageService","$timeout"],Object.defineProperty(t.prototype,"doNotShow",{get:function(){return this.StorageService.get(this.doNotShowKey)},set:function(t){this.StorageService.set(this.doNotShowKey,t)},enumerable:!0,configurable:!0}),t.prototype.$onInit=function(){var t=this;this.$timeout(function(){return t.showModalIfNeeded()}).catch(r.handleWarning)},t.prototype.showModalIfNeeded=function(){this.doNotShow||i.element(document.getElementById("first-usage-video")).modal("show")},t}();e.DownloadPointCloudUsageVideoController=o;var a=function(){function t(){this.restrict="E",this.templateUrl="DownloadPointcloud/DownloadPointCloudUsageVideo/DownloadPointCloudUsageVideo.html",this.controller=o,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.DownloadPointCloudUsageVideoDirective=a,i.module("IVWebApp").directive("downloadPointCloudUsageVideo",a.factory())},function(t,e,n){var i="DownloadPointcloud/DownloadPointCloudUsageVideo/DownloadPointCloudUsageVideo.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(i,"<modal></modal>\n")}]),t.exports=i},function(t,e,n){var i=n(11),r=n(1508);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"@media (min-width:800px){#first-usage-video .modal-dialog{width:800px}}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1510),n(1511);var r=n(283),o=n(4),a=n(41),s=function(){function t(t,e,n,i,r,o,a,s){this.JobListService=t,this.JobService=e,this.RestService=n,this.ViewService=i,this.MessageReportingService=r,this.ProgressReportService=o,this.TrackingService=a,this.gettextCatalog=s,this.downloadButtonClicked=!1,this.DEFAULT_FORMAT=".e57",this.LAS_FORMAT=".las",this.LAS_WARNING_MESSAGE=this.gettextCatalog.getString("LAS format does not support normals."),this.FILE_FORMATS=[".e57",".las",".ply"],this.selectedExtension=this.DEFAULT_FORMAT,this.POINT_CLOUD_CROP_JOB_ENDPOINT="pointcloud/crop",this.DEFAULT_FILENAME="pointcloud"}return t.$inject=["JobListService","JobService","RestService","ViewService","MessageReportingService","ProgressReportService","TrackingService","gettextCatalog"],t.prototype.isPointCloudCroppingJobOngoing=function(){return this.downloadButtonClicked||this.JobListService.jobs.some(function(t){return t.busy&&t.name===r.JobName.POINT_CLOUD_CROP_JOB})},t.prototype.needToDisplayWarning=function(){return this.selectedExtension===this.LAS_FORMAT},t.prototype.downloadPointCloud=function(){var t=this;if(!this.downloadButtonClicked){if(this.downloadButtonClicked=!0,this.TrackingService.trackPointCloudDownloadButtonClicked(this.ViewService.getCurrentMainViewMode()),0===this.selectedDatasets.length)return this.MessageReportingService.showMessage(this.gettextCatalog.getString("No Visible Datasets"),this.gettextCatalog.getString("No dataset is selected. Please select at least one dataset.")),void(this.downloadButtonClicked=!1);var e=this.callPointCloudCroppingJob();this.JobService.makeJobPromise(e).then(function(e){return t.triggerPointCloudDownload(e)}).catch(function(){return t.removeProgressBarAndEnableDownloadButton()})}},t.prototype.callPointCloudCroppingJob=function(){var t=this;this.cropPointCloudJobProgress=this.ProgressReportService.addTask(this.gettextCatalog.getString("Crop Point Cloud"),1,!1,!0,!1);var e=this.createCroppingJobDto();return this.RestService.postApi(this.POINT_CLOUD_CROP_JOB_ENDPOINT,e).then(function(e){return t.trackJobStatus(e)})},t.prototype.trackJobStatus=function(t){return this.JobListService.refreshJobDetails(t.job_id),t},t.prototype.createCroppingJobDto=function(){var t=this.selectedReferenceDataset?this.selectedReferenceDataset:this.selectedDatasets[0],e=this.getTransformationMatrix(t);return{datasets_ids:this.selectedDatasets.map(function(t){return t.id}),transformation_matrix:e.elements,reference_dataset_id:t.id,file_extension:this.selectedExtension}},t.prototype.getTransformationMatrix=function(t){var e=this.ViewService.mainView.getVolumeClippingLayer().getBoxFrame(),n=(new o.Matrix4).getInverse(e.matrixWorld),i=t.m2w_;return(new o.Matrix4).multiplyMatrices(n,i).transpose()},t.prototype.removeProgressBarAndEnableDownloadButton=function(){this.cropPointCloudJobProgress.itemDone(),this.downloadButtonClicked=!1},t.prototype.triggerPointCloudDownload=function(t){if(this.removeProgressBarAndEnableDownloadButton(),t.success){var e=this.getDownloadedFileName();this.TrackingService.trackPointCloudDownload(),this.RestService.directDownload(t.outputFile,{},e,!1)}else{var n=a.ErrorService.getAllJobFailureDetectors(this.gettextCatalog).find(function(e){return e.applies(t)}),i=n?n.currentErrorMessage:this.gettextCatalog.getString("Task has failed. Please check the Task Manager for more information.");this.MessageReportingService.showMessage(this.gettextCatalog.getString("Cropping Point Cloud Failed"),i)}},t.prototype.getDownloadedFileName=function(){var t=this.fileName?this.fileName.replace(/\.[^/.]+$/,""):"";return 0===t.length?this.DEFAULT_FILENAME+this.selectedExtension:t+this.selectedExtension},t}();e.DownloadPointCloudButtonController=s;var c=function(){function t(){this.restrict="E",this.templateUrl="DownloadPointcloud/DownloadPointCloudButtonComponent/DownloadPointCloudButton.html",this.controller=s,this.controllerAs="vm",this.scope=!0,this.bindToController={selectedDatasets:"=",selectedReferenceDataset:"="}}return t.factory=function(){return function(){return new t}},t}();e.DownloadButtonDirective=c,i.module("IVWebApp").directive("downloadButton",c.factory())},function(t,e){var n="DownloadPointcloud/DownloadPointCloudButtonComponent/DownloadPointCloudButton.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="margin-top-big collapse-style"\n ng-class="vm.needToDisplayWarning() ? \'with-warning-message\' : \'\'">\n\t<div class="input-group">\n\t\t\x3c!-- Filename text input --\x3e\n\t\t<input type="text" class="form-control" placeholder="pointcloud"\n\t\t ng-disabled="vm.isPointCloudCroppingJobOngoing()"\n\t\t ng-model="vm.fileName">\n\n\t\t\x3c!-- Dropup selectbox for the desired pointcloud file extension --\x3e\n\t\t<div class="dropup input-group-addon">\n\t\t\t<button class="dropdown-toggle" data-toggle="dropdown"\n\t\t\t ng-disabled="vm.isPointCloudCroppingJobOngoing()">\n\t\t\t\t{{vm.selectedExtension}}\n\t\t\t\t<span class="caret"></span>\n\t\t\t</button>\n\n\t\t\t<ul class="dropdown-menu">\n\t\t\t\t<li ng-repeat="extension in vm.FILE_FORMATS"\n\t\t\t\t\tng-class="vm.selectedExtension === extension ? \'selected\' : \'\'"\n\t\t\t\t ng-click="vm.selectedExtension = extension">\n\t\t\t\t\t{{extension}}\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t</div>\n\n\t\t\x3c!-- Download button --\x3e\n\t\t<div class="input-group-btn">\n\t\t\t<save-button\n\t\t\t\t\tng-disabled="vm.isPointCloudCroppingJobOngoing()"\n\t\t\t\t\tin-progress="vm.isPointCloudCroppingJobOngoing()"\n\t\t\t\t\tng-click="vm.downloadPointCloud()">\n\t\t\t\t<span translate>Download</span>\n\t\t\t</save-button>\n\t\t</div>\n\t</div>\n\n\t\x3c!-- Warning message for LAS format --\x3e\n\t<div ng-if="vm.needToDisplayWarning()" class="warning-message">\n\t\t{{vm.LAS_WARNING_MESSAGE}}\n\t</div>\n</div>\n\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1512);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"download-button .collapse-style{position:absolute;bottom:0;left:0;right:0;padding:25px 20px 46px;background-color:#fff;box-shadow:0 0 6px rgba(0,0,0,.24)}download-button .collapse-style .input-group-addon{border-left:0}download-button .collapse-style .btn-primary{max-height:34px;min-width:150px;height:34px}download-button .collapse-style.with-warning-message{padding:25px 20px 0}download-button .warning-message{padding:8px 0 18px 13px;color:#999}download-button .selected{background-color:#eee}download-button .dropup{padding:0}download-button .dropdown-toggle{min-width:65px;min-height:32px;cursor:pointer;line-height:32px;padding:0;border:0}download-button .dropdown-toggle:disabled{cursor:not-allowed;background-color:#eee}download-button .dropdown-menu{min-width:65px;border-bottom-right-radius:0;border-bottom-left-radius:0}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1514),n(1515),n(1517),n(1521);var r=function(){function t(t){this.AlignmentService=t}return t.$inject=["AlignmentService"],t.prototype.isNonWritableDatasetSelected=function(){return this.AlignmentService.isNonWritableDatasetSelected()},t}();e.TransformPanelController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="DatasetTransformUI/TransformPanel.html",this.controller=r,this.controllerAs="vm",this.scope=!0,this.bindToController={managerService:"="}}return t.factory=function(){return function(){return new t}},t}();e.TransformPanelDirective=o,i.module("IVWebApp").directive("transformPanel",o.factory())},function(t,e){var n="DatasetTransformUI/TransformPanel.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="panel panel-default">\n\t<div class="panel-heading" data-toggle="collapse" data-target="#transform-panel">\n\t\t<i class="collapse-expand-chevron"></i>\n\t\t<span class="panel-title" translate translate-context="title">\n\t\t\t\tTransform\n\t\t\t</span>\n\t</div>\n\t<div id="transform-panel" class="panel-collapse collapse in">\n\t\t<div class="panel-body">\n\t\t\t<div class="non-writable-dataset"\n\t\t\t ng-if="vm.isNonWritableDatasetSelected()">\n\t\t\t\t<span class="fa fa-exclamation-triangle"></span>\n\t\t\t\t<span class="text-justify" translate>\n\t\t\t\t\tYou do not have permission to edit selected datasets\n\t\t\t\t</span>\n\t\t\t</div>\n\t\t\t<rotate-panel manager-service="vm.managerService"></rotate-panel>\n\t\t\t<translate-panel manager-service="vm.managerService"></translate-panel>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1516);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"transform-panel .non-writable-dataset{margin:10px 0}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1518),n(1519);var r=function(){function t(t,e){this.AlignmentService=t,this.$interval=e}return t.$inject=["AlignmentService","$interval"],t.prototype.isDisabled=function(){return!this.AlignmentService.anythingSelected()||this.AlignmentService.isNonWritableDatasetSelected()},t.prototype.rotate=function(e){var n=this;this.managerService.rotate(e),this.timerRotate||(this.timerRotate=this.$interval(function(){return n.managerService.rotate(e)},t.DELAY))},t.prototype.stopRotating=function(){this.timerRotate&&(this.$interval.cancel(this.timerRotate),this.timerRotate=void 0)},t.DELAY=200,t}();e.RotatePanelController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="DatasetTransformUI/RotatePanel.html",this.controller=r,this.controllerAs="vm",this.scope=!0,this.bindToController={managerService:"="}}return t.factory=function(){return function(){return new t}},t}();e.RotatePanelDirective=o,i.module("IVWebApp").directive("rotatePanel",o.factory())},function(t,e){var n="DatasetTransformUI/RotatePanel.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="form-group">\n\t<div class="btn-toolbar">\n\t\t<div class="btn-group">\n\t\t\t<button type="button" class="btn btn-default"\n\t\t\t ng-disabled="vm.isDisabled()"\n\t\t\t ng-mousedown="vm.rotate(0.174532925)"\n\t\t\t ng-mouseleave="vm.stopRotating()"\n\t\t\t ng-mouseup="vm.stopRotating()">\n\t\t\t\t10°\n\t\t\t\t<i class="fa fa-undo rotate-icon"></i>\n\t\t\t</button>\n\t\t\t<button type="button" class="btn btn-default"\n\t\t\t ng-disabled="vm.isDisabled()"\n\t\t\t ng-mousedown="vm.rotate(0.0174532925)"\n\t\t\t ng-mouseleave="vm.stopRotating()"\n\t\t\t ng-mouseup="vm.stopRotating()">\n\t\t\t\t1°\n\t\t\t\t<i class="fa fa-undo rotate-icon"></i>\n\t\t\t</button>\n\t\t\t<button type="button" class="btn btn-default"\n\t\t\t ng-disabled="vm.isDisabled()"\n\t\t\t ng-mousedown="vm.rotate(0.00174532925)"\n\t\t\t ng-mouseleave="vm.stopRotating()"\n\t\t\t ng-mouseup="vm.stopRotating()">\n\t\t\t\t0.1°\n\t\t\t\t<i class="fa fa-undo rotate-icon"></i>\n\t\t\t</button>\n\t\t</div>\n\t\t<div class="btn-group">\n\t\t\t<button type="button" class="btn btn-default"\n\t\t\t ng-disabled="vm.isDisabled()"\n\t\t\t ng-mousedown="vm.rotate(-0.00174532925)"\n\t\t\t ng-mouseleave="vm.stopRotating()"\n\t\t\t ng-mouseup="vm.stopRotating()">\n\t\t\t\t0.1°\n\t\t\t\t<i class="fa fa-repeat rotate-icon"></i>\n\t\t\t</button>\n\t\t\t<button type="button" class="btn btn-default"\n\t\t\t ng-disabled="vm.isDisabled()"\n\t\t\t ng-mousedown="vm.rotate(-0.0174532925)"\n\t\t\t ng-mouseleave="vm.stopRotating()"\n\t\t\t ng-mouseup="vm.stopRotating()">\n\t\t\t\t1°\n\t\t\t\t<i class="fa fa-repeat rotate-icon"></i>\n\t\t\t</button>\n\t\t\t<button type="button" class="btn btn-default"\n\t\t\t ng-disabled="vm.isDisabled()"\n\t\t\t ng-mousedown="vm.rotate(-0.174532925)"\n\t\t\t ng-mouseleave="vm.stopRotating()"\n\t\t\t ng-mouseup="vm.stopRotating()">\n\t\t\t\t10°\n\t\t\t\t<i class="fa fa-repeat rotate-icon"></i>\n\t\t\t</button>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1520);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"rotate-panel{float:none}rotate-panel .btn-toolbar>.btn-group>button{padding-left:6px;padding-right:6px}rotate-panel .rotate-icon{color:#2e88b3}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1522),n(1523);var r=n(4),o=function(){function t(t,e){this.AlignmentService=t,this.$interval=e}return t.$inject=["AlignmentService","$interval"],t.prototype.isDisabled=function(){return!this.AlignmentService.anythingSelected()||this.AlignmentService.isNonWritableDatasetSelected()},t.prototype.translate=function(e,n,i){var o=this;this.managerService.translate(new r.Vector3(e,n,i)),this.timerTranslate||(this.timerTranslate=this.$interval(function(){return o.managerService.translate(new r.Vector3(e,n,i))},t.DELAY))},t.prototype.stopTranslating=function(){this.timerTranslate&&(this.$interval.cancel(this.timerTranslate),this.timerTranslate=void 0)},t.DELAY=200,t}();e.TranslatePanelController=o;var a=function(){function t(){this.restrict="E",this.templateUrl="DatasetTransformUI/TranslatePanel.html",this.controller=o,this.controllerAs="vm",this.scope=!0,this.bindToController={managerService:"="}}return t.factory=function(){return function(){return new t}},t}();e.TranslatePanelDirective=a,i.module("IVWebApp").directive("translatePanel",a.factory())},function(t,e){var n="DatasetTransformUI/TranslatePanel.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="form-group">\n\t<div class="btn-toolbar">\n\t\t<div class="btn-group">\n\t\t\t<button type="button" class="btn btn-default"\n\t\t\t ng-disabled="vm.isDisabled()"\n\t\t\t ng-mousedown="vm.translate(-0.02, 0, 0)"\n\t\t\t ng-mouseleave="vm.stopTranslating()"\n\t\t\t ng-mouseup="vm.stopTranslating()">\n\t\t\t\t-x\n\t\t\t\t<i class="fa fa-arrow-left translate-icon"></i>\n\t\t\t</button>\n\n\t\t\t<button type="button" class="btn btn-default"\n\t\t\t ng-disabled="vm.isDisabled()"\n\t\t\t ng-mousedown="vm.translate(0.02, 0, 0)"\n\t\t\t ng-mouseleave="vm.stopTranslating()"\n\t\t\t ng-mouseup="vm.stopTranslating()">\n\t\t\t\t+x\n\t\t\t\t<i class="fa fa-arrow-right translate-icon"></i>\n\t\t\t</button>\n\t\t</div>\n\t\t<div class="btn-group">\n\t\t\t<button type="button" class="btn btn-default"\n\t\t\t ng-disabled="vm.isDisabled()"\n\t\t\t ng-mousedown="vm.translate(0, -0.02, 0)"\n\t\t\t ng-mouseleave="vm.stopTranslating()"\n\t\t\t ng-mouseup="vm.stopTranslating()">\n\t\t\t\t-y\n\t\t\t\t<i class="fa fa-arrow-down translate-icon"></i>\n\t\t\t</button>\n\n\t\t\t<button type="button" class="btn btn-default"\n\t\t\t ng-disabled="vm.isDisabled()"\n\t\t\t ng-mousedown="vm.translate(0, 0.02, 0)"\n\t\t\t ng-mouseleave="vm.stopTranslating()"\n\t\t\t ng-mouseup="vm.stopTranslating()">\n\t\t\t\t+y\n\t\t\t\t<i class="fa fa-arrow-up translate-icon"></i>\n\t\t\t</button>\n\t\t</div>\n\t\t<div class="btn-group">\n\t\t\t<button type="button" class="btn btn-default"\n\t\t\t ng-disabled="vm.isDisabled()"\n\t\t\t ng-mousedown="vm.translate(0, 0, -0.02)"\n\t\t\t ng-mouseleave="vm.stopTranslating()"\n\t\t\t ng-mouseup="vm.stopTranslating()">\n\t\t\t\t-z\n\t\t\t\t<i class="fa fa-arrow-down translate-icon"></i>\n\n\t\t\t</button>\n\n\t\t\t<button type="button" class="btn btn-default"\n\t\t\t ng-disabled="vm.isDisabled()"\n\t\t\t ng-mousedown="vm.translate(0, 0, 0.02)"\n\t\t\t ng-mouseleave="vm.stopTranslating()"\n\t\t\t ng-mouseup="vm.stopTranslating()">\n\t\t\t\t+z\n\t\t\t\t<i class="fa fa-arrow-up translate-icon"></i>\n\t\t\t</button>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1524);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"translate-panel{float:none}translate-panel .btn-toolbar>.btn-group>button{padding-left:7px;padding-right:7px}translate-panel .translate-icon{color:#2e88b3}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1526);var r=n(197),o=n(1527),a=n(7),s=function(){function t(t){this.AlignmentService=t,this.fileName=""}return t.$inject=["AlignmentService"],t.prototype.getSelectedDatasets=function(){return a.values(this.AlignmentService.selectedDatasets)},t.prototype.anythingSelected=function(){return a.size(this.AlignmentService.selectedDatasets)>0},t.prototype.downloadXml=function(){var t=o.DatasetAlignmentXmlGenerator.generateXML(this.referenceDataset,this.AlignmentService.selectedDatasets);r.downloadFile(t,this.fileName,"xml","text/xml",!0)},t}();e.GenerateAndSaveBundleXmlController=s;var c=function(){function t(){this.restrict="E",this.templateUrl="Alignment/GenerateAndSaveBundleXml.html",this.controller=s,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.GenerateAndSaveBundleXmlDirective=c,i.module("IVWebApp").directive("generateAndSaveBundleXml",c.factory())},function(t,e){var n="Alignment/GenerateAndSaveBundleXml.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="panel panel-default">\n\t<div class="panel-heading" data-toggle="collapse" data-target="#xmlExport">\n\t\t<i class="collapse-expand-chevron"></i>\n\t\t<span class="panel-title" translate translate-context="title">\n\t\t\tXML-Export\n\t\t</span>\n\t</div>\n\t<div id="xmlExport" class="panel-collapse collapse in">\n\t\t<div class="panel-body">\n\t\t\t\x3c!--reference dataset dropdown--\x3e\n\t\t\t<div class="form-group">\n\t\t\t\t<strong class="control-label" translate>\n\t\t\t\t\tReference dataset\n\t\t\t\t</strong>\n\t\t\t\t<select class="form-control"\n\t\t\t\t title="{{\'Reference dataset\'|translate}}"\n\t\t\t\t ng-model="vm.referenceDataset"\n\t\t\t\t ng-options="dataset.title for dataset in vm.getSelectedDatasets() | orderBy:\'title\'">\n\t\t\t\t</select>\n\t\t\t</div>\n\n\t\t\t<div class="row">\n\t\t\t\t<div class="col-sm-6">\n\t\t\t\t\t<input class="form-control"\n\t\t\t\t\t type="text"\n\t\t\t\t\t ng-model="vm.fileName"\n\t\t\t\t\t placeholder="{{\'Site name (optional)\'|translate}}"\n\t\t\t\t\t title="{{\'Downloaded file name will be (Site name)_(date:yyyy_mm_dd).xml\'|translate}}">\n\t\t\t\t</div>\n\t\t\t\t<div class="col-sm-6">\n\t\t\t\t\t\x3c!--xml download button--\x3e\n\t\t\t\t\t<button class="form-control"\n\t\t\t\t\t type="button"\n\t\t\t\t\t ng-click="vm.downloadXml()"\n\t\t\t\t\t ng-disabled="!vm.referenceDataset || !vm.anythingSelected()"\n\t\t\t\t\t translate>\n\t\t\t\t\t\tDownload\n\t\t\t\t\t</button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),r=n(1528),o=n(7),a=function(){function t(){}return t.generateXML=function(e,n){var a=e&&n[e.id]&&t.getLatLonZAngle(e);if(a){var s=new r("UTF-8");return s.formatting="indented",s.indentChar=" ",s.indentation=2,s.writeStartDocument(),s.writeStartElement("bundle"),s.writeElementString("serial",t.generateGUID()),s.writeStartElement("georeference"),s.writeElementString("proj","+proj=tmerc +ellps=WGS84 +lon_0="+a.lon+" +lat_0="+a.lat),s.writeElementString("angle",""+a.angle),s.writeElementString("z",""+a.z),s.writeElementString("comment",""),s.writeEndElement(),o.forEach(n,function(n){var r=new i.Matrix4;r.multiplyMatrices(e.m2wInv_,n.m2w_);var o=new i.Vector3,a=new i.Quaternion,c=new i.Vector3;r.decompose(o,a,c),t.createXMLNodeForADataset(s,n.name,n.title,n.level,o,a)}),s.writeEndElement(),s.writeEndDocument(),s.flush()}},t.getLatLonZAngle=function(t){if(t){var e=t.getGlobalState();return{lon:e.pos[0],lat:e.pos[1],z:e.pos[2],angle:e.orientation}}},t.generateGUID=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){var e=16*Math.random()|0;return("x"===t?e:3&e|8).toString(16)})},t.createXMLNodeForADataset=function(e,n,i,r,o,a){e.writeStartElement("dataset"),e.writeElementString("name",n),e.writeElementString("title",t.escapeXMLTagContent(i)),e.writeElementString("level",r),e.writeElementString("pointcloud","datasets_proc/"+n+"/pointcloud.ply"),e.writeElementString("path","datasets_web/"+n),e.writeStartElement("Pose"),e.writeStartElement("position"),e.writeElementString("x",""+o.x),e.writeElementString("y",""+o.y),e.writeElementString("z",""+o.z),e.writeEndElement(),e.writeStartElement("orientation"),e.writeElementString("w",""+a.w),e.writeElementString("x",""+a.x),e.writeElementString("y",""+a.y),e.writeElementString("z",""+a.z),e.writeEndElement(),e.writeEndElement(),e.writeEndElement()},t.escapeXMLTagContent=function(t){return t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/"/g,"&apos;")},t}();e.DatasetAlignmentXmlGenerator=a},function(t,e){function n(t,e){t&&(this.encoding=t),e&&(this.version=e)}!function(){var t=n.prototype={encoding:"UTF-8",version:"1.0",formatting:"indented",indentChar:"\t",indentation:1,newLine:"\n",writeStartDocument:function(t){this.close(),this.stack=[],this.standalone=t},writeEndDocument:function(){this.active=this.root,this.stack=[]},writeDocType:function(t){this.doctype=t},writeStartElement:function(t,e){e&&(t=e+":"+t);var n={n:t,a:{},c:[]};this.active?(this.active.c.push(n),this.stack.push(this.active)):this.root=n,this.active=n},writeEndElement:function(){this.active=this.stack.pop()||this.root},writeAttributeString:function(t,e){this.active&&(this.active.a[t]=e)},writeString:function(t){this.active&&this.active.c.push(t)},writeXML:function(t){this.active&&this.active.c.push(t)},writeElementString:function(t,e,n){this.writeStartElement(t,n).writeString(e).writeEndElement()},writeCDATA:function(t){t=t.replace(/>>]/g,"]]><![CDATA[>"),this.writeString("<![CDATA["+t+"]]>")},writeComment:function(t){this.writeString("\x3c!-- "+t+" --\x3e")},flush:function(){this.writeEndDocument();var t="",e=this.indentation,n="indented"==this.formatting.toLowerCase(),i=['<?xml version="'+this.version+'" encoding="'+this.encoding+'"'];if(void 0!==this.standalone&&(i[0]+=' standalone="'+!!this.standalone+'"'),i[0]+=" ?>",this.doctype&&this.root&&i.push("<!DOCTYPE "+this.root.n+" "+this.doctype+">"),n)for(;e--;)t+=this.indentChar;return this.root&&function t(e,n,i,r){var o,a,s=n+"<"+e.n,c=e.c.length,l=0;for(o in e.a)s+=" "+o+'="'+e.a[o]+'"';if(s+=c?">":" />",r.push(s),c){do{if("string"==typeof(a=e.c[l++])){if(1==c)return r.push(r.pop()+a+"</"+e.n+">");r.push(n+i+a)}else"object"==typeof a&&t(a,n+i,i,r)}while(l<c);r.push(n+"</"+e.n+">")}}(this.root,"",t,i),i.join(n?this.newLine:"")},close:function(){this.root&&function t(e){for(var n=e.c.length;n--;)"object"==typeof e.c[n]&&t(e.c[n]);e.n=e.a=e.c=null}(this.root),this.active=this.root=this.stack=null},getDocument:window.ActiveXObject?function(){var t=new ActiveXObject("Microsoft.XMLDOM");return t.async=!1,t.loadXML(this.flush()),t}:function(){return(new DOMParser).parseFromString(this.flush(),"text/xml")}};for(var e in t)if("function"==typeof t[e]&&!/flush|getDocument/.test(e)){var i=t[e];t[e]=function(){return arguments.callee._o_.apply(this,arguments),this},t[e]._o_=i}}(),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1530);var r=n(20),o=n(611),a=n(8),s=n(16),c=function(){function t(t,e,n,i,r,o,a){var c=this;this.GeoRegistrationService=t,this.AlignmentService=e,this.ConfigService=n,this.DatasetRepository=i,this.RestService=r,this.TransformService=o;var l=new s.SignalConnections;l.add(e.zoomedToDatasets.connect(function(t){return c.zoomToDatasets(t)})),l.add(e.primaryDatasetSwitched.connect(function(){return c.primaryDatasetSelected()})),l.add(e.baseLayerSwitched.connect(function(){c.olMap&&c.olMap.switchBaseLayer()})),l.add(e.selectedDatasetsChanged.connect(function(){return c.datasetsSelected()})),l.add(e.transparencySwitched.connect(function(){c.olMap&&c.olMap.makeMapsTransparent(e.transparent)})),l.add(t.datasetTranslationChanged.connect(function(t){c.olMap&&c.olMap.translateMapsAndTheirMarkers(t)})),l.add(t.datasetOrientationChanged.connect(function(){c.olMap&&c.olMap.updateLocationsFromService(t.datasetLocations)})),a.$on("$destroy",function(){return l.disconnectAll()}),this.initialize()}return t.$inject=["GeoRegistrationService","AlignmentService","ConfigService","DatasetRepository","RestService","TransformService","$scope"],t.prototype.datasetsSelected=function(){var t=this;this.olMap&&this.DatasetRepository.findAll().then(function(e){for(var n=0,i=e;n<i.length;n++){var r=i[n];t.AlignmentService.selectedDatasets[r.id]?t.olMap.showMap(r.id):t.olMap.hideMap(r.id)}}).catch(a.handleWarning)},t.prototype.primaryDatasetSelected=function(){this.olMap&&this.AlignmentService.primary&&(this.olMap.showMap(this.AlignmentService.primary.id),this.olMap.moveDragControlTo(""+this.AlignmentService.primary.id),this.olMap.makeMapsTransparent(this.AlignmentService.transparent))},t.prototype.zoomToDatasets=function(t){this.olMap&&this.olMap.zoomMapToDatasets(t)},t.prototype.initialize=function(){var t=this;this.olMap?(this.reinitOLM(),this.DatasetRepository.findAll().then(function(e){for(var n=0,i=e;n<i.length;n++){var r=i[n];t.GeoRegistrationService.cacheGlobalState(r)}}).catch(a.handleWarning),this.olMap.updateLocationsFromService(this.GeoRegistrationService.datasetLocations)):this.GeoRegistrationService.initialized.then(function(){return t.initOLM()}).catch(a.handleWarning)},t.prototype.initOLM=function(){var t=this;o.loadOpenLayersMap().then(function(e){t.olMap=new e("geo-reg-open-layers-map",t.GeoRegistrationService,t.ConfigService,t.RestService,t.AlignmentService),t.initDatasetMaps(),r.invalidateAngular()}).catch(a.handleWarning)},t.prototype.reinitOLM=function(){this.olMap&&(this.olMap.removeDeletedMaps(this.DatasetRepository.dataMap),this.initDatasetMaps())},t.prototype.initDatasetMaps=function(){var t=this;this.DatasetRepository.findAll().then(function(e){for(var n=0,i=e;n<i.length;n++){var r=i[n];t.GeoRegistrationService.cacheGlobalState(r),t.olMap.addMap(r,t.GeoRegistrationService.datasetLocations[r.id])}t.datasetsSelected(),t.primaryDatasetSelected()}).catch(a.handleWarning)},t}();e.GeoRegistrationMapController=c;var l=function(){function t(){this.restrict="E",this.templateUrl="GeoRegistration/GeoRegistrationMap.html",this.controller=c,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.GeoRegistrationMapDirective=l,i.module("IVWebApp").directive("geoRegistrationMap",l.factory())},function(t,e){var n="GeoRegistration/GeoRegistrationMap.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'\x3c!--inline style necessary to overcome an OpenLayersMap bug (https://github.com/openlayers/ol2/issues/669)--\x3e\n<div id="geo-reg-open-layers-map"\n class="open-layers-map geo-reg-map"\n resize-event="vm.olMap.updateMapSize()" delay="100"\n style="width:100%; height:100%"></div>\n')}]),t.exports=n},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(1532);var a=n(612),s=n(220);n(1533);var c=n(7),l=function(t){function e(e,n,i,r,o,a,c,l,u){var d=t.call(this,e,r,i,o,a,c,l,n,u)||this;return d.GeoRegistrationService=e,d.gettext=n,d.treeConfig=s.DatasetTreeConfigurationFactory.createGeoRegistrationConfig(d.gettext("Datasets",void 0,"title")),d}return r(e,t),e.$inject=["GeoRegistrationService","gettext","AlignmentService","$scope","DatasetRepository","ModeService","ViewService","gettextCatalog","hotkeys"],Object.defineProperty(e.prototype,"modalDeferred",{get:function(){return this.GeoRegistrationService.modalDeferred},enumerable:!0,configurable:!0}),e.prototype.selectDatasets=function(e){var n=this;e=c.filter(e,function(t){return n.AlignmentService.mapDataPresent[t.id]}),t.prototype.selectDatasets.call(this,e)},e.prototype.discardChanges=function(){return this.GeoRegistrationService.discardChanges()},e}(a.AlignmentController);e.GeoRegistrationPanelController=l;var u=function(){function t(){this.restrict="E",this.templateUrl="GeoRegistration/GeoRegistrationPanel.html",this.controller=l,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.GeoRegistrationPanelDirective=u,o.module("IVWebApp").directive("geoRegistrationPanel",u.factory())},function(t,e){var n="GeoRegistration/GeoRegistrationPanel.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<form role="form">\n\t<dataset-tree parent-controller="vm" tree-config="vm.treeConfig"></dataset-tree>\n\n\t<map-toolbar></map-toolbar>\n\n\t\x3c!-- Save button --\x3e\n\t<div class="form-group text-right mt-10">\n\t\t<save-button ng-click="vm.save()"\n\t\t in-progress="vm.isSavingInProgress()"></save-button>\n\t</div>\n\n\t<transform-panel manager-service="vm.GeoRegistrationService"></transform-panel>\n\n\t<generate-and-save-bundle-xml></generate-and-save-bundle-xml>\n\t<save-discard-confirmation\n\t\t\tmodal-id="confirmUnsavedGeoregistration"\n\t\t\ton-save-callback="vm.save()"\n\t\t\ton-discard-callback="vm.discardChanges()"\n\t\t\tdeferred-promise="vm.modalDeferred"\n\t\t\tsubject="{{\'Geo-Registration\' | translate:\'title\'}}">\n\t</save-discard-confirmation>\n</form>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1534);var r=function(){function t(t){this.AlignmentService=t}return t.$inject=["AlignmentService"],t.prototype.toggleBaseLayer=function(){this.AlignmentService.toggleBaseLayer()},t.prototype.toggleTransparency=function(){this.AlignmentService.toggleTransparency()},t.prototype.isTransparent=function(){return this.AlignmentService.transparent},t}();e.MapToolbarController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="GeoRegistration/MapToolbar.html",this.controller=r,this.controllerAs="vm",this.scope={parentController:"="}}return t.factory=function(){return function(){return new t}},t}();e.MapToolbarDirective=o,i.module("IVWebApp").directive("mapToolbar",o.factory())},function(t,e){var n="GeoRegistration/MapToolbar.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="btn-toolbar">\n\t<div class="btn-group pull-right">\n\t\t<button type="button"\n\t\t ng-click=\'vm.toggleTransparency()\'\n\t\t title="{{\'Make all datasets except the reference dataset transparent\' | translate}}"\n\t\t ng-class="vm.isTransparent() ? \'btn btn-default active\' : \'btn btn-default\' ">\n\t\t\t<i class="fa fa-picture-o"></i>\n\t\t</button>\n\n\t\t<button type="button"\n\t\t ng-click=\'vm.toggleBaseLayer()\'\n\t\t title="{{\'Toggle map type\' | translate}}"\n\t\t class="btn btn-default">\n\t\t\t<i class="fa fa-map-o"></i>\n\t\t</button>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(1536),n(607),n(1537);var a=n(220),s=n(612);n(1539);var c=function(t){function e(e,n,i,r,o,s,c,l,u){var d=t.call(this,e,r,i,o,s,c,l,n,u)||this;return d.DatasetAlignmentService=e,d.gettext=n,d.treeConfig=a.DatasetTreeConfigurationFactory.createDatasetAlignmentConfig(d.gettext("Datasets",void 0,"title")),d}return r(e,t),e.$inject=["DatasetAlignmentService","gettext","AlignmentService","$scope","DatasetRepository","ModeService","ViewService","gettextCatalog","hotkeys"],Object.defineProperty(e.prototype,"modalDeferred",{get:function(){return this.DatasetAlignmentService.modalDeferred},enumerable:!0,configurable:!0}),e.prototype.discardChanges=function(){return this.DatasetAlignmentService.discardChanges()},e}(s.AlignmentController);e.DatasetAlignmentPanelController=c;var l=function(){function t(){this.restrict="E",this.templateUrl="DatasetAlignment/DatasetAlignmentPanel.html",this.controller=c,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.DatasetAlignmentPanelDirective=l,o.module("IVWebApp").directive("datasetAlignmentPanel",l.factory())},function(t,e){var n="DatasetAlignment/DatasetAlignmentPanel.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<form role="form">\n\t<dataset-tree parent-controller="vm" tree-config="vm.treeConfig"></dataset-tree>\n\n\t\x3c!--save button--\x3e\n\t<div class="form-group text-right mt-10">\n\t\t<save-button ng-click="vm.save()"\n\t\t in-progress="vm.isSavingInProgress()"></save-button>\n\t</div>\n\n\t<transform-panel manager-service="vm.DatasetAlignmentService"></transform-panel>\n\n\t<vector-map-selection></vector-map-selection>\n\n\t<alignment-helper></alignment-helper>\n\n\t<automatic-alignment></automatic-alignment>\n\n\t<generate-and-save-bundle-xml></generate-and-save-bundle-xml>\n\n\t<save-discard-confirmation\n\t\t\tmodal-id="confirmUnsavedDatasetAlignment"\n\t\t\ton-save-callback="vm.save()"\n\t\t\ton-discard-callback="vm.discardChanges()"\n\t\t\tdeferred-promise="vm.modalDeferred"\n\t\t\tsubject="{{\'Dataset Alignment\' | translate:\'title\'}}">\n\t</save-discard-confirmation>\n\n</form>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(7),r=n(2);n(1538),n(613);var o=n(613),a=n(327),s=function(){function t(t,e,n,i){this.AutomaticAlignmentService=t,this.MessageReportingService=e,this.gettextCatalog=n,this.AlignmentService=i,this.data=new o.AutomaticAlignmentState}return t.$inject=["AutomaticAlignmentService","MessageReportingService","gettextCatalog","AlignmentService"],t.prototype.fetch=function(){var t=this;this.data.target=this.AlignmentService.primary,this.data.source?this.AutomaticAlignmentService.fetch(this.data).catch(function(e){if(e instanceof a.Job){var n,i=(""+e.lastOutput).trim();n=e.success?t.gettextCatalog.getString("Alignment succeeded but the server response cannot be parsed: {{response}}",{response:i}):t.gettextCatalog.getString("Alignment failed: {{reason}}",{reason:i}),t.MessageReportingService.showMessage(t.gettextCatalog.getString("Automatic Alignment Failed",void 0,"title"),n)}}):this.MessageReportingService.showMessage(this.gettextCatalog.getString("Select Source Dataset",void 0,"title"),this.gettextCatalog.getString("Please select the source dataset from the drop down menu. The reference dataset is automatically selected as the target dataset."))},t.prototype.apply=function(){this.AutomaticAlignmentService.apply(this.data)},t.prototype.undo=function(){this.AutomaticAlignmentService.undo(this.data)},t.prototype.getDatasets=function(){var t=this,e=i.values(this.AlignmentService.selectedDatasets);return i.filter(e,function(e){return e.id!==t.AlignmentService.primary.id&&e.canWrite&&!e.locked})},t.prototype.getSelectedDatasetsWithoutNormals=function(){return[this.data.source,this.AlignmentService.primary].filter(function(t){return null!=t&&!t.hasNormals}).map(function(t){return t.name}).join(", ")},t.prototype.canAutoAlign=function(){return void 0!==this.data.source&&void 0!==this.AlignmentService.primary&&this.data.source.hasNormals&&this.AlignmentService.primary.hasNormals},t}();e.AutomaticAlignmentController=s;var c=function(){function t(){this.restrict="E",this.templateUrl="DatasetAlignment/AutomaticAlignment/AutomaticAlignment.html",this.controller=s,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.AutomaticAlignmentDirective=c,r.module("IVWebApp").directive("automaticAlignment",c.factory())},function(t,e){var n="DatasetAlignment/AutomaticAlignment/AutomaticAlignment.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="panel panel-default">\n\t<div class="panel-heading" data-toggle="collapse" data-target="#collapseAutoAlignment">\n\t\t<i class="collapse-expand-chevron"></i>\n\t\t<span class="panel-title" translate translate-context="title">\n\t\t\tAutomatic Alignment\n\t\t</span>\n\t</div>\n\t<div id="collapseAutoAlignment" class="panel-collapse collapse in">\n\t\t<div class="panel-body">\n\t\t\t<div class="margin-bottom-small">\n\t\t\t\t<span translate\n\t\t\t\t translate-html-params-icon="\'<i class=\' + \'\\\'glyphicon glyphicon-star\\\'\' + \'></i>\'">\n\t\t\t\t\tAutomatic fine-alignment transforms the dataset selected below in order to bring it into alignment with the reference dataset ({{icon}}). The datasets have to be coarsely aligned by hand and the dataset to align has to be unlocked.\n\t\t\t\t</span>\n\t\t\t</div>\n\n\t\t\t<div class="form">\n\t\t\t\t<div class="form-group">\n\t\t\t\t\t<label class="control-label" for="autoAlignDataset" translate>\n\t\t\t\t\t\tDataset\n\t\t\t\t\t</label>\n\t\t\t\t\t<select id="autoAlignDataset"\n\t\t\t\t\t class="form-control"\n\t\t\t\t\t title="{{\'Dataset to be aligned\'|translate}}"\n\t\t\t\t\t ng-disabled="vm.data.inProgress"\n\t\t\t\t\t ng-model="vm.data.source"\n\t\t\t\t\t ng-options="dataset as dataset.title for dataset in vm.getDatasets() | orderBy: \'title\'"\n\t\t\t\t\t ng-change="vm.data.result = undefined;">\n\t\t\t\t\t</select>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="alert alert-warning" ng-if="vm.getSelectedDatasetsWithoutNormals().length !== 0">\n\t\t\t\t\t<span translate translate-params-datasets="vm.getSelectedDatasetsWithoutNormals()">\n\t\t\t\t\t\tAutomatic alignment cannot be performed because the following datasets do not have normals: {{datasets}}\n\t\t\t\t\t</span>\n\t\t\t\t</div>\n\t\t\t\t<div class="checkbox">\n\t\t\t\t\t<label>\n\t\t\t\t\t\t<input type="checkbox" ng-model="vm.data.verticalAlignment"\n\t\t\t\t\t\t ng-disabled="vm.data.inProgress">\n\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\tAlign vertically\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</label>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="form-group" ng-if="vm.data.result">\n\t\t\t\t\t<label translate>\n\t\t\t\t\t\tResult\n\t\t\t\t\t</label>\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<span ng-if="!vm.data.inProgress">\n\t\t\t\t\t\t\t<strong ng-if="vm.data.result.converged" translate>\n\t\t\t\t\t\t\t\tThe automatic alignment has completed successfully.\n\t\t\t\t\t\t\t</strong>\n\t\t\t\t\t\t\t<span ng-if="!vm.data.result.converged" translate>\n\t\t\t\t\t\t\t\tThe automatic alignment has failed, please make sure there is sufficient overlap.\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t<br>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<span translate\n\t\t\t\t\t\t translate-params-inliers="vm.data.result.inliers"\n\t\t\t\t\t\t translate-params-iterations="vm.data.result.iterations"\n\t\t\t\t\t\t translate-params-error="(vm.data.result.inliers>0 ? vm.data.result.sad*1000/vm.data.result.inliers : 0)|number:0">\n\t\t\t\t\t\t\t{{inliers}} points used, mean error {{error}} mm after {{iterations}} iterations.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t<div>\n\t\t\t\t\t<div class="text-right">\n\t\t\t\t\t\t<default-button\n\t\t\t\t\t\t\t\tng-click="vm.fetch()"\n\t\t\t\t\t\t\t\tng-disabled="vm.data.inProgress || !vm.canAutoAlign()"\n\t\t\t\t\t\t\t\tin-progress="vm.data.inProgress">\n\t\t\t\t\t\t\t<span translate>Align</span>\n\t\t\t\t\t\t</default-button>\n\n\t\t\t\t\t\t<default-button ng-show="vm.data.result && !vm.data.applied"\n\t\t\t\t\t\t ng-click="vm.apply()"\n\t\t\t\t\t\t in-progress="vm.data.inProgress">\n\t\t\t\t\t\t\t<span translate>Apply</span>\n\t\t\t\t\t\t</default-button>\n\n\t\t\t\t\t\t<default-button ng-show="vm.data.result && vm.data.applied"\n\t\t\t\t\t\t ng-disabled="vm.data.inProgress"\n\t\t\t\t\t\t ng-click="vm.undo()">\n\t\t\t\t\t\t\t<span translate>Undo</span>\n\t\t\t\t\t\t</default-button>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1540);var r=n(8),o=n(107),a=function(){function e(){}return e.prototype.saveChanges=function(){var t=this;this.isSaveInProgress=!0,this.setBackgroundDismiss(!1),this.onSaveCallback().then(function(){t.isSaveInProgress=!1,t.resolvePromiseAndHideDialog()}).catch(function(e){t.isSaveInProgress=!1,t.rejectPromiseAndHideDialog(e)})},e.prototype.discardChanges=function(){var t=this;this.isDiscardInProgress=!0,this.setBackgroundDismiss(!1),o.promiseFinally(this.onDiscardCallback(),function(){t.isDiscardInProgress=!1,t.resolvePromiseAndHideDialog()}).catch(r.handleWarning)},e.prototype.rejectPromiseAndHideDialog=function(t){void 0===t&&(t=""),this.deferredPromise.reject(t),this.hideDialog()},e.prototype.resolvePromiseAndHideDialog=function(){this.deferredPromise.resolve(),this.hideDialog()},e.prototype.hideDialog=function(){this.isDiscardInProgress||this.isSaveInProgress||(this.setBackgroundDismiss(!0),t("#"+this.modalId).modal("hide"))},e.prototype.setBackgroundDismiss=function(e){var n=t("#"+this.modalId);n.data("bs.modal").options.keyboard=e,n.data("bs.modal").options.backdrop=!!e||"static",e?n.data("bs.modal").escape():n.off("keydown.dismiss.bs.modal")},e}();e.SaveDiscardConfirmationController=a;var s=function(){function t(){this.restrict="E",this.templateUrl="Core/SaveDiscardConfirmation/SaveDiscardConfirmation.html",this.controller=a,this.controllerAs="vm",this.scope=!0,this.bindToController={modalId:"@",onSaveCallback:"&",onDiscardCallback:"&",subject:"@",deferredPromise:"="}}return t.factory=function(){return function(){return new t}},t}();e.SaveDiscardConfirmationDirective=s,i.module("IVWebApp").directive("saveDiscardConfirmation",s.factory())}).call(this,n(19))},function(t,e,n){var i="Core/SaveDiscardConfirmation/SaveDiscardConfirmation.html",r='<modal>\n\t<div class="modal fade" id="{{vm.modalId}}" tabindex="-1" role="dialog"\n\t aria-labelledby="{{vm.modalId}}" aria-hidden="true">\n\t\t<div class="modal-dialog" role="document">\n\t\t\t<div class="modal-content">\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}"\n\t\t\t\t\t ng-click = "vm.hideDialog()">\n\t\t\t\t\t</img>\n\t\t\t\t\t<h4 translate translate-context="title">Save Changes Before Leaving</h4>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-body">\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<span translate translate-params-subject="vm.subject" translate-context="Message displayed when leaving any mode with unsaved changes">You have unsaved changes to the {{subject}}.</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-footer">\n\t\t\t\t\t<cancel-button class="pull-left"\n\t\t\t\t\t data-dismiss="modal"\n\t\t\t\t\t ng-disabled="vm.isDiscardInProgress || vm.isSaveInProgress"></cancel-button>\n\t\t\t\t\t<discard-button ng-click="vm.discardChanges()"\n\t\t\t\t\t in-progress="vm.isDiscardInProgress"\n\t\t\t\t\t ng-disabled="vm.isDiscardInProgress || vm.isSaveInProgress">\n\t\t\t\t\t</discard-button>\n\n\t\t\t\t\t<save-button ng-click="vm.saveChanges()"\n\t\t\t\t\t in-progress="vm.isSaveInProgress"\n\t\t\t\t\t ng-disabled="vm.isDiscardInProgress || vm.isSaveInProgress">\n\t\t\t\t\t</save-button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1542),n(1543);var r=n(4),o=n(344),a=n(8),s=n(52),c=n(105),l=n(68);n(1545),n(648);var u=function(){function t(t,e,n,i,r,o,s,l){var u=this;this.ModeService=t,this.SiteModelEditorService=e,this.DatasetRepository=n,this.NavGraphEditingService=i,this.DownloadPointCloudService=r,this.GeoTransformationService=o,this.ViewService=s,this.AlignmentService=l,this.switchDownloadPointCloudToMap=function(){u.isDownloadPointCloudMode()&&u.DownloadPointCloudService.switchToMap()},this.switchDownloadPointCloudToPerspective=function(){u.isDownloadPointCloudMode()&&u.DownloadPointCloudService.switchToPerspective()},this.switchToMapView=function(){u.ViewService.mainView.getCursorLayer().setVisibility(!1),u.ViewService.showSecondaryView=!1,u.ViewService.mainView.switchViewMode(c.SceneViewMode.Map).catch(a.handleWarning)},this.switchToPerspectiveView=function(){u.ViewService.mainView.getCursorLayer().setVisibility(!0),u.ViewService.showSecondaryView=!0,u.ViewService.mainView.switchViewMode(c.SceneViewMode.Perspective).catch(a.handleWarning)},l.selectedDatasetsChanged.connect(function(){return u.selectedDatasetsChanged()}),l.zoomedToDatasets.connect(function(t,e){return u.zoomToDatasets(t,e)}),this.DatasetRepository.entityCreated.connect(function(t){return u.updateDatasetsPointCloudVisibility.apply(u,t)}),this.DatasetRepository.entityChanged.connect(function(t){return u.updateDatasetsPointCloudVisibility(t)}),this.pathDrawingDelegate=this.NavGraphEditingService.navGraphPathDrawingDelegate}return t.$inject=["ModeService","SiteModelEditorService","DatasetRepository","NavGraphEditingService","DownloadPointCloudService","GeoTransformationService","ViewService","AlignmentService"],t.prototype.isDatasetAlignmentOrSiteModelEditorMode=function(){return this.ModeService.isDatasetAlignmentMode()||this.ModeService.isSiteModelEditorMode()},t.prototype.isNavGraphEditorMode=function(){return this.ModeService.isNavGraphEditorMode()},t.prototype.isPathDrawingModeActive=function(){return this.NavGraphEditingService.navGraphEditingMode===l.NavGraphEditingConstantsModes.PATH_DRAWING},t.prototype.isPathDrawingPossible=function(){return this.pathDrawingDelegate.isPathDrawingPossible()},t.prototype.startPathDrawing=function(){this.pathDrawingDelegate.startPathDrawing()},t.prototype.finishPathDrawing=function(){this.pathDrawingDelegate.removeTemporaryNodesAndEdges(),this.pathDrawingDelegate.finishPathDrawing()},t.prototype.startNodeEditing=function(){this.pathDrawingDelegate.removeTemporaryNodesAndEdges(),this.pathDrawingDelegate.startNodeEditing()},t.prototype.isDownloadPointCloudMode=function(){return this.ModeService.isDownloadPointCloudMode()},t.prototype.isMeasurementsMode=function(){return this.ModeService.isMeasurementsMode()},t.prototype.isSwitchDownloadPointCloudToMapDisabled=function(){return this.DownloadPointCloudService.isViewModeSwitchDisabled()},t.prototype.isMapViewActive=function(){return this.ViewService.getCurrentMainViewMode()===c.SceneViewMode.Map},t.prototype.isPerspectiveViewActive=function(){return this.ViewService.getCurrentMainViewMode()===c.SceneViewMode.Perspective},t.prototype.areMultipleViewportsActive=function(){return this.ViewService.mainView.areMultipleViewportsActive()},t.prototype.isInFourViewportMode=function(){return this.ViewService.mainView.isInFourViewportMode()},t.prototype.isObfuscatorVisible=function(){return this.ViewService.mainView.areMultipleViewportsActive()&&this.ModeService.isSiteModelEditorMode()&&(this.SiteModelEditorService.isDrawingMode()||this.SiteModelEditorService.isCuttingMode())},t.prototype.getTopViewport=function(){return this.getViewportByName(s.SplitViewportName.TOP_VIEW)},t.prototype.toggleTopViewport=function(){this.toggleViewportByName(s.SplitViewportName.TOP_VIEW)},t.prototype.getSideViewportTwo=function(){return this.getViewportByName(s.SplitViewportName.NORTH_SOUTH_VIEW)},t.prototype.toggleSideViewportTwo=function(){this.toggleViewportByName(s.SplitViewportName.NORTH_SOUTH_VIEW)},t.prototype.getSideViewportOne=function(){return this.getViewportByName(s.SplitViewportName.EAST_WEST_VIEW)},t.prototype.toggleSideViewportOne=function(){this.toggleViewportByName(s.SplitViewportName.EAST_WEST_VIEW)},t.prototype.getViewportByName=function(t){return this.ViewService.mainView.getViewportByName(t)},t.prototype.toggleViewportByName=function(t){this.ViewService.mainView.toggleViewportFullscreen(this.getViewportByName(t))},t.prototype.updateDatasetsPointCloudVisibility=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];for(var n=0,i=t;n<i.length;n++){var r=i[n];r.pcColorDefinition_=r.pointCloudVisible?o.ColorUtilities.getColor(r.color):void 0}},t.prototype.zoomToDatasets=function(t,e){if(0!==t.length){for(var n=new r.Vector3,i=new r.Box3,o=0,a=t;o<a.length;o++){var s=a[o];this.AlignmentService.checkDatasetAndSelection(s),n.add(s.getCenter()),i.union(s.getLocalBoundingBox())}n.divideScalar(t.length);var c=new r.Sphere;this.ViewService.mainView.centerOn(n,e?2*i.getBoundingSphere(c).radius:void 0)}},t.prototype.selectedDatasetsChanged=function(){var t=this;(this.ModeService.isDatasetAlignmentMode()||this.ModeService.isSiteModelEditorMode())&&this.DatasetRepository.findAll().then(function(e){return t.updateDatasetsPointCloudVisibility.apply(t,e)}).catch(a.handleWarning)},t}();e.PointCloudViewportController=u;var d=function(){function t(){this.restrict="E",this.templateUrl="PointCloud/PointCloudViewport.html",this.controller=u,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.PointCloudViewportDirective=d,i.module("IVWebApp").directive("pointCloudViewport",d.factory())},function(t,e){var n="PointCloud/PointCloudViewport.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div ng-if="vm.isDatasetAlignmentOrSiteModelEditorMode()">\n\t<div class="viewport-label viewport-label-top-left clickable"\n\t ng-if="vm.getTopViewport().active"\n\t ng-click="vm.toggleTopViewport()"\n\t ng-style="{\'background-color\': vm.getTopViewport().info.getColorCSS()}">\n\t\t<span class="fa fa-camera"></span> {{vm.getTopViewport().info.caption | translate}}\n\t</div>\n\t<div class="viewport-label viewport-label-bottom-left clickable"\n\t ng-if="vm.getSideViewportTwo().active"\n\t ng-click="vm.toggleSideViewportTwo()"\n\t ng-style="{\'background-color\': vm.getSideViewportTwo().info.getColorCSS()}">\n\t\t<span class="fa fa-camera"></span> {{vm.getSideViewportTwo().info.caption | translate}}\n\t</div>\n\t<div class="viewport-label viewport-label-bottom-right clickable"\n\t ng-if="vm.getSideViewportOne().active"\n\t ng-click="vm.toggleSideViewportOne()"\n\t ng-style="{\'background-color\': vm.getSideViewportOne().info.getColorCSS()}">\n\t\t<span class="fa fa-camera"></span> {{vm.getSideViewportOne().info.caption | translate}}\n\t</div>\n\n\t<div ng-if="vm.isObfuscatorVisible()">\n\t\t<div class="viewport-obfuscator bottom-viewports-obfuscator"></div>\n\t\t<div class="viewport-obfuscator top-right-viewport-obfuscator"></div>\n\t</div>\n\n\t<div ng-if="vm.areMultipleViewportsActive() && vm.isInFourViewportMode()">\n\t\t<div class="viewport-separator horizontal-viewport-separator">\n\t\t</div>\n\t\t<div class="viewport-separator vertical-viewport-separator">\n\t\t</div>\n\n\t</div>\n</div>\n<div ng-if="vm.isMeasurementsMode()">\n\t<viewport-resizer-component>\n\n\t</viewport-resizer-component>\n</div>\n\n<div class="view-switcher__holder" ng-if="vm.isNavGraphEditorMode()">\n\t<div class="btn-group padding-left" ng-if="vm.isPathDrawingPossible()">\n\t\t<save-button class="view-switcher__btn"\n\t\t ng-click="vm.finishPathDrawing()"\n\t\t title="{{\'Complete the Path\' | translate}}">\n\t\t\t<span translate>Done</span>\n\t\t</save-button>\n\t</div>\n\n\t<div class="btn-group padding-left">\n\t\t<default-button\n\t\t\t\tclass="view-switcher__btn"\n\t\t\t\tng-class="{\'active\': !vm.isPathDrawingModeActive()}"\n\t\t\t\tng-click="vm.startNodeEditing()"\n\t\t\t\ttitle="{{\'Node Editing Tool\' | translate}}">\n\t\t\t<i class="fa fa-mouse-pointer mode-icon"></i>\n\t\t</default-button>\n\n\t\t<default-button\n\t\t\t\tclass="view-switcher__btn"\n\t\t\t\tng-class="{\'active\': vm.isPathDrawingModeActive()}"\n\t\t\t\tng-click="vm.startPathDrawing()"\n\t\t\t\tng-disabled="vm.isPerspectiveViewActive()"\n\t\t\t\ttitle="{{\'Path Drawing Tool\' | translate}}">\n\t\t\t\x3c!------TODO:Remove after upgrade to font awesome v5 (IV-2643)----\x3e\n\t\t\t<div class="pen-icon">\n\t\t\t<svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="pen-nib"\n\t\t\t class="mode-icon svg-inline--fa fa-pen-nib fa-w-16" role="img"\n\t\t\t xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">\n\t\t\t\t<path fill="currentColor"\n\t\t\t\t d="M136.6 138.79a64.003 64.003 0 0 0-43.31 41.35L0 460l14.69 14.69L164.8 324.58c-2.99-6.26-4.8-13.18-4.8-20.58 0-26.51 21.49-48 48-48s48 21.49 48 48-21.49 48-48 48c-7.4 0-14.32-1.81-20.58-4.8L37.31 497.31 52 512l279.86-93.29a64.003 64.003 0 0 0 41.35-43.31L416 224 288 96l-151.4 42.79zm361.34-64.62l-60.11-60.11c-18.75-18.75-49.16-18.75-67.91 0l-56.55 56.55 128.02 128.02 56.55-56.55c18.75-18.75 18.75-49.15 0-67.91z">\n\t\t\t\t</path>\n\t\t\t</svg>\n\t\t\t</div>\n\t\t</default-button>\n\t</div>\n\t<view-mode-toggle\n\t\tswitch-to-map="vm.switchToMapView"\n\t\tswitch-to-perspective="vm.switchToPerspectiveView"\n\t\tswitch-to-perspective-disabled="vm.isPathDrawingModeActive()">\n\t</view-mode-toggle>\n</div>\n\n<div class="view-switcher__holder" ng-if="vm.isDownloadPointCloudMode()">\n\t<view-mode-toggle\n\t\t\tswitch-to-map="vm.switchDownloadPointCloudToMap"\n\t\t\tswitch-to-perspective="vm.switchDownloadPointCloudToPerspective"\n\t\t\tswitch-to-map-disabled="vm.isSwitchDownloadPointCloudToMapDisabled()">\n\t</view-mode-toggle>\n</div>\n\n<div class="view-switcher__holder" ng-if="vm.isMeasurementsMode()">\n\t<magnification-toggle>\n\t</magnification-toggle>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1544);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"point-cloud-viewport .viewport-label{height:25px;position:absolute;opacity:.6;padding:2px 5px}point-cloud-viewport .viewport-label-top-left{top:18px;left:65px}point-cloud-viewport .viewport-label-bottom-left{bottom:10px;left:10px}point-cloud-viewport .viewport-label-bottom-right{bottom:10px;right:10px}point-cloud-viewport .viewport-separator{background-color:#a9a9a9;position:absolute}point-cloud-viewport .horizontal-viewport-separator{top:50%;width:100%;height:3px}point-cloud-viewport .vertical-viewport-separator{left:calc(50% - 3px);width:3px;height:100%}point-cloud-viewport .viewport-obfuscator{background-color:rgba(0,0,0,.5);position:absolute}point-cloud-viewport .bottom-viewports-obfuscator{top:50%;width:100%;height:50%}point-cloud-viewport .top-right-viewport-obfuscator{left:calc(50% - 1px);width:50%;height:50%}point-cloud-viewport .view-switcher__holder{position:absolute;top:15px;right:10px}point-cloud-viewport .view-switcher__btn{border-color:#adadad}point-cloud-viewport .view-switcher__btn:active,point-cloud-viewport .view-switcher__btn:focus{background-color:#fff}point-cloud-viewport .warning-button{position:absolute;bottom:24px;right:24px}point-cloud-viewport .mode-icon{width:20px;height:20px}point-cloud-viewport .pen-icon{transform:rotate(90deg);display:flex}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(105);n(1546);var o=function(){function t(t){this.ViewService=t}return t.$inject=["ViewService"],t.prototype.isSwitchToMapDisabled=function(){return void 0!==this.switchToMapDisabled&&this.switchToMapDisabled},t.prototype.isSwitchToPerspectiveDisabled=function(){return void 0!==this.switchToPerspectiveDisabled&&this.switchToPerspectiveDisabled},t.prototype.isMapViewActive=function(){return this.ViewService.mainView.viewMode===r.SceneViewMode.Map},t.prototype.isPerspectiveViewActive=function(){return this.ViewService.mainView.viewMode===r.SceneViewMode.Perspective},t}();e.ViewModeToggleController=o;var a=function(){function t(){this.restrict="E",this.templateUrl="PointCloud/ViewModeToggle/ViewModeToggle.html",this.controller=o,this.controllerAs="vm",this.scope=!0,this.bindToController={switchToMap:"<",switchToPerspective:"<",switchToMapDisabled:"<?",switchToPerspectiveDisabled:"<?"}}return t.factory=function(){return function(){return new t}},t}();e.ViewModeToggleDirective=a,i.module("IVWebApp").directive("viewModeToggle",a.factory())},function(t,e){var n="PointCloud/ViewModeToggle/ViewModeToggle.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="btn-group padding-left">\n\t<default-button\n\t\t\tclass="view-switcher__btn"\n\t\t\tng-class="{\'active\': vm.isMapViewActive()}"\n\t\t\tng-click="vm.switchToMap()"\n\t\t\tng-disabled="vm.isSwitchToMapDisabled()"\n\t\t\ttitle="{{\'Switch to 2D View\' | translate}}">\n\t\t<span translate>2D</span>\n\t</default-button>\n\t<default-button\n\t\t\tclass="view-switcher__btn"\n\t\t\tng-class="{\'active\': vm.isPerspectiveViewActive()}"\n\t\t\tng-click="vm.switchToPerspective()"\n\t\t\tng-disabled="vm.isSwitchToPerspectiveDisabled()"\n\t\t\ttitle="{{\'Switch to 3D View\' | translate}}">\n\t\t<span translate>3D</span>\n\t</default-button>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1548),n(1549),n(1551),n(1555),n(431),n(430),n(182);var r=n(68),o=n(4),a=n(105),s=n(8),c=function(){function t(t,e,n,i,r,o,a,s){var c=this;this.ViewService=t,this.NavGraphService=e,this.NavGraphEditingService=n,this.ToolboxMenuService=i,this.TransformService=r,this.$scope=o,this.hotkeys=a,this.gettext=s,this.DONE_BUTTON=this.gettext("Done",void 0,"The DONE button"),this.ESC_KEY=this.gettext("ESC",void 0,"The ESC keyboard key"),this.bindHotkeys(),this.NavGraphEditingService.navGraphEditorOpened.connect(function(){return c.bindHotkeys()}),this.NavGraphEditingService.navGraphEditorClosed.connect(function(){return c.unbindHotkeys()})}return t.$inject=["ViewService","NavGraphService","NavGraphEditingService","ToolboxMenuService","TransformService","$scope","hotkeys","gettext"],Object.defineProperty(t.prototype,"bundles",{get:function(){return this.NavGraphService.bundles},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"currentBundleId",{get:function(){return this.NavGraphService.currentBundleId},set:function(t){this.NavGraphService.currentBundleId=t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"straightenXNodes",{get:function(){return this.NavGraphEditingService.straightenXNodes},set:function(t){this.NavGraphEditingService.straightenXNodes=t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"error",{get:function(){return this.NavGraphEditingService.error},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"modalDeferred",{get:function(){return this.NavGraphEditingService.modalDeferred},enumerable:!0,configurable:!0}),t.prototype.bindHotkeys=function(){var t=this,e=this.NavGraphEditingService.navGraphPathDrawingDelegate;this.hotkeys.bindTo(this.$scope).add({combo:["G","g"],description:this.gettext("Create/delete edge between selected nodes"),callback:function(){t.NavGraphEditingService.toggleEdge()}}).add({combo:["backspace","del"],description:this.gettext("Delete selected node"),callback:function(){e.isPathDrawingPossible()?(e.removeTemporaryNodesAndEdges(),e.undoLastPathDrawOperation()):t.NavGraphEditingService.deleteNode(r.NavGraphEditingConstantsSelectedNode.CURRENT)}}).add({combo:"esc",description:this.gettext("Finish current path"),callback:function(){e.isPathDrawingPossible()&&(e.removeTemporaryNodesAndEdges(),e.finishPathDrawing())}}).add({combo:["T","t"],description:this.gettext("Toggle between path drawing mode and node editing mode"),callback:function(){t.ViewService.getCurrentMainViewMode()!==a.SceneViewMode.Perspective&&(t.NavGraphEditingService.navGraphEditingMode===r.NavGraphEditingConstantsModes.NODE_EDITING?e.startPathDrawing():(e.removeTemporaryNodesAndEdges(),e.startNodeEditing()))}}).add({combo:["M","m"],description:this.gettext("Switch view modes"),callback:function(){if(t.NavGraphEditingService.navGraphEditingMode===r.NavGraphEditingConstantsModes.NODE_EDITING){var e=t.ViewService.getCurrentMainViewMode()===a.SceneViewMode.Map;t.ViewService.mainView.getCursorLayer().setVisibility(e),t.ViewService.showSecondaryView=e,t.ViewService.mainView.switchViewMode(e?a.SceneViewMode.Perspective:a.SceneViewMode.Map).catch(s.handleWarning)}}})},t.prototype.unbindHotkeys=function(){this.hotkeys.del(["G","g","backspace","del","esc","t","T","m","M"])},t.prototype.openEdgeAttributeEditor=function(){this.openAttributeEditor(!1,r.NavGraphEditingConstantsSelectedNode.CURRENT,r.NavGraphEditingConstantsSelectedNode.PREVIOUS)},t.prototype.openCurrentNodeAttributeEditor=function(){this.openAttributeEditor(!0,r.NavGraphEditingConstantsSelectedNode.CURRENT)},t.prototype.openAttributeEditor=function(t,e,n){this.NavGraphEditingService.initAttributeEditor(t,e,n),i.element(document.querySelector("#editAttributes")).modal("show")},t.prototype.isEdgeExisting=function(){return this.NavGraphEditingService.doesEdgeExist()===r.NavGraphEditingConstantsEdgeExists.YES},t.prototype.isEdgeNotExisting=function(){return this.NavGraphEditingService.doesEdgeExist()===r.NavGraphEditingConstantsEdgeExists.NO},t.prototype.deleteCurrentNode=function(){this.NavGraphEditingService.deleteNode(r.NavGraphEditingConstantsSelectedNode.CURRENT)},t.prototype.createEdge=function(){this.NavGraphEditingService.createEdge()},t.prototype.deleteEdge=function(){this.NavGraphEditingService.deleteEdge()},Object.defineProperty(t.prototype,"currentNodeZ",{get:function(){var t=this.NavGraphEditingService.selectedNodes[r.NavGraphEditingConstantsSelectedNode.CURRENT].mesh.position.z;return this.TransformService.localToGlobal.transform(new o.Vector3(0,0,t)).z},set:function(t){this.NavGraphEditingService.setSelectedNodeZ(r.NavGraphEditingConstantsSelectedNode.CURRENT,this.TransformService.globalToLocal.transform(new o.Vector3(0,0,t)).z)},enumerable:!0,configurable:!0}),t.prototype.addMultipleEdges=function(){this.NavGraphEditingService.addMultipleEdges()},t.prototype.straightenNodes=function(){this.NavGraphEditingService.straightenNodes()},t.prototype.isHistoryEmpty=function(){return 0===this.getHistoryOperations().length},t.prototype.getHistoryOperations=function(){return this.NavGraphEditingService.editingHistory.history},t.prototype.selectEditingOperationResource=function(t){this.NavGraphEditingService.selectEditingOperationResource(t)},t.prototype.undo=function(){this.NavGraphEditingService.undo()},t.prototype.saveAndStopEditingNavGraph=function(){return this.NavGraphEditingService.saveAndStopEditingNavGraph()},t.prototype.isSavingInProgress=function(){return this.NavGraphEditingService.isSavingInProgress()},t.prototype.discardChanges=function(){return this.NavGraphEditingService.discardChanges()},t.prototype.saveChanges=function(){return this.saveAndStopEditingNavGraph()},t.prototype.isAnyBundleVisible=function(){return this.NavGraphService.isAnyBundle()},t.prototype.isNavGraphPresent=function(){return this.NavGraphService.isNavGraphPresent()},t.prototype.isNavGraphDataUnavailable=function(){return this.NavGraphService.isAnyBundle()&&!this.isNavGraphPresent()&&this.isHistoryEmpty()},t.prototype.isNavGraphEditable=function(){return this.NavGraphService.getCurrentBundle()&&this.NavGraphService.getCurrentBundle().canWrite},t.prototype.isNavGraphNotEditable=function(){var t=this.NavGraphService.getCurrentBundle();return this.NavGraphService.isAnyBundle()&&t&&!t.canWrite},t.prototype.isNavGraphEditingEnabled=function(){var t=this.NavGraphService.getCurrentBundle();return t&&t.canWrite&&(this.NavGraphService.isNavGraphPresent()||!this.isHistoryEmpty())},t.prototype.hasSelectedNodesToEdit=function(){return this.NavGraphEditingService.selectedNodes.length>0},t.prototype.hasMaxOneSelectedNodeToEdit=function(){return this.NavGraphEditingService.selectedNodes.length<=1},t.prototype.isPathDrawingMode=function(){return this.NavGraphEditingService.navGraphEditingMode===r.NavGraphEditingConstantsModes.PATH_DRAWING},t.prototype.isNodeEditingMode=function(){return this.NavGraphEditingService.navGraphEditingMode===r.NavGraphEditingConstantsModes.NODE_EDITING},t.prototype.isPathDrawingPossible=function(){return this.NavGraphEditingService.isPathDrawingPossible()},t.prototype.is2DMapView=function(){return this.ViewService.getCurrentMainViewMode()===a.SceneViewMode.Map},t}();e.NavGraphEditorController=c;var l=function(){function t(){this.restrict="E",this.templateUrl="NavGraphUI/NavGraphEditor.html",this.controller=c,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.NavGraphEditorDirective=l,i.module("IVWebApp").directive("navGraphEditor",l.factory())},function(t,e){var n="NavGraphUI/NavGraphEditor.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div id="nav-graph-toolbox">\n\n\t<modal>\n\t\t<nav-graph-attributes-editor></nav-graph-attributes-editor>\n\t</modal>\n\n\t<div class="panel panel-default panel-sticky-header no-border no-shadow">\n\n\t\t<div class="panel-heading" ng-if="vm.isNavGraphEditable()">\n\t\t\t<div class="btn-toolbar float-right">\n\t\t\t\t<save-button ng-click="vm.saveAndStopEditingNavGraph()"\n\t\t\t\t in-progress="vm.isSavingInProgress()"\n\t\t\t\t ng-disabled="vm.isPathDrawingPossible()"\n\t\t\t\t title="{{\'Save all operations\' | translate}}">\n\t\t\t\t</save-button>\n\t\t\t</div>\n\t\t</div>\n\n\t\t<div class="panel-body">\n\t\t\t<label translate>\n\t\t\t\tDataset bundle\n\t\t\t</label>\n\n\t\t\t\x3c!--No bundle visible to the user--\x3e\n\t\t\t<div ng-if="!vm.isAnyBundleVisible()" translate>\n\t\t\t\tNo dataset bundle available\n\t\t\t</div>\n\n\t\t\t\x3c!-- Which bundle do we want to add the changes in this session to --\x3e\n\t\t\t<div class="form-group" ng-if="vm.isAnyBundleVisible()">\n\t\t\t\t<select ng-options="bundle.id as bundle.displayName for bundle in vm.bundles"\n\t\t\t\t ng-model="vm.currentBundleId"></select>\n\t\t\t</div>\n\n\t\t\t\x3c!-- No editing permission for navgraph --\x3e\n\t\t\t<div ng-if="vm.isNavGraphNotEditable()" translate>\n\t\t\t\tNo permission to edit this navigation graph\n\t\t\t</div>\n\n\t\t\t\x3c!-- Navgraph data unavailable --\x3e\n\t\t\t<div class="row" ng-if="vm.isNavGraphDataUnavailable()">\n\t\t\t\t<hr>\n\t\t\t\t<div class="col-xs-12" translate>\n\t\t\t\t\tNo navigation graph\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t\x3c!--Navgraph editing--\x3e\n\t\t\t<div class="form" ng-if="vm.isNavGraphEditingEnabled()">\n\t\t\t\t<hr>\n\t\t\t\t\t<div class="collapsed"\n\t\t\t\t\t data-toggle="collapse"\n\t\t\t\t\t data-target="#pathDrawToolHelp"\n\t\t\t\t\t ng-if="vm.isPathDrawingMode()">\n\t\t\t\t\t\t<i class="collapse-expand-chevron"></i>\n\t\t\t\t\t\t<strong translate>\n\t\t\t\t\t\t\tPath Tool Help\n\t\t\t\t\t\t</strong>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div id="pathDrawToolHelp" class="panel-collapse collapse in" ng-if="vm.isPathDrawingMode()">\n\t\t\t\t\t\t<div class="panel-body">\n\t\t\t\t\t\t\t<p translate translate-context="path draw tool help">\n\t\t\t\t\t\t\t\tUse this tool to draw a multi-node path, or to connect buildings and outside POIs.</p>\n\n\t\t\t\t\t\t\t<p translate translate-context="path draw tool help">\n\t\t\t\t\t\t\t\tStart a path by selecting a node, then click to create new nodes connected by straight edges. Press backspace to delete the last node.</p>\n\n\t\t\t\t\t\t\t<p translate translate-context="path draw tool help" translate-params-done="vm.DONE_BUTTON | translate" translate-params-esc="vm.ESC_KEY | translate">\n\t\t\t\t\t\t\t\tFinish the path by connecting it to an existing node, clicking "{{done}}", or pressing {{esc}}.</p>\n\n\t\t\t\t\t\t\t<p translate translate-context="path draw tool help">\n\t\t\t\t\t\t\t\tTo edit the path, switch to the Node Editing tool.</p>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t<div ng-if="vm.hasSelectedNodesToEdit() && vm.isNodeEditingMode()">\n\n\t\t\t\t\t<label translate>\n\t\t\t\t\t\tEdit nodes and edges\n\t\t\t\t\t</label>\n\n\t\t\t\t\t\x3c!-- Buttons for deleting, creating edges between nodes and deleting nodes --\x3e\n\t\t\t\t\t<div class="form-group btn-toolbar">\n\t\t\t\t\t\t<div class="btn-group btn-group-margin-bottom">\n\n\t\t\t\t\t\t\t\x3c!-- Button for deleting the recent selected node attributes --\x3e\n\t\t\t\t\t\t\t<button type="button" class="btn btn-default"\n\t\t\t\t\t\t\t ng-click="vm.deleteCurrentNode()">\n\t\t\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\t\t\tDelete\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t<i class="fa fa-stop icon-blue"></i>\n\t\t\t\t\t\t\t</button>\n\n\t\t\t\t\t\t\t\x3c!-- Button for editing the recent selected node attributes --\x3e\n\t\t\t\t\t\t\t<button type="button"\n\t\t\t\t\t\t\t class="btn btn-default"\n\t\t\t\t\t\t\t ng-click="vm.openCurrentNodeAttributeEditor()">\n\t\t\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\t\t\tEdit\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t<i class="fa fa-stop icon-blue"></i>\n\t\t\t\t\t\t\t</button>\n\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class="btn-group btn-group-margin-bottom">\n\n\t\t\t\t\t\t\t\x3c!-- Create edge --\x3e\n\t\t\t\t\t\t\t<button ng-if="vm.isEdgeNotExisting()"\n\t\t\t\t\t\t\t type="button" class="btn btn-default"\n\t\t\t\t\t\t\t ng-click="vm.createEdge()"\n\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\tCreate edge\n\t\t\t\t\t\t\t</button>\n\n\t\t\t\t\t\t\t\x3c!-- Edit edge --\x3e\n\t\t\t\t\t\t\t<button ng-if="vm.isEdgeExisting()"\n\t\t\t\t\t\t\t type="button" class="btn btn-default"\n\t\t\t\t\t\t\t ng-click="vm.deleteEdge()" translate>\n\t\t\t\t\t\t\t\tDelete edge\n\t\t\t\t\t\t\t</button>\n\n\t\t\t\t\t\t\t\x3c!-- Delete edge --\x3e\n\t\t\t\t\t\t\t<button ng-if="vm.isEdgeExisting()"\n\t\t\t\t\t\t\t type="button" class="btn btn-default"\n\t\t\t\t\t\t\t ng-click="vm.openEdgeAttributeEditor()"\n\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\tEdit edge\n\t\t\t\t\t\t\t</button>\n\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<label translate>\n\t\t\t\t\t\tChange node z-level\n\t\t\t\t\t</label>\n\t\t\t\t\t\x3c!-- Buttons for changing the altitude of nodes, note: we can only control the x\n\t\t\t\t\t and y of a node by dragging --\x3e\n\t\t\t\t\t<div class="z-axis-controls__holder">\n\n\t\t\t\t\t\t\x3c!-- the recent selected node --\x3e\n\t\t\t\t\t\t<unit-aware-input\n\t\t\t\t\t\t\t\tclass="z-axis-controls__el"\n\t\t\t\t\t\t\t\tng-model="vm.currentNodeZ"\n\t\t\t\t\t\t\t\tfraction-size="2">\n\t\t\t\t\t\t</unit-aware-input>\n\n\t\t\t\t\t</div>\n\t\t\t\t\t<hr>\n\t\t\t\t</div>\n\n\t\t\t\t<div>\n\t\t\t\t\t\x3c!-- Advanced features --\x3e\n\t\t\t\t\t<div class="collapsed"\n\t\t\t\t\t data-toggle="collapse"\n\t\t\t\t\t data-target="#navGraphEditorAdvance"\n\t\t\t\t\t\t ng-if="vm.isNodeEditingMode()">\n\t\t\t\t\t\t<i class="collapse-expand-chevron"></i>\n\t\t\t\t\t\t<strong translate>\n\t\t\t\t\t\t\tAdvanced\n\t\t\t\t\t\t</strong>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div id="navGraphEditorAdvance" class="panel-collapse collapse" ng-if="vm.isNodeEditingMode()">\n\t\t\t\t\t\t<div class="panel-body">\n\t\t\t\t\t\t\t<div class="row"\n\t\t\t\t\t\t\t ng-class="{\'form-group\': !vm.isHistoryEmpty() || vm.error}">\n\t\t\t\t\t\t\t\t<div class="row input-group">\n\t\t\t\t\t\t\t\t\t<div class="col-md-7">\n\t\t\t\t\t\t\t\t\t\t<small translate>\n\t\t\t\t\t\t\t\t\t\t\tFor use with the Navigation SDK, the graph should have edges of approximately 1 meter length.\n\t\t\t\t\t\t\t\t\t\t</small>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t<div class="col-md-4">\n\t\t\t\t\t\t\t\t\t\t<button class="btn btn-default" type="button"\n\t\t\t\t\t\t\t\t\t\t ng-click="vm.addMultipleEdges()"\n\t\t\t\t\t\t\t\t\t\t title="{{\'Select two nodes to add approx. 1 meter edges between them.\' | translate}}"\n\t\t\t\t\t\t\t\t\t\t ng-disabled="vm.hasMaxOneSelectedNodeToEdit()">\n\t\t\t\t\t\t\t\t\t\t<span translate translate-context="title">\n\t\t\t\t\t\t\t\t\t\t\tAuto-Split Edge\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div class="row input-group mt-20">\n\t\t\t\t\t\t\t\t\t<div class="col-md-7">\n\t\t\t\t\t\t\t\t\t\t<small translate>\n\t\t\t\t\t\t\t\t\t\t\tStraighten the last n edges.\n\t\t\t\t\t\t\t\t\t\t</small>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t<div class="col-md-4">\n\t\t\t\t\t\t\t\t\t\t<div class="row">\n\t\t\t\t\t\t\t\t\t\t\t<div class="col-md-4">\n\n\t\t\t\t\t\t\t\t\t\t\t\t<button class="btn btn-default" type="button"\n\t\t\t\t\t\t\t\t\t\t\t\t ng-click="vm.straightenNodes()"\n\t\t\t\t\t\t\t\t\t\t\t\t title="{{\'Straighten the last n edges\' | translate}}"\n\t\t\t\t\t\t\t\t\t\t\t\t ng-disabled="vm.hasMaxOneSelectedNodeToEdit()">\n\t\t\t\t\t\t\t\t\t\t\t\t\t----\n\t\t\t\t\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t<div class="col-md-8">\n\t\t\t\t\t\t\t\t\t\t\t\t<input type="number"\n\t\t\t\t\t\t\t\t\t\t\t\t class="form-control input-advanced"\n\t\t\t\t\t\t\t\t\t\t\t\t ng-model="vm.straightenXNodes"\n\t\t\t\t\t\t\t\t\t\t\t\t ng-disabled="vm.hasMaxOneSelectedNodeToEdit()">\n\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t\x3c!--Errors--\x3e\n\t\t\t\t\t<div ng-show="vm.error"\n\t\t\t\t\t ng-class="{\'form-group\': !vm.isHistoryEmpty()}">\n\t\t\t\t\t\t<span class="text-danger">\n\t\t\t\t\t\t\t{{vm.error.text}}: {{vm.error.statusText}} ({{vm.error.status}})\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<div ng-show="!!vm.error.details">\n\t\t\t\t\t\t\t{{vm.error.details}}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t\x3c!-- History --\x3e\n\t\t\t\t\t<div ng-hide="vm.isHistoryEmpty()">\n\t\t\t\t\t\t<hr>\n\t\t\t\t\t\t<label translate>\n\t\t\t\t\t\t\tHistory\n\t\t\t\t\t\t</label>\n\n\t\t\t\t\t\t<undo-button ng-click="vm.undo()"\n\t\t\t\t\t\t ng-disabled="vm.isHistoryEmpty() || vm.isSavingInProgress() || vm.isPathDrawingPossible()"\n\t\t\t\t\t\t title="{{\'Undo last operation\' | translate}}"></undo-button>\n\n\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\x3c!-- Show the nodes in a reverse order, latest operation on top by\n\t\t\t\t\t\t\t reversing the list --\x3e\n\t\t\t\t\t\t\t<div class="list-group-item navgraph-history-item clickable long-title"\n\t\t\t\t\t\t\t ng-repeat="editingOperation in vm.getHistoryOperations() | reverse"\n\t\t\t\t\t\t\t ng-click="vm.selectEditingOperationResource(editingOperation)"\n\t\t\t\t\t\t\t title="{{editingOperation.getTitle()}}">\n\t\t\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t\t\t\x3c!-- note: already translated in controller --\x3e\n\t\t\t\t\t\t\t\t\t{{editingOperation.getDescription()}}\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t\x3c!--Appearance--\x3e\n\t\t\t<div ng-if="vm.isNavGraphPresent() && !vm.is2DMapView()">\n\t\t\t\t<hr>\n\t\t\t\t<nav-graph-editor-appearance></nav-graph-editor-appearance>\n\t\t\t</div>\n\t\t\t<hr>\n\t\t</div>\n\t</div>\n\n\t<save-discard-confirmation\n\t\t\tmodal-id="confirmUnsavedNavGraph"\n\t\t\ton-discard-callback="vm.discardChanges()"\n\t\t\ton-save-callback="vm.saveChanges()"\n\t\t\tdeferred-promise="vm.modalDeferred"\n\t\t\tsubject="{{\'Navigation Graph\' | translate:\'title\'}}">\n\t</save-discard-confirmation>\n\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1550);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"nav-graph-editor .btn-group-margin-bottom{margin-bottom:4px}nav-graph-editor .input-advanced{max-height:32px}nav-graph-editor .icon-blue{color:#00f}nav-graph-editor .icon-violet{color:#8080ff}nav-graph-editor .z-axis-controls__holder{display:flex;justify-content:space-between;margin-bottom:15px}nav-graph-editor .z-axis-controls__el{flex:0 1 38%}nav-graph-editor .advanced-controls__holder{display:flex;margin-bottom:5px}nav-graph-editor .advanced-controls__el{flex:0 1 38%;margin-right:1em}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1552),n(1553);var r=n(68),o=n(20),a=function(){function t(t,e){this.NavGraphService=t,this.NavGraphEditingService=e}return t.$inject=["NavGraphService","NavGraphEditingService"],Object.defineProperty(t.prototype,"selectedKey",{get:function(){return this.NavGraphEditingService.selectedElement.selectedKey},set:function(t){this.NavGraphEditingService.selectedElement.selectedKey=t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"selectedValue",{get:function(){return this.NavGraphEditingService.selectedElement.selectedValue},set:function(t){this.NavGraphEditingService.selectedElement.selectedValue=t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"attributesMap",{get:function(){return this.NavGraphEditingService.selectedElement.attributesMap},enumerable:!0,configurable:!0}),t.prototype.isEditingNode=function(){return this.NavGraphEditingService.selectedElement.type===r.NavGraphEditingConstantsType.NODE},t.prototype.isEditingEdge=function(){return this.NavGraphEditingService.selectedElement.type===r.NavGraphEditingConstantsType.EDGE},t.prototype.addAttribute=function(){o.isBlank(this.selectedKey)||o.isBlank(this.selectedValue)||(this.NavGraphEditingService.selectedElement.attributesMap[this.selectedKey]=this.selectedValue,this.clearAttributeFields())},t.prototype.deleteAttribute=function(t){delete this.NavGraphEditingService.selectedElement.attributesMap[t]},t.prototype.clearAttributeFields=function(){this.selectedKey=void 0,this.selectedValue=void 0},t.prototype.getAttributesCount=function(){return Object.keys(this.NavGraphEditingService.selectedElement.attributesMap).length},t.prototype.exitAttributesEditor=function(){this.NavGraphEditingService.clearSelectedElement()},t.prototype.saveAndExitAttributesEditor=function(){this.NavGraphEditingService.saveAttributes(),this.exitAttributesEditor()},t}();e.NavGraphAttributesEditorController=a;var s=function(){function t(){this.restrict="E",this.templateUrl="NavGraphUI/NavGraphAttributesEditor.html",this.controller=a,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.NavGraphAttributesEditorDirective=s,i.module("IVWebApp").directive("navGraphAttributesEditor",s.factory())},function(t,e){var n="NavGraphUI/NavGraphAttributesEditor.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="modal fade" id="editAttributes"\n tabindex="-1" role="dialog" data-backdrop="static"\n aria-labelledby="editAttributes" aria-hidden="false">\n\n\t<div id="attributeEditor" class="modal-dialog">\n\t\t<div class="modal-content">\n\n\t\t\t<div class="modal-header">\n\t\t\t\t<h4 id="editAttributesLabel">\n\t\t\t\t\t<span ng-if="vm.isEditingNode()" translate>\n\t\t\t\t\t\tEdit node attributes\n\t\t\t\t\t</span>\n\t\t\t\t\t<span ng-if="vm.isEditingEdge()" translate>\n\t\t\t\t\t\tEdit edge attributes\n\t\t\t\t\t</span>\n\t\t\t\t</h4>\n\t\t\t</div>\n\n\t\t\t<div class="modal-body">\n\t\t\t\t<form id="attributeModalForm" class="form-horizontal" role="form">\n\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t<label class="col-sm-3 control-label" translate\n\t\t\t\t\t\t translate-context="key as in key-value pair">\n\t\t\t\t\t\t\tKey\n\t\t\t\t\t\t</label>\n\t\t\t\t\t\t<div class="col-sm-9">\n\t\t\t\t\t\t\t<input type="text" class="form-control"\n\t\t\t\t\t\t\t ng-model="vm.selectedKey">\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t<label class="col-sm-3 control-label" translate>\n\t\t\t\t\t\t\tValue\n\t\t\t\t\t\t</label>\n\t\t\t\t\t\t<div class="col-sm-9">\n\t\t\t\t\t\t\t<input type="text" class="form-control"\n\t\t\t\t\t\t\t ng-model="vm.selectedValue">\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t<div class="col-sm-12">\n\t\t\t\t\t\t\t<button type="button" class="btn btn-default"\n\t\t\t\t\t\t\t ng-click="vm.clearAttributeFields()"\n\t\t\t\t\t\t\t translate translate-context="verb">\n\t\t\t\t\t\t\t\tClear\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t<button type="button" class="btn btn-primary"\n\t\t\t\t\t\t\t ng-click="vm.addAttribute()"\n\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\tAdd\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</form>\n\n\t\t\t\t<table class="table"\n\t\t\t\t ng-if="vm.getAttributesCount()">\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<td class="bold-title" translate\n\t\t\t\t\t\t translate-context="key as in key-value pair">\n\t\t\t\t\t\t\tKey\n\t\t\t\t\t\t</td>\n\t\t\t\t\t\t<td class="bold-title" translate>\n\t\t\t\t\t\t\tValue\n\t\t\t\t\t\t</td>\n\t\t\t\t\t\t<td class="bold-title" translate>\n\t\t\t\t\t\t\tDelete\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t<tr ng-repeat="(key, value) in vm.attributesMap">\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t{{key}}\n\t\t\t\t\t\t</td>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t{{value}}\n\t\t\t\t\t\t</td>\n\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t<span class="glyphicon glyphicon-trash clickable"\n\t\t\t\t\t\t\t ng-click="vm.deleteAttribute(key)"></span>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t</table>\n\n\t\t\t</div>\n\n\t\t\t<div class="modal-footer">\n\t\t\t\t<cancel-button data-dismiss="modal"\n\t\t\t\t ng-click="vm.exitAttributesEditor()"></cancel-button>\n\t\t\t\t<ok-button data-dismiss="modal"\n\t\t\t\t ng-click="vm.saveAndExitAttributesEditor()"></ok-button>\n\t\t\t</div>\n\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1554);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"nav-graph-attributes-editor .col-sm-12{text-align:right}nav-graph-attributes-editor table{text-align:center;margin-bottom:0}nav-graph-attributes-editor table tr{border-bottom:1px solid #e6e6e6}nav-graph-attributes-editor table tr td{width:33%}nav-graph-attributes-editor table tr .bold-title{font-weight:700}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1556);var r=n(7),o=function(){function t(t){this.NavGraphService=t}return t.$inject=["NavGraphService"],Object.defineProperty(t.prototype,"thresh",{get:function(){return this.NavGraphService.thresh},set:function(t){var e=r.clone(this.NavGraphService.thresh);this.NavGraphService.thresh=t,t!==e&&this.NavGraphService.constantsChanged.emit()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"threshZ",{get:function(){return this.NavGraphService.threshZ},set:function(t){var e=r.clone(this.NavGraphService.threshZ);this.NavGraphService.threshZ=t,t!==e&&this.NavGraphService.constantsChanged.emit()},enumerable:!0,configurable:!0}),t}();e.NavGraphEditorAppearanceController=o;var a=function(){function t(){this.restrict="E",this.templateUrl="NavGraphUI/NavGraphEditorAppearance.html",this.controller=o,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.NavGraphEditorAppearanceDirective=a,i.module("IVWebApp").directive("navGraphEditorAppearance",a.factory())},function(t,e){var n="NavGraphUI/NavGraphEditorAppearance.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="collapsed"\n data-toggle="collapse"\n data-target="#nav-graph-editor-appearance">\n\t<i class="collapse-expand-chevron"></i>\n\t<strong translate translate-context="title">\n\t\tAppearance\n\t</strong>\n</div>\n<div id="nav-graph-editor-appearance" class="panel-collapse collapse">\n\t<div class="panel-body">\n\t\t<div class="row margin-top-small">\n\t\t\t<div class="col-sm-3 align-text" translate>\n\t\t\t\tVisibility radius\n\t\t\t</div>\n\t\t\t<div class="col-sm-6 align-slider">\n\t\t\t\t<div ui-slider\n\t\t\t\t min="5"\n\t\t\t\t max="50"\n\t\t\t\t step="1"\n\t\t\t\t ng-model="vm.thresh"></div>\n\t\t\t</div>\n\t\t\t<div class="col-sm-3 align-textbox">\n\t\t\t\t<input type="text" class="form-control"\n\t\t\t\t ng-model="vm.thresh"/>\n\t\t\t</div>\n\t\t</div>\n\n\t\t<div class="row">\n\t\t\t<div class="col-sm-3 align-text" translate>\n\t\t\t\tVertical visibility\n\t\t\t</div>\n\t\t\t<div class="col-sm-6 align-slider">\n\t\t\t\t<div ui-slider\n\t\t\t\t min="1"\n\t\t\t\t max="20"\n\t\t\t\t step="1"\n\t\t\t\t ng-model="vm.threshZ"></div>\n\t\t\t</div>\n\t\t\t<div class="col-sm-3 align-textbox">\n\t\t\t\t<input type="text" class="form-control"\n\t\t\t\t ng-model="vm.threshZ"/>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";n.r(e),function(t){var e=n(2),i=n(4),r=n(7),o=(n(177),n(202),n(223)),a=n(25),s=n(52),c=n(107),l=n(8);function u(t,e){var n;if("undefined"==typeof Symbol||null==t[Symbol.iterator]){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return d(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?d(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var i=0,r=function(){};return{s:r,n:function(){return i>=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,s=!1;return{s:function(){n=t[Symbol.iterator]()},n:function(){var t=n.next();return a=t.done,t},e:function(t){s=!0,o=t},f:function(){try{a||null==n.return||n.return()}finally{if(s)throw o}}}}function d(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,i=new Array(e);n<e;n++)i[n]=t[n];return i}IndoorViewerWebApp.service("PolygonLayerFactory",["gettextCatalog","ConfigService","VectorMapService","$rootScope","GeoTransformationService","ModeService","PoiTypeService","FloorChangerService","MessageReportingService","IV","PointCloudMenuService","VectorLayerRepository","VectorEntityRepository","ViewService",function(n,d,p,h,f,g,m,v,y,b,w,S,x,M){function E(n,h,b){var w,E=this,C=!1,A=!1,T=[],O=null,_=!1,P=new i.Object3D;P.name="PolygonLayer",P.matrixAutoUpdate=!1;var I={};b=b||{},E.loadEntities=void 0===b.loadEntities||b.loadEntities,E.manualVisibility=void 0!==b.manualVisibility&&b.manualVisibility;var k={},D={},R={materials_solid:{},materials_edge:{}};E.load=function(t){A||C&&!t||(A=!0,Object(c.promiseFinally)(Promise.all([d.initialized,f.initialized,m.initialized,p.initialized]).then(function(){T=x.data,L(),it(),N(),rt()}),function(){return A=!1}).catch(l.handleWarning))},E.refresh=function(){L(),N()};var L=function(){P.children.forEach(function(t){t.remove.apply(t,t.children)}),P.remove.apply(P,P.children)};E.unload=function(){L(),T=[],P.children=[],k={},C=!1};var N=function(){0!==T.length&&(P.children=[],k={},T.forEach(function(t){t.type===o.VectorEntityType.POLYGON?Q(t):t.type===o.VectorEntityType.LINE&&Z(t)}),K(),X(),S.data.forEach(function(t){P.add(H(t)),W(t)}),"Map"===n.name&&E.updateVisibilityBasedOnObserverHeight(),_=!0,C=!0,n.invalidateScene())},j=function(){var t=v.currentFloors;return Object(r.map)(t,function(t){return t.getGlobalZMin()})},V=function(){P.parent||h.add(P),B(),n.invalidateScene()},F=function(t,e){var n=void 0!==t.vectorLayerId?t.vectorLayerId:e;return function(t,e){return e=e||t,void 0===R.materials_solid[e]&&(R.materials_solid[e]=new i.MeshBasicMaterial({color:t,transparent:!0,depthWrite:!1,wireframe:!1})),R.materials_solid[e]}(t.color,n)},U=function(t){var n;if(!((n=Object(e.isNumber)(t)?t:t.id)in k)){var r=new i.Object3D;r.matrixAutoUpdate=!1,r.name=t.name,k[n]={scene_group:r,polygons:[]}}return k[n]};this.updateVisibilityBasedOnObserverHeight=function(){var t=M.mainView.getImage();O=t?[t.globalFloorLocation.z]:void 0,B()};var B=function(){S.data.forEach(function(t){G(t)}),_=!1};function z(t){if(void 0!==t)return f.toLocalHeight(t)}var G=function t(e){var n=z(e.zMin),i=z(e.zMax);if(!E.manualVisibility||(H(e).visible=e.vectorMap.manualVisibility,e.vectorMap.manualVisibility)){var o=!1;if(O&&O.length>0){var a,s=u(O);try{for(s.s();!(a=s.n()).done;){var c=a.value;null!=n&&null!=i&&Object(r.inRange)(c,n,i)&&(o=!0)}}catch(t){s.e(t)}finally{s.f()}}else o=!0;var l,d=!(!v.getCurrentFloorName()||e.vectorMap.name!=v.getCurrentFloorName()&&0!=e.vectorMap.name.indexOf("_")),p=null==e.visible_style_||e.visible_style_;l=E.manualVisibility?e.visible&&p&&e.vectorMap.manualVisibility:e.visible&&p&&(o||d);for(var h=1/(w*w),f=U(e).polygons,g=f.length,m=0;m<g;++m)for(var y=f[m],b=!y.area||void 0===h||y.area>=h,S=y.meshes.length,x=0;x<S;++x){var M=y.meshes[x];M.visible=(void 0===M.material||0!=M.material.opacity&&l)&&b}e.derived_layer&&(e.derived_layer.visible=e.visible,t(e.derived_layer))}},H=function(t){return U(t).scene_group},W=function t(e,n){var i=U(e).scene_group,r=z(e.zMin),o=z(e.zMax),a=e.drawingOrder/1e4;return"MapScene"!==h.name?i.position.z=n?n+a:a:i.position.z=null!=r?r+a:0+a,i.renderOrder=-1e3,i.updateMatrix(),e.derived_layer&&(e.derived_layer.zMin=r,e.derived_layer.zMax=o,e.derived_layer.drawingOrder=e.drawingOrder+1e-6,t(e.derived_layer,n)),G(e),i},q=function(t){if(null!=t.vectorLayerId){var e=U(t.vectorLayerId);t.meshes.forEach(function(t){e.scene_group.add(t)}),e.polygons.push(t)}},K=function(){var t,n=Object(e.copy)(D),i=d.getString(a.Configs.LAYERS_POLYGON_VECTOR_MAP_STYLE,"{}"),r=d.validators[a.Configs.LAYERS_POLYGON_VECTOR_MAP_STYLE],o=r.validate(i);return o.valid?t=JSON.parse(o.cleanedValue):(t={},y.showMessage(r.title,o.reason)),!Object(e.equals)(n,t)&&(D=t,X(),!0)},X=function(){S.data.forEach(function(t){Y(t)})},Y=function n(r){var o={};for(var a in D)if(a&&a.length&&"#"==a[0]){var s=new RegExp(a.substring(1),"i");null!=r.name.match(s)&&Object(e.extend)(o,D[a])}if(r.visible_style_=void 0,"visible"in o&&(r.visible_style_=1==o.visible),"poi_types"in o){var c=!1;o.poi_types.forEach(function(t){var e=m.isPoiTypeVisible(t);c=c||void 0===e||e}),r.visible_style_=c}("color"in o||"solid"in o)&&U(r).polygons.forEach(function(t){"color"in o&&(t.color=o.color),"solid"in o&&(t.solid=1==o.solid),t.meshes.forEach(function(e){e.material=F(t),e.material.color.set(t.color),e.material.needsUpdate=!0})});var l=o.zoom_min?parseFloat(o.zoom_min):void 0,u=o.zoom_max?parseFloat(o.zoom_max):void 0;if(U(r).polygons.forEach(function(t){var e=F(t);e.userData||(e.userData={}),e.userData.zoom_min=l,e.userData.zoom_max=u}),"outline"in o&&!0===o.outline&&r.id>=0){var d=t.extend({},r);d.name+=".outline",d.id*=-1,d.drawingOrder+=1e-6;var p=U(d);if(!p.polygons.length){r.derived_layer=d;var h={};U(r).polygons.forEach(function(e){var n=t.extend({},e);n.solid=!1,n.meshes=void 0,n.id*=-1,n.vectorLayerId*=-1,n.color=new i.Color(n.color),n.color.getHSL(h),h.l+=h.l>.5?-.4:.4,n.color.setHSL(h.h,h.s,h.l),Q(n),p.polygons.push(n)}),P.add(H(d)),W(d)}}G(r),r.derived_layer&&n(r.derived_layer)},Z=function(t){var e=performance.now();t.meshes=J(t);var n=performance.now()-e;t.vectorLayerId in I||(I[t.vectorLayerId]=0),I[t.vectorLayerId]+=n,q(t)},J=function(t){var e=t.vectorEntityLocal,n=new i.Line(e,F(t));return n.matrixAutoUpdate=!1,n.userData.raycastable=!1,[n]},Q=function(t){var e=performance.now();$(t);var n=performance.now()-e;t.vectorLayerId in I||(I[t.vectorLayerId]=0),I[t.vectorLayerId]+=n,q(t)},$=function(t){t.meshes=tt(t)},tt=function(t){var e=F(t),n=t.vectorEntityLocal,r=new i.Mesh(n,e);return r.position.z=0,r.updateMatrix(),r.matrixAutoUpdate=!1,r.userData.raycastable=!1,[r]};p.visibilityUpdateEvent.connect(function(){null!==S.data&&(S.data.forEach(function(t){W(t)}),B(),n.invalidateScene())}),p.vectorLayerRemoveEvent.connect(function(t){var e=H(t);P.remove(e),n.invalidateScene()}),p.vectorMapRemoveEvent.connect(function(t){var e,i=u(t.vectorLayers);try{for(i.s();!(e=i.n()).done;){var r=e.value,o=H(r);P.remove(o),n.invalidateScene()}}catch(t){i.e(t)}finally{i.f()}}),m.poiTypesChanged.connect(function(){C&&(X(),S.data.forEach(function(t){W(t)}))}),d.updated.connect(function(){if(C&&K()){var t,e=u(S.data);try{for(e.s();!(t=e.n()).done;){var n=t.value;W(n)}}catch(t){e.e(t)}finally{e.f()}}}),this.onBeforeRenderViewport=function(t){if(C){var e=t.getCamera(),n=t.getWidth()/(e.right-e.left);isNaN(n)?P.visible=!1:(_|=w!==n,w=n,g.isSiteModelEditorMode()||g.isDatasetAlignmentMode()?(P.visible=t.name===s.SplitViewportName.TOP_VIEW,nt(R.materials_solid,.3),nt(R.materials_edge,.3),S.data.forEach(function(t){W(t,e.position.z-e.far)})):(P.visible="MapScene"===h.name,_|=et(R.materials_solid,n),_|=et(R.materials_edge,n,4),P.visible&&"background-color"in D&&(t.bgColor=new i.Color(D["background-color"]))),_&&P.visible&&B())}};var et=function(t,e,n,i){var r=!1;for(var o in t){var a=t[o],s=a.userData&&a.userData.zoom_min||n,c=a.userData&&a.userData.zoom_max||i,l=Math.min(void 0!==c?Math.min(1,1-(e-c)/c):1,void 0!==s?Math.max(0,(e-s)/s):1);r|=0==a.opacity&&l>0||a.opacity>0&&0==l,a.opacity=l}return r},nt=function(t,e){for(var n in t)t[n].opacity=e};function it(){I={}}var rt=function(){var t={};S.data.forEach(function(e){t[e.id]=e});var e=0,n=Object.keys(I).sort(function(t,e){return I[t]-I[e]});for(var i in n){var r=n[i];if("null"!==r){e++||console.log("Polygon triangulation times (sorted in ascending order):");var o=t[r<0?-r:r],a=r<0?" (outlines)":"";console.log(o.vectorMap.name+" / "+o.name+a+": "+I[r].toFixed(1)+" ms")}}it()};M.onTransitionStart.connect(function(t){var e=M.isMapPrimaryView()?j():[];0===e.length&&(e=t.image?[t.image.globalFloorLocation.z]:[]),O=e,V()}),v.onFloorChange.connect(function(t){var e=[];M.isMapPrimaryView()?e=j():t.currentFloors.length>0&&(e=[t.currentFloors[0].getGlobalZMin()]),O=e,V()}),p.vectorMapsFetched.connect(function(){E.loadEntities&&E.load(!0)}),x.transformLocationAction.connect(function(){return E.refresh()}),p.manualVisibilityChanged.connect(function(){_=!0,n.invalidateScene()})}return{create:function(t,e,n){return new E(t,e,n)}}}])}.call(this,n(19))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1559),n(1560),n(614),n(1567),n(1569);var r=function(){function t(t,e,n){this.VectorMapService=t,this.VectorMapRepository=e,this.VectorLayerRepository=n,this.vectorMaps=e.data,this.vectorLayers=n.data}return t.$inject=["VectorMapService","VectorMapRepository","VectorLayerRepository"],t.prototype.closeEditor=function(){for(var t=0,e=this.vectorMaps;t<e.length;t++)e[t].editing=!1},t}();e.VectorMapEditorController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="VectorMapUI/VectorMapEditor.html",this.controller=r,this.controllerAs="vm"}return t.factory=function(){return function(){return new t}},t}();e.VectorMapEditorDirective=o,i.module("IVWebApp").directive("vectorMapEditor",o.factory())},function(t,e){var n="VectorMapUI/VectorMapEditor.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<script type="text/ng-template" id="crs-popup.html">\n\t<a tabindex="-1">\n\t\t<div ng-bind-html="match.model.name + \', \' + match.model.description | typeaheadHighlight:query"></div>\n\t</a>\n<\/script>\n\n<div id="vector-map-editor">\n\n\t\x3c!-- Vector map editing panel --\x3e\n\t<div class="panel panel-default panel-sticky-header no-margin no-border no-shadow">\n\t\t<div class="panel-heading">\n\t\t\t<vector-map-toolbar></vector-map-toolbar>\n\t\t</div>\n\n\t\t<div class="panel-body">\n\t\t\t\x3c!--No vector maps--\x3e\n\t\t\t<div class="alert alert-info form-group" ng-if="vm.vectorMaps.length == 0" translate>\n\t\t\t\tNo vector layers are present in the database yet.\n\t\t\t</div>\n\t\t\t\x3c!--Vector map list--\x3e\n\t\t\t<vector-map-list vector-maps="vm.vectorMaps"></vector-map-list>\n\t\t</div>\n\t</div>\n\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1561);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"#vector-map-editor>.panel>.panel-body{padding:0}#vector-map-editor .list-group{margin:0 5px;cursor:default}#vector-map-editor .list-group-item{padding:0 .2em;border:0;margin-bottom:0}#vector-map-editor .list-group-item permission-editor>.form-group{margin-top:10px;margin-bottom:0}#vector-map-editor .list-group-item .panel-body>.list-group .row>div{padding-left:10px;padding-right:10px}#vector-map-editor .list-group-item .name{overflow-x:hidden}#vector-map-editor .list-group-item input{display:inline-block}#vector-map-editor .list-group-item input.name-input{width:calc(100% - 90px)}#vector-map-editor .list-group-item .selected{color:#fff;background-color:#3398c7}#vector-map-editor .list-group-item .selected .hidden-layers-icon{color:#fff}#vector-map-editor .list-group-item .selected .list-group-item{background-color:#3398c7}#vector-map-editor .list-group-item .row{padding-top:.3em;padding-bottom:.2em;align-items:center}#vector-map-editor .list-group-item .expand-icon{cursor:pointer}#vector-map-editor .list-group-item .map-row{height:50px;padding:5px 10px 5px 0}#vector-map-editor .list-group-item .map-row .height-visibility label{max-height:20px;margin-bottom:0;overflow:hidden}#vector-map-editor .list-group-item .map-row .height-visibility label span{word-break:break-all}#vector-map-editor .list-group-item .map-row.editing{height:auto;padding-top:5px;padding-bottom:5px}#vector-map-editor .list-group-item .map-row.editing .expand-icon{margin-top:19px;cursor:default}#vector-map-editor .list-group-item .map-row .badge{float:right;margin-top:1px}#vector-map-editor .hidden-layers-icon{float:right;margin-top:2px;margin-right:10px;color:#919191}#vector-map-editor .layer-row .badge{position:absolute;right:10px;bottom:1px}#vector-map-editor .edit-button{margin-right:10px}#vector-map-editor .btn-danger{padding:5px 12px}#vector-map-editor .toggle-visibility{padding-left:5px}#vector-map-editor .container{width:auto}",""]),t.exports=e},function(t,e){var n="VectorMapUI/VectorMapList.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<ul class="list-group">\n\t\x3c!--Maps--\x3e\n\t<vector-map ng-repeat="map in vm.vectorMaps | orderBy: \'name\'" class="list-group-item form-group"\n\t ng-show="!vm.isAnyEditing() || map.editing"\n\t map="map"\n\t parent-controller="vm">\n\t</vector-map>\n</ul>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1564),n(1566);var r=function(){function t(){}return t.prototype.isAnyLayerVisible=function(t){return t.vectorLayers.some(function(t){return t.visible})},t.prototype.areAnyLayers=function(t){return t.vectorLayers.length>0},t}();e.VectorMapController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="VectorMapUI/VectorMap.html",this.controller=r,this.controllerAs="vm",this.scope={map:"=",parentController:"="}}return t.factory=function(){return function(){return new t}},t}();e.VectorMapDirective=o,i.module("IVWebApp").directive("vectorMap",o.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1565);var r=function(){};e.VectorLayerController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="VectorMapUI/VectorLayer.html",this.controller=r,this.controllerAs="vm",this.scope={layer:"=",parentController:"="}}return t.factory=function(){return function(){return new t}},t}();e.VectorLayerDirective=o,i.module("IVWebApp").directive("vectorLayer",o.factory())},function(t,e){var n="VectorMapUI/VectorLayer.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="row layer-row"\n ng-class="{\'selected\': layer.selected}"\n ng-click="parentController.toggleLayerSelection(layer); $event.stopPropagation()">\n\n\t<div class="col-xs-11">\n\t\t<div class="data-set-icon thin-border-dark"\n\t\t ng-style="{\'background-color\': layer.color}"></div>\n\t\t{{ layer.name }}\n\t\t\x3c!--Poly & vertex count badge--\x3e\n\t\t<span class="badge"\n\t\t title="{{\'Features | Vertices\'|translate}}">\n\t\t\t\t\t\t\t\t{{layer.stats.features}} | {{layer.stats.vertices}}\n\t\t\t\t\t\t\t</span>\n\t</div>\n\t\x3c!--Visibility icon--\x3e\n\t<div class="col-xs-1 toggle-visibility clickable">\n\t\t<span class="glyphicon"\n\t\t ng-class="layer.visible ? \'glyphicon-eye-open\' : \'glyphicon-eye-close\'"\n\t\t ng-click="parentController.toggleLayerVisibility(layer); $event.stopPropagation()"></span>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e){var n="VectorMapUI/VectorMap.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div ng-class="{\'selected\': map.selected}" class="container row margin-top-small margin-bottom-small">\n\t<div class="row map-row" ng-class="{\'editing\': map.editing}"\n\t ng-click="parentController.toggleMapSelection(map)">\n\n\t\t<div class="col-xs-1" style="height:100%">\n\t\t\t\x3c!-- chevron icon (expanded or collapsed) --\x3e\n\t\t\t<span class="icon expand-icon glyphicon center-vertical"\n\t\t\t ng-class="(map.expanded && !map.editing) ? \'glyphicon-chevron-down\' : \'glyphicon-chevron-right\'"\n\t\t\t ng-click="parentController.toggleMapExpansion(map); $event.stopPropagation()"\n\t\t\t ng-show="vm.areAnyLayers(map)">\n\t\t</span>\n\t\t\t<i class="fa fa-circle center-vertical"\n\t\t\t ng-show="!vm.areAnyLayers(map)"\n\t\t\t aria-hidden="true"></i>\n\t\t</div>\n\n\t\t\x3c!--Info--\x3e\n\t\t<div ng-if="!map.editing" class="col-xs-11 no-padding-left no-padding-right">\n\t\t\t\x3c!--Name--\x3e\n\t\t\t<div class="name col-xs-12">\n\t\t\t\t<strong>{{map.name}}</strong>\n\t\t\t</div>\n\t\t\t<div class="name col-xs-12">\n\t\t\t\t\x3c!--Edit button--\x3e\n\t\t\t\t<span class="fa fa-pencil edit-button no-padding-left clickable" aria-hidden="true"\n\t\t\t\t ng-show="map.canWrite"\n\t\t\t\t ng-click="parentController.startEditing(map); $event.stopPropagation()">\n\t\t\t</span>\n\t\t\t\t\x3c!--Jump to the vector map--\x3e\n\t\t\t\t<span class="glyphicon glyphicon-share-alt clickable"\n\t\t\t\t ng-show="vm.areAnyLayers(map)"\n\t\t\t\t ng-click="parentController.jumpToMap(map); $event.stopPropagation()"\n\t\t\t\t title="{{\'Jump to map\'|translate}}">\n\t\t\t</span>\n\t\t\t\t\x3c!-- Poly & vertex count badge --\x3e\n\t\t\t\t<span class="badge" title="{{\'Features | Vertices\'|translate}}">\n\t\t\t\t{{map.stats.features}} | {{map.stats.vertices}}\n\t\t\t</span>\n\t\t\t\t\x3c!--Hidden layers warning icon--\x3e\n\t\t\t\t<span class="glyphicon glyphicon-eye-close hidden-layers-icon"\n\t\t\t\t ng-show="vm.areAnyLayers(map) && !vm.isAnyLayerVisible(map)"\n\t\t\t\t title="{{\'All layers are hidden\'|translate}}">\n\t\t\t</span>\n\t\t\t</div>\n\t\t</div>\n\n\t\t\x3c!--Editing--\x3e\n\t\t<div ng-if="map.editing" class="col-xs-11">\n\t\t\t\x3c!-- Input edit --\x3e\n\t\t\t<input class="name-input form-control form-group"\n\t\t\t ng-model="parentController.model.name"\n\t\t\t ng-if="map.editing"\n\t\t\t press-key=\'{ "enter" : "parentController.acceptEditing(map)", "esc" : "parentController.cancelEditing(map)" }\'\n\t\t\t init-focus\n\t\t\t keep-focus>\n\t\t\t\x3c!--Accept editing--\x3e\n\t\t\t<button type="button"\n\t\t\t class="btn btn-default"\n\t\t\t ng-click="parentController.acceptEditing(map); $event.stopPropagation()">\n\t\t\t\t<span class="fa fa-check" aria-hidden="true"></span>\n\t\t\t</button>\n\t\t\t\x3c!--Cancel editing--\x3e\n\t\t\t<button type="button"\n\t\t\t class="btn btn-default"\n\t\t\t ng-click="parentController.cancelEditing(map); $event.stopPropagation()">\n\t\t\t\t<span class="fa fa-times" aria-hidden="true"></span>\n\t\t\t</button>\n\n\t\t\t\x3c!--Z min and max inputs--\x3e\n\t\t\t<div class="no-padding-right height-visibility">\n\t\t\t\t<div class="col-xs-6 form-group no-padding-left">\n\t\t\t\t\t<label translate>Min height</label>\n\t\t\t\t\t<unit-aware-input ng-model="parentController.model.zMin" fraction-size="2"\n\t\t\t\t\t allow-empty="true">\n\t\t\t\t\t</unit-aware-input>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="col-xs-6 form-group no-padding-left">\n\t\t\t\t\t<label translate>Max height</label>\n\t\t\t\t\t<unit-aware-input ng-model="parentController.model.zMax" fraction-size="2"\n\t\t\t\t\t allow-empty="true">\n\t\t\t\t\t</unit-aware-input>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t\x3c!--Permissions Editor --\x3e\n\t\t\t<permission-editor ng-repeat="edited in [parentController.model]"\n\t\t\t model="edited" model-type="\'vector_map\'">\n\t\t\t</permission-editor>\n\t\t</div>\n\t</div>\n\n\t\x3c!-- required because of multiple cell issues, refs #14205 --\x3e\n\t<div class="clearfix"></div>\n\n\t\x3c!--Layers--\x3e\n\t<ul class="list-group-item list-group" ng-if="(map.expanded && !map.editing)">\n\t\t<li ng-repeat="layer in map.vectorLayers | orderBy: \'drawingOrder\'" class="list-group-item">\n\t\t\t<div class="container">\n\t\t\t\t<vector-layer layer="layer" parent-controller="parentController"></vector-layer>\n\t\t\t</div>\n\t\t</li>\n\t</ul>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1568);var r=n(614),o=function(){function t(t,e,n){this.VectorMapService=t,this.VectorMapRepository=e,this.VectorLayerRepository=n,this.vectorMaps=e.data,this.vectorLayers=n.data}return t.$inject=["VectorMapService","VectorMapRepository","VectorLayerRepository"],t.prototype.selectAll=function(){for(var t=0,e=this.vectorMaps;t<e.length;t++){var n=e[t];n.selected=!0;for(var i=0,r=n.vectorLayers;i<r.length;i++)r[i].selected=!0}},t.prototype.removeSelection=function(){var t=r.VectorMapListController.getSelectedMaps(this.vectorMaps);this.VectorMapService.removeVectorMaps(r.VectorMapListController.getSelectedMaps(this.vectorMaps)),this.VectorMapService.removeVectorLayers(r.VectorMapListController.getSelectedLayers(this.vectorLayers,t))},t.prototype.deselectAll=function(){for(var t=0,e=this.vectorMaps;t<e.length;t++){var n=e[t];n.selected=!1;for(var i=0,r=n.vectorLayers;i<r.length;i++)r[i].selected=!1}},t.prototype.setSelectionVisibility=function(t){for(var e=0,n=r.VectorMapListController.getSelectedLayers(this.vectorLayers);e<n.length;e++)n[e].visible=t;this.VectorMapService.updateVisibility()},t.prototype.anySelected=function(){return r.VectorMapListController.getSelectedMaps(this.vectorMaps).length>0||r.VectorMapListController.getSelectedLayers(this.vectorLayers).length>0},t.prototype.checkSelectionWritePermissions=function(){var t=r.VectorMapListController.getSelectedMaps(this.vectorMaps),e=r.VectorMapListController.getSelectedLayers(this.vectorLayers);return t.length===t.filter(function(t){return t.canWrite}).length&&e.length===e.filter(function(t){return t.vectorMap.canWrite}).length},t}();e.VectorMapToolbarController=o;var a=function(){function t(){this.restrict="E",this.templateUrl="VectorMapUI/VectorMapToolbar.html",this.controller=o,this.controllerAs="vm",this.scope={}}return t.factory=function(){return function(){return new t}},t}();e.VectorMapToolbarDirective=a,i.module("IVWebApp").directive("vectorMapToolbar",a.factory())},function(t,e){var n="VectorMapUI/VectorMapToolbar.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="btn-toolbar" role="toolbar">\n\t\x3c!--Select / deselect maps--\x3e\n\t<div class="btn-group margin-bottom-small" role="group">\n\t\t<button title="{{\'Select all\'|translate}}"\n\t\t type="button" class="btn btn-default" ng-click="vm.selectAll()"\n\t\t ng-disabled="vm.vectorLayers.length == 0">\n\t\t\t<span class="fa fa-check-square-o" aria-hidden="true"></span>\n\t\t</button>\n\t\t<button title="{{\'Deselect all\'|translate}}"\n\t\t type="button" class="btn btn-default" ng-click="vm.deselectAll()"\n\t\t ng-disabled="vm.vectorLayers.length == 0">\n\t\t\t<span class="fa fa-square-o" aria-hidden="true"></span>\n\t\t</button>\n\t</div>\n\n\t\x3c!--Show / hide layers--\x3e\n\t<div class="btn-group margin-bottom-small" role="group">\n\t\t<button title="{{\'Show selected layers\'|translate}}"\n\t\t type="button" class="btn btn-default"\n\t\t ng-click="vm.setSelectionVisibility(true)"\n\t\t ng-disabled="!vm.anySelected() || !vm.checkSelectionWritePermissions()">\n\t\t\t<span class="glyphicon glyphicon-eye-open"></span>\n\t\t</button>\n\t\t<button title="{{\'Hide selected layers\'|translate}}"\n\t\t type="button" class="btn btn-default"\n\t\t ng-click="vm.setSelectionVisibility(false)"\n\t\t ng-disabled="!vm.anySelected() || !vm.checkSelectionWritePermissions()">\n\t\t\t<span class="glyphicon glyphicon-eye-close"></span>\n\t\t</button>\n\t</div>\n\n\t\x3c!--Delete--\x3e\n\t<div class="btn-group margin-bottom-small" role="group">\n\t\t<delete-confirmation\n\t\t\t\tbutton-disabled="!vm.anySelected() || !vm.checkSelectionWritePermissions()"\n\t\t\t\ton-confirm-callback="vm.removeSelection()">\n\t\t\t<span translate>This action will delete the selected vector layers.</span>\n\t\t</delete-confirmation>\n\t</div>\n</div>\n\n<div class="btn-toolbar" role="toolbar">\n\t\x3c!--Add--\x3e\n\t<div class="btn-group margin-bottom-small" role="group">\n\t\t<default-button data-toggle="modal"\n\t\t data-target="#vector-map-upload">\n\t\t\t<span translate>Add a DXF file</span>\n\t\t</default-button>\n\t</div>\n\n\t\x3c!--Manage transformations--\x3e\n\t<div class="btn-group" role="group">\n\t\t<default-button data-toggle="modal"\n\t\t data-target="#affineRefSys">\n\t\t\t\t<span translate\n\t\t\t\t title="{{\'Manage the custom affine reference systems\'|translate}}">Manage transformations</span>\n\t\t</default-button>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(7),r=n(2);n(1570),n(1571);var o=n(20),a=n(41),s=function(){function t(t,e,n){this.VectorMapService=t,this.UploadService=e,this.gettextCatalog=n,this.resetUploadStatus()}return t.$inject=["VectorMapService","UploadService","gettextCatalog"],t.prototype.specifyCrs=function(t){return this.VectorMapService.searchCrs(t,void 0)},t.prototype.uploadDxf=function(t){var e=this;this.resetUploadStatus();for(var n=0,i=t;n<i.length;n++){var r=i[n];this.isUploadProgress=!0,this.UploadService.upload("api/vectormaps/upload?crs="+encodeURIComponent(this.selectedCrs.name),r,"file").then(function(t){e.isUploadProgress=!1,e.isUploadSuccess=!0,e.uploadResult=t,e.checkInvalidPolygons(t),e.VectorMapService.fetch().catch(function(){})}).catch(function(t){e.isUploadProgress=!1,e.isUploadError=!0;var n={data:t?t.data:void 0};e.errorMessage=a.ErrorService.getErrorMessage(n,e.gettextCatalog),void 0===e.errorMessage&&(e.errorMessage=n.data?n.data.msg:"")})}},t.prototype.resetUploadStatus=function(){this.isUploadProgress=!1,this.isUploadSuccess=!1,this.isUploadError=!1,o.invalidateAngular()},t.prototype.checkInvalidPolygons=function(t){var e=this;this.layersWithInvalidPolygons=[],this.layersWithInvalidLoops=[],this.layersWithMessages=[],this.layersWithInvalidPolygonsData=new Map,this.layersWithInvalidLoopsData=new Map,this.layersWithInvalidLoopsDepthData=new Map,this.layersWithMessagesData=new Map,i.forEach(t.layer_metadata,function(t,n){t.invalid_polygons>0&&e.layersWithInvalidPolygonsData.set(n,t.invalid_polygons),t.invalid_loops>0&&(e.layersWithInvalidLoopsData.set(n,t.invalid_loops),e.layersWithInvalidLoopsDepthData.set(n,t.invalid_loops_depth)),t.message&&e.layersWithMessagesData.set(n,t.message)}),this.layersWithInvalidPolygonsData.forEach(function(t,n){return e.layersWithInvalidPolygons.push(n)}),this.layersWithInvalidLoopsData.forEach(function(t,n){return e.layersWithInvalidLoops.push(n)}),this.layersWithMessagesData.forEach(function(t,n){return e.layersWithMessages.push(n)})},t}();e.VectorMapUploadController=s;var c=function(){function t(){this.restrict="E",this.templateUrl="VectorMapUI/VectorMapUpload.html",this.controller=s,this.controllerAs="vm",this.scope={}}return t.factory=function(){return function(){return new t}},t}();e.VectorMapUploadDirective=c,r.module("IVWebApp").directive("vectorMapUpload",c.factory())},function(t,e,n){var i="VectorMapUI/VectorMapUpload.html",r='<modal>\n\t<div class="modal fade" id="vector-map-upload" tabindex="-1">\n\t\t<div class="modal-dialog">\n\t\t\t<div class="modal-content">\n\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<h4 translate translate-context="title">Add a DXF File</h4>\n\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t data-dismiss="modal"\n\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}">\n\t\t\t\t</div>\n\n\t\t\t\t<div class="modal-body">\n\n\t\t\t\t\t<form>\n\t\t\t\t\t\t<div class="form-group" style="position:relative">\n\t\t\t\t\t\t\t<label translate>Source coordinate system</label>\n\t\t\t\t\t\t\t<input type="text" ng-model="vm.selectedCrs"\n\t\t\t\t\t\t\t placeholder="EPSG:4326"\n\t\t\t\t\t\t\t typeahead="crs as crs.name for crs in vm.specifyCrs($viewValue)"\n\t\t\t\t\t\t\t typeahead-template-url="crs-popup.html"\n\t\t\t\t\t\t\t typeahead-no-results="noResults" class="form-control form-group">\n\t\t\t\t\t\t\t<p ng-show="!vm.selectedCrs"\n\t\t\t\t\t\t\t class="text-danger" translate>\n\t\t\t\t\t\t\t\tSource coordinate system cannot be empty\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t\t<div class="btn-group" role="group">\n\t\t\t\t\t\t\t\t<input-button class="btn-file" in-progress="vm.isUploadProgress"\n\t\t\t\t\t\t\t\t ng-disabled="!vm.selectedCrs.name">\n\t\t\t\t\t\t\t\t\t<span translate>Upload DXF file</span>\n\t\t\t\t\t\t\t\t\t<input type="file" hidden\n\t\t\t\t\t\t\t\t\t accept=".dxf, image/vnd.dxf"\n\t\t\t\t\t\t\t\t\t ng-disabled="!vm.selectedCrs.name || vm.isUploadProgress"\n\t\t\t\t\t\t\t\t\t ngf-select="vm.uploadDxf($files)">\n\t\t\t\t\t\t\t\t</input-button>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div class="alert alert-warning"\n\t\t\t\t\t\t ng-if="vm.isUploadSuccess && (vm.layersWithInvalidPolygons.length || vm.layersWithInvalidLoops.length || vm.layersWithMessages.length)">\n\t\t\t\t\t\t\t<label translate>\n\t\t\t\t\t\t\t\tLayers with problematic polygons\n\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t\t<li ng-repeat="layerName in vm.layersWithInvalidPolygons">\n\t\t\t\t\t\t\t\t\t<em>{{layerName}}:</em>\n\t\t\t\t\t\t\t\t\t<span translate translate-params-amount="vm.layersWithInvalidPolygonsData.get(layerName)">\n\t\t\t\t\t\t\t\t\t\t{{amount}} of problematic polygons\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t<li ng-repeat="layerName in vm.layersWithInvalidLoops">\n\t\t\t\t\t\t\t\t\t<em>{{layerName}}:</em>\n\t\t\t\t\t\t\t\t\t<span translate translate-params-amount="vm.layersWithInvalidLoopsData.get(layerName)">\n\t\t\t\t\t\t\t\t\t\t{{amount}} discarded boundary loops\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t<span ng-if="vm.layersWithInvalidLoopsDepthData.get(layerName) > 0">\n\t\t\t\t\t\t\t\t\t\t<span translate\n\t\t\t\t\t\t\t\t\t\t translate-context="The comma in the beginning is because this is added to the \'{{amount}} discarded boundary loops\' string."\n\t\t\t\t\t\t\t\t\t\t translate-params-amount="vm.layersWithInvalidLoopsDepthData.get(layerName)">\n\t\t\t\t\t\t\t\t\t\t\t, {{amount}} discarded boundary loops because they are islands or intersect with another boundary loop\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t<li ng-repeat="layerName in vm.layersWithMessages">\n\t\t\t\t\t\t\t\t\t<em>{{layerName}}:</em>\n\t\t\t\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t\t\t\t{{vm.layersWithMessagesData.get(layerName)}}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t<div class="margin-top-small" translate>\n\t\t\t\t\t\t\t\tPlease simplify your DXF file.\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</form>\n\n\t\t\t\t</div>\n\n\n\t\t\t\t<div class="modal-footer" style="text-align: left;">\n\t\t\t\t\t<div class="alert alert-success" ng-if="vm.isUploadSuccess" style="margin-bottom:0"\n\t\t\t\t\t translate translate-n="uploadResult.count_layers"\n\t\t\t\t\t translate-params-amount="uploadResult.count_layers"\n\t\t\t\t\t translate-plural="Upload successful: {{amount}} vector layers found.">\n\t\t\t\t\t\tUpload successful: one vector layer found.\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div class="alert alert-danger" ng-if="vm.isUploadError" style="margin-bottom:0">\n\t\t\t\t\t\t<div translate>Upload failed</div>\n\t\t\t\t\t\t<div ng-show="vm.errorMessage" class="error-message">{{vm.errorMessage}}</div>\n\t\t\t\t\t</div>\n\n\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){var i=n(11),r=n(1572);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,".error-message{font-family:monospace;font-size:.9em;background-color:#d3d3d3;color:#a94442}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(1574);var i=n(2),r=function(){function t(t,e){var n=this;this.VectorMapRepository=t,this.VectorMapService=e,this.VectorMapRepository.initialized.then(function(){n.vectorMaps=n.VectorMapRepository.data}).catch(function(){})}return t.$inject=["VectorMapRepository","VectorMapService"],t.prototype.selectionChanged=function(t){this.VectorMapService.manualVisibilityChanged.emit(t)},t}();e.VectorMapSelectionController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="VectorMapUI/VectorMapSelection.html",this.controller=r,this.controllerAs="vmSelectionCtrl"}return t.factory=function(){return function(){return new t}},t}();e.VectorMapSelectionDirective=o,i.module("IVWebApp").directive("vectorMapSelection",o.factory())},function(t,e){var n="VectorMapUI/VectorMapSelection.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="panel panel-default" ng-show="vmSelectionCtrl.vectorMaps.length > 0">\n\t<div class="panel-heading" data-toggle="collapse" data-target="#vectorMapSelection">\n\t\t<i class="collapse-expand-chevron"></i>\n\t\t<span class="panel-title" translate translate-context="title">\n\t\t\tVector Map Selection\n\t\t</span>\n\t</div>\n\t<div id="vectorMapSelection" class="panel-collapse collapse in">\n\t\t<div class="panel-body">\n\t\t\t<div class="checkbox" ng-repeat="vectorMap in vmSelectionCtrl.vectorMaps">\n\t\t\t\t<label>\n\t\t\t\t\t<input type="checkbox" ng-model="vectorMap.manualVisibility"\n\t\t\t\t\t ng-value="vectorMap.manualVisibility"\n\t\t\t\t\t ng-change="vmSelectionCtrl.selectionChanged(vectorMap)">\n\t\t\t\t\t{{vectorMap.name}}\n\t\t\t\t</label>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(409);var r=n(7),o=n(89),a=n(8);n(1576),n(1577);var s=function(){function t(t,e,n){var i=this;this.AffineRefSysRepository=t,this.VectorMapService=e,this.promiseWrapper=new o.PromiseProgressWrapper,n.find(".modal").on("show.bs.modal",function(){i.AffineRefSysRepository.findAll().catch(a.handleWarning)})}return t.$inject=["AffineRefSysRepository","VectorMapService","$element"],t.prototype.isSavingInProgress=function(){return this.promiseWrapper.isInProgress},t.prototype.save=function(t){var e=this;this.promiseWrapper.wrap(this.AffineRefSysRepository.save([t])).then(function(){e.unsaved=void 0,t.dirty=!1}).catch(a.handleWarning)},t.prototype.add=function(){this.unsaved=this.AffineRefSysRepository.create()},t.prototype.remove=function(t){t.id?this.AffineRefSysRepository.remove(t).catch(a.handleWarning):this.unsaved=void 0},t.prototype.specifyCrs=function(t){return this.VectorMapService.searchCrs(t,"GEODETIC")},t.prototype.alreadyExists=function(t){return r.some(r.filter(this.AffineRefSysRepository.data,function(e){return!t.id||e.id!==t.id}),function(e){return t.name===e.name})},t.prototype.getAllowedParents=function(t){var e=this;return this.AffineRefSysRepository.data.filter(function(n){return!e.isSameOrChild(n,t)})},t.prototype.isSameOrChild=function(t,e){do{if(t===e)return!0;t=t.parent}while(t);return!1},t}();e.AffineRefSysListComponent=s;var c=function(){function t(){this.restrict="E",this.templateUrl="AffineRefSysUI/AffineRefSysList.html",this.controller=s,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.AffineRefSysListDirective=c,i.module("IVWebApp").directive("affineRefSysList",c.factory())},function(t,e,n){var i="AffineRefSysUI/AffineRefSysList.html",r='<div class="modal fade" id="affineRefSys" tabindex="-1"\n data-backdrop="static">\n\t<div class="modal-dialog">\n\t\t<div class="modal-content">\n\n\t\t\t<div class="modal-header">\n\t\t\t\t<h4 translate translate-context="title">Custom Coordinate Systems</h4>\n\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t data-dismiss="modal"\n\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}">\n\t\t\t</div>\n\n\t\t\t<div class="modal-body">\n\t\t\t\t<div class="panel-group" id="affine_ref_sys_accordion" role="tablist">\n\n\t\t\t\t\t<div class="panel panel-default"\n\t\t\t\t\t ng-show="vm.AffineRefSysRepository.data.length>0"\n\t\t\t\t\t ng-repeat="affineRefSys in vm.AffineRefSysRepository.data">\n\t\t\t\t\t\t<affine-ref-sys-edit></affine-ref-sys-edit>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div class="panel panel-default"\n\t\t\t\t\t ng-if="vm.unsaved!=null"\n\t\t\t\t\t ng-repeat="affineRefSys in [vm.unsaved]">\n\t\t\t\t\t\t<affine-ref-sys-edit></affine-ref-sys-edit>\n\t\t\t\t\t</div>\n\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class="modal-footer">\n\t\t\t\t<default-button class="pull-left" ng-click="vm.add()" ng-show="vm.unsaved==null">\n\t\t\t\t\t<span translate>Add</span>\n\t\t\t\t</default-button>\n\t\t\t\t<close-button data-dismiss="modal"></close-button>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1578);var r=function(){function t(){this.restrict="E",this.templateUrl="AffineRefSysUI/AffineRefSysEdit.html",this.scope=!1}return t.factory=function(){return function(){return new t}},t}();e.AffineRefSysEditDirective=r,i.module("IVWebApp").directive("affineRefSysEdit",r.factory())},function(t,e){var n="AffineRefSysUI/AffineRefSysEdit.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="panel-heading" ng-if="affineRefSys.id">\n\t<span>\n\t\t<a role="button" data-toggle="collapse"\n\t\t data-parent="#affine_ref_sys_accordion"\n\t\t class="collapsed"\n\t\t href="#collapse{{affineRefSys.id}}">\n\t\t\t{{affineRefSys.name}}\n\t\t</a>\n\t</span>\n</div>\n\n<div id="collapse{{affineRefSys.id ? affineRefSys.id : \'unknown\'}}"\n class="panel-collapse collapse"\n ng-class="{\'show\': affineRefSys.id === undefined}"\n role="tabpanel">\n\t<div class="panel-body">\n\n\t\t<form>\n\t\t\t<div class="form-group">\n\t\t\t\t<label translate>Name</label>\n\t\t\t\t<input class="form-control form-group"\n\t\t\t\t ng-model="affineRefSys.name" ng-change="affineRefSys.dirty=true; vm.error=null;">\n\t\t\t\t<p ng-show="vm.alreadyExists(affineRefSys)"\n\t\t\t\t class="text-danger" translate>\n\t\t\t\t\tName is already being used\n\t\t\t\t</p>\n\t\t\t\t<p ng-show="!affineRefSys.name"\n\t\t\t\t class="text-danger" translate>\n\t\t\t\t\tName cannot be empty\n\t\t\t\t</p>\n\t\t\t</div>\n\n\t\t\t<div class="form-group" style="position: relative">\n\t\t\t\t<label translate>Reference SRID</label>\n\t\t\t\t<input type="search" ng-model="affineRefSys.spatialReference"\n\t\t\t\t title="{{\'Source Coordinate System\'|translate}}"\n\t\t\t\t typeahead="crs.name as crs.name for crs in vm.specifyCrs($viewValue)"\n\t\t\t\t typeahead-template-url="crs-popup.html"\n\t\t\t\t typeahead-no-results="noResults" class="form-control form-group"\n\t\t\t\t ng-change="affineRefSys.dirty=true; vm.error=null;"\n\t\t\t\t ng-disabled="affineRefSys.parent || affineRefSys.spatialReferenceString">\n\t\t\t\t<p ng-show="!affineRefSys.parent && !affineRefSys.spatialReference && !affineRefSys.spatialReferenceString"\n\t\t\t\t class="text-danger" translate>\n\t\t\t\t\tRequired (alternatively, a parent coordinate system or a custom projection can be specified)\n\t\t\t\t</p>\n\t\t\t</div>\n\n\t\t\t<div class="form-group">\n\t\t\t\t<label translate>Custom projection</label>\n\t\t\t\t<input class="form-control form-group"\n\t\t\t\t ng-model="affineRefSys.spatialReferenceString"\n\t\t\t\t ng-change="affineRefSys.dirty=true; vm.error=null;"\n\t\t\t\t ng-disabled="affineRefSys.parent || affineRefSys.spatialReference">\n\t\t\t</div>\n\n\t\t\t<div class="form-group" style="position: relative">\n\t\t\t\t<label translate>Parent Coordinate System</label>\n\t\t\t\t<select class="form-control from-group"\n\t\t\t\t ng-options="crs.name disable when crs.dirty for crs in vm.getAllowedParents(affineRefSys) track by crs.id"\n\t\t\t\t ng-model="affineRefSys.parent"\n\t\t\t\t ng-change="affineRefSys.dirty=true; vm.error=null;"\n\t\t\t\t ng-disabled="affineRefSys.spatialReference || affineRefSys.spatialReferenceString">\n\t\t\t\t\t<option value="" translate>None</option>\n\t\t\t\t</select>\n\n\t\t\t\t<p ng-show="!affineRefSys.parent && !affineRefSys.spatialReference && !affineRefSys.spatialReferenceString"\n\t\t\t\t class="text-danger" translate>\n\t\t\t\t\tRequired (alternatively, a reference SRID or a custom projection can be specified)\n\t\t\t\t</p>\n\t\t\t</div>\n\n\t\t\t<table id="affine-ref-sys-table" class="table table-borderless">\n\t\t\t\t<col style="width:3%">\n\t\t\t\t<col style="width:6%">\n\t\t\t\t<col style="width:19%">\n\t\t\t\t<col style="width:19%">\n\t\t\t\t<col style="width:19%">\n\t\t\t\t<col style="width:16%">\n\t\t\t\t<col style="width:18%">\n\t\t\t\t<thead>\n\t\t\t\t</thead>\n\t\t\t\t<tr>\n\t\t\t\t\t<td><i>x</i></td>\n\t\t\t\t\t<td></td>\n\t\t\t\t\t<td class="border-left"><input class="form-control" ng-model="affineRefSys.rx"\n\t\t\t\t\t ng-change="affineRefSys.dirty=true; vm.error=null;">\n\t\t\t\t\t</td>\n\t\t\t\t\t<td><i>{{-affineRefSys.ry}}</i></td>\n\t\t\t\t\t<td class="border-right">0</td>\n\t\t\t\t\t<td></td>\n\t\t\t\t\t<td class="right-column"><input class="form-control" ng-model="affineRefSys.tx"\n\t\t\t\t\t ng-change="affineRefSys.dirty=true; vm.error=null;">\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t\t<tr>\n\t\t\t\t\t<td><i>y</i></td>\n\t\t\t\t\t<td>=</td>\n\t\t\t\t\t<td class="border-left"><input class="form-control" ng-model="affineRefSys.ry"\n\t\t\t\t\t ng-change="affineRefSys.dirty=true; vm.error=null;">\n\t\t\t\t\t</td>\n\t\t\t\t\t<td><i>{{affineRefSys.rx}}</i></td>\n\t\t\t\t\t<td class="border-right">0</td>\n\t\t\t\t\t<td><i class="fa fa-circle" aria-hidden="true"></i>\n\t\t\t\t\t\t<u class="vector-symbol">p</u>\n\t\t\t\t\t\t<span>+</span>\n\t\t\t\t\t</td>\n\t\t\t\t\t<td class="right-column"><input class="form-control" ng-model="affineRefSys.ty"\n\t\t\t\t\t ng-change="affineRefSys.dirty=true; vm.error=null;">\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t\t<tr>\n\t\t\t\t\t<td><i>z</i></td>\n\t\t\t\t\t<td></td>\n\t\t\t\t\t<td class="border-left">0</td>\n\t\t\t\t\t<td>0</td>\n\t\t\t\t\t<td class="border-right">1</td>\n\t\t\t\t\t<td></td>\n\t\t\t\t\t<td class="right-column"><input class="form-control" ng-model="affineRefSys.tz"\n\t\t\t\t\t ng-change="affineRefSys.dirty=true; vm.error=null;">\n\t\t\t\t\t</td>\n\t\t\t\t</tr>\n\t\t\t</table>\n\n\t\t\t<div class="form-group">\n\t\t\t\t<cancel-button ng-show="!affineRefSys.id" ng-click="vm.remove(affineRefSys)">\n\t\t\t\t</cancel-button>\n\t\t\t\t<delete-confirmation ng-show="affineRefSys.id" on-confirm-callback="vm.remove(affineRefSys)">\n\t\t\t\t</delete-confirmation>\n\t\t\t\t<save-button ng-click="vm.save(affineRefSys)"\n\t\t\t\t ng-disabled="(!affineRefSys.parent &&\n\t\t\t\t !affineRefSys.spatialReference &&\n\t\t\t\t !affineRefSys.spatialReferenceString) ||\n\t\t\t\t !affineRefSys.name || vm.alreadyExists(affineRefSys) || !affineRefSys.dirty ||\n\t\t\t\t vm.isSavingInProgress()"\n\t\t\t\t in-progress="vm.isSavingInProgress()">\n\t\t\t\t</save-button>\n\t\t\t</div>\n\n\t\t</form>\n\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(141),o=n(25),a=(n(15),n(38),n(147));n(1580),n(1584),n(204);var s=n(148),c=n(21),l=n(81),u=n(6),d=n(0),p=n(0),h=n(38),f=n(15),g=function(){function t(t,e,n){this.SidebarMenuService=t,this.ConfigService=e,this.gettext=n,this.initSideMenuItem()}return t.prototype.initSideMenuItem=function(){var t=this,e=(new s.SidebarMenuItemBuilder).setKey(l.SidebarMenuItemsKey.SHARE).setTitle(this.gettext("Share",void 0,"title")).setIcon(new r.IconInfo("material-icons","share")).setIsVisible(function(){return t.ConfigService.getBoolean(o.Configs.MENU_SHARE_VISIBLE,!0)}).setTemplate(c.TemplateName.SHARE_MENU).setClassCallback(function(){return"sidebar-menu-item-share"}).setOrder(a.SidebarMenuItemsOrder.SHARE).build();this.SidebarMenuService.addItem(e)},t.ɵfac=function(e){return new(e||t)(p.ɵɵinject(h.SidebarMenuService),p.ɵɵinject(f.ConfigService),p.ɵɵinject("gettext"))},t.ɵprov=p.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.ShareModule=g,p.ɵsetClassMetadata(g,[{type:d.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:h.SidebarMenuService},{type:f.ConfigService},{type:void 0,decorators:[{type:d.Inject,args:["gettext"]}]}]},null),i.module("IVWebApp").service("ShareModule",u.downgradeInjectable(g))},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0}),n(1581),n(1583);var i=n(2),r=n(40),o=n(96),a=n(55),s=n(21),c=n(392),l=function(){function e(t,e,n,i,r,o,a,s,c,l,u,d){this.UrlService=t,this.SocialService=e,this.IV=n,this.PoiService=i,this.$location=r,this.gettextCatalog=o,this.gettext=a,this.LanguageService=s,this.SiteModelService=c,this.isHtml5Mode=l,this.TrackingService=u,this.ViewService=d,this.shareUrl="",this.mailToUrl=""}return e.$inject=["UrlService","SocialService","IV","PoiService","$location","gettextCatalog","gettext","LanguageService","SiteModelService","isHtml5Mode","TrackingService","ViewService"],Object.defineProperty(e.prototype,"shareSmeType",{get:function(){return this.SiteModelService.selectedModel.type===a.SiteModelType.CUSTOM?this.gettext("site model entity"):this.SiteModelService.selectedModel.getTypeDisplayName()},enumerable:!0,configurable:!0}),e.prototype.openShareWindow=function(t){var e=window.open();this.moveToShareUrl(e,t)},e.prototype.createLink=function(){return this.isLocation()?(this.shareUrl=this.UrlService.generateShareUrl(),this.setMailToUrl(),this.shareUrl):this.isPoi()?(this.shareUrl=this.generatePoiShareUrl(),this.setMailToUrl(),this.shareUrl):this.isCustomLocation()?(this.shareUrl=this.generateShareCustomLocationPoi(),this.setMailToUrl(),this.shareUrl):this.isSme()?(this.shareUrl=this.generateSmeShareUrl(),this.setMailToUrl(),this.shareUrl):""},e.prototype.trackShareAction=function(){s.TrackingService.trackShareAction(this.shareType)},e.prototype.setMailToUrl=function(){this.mailToUrl="mailto:?body="+encodeURIComponent(this.shareUrl)},e.prototype.copyLink=function(){var e=t("#generatedLink");if(r.isPlatform(r.Platform.IOS)){var n=e.get(0),i=n.contentEditable,o=n.readOnly,a=document.createRange(),s=window.getSelection();n.contentEditable="true",n.readOnly=!1,a.selectNodeContents(n),s.removeAllRanges(),s.addRange(a),n.setSelectionRange(0,999999),n.contentEditable=i,n.readOnly=o}else e.select();document.execCommand("copy"),e.blur(),t("#copyButton").attr("title",this.gettextCatalog.getString("Copied link to clipboard")).tooltip("show"),this.trackShareAction()},e.prototype.onLeaveCopyButton=function(){t("#copyButton").tooltip("destroy")},e.prototype.generatePoiShareUrl=function(){return this.PoiService.openedPoi?this.generateShareUrl("poi="+this.PoiService.openedPoi.id):""},e.prototype.generateShareCustomLocationPoi=function(){var t=this.PoiService.openedPoi,e=o.VectorFactory.toString(t.globalLocation);return this.generateShareUrl("poi="+e)},e.prototype.generateSmeShareUrl=function(){return this.SiteModelService.selectedModel?this.generateShareUrl("sme="+this.SiteModelService.selectedModel.id+"&vlon="+this.ViewService.mainView.getViewDir().lon.toFixed(2)+"&vlat="+this.ViewService.mainView.getViewDir().lat.toFixed(2)):""},e.prototype.generateShareUrl=function(t){var e=this.$location.absUrl();return this.UrlService.removeParamsFromUrl(e)+(this.isHtml5Mode?"?":"#?")+t+"&fov="+this.ViewService.mainView.getFov().toFixed(1)},e.prototype.getTwitterUrl=function(){return this.UrlService.generateSocialNetworkShareUrl("twitter",this.createLink())},e.prototype.moveToShareUrl=function(t,e){var n=this;if(this.isLocation()){var i=this.ViewService.mainView;i.getImage()?this.SocialService.moveToShareURLCommonCode(t,e,{type:"image",id:i.getImage().id,lon:i.getViewDir().lon.toFixed(2),lat:i.getViewDir().lat.toFixed(2)}):this.SocialService.moveToShareURLCommonCode(t,e,{})}else if(this.isPoi()||this.isSme()){var r=this.gettextCatalog.getString("Please wait for the page to load...");t.document.writeln('<html></head><body bgcolor=white onLoad="self.focus()">'+r+"</body></html>"),(this.isPoi()?this.moveToPoiShareUrl():this.moveToSmeShareUrl()).then(function(){n.SocialService.moveToShareURLCommonCode(t,e,{type:n.isPoi()?c.ShareType.POI:c.ShareType.SME,id:n.isPoi()?n.PoiService.openedPoi.id:n.SiteModelService.selectedModel.id,lang:n.LanguageService.dataLanguage})}).catch(function(){})}},e.prototype.moveToPoiShareUrl=function(){return this.PoiService.goToPoi()},e.prototype.moveToSmeShareUrl=function(){return this.SiteModelService.selectModel(this.SiteModelService.selectedModel,!0),Promise.resolve()},e.prototype.isLocation=function(){return this.shareType===c.ShareType.LOCATION},e.prototype.isPoi=function(){return this.shareType===c.ShareType.POI},e.prototype.isSme=function(){return this.shareType===c.ShareType.SME},e.prototype.isCustomLocation=function(){return this.shareType===c.ShareType.CUSTOM_LOCATION},e.prototype.isTransitioning=function(){return this.isPoi()&&this.PoiService.openedPoi&&this.IV.isMovingToPoi()},e}();e.ShareMenuController=l;var u=function(){function t(){this.restrict="E",this.templateUrl="ShareMenu/ShareMenu.html",this.controller=l,this.controllerAs="vm",this.scope=!0,this.bindToController={shareType:"@"}}return t.factory=function(){return function(){return new t}},t}();e.ShareMenuDirective=u,i.module("IVWebApp").directive("shareMenu",u.factory())}).call(this,n(19))},function(t,e,n){var i=n(11),r=n(1582);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,".linkToCopy{padding:6px;width:100%;float:none}.linkToCopy .btn-default{height:34px;max-height:none}.custom-tooltip{display:inline-block}.tooltip{position:fixed}.azm-button-wrapper,.azm-social{display:inline-block}.azm-social{margin:0;padding:0;color:#fff;text-align:center;transition:all .3s}.azm-social>i{width:100%}.azm-size-42{width:42px;height:42px;padding-top:13px;font-size:14px;line-height:14px}.azm-size-42:not(:last-child){margin-right:5px}.azm-size-42:focus,.azm-size-42:hover{color:#fff}.azm-email{background:#9a9a9a}.azm-email:focus,.azm-email:hover{background:#797979}.azm-facebook{background:#4862a3}.azm-facebook:focus,.azm-facebook:hover{background:#384d80}.azm-twitter{background:#55acee}.azm-twitter:focus,.azm-twitter:hover{background:#2795e9}.azm-linkedin{background:#0177b5}.azm-linkedin:focus,.azm-linkedin:hover{background:#015682}.azm-xing{background:#006464}.azm-xing:focus,.azm-xing:hover{background:#003131}.azm-tumblr{background:#2c4762}.azm-tumblr:focus,.azm-tumblr:hover{background:#1c2e3f}",""]),t.exports=e},function(t,e,n){var i="ShareMenu/ShareMenu.html",r='<div class="form">\n\n\t<div class="form-group">\n\t\t<label ng-if="vm.isLocation()" translate>Web address</label>\n\t\t<label ng-if="vm.isPoi()" translate>Link to this POI</label>\n\t\t<label ng-if="vm.isCustomLocation()" translate>Link to this location</label>\n\t\t<label ng-if="vm.isSme()" translate translate-params-type="vm.shareSmeType | translate"\n\t\ttranslate-context="type is an already translated SiteModelEntity type, e.g. \'room\', \'floor\'">\n\t\t\tLink to this {{type}}\n\t\t</label>\n\t\t<br/>\n\t\t<div class="input-group col-sm-12 linkToCopy">\n\t\t\t<input readonly class="form-control"\n\t\t\t id="generatedLink"\n\t\t\t ng-value="vm.createLink()"\n\t\t\t ng-click="vm.trackShareAction()"\n\t\t\t onClick="this.select()">\n\t\t\t<span class="input-group-btn">\n\t\t\t\t<default-button id="copyButton"\n\t\t\t\t ng-click="vm.copyLink()"\n\t\t\t\t ng-mouseleave="vm.onLeaveCopyButton()"\n\t\t\t\t data-container="false"\n\t\t\t\t data-placement="top">\n\t\t\t\t\t<i class="fa fa-copy"></i>\n\t\t\t\t</default-button>\n\t\t\t</span>\n\t\t</div>\n\t</div>\n\n\t<div class="form-group no-margin-bottom" ng-if="!vm.isTransitioning()">\n\t\t<span class="margin-bottom-small azm-button-wrapper">\n\t\t\t<a href="{{vm.mailToUrl}}"\n\t\t\t target="_blank"\n\t\t\t iv-tooltip="{{\'Share via email\' | translate}}"\n\t\t\t data-container="false"\n\t\t\t class="btn azm-social azm-size-42 azm-email">\n\t\t\t\t<i class="fa fa-envelope"></i>\n\t\t\t</a>\n\t\t</span>\n\n\t\t<span class="margin-bottom-small azm-button-wrapper">\n\t\t\t<a ng-click="vm.openShareWindow(\'facebook\')"\n\t\t\t iv-tooltip="{{\'Share on facebook\' | translate}}"\n\t\t\t data-container="false"\n\t\t\t class="btn azm-social azm-size-42 azm-facebook">\n\t\t\t\t<i class="fa fa-facebook"></i>\n\t\t\t</a>\n\t\t</span>\n\n\t\t<span class="margin-bottom-small azm-button-wrapper">\n\t\t\t<a target="_blank" ng-href="{{vm.getTwitterUrl()}}"\n\t\t\t iv-tooltip="{{\'Share on Twitter\' | translate}}"\n\t\t\t data-container="false"\n\t\t\t class="btn azm-social azm-size-42 azm-twitter">\n\t\t\t\t<i class="fa fa-twitter"></i>\n\t\t\t</a>\n\t\t</span>\n\n\t\t<span class="margin-bottom-small azm-button-wrapper">\n\t\t\t<a ng-click="vm.openShareWindow(\'linkedin\')"\n\t\t\t iv-tooltip="{{\'Share on LinkedIn\' | translate}}"\n\t\t\t data-container="false"\n\t\t\t class="btn azm-social azm-size-42 azm-linkedin">\n\t\t\t\t<i class="fa fa-linkedin"></i>\n\t\t\t</a>\n\t\t</span>\n\n\t\t<span class="margin-bottom-small azm-button-wrapper">\n\t\t\t<a ng-click="vm.openShareWindow(\'xing\')"\n\t\t\t iv-tooltip="{{\'Share on XING\' | translate}}"\n\t\t\t data-container="false"\n\t\t\t class="btn azm-social azm-size-42 azm-xing">\n\t\t\t\t<i class="fa fa-xing"></i>\n\t\t\t</a>\n\t\t</span>\n\n\t\t<span class="margin-bottom-small azm-button-wrapper">\n\t\t\t<a ng-click="vm.openShareWindow(\'tumblr\')"\n\t\t\t iv-tooltip="{{\'Share on Tumblr\' | translate}}"\n\t\t\t data-container="false"\n\t\t\t class="btn azm-social azm-size-42 azm-tumblr">\n\t\t\t\t<i class="fa fa-tumblr"></i>\n\t\t\t</a>\n\t\t</span>\n\t</div>\n\n\t<div class="form-group" ng-show="vm.isTransitioning()">\n\t\t<span class="spinner next-to-btngroup">\n\t\t\t<img class="in-btn-group" ng-src="'+n(94)+'">\n\t\t</span>\n\t</div>\n</div>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(204);var i=n(2),r=n(67),o=n(197),a=(n(73),n(41),n(6)),s=n(0),c=(n(17),n(0)),l=n(204),u=n(73),d=n(17),p=n(41),h=function(){function t(t,e,n,i,r){this.UploadService=t,this.UrlService=e,this.ViewService=n,this.$location=i,this.lastLocation="",this.shareUrl="",this.errorWrapper=r.createDefaultWrapper()}return t.prototype.uploadScreenshot=function(){var t=this.ViewService.mainView.getScreenshot(),e=r.dataURItoBlob(t.data);return this.UploadService.upload("share/image",o.blobToFile(e)).then(function(e){return{url:e.url,width:t.width,height:t.height}})},t.prototype.moveToShareURLCommonCode=function(t,e,n){var r=this,o=function(){t.location.href=r.UrlService.generateSocialNetworkShareUrl(e,r.shareUrl)};this.isLocationSame()&&this.shareUrl?o():this.errorWrapper.wrap(this.uploadScreenshot().then(function(t){var e=r.UrlService.getProtocolBaseUrl(),a=r.UrlService.removeParamsFromUrl(r.$location.absUrl()),s={image:t.url,width:t.width,height:t.height,fov:r.ViewService.mainView.getFov().toFixed(1),iv_base:e,backlink_base:void 0};e!==a&&(s.backlink_base=a),i.extend(s,n);var c=JSON.stringify(s),l=btoa(c).replace("+","-").replace("/","_");r.shareUrl=r.UrlService.getProtocolBaseUrl()+"share/link/"+l,r.lastLocation=r.$location.absUrl(),o()}).catch(function(e){throw t.close(),e})).catch(function(){})},t.prototype.isLocationSame=function(){return this.lastLocation===this.$location.absUrl()},t.ɵfac=function(e){return new(e||t)(c.ɵɵinject(l.UploadService),c.ɵɵinject(u.UrlService),c.ɵɵinject(d.ViewService),c.ɵɵinject("$location"),c.ɵɵinject(p.ErrorService))},t.ɵprov=c.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.SocialService=h,c.ɵsetClassMetadata(h,[{type:s.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:l.UploadService},{type:u.UrlService},{type:d.ViewService},{type:void 0,decorators:[{type:s.Inject,args:["$location"]}]},{type:p.ErrorService}]},null),i.module("IVWebApp").service("SocialService",a.downgradeInjectable(h))},function(t,e,n){"use strict";var i=this&&this.__awaiter||function(t,e,n,i){return new(n||(n=Promise))(function(r,o){function a(t){try{c(i.next(t))}catch(t){o(t)}}function s(t){try{c(i.throw(t))}catch(t){o(t)}}function c(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(a,s)}c((i=i.apply(t,e||[])).next())})},r=this&&this.__generator||function(t,e){var n,i,r,o,a={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,i&&(r=2&o[0]?i.return:o[0]?i.throw||((r=i.return)&&r.call(i),0):i.next)&&!(r=r.call(i,o[1])).done)return r;switch(i=0,r&&(o=[2&o[0],r.value]),o[0]){case 0:case 1:r=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,i=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!((r=(r=a.trys).length>0&&r[r.length-1])||6!==o[0]&&2!==o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]<r[3])){a.label=o[1];break}if(6===o[0]&&a.label<r[1]){a.label=r[1],r=o;break}if(r&&a.label<r[2]){a.label=r[2],a.ops.push(o);break}r[2]&&a.ops.pop(),a.trys.pop();continue}o=e.call(t,a)}catch(t){o=[6,t],i=0}finally{n=r=0}if(5&o[0])throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}([o,s])}}};Object.defineProperty(e,"__esModule",{value:!0});var o=n(0),a=(n(131),n(203),n(38),n(148)),s=n(81),c=n(141),l=n(147),u=n(2),d=n(6),p=n(8),h=n(24),f=(n(27),n(25)),g=(n(15),n(21),n(1586)),m=n(218),v=n(0),y=n(38),b=n(131),w=n(203),S=n(24),x=n(15),M=n(27),E=n(21),C=function(){function t(t,e,n,o,u,d,v,y){var b=this;this.SidebarMenuService=t,this.ToolboxMenuService=e,this.ModeSwitchService=n,this.ModeService=o,this.ConfigService=u,this.gettext=d,this.TrackingService=y,this.className="sidebar-menu-item-measurements";var w=(new a.SidebarMenuItemBuilder).setTitle(this.gettext("Measurements",void 0,"title")).setKey(s.SidebarMenuItemsKey.MEASUREMENTS).setIcon(new c.IconInfo("material-icons","straighten")).setOrder(l.SidebarMenuItemsOrder.MEASUREMENTS).setClassCallback(function(){return b.ModeService.isMeasurementsMode()?b.className+" active":b.className}).setOnClick(function(){return i(b,void 0,void 0,function(){return r(this,function(t){switch(t.label){case 0:return this.SidebarMenuService.closeMenu(),this.ModeService.currentMode===h.ModeState.MEASUREMENTS?[2]:[4,this.ToolboxMenuService.closeMenu().catch(p.handleWarning)];case 1:return t.sent(),this.TrackingService.trackPreDefinedEvent((new g.MeasurementModeEnteredEvent).enteredFrom(m.MenuType.SidebarEditor)),this.ModeSwitchService.switchToMode(h.ModeState.MEASUREMENTS).catch(p.handleWarning),[2]}})})}).setIsVisible(function(){return v.canUseMeasurementTool()&&b.ConfigService.getBoolean(f.Configs.MENU_MEASUREMENTS_VISIBLE,!0)}).build();this.SidebarMenuService.addItem(w)}return t.ɵfac=function(e){return new(e||t)(v.ɵɵinject(y.SidebarMenuService),v.ɵɵinject(b.ToolboxMenuService),v.ɵɵinject(w.ModeSwitchService),v.ɵɵinject(S.ModeService),v.ɵɵinject(x.ConfigService),v.ɵɵinject("gettext"),v.ɵɵinject(M.UserService),v.ɵɵinject(E.TrackingService))},t.ɵprov=v.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.MeasurementsModule=C,v.ɵsetClassMetadata(C,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:y.SidebarMenuService},{type:b.ToolboxMenuService},{type:w.ModeSwitchService},{type:S.ModeService},{type:x.ConfigService},{type:void 0,decorators:[{type:o.Inject,args:["gettext"]}]},{type:M.UserService},{type:E.TrackingService}]},null),u.module("IVWebApp").service("MeasurementsModule",d.downgradeInjectable(C))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(64),a=n(218),s=function(t){function e(){return t.call(this,"MeasurementModeEntered")||this}return r(e,t),e.prototype.enteredFrom=function(t){return this.withData("enteredFrom",a.MenuType[t]),this},e}(o.TrackingEvent);e.MeasurementModeEnteredEvent=s},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(141),o=n(25);n(27),n(27),n(15),n(38),n(54);var a=n(57),s=n(147);n(205),n(1591),n(1637),n(118),n(1641),n(1642);var c=n(148);n(1644),n(1650),n(1654);var l=n(92);n(1659),n(86);var u=n(21),d=n(81),p=n(6),h=n(0);n(114),n(114);var f=n(8),g=n(0),m=n(27),v=n(38),y=n(15),b=n(54),w=n(86),S=n(114),x=function(){function t(t,e,n,i,r,o,a){var s=this;this.UserService=t,this.SidebarMenuService=e,this.ConfigService=n,this.LicenseService=i,this.InstanceInformationService=r,this.GroupService=o,this.gettext=a;var c=this.InstanceInformationService.getInformation();Promise.all([c]).then(function(t){var e=t[0];return s.initSideMenuItem(e)}).catch(f.handleWarning)}return t.prototype.initSideMenuItem=function(t){var e=this,n=[(new c.SidebarMenuItemBuilder).setKey(d.SidebarMenuItemsKey.SETTINGS_CONFIG).setTitle(this.gettext("Configuration",void 0,"title")).setIcon(new r.IconInfo("material-icons","tune")).setIsVisible(function(){return e.UserService.isAdmin()}).setTemplate(u.TemplateName.CONFIG_SETTINGS).setClassCallback(function(){return"sidebar-menu-item-settings-config"}).setOrder(s.SidebarMenuItemsOrder.SETTINGS_CONFIG).setIsFullscreen(!0).build(),(new c.SidebarMenuItemBuilder).setKey(d.SidebarMenuItemsKey.SETTINGS_SUBSCRIPTION).setTitle(t.isCloudInstance?this.gettext("Subscription",void 0,"title"):this.gettext("Instance Key",void 0,"title")).setIcon(t.isCloudInstance?new r.IconInfo("material-icons","monetization_on"):new r.IconInfo("material-icons","vpn_key")).setIsVisible(function(){return e.UserService.isAdmin()}).setTemplate(u.TemplateName.INSTANCE_KEY_SUBSCRIPTION_SETTINGS).setClassCallback(function(){return"sidebar-menu-item-settings-license-subscription"}).setOrder(s.SidebarMenuItemsOrder.SETTINGS_INSTANCE_KEY).setIsFullscreen(!0).build(),(new c.SidebarMenuItemBuilder).setKey(d.SidebarMenuItemsKey.SETTINGS_AUTHENTICATION).setTitle(this.gettext("Authentication",void 0,"title")).setIcon(new r.IconInfo("material-icons","security")).setIsVisible(function(){return e.UserService.isAdmin()}).setTemplate(u.TemplateName.AUTH_SETTINGS).setClassCallback(function(){return"sidebar-menu-item-settings-authentication"}).setOrder(s.SidebarMenuItemsOrder.SETTINGS_AUTH).setIsFullscreen(!0).build(),(new c.SidebarMenuItemBuilder).setKey(d.SidebarMenuItemsKey.SETTINGS_USERS).setTitle(this.gettext("Users",void 0,"title")).setIcon(new r.IconInfo("material-icons","person")).setIsVisible(function(){return!!e.UserService.isAdmin()&&(!!e.LicenseService.isFeatureEnabled(l.LicenseFeatureType.USER_MANAGEMENT)||e.LicenseService.isLicenseRegisteredUsersAvailable()&&e.LicenseService.isLicenseRegisteredUsersExceeded())}).setTemplate(u.TemplateName.USERS_SETTINGS).setClassCallback(function(){return"sidebar-menu-item-settings-users"}).setOrder(s.SidebarMenuItemsOrder.SETTINGS_USERS).setIsFullscreen(!0).build(),(new c.SidebarMenuItemBuilder).setKey(d.SidebarMenuItemsKey.SETTINGS_GROUPS).setTitle(this.gettext("Groups",void 0,"title")).setIcon(new r.IconInfo("material-icons","group")).setIsVisible(function(){if(!e.UserService.isAdmin())return!1;var t=e.UserService.userInfo,n=e.GroupService.getGroupsAsArray();return t&&t.checkAttribute&&t.checkAttribute(a.GroupAttributes.CAN_CREATE_USER_GROUPS)||n&&n.some(function(t){return t.security.canWrite})}).setTemplate(u.TemplateName.GROUPS_SETTINGS).setClassCallback(function(){return"sidebar-menu-item-settings-groups"}).setOrder(s.SidebarMenuItemsOrder.SETTINGS_GROUPS).setIsFullscreen(!0).build(),(new c.SidebarMenuItemBuilder).setKey(d.SidebarMenuItemsKey.SETTINGS_DATASET_MANAGEMENT).setTitle(this.gettext("Dataset Management",void 0,"title")).setIcon(new r.IconInfo("material-icons","dns")).setIsVisible(function(){return e.UserService.isAdmin()}).setTemplate(u.TemplateName.DATA_SETTINGS).setClassCallback(function(){return"sidebar-menu-item-settings-datasets"}).setOrder(s.SidebarMenuItemsOrder.SETTINGS_DATASET_MANAGEMENT).setIsFullscreen(!0).build(),(new c.SidebarMenuItemBuilder).setKey(d.SidebarMenuItemsKey.SETTINGS_HIDDEN_IMAGES).setTitle(this.gettext("Hidden Images",void 0,"title")).setIcon(new r.IconInfo("material-icons","visibility_off")).setIsVisible(function(){return e.UserService.isAdmin()}).setTemplate(u.TemplateName.HIDDENIMAGE_SETTINGS).setClassCallback(function(){return"sidebar-menu-item-settings-images"}).setOrder(s.SidebarMenuItemsOrder.SETTINGS_HIDDEN_IMAGES).setIsFullscreen(!0).build(),(new c.SidebarMenuItemBuilder).setKey(d.SidebarMenuItemsKey.SETTINGS_AUDIT).setTitle(this.gettext("Audit",void 0,"title")).setIcon(new r.IconInfo("material-icons","assignment")).setIsVisible(function(){return e.UserService.canViewAuditPanel()}).setTemplate(u.TemplateName.AUDIT_SETTINGS).setOrder(s.SidebarMenuItemsOrder.SETTINGS_AUDIT).setIsFullscreen(!0).build()],i=(new c.SidebarMenuItemBuilder).setKey(d.SidebarMenuItemsKey.SETTINGS).setTitle(this.gettext("Settings",void 0,"title")).setIcon(new r.IconInfo("material-icons","settings")).setIsVisible(function(){var t=n.some(function(t){return t.isVisible()});return!(!t||!e.SidebarMenuService.isItemOnStack(i))||!!e.ConfigService.getBoolean(o.Configs.MENU_SETTINGS_VISIBLE,!0)&&t}).setTemplate(u.TemplateName.SETTINGS).setClassCallback(function(){return"sidebar-menu-item-settings"}).setOrder(s.SidebarMenuItemsOrder.SETTINGS).setItems(n).build();this.SidebarMenuService.addItem(i)},t.ɵfac=function(e){return new(e||t)(g.ɵɵinject(m.UserService),g.ɵɵinject(v.SidebarMenuService),g.ɵɵinject(y.ConfigService),g.ɵɵinject(b.LicenseService),g.ɵɵinject(w.InstanceInformationService),g.ɵɵinject(S.GroupService),g.ɵɵinject("gettext"))},t.ɵprov=g.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.SettingsModule=x,g.ɵsetClassMetadata(x,[{type:h.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:m.UserService},{type:v.SidebarMenuService},{type:y.ConfigService},{type:b.LicenseService},{type:w.InstanceInformationService},{type:S.GroupService},{type:void 0,decorators:[{type:h.Inject,args:["gettext"]}]}]},null),i.module("IVWebApp").service("SettingsModule",p.downgradeInjectable(x))},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t){this.datasetName=t}return t.prototype.toData=function(){var t={};return t.dataset_name=this.datasetName,t},t.prototype.fillDto=function(t){t.dataset_name=this.datasetName},t}();e.DatasetManagementRequest=o;var a=function(t){function e(e,n,i,r){var o=t.call(this,e)||this;return o.datasetLocation=n,o.datasetOrientation=i,o.referenceDatasetId=r,o}return r(e,t),e.prototype.toData=function(){var e={};return t.prototype.fillDto.call(this,e),e.dataset_location=this.datasetLocation,e.dataset_orientation=this.datasetOrientation,e.reference_dataset_id=this.referenceDatasetId,e},e}(o);e.DatasetManagementImportRequest=a},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){this.name=t.name,this.inDatabase=t.in_database,this.onDisk=t.on_disk},a=function(t){function e(e){var n=t.call(this,e)||this;return n.color=e.color,n.title=e.title,n.inBundleInDatabase=e.in_bundle_in_database,n.uniqueLocationCount=e.unique_location_count,n.locationCount=e.location_count,n}return r(e,t),e}(o);e.DatasetOnDisk=a;var s=function(t){function e(e){var n=t.call(this,e)||this;return n.serial=e.serial,n.file=e.file,n.nodesInDatabase=e.nodes_in_database,n.edgesInDatabase=e.edges_in_database,n.navgraphOnDisk=e.navgraph_on_disk,n.mapsInDatabase=e.maps_in_database,n.mapsOnDisk=e.maps_on_disk,n.floorMapsOnDisk=e.floor_maps_on_disk,n.datasetsInDatabase=e.datasets_in_database,n.datasetsWithSiteModel=e.datasets_with_site_model,n.wifiInDatabase=e.wifi_in_database,n.managed=e.managed,n.newMaps=e.new_maps,n.uniqueLocationsCount=e.unique_locations_count,n.locationsCount=e.locations_count,n.correctVisualIndexVersion=e.correct_visual_index_version,n}return r(e,t),e}(o);e.BundleOnDisk=s},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(e){var n=t.call(this)||this;return n.coloredMap=!1,n.bundleFilename=e,n}return r(e,t),e.prototype.toData=function(){var e=t.prototype.toData.call(this);return e.colored=this.coloredMap,e},e.prototype.setColoredMap=function(t){this.coloredMap=t},e}(n(432).BundleManagementRequest);e.MapAndNavgraphGenerationRequest=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1592),n(1593),n(1595),n(1597),n(1602),n(1622),n(1627),n(1633),n(1635);var r=function(){function t(t,e){var n=this;this.$scope=t,this.DatasetManagementService=e,this.DatasetManagementService.showModalOnRequestFinish=!1,this.$scope.$on("$destroy",function(){n.DatasetManagementService.dataManagementRequestRunning&&(n.DatasetManagementService.showModalOnRequestFinish=!0)})}return t.$inject=["$scope","DatasetManagementService"],t}(),o=function(){function t(){this.restrict="E",this.controller=r,this.templateUrl="DatasetManagementUI/DatasetManagement.html"}return t.factory=function(){return function(){return new t}},t}();e.DatasetManagementDirective=o,i.module("IVWebApp").directive("datasetManagement",o.factory())},function(t,e){var n="DatasetManagementUI/DatasetManagement.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div>\n\t<modal>\n\t\t<bundle-converter></bundle-converter>\n\t</modal>\n\n\t<div class="container-fluid row">\n\t\t<disk-space class="col-md-3 col-xs-12"></disk-space>\n\t\t<pano-count class="col-md-offset-1 col-md-3 col-xs-12"></pano-count>\n\t</div>\n\n\t<bundle-list></bundle-list>\n\n\t<datasets-without-bundle-list></datasets-without-bundle-list>\n\n\t<point-cloud-import></point-cloud-import>\n\n\t<job-list></job-list>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1594);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,".z-index-1{box-shadow:none;position:relative;z-index:1}.z-index-2{box-shadow:0 1.5px 4px rgba(0,0,0,.24),0 1.5px 6px rgba(0,0,0,.12);position:relative;z-index:5}.z-index-3{box-shadow:0 3px 12px rgba(0,0,0,.23),0 3px 12px rgba(0,0,0,.16);position:relative;z-index:10}.z-index-4{box-shadow:0 6px 12px rgba(0,0,0,.23),0 10px 40px rgba(0,0,0,.19);position:relative;z-index:15}.z-index-5{box-shadow:0 10px 20px rgba(0,0,0,.22),0 14px 56px rgba(0,0,0,.25);position:relative;z-index:20}.front-element{z-index:1031}.full-window{position:fixed;margin:0;padding:0;left:0;right:0;top:0;bottom:0;z-index:1029;border-radius:0}.full-window-scroll{max-height:100vh}.full-window-scroll,.panel-autoscroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.panel-autoscroll{max-height:80vh}.autoscroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.fixed-top-right{position:fixed;top:10px;right:0}.center-vertical{position:absolute;top:50%;transform:translateY(-50%)}.float-left{float:left}.float-right{float:right}.margin-top-small,bundle-list>.panel .file-row:not(:first-of-type),datasets-without-bundle-list>.panel .file-row:not(:first-of-type),job-list>.panel .file-row:not(:first-of-type),point-cloud-import>.panel .file-row:not(:first-of-type){margin-top:5px!important}.margin-left-small{margin-left:5px!important}.margin-right-small{margin-right:5px!important}.margin-bottom-small{margin-bottom:5px!important}.margin-top,bundle-list>.panel .file-row:first-of-type,datasets-without-bundle-list>.panel .file-row:first-of-type,job-list>.panel .file-row:first-of-type,point-cloud-import>.panel .file-row:first-of-type{margin-top:15px!important}.margin-left{margin-left:15px!important}.margin-right{margin-right:15px!important}.margin-bottom{margin-bottom:15px!important}.margin-top-big{margin-top:25px!important}.margin-bottom-big{margin-bottom:25px!important}.no-margin{margin:0!important}.no-margin-bottom{margin-bottom:0!important}.padding-horizontal{padding-left:15px!important;padding-right:15px!important}.padding-top,.padding-vertical{padding-top:15px!important}.padding-bottom,.padding-vertical{padding-bottom:15px!important}.no-padding-top{padding-top:0!important}.no-padding-bottom{padding-bottom:0!important}.no-padding-horizontal,.no-padding-left{padding-left:0!important}.no-padding-horizontal,.no-padding-right{padding-right:0!important}.no-padding{padding:0!important}.border{border:1px solid #e6e6e6}.border-top{border-top:1px solid #e6e6e6}.border-bottom{border-bottom:1px solid #e6e6e6}.border-left{border-left:1px solid #e6e6e6}.border-right{border-right:1px solid #e6e6e6}.no-border{border:none;border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.no-border-width{border:none}.border-radius{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.border-radius,.border-radius-top{border-top-left-radius:4px!important;border-top-right-radius:4px!important}.border-radius-bottom{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.no-border-radius,bundle-list>.panel,bundle-list>.panel>.panel-heading,datasets-without-bundle-list>.panel,datasets-without-bundle-list>.panel>.panel-heading,job-list>.panel,job-list>.panel>.panel-heading,point-cloud-import>.panel,point-cloud-import>.panel>.panel-heading{border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.indoorViewer.ios .no-hover-ios:hover{background-color:inherit!important}.no-shadow,bundle-list>.panel,datasets-without-bundle-list>.panel,job-list>.panel,point-cloud-import>.panel{box-shadow:none!important}.clear-background{border:0}.clear-background,.no-background{background:none!important}.no-overflow{overflow:hidden}.clickable,.clickable:hover{cursor:pointer}bundle-list>.panel,datasets-without-bundle-list>.panel,job-list>.panel,point-cloud-import>.panel{border-right:none;border-bottom:none;border-left:none}",""]),t.exports=e},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(1596);var a=n(185);n(205);var s=n(7),c=function(t){function e(e,n,i,r,o,a,s){var c=t.call(this,e,n,i,r)||this;return c.BundleRepository=e,c.DatasetRepository=o,c.gettext=a,c.DatasetManagementService=s,c}return r(e,t),e.$inject=["BundleRepository","gettextCatalog","$element","ErrorService","DatasetRepository","gettext","DatasetManagementService"],Object.defineProperty(e.prototype,"unconvertedBundles",{get:function(){var t=this;return s.sortBy(s.filter(this.DatasetManagementService.unmanagedBundles,function(e){return!t.wasBundleConvertedBefore(e)}),function(e){return t.getDisplayName(e)})},enumerable:!0,configurable:!0}),e.prototype.isSelectedBundle=function(t){return t===this.selectedBundle},e.prototype.isNoBundleSelected=function(){return this.DatasetManagementService.unmanagedBundles.indexOf(this.selectedBundle)<0},e.prototype.selectBundle=function(t){this.wasBundleConvertedBefore(t)||(this.selectedBundle=t)},e.prototype.wasBundleConvertedBefore=function(t){return this.DatasetManagementService.bundles.some(function(e){return e.serial===t.serial})},e.prototype.getTitle=function(t){return this.wasBundleConvertedBefore(t)?this.gettextCatalog.getString("This bundle file has already been imported.",void 0,void 0):t.serial},e.prototype.getDisplayName=function(t){return t.name?t.name:t.file},e.prototype.convert=function(){var t=this;this.reportErrorInline(this.promiseProgressWrapper.wrap(this.DatasetManagementService.convertBundle(this.selectedBundle.file))).then(function(){return t.exitEditor(),t.DatasetManagementService.refresh()}).catch(function(){})},e}(a.EntityEditorController);e.BundleConverterController=c;var l=function(){function t(){this.restrict="E",this.templateUrl="Bundle/BundleConverter.html",this.controller=c,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.BundleConverterDirective=l,o.module("IVWebApp").directive("bundleConverter",l.factory())},function(t,e,n){var i="Bundle/BundleConverter.html",r='\x3c!-- Bundle Converter Modal --\x3e\n<div class="modal fade" id="convertBundle" tabindex="-1" role="dialog"\n aria-labelledby="convertBundle" aria-hidden="true" data-backdrop="static">\n\t<div class="modal-dialog">\n\t\t<div class="modal-content">\n\n\t\t\t<div class="modal-header">\n\t\t\t\t<img class="menu-close-button ic_svg" data-dismiss="modal"\n\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}">\n\t\t\t\t<h4 translate translate-context="title">\n\t\t\t\t\tImport Bundle File from Disk\n\t\t\t\t</h4>\n\t\t\t</div>\n\n\t\t\t<div class="modal-body">\n\n\t\t\t\t<ul class="margin-bottom-small list-group" ng-repeat="bundle in vm.unconvertedBundles">\n\t\t\t\t\t<button class="button list-group-item list-group-item-action"\n\t\t\t\t\t ng-class="{active: vm.isSelectedBundle(bundle)}"\n\t\t\t\t\t ng-click="vm.selectBundle(bundle)">\n\t\t\t\t\t\t<span iv-tooltip="{{vm.getTitle(bundle)}}"\n\t\t\t\t\t\t data-container="false"\n\t\t\t\t\t\t data-placement="top">\n\t\t\t\t\t\t\t{{vm.getDisplayName(bundle)}}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</button>\n\t\t\t\t</ul>\n\n\t\t\t</div>\n\n\t\t\t<div class="modal-footer">\n\t\t\t\t<cancel-button data-dismiss="modal"></cancel-button>\n\t\t\t\t<default-button ng-disabled="vm.isNoBundleSelected()"\n\t\t\t\t ng-click="vm.convert()">\n\t\t\t\t\t<span translate translate-context="title">Import</span>\n\t\t\t\t</default-button>\n\t\t\t</div>\n\n\t\t</div>\n\t</div>\n</div>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1598),n(615);var r=function(){function t(t,e,n){var i=this;this.StatusCheckService=t,this.fetchDiskSpaceInfo();var r=e.refreshed.connect(function(){return i.fetchDiskSpaceInfo()});n.$on("$destroy",function(){return r.disconnect()})}return t.$inject=["StatusCheckService","DatasetManagementService","$scope"],Object.defineProperty(t.prototype,"usedDiskSpace",{get:function(){return this.totalDiskSpace-this.freeDiskSpace},enumerable:!0,configurable:!0}),t.prototype.fetchDiskSpaceInfo=function(){var t=this;this.StatusCheckService.fetchServerHealth().then(function(e){var n=e.components.diskSpace.details;t.setDiskSpace(n.free,n.total)}).catch(function(){t.setDiskSpace(0,0)})},t.prototype.setDiskSpace=function(t,e){this.freeDiskSpace=t,this.totalDiskSpace=e},t.prototype.isInfoAvailable=function(){return void 0!==this.freeDiskSpace&&void 0!==this.totalDiskSpace},t.prototype.isInfoValid=function(){return this.isInfoAvailable()&&this.totalDiskSpace>0},t}();e.DiskSpaceController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="DatasetManagementUI/DiskSpace.html",this.controller=r,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.DiskSpaceDirective=o,i.module("IVWebApp").directive("diskSpace",o.factory())},function(t,e){var n="DatasetManagementUI/DiskSpace.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'\x3c!--Fetching in progress--\x3e\n<span ng-if="!vm.isInfoAvailable()"\n translate translate-context="Text indicating the disk usage is being calculated">\n\tCounting...\n</span>\n\x3c!--Fetching error--\x3e\n<span ng-if="vm.isInfoAvailable() && !vm.isInfoValid()" translate>\n\tCould not fetch disk space info from the server\n</span>\n\x3c!--Disk space info--\x3e\n<div ng-if="vm.isInfoValid()">\n\t<limit-display total="vm.totalDiskSpace" used="vm.usedDiskSpace" is-data="true">\n\t\t<span translate translate-context="title">Disk Capacity</span>\n\t</limit-display>\n</div>\n')}]),t.exports=n},function(t,e){var n="LimitDisplay/LimitDisplay.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="title" ng-transclude>\n</div>\n<div class="flex-row">\n\t<div>\n\t\t<div ng-if="vm.isData" class="highlight-text">\n\t\t\t{{vm.total | uom:vm.DATA:1}}\n\t\t</div>\n\t\t<div ng-if="!vm.isData" class="highlight-text">\n\t\t\t{{vm.total}}\n\t\t</div>\n\t\t<div class="small-text" translate translate-context="As in: amount subscribed">\n\t\t\tSubscribed\n\t\t</div>\n\t</div>\n\t<div>\n\t\t<div ng-if="vm.isData" class="highlight-text">\n\t\t\t{{vm.used | uom:vm.DATA:1}}\n\t\t</div>\n\t\t<div ng-if="!vm.isData" class="highlight-text">\n\t\t\t{{vm.used}}\n\t\t</div>\n\t\t<div class="small-text" translate translate-context="As in: amount used">\n\t\t\tUsed\n\t\t</div>\n\t</div>\n\t<div>\n\t\t<div ng-if="vm.isData" class="highlight-text">\n\t\t\t{{vm.total - vm.used | uom:vm.DATA:1}}\n\t\t</div>\n\t\t<div ng-if="!vm.isData" class="highlight-text">\n\t\t\t{{vm.total - vm.used}}\n\t\t</div>\n\t\t<div class="small-text" translate translate-context="As in: amount free">\n\t\t\tFree\n\t\t</div>\n\t</div>\n</div>\n<div>\n\t<div class="progress">\n\t\t<div class="progress-bar" role="progressbar" ng-style="{width: vm.percent + \'%\'}"\n\t\t ng-class="{\'progress-bar-warning\': vm.isWarning, \'progress-bar-danger\': vm.isDanger}">\n\t\t</div>\n\t</div>\n\t<div class="flex-row">\n\t\t<div class="small-text" translate translate-context="As in: amount used">\n\t\t\tUsed\n\t\t</div>\n\t\t<div class="small-text">\n\t\t\t{{vm.percent | number:0}}%\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1601);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"limit-display{padding:1.25em;color:#4a4a4a}limit-display .title{font-size:1.1em;margin-bottom:1.25em}limit-display .flex-row{display:flex;justify-content:space-between}limit-display .highlight-text{font-size:1.2em;color:#2e88b3}limit-display .small-text{font-size:.8em}limit-display .progress{margin-top:1.25em;margin-bottom:.25em;height:.75em}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1603),n(1605),n(1609),n(205),n(434),n(345);var r=n(283),o=n(21);n(1610),n(1618),n(1620);var a=n(8),s=function(){function t(t,e,n,i){var r=this;this.DatasetManagementService=t,this.BundleRepository=e,this.JobListService=n,this.LicenseService=i,this.bundles=this.DatasetManagementService.bundles,this.progress=this.DatasetManagementService.progress,this.panoCountEnforced=!1,this.unmanagedBundles=this.DatasetManagementService.unmanagedBundles,this.visualIndexUploadCallback=function(t){r.visualIndexUploader=t},this.DatasetManagementService.refresh(),this.BundleRepository.findAll().catch(a.handleWarning),this.panoCountEnforced=i.isLicenseMaxLocationsAvailable()}return t.$inject=["DatasetManagementService","BundleRepository","JobListService","LicenseService"],t.prototype.createBundle=function(){this.bundleToEdit=this.BundleRepository.create(),i.element("#editBundle").modal("show")},t.prototype.importBundle=function(t){this.DatasetManagementService.importBundle(t),o.TrackingService.trackBundleLoaded()},t.prototype.removeBundleFromDisk=function(t){this.DatasetManagementService.removeBundleFromDisk(t).catch(function(){})},t.prototype.unloadBundle=function(t){this.DatasetManagementService.unloadBundle(t).catch(function(){}),o.TrackingService.trackBundleUnloaded()},t.prototype.convertBundle=function(t){this.DatasetManagementService.convertBundle(t.file).catch(function(){})},t.prototype.convertNewBundle=function(){i.element("#convertBundle").modal("show")},t.prototype.editBundle=function(t){this.bundleToEdit=this.BundleRepository.create(),this.bundleToEdit.copy(this.BundleRepository.findCachedBySerial(t.serial)),i.element("#editBundle").modal("show")},t.prototype.downloadZip=function(t){this.DatasetManagementService.downloadZip(t),o.TrackingService.trackBundleDownload()},t.prototype.showMapCreationModal=function(t){i.element("#create-maps-"+t.serial).modal("show")},t.prototype.deleteVisualIndex=function(t){this.DatasetManagementService.deleteVisualIndex(t).catch(a.handleWarning),t.correctVisualIndexVersion=void 0},t.prototype.doesBundleContainVisualIndex=function(t){return void 0!==t.correctVisualIndexVersion},t.prototype.importMaps=function(t){this.DatasetManagementService.importMaps(t)},t.prototype.unloadMaps=function(t){this.DatasetManagementService.unloadMaps(t).catch(function(){}),o.TrackingService.trackMapsRemoved()},t.prototype.downloadMaps=function(t){!1!==t.floorMapsOnDisk?(this.DatasetManagementService.downloadMaps(t),o.TrackingService.trackMapsDownloaded()):i.element("#floor-maps-generation-modal-"+t.serial).modal("show")},t.prototype.generateFloorMaps=function(t){i.element("#create-floor-maps-"+t.serial).modal("show")},t.prototype.createNavgraph=function(t){this.DatasetManagementService.createNavgraph(t),o.TrackingService.trackNavGraphCreated()},t.prototype.importNavgraph=function(t){this.DatasetManagementService.importNavgraph(t),o.TrackingService.trackNavGraphImported()},t.prototype.unloadNavgraph=function(t){this.DatasetManagementService.unloadNavgraph(t).catch(function(){}),o.TrackingService.trackNavGraphRemoved()},t.prototype.importWifi=function(t){this.DatasetManagementService.importWifi(t),o.TrackingService.trackNavDataImported()},t.prototype.unloadWifi=function(t){this.DatasetManagementService.unloadWifi(t).catch(function(){}),o.TrackingService.trackNavDataRemoved()},t.prototype.getSiteModelWarning=function(t){return this.DatasetManagementService.getSiteModelWarning(t)},t.prototype.isConvertNewBundleVisible=function(){var t=this;return this.unmanagedBundles.length>0&&!this.unmanagedBundles.every(function(e){return t.bundles.some(function(t){return t.serial===e.serial})})},t.prototype.isDataManagementRunning=function(){return this.JobListService.progress.jobRunning||this.DatasetManagementService.dataManagementRequestRunning||this.DatasetManagementService.dataManagementJobTriggered||this.DatasetManagementService.visualIndexUploadOngoing},t.prototype.isBundleImportJobRunning=function(t){return this.isJobRunning(t,r.JobName.BUNDLE_IMPORT_JOB)},t.prototype.isMapsAndNavgraphGeneratorJobRunning=function(t){return this.isJobRunning(t,r.JobName.MAPS_AND_NAVGRAPH_GENERATOR_JOB)},t.prototype.isMapsGeneratorJobRunning=function(t){return this.isJobRunning(t,r.JobName.MAPS_GENERATOR_JOB)},t.prototype.isMapsTilerJobRunning=function(t){return this.isJobRunning(t,r.JobName.FLOOR_MAPS_TILER_JOB)},t.prototype.areThereMaps=function(t){return 0!==t.mapsInDatabase&&t.newMaps},t.prototype.isWifiImportJobRunning=function(t){return this.isJobRunning(t,r.JobName.BUNDLE_WIFI_IMPORT_JOB)},t.prototype.isNavgraphImportJobRunning=function(t){return this.isJobRunning(t,r.JobName.BUNDLE_NAVGRAPH_IMPORT_JOB)},t.prototype.isVisualIndexUploadOngoing=function(){return this.DatasetManagementService.visualIndexUploadOngoing},t.prototype.isNavgraphGeneratorJobRunning=function(t){return this.isJobRunning(t,r.JobName.NAVGRAPH_GENERATOR_JOB)},t.prototype.isLoadDisabled=function(t){return this.isDataManagementRunning()||this.bundleExceedsPanoLimit(t)},t.prototype.showExceedsWarning=function(t){return!t.inDatabase&&this.bundleExceedsPanoLimit(t)},t.prototype.showVisualIndexIncorrectVersionWarning=function(t){return void 0!==t.correctVisualIndexVersion&&!1===t.correctVisualIndexVersion},t.prototype.bundleExceedAmount=function(t){if(!this.panoCountEnforced)return 0;var e=this.LicenseService.license,n=e.maxLocations-e.currentLocations;return t.uniqueLocationsCount-n},t.prototype.bundleExceedsPanoLimit=function(t){return this.bundleExceedAmount(t)>0},t.prototype.isJobRunning=function(t,e){return t===this.DatasetManagementService.currentBundle&&this.JobListService.jobs.some(function(t){return t.busy&&t.name===e})},t}();e.BundleListController=s;var c=function(){function t(){this.restrict="E",this.templateUrl="DatasetManagementUI/BundleList.html",this.controller=s,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.BundleListDirective=c,i.module("IVWebApp").directive("bundleList",c.factory())},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1604);var r=function(){function t(){this.restrict="E",this.templateUrl="Core/ContinueConfirmation/ContinueConfirmation.html",this.transclude={buttonContent:"?buttonContent"},this.scope={modalId:"@",onConfirmCallback:"&",buttonDisabled:"=?",buttonClass:"@?"}}return t.factory=function(){return function(){return new t}},t}();e.ContinueConfirmationDirective=r,i.module("IVWebApp").directive("continueConfirmation",r.factory())},function(t,e){var n="Core/ContinueConfirmation/ContinueConfirmation.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'\x3c!-- Continue confirm Modal --\x3e\n<modal>\n\t<div class="modal fade" id="{{modalId}}" tabindex="-1" role="dialog"\n\t aria-labelledby="{{modalId}}" aria-hidden="true">\n\t\t<div class="modal-dialog" role="document">\n\t\t\t<div class="modal-content">\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<h4 translate translate-context="title">Confirm</h4>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-body">\n\t\t\t\t\t<div ng-transclude>\n\t\t\t\t\t\t<span translate>Are you sure you want to continue?</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-footer">\n\t\t\t\t\t<cancel-button class="btn btn-secondary" data-dismiss="modal"></cancel-button>\n\t\t\t\t\t<default-button class="btn btn-primary" data-dismiss="modal"\n\t\t\t\t\t ng-click="onConfirmCallback()">\n\t\t\t\t\t\t<div ng-transclude="buttonContent">\n\t\t\t\t\t\t\t<span translate translate-context="title">\n\t\t\t\t\t\t\t\tConfirm\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</default-button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n')}]),t.exports=n},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(1606),n(1607);var a=n(185),s=n(7),c=n(220),l=n(89),u=n(21),d=function(t){function e(e,n,i,r,o,a,s,u){var d=t.call(this,e,n,i,r)||this;return d.BundleRepository=e,d.DatasetRepository=o,d.gettext=a,d.DatasetManagementService=s,d.TrackingService=u,d.removeDatasetsFromDisk=!1,d.removePromiseProgressWrapper=new l.PromiseProgressWrapper,d.selectedDatasets=new Set,d.bundleTreeConfig=c.DatasetTreeConfigurationFactory.createBundleEditorConfig(a("Datasets in Bundle",void 0,"title")),d.noBundleTreeConfig=c.DatasetTreeConfigurationFactory.createBundleEditorConfig(a("Datasets Without Bundle",void 0,"title")),d}return r(e,t),e.$inject=["BundleRepository","gettextCatalog","$element","ErrorService","DatasetRepository","gettext","DatasetManagementService","TrackingService"],Object.defineProperty(e.prototype,"model",{get:function(){return this._model},set:function(t){this._model=t,this.removeDatasetsFromDisk=!1,this.updateDatasets()},enumerable:!0,configurable:!0}),e.prototype.areAllDatasetsSelected=function(t){var e=this;return s.every(t,function(t){return e.isDatasetSelected(t)})},e.prototype.areNoDatasetsSelected=function(t){var e=this;return s.every(t,function(t){return!e.isDatasetSelected(t)})},e.prototype.deselectDatasets=function(t){for(var e=0,n=t;e<n.length;e++){var i=n[e];this.selectedDatasets.delete(i)}},e.prototype.selectDatasets=function(t){for(var e=0,n=t;e<n.length;e++){var i=n[e];this.selectedDatasets.add(i)}},e.prototype.toggleSelection=function(t){this.isDatasetSelected(t)?this.deselectDatasets([t]):this.selectDatasets([t])},e.prototype.isDatasetSelected=function(t){return this.selectedDatasets.has(t)},e.prototype.isSavedBundle=function(){return this.model&&void 0!==this.model.id},e.prototype.areAnyBundleDatasetsSelected=function(){var t=this;return this.bundleDatasets.some(function(e){return t.isDatasetSelected(e)})},e.prototype.areAnyNoBundleDatasetsSelected=function(){var t=this;return this.noBundleDatasets.some(function(e){return t.isDatasetSelected(e)})},e.prototype.addSelectedDatasetsToBundle=function(){var t=this,e=s.filter(this.noBundleDatasets,function(e){return t.isDatasetSelected(e)});e.push.apply(e,this.bundleDatasets),this.bundleDatasets=e,this.noBundleDatasets=s.filter(this.noBundleDatasets,function(e){return!t.isDatasetSelected(e)}),this.datasetsChanged=!0},e.prototype.removeSelectedDatasetsFromBundle=function(){var t=this,e=s.filter(this.bundleDatasets,function(e){return t.isDatasetSelected(e)});e.push.apply(e,this.noBundleDatasets),this.noBundleDatasets=e,this.bundleDatasets=s.filter(this.bundleDatasets,function(e){return!t.isDatasetSelected(e)}),this.datasetsChanged=!0},e.prototype.saveDatasetsAndBundle=function(){var t=this;this.saveBundle().then(function(e){return t.datasetsChanged?(t.datasetsChanged=!1,t.reportErrorInline(t.promiseProgressWrapper.wrap(t.saveDatasets(e)))):Promise.resolve([])}).then(function(){return t.exitEditor(),t.refreshData()}).catch(function(){})},e.prototype.saveBundle=function(){return this.model.id?u.TrackingService.trackBundleEdited():u.TrackingService.trackBundleCreated(),this.reportErrorInline(this.promiseProgressWrapper.wrap(this.BundleRepository.save(this.model,!1).then(function(t){return t[0]})))},e.prototype.saveDatasets=function(t){for(var e=0,n=this.bundleDatasets;e<n.length;e++)n[e].bundle=t;for(var i=0,r=this.noBundleDatasets;i<r.length;i++)r[i].bundle=void 0;var o=s.concat(this.noBundleDatasets,this.bundleDatasets);return this.DatasetRepository.save(o,!1)},e.prototype.updateDatasets=function(){var t=this;this.bundleDatasets=this.model&&this.model.id?s.filter(this.DatasetRepository.data,function(e){return e.bundle&&e.bundle.id===t.model.id}):[],this.noBundleDatasets=s.filter(this.DatasetRepository.data,function(t){return void 0===t.bundle})},e.prototype.remove=function(){var t=this;return this.removePromiseProgressWrapper.wrap(this.removeData().then(function(){return t.removeFinally()}).catch(function(){return t.removeFinally()}))},e.prototype.removeData=function(){var t=this,e=[this.repository.remove(this.model)];if(this.removeDatasetsFromDisk)for(var n=function(n){var r=i.DatasetManagementService.datasets.find(function(t){return t.name===n.name});if(!r)return"continue";e.push(i.DatasetManagementService.unloadDataset(r,!0).then(function(){return t.DatasetManagementService.removeDatasetFromDisk(r,!0)}))},i=this,r=0,o=this.bundleDatasets;r<o.length;r++)n(o[r]);return Promise.all(e)},e.prototype.removeFinally=function(){this.exitEditor(),this.refreshData()},e.prototype.refreshData=function(){this.DatasetManagementService.refresh()},e.prototype.isRemovingInProgress=function(){return this.removePromiseProgressWrapper.isInProgress},e}(a.EntityEditorController);e.BundleEditorController=d;var p=function(){function t(){this.restrict="E",this.templateUrl="Bundle/BundleEditor.html",this.controller=d,this.controllerAs="vm",this.scope=!0,this.bindToController={model:"="}}return t.factory=function(){return function(){return new t}},t}();e.BundleEditorDirective=p,o.module("IVWebApp").directive("bundleEditor",p.factory())},function(t,e,n){var i="Bundle/BundleEditor.html",r='\x3c!-- Bundle Editor Modal --\x3e\n<div class="modal fade" id="editBundle" tabindex="-1" role="dialog" aria-labelledby="editBundle"\n aria-hidden="true" data-backdrop="static">\n\t<div class="modal-dialog">\n\t\t<div class="modal-content">\n\n\t\t\t<div class="modal-header">\n\t\t\t\t<img class="menu-close-button ic_svg" data-dismiss="modal"\n\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}">\n\t\t\t\t<h4 ng-if="vm.isSavedBundle()" translate translate-context="title">\n\t\t\t\t\tEdit Bundle\n\t\t\t\t</h4>\n\t\t\t\t<h4 ng-if="!vm.isSavedBundle()" translate translate-context="title">\n\t\t\t\t\tCreate Bundle\n\t\t\t\t</h4>\n\t\t\t</div>\n\n\t\t\t<div class="modal-body">\n\t\t\t\t<div class="tab-content">\n\t\t\t\t\t<div role="tabpanel" class="tab-pane active">\n\t\t\t\t\t\t<form class="form-horizontal" role="form">\n\t\t\t\t\t\t\t\x3c!--Bundle Name--\x3e\n\t\t\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t\t\t<label class="col-sm-2 control-label" for="bundleTitleEdit"\n\t\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\t\tName\n\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t<div class="col-sm-10">\n\t\t\t\t\t\t\t\t\t<input class="form-control" id="bundleTitleEdit" type="text"\n\t\t\t\t\t\t\t\t\t ng-model="vm.model.name"\n\t\t\t\t\t\t\t\t\t placeholder="{{\'Enter name of bundle\'|translate}}"\n\t\t\t\t\t\t\t\t\t init-focus>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\x3c!--Permissions Editor --\x3e\n\t\t\t\t\t\t\t<permission-editor model="vm.model"\n\t\t\t\t\t\t\t model-type="\'bundle\'"\n\t\t\t\t\t\t\t col-span="2">\n\t\t\t\t\t\t\t</permission-editor>\n\t\t\t\t\t\t</form>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<hr>\n\t\t\t\t<div class="row margin-top-big">\n\t\t\t\t\t<div class="col-sm-5">\n\t\t\t\t\t\t<dataset-tree parent-controller="vm"\n\t\t\t\t\t\t datasets="vm.bundleDatasets"\n\t\t\t\t\t\t tree-config="vm.bundleTreeConfig"\n\t\t\t\t\t\t ng-if="vm.bundleDatasets.length">\n\t\t\t\t\t\t</dataset-tree>\n\t\t\t\t\t\t<h4 translate\n\t\t\t\t\t\t ng-if="!vm.bundleDatasets.length">\n\t\t\t\t\t\t\tNo datasets added to the bundle\n\t\t\t\t\t\t</h4>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="col-sm-2">\n\t\t\t\t\t\t<div class="text-center mt-40">\n\t\t\t\t\t\t\t<button class="btn btn-default"\n\t\t\t\t\t\t\t ng-click="vm.addSelectedDatasetsToBundle()"\n\t\t\t\t\t\t\t ng-disabled="!vm.areAnyNoBundleDatasetsSelected()"\n\t\t\t\t\t\t\t title="{{\'Add selected datasets to bundle\'|translate}}">\n\t\t\t\t\t\t\t\t<i class="fa fa-arrow-left"></i>\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class="text-center mt-10">\n\t\t\t\t\t\t\t<button class="btn btn-default"\n\t\t\t\t\t\t\t ng-click="vm.removeSelectedDatasetsFromBundle()"\n\t\t\t\t\t\t\t ng-disabled="!vm.areAnyBundleDatasetsSelected()"\n\t\t\t\t\t\t\t title="{{\'Remove selected datasets from bundle\'|translate}}">\n\t\t\t\t\t\t\t\t<i class="fa fa-arrow-right"></i>\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="col-sm-5">\n\t\t\t\t\t\t<dataset-tree parent-controller="vm"\n\t\t\t\t\t\t datasets="vm.noBundleDatasets"\n\t\t\t\t\t\t tree-config="vm.noBundleTreeConfig"\n\t\t\t\t\t\t ng-if="vm.noBundleDatasets.length">\n\t\t\t\t\t\t</dataset-tree>\n\t\t\t\t\t\t<h4 translate\n\t\t\t\t\t\t ng-if="!vm.noBundleDatasets.length">\n\t\t\t\t\t\t\tNo datasets without any bundle available\n\t\t\t\t\t\t</h4>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class="row margin-top-big" ng-show="vm.error">\n\t\t\t\t\t<div class="col-sm-12">\n\t\t\t\t\t\t<span class="text-danger">\n\t\t\t\t\t\t\t{{vm.error.text}}: {{vm.error.statusText}} ({{vm.error.status}})\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<div ng-show="!!vm.error.details">\n\t\t\t\t\t\t\t{{vm.error.details}}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class="modal-footer">\n\n\t\t\t\t<div class="margin-bottom">\n\t\t\t\t\t<span ng-if="!vm.bundleDatasets.length" translate>\n\t\t\t\t\t\tYou can only save a bundle which contains datasets.\n\t\t\t\t\t</span>\n\t\t\t\t\t<span ng-if="!vm.bundleDatasets.length && vm.isSavedBundle()" translate>\n\t\t\t\t\t\tTo remove all datasets from the bundle consider deleting it.\n\t\t\t\t\t</span>\n\t\t\t\t</div>\n\n\t\t\t\t<div>\n\t\t\t\t\t\x3c!--Delete--\x3e\n\t\t\t\t\t<delete-confirmation class="float-left"\n\t\t\t\t\t ng-if="vm.isSavedBundle()"\n\t\t\t\t\t on-confirm-callback="vm.remove()"\n\t\t\t\t\t button-disabled="vm.isRemovingInProgress()"\n\t\t\t\t\t in-progress="vm.isRemovingInProgress()">\n\t\t\t\t\t\t<span translate>The bundle file and directory on disk will be deleted</span>\n\t\t\t\t\t\t<div class="checkbox">\n\t\t\t\t\t\t\t<label>\n\t\t\t\t\t\t\t\t<input type="checkbox" ng-model="vm.removeDatasetsFromDisk">\n\t\t\t\t\t\t\t\t<span translate>Delete dataset directories from disk</span>\n\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</delete-confirmation>\n\n\t\t\t\t\t<cancel-button data-dismiss="modal"></cancel-button>\n\t\t\t\t\t<ok-button ng-click="vm.saveDatasetsAndBundle()"\n\t\t\t\t\t ng-disabled="!vm.bundleDatasets.length">\n\t\t\t\t\t</ok-button>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t</div>\n\t</div>\n</div>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){var i=n(11),r=n(1608);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,".z-index-1{box-shadow:none;position:relative;z-index:1}.z-index-2{box-shadow:0 1.5px 4px rgba(0,0,0,.24),0 1.5px 6px rgba(0,0,0,.12);position:relative;z-index:5}.z-index-3{box-shadow:0 3px 12px rgba(0,0,0,.23),0 3px 12px rgba(0,0,0,.16);position:relative;z-index:10}.z-index-4{box-shadow:0 6px 12px rgba(0,0,0,.23),0 10px 40px rgba(0,0,0,.19);position:relative;z-index:15}.z-index-5{box-shadow:0 10px 20px rgba(0,0,0,.22),0 14px 56px rgba(0,0,0,.25);position:relative;z-index:20}.front-element{z-index:1031}.full-window{position:fixed;margin:0;padding:0;left:0;right:0;top:0;bottom:0;z-index:1029;border-radius:0}.full-window-scroll{max-height:100vh}.full-window-scroll,.panel-autoscroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.panel-autoscroll{max-height:80vh}.autoscroll{overflow-y:auto;-webkit-overflow-scrolling:touch}.fixed-top-right{position:fixed;top:10px;right:0}.center-vertical{position:absolute;top:50%;transform:translateY(-50%)}.float-left{float:left}.float-right{float:right}.margin-top-small{margin-top:5px!important}.margin-left-small{margin-left:5px!important}.margin-right-small{margin-right:5px!important}.margin-bottom-small{margin-bottom:5px!important}.margin-top{margin-top:15px!important}.margin-left{margin-left:15px!important}.margin-right{margin-right:15px!important}.margin-bottom{margin-bottom:15px!important}.margin-top-big{margin-top:25px!important}.margin-bottom-big{margin-bottom:25px!important}.no-margin{margin:0!important}.no-margin-bottom{margin-bottom:0!important}.padding-horizontal{padding-left:15px!important;padding-right:15px!important}.padding-top,.padding-vertical{padding-top:15px!important}.padding-bottom,.padding-vertical{padding-bottom:15px!important}.no-padding-top{padding-top:0!important}.no-padding-bottom{padding-bottom:0!important}.no-padding-horizontal,.no-padding-left{padding-left:0!important}.no-padding-horizontal,.no-padding-right{padding-right:0!important}.no-padding{padding:0!important}.border{border:1px solid #e6e6e6}.border-top{border-top:1px solid #e6e6e6}.border-bottom{border-bottom:1px solid #e6e6e6}.border-left{border-left:1px solid #e6e6e6}.border-right{border-right:1px solid #e6e6e6}.no-border{border:none;border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.no-border-width{border:none}.border-radius{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.border-radius,.border-radius-top{border-top-left-radius:4px!important;border-top-right-radius:4px!important}.border-radius-bottom{border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important}.no-border-radius{border-top-left-radius:0!important;border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.indoorViewer.ios .no-hover-ios:hover{background-color:inherit!important}.no-shadow{box-shadow:none!important}.clear-background{border:0}.clear-background,.no-background{background:none!important}.no-overflow{overflow:hidden}.clickable,.clickable:hover{cursor:pointer}bundle-editor .modal-dialog{width:calc(100% - 20px);max-width:1022px}bundle-editor .tree-wrapper{background-color:#f0f0f0;border:1px solid #e6e6e6;border-top-left-radius:4px!important;border-top-right-radius:4px!important;border-bottom-right-radius:4px!important;border-bottom-left-radius:4px!important;padding:10px}bundle-editor .dataset-grp-toolbar,bundle-editor .list-group-item{background:transparent}bundle-editor hr{width:auto;margin:0 -15px -15px}",""]),t.exports=e},function(t,e,n){var i="DatasetManagementUI/BundleList.html",r='<div class="panel panel-default">\n\t<div class="panel-heading">\n\t\t<h4 translate translate-context="title">Alignment Bundles</h4>\n\t</div>\n\n\t<div class="panel-body">\n\t\t<div class="mb-10"\n\t\t ng-show="vm.bundles.length == 0 && !vm.progress.loadingBundles"\n\t\t translate>\n\t\t\tNo alignment bundles found\n\t\t</div>\n\t\t<span class="spinner" ng-show="vm.progress.loadingBundles">\n\t\t\t\t<img class="mb-10" ng-src="'+n(94)+'">\n\t\t\t</span>\n\n\t\t<div class="row margin-bottom-small" ng-repeat="bundle in vm.bundles">\n\t\t\t<div class="col-md-5 dataset-mgmt-row">\n\t\t\t\t<div>\n\t\t\t\t\t<strong ng-if="bundle.title">{{bundle.title}}: </strong>\n\t\t\t\t\t<span ng-if="bundle.name" title="{{bundle.serial}}">{{bundle.name}}</span>\n\t\t\t\t\t<span ng-if="!bundle.name && bundle.file" title="{{bundle.serial}}">{{bundle.file}}</span>\n\t\t\t\t\t<span ng-if="!bundle.name && !bundle.file" title="{{bundle.serial}}"\n\t\t\t\t\t translate translate-context="Label displayed for unknown bundle">Unknown</span>\n\n\t\t\t\t\t\x3c!-- Show warning if visual_index folder exists but is old --\x3e\n\t\t\t\t\t<div ng-if="vm.doesBundleContainVisualIndex(bundle)"\n\t\t\t\t\t class="dataset-mgmt-name">\n\t\t\t\t\t\t<span ng-if="bundle.correctVisualIndexVersion === true" translate>\n\t\t\t\t\t\t\tPositioning is available for this bundle.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<span ng-if="bundle.correctVisualIndexVersion === false"\n\t\t\t\t\t\t class="alert-warning" translate>\n\t\t\t\t\t\t\tPlease update the visual index in order to use indoor positioning.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t<div ng-if="bundle.inDatabase && bundle.managed" class="dataset-mgmt-name">\n\t\t\t\t\t\t<span ng-if="vm.panoCountEnforced" translate\n\t\t\t\t\t\t translate-params-datasets="bundle.datasetsInDatabase"\n\t\t\t\t\t\t translate-params-maps="bundle.mapsInDatabase"\n\t\t\t\t\t\t translate-params-nodes="bundle.nodesInDatabase"\n\t\t\t\t\t\t translate-params-edges="bundle.edgesInDatabase"\n\t\t\t\t\t\t translate-params-unique-panoramas="bundle.uniqueLocationsCount"\n\t\t\t\t\t\t translate-params-total-panoramas="bundle.locationsCount">\n\t\t\t\t\t\t\tdatasets: {{datasets}}, maps: {{maps}}, nodes: {{nodes}}, edges: {{edges}}, counted panoramas: {{uniquePanoramas}} out of {{totalPanoramas}}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<span ng-if="!vm.panoCountEnforced" translate\n\t\t\t\t\t\t translate-params-datasets="bundle.datasetsInDatabase"\n\t\t\t\t\t\t translate-params-maps="bundle.mapsInDatabase"\n\t\t\t\t\t\t translate-params-nodes="bundle.nodesInDatabase"\n\t\t\t\t\t\t translate-params-edges="bundle.edgesInDatabase">\n\t\t\t\t\t\t\tdatasets: {{datasets}}, maps: {{maps}}, nodes: {{nodes}}, edges: {{edges}}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class="col-md-7 dataset-mgmt-row">\n\t\t\t\t<div>\n\t\t\t\t\t\x3c!-- These span ng-if fix a styling issue related to button+tooltip, see also IV-1934 --\x3e\n\t\t\t\t\t<span ng-if="!bundle.inDatabase">\n\t\t\t\t\t\t<default-button ng-click="vm.importBundle(bundle)"\n\t\t\t\t\t\t ng-disabled="vm.isLoadDisabled(bundle)"\n\t\t\t\t\t\t in-progress="vm.isBundleImportJobRunning(bundle)"\n\t\t\t\t\t\t button-tooltip="{{\'Load bundle\'|translate}}">\n\t\t\t\t\t\t\t<span class="glyphicon glyphicon-plus" aria-hidden="true"></span>\n\t\t\t\t\t\t</default-button>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span ng-if="!bundle.inDatabase">\n\t\t\t\t\t\t<delete-confirmation\n\t\t\t\t\t\t\t\tbutton-disabled="vm.isDataManagementRunning()"\n\t\t\t\t\t\t\t\ton-confirm-callback="vm.removeBundleFromDisk(bundle)">\n\t\t\t\t\t\t\t<button-content>\n\t\t\t\t\t\t\t\t<i class="fa fa-trash-o"\n\t\t\t\t\t\t\t\t iv-tooltip="{{\'Delete bundle from disk\' | translate}}">\n\t\t\t\t\t\t\t\t</i>\n\t\t\t\t\t\t\t</button-content>\n\n\t\t\t\t\t\t\t<span translate>The bundle file and directory on disk will be deleted</span>\n\t\t\t\t\t\t</delete-confirmation>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span ng-if="bundle.inDatabase">\n\t\t\t\t\t\t<default-button ng-click="vm.unloadBundle(bundle)"\n\t\t\t\t\t\t ng-disabled="vm.isDataManagementRunning()"\n\t\t\t\t\t\t button-tooltip="{{\'Unload bundle\'|translate}}">\n\t\t\t\t\t\t\t<span class="glyphicon glyphicon-minus" aria-hidden="true"></span>\n\t\t\t\t\t\t</default-button>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span ng-if="bundle.inDatabase && bundle.managed">\n\t\t\t\t\t\t\t<default-button button-tooltip="{{\'Edit bundle\' | translate}}"\n\t\t\t\t\t\t\t ng-disabled="vm.isDataManagementRunning()"\n\t\t\t\t\t\t\t ng-click="vm.editBundle(bundle)">\n\t\t\t\t\t\t\t<i class="fa fa-pencil"></i>\n\t\t\t\t\t\t</default-button>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span ng-if="bundle.inDatabase">\n\t\t\t\t\t\t<default-button ng-click="vm.downloadZip(bundle)"\n\t\t\t\t\t\t ng-disabled="vm.isDataManagementRunning() || !bundle.onDisk"\n\t\t\t\t\t\t button-tooltip="{{\'Download bundle archive\'|translate}}">\n\t\t\t\t\t\t\t<i class="fa fa-download"></i>\n\t\t\t\t\t\t</default-button>\n\t\t\t\t\t</span>\n\t\t\t\t\t<span ng-if="bundle.inDatabase && bundle.managed && (!bundle.mapsOnDisk || !bundle.navgraphOnDisk)">\n\t\t\t\t\t\t<default-button ng-disabled="vm.isDataManagementRunning() || !bundle.onDisk"\n\t\t\t\t\t\t title="{{vm.getSiteModelWarning(bundle)}}"\n\t\t\t\t\t\t in-progress="vm.isMapsAndNavgraphGeneratorJobRunning(bundle)"\n\t\t\t\t\t\t data-toggle="modal"\n\t\t\t\t\t\t data-target="#create-maps-and-nav-{{bundle.serial}}">\n\t\t\t\t\t\t\t<span translate>Create maps and navgraph</span>\n\t\t\t\t\t\t\t<span class="fa fa-exclamation-triangle"\n\t\t\t\t\t\t\t ng-if="vm.getSiteModelWarning(bundle)"></span>\n\t\t\t\t\t\t</default-button>\n\t\t\t\t\t\t<map-creation-modal map-creation-id="create-maps-and-nav-{{bundle.serial}}"\n\t\t\t\t\t\t with-navgraph="true"\n\t\t\t\t\t\t bundle="bundle">\n\t\t\t\t\t\t</map-creation-modal>\n\t\t\t\t\t</span>\n\n\t\t\t\t\t<default-button ng-show="!bundle.managed"\n\t\t\t\t\t ng-disabled="vm.isDataManagementRunning() || !bundle.onDisk"\n\t\t\t\t\t data-toggle="modal"\n\t\t\t\t\t data-target="#bundle-convert-to-managed-{{bundle.serial}}">\n\t\t\t\t\t\t<i class="fa fa-exchange" aria-hidden="true"></i>\n\t\t\t\t\t\t<span translate\n\t\t\t\t\t\t translate-context="Button text for triggering the conversion from an unmanaged bundle to a managed one">\n\t\t\t\t\t\t\t\tConvert\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t</default-button>\n\n\t\t\t\t\t<continue-confirmation on-confirm-callback="vm.convertBundle(bundle)"\n\t\t\t\t\t modal-id="bundle-convert-to-managed-{{bundle.serial}}">\n\t\t\t\t\t\t<button-content>\n\t\t\t\t\t\t\t<i class="fa fa-exchange" aria-hidden="true"></i>\n\t\t\t\t\t\t\t<span translate\n\t\t\t\t\t\t\t translate-context="Button text for triggering the conversion from an unmanaged bundle to a managed one">\n\t\t\t\t\t\t\t\tConvert\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</button-content>\n\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\tTo access advanced bundle features, you must convert to a managed bundle. No data will be changed in this process.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</continue-confirmation>\n\n\t\t\t\t\t<div class="btn-group dropdown"\n\t\t\t\t\t ng-if="bundle.inDatabase && bundle.managed && bundle.onDisk">\n\t\t\t\t\t\t<default-button class="dropdown-toggle"\n\t\t\t\t\t\t data-toggle="dropdown"\n\t\t\t\t\t\t ng-disabled="vm.isDataManagementRunning()"\n\t\t\t\t\t\t in-progress="vm.isNavgraphGeneratorJobRunning(bundle) ||\n\t\t\t\t\t\t\t vm.isMapsGeneratorJobRunning(bundle) ||\n\t\t\t\t\t\t\t vm.isMapsTilerJobRunning(bundle) ||\n\t\t\t\t\t\t\t vm.isWifiImportJobRunning(bundle) ||\n\t\t\t\t\t\t\t vm.isNavgraphImportJobRunning(bundle) ||\n\t\t\t\t\t\t\t\t\t\t\tvm.isVisualIndexUploadOngoing()">\n\t\t\t\t\t\t\t<span translate>Advanced</span>\n\t\t\t\t\t\t\t<span class="caret"></span>\n\t\t\t\t\t\t</default-button>\n\t\t\t\t\t\t<ul class="dropdown-menu">\n\t\t\t\t\t\t\t<li ng-click="vm.downloadMaps(bundle)" translate>\n\t\t\t\t\t\t\t\tDownload maps\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t<continue-confirmation modal-id="floor-maps-generation-modal-{{bundle.serial}}"\n\t\t\t\t\t\t\t on-confirm-callback="vm.generateFloorMaps(bundle)">\n\t\t\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\t\t\tTo download maps they must be generated first. This may take some time. Start the map generation now?\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</continue-confirmation>\n\t\t\t\t\t\t\t<map-creation-modal\n\t\t\t\t\t\t\t\t\tmap-creation-id="create-floor-maps-{{bundle.serial}}"\n\t\t\t\t\t\t\t\t\tfloor-maps="true"\n\t\t\t\t\t\t\t\t\twith-navgraph="false"\n\t\t\t\t\t\t\t\t\tbundle="bundle">\n\t\t\t\t\t\t\t</map-creation-modal>\n\t\t\t\t\t\t\t<li ng-show="vm.areThereMaps(bundle)">\n\t\t\t\t\t\t\t\t<custom-map-upload bundle="bundle">\n\t\t\t\t\t\t\t\t</custom-map-upload>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t<map-creation-modal map-creation-id="create-maps-{{bundle.serial}}"\n\t\t\t\t\t\t\t with-navgraph="false"\n\t\t\t\t\t\t\t bundle="bundle">\n\t\t\t\t\t\t\t</map-creation-modal>\n\t\t\t\t\t\t\t<li ng-show="bundle.inDatabase && !bundle.mapsOnDisk"\n\t\t\t\t\t\t\t title="{{vm.getSiteModelWarning(bundle)}}"\n\t\t\t\t\t\t\t ng-click="vm.showMapCreationModal(bundle)">\n\t\t\t\t\t\t\t\t<span translate>Create maps</span>\n\t\t\t\t\t\t\t\t<span class="fa fa-exclamation-triangle"\n\t\t\t\t\t\t\t\t ng-if="vm.getSiteModelWarning(bundle)"></span>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t<li ng-show="bundle.inDatabase && bundle.mapsOnDisk"\n\t\t\t\t\t\t\t title="{{vm.getSiteModelWarning(bundle)}}"\n\t\t\t\t\t\t\t ng-click="vm.showMapCreationModal(bundle)">\n\t\t\t\t\t\t\t\t<span translate>Recreate maps</span>\n\t\t\t\t\t\t\t\t<span class="fa fa-exclamation-triangle"\n\t\t\t\t\t\t\t\t ng-if="vm.getSiteModelWarning(bundle)"></span>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t<li ng-show="bundle.inDatabase && bundle.mapsOnDisk && !bundle.mapsInDatabase"\n\t\t\t\t\t\t\t ng-click="vm.importMaps(bundle)"\n\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\tImport maps\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t<li ng-show="bundle.mapsInDatabase"\n\t\t\t\t\t\t\t ng-click="vm.unloadMaps(bundle)"\n\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\tRemove maps\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t<li role="separator" class="divider"></li>\n\t\t\t\t\t\t\t<li ng-show="bundle.inDatabase && !bundle.navgraphOnDisk"\n\t\t\t\t\t\t\t ng-click="vm.createNavgraph(bundle)"\n\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\tCreate navgraph\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t<li ng-show="bundle.inDatabase && bundle.navgraphOnDisk"\n\t\t\t\t\t\t\t ng-click="vm.createNavgraph(bundle)"\n\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\tRecreate navgraph\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t<li ng-show="bundle.inDatabase && bundle.navgraphOnDisk && !bundle.nodesInDatabase"\n\t\t\t\t\t\t\t ng-click="vm.importNavgraph(bundle)"\n\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\tImport navgraph\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t<li ng-show="bundle.nodesInDatabase"\n\t\t\t\t\t\t\t ng-click="vm.unloadNavgraph(bundle)"\n\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\tRemove navgraph\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t<li role="separator" class="divider"></li>\n\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<visual-index-upload bundle="bundle"\n\t\t\t\t\t\t\t\t on-upload-status-changed="vm.visualIndexUploadCallback">\n\t\t\t\t\t\t\t\t</visual-index-upload>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t<li ng-show="vm.doesBundleContainVisualIndex(bundle)"\n\t\t\t\t\t\t\t\tng-click="vm.deleteVisualIndex(bundle)"\n\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\tDelete visual index\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t<li role="separator" class="divider"></li>\n\t\t\t\t\t\t\t<li ng-show="!bundle.wifiInDatabase"\n\t\t\t\t\t\t\t ng-click="vm.importWifi(bundle)"\n\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\tImport navigation app data\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t<li ng-show="bundle.wifiInDatabase"\n\t\t\t\t\t\t\t ng-click="vm.unloadWifi(bundle)"\n\t\t\t\t\t\t\t translate>\n\t\t\t\t\t\t\t\tRemove navigation app data\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t</ul>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t\x3c!-- Pano warning --\x3e\n\t\t\t\t\t<span ng-if="vm.showExceedsWarning(bundle)" class="ml-10 text-warning">\n\t\t\t\t\t\t<span class="glyphicon glyphicon-alert" aria-hidden="true"></span>\n\t\t\t\t\t\t<span translate\n\t\t\t\t\t\t translate-n="vm.bundleExceedAmount(bundle)"\n\t\t\t\t\t\t translate-plural="Exceeds subscription by {{$count}} panoramas">\n\t\t\t\t\t\t\tExceeds subscription by one panorama\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</span>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\n\t\t<div class="margin-top">\n\t\t\t<default-button ng-click="vm.createBundle()"\n\t\t\t ng-disabled="vm.isDataManagementRunning()">\n\t\t\t\t<span class="glyphicon glyphicon-plus" aria-hidden="true"></span>\n\t\t\t\t<span translate>Create new bundle</span>\n\t\t\t</default-button>\n\n\t\t\t<default-button ng-show="vm.isConvertNewBundleVisible()"\n\t\t\t ng-click="vm.convertNewBundle()"\n\t\t\t ng-disabled="vm.isDataManagementRunning()">\n\t\t\t\t<span class="glyphicon glyphicon-import" aria-hidden="true"></span>\n\t\t\t\t<span translate>Import bundle file from disk</span>\n\t\t\t</default-button>\n\n\t\t\t<datasets-web-archive></datasets-web-archive>\n\t\t</div>\n\t\t<div class="margin-top">\n\t\t\t<upload-progress uploader="vm.visualIndexUploader">\n\t\t\t</upload-progress>\n\t\t</div>\n\t</div>\n</div>\n\n<modal>\n\t<bundle-editor model="vm.bundleToEdit"></bundle-editor>\n</modal>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){"use strict";var i=this&&this.__decorate||function(t,e,n,i){var r,o=arguments.length,a=o<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,n,i);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(a=(o<3?r(a):o>3?r(e,n,a):r(e,n))||a);return o>3&&a&&Object.defineProperty(e,n,a),a},r=this&&this.__metadata||function(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)},o=this&&this.__param||function(t,e){return function(n,i){e(n,i,t)}};Object.defineProperty(e,"__esModule",{value:!0});var a=n(2);n(1611),n(1614);var s=n(205),c=n(21),l=n(8),u=n(0),d=n(329),p=n(328),h=n(61),f=n(188),g=n(345),m=n(1616),v=n(1617),y=function(){function t(t,e,n,i,r,o,a,s){this.DatasetManagementService=t,this.gettextCatalog=e,this.DataGenerationService=n,this.DataManagementService=i,this.JobService=r,this.JobListService=o,this.MessageReportingService=a,this.TrackingService=s,this.floorMaps=!1}return t.$inject=["DatasetManagementService","gettextCatalog","DataGenerationService","DataManagementService","JobService","JobListService","MessageReportingService","TrackingService"],t.prototype.generateMaps=function(t){if(void 0===t&&(t=!1),this.floorMaps){this.createFloorMaps(t);var e=new v.FloorMapGenerationEvent;this.trackMapGenerationEvent(e,t)}else{var n=new m.MapGenerationEvent;if(this.trackMapGenerationEvent(n,t),this.withNavgraph)return this.DatasetManagementService.createMapsAndNavgraph(this.bundle,t),void c.TrackingService.trackNavGraphCreated();this.DatasetManagementService.createMaps(this.bundle,t)}},t.prototype.createFloorMaps=function(t){var e=this;this.DatasetManagementService.doBeforeDataManagementJob(this.bundle);var n=this.DataGenerationService.createFloorMaps(this.bundle.file,t).then(function(t){return e.JobService.waitOnJob(t.job_id)}).then(function(t){return t.success?t:Promise.reject(t)}).then(function(){e.DataManagementService.getBundlesOnDisk().catch(l.handleWarning),e.JobListService.showModalOnJobFinish(!1),e.DatasetManagementService.showModalOnRequestFinish=!1,e.MessageReportingService.showMessage(e.gettextCatalog.getString("Floor Maps Created",void 0,"title"),e.gettextCatalog.getString("The map generation has completed successfully. You can now download them from Dataset Management."))});this.DatasetManagementService.doDataManagementJob(n)},t.prototype.trackMapGenerationEvent=function(t,e){e?t.coloredMaps():t.nonColoredMaps(),this.TrackingService.trackPreDefinedEvent(t)},i([o(1,u.Inject("gettextCatalog")),r("design:paramtypes",[s.DatasetManagementService,Object,d.DataGenerationService,p.DataManagementService,f.JobService,g.JobListService,h.MessageReportingService,c.TrackingService])],t)}();e.MapCreationModalController=y;var b=function(){function t(){this.restrict="E",this.templateUrl="DatasetManagementUI/MapCreationModal/MapCreationModal.html",this.controller=y,this.controllerAs="vm",this.bindToController={withNavgraph:"=",floorMaps:"=?",bundle:"="},this.scope={mapCreationId:"@"}}return t.factory=function(){return function(){return new t}},t}();e.MapCreationModalDirective=b,a.module("IVWebApp").directive("mapCreationModal",b.factory())},function(t,e,n){var i="DatasetManagementUI/MapCreationModal/MapCreationModal.html",r='<modal>\n\t<div class="modal fade map-creation-modal" id="{{mapCreationId}}" tabindex="-1" role="dialog"\n\t aria-labelledby="{{mapCreationId}}" aria-hidden="true">\n\t\t<div class="modal-dialog" role="document">\n\t\t\t<div class="modal-content">\n\t\t\t\t<div class="modal-header">\n\t\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}"\n\t\t\t\t\t data-dismiss="modal">\n\t\t\t\t\t<h4 translate translate-context="title">Choose a Map Style</h4>\n\t\t\t\t</div>\n\t\t\t\t<div class="modal-body">\n\t\t\t\t\t<span translate>You can generate a new map at any time.</span>\n\t\t\t\t\t<div class="row">\n\t\t\t\t\t\t<div class="col-md-5 col-md-offset-1">\n\t\t\t\t\t\t\t<div class="padding-top text-center">\n\t\t\t\t\t\t\t\t<img ng-src="'+n(1612)+'"\n\t\t\t\t\t\t\t\t ng-class="\'map-image\'">\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div class="padding-vertical text-center">\n\t\t\t\t\t\t\t\t<default-button\n\t\t\t\t\t\t\t\t\t\tng-click="vm.generateMaps(false)" data-dismiss="modal">\n\t\t\t\t\t\t\t\t\t<span translate>Simple Maps</span>\n\t\t\t\t\t\t\t\t</default-button>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class="col-md-5 col-md-offset-1">\n\t\t\t\t\t\t\t<div class="padding-top text-center">\n\t\t\t\t\t\t\t\t<img ng-src="'+n(1613)+'"\n\t\t\t\t\t\t\t\t ng-class="\'map-image\'"/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div class="padding-vertical text-center">\n\t\t\t\t\t\t\t\t<ok-button class="btn btn-primary" data-dismiss="modal"\n\t\t\t\t\t\t\t\t ng-click="vm.generateMaps(true)">\n\t\t\t\t\t\t\t\t\t<span translate>Colored Maps</span>\n\t\t\t\t\t\t\t\t</ok-button>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){t.exports=n.p+"5809e871e58d8a691e009cafd227b6ad.floor_plan_simple.jpg"},function(t,e,n){t.exports=n.p+"fa9ed8c780ef652b51b60426153915b7.floor_plan_colored.jpg"},function(t,e,n){var i=n(11),r=n(1615);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,".map-creation-modal .map-image{width:200px}",""]),t.exports=e},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return t.call(this,"settings_mapsCreated")||this}return r(e,t),e}(n(617).AbstractMapGenerationEvent);e.MapGenerationEvent=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return t.call(this,"settings_floorMapsCreated")||this}return r(e,t),e}(n(617).AbstractMapGenerationEvent);e.FloorMapGenerationEvent=o},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(1619);var a=n(41),s=n(330),c=n(7),l=n(21),u=n(8),d=function(t){function e(e,n,i,r,o,a,s,c,l,u){var d=t.call(this,a,o,r,n,i)||this;return d.apiEndpoint=e,d.JobService=s,d.BundleRepository=c,d.DataManagementService=l,d.DatasetManagementService=u,d.acceptedFileTypes=".zip",d}return r(e,t),e.$inject=["apiEndpoint","MessageReportingService","gettextCatalog","StatusCheckService","FlowService","JobListService","JobService","BundleRepository","DataManagementService","DatasetManagementService"],Object.defineProperty(e.prototype,"targetUrl",{get:function(){return this.bundleId||(this.bundleId=this.BundleRepository.findCachedBySerial(this.bundle.serial).id),this.apiEndpoint+this.DataManagementService.basePath+"/bundle/"+this.bundleId.toString()+"/maps/upload"},enumerable:!0,configurable:!0}),e.prototype.mapFilesSubmitted=function(e){if(e.length>1){for(var n=0,i=c.tail(e);n<i.length;n++)i[n].cancel();e=[e[0]]}this.DatasetManagementService.doBeforeDataManagementJob(this.bundle),t.prototype.filesSubmitted.call(this,e).catch(u.handleWarning)},e.prototype.uploadSuccess=function(e,n){var i=this,r=o.fromJson(n).job_id;this.DatasetManagementService.doDataManagementJob(this.JobService.waitOnJob(r).then(function(t){return t.success?t:Promise.reject(t)}).then(function(){i.MessageReportingService.showMessage(i.gettextCatalog.getString("Import Successful",void 0,"title"),i.gettextCatalog.getString("Maps have been uploaded successfully"))})),l.TrackingService.trackMapsUploaded(),t.prototype.uploadSuccess.call(this,e,n)},e.prototype.uploadError=function(e,n){if(n){var i=o.fromJson(n),r={data:{msg:i.msg?i.msg:i.message,exception:i.exception}},s=a.ErrorService.getErrorMessage(r,this.gettextCatalog);void 0===s&&(s=r.data.msg),this.MessageReportingService.showMessage(this.gettextCatalog.getString("Error",void 0,"title"),this.gettextCatalog.getString(s),!0)}t.prototype.uploadError.call(this,e,n)},e}(s.AbstractUploadController);e.CustomMapUploadController=d;var p=function(){function t(){this.restrict="E",this.templateUrl="DatasetManagementUI/CustomMapUpload/CustomMapUpload.html",this.controller=d,this.controllerAs="vm",this.scope=!0,this.bindToController={bundle:"="}}return t.factory=function(){return function(){return new t}},t}();e.CustomMapUploadDirective=p,o.module("IVWebApp").directive("customMapUpload",p.factory())},function(t,e){var n="DatasetManagementUI/CustomMapUpload/CustomMapUpload.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div flow-init\n flow-object="vm.uploader"\n flow-file-error="vm.uploadError($file, $message)"\n flow-file-success="vm.uploadSuccess($file, $message)"\n flow-files-submitted="vm.mapFilesSubmitted($files)"\n flow-error="vm.uploadError($file, $message)">\n\n\t<div flow-btn flow-attrs="{accept: \'{{vm.acceptedFileTypes}}\'}">\n\t\t<span translate>Upload maps</span>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";var i,r=this&&this.__extends||(i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);n(1621);var a=n(330),s=n(7),c=n(41),l=n(8),u=function(t){function e(e,n,i,r,o,a,s,c,l,u){var d=t.call(this,a,o,r,n,i)||this;return d.apiEndpoint=e,d.BundleRepository=s,d.DataManagementService=c,d.DatasetManagementService=l,d.JobService=u,d.acceptedFileTypes=".zip, .nvi",d}return r(e,t),e.$inject=["apiEndpoint","MessageReportingService","gettextCatalog","StatusCheckService","FlowService","JobListService","BundleRepository","DataManagementService","DatasetManagementService","JobService"],Object.defineProperty(e.prototype,"targetUrl",{get:function(){return this.bundleId||(this.bundleId=this.BundleRepository.findCachedBySerial(this.bundle.serial).id),this.apiEndpoint+this.DataManagementService.basePath+"/bundle/"+this.bundleId.toString()+"/visual_index/upload"},enumerable:!0,configurable:!0}),e.prototype.visualIndexFilesSubmitted=function(e){var n=this;if(e.length>1){for(var i=0,r=s.tail(e);i<r.length;i++)r[i].cancel();e=[e[0]]}this.DatasetManagementService.doBeforeDataManagementJob(this.bundle),this.DatasetManagementService.setVisualIndexUploadOngoing(!0),t.prototype.filesSubmitted.call(this,e).then(function(){n.onUploadStatusChanged(n.uploader)}).catch(l.handleWarning)},e.prototype.uploadSuccess=function(t,e){var n=this;this.DatasetManagementService.setVisualIndexUploadOngoing(!1);var i=o.fromJson(e).job_id;this.DatasetManagementService.doDataManagementJob(this.JobService.waitOnJob(i).then(function(t){return t.success?t:Promise.reject(t)}).then(function(){n.bundle.correctVisualIndexVersion=!0,n.MessageReportingService.showMessage(n.gettextCatalog.getString("Upload Successful",void 0,"title"),n.gettextCatalog.getString("Visual index has been uploaded successfully")),n.onUploadStatusChanged(void 0)}))},e.prototype.uploadError=function(t,e){if(this.DatasetManagementService.setVisualIndexUploadOngoing(!1),e){var n=o.fromJson(e),i={data:{msg:n.msg?n.msg:n.message,exception:n.exception}},r=c.ErrorService.getErrorMessage(i,this.gettextCatalog);void 0===r&&(r=i.data.msg),this.MessageReportingService.showMessage(this.gettextCatalog.getString("Error",void 0,"title"),this.gettextCatalog.getString(r),!0)}this.onUploadStatusChanged(void 0)},e}(a.AbstractUploadController);e.VisualIndexUploadController=u;var d=function(){function t(){this.restrict="E",this.templateUrl="DatasetManagementUI/VisualIndexUpload/VisualIndexUploadComponent.html",this.controller=u,this.controllerAs="vm",this.scope=!0,this.bindToController={bundle:"=",onUploadStatusChanged:"<"}}return t.factory=function(){return function(){return new t}},t}();e.VisualIndexUploadDirective=d,o.module("IVWebApp").directive("visualIndexUpload",d.factory())},function(t,e){var n="DatasetManagementUI/VisualIndexUpload/VisualIndexUploadComponent.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div flow-init\n flow-object="vm.uploader"\n flow-file-error="vm.uploadError($file, $message)"\n flow-file-success="vm.uploadSuccess($file, $message)"\n flow-files-submitted="vm.visualIndexFilesSubmitted($files)"\n flow-file-progress="vm.fileProgress($file)"\n flow-error="vm.uploadError($file, $message)">\n\n\t<div flow-btn flow-attrs="{accept: \'{{vm.acceptedFileTypes}}\'}">\n\t\t<span translate>Upload visual index</span>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1623),n(205),n(619);var r=n(8),o=n(21),a=function(){function t(t,e,n,i){this.DatasetManagementService=t,this.JobListService=e,this.LicenseService=n,this.TrackingService=i,this.LOCATION_PICKER_ID="import-dataset-location-picker",this.progress=this.DatasetManagementService.progress,this.datasetsToAddNames="",this.addingLocation={},this.panoCountEnforced=!1,this.panoCountEnforced=n.isLicenseMaxLocationsAvailable()}return t.$inject=["DatasetManagementService","JobListService","LicenseService","TrackingService"],t.prototype.getDatasetsWithoutBundle=function(){return this.DatasetManagementService.datasets.filter(function(t){return!t.inBundleInDatabase})},t.prototype.importDataset=function(t){this.datasetsToAddNames=t.name,this.datasetToAdd=t,i.element("#"+this.LOCATION_PICKER_ID).modal("show")},t.prototype.addDatasetToDatabase=function(){o.TrackingService.trackDatasetLoaded(),this.DatasetManagementService.importDataset(this.datasetToAdd,this.addingLocation).catch(r.handleWarning)},t.prototype.unloadDataset=function(t){o.TrackingService.trackDatasetUnloaded(),this.DatasetManagementService.unloadDataset(t).catch(r.handleWarning)},t.prototype.removeDatasetFromDisk=function(t){this.DatasetManagementService.removeDatasetFromDisk(t).catch(r.handleWarning)},t.prototype.isDataManagementRunning=function(){return this.JobListService.progress.jobRunning||this.DatasetManagementService.dataManagementRequestRunning||this.DatasetManagementService.dataManagementJobTriggered},t.prototype.isLoadDisabled=function(t){return this.isDataManagementRunning()||this.datasetExceedsPanoLimit(t)},t.prototype.showExceedsWarning=function(t){return!t.inDatabase&&this.datasetExceedsPanoLimit(t)},t.prototype.datasetExceedAmount=function(t){if(!this.panoCountEnforced)return 0;var e=this.LicenseService.license,n=e.maxLocations-e.currentLocations;return t.uniqueLocationCount-n},t.prototype.datasetExceedsPanoLimit=function(t){return this.datasetExceedAmount(t)>0},t}();e.DatasetsWithoutBundleListController=a;var s=function(){function t(){this.restrict="E",this.templateUrl="DatasetManagementUI/DatasetsWithoutBundleList.html",this.controller=a,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.DatasetsWithoutBundleListDirective=s,i.module("IVWebApp").directive("datasetsWithoutBundleList",s.factory())},function(t,e,n){var i="DatasetManagementUI/DatasetsWithoutBundleList.html",r='<div class="panel panel-default">\n\n\t<div class="panel-heading">\n\t\t<h4 translate translate-context="title">Datasets Without Bundle</h4>\n\t</div>\n\n\t<div class="panel-body">\n\t\t<span ng-show="vm.getDatasetsWithoutBundle().length == 0 && !vm.progress.loadingDatasets"\n\t\t translate>\n\t\t\tNo datasets found\n\t\t</span>\n\t\t<span class="spinner" ng-show="vm.progress.loadingDatasets">\n\t\t\t<img ng-src="'+n(94)+'">\n\t\t</span>\n\t\t<div class="row margin-bottom-small"\n\t\t ng-repeat="dataset in vm.getDatasetsWithoutBundle() | orderBy : \'title\'">\n\t\t\t<div class="col-sm-5 dataset-mgmt-row">\n\t\t\t\t<div class="dataset-mgmt-icon"\n\t\t\t\t ng-style="{\'background-color\': dataset.color}">\n\t\t\t\t</div>\n\t\t\t\t<div>\n\t\t\t\t\t<div>{{dataset.title}}</div>\n\t\t\t\t\t<div ng-if="!vm.panoCountEnforced" class="dataset-mgmt-name">\n\t\t\t\t\t\t{{dataset.name}}\n\t\t\t\t\t</div>\n\t\t\t\t\t<div ng-if="vm.panoCountEnforced" class="dataset-mgmt-name" translate\n\t\t\t\t\t translate-params-name="dataset.name"\n\t\t\t\t\t translate-params-unique-panoramas="dataset.uniqueLocationCount"\n\t\t\t\t\t translate-params-total-panoramas="dataset.locationCount">\n\t\t\t\t\t\t{{name}}, counted panoramas: {{uniquePanoramas}} out of {{totalPanoramas}}\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div class="col-sm-7 dataset-mgmt-row">\n\t\t\t\t<div>\n\t\t\t\t\t\x3c!--Load dataset--\x3e\n\t\t\t\t\t<span ng-if="!dataset.inDatabase">\n\t\t\t\t\t\t<default-button ng-click="vm.importDataset(dataset)"\n\t\t\t\t\t\t ng-disabled="vm.isLoadDisabled(dataset)"\n\t\t\t\t\t\t button-tooltip="{{\'Load dataset\'|translate}}">\n\t\t\t\t\t\t\t<span class="glyphicon glyphicon-plus" aria-hidden="true"></span>\n\t\t\t\t\t\t</default-button>\n\t\t\t\t\t</span>\n\t\t\t\t\t\x3c!--Unload dataset--\x3e\n\t\t\t\t\t<span ng-if="dataset.inDatabase">\n\t\t\t\t\t\t<default-button ng-click="vm.unloadDataset(dataset)"\n\t\t\t\t\t\t ng-disabled="vm.isDataManagementRunning()"\n\t\t\t\t\t\t button-tooltip="{{\'Unload dataset\'|translate}}">\n\t\t\t\t\t\t\t<span class="glyphicon glyphicon-minus" aria-hidden="true"></span>\n\t\t\t\t\t\t</default-button>\n\t\t\t\t\t</span>\n\t\t\t\t\t\x3c!--Remove dataset from disk--\x3e\n\t\t\t\t\t<delete-confirmation ng-hide="dataset.inDatabase"\n\t\t\t\t\t button-disabled="vm.isDataManagementRunning()"\n\t\t\t\t\t on-confirm-callback="vm.removeDatasetFromDisk(dataset)">\n\t\t\t\t\t\t<button-content>\n\t\t\t\t\t\t\t<i class="fa fa-trash-o"\n\t\t\t\t\t\t\t iv-tooltip="{{\'Delete dataset directory from disk\' | translate}}">\n\t\t\t\t\t\t\t</i>\n\t\t\t\t\t\t</button-content>\n\n\t\t\t\t\t\t<span translate>The dataset directory on disk will be deleted</span>\n\t\t\t\t\t</delete-confirmation>\n\t\t\t\t\t\x3c!-- Pano warning --\x3e\n\t\t\t\t\t<span ng-if="vm.showExceedsWarning(dataset)" class="ml-10 text-warning">\n\t\t\t\t\t\t<span class="glyphicon glyphicon-alert" aria-hidden="true"></span>\n\t\t\t\t\t\t<span translate\n\t\t\t\t\t\t translate-n="vm.datasetExceedAmount(dataset)"\n\t\t\t\t\t\t translate-plural="Exceeds subscription by {{$count}} panoramas">\n\t\t\t\t\t\t\tExceeds subscription by one panorama\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</span>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n\n\t<dataset-location-picker location-picker-id="{{vm.LOCATION_PICKER_ID}}"\n\t datasets-to-add-names="{{vm.datasetsToAddNames}}"\n\t adding-location="vm.addingLocation"\n\t on-add="vm.addDatasetToDatabase(location)">\n\t</dataset-location-picker>\n</div>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){var i="DatasetManagementUI/DatasetLocationPicker.html",r='\x3c!-- Geo-registration for added datasets --\x3e\n<modal>\n\t<div class="modal fade" id="{{vm.locationPickerId}}" tabindex="-1" role="dialog"\n\t aria-labelledby="dataset-location-modal" aria-hidden="true" data-backdrop="static"\n\t\t press-key=\'{"esc": "vm.onCancel()"}\'>\n\t\t<div class="modal-dialog">\n\t\t\t<div class="modal-content">\n\n\t\t\t\x3c!-- Heading --\x3e\n\t\t\t<div class="modal-header">\n\t\t\t\t<img class="menu-close-button ic_svg"\n\t\t\t\t ng-src="'+n(35)+'" alt="{{\'Close\'|translate}}"\n\t\t\t\t ng-click="vm.onCancel()"\n\t\t\t\t data-dismiss="modal">\n\t\t\t\t<h4 translate translate-context="title">\n\t\t\t\t\tDataset Location\n\t\t\t\t</h4>\n\t\t\t</div>\n\n\t\t\t\x3c!-- Body --\x3e\n\t\t\t<div class="modal-body">\n\n\t\t\t\t\x3c!-- Heading with filenames summary --\x3e\n\t\t\t\t<p class="form-group truncated">\n\t\t\t\t\t<span translate>Choose a location for added datasets:</span>\n\t\t\t\t\t<b> {{vm.datasetsToAddNames}}</b>\n\t\t\t\t</p>\n\n\t\t\t\t\x3c!-- Radio control --\x3e\n\t\t\t\t<div class="form-group">\n\t\t\t\t\t<div ng-show="vm.getDatasetsWithLocation().length">\n\t\t\t\t\t\t<label class="normal-font" ng-click="vm.initDatasetMode()">\n\t\t\t\t\t\t\t<input type="radio"\n\t\t\t\t\t\t\t name="location-radio-control"\n\t\t\t\t\t\t\t ng-model="vm.locationPickerMode"\n\t\t\t\t\t\t\t value="{{vm.LOCATION_PICKER_MODE_DATASET}}">\n\t\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\t\tReference dataset\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</label>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<label class="normal-font" ng-click="vm.initCustomMode()">\n\t\t\t\t\t\t\t<input type="radio"\n\t\t\t\t\t\t\t name="location-radio-control"\n\t\t\t\t\t\t\t ng-model="vm.locationPickerMode"\n\t\t\t\t\t\t\t value="{{vm.LOCATION_PICKER_MODE_CUSTOM}}">\n\t\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\t\tCustom location\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</label>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t\x3c!-- Inputs --\x3e\n\t\t\t\t<div class="form-group">\n\t\t\t\t\t\x3c!-- Reference dataset location --\x3e\n\t\t\t\t\t<div class="relative"\n\t\t\t\t\t id="dataset-management-reference-dataset"\n\t\t\t\t\t ng-show="vm.locationPickerMode === vm.LOCATION_PICKER_MODE_DATASET">\n\t\t\t\t\t\t<p class="form-group" translate>\n\t\t\t\t\t\t\tChoose the location from a reference dataset.\n\t\t\t\t\t\t</p>\n\t\t\t\t\t\t<select class="form-control"\n\t\t\t\t\t\t title="{{\'Reference dataset location\'|translate}}"\n\t\t\t\t\t\t ng-model="vm.locationReferenceDataset"\n\t\t\t\t\t\t ng-options="dataset as dataset.name for dataset in vm.getDatasetsWithLocation() | orderBy : \'name\'"\n\t\t\t\t\t\t ng-change="vm.updateMapForReferenceDataset()"\n\t\t\t\t\t\t style="width:calc(100% - 48px)">\n\t\t\t\t\t\t</select>\n\t\t\t\t\t\t\x3c!-- Focus on dataset --\x3e\n\t\t\t\t\t\t<button class="btn btn-default absolute-right" ng-click="vm.updateMapForReferenceDataset()"\n\t\t\t\t\t\t title="{{\'Focus map on current reference dataset\' | translate}}"\n\t\t\t\t\t\t style="bottom:1px">\n\t\t\t\t\t\t\t<i class="fa fa-crosshairs"></i>\n\t\t\t\t\t\t</button>\n\t\t\t\t\t</div>\n\n\t\t\t\t\t\x3c!-- Custom location --\x3e\n\t\t\t\t\t<div id="dataset-management-custom-location"\n\t\t\t\t\t ng-show="vm.locationPickerMode === vm.LOCATION_PICKER_MODE_CUSTOM">\n\t\t\t\t\t\t<p class="form-group" translate>\n\t\t\t\t\t\t\tEnter an address or specify a custom location.\n\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\x3c!-- Search address --\x3e\n\t\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t\t<div class="input-group">\n\t\t\t\t\t\t\t\t<input class="form-control"\n\t\t\t\t\t\t\t\t ng-model="vm.addressToSearch"\n\t\t\t\t\t\t\t\t ng-change="vm.addressNotFound = false"\n\t\t\t\t\t\t\t\t press-key=\'{ "enter" : "vm.searchAddress()" }\'\n\t\t\t\t\t\t\t\t placeholder="{{\'Enter address here (e.g. \\\'Munich\\\')\'|translate}}"\n\t\t\t\t\t\t\t\t style="max-height:32px">\n\t\t\t\t\t\t\t\t<div class="input-group-btn">\n\t\t\t\t\t\t\t\t\t<button type="button"\n\t\t\t\t\t\t\t\t\t class="btn btn-primary"\n\t\t\t\t\t\t\t\t\t ng-click="vm.searchAddress()" ng-disabled="!vm.addressToSearch.length">\n\t\t\t\t\t\t\t\t\t\t<i class="fa fa-search" aria-hidden="true"></i>\n\t\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<p ng-if="vm.addressNotFound" class="help-block" translate>Location for address not found</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\x3c!-- Custom location inputs --\x3e\n\t\t\t\t\t\t<div class="form-group row"\n\t\t\t\t\t\t ng-class="vm.isLocationFieldValid(\'longitude\') ? \'has-success\' : \'has-error\'">\n\t\t\t\t\t\t\t<label class="col-xs-5 control-label normal-font" translate>Longitude</label>\n\t\t\t\t\t\t\t<div class="col-xs-5">\n\t\t\t\t\t\t\t\t<input class="form-control form-control-inline"\n\t\t\t\t\t\t\t\t type="number" min="-180" max="180"\n\t\t\t\t\t\t\t\t ng-model="vm.addingLocation.longitude"\n\t\t\t\t\t\t\t\t ng-change="vm.updateMapForCustomLocation(true)">\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class="form-group row"\n\t\t\t\t\t\t ng-class="vm.isLocationFieldValid(\'latitude\') ? \'has-success\' : \'has-error\'">\n\t\t\t\t\t\t\t<label class="col-xs-5 control-label normal-font" translate>Latitude</label>\n\t\t\t\t\t\t\t<div class="col-xs-5">\n\t\t\t\t\t\t\t\t<input class="form-control form-control-inline"\n\t\t\t\t\t\t\t\t type="number" min="-90" max="90"\n\t\t\t\t\t\t\t\t ng-model="vm.addingLocation.latitude"\n\t\t\t\t\t\t\t\t ng-change="vm.updateMapForCustomLocation(true)">\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class="form-group row"\n\t\t\t\t\t\t ng-class="vm.isLocationFieldValid(\'height\') ? \'has-success\' : \'has-error\'">\n\t\t\t\t\t\t\t<label class="col-xs-5 control-label normal-font" translate>Height</label>\n\t\t\t\t\t\t\t<div class="col-xs-5">\n\t\t\t\t\t\t\t\t<input class="form-control form-control-inline"\n\t\t\t\t\t\t\t\t type="number"\n\t\t\t\t\t\t\t\t ng-model="vm.addingLocation.height"\n\t\t\t\t\t\t\t\t ng-change="vm.updateMapForCustomLocation(true)">\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class="form-group row relative"\n\t\t\t\t\t\t ng-class="vm.isLocationFieldValid(\'orientation\') ? \'has-success\' : \'has-error\'">\n\t\t\t\t\t\t\t<label class="col-xs-5 control-label normal-font" translate>Orientation angle (degrees)</label>\n\t\t\t\t\t\t\t<div class="col-xs-5">\n\t\t\t\t\t\t\t\t<input class="form-control form-control-inline"\n\t\t\t\t\t\t\t\t type="number"\n\t\t\t\t\t\t\t\t ng-model="vm.addingLocation.orientation"\n\t\t\t\t\t\t\t\t ng-change="vm.updateMapForCustomLocation(true)">\n\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t\x3c!-- Focus on location --\x3e\n\t\t\t\t\t\t\t<button class="btn btn-default absolute-bottom"\n\t\t\t\t\t\t\t ng-click="vm.updateMapForCustomLocation(true, true)"\n\t\t\t\t\t\t\t ng-disabled="!vm.isLocationFieldValid(\'longitude\') || !vm.isLocationFieldValid(\'latitude\')"\n\t\t\t\t\t\t\t title="{{\'Focus map on current location\' | translate}}"\n\t\t\t\t\t\t\t style="right:15px">\n\t\t\t\t\t\t\t\t<i class="fa fa-crosshairs"></i>\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t\x3c!-- Map --\x3e\n\t\t\t\t<div id="{{vm.locationPickerId}}-open-layers-map"\n\t\t\t\t class="open-layers-map open-layers-map-location-picker"\n\t\t\t\t ng-class="{\'crosshair\': vm.locationPickerMode === vm.LOCATION_PICKER_MODE_CUSTOM}"\n\t\t\t\t resize-event="vm.olMap.updateMapSize()" delay="100">\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t\x3c!-- Footer --\x3e\n\t\t\t<div class="modal-footer">\n\t\t\t\t<cancel-button ng-click="vm.onCancel()"\n\t\t\t\t data-dismiss="modal">\n\t\t\t\t</cancel-button>\n\t\t\t\t<ok-button ng-disabled="!vm.isAddingLocationValid()"\n\t\t\t\t ng-click="vm.onAdd()"\n\t\t\t\t data-dismiss="modal">\n\t\t\t\t\t<span translate>Add</span>\n\t\t\t\t</ok-button>\n\t\t\t</div>\n\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</modal>\n';window.angular.module("ng").run(["$templateCache",function(t){t.put(i,r)}]),t.exports=i},function(t,e,n){var i=n(11),r=n(1626);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,".open-layers-map-location-picker{height:400px}.open-layers-map-location-picker.crosshair{cursor:crosshair}.form-control-inline{display:inline-block;max-height:24px;padding:0 6px}.form-group.truncated{overflow:hidden;text-overflow:ellipsis}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1628),n(619),n(620);var r=n(20),o=n(144),a=function(){function t(t,e,n,i,r){this.DatasetManagementService=t,this.FlowService=e,this.JobListService=n,this.MessageReportingService=i,this.gettextCatalog=r,this.datasetsToAddNames="",this.addingLocation={},this.targetUrl="api/dataset/upload"}return t.$inject=["DatasetManagementService","FlowService","JobListService","MessageReportingService","gettextCatalog"],t.prototype.filesSubmitted=function(t){return this.defer=new o.Deferred,0===t.length?(this.defer.reject(),this.MessageReportingService.showMessage(this.gettextCatalog.getString("Upload in Progress",void 0,"title"),this.gettextCatalog.getString("This file is already being uploaded.")),this.defer.promise):(this.datasetsToAddNames=t.map(function(t){return t.name}).join(", "),this.submittedFiles=t,this.addLocationParameterToEachRequest(),i.element("#import-point-cloud-location-picker").modal("show"),this.defer.promise)},t.prototype.addLocationParameterToEachRequest=function(){var t=this;this.FlowService.setDatasetQuery(this.targetUrl,function(e){var n=t.DatasetManagementService.locations[e.uniqueIdentifier],i={longitude:n.longitude,latitude:n.latitude,height:n.height,orientation:r.degreesToRadians(n.orientation)};return n.referenceDatasetId&&(i.referenceDatasetId=n.referenceDatasetId),i})},t.prototype.uploadFiles=function(){for(var t=0,e=this.submittedFiles;t<e.length;t++){var n=e[t];this.DatasetManagementService.locations[n.uniqueIdentifier]=this.addingLocation}this.defer.resolve()},t.prototype.cancelUpload=function(){this.defer.reject()},t.prototype.uploadSuccess=function(t,e){delete this.DatasetManagementService.locations[t.uniqueIdentifier]},t.prototype.uploadError=function(t,e){e&&delete this.DatasetManagementService.locations[t.uniqueIdentifier]},t}();e.PointCloudImportController=a;var s=function(){function t(){this.restrict="E",this.templateUrl="PointCloud/PointCloudImport.html",this.controller=a,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.PointCloudImportDirective=s,i.module("IVWebApp").directive("pointCloudImport",s.factory())},function(t,e){var n="PointCloud/PointCloudImport.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="panel panel-default">\n\t<div class="panel-heading">\n\t\t<h4 translate translate-context="title">\n\t\t\tImport Point Clouds\n\t\t</h4>\n\t</div>\n\n\t<div class="panel-body">\n\t\t<upload button-title="{{\'Upload point cloud\' | translate}}"\n\t\t target-url="{{vm.targetUrl}}"\n\t\t accepted-file-types=".e57, .pts, .ptx, .ply, .xyz"\n\t\t on-file-picked="vm.filesSubmitted(files)"\n\t\t on-upload-error="vm.uploadError(file, response)"\n\t\t on-upload-success="vm.uploadSuccess(file, response)">\n\t\t</upload>\n\n\t\t<dataset-location-picker location-picker-id="import-point-cloud-location-picker"\n\t\t datasets-to-add-names="{{vm.datasetsToAddNames}}"\n\t\t adding-location="vm.addingLocation"\n\t\t on-add="vm.uploadFiles()"\n\t\t on-cancel="vm.cancelUpload()">\n\t\t</dataset-location-picker>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1630),n(1631);var r=n(330),o=function(){function t(t){this.JobListService=t}return t.$inject=["JobListService"],t.prototype.isWaitingToRetryUpload=function(t){return t.retryEnabled&&t.retryCountdown<r.AbstractUploadController.RETRY_PERIOD},t.prototype.isUploadInProgress=function(t){return!t.error&&!t.isComplete()&&!this.isWaitingToRetryUpload(t)},t.prototype.isUploadComplete=function(t){return!t.error&&t.isComplete()},t.prototype.isCancelFileUploadPossible=function(t){return t.isUploading()||t.paused||this.isWaitingToRetryUpload(t)},t.prototype.isContinueFileUploadPossible=function(t){return t.paused||this.isWaitingToRetryUpload(t)},t.prototype.cancelFileUpload=function(t){t.retryEnabled=!1,t.cancel()},t.prototype.pauseFileUpload=function(t){t.retryEnabled=!1,t.pause()},t.prototype.resumeFileUpload=function(t){this.isWaitingToRetryUpload(t)?t.retryCountdown=0:(t.retryEnabled=!1,t.resume())},t.prototype.hasJobFailed=function(t){return this.JobListService.hasJobFailed(t)},t.prototype.isJobBusy=function(t){return this.JobListService.isJobBusy(t)},t.prototype.areUploadAndProcessingSuccessful=function(t){return this.isUploadComplete(t)&&!this.isJobBusy(t.jobId)&&!this.hasJobFailed(t.jobId)},t.prototype.hasUploadCompletedAndJobFailed=function(t){return this.isUploadComplete(t)&&this.hasJobFailed(t.jobId)},t}();e.UploadProgressController=o;var a=function(){function t(){this.restrict="E",this.templateUrl="Upload/UploadProgress.html",this.controller=o,this.controllerAs="vm",this.scope=!0,this.bindToController={uploader:"="}}return t.factory=function(){return function(){return new t}},t}();e.UploadProgressDirective=a,i.module("IVWebApp").directive("uploadProgress",a.factory())},function(t,e){var n="Upload/UploadProgress.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'\x3c!-- Files upload progress bars --\x3e\n<div class="container" *ngIf="vm.uploader !== undefined">\n\t<div class="row animate-repeat" ng-repeat="file in vm.uploader.files">\n\t\t<div class="col-md-3">\n\t\t\t\t<span title="{{file.name}}">\n\t\t\t\t\t{{file.name}}\n\t\t\t\t</span>\n\t\t</div>\n\t\t<div class="col-md-6">\n\t\t\t<div class="progress">\n\t\t\t\t<div class="progress-bar"\n\t\t\t\t ng-class="{\n\t\t\t\t\t\t \'progress-bar-warning active\': file.isUploading(),\n\t\t\t\t\t\t \'progress-bar-danger\': file.error || vm.hasJobFailed(file.jobId),\n\t\t\t\t\t\t\t\'progress-bar-success\': file.isComplete() && !vm.isJobBusy(file.jobId),\n\t\t\t\t\t\t\t\'progress-bar-warning progress-bar-striped active\':\n\t\t\t\t\t\t\t\tfile.isComplete() && vm.isJobBusy(file.jobId)\n\t\t\t\t\t\t }"\n\t\t\t\t role="progressbar"\n\t\t\t\t aria-valuenow="{{ file.percent }}" aria-valuemin="0"\n\t\t\t\t aria-valuemax="100"\n\t\t\t\t ng-style="{\n\t\t\t\t\t width: vm.isWaitingToRetryUpload(file) ? \'100%\' : file.percent + \'%\'\n }"\n\t\t\t\t style="min-width: 2em;">\n\n\t\t\t\t\t\x3c!--Upload in progress--\x3e\n\t\t\t\t\t<span ng-if="vm.isUploadInProgress(file)" translate\n\t\t\t\t\t translate-params-percent="file.percent | number:0">\n\t\t\t\t\t\t\t{{percent}}% complete\n\t\t\t\t\t\t</span>\n\n\t\t\t\t\t\x3c!--Disconnected--\x3e\n\t\t\t\t\t<span ng-if="vm.isWaitingToRetryUpload(file)" translate\n\t\t\t\t\t translate-params-counter="file.retryCountdown">\n\t\t\t\t\t\t\tDisconnected, retrying in {{counter}} seconds\n\t\t\t\t\t\t</span>\n\n\t\t\t\t\t\x3c!--File error--\x3e\n\t\t\t\t\t<span ng-if="file.error">\n\t\t\t\t\t\t\t{{file.errorMessage}}\n\t\t\t\t\t\t</span>\n\n\t\t\t\t\t\x3c!--Job busy--\x3e\n\t\t\t\t\t<span ng-if="vm.isUploadComplete(file) && vm.isJobBusy(file.jobId)">\n\t\t\t\t\t\t\t{{vm.jobs[file.jobId].lastOutput}}\n\t\t\t\t\t\t</span>\n\n\t\t\t\t\t\x3c!--Upload and Processing successful--\x3e\n\t\t\t\t\t<span ng-if="vm.areUploadAndProcessingSuccessful(file)"\n\t\t\t\t\t translate>\n\t\t\t\t\t\t\tUpload and processing done\n\t\t\t\t\t\t</span>\n\n\t\t\t\t\t\x3c!--Failed task--\x3e\n\t\t\t\t\t<span ng-if="vm.hasUploadCompletedAndJobFailed(file)"\n\t\t\t\t\t translate>\n\t\t\t\t\t\t\tTask has failed. Please check the Task Manager for more information.\n\t\t\t\t\t\t</span>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\n\t\t<div class="col-md-3">\n\t\t\t<button class="btn btn-default btn-xs"\n\t\t\t ng-show="vm.isCancelFileUploadPossible(file)"\n\t\t\t ng-click="vm.cancelFileUpload(file)">\n\t\t\t\t<i class="fa fa-times"></i>\n\t\t\t</button>\n\t\t\t<button class="btn btn-default btn-xs"\n\t\t\t ng-show="!file.paused && file.isUploading()"\n\t\t\t ng-click="vm.pauseFileUpload(file)">\n\t\t\t\t<span class="glyphicon glyphicon-pause"></span>\n\t\t\t</button>\n\t\t\t<button class="btn btn-default btn-xs"\n\t\t\t ng-show="vm.isContinueFileUploadPossible(file)"\n\t\t\t ng-click="vm.resumeFileUpload(file)">\n\t\t\t\t<span class="glyphicon glyphicon-play"></span>\n\t\t\t</button>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1632);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"upload-progress em{margin-left:1em}upload-progress .progress-bar{min-width:2em}upload-progress .container{margin-left:0}upload-progress .col-md-3{overflow:hidden;text-overflow:ellipsis}",""]),t.exports=e},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1634),n(345);var r=function(){function e(e,n,i,r,o){var a=this;this.JobListService=e,this.$scope=n,this.DatasetManagementService=i,this.IV=r,this.FlowService=o;var s=t("#job-panel");s.on("hide.bs.collapse",function(){return a.JobListService.clearTimeouts(!0)}),s.on("show.bs.collapse",function(e){var n=Number.parseInt(t(e.target).attr("data-job-id"),10);a.JobListService.refreshJobDetails(n)}),this.JobListService.refreshJobList(),this.JobListService.showModalOnJobFinish(!1),this.$scope.$on("$destroy",function(){a.JobListService.progress.jobRunning||a.FlowService.isUploading()?a.JobListService.showModalOnJobFinish(!0):a.JobListService.clearTimeouts(),a.DatasetManagementService.reInitOnExit&&(a.IV.reinit(),a.DatasetManagementService.reInitOnExit=!1)})}return e.$inject=["JobListService","$scope","DatasetManagementService","IV","FlowService"],e.prototype.showCancelModal=function(e,n){n.stopPropagation(),this.jobToCancel=e,t("#confirmJobCancel.modal").modal("show")},e.prototype.confirmJobCancel=function(){this.JobListService.cancelJob(this.jobToCancel).catch(function(){})},e}();e.JobListController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="Job/JobList.html",this.controller=r,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.JobListDirective=o,i.module("IVWebApp").directive("jobList",o.factory())}).call(this,n(19))},function(t,e){var n="Job/JobList.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="panel panel-default">\n\n\t<div class="panel-heading">\n\t\t<h4 translate translate-context="title">Task Manager</h4>\n\t</div>\n\n\t<div id="job-panel" class="panel-body">\n\t\t\t<span ng-show="vm.JobListService.jobs.length === 0"\n\t\t\t translate>\n\t\t\t\tNo tasks found\n\t\t\t</span>\n\n\t\t<div class="panel panel-default" ng-class="{\'panel-warning\': job.busy}"\n\t\t ng-repeat="job in vm.JobListService.jobs | reverse track by $index"\n\t\t ng-if="job.jobId">\n\t\t\t<div ng-class="!!job.output ? \'panel-heading\' : \'panel-heading empty-job-output\'" data-toggle="collapse"\n\t\t\t data-target="#{{\'job-\'+job.jobId}}" data-parent="#job-panel">\n\t\t\t\t<div class="row">\n\t\t\t\t\t<div class="col-md-9">\n\t\t\t\t\t\t\x3c!-- spinning fa icon has to be wrapped in aditional span if combined with ng-show directive --\x3e\n\t\t\t\t\t\t<span ng-show="job.busy"><span class="fa fa-spin fa-circle-o-notch"\n\t\t\t\t\t\t title="{{\'Task is running\'|translate}}"></span></span>\n\t\t\t\t\t\t<span class="text-success fa fa-check-circle-o"\n\t\t\t\t\t\t ng-show="!job.busy && job.success"\n\t\t\t\t\t\t title="{{\'Task has successfully finished\'|translate}}"></span>\n\t\t\t\t\t\t<span class="text-danger fa fa-exclamation-circle"\n\t\t\t\t\t\t ng-show="!job.busy && !job.success"\n\t\t\t\t\t\t title="{{\'Task has failed\'|translate}}"></span>\n\t\t\t\t\t\t<strong>{{job.label}}</strong>\n\t\t\t\t\t\t<span>({{job.title}})</span>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="col-md-3 text-right">\n\t\t\t\t\t\t<span ng-show="!job.busy">{{ job.startTime | date:\'yyyy-MM-dd HH:mm:ss\' }}</span>\n\t\t\t\t\t\t<span class="fa fa-times-circle-o" ng-show="job.busy"\n\t\t\t\t\t\t title="{{\'Cancel task\'|translate}}"\n\t\t\t\t\t\t ng-click="vm.showCancelModal(job, $event)"></span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div id="{{\'job-\'+job.jobId}}" data-job-id="{{job.jobId}}"\n\t\t\t class="collapse job-details" class="panel-body" scroll-glue>\n\t\t\t\t<pre ng-if="!!job.output || !!job.errors || job.processingToolFailed()">\x3c!--\n\t\t\t\t\t--\x3e<code>{{job.output}}\x3c!--\n\t\t\t\t\t\t--\x3e<span ng-if="!!job.errors">\n\x3c!--\t\t\t\t\t\t--\x3e{{job.errors}}\x3c!--\n\t\t\t\t\t\t--\x3e</span>\x3c!--\n\t\t\t\t\t\t--\x3e<span ng-if="job.processingToolFailed()">\n\x3c!--\t\t\t\t\t\t--\x3e<span translate>There was an error while running the processing tool</span> ({{job.status}}). \x3c!--\n\t\t\t\t\t\t\t--\x3e<span ng-if="job.processingToolOutOfMemory()" translate>Possible reason: out of memory.</span>\x3c!--\n\t\t\t\t\t\t--\x3e</span>\x3c!--\n\t\t\t\t\t--\x3e</code>\x3c!--\n\t\t\t\t--\x3e</pre>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n\n\t<modal>\n\t\t<div class="modal fade" id="confirmJobCancel" tabindex="-1" role="dialog"\n\t\t aria-labelledby="confirmJobCancel" aria-hidden="true" data-backdrop="static">\n\t\t\t<div class="modal-dialog">\n\t\t\t\t<div class="modal-content">\n\t\t\t\t\t<div class="modal-header">\n\t\t\t\t\t\t<button type="button" class="close" data-dismiss="modal"\n\t\t\t\t\t\t aria-hidden="true">&times;</button>\n\t\t\t\t\t\t<h4 translate translate-context="title">\n\t\t\t\t\t\t\tConfirm\n\t\t\t\t\t\t</h4>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="modal-body" translate>\n\t\t\t\t\t\tDo you really want to cancel this task?\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="modal-footer">\n\t\t\t\t\t\t<close-button data-dismiss="modal"></close-button>\n\t\t\t\t\t\t<ok-button data-dismiss="modal" ng-click="vm.confirmJobCancel()"></ok-button>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</modal>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1636),n(615);var r=function(){function t(t,e,n){var i=this;this.LicenseService=t,this.fetchPanoInformation(!1);var r=e.refreshed.connect(function(){return i.fetchPanoInformation(!0)});n.$on("$destroy",function(){return r.disconnect()})}return t.$inject=["LicenseService","DatasetManagementService","$scope"],t.prototype.fetchPanoInformation=function(t){var e=this;this.LicenseService.initialize(t).then(function(t){e.setPanoInfo(t.maxLocations,t.currentLocations)}).catch(function(){e.setPanoInfo(0,0)})},t.prototype.setPanoInfo=function(t,e){this.totalPanos=t,this.usedPanos=e},t.prototype.isInfoValid=function(){return void 0!==this.totalPanos&&void 0!==this.usedPanos&&this.totalPanos>0},t}();e.PanoCountController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="DatasetManagementUI/PanoCount.html",this.controller=r,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.PanoCountDirective=o,i.module("IVWebApp").directive("panoCount",o.factory())},function(t,e){var n="DatasetManagementUI/PanoCount.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div ng-if="vm.isInfoValid()">\n\t<limit-display total="vm.totalPanos" used="vm.usedPanos">\n\t\t<span translate translate-context="title">Panoramic Images</span>\n\t\t<div class="glyphicon glyphicon-question-sign"\n\t\t iv-tooltip="{{\'Within each dataset, only those panoramas that are two meters or more away from all the other panoramas are counted towards the subscription.\' | translate}}"\n\t\t data-placement="right">\n\t\t</div>\n\t</limit-display>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1638),n(435),n(616),n(620),n(1639);var r=function(){function t(t){this.DatasetManagementService=t}return t.$inject=["DatasetManagementService"],t.prototype.updateDatasetManagement=function(){this.DatasetManagementService.refresh()},t}();e.DatasetsWebArchiveController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="DatasetsWebArchive/DatasetsWebArchive.html",this.controller=r,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.DatasetsWebArchiveDirective=o,i.module("IVWebApp").directive("datasetsWebArchive",o.factory())},function(t,e){var n="DatasetsWebArchive/DatasetsWebArchive.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<upload\n\tbutton-title="{{\'Upload bundle or dataset\' | translate}}"\n\ttarget-url="api/bundles/archive"\n\taccepted-file-types=".bundle, .nvd, .xml"\n\ton-upload-error="vm.updateDatasetManagement()"\n\ton-upload-success="vm.updateDatasetManagement()">\n</upload>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1640);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"datasets-web-archive>upload>div{padding-top:15px}",""]),t.exports=e},function(t,e,n){"use strict";n.r(e);var i=n(2),r=n(118),o=n(92),a=n(57),s=n(114);function c(t,e){var n;if("undefined"==typeof Symbol||null==t[Symbol.iterator]){if(Array.isArray(t)||(n=function(t,e){if(t){if("string"==typeof t)return l(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?l(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var i=0,r=function(){};return{s:r,n:function(){return i>=t.length?{done:!0}:{done:!1,value:t[i++]}},e:function(t){throw t},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,s=!1;return{s:function(){n=t[Symbol.iterator]()},n:function(){var t=n.next();return a=t.done,t},e:function(t){s=!0,o=t},f:function(){try{a||null==n.return||n.return()}finally{if(s)throw o}}}}function l(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,i=new Array(e);n<e;n++)i[n]=t[n];return i}function u(t,e,n,l,u,d,p,h,f){var g;t.GroupService=l,t.UserService=u,t.attributeNames=l.getGroupAttributesNames(),t.allAttributesText=e.getString("All",null,"As in 'All group attributes'"),t.noAttributesText=e.getString("None",null,"As in 'No group attributes'"),t.permissionsData=t.permissionsData||{},t.groupsTree=(g={showChecks:!1,selectable:!0,showAttributes:!0,attributeNames:t.attributeNames,allAttributesText:t.allAttributesText,noAttributesText:t.noAttributesText,excludeGroupId:u.isAdmin()?void 0:s.GroupService.publicGroupId},new r.GroupsTree(l,g)),t.addingInProgressCount=0,t.warningDialogConfig={TITLE:n("Unsaved Changes",void 0,"title"),TEXT:n("Your changes are not saved and will be lost if you proceed. Are you sure you want to leave?")},t.current_page="GROUPS",t.resetGroups=M,t.saveGroups=function(){var n;C(),m.length&&(t.addingInProgressCount=m.length,function n(){if(0!=m.length){var r=m.shift(),o=t.groupsTree.getParentGroup(r,T());o&&l.addGroup(r.name,o.id,o.id,r.attributes).then(function(e){t.groupsTree.initGroup(e);var n=b.indexOf(r.local_id);n>-1&&(b[n]=e.local_id),Object(i.forEach)(r.childGroups,function(t){t.parent=e}),a()},function(){d.showMessage(e.getString("Error While Adding the Group {{name}}",{name:r.name},"title"),e.getString("The group and its subgroups have not been added.")),a()})}function a(){x().then(function(){--t.addingInProgressCount,n()})}}()),v.length&&(n=[],Object(i.forEach)(v,function(i){var r=l.updateGroup(i.id,i.name,i.attributes).catch(function(){var n=t.groupsTree.getGroupById(i.id,O());d.showMessage(e.getString("Error While Updating the Group {{name}}",{name:n.name},"title"),e.getString("The group has not been updated. Restoring the last correct state."))});n.push(r)}),Promise.all(n).then(x,x),v=[]),y.length&&function(){var n=[];Object(i.forEach)(y,function(i){if(t.groupsTree.getParentGroup(i,T())){var r=l.removeGroup(i).catch(function(t){var n=409===t.status?e.getString("The group or its subgroup is used by content (buildings, datasets, POIs, or POI categories)."):t.data.msg;d.showMessage(e.getString("Error While Removing the Group {{name}}",{name:i.name},"title"),n)});n.push(r)}}),n.length&&Promise.all(n).then(x,x),y=[]}()},t.isDataChanged=E,t.mouseOverGroup=function(e){t.groupsTree.hoverGroups(T(),!1),t.groupsTree.hoverGroup(e,!0)},t.mouseLeaveGroup=function(e){t.groupsTree.mouseLeaveGroup(e)},t.toggleGroupExpanded=function(e){t.groupsTree.toggleGroupExpanded(e)},t.toggleGroupSelected=function(e){var n=!t.groupsTree.isGroupSelected(e);t.groupsTree.selectGroups(T(),!1),t.groupsTree.selectGroup(e,n)},t.addGroupInAddingState=function(e){t.groupsTree.addGroupInAddingState(e,T()),A()},t.acceptAddingGroup=function(e){var n=t.groupsTree.acceptAddingGroup(e,T());m.push(n)},t.cancelAddingGroup=function(e){t.groupsTree.cancelAddingGroup(e,T())},t.goToGroupEditState=function(e){t.groupsTree.goToGroupEditState(e,T())},t.acceptUpdatingGroupName=function(e){var n=t.groupsTree.getGroupByLocalId(e,T()),i=(t.groupsTree.getParentGroup(n,T()),t.groupsTree.getGroupById(n.id,O())),r=m.indexOf(n),o=v.indexOf(n);i&&n.name===i.name?o>-1&&v.splice(o,1):-1==r&&-1==o&&v.push(n),r>-1?t.groupsTree.goToGroupAddedState(n):t.groupsTree.goToGroupNormalState(n)},t.cancelUpdatingGroupName=function(e){t.groupsTree.cancelUpdatingGroupName(e,T())},t.removeGroup=function(e){t.groupsTree.getGroupWithDescendants(e),t.groupsTree.selectGroup(e,!1);var n=t.groupsTree.getParentGroup(e,T());if(n){var r=n.childGroups.indexOf(e);r>-1&&n.childGroups.splice(r,1)}null==e.id?function(e){var n=t.groupsTree.getGroupWithDescendants(e);Object(i.forEach)(n,function(t){var e=m.indexOf(t);e>-1&&m.splice(e,1)})}(e):y.push(e),A()},t.toggleGroupAttribute=function(e,n){if(t.isUserAllowedToChangeAttribute(n)){e.toggleAttribute(n),function(t,e){if(0===t.id)if(t.isAttributeEnabled(e))switch(e){case a.GroupAttributes.CAN_CREATE_POIS:case a.GroupAttributes.CAN_CREATE_POI_GROUPS:t.setAttribute(a.GroupAttributes.CAN_MAKE_PUBLIC,!0)}else switch(e){case a.GroupAttributes.CAN_MAKE_PUBLIC:t.setAttribute(a.GroupAttributes.CAN_CREATE_POIS,!1),t.setAttribute(a.GroupAttributes.CAN_CREATE_POI_GROUPS,!1)}}(e,n);var r=t.groupsTree.getGroupById(e.id,O()),o=v.indexOf(e);if(r){var s=Object(i.equals)(e.attributes,r.attributes);s||-1!=o?s&&o>-1&&v.splice(o,1):v.push(e)}t.groupsTree.updateGroupAttributesString(e)}},t.isUserAllowedToChangeAttribute=function(t){return T().some(function(e){return e.isAttributeEnabled(t)})},t.getGroupNotWritableText=function(t){return!t||t.security.canWrite?"":e.getString("You do not have permission to edit this group")},t.hasValidLicenseModule=function(){return p.isFeatureEnabled(o.LicenseFeatureType.USER_MANAGEMENT)},t.warningContinueHandler=function(){M(),f.continueHoldAction(),Object(i.element)(document.getElementById("groups-unsaved-changes-modal")).modal("hide")},t.canCreateUserGroups=function(){return u.userInfo.checkAttribute(a.GroupAttributes.CAN_CREATE_USER_GROUPS)};var m=[],v=[],y=[],b=[],w=[];function S(){return!!E()&&(Object(i.element)(document.getElementById("groups-unsaved-changes-modal")).modal("show"),!0)}function x(e){var n=u.userInfo,r=l.getGroupsAsTree(n.primaryGroups);return e&&l.clearGroups(),l.getGroupsAsTree(n.primaryGroups).then(function(e){t.permissionsData.groups=[];var n,i=c(e);try{for(i.s();!(n=i.n()).done;){var r=n.value,s=new a.GroupEntity;s.copy(r),t.permissionsData.groups.push(s)}}catch(t){i.e(t)}finally{i.f()}o()},function(){l.setGroups(r),t.permissionsData.groups=Object(i.copy)(r),o()});function o(){var e;t.permissionsData.isDataChanged=E,t.groupsTree.setGroups(t.permissionsData.groups),A(),e=b.map(function(e){return t.groupsTree.getGroupByLocalId(e,T())}).filter(Boolean),t.groupsTree.expandGroups(e,!0)}}function M(){m=[],v=[],y=[],C(),x()}function E(){return m.length>0||v.length>0||y.length>0}function C(){b=T().filter(t.groupsTree.isGroupExpanded).map(function(t){return t.local_id})}function A(){w=l.createGroupsArray(t.permissionsData.groups)}function T(){return w}function O(){return l.getGroupsAsArray()}!function(){var t=f.getActiveItem();t&&(t.onExit=S),h.initialized.then(function(){x(!0)})}()}u.$inject=["$scope","gettextCatalog","gettext","GroupService","UserService","MessageReportingService","LicenseService","AuthenticationService","SidebarMenuService"],Object(i.module)("IVWebApp").controller("GroupController",u)},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(1643);var i=n(2),r=n(8),o=n(136),a=function(){function t(t,e,n){var i=this;this.SidebarMenuService=e,this.IV=n,this.hiddenImages=[],t.filter((new o.ImageRestFilterBuilder).hidden(!0).build()).then(function(t){return i.hiddenImages=t}).catch(r.handleWarning)}return t.$inject=["ImageRepository","SidebarMenuService","IV"],t.prototype.moveToImage=function(t){this.SidebarMenuService.closeMenu(),this.IV.moveToImage(t).catch(r.handleWarning)},t}();e.HiddenImagesController=a;var s=function(){function t(){this.restrict="E",this.templateUrl="ImageUI/HiddenImages.html",this.controller=a,this.controllerAs="vm"}return t.factory=function(){return function(){return new t}},t}();e.HiddenImagesDirective=s,i.module("IVWebApp").directive("hiddenImages",s.factory())},function(t,e){var n="ImageUI/HiddenImages.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="panel panel-default">\n\t<div class="panel-body">\n\t\t<div class="row">\n\t\t\t<div class="col-md-12" translate>The following images are hidden and will not be used:\n\t\t\t</div>\n\t\t</div>\n\t\t<br/>\n\t\t<div class="row">\n\t\t\t<div class="col-md-1" ng-repeat="image in vm.hiddenImages">\n\t\t\t\t<a ng-click="vm.moveToImage(image); $event.stopPropagation()"\n\t\t\t\t class="clickable">{{image.id}}</a>\n\t\t\t</div>\n\t\t\t<div class="col-md-12" ng-show="!vm.hiddenImages.length" translate>\n\t\t\t\tThere are no hidden images\n\t\t\t</div>\n\t\t</div>\n\t\t<br/>\n\t\t<div class="row">\n\t\t\t<div class="col-md-12" translate>Note: to unhide, click on a link above and use the option "Unhide current location" from the right-click menu.\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1645),n(1646);var r=n(1648),o=n(525),a=n(89),s=n(522);n(1649);var c=n(25),l=n(7),u=n(8),d=function(){function t(t,e,n,i,r,o,l,u,d){this.ConfigService=t,this.ErrorService=e,this.gettextCatalog=n,this.SidebarMenuService=i,this.TextGenService=r,this.LicenseService=o,this.UrlService=l,this.PoiTypeService=u,this.RestService=d,this.groupedConfigs=this.ConfigService.groupedConfigs,this.loginIconElem='<i class="glyphicon glyphicon-user"></i>',this.settingIconElem='<i class="glyphicon glyphicon-cog"></i>',this.progressWrapper=new a.PromiseProgressWrapper,this.errorWrapper=this.ErrorService.newWrapper().report().network().detector(new s.GenericDetector(this.gettextCatalog,"Network error")).build(),this.loginUrl=this.UrlService.generateUrl(c.Configs.MENU_LOGIN_VISIBLE,"true",c.Configs.MENU_SETTINGS_VISIBLE,"true")}return t.$inject=["ConfigService","ErrorService","gettextCatalog","SidebarMenuService","TextGenService","LicenseService","UrlService","PoiTypeService","RestService"],t.prototype.getTranslationKey=function(t){return this.TextGenService.getText("ConfigurationEditor",t.toUpperCase().split(".").join("_"))},t.prototype.getConfigUnavailableText=function(t){return this.isConfigDisabled(t)?this.gettextCatalog.getString("This option is not available"):""},t.prototype.getStartupViewDisabledText=function(){return this.isStartupConfigDisabled()?this.gettextCatalog.getString("You do not have permission to change the startup view"):""},t.prototype.discardChangedConfigs=function(){for(var t in this.ConfigService.changedConfigs){var e=this.ConfigService.changedConfigs[t];this.ConfigService.changedConfigs[t].value=this.getSavedConfigValue(e)}this.clearChangedConfigs()},t.prototype.saveChangedConfigs=function(){var t=this;this.ConfigService.validateConfigs(this.ConfigService.changedConfigs)&&r.wrap(this.ConfigService.saveConfigs(this.ConfigService.changedConfigs),this.errorWrapper,this.progressWrapper).then(function(){t.clearChangedConfigs(),t.SidebarMenuService.itemsVisibilityUpdated.emit(),t.PoiTypeService.initPoiTypesVisibility().catch(u.handleWarning)}).catch(function(){})},t.prototype.changeConfig=function(t){this.ConfigService.changedConfigs[t.name]?this.ConfigService.changedConfigs[t.name]&&this.ConfigService.changedConfigs[t.name].value===this.getSavedConfigValue(t)&&delete this.ConfigService.changedConfigs[t.name]:this.ConfigService.changedConfigs[t.name]=t},t.prototype.noConfigsChanged=function(){return 0===Object.keys(this.ConfigService.changedConfigs).length},t.prototype.isConfigDisabled=function(t){var e=!0,n=this.ConfigService.getLicensableConfigFeature(t.name);return n&&(e=this.LicenseService.isFeatureEnabled(n)),!(e&&t.canWrite)},t.prototype.isStartupConfigDisabled=function(){var t=this;return l.some(this.ConfigService.configArray,function(e){return e.category===o.ConfigCategory.STARTUP_VIEW&&t.isConfigDisabled(e)})},t.prototype.clearChangedConfigs=function(){this.ConfigService.changedConfigs={}},t.prototype.getSavedConfigValue=function(t){return t.type===o.ConfigType.BOOLEAN?this.ConfigService.getBoolean(t.name,!1):this.ConfigService.getString(t.name,"")},t.prototype.isSelectInput=function(t){return t.type===o.ConfigType.ENUM},t.prototype.isTextInput=function(t){return t.type===o.ConfigType.STRING||t.type===o.ConfigType.CSV||t.type===o.ConfigType.NUMBER},t.prototype.isCheckboxInput=function(t){return t.type===o.ConfigType.BOOLEAN||void 0===t.type},t.prototype.isTextareaInput=function(t){return t.type===o.ConfigType.MULTILINE},t.prototype.isMenuVisibility=function(t){return t.category===o.ConfigCategory.MENU_VISIBILITY},t.prototype.downloadLogs=function(){this.RestService.directDownload("logs",{})},t}();e.ConfigEditorController=d;var p=function(){function t(){this.restrict="E",this.templateUrl="ConfigUI/ConfigEditor.html",this.controller=d,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.ConfigEditorDirective=p,i.module("IVWebApp").directive("configEditor",p.factory())},function(t,e){var n="ConfigUI/ConfigEditor.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div id="settings-config-panel"\n class="panel panel-default panel-sticky-header">\n\t<div class="panel-heading">\n\t\t<div class="control-buttons">\n\t\t\t<discard-button ng-click="vm.discardChangedConfigs()"\n\t\t\t ng-disabled="vm.noConfigsChanged() || vm.progressWrapper.isInProgress"></discard-button>\n\t\t\t<save-button ng-click="vm.saveChangedConfigs()"\n\t\t\t ng-disabled="vm.noConfigsChanged() || vm.progressWrapper.isInProgress"\n\t\t\t in-progress="vm.progressWrapper.isInProgress"></save-button>\n\t\t</div>\n\t</div>\n\t<div class="panel-body">\n\t\t<form>\n\t\t\t<div class="row">\n\n\t\t\t\t\x3c!-- Configs --\x3e\n\t\t\t\t<div ng-repeat="groupedConfig in vm.groupedConfigs">\n\n\t\t\t\t\t<div ng-if="$even" class="clearfix"></div>\n\n\t\t\t\t\t<div class="col-sm-6 panel-config-column">\n\t\t\t\t\t\t<div class="panel panel-default">\n\t\t\t\t\t\t\t<div class="panel-heading">\n\t\t\t\t\t\t\t\t<label>{{vm.getTranslationKey(groupedConfig.category) | translate:"title"}}</label>\n\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t<div class="panel-body">\n\t\t\t\t\t\t\t\t<div class="form-group"\n\t\t\t\t\t\t\t\t ng-hide="config.hide"\n\t\t\t\t\t\t\t\t ng-repeat="config in groupedConfig | orderBy : \'name\'">\n\n\t\t\t\t\t\t\t\t\t<div ng-if="vm.isSelectInput(config)"\n\t\t\t\t\t\t\t\t\t title="{{vm.getConfigUnavailableText(config)}}">\n\t\t\t\t\t\t\t\t\t\t<p>{{vm.getTranslationKey(config.name) | translate}}</p>\n\t\t\t\t\t\t\t\t\t\t<select class="form-control config-form-control"\n\t\t\t\t\t\t\t\t\t\t ng-model="config.value"\n\t\t\t\t\t\t\t\t\t\t ng-options="val for val in config.possibleValues"\n\t\t\t\t\t\t\t\t\t\t ng-disabled="vm.isConfigDisabled(config)"\n\t\t\t\t\t\t\t\t\t\t ng-change="vm.changeConfig(config)">\n\t\t\t\t\t\t\t\t\t\t</select>\n\t\t\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t\t\t<div ng-if="vm.isTextInput(config)"\n\t\t\t\t\t\t\t\t\t title="{{vm.getConfigUnavailableText(config)}}">\n\t\t\t\t\t\t\t\t\t\t<p>{{vm.getTranslationKey(config.name) | translate}}</p>\n\t\t\t\t\t\t\t\t\t\t<input class="form-control config-form-control"\n\t\t\t\t\t\t\t\t\t\t ng-model="config.value"\n\t\t\t\t\t\t\t\t\t\t ng-disabled="vm.isConfigDisabled(config)"\n\t\t\t\t\t\t\t\t\t\t ng-change="vm.changeConfig(config)">\n\t\t\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t\t\t<div class="checkbox"\n\t\t\t\t\t\t\t\t\t ng-if="vm.isCheckboxInput(config)"\n\t\t\t\t\t\t\t\t\t title="{{vm.getConfigUnavailableText(config)}}">\n\t\t\t\t\t\t\t\t\t\t<label>\n\t\t\t\t\t\t\t\t\t\t\t<input type="checkbox"\n\t\t\t\t\t\t\t\t\t\t\t ng-model="config.value"\n\t\t\t\t\t\t\t\t\t\t\t ng-disabled="vm.isConfigDisabled(config)"\n\t\t\t\t\t\t\t\t\t\t\t ng-change="vm.changeConfig(config)">\n\t\t\t\t\t\t\t\t\t\t\t\t{{vm.getTranslationKey(config.name) | translate}}\n\t\t\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t\t\t<div ng-if="vm.isTextareaInput(config)"\n\t\t\t\t\t\t\t\t\t title="{{vm.getConfigUnavailableText(config)}}">\n\t\t\t\t\t\t\t\t\t\t<p>{{vm.getTranslationKey(config.name) | translate}}</p>\n\t\t\t\t\t\t\t\t\t\t<textarea class="form-control"\n\t\t\t\t\t\t\t\t\t\t rows="3"\n\t\t\t\t\t\t\t\t\t\t ng-model="config.value"\n\t\t\t\t\t\t\t\t\t\t ng-disabled="vm.isConfigDisabled(config)"\n\t\t\t\t\t\t\t\t\t\t ng-change="vm.changeConfig(config)"></textarea>\n\t\t\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t\t\x3c!-- Show login & settings note for the menu visibility section --\x3e\n\t\t\t\t\t\t\t\t<div ng-if="vm.isMenuVisibility(groupedConfig)" class="alert alert-info">\n\t\t\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t\t\t<span translate-html-params-login-icon="vm.loginIconElem"\n\t\t\t\t\t\t\t\t\t\t translate-html-params-setting-icon="vm.settingIconElem" translate>\n\t\t\t\t\t\t\t\t\t\t\tIf you hide the sign in menu ({{loginIcon}}) or the settings menu ({{settingIcon}}), bookmark this link to temporarily re-enable it and access this page:\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t\t<a href="{{vm.loginUrl}}" target="_blank">{{vm.loginUrl}}</a>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t<div ng-if="!$even" class="clearfix"></div>\n\n\t\t\t\t\x3c!-- Startup View --\x3e\n\t\t\t\t<div class="col-sm-6 panel-config-column">\n\t\t\t\t\t<div class="panel panel-default">\n\t\t\t\t\t\t<div class="panel-heading">\n\t\t\t\t\t\t\t<label translate translate-context="title">Starting Location</label>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\n\t\t\t\t\t\t<div class="panel-body">\n\t\t\t\t\t\t\t<div class="form-group"\n\t\t\t\t\t\t\t title="{{vm.getStartupViewDisabledText()}}">\n\t\t\t\t\t\t\t\t<p translate>Set current view as global startup view</p>\n\n\t\t\t\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t\t\t\t<button class="btn btn-default margin-bottom-small"\n\t\t\t\t\t\t\t\t\t data-toggle="modal"\n\t\t\t\t\t\t\t\t\t data-target="#setStartupViewModal"\n\t\t\t\t\t\t\t\t\t ng-disabled="vm.isStartupConfigDisabled()">\n\t\t\t\t\t\t\t\t\t\t<span class="glyphicon glyphicon-screenshot"></span>\n\t\t\t\t\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\t\t\t\t\tSet startup view\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t\t\t<button class="btn btn-danger margin-bottom-small"\n\t\t\t\t\t\t\t\t\t data-toggle="modal"\n\t\t\t\t\t\t\t\t\t data-target="#resetStartupViewModal"\n\t\t\t\t\t\t\t\t\t ng-disabled="vm.isStartupConfigDisabled()">\n\t\t\t\t\t\t\t\t\t\t<span class="glyphicon glyphicon-trash"></span>\n\t\t\t\t\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\t\t\t\t\tReset startup view\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t\x3c!-- Troubleshooting --\x3e\n\t\t\t\t<div class="col-sm-6 panel-config-column">\n\t\t\t\t\t<div class="panel panel-default">\n\t\t\t\t\t\t<div class="panel-heading">\n\t\t\t\t\t\t\t<label translate translate-context="title">Troubleshooting</label>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div class="panel-body">\n\t\t\t\t\t\t\t<button class="btn btn-default margin-bottom-small"\n\t\t\t\t\t\t\t ng-click="vm.downloadLogs()">\n\t\t\t\t\t\t\t\t<span class="glyphicon glyphicon-save-file"></span>\n\t\t\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\t\t\tDownload logs\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t</div>\n\n\t\t</form>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1647);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"config-editor .btn,config-editor .config-form-control{width:auto}config-editor .panel-config-column .panel .panel-heading label{margin-bottom:0}.indoorViewer.desktop config-editor .panel-config-column{padding-left:5px;padding-right:5px}.indoorViewer.mobile-small config-editor .panel-config-column{padding-left:0;padding-right:0}.indoorViewer.mobile-small config-editor .panel-config-column .panel{margin-bottom:0;border-left:none;border-right:none;border-bottom:none;border-radius:0;box-shadow:none}.indoorViewer.mobile config-editor .panel-config-column{padding-left:0;padding-right:0}.indoorViewer.mobile config-editor .panel-config-column .panel{margin-bottom:0;border-left:none;border-right:none;border-bottom:none;border-radius:0;box-shadow:none}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.wrap=function(t){for(var e=[],n=1;n<arguments.length;n++)e[n-1]=arguments[n];for(var i=0,r=e;i<r.length;i++){t=r[i].wrap(t)}return t}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),r=n(6),o=n(0),a=n(0),s=function(){function t(t){this.gettext=t,this.translationTable={ConfigurationEditor:this.initializeConfigurationEditorMap()}}return t.prototype.getText=function(t,e){return this.translationTable[t][e]||(console.warn("WARNING: getText failed lookup:",t,e),"FAILED TEXT LOOKUP")},t.prototype.initializeConfigurationEditorMap=function(){return{LON:this.gettext("Geographic latitude of the startup location. A panorama close to this point is chosen as the starting location"),LAT:this.gettext("Geographic longitude of the startup location"),Z:this.gettext("Height of the startup location"),CORE_INIT_IMAGE:this.gettext("Startup image database ID"),CORE_INIT_LON:this.gettext("Horizontal view direction"),CORE_INIT_LAT:this.gettext("Vertical view direction"),CORE_INIT_VIEW:this.gettext('Primary startup view for desktop devices, either "panorama" (default) or "map"'),CORE_INIT_VIEW_MOBILE:this.gettext('Primary startup view for mobile devices, either "panorama" or "map" (default)'),MENU_DATASETS_VISIBLE:this.gettext("Datasets"),MENU_LOGIN_VISIBLE:this.gettext("Sign in"),MENU_VIEW_VISIBLE:this.gettext("View"),MENU_POI_VISIBLE:this.gettext("POIs"),MENU_POINTCLOUD_VISIBLE:this.gettext("Point cloud"),MENU_MODE_VISIBLE:this.gettext("Mode"),MENU_SHARE_VISIBLE:this.gettext("Share"),MENU_ABOUT_VISIBLE:this.gettext("Info menu (do not hide this menu, it is required to comply with third party licenses)"),MENU_SETTINGS_VISIBLE:this.gettext("Settings"),MENU_NEWWINDOW_VISIBLE:this.gettext("New Window"),LAYERS_POINTCLOUD_VISIBLE:this.gettext("Point cloud"),LAYERS_PANORAMAS_VISIBLE:this.gettext("Panorama images"),LAYERS_LOCATIONS_VISIBLE:this.gettext("Location markers (image locations on floor)"),LAYERS_CAMERAFOV_MOBILE_VISIBLE:this.gettext("Panorama position indicator (location dot) on mobile"),LAYERS_MAP_VISIBLE:this.gettext("Secondary view window"),POI_SHARE_ENABLED:this.gettext("Share button on the POI panel"),POI_FULLSCREEN:this.gettext("Show POI and site model details as full screen dialog"),POI_NAMES_MAP:this.gettext('Show POI names in the "map" view'),POI_NAMES_PANORAMAS:this.gettext('Show POI names in the "panorama" view'),POI_VISIBILITYCHECK_ENABLED:this.gettext("Check and adjust POI visibility"),UI_POI_PANEL_VISIBLE:this.gettext("Detail panels"),UI_FLOORCHANGER_VISIBLE:this.gettext("Floor changer widget"),UI_SEARCH_VISIBLE:this.gettext("Search box"),UI_STATUSCHECK_VISIBLE:this.gettext("Status check"),LAYERS_POINTCLOUD_SAME_RES:this.gettext("Disable level-of-detail mechanism for point clouds (all points are loaded with selected resolution, do NOT use this in production)"),ROUTING_ENABLED:this.gettext("Enable routing"),CORE_MAP_BG:this.gettext("Background color (RGBA) of map (integer), e.g. 0xFFFFFFFF for white + fully opaque or 0 for black + fully transparent"),CORE_MAP_FOV_COLOR:this.gettext("Color (RGB) of field of view indicator"),CORE_MAP_FOV_BLENDING:this.gettext("Blending mode for field of view indicator (NoBlending = 0, NormalBlending = 1, AdditiveBlending = 2, SubtractiveBlending = 3, MultiplyBlending = 4)"),CORE_MAP_MARKER_COLOR:this.gettext("Color (RGB) of location markers in map view (in panorama view they are always white)"),CORE_MAP_MARKER_BLENDING:this.gettext("Blending mode for location markers (see core.map.fov.blending)"),CORE_MAP_BASEMAP:this.gettext("Base map"),CORE_MAP_TILE_URL:this.gettext("Map tile URL"),CORE_MAP_TILE_MIN_ZOOM:this.gettext("Minimum map tile zoom level"),CORE_MAP_TILE_MAX_ZOOM:this.gettext("Maximum map tile zoom level"),CORE_MAP_ATTRIBUTION:this.gettext("Map attribution"),CORE_SECURITY_CORS:this.gettext("Allowed origins for cross-origin requests (one origin per line, e.g. https://www.example.org, or leave empty to deny cross-origin requests)"),LAYERS_PANORAMAS_MOBILE_MAX_RES:this.gettext("Maximum resolution of the panorama images loaded for mobile users (use 2 or 1)"),POI_TYPES:this.gettext("Only show POIs from categories in the comma separated list (e.g. 11,17,18), note: the category numbers are shown in the POI category panel in edit mode"),INFO_TERMS_PRIVACY:this.gettext("HTML to show as privacy policy in about box"),INFO_TERMS_EXTRA:this.gettext("HTML to show as extra credits in about box"),FEEDBACK_EMAIL_FROM_DOMAIN:this.gettext("Domain of from address"),FEEDBACK_EMAIL_RECIPIENT_EMAIL:this.gettext("Recipient email"),FEEDBACK_EMAIL_RECIPIENT_SMTPHOST:this.gettext("SMTP server"),FEEDBACK_PRIVACY_HTML:this.gettext("HTML to show the data privacy statement in the feedback form"),FEEDBACK_PRIVACY_TEXT_CHECKBOX:this.gettext("Show checkbox with consent"),FEEDBACK_PRIVACY_TEXT_TEXT:this.gettext("Consent text for the data privacy statement"),TRACKING_ENABLED:this.gettext("Enable tracking"),TRACKING_CODE:this.gettext("Javascript tracking code for statistics (only actually inserted into the page header if tracking is enabled)"),SITE_MODEL_SEARCH_ENABLED:this.gettext("Enable site model search"),LAYERS_POLYGON_VECTOR_MAP_STYLE:this.gettext("Vector map style sheet"),MENU_VISIBILITY:this.gettext("Menu Visibility",void 0,"title"),UI_ELEMENTS:this.gettext("Visibility of Built-in UI Elements",void 0,"title"),LAYER_VISIBILITY:this.gettext("Layer Visibility",void 0,"title"),CUSTOMIZABLE_CONTENT:this.gettext("Customizable Content",void 0,"title"),FUNCTIONALITY:this.gettext("Functionality",void 0,"title"),APPEARANCE:this.gettext("Appearance",void 0,"title"),MAIN_SCENE:this.gettext("Primary View",void 0,"title"),FEEDBACK_TO_EMAIL:this.gettext("Email Feedback from Users",void 0,"title"),SECURITY:this.gettext("Security",void 0,"title"),MAP_APPEARANCE:this.gettext("Map Appearance",void 0,"title")}},t.ɵfac=function(e){return new(e||t)(a.ɵɵinject("gettext"))},t.ɵprov=a.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.TextGenService=s,a.ɵsetClassMetadata(s,[{type:o.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:void 0,decorators:[{type:o.Inject,args:["gettext"]}]}]},null),i.module("IVWebApp").service("TextGenService",r.downgradeInjectable(s))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1651),n(1652);var r=function(){function t(t){this.LicenseService=t,this.URL='<a href="https://portal.4DKanKan.com" target="_blank">portal.4DKanKan.com</a>',this.permissionsData={users:void 0,groups:void 0,isDataChanged:void 0}}return t.$inject=["LicenseService"],Object.defineProperty(t.prototype,"daysUntilExpire",{get:function(){return this.LicenseService.daysUntilExpire},enumerable:!0,configurable:!0}),t.prototype.isExpirationPeriod=function(){return this.LicenseService.isExpirationPeriod()},t}();e.LicenseExpiredWarningController=r;var o=function(){function t(){this.restrict="E",this.templateUrl="LicenseWarning/LicenseExpiredWarning.html",this.controller=r,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.LicenseExpiredWarningDirective=o,i.module("IVWebApp").directive("licenseExpiredWarning",o.factory())},function(t,e){var n="LicenseWarning/LicenseExpiredWarning.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div>\n\t\x3c!-- License is going to expire soon warning --\x3e\n\t<div class="alert alert-warning license-expiration-warning iv-panel-warning"\n\t ng-if="vm.isExpirationPeriod()">\n\t\t<span class="fa fa-exclamation-triangle" aria-hidden="true"></span>\n\t\t<div>\n\t\t\t<p><strong translate>Instance key is going to expire soon!</strong></p>\n\t\t\t<p translate\n\t\t\t translate-html-params-link="vm.URL">\n\t\t\t\tYour instance key of 4DKanKan is going to expire soon. Please extend it on {{link}} and import into this 4DKanKan instance using the administration panel in the settings. In case of any further questions, contact your service provider.\n\t\t\t</p>\n\t\t\t<p translate translate-params-days="vm.daysUntilExpire">{{days}} days remaining</p>\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1653);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"license-expired-warning .license-expiration-warning{margin:20px 10px}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1655),n(1656);var r=n(152),o=n(621),a=n(92),s=n(622),c=n(20),l=n(8);n(649);var u=function(){function t(t,e,n){this.LicenseService=t,this.$element=e,this.ConfigService=n,this.userAuthConfigState=o.ConfigState.PROVIDE_CONFIG,this.isOpenIdEnabled=!1,this.isFederatedAuthenticationEnabled=!1,this.federatedAuthenticationPanel=this.$element.find("#federatedAuthenticationPanel"),this.openIdPanel=this.$element.find("#openIdPanel"),this.resetAuthenticationConfig(this.ConfigService)}return t.$inject=["LicenseService","$element","ConfigService"],t.prototype.resetAuthenticationConfig=function(t){var e=this;s.AuthenticationConfiguration.factory()(t).then(function(t){e.authConfig=t,e.toggleCollapse(e.openIdPanel,t.isOpenIdAuthenticationConfigEmpty(),function(t){return e.isOpenIdEnabled=t}),e.toggleCollapse(e.federatedAuthenticationPanel,c.isBlank(t.federatedJwkSetUri),function(t){return e.isFederatedAuthenticationEnabled=t})}).catch(l.handleWarning)},t.prototype.toggleCollapse=function(t,e,n){e?(n(!1),t.collapse("hide")):(n(!0),t.collapse("show"))},t.prototype.handleCheckboxChange=function(t,e,n,i){t.hasClass("collapsing")?n(!e()):e()?t.collapse("show"):(i(),t.collapse("hide"))},t.prototype.canSaveChanges=function(){return!!this.authConfig&&this.authConfig.canSave()&&!this.isUserAuthConfigStateInProgress()},t.prototype.canDiscardChanges=function(){return!!this.authConfig&&this.authConfig.isDirty()&&!this.isUserAuthConfigStateInProgress()},t.prototype.saveChanges=function(){var t=this;this.userAuthConfigState=o.ConfigState.IN_PROGRESS,this.authConfig.save().then(function(){return t.userAuthConfigState=o.ConfigState.SUCCESS}).catch(function(){return t.userAuthConfigState=o.ConfigState.ERROR})},t.prototype.copyIndoorViewerHostUrlToConfig=function(){this.authConfig&&(this.authConfig.oauthHostUrl=r.getBaseUrl())},t.prototype.isUserAuthFeatureEnabled=function(){return this.LicenseService.isFeatureEnabled(a.LicenseFeatureType.USER_MANAGEMENT)},t.prototype.isUserAuthConfigStateInProgress=function(){return this.userAuthConfigState===o.ConfigState.IN_PROGRESS},t.prototype.isUserAuthConfigStateSuccessful=function(){return this.userAuthConfigState===o.ConfigState.SUCCESS},t.prototype.isUserAuthConfigStateError=function(){return this.userAuthConfigState===o.ConfigState.ERROR},t.prototype.isBlank=function(t){return c.isBlank(t)},t.prototype.handleOpenIdCheckboxChange=function(){var t=this;this.handleCheckboxChange(this.openIdPanel,function(){return t.isOpenIdEnabled},function(e){return t.isOpenIdEnabled=e},function(){return t.authConfig.clearOpenIdConfiguration()})},t.prototype.handleFederatedAuthenticationCheckboxChange=function(){var t=this;this.handleCheckboxChange(this.federatedAuthenticationPanel,function(){return t.isFederatedAuthenticationEnabled},function(e){return t.isFederatedAuthenticationEnabled=e},function(){return t.authConfig.federatedJwkSetUri=""})},t.prototype.discardChanges=function(){this.resetAuthenticationConfig(this.ConfigService),this.userAuthConfigState=o.ConfigState.PROVIDE_CONFIG},t}();e.UserAuthConfigController=u;var d=function(){function t(){this.restrict="E",this.templateUrl="Settings/UserAuthConfig.html",this.controller=u,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.UserAuthConfigDirective=d,i.module("IVWebApp").directive("userAuthConfig",d.factory())},function(t,e){var n="Settings/UserAuthConfig.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="panel panel-default panel-sticky-header">\n\t<div class="panel-heading">\n\t\t<div class="control-buttons text-right">\n\t\t\t<discard-button ng-click="vm.discardChanges()"\n\t\t\t ng-disabled="!vm.canDiscardChanges()">\n\t\t\t\t<span translate>Discard</span>\n\t\t\t</discard-button>\n\t\t\t<save-button ng-click="vm.saveChanges()"\n\t\t\t ng-disabled="!vm.canSaveChanges()">\n\t\t\t</save-button>\n\t\t</div>\n\t</div>\n\t<div class="panel-body">\n\t\t<div class="row">\n\t\t\t<div class="col-md-6">\n\t\t\t\t<h4 translate translate-context="title">\n\t\t\t\t\tPrivate Mode\n\t\t\t\t</h4>\n\t\t\t\t<p translate>\n\t\t\t\t\tHere you can enable or disable private mode for this instance.\n\t\t\t\t</p>\n\t\t\t\t<div class="checkbox">\n\t\t\t\t\t<label>\n\t\t\t\t\t\t<input type="checkbox" ng-model="vm.authConfig.isPrivateModeEnabled"/>\n\t\t\t\t\t\t<span translate>Enable private mode</span>\n\t\t\t\t\t</label>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class="row">\n\t\t\t<div class="col-md-6">\n\t\t\t\t<form class="form-horizontal">\n\t\t\t\t\t<h4 translate>OpenID Connect</h4>\n\t\t\t\t\t\x3c!-- user authentication not enabled in a license --\x3e\n\t\t\t\t\t<div class="alert alert-warning"\n\t\t\t\t\t ng-if="!vm.isUserAuthFeatureEnabled()">\n\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\tA fully functional User Authentication module is not available for this instance. Please upgrade your instance key and import it into 4DKanKan.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="checkbox">\n\t\t\t\t\t\t<label>\n\t\t\t\t\t\t\t<input type="checkbox" id="enableCheckbox"\n\t\t\t\t\t\t\t ng-change="vm.handleOpenIdCheckboxChange()"\n\t\t\t\t\t\t\t ng-model="vm.isOpenIdEnabled"\n\t\t\t\t\t\t\t ng-disabled="vm.isUserAuthConfigStateInProgress() || !vm.isUserAuthFeatureEnabled()"/>\n\t\t\t\t\t\t\t<span translate>Enable OpenID Connect</span>\n\t\t\t\t\t\t</label>\n\t\t\t\t\t</div>\n\t\t\t\t\t\x3c!-- user authentication can be enabled - fill in form with config data --\x3e\n\t\t\t\t\t<div #openIdPanel id="openIdPanel" class="collapse">\n\t\t\t\t\t\t<div class="row form-group open-id-form container-fluid">\n\t\t\t\t\t\t\t<div class="col-md-9">\n\t\t\t\t\t\t\t\t<div class="form-group"\n\t\t\t\t\t\t\t\t ng-class="{\'has-success\' : !vm.isBlank(vm.authConfig.oauthHostUrl),\n\t\t\t\t\t\t\t\t\t\t\t\t\'has-error\' : vm.isBlank(vm.authConfig.oauthHostUrl)}">\n\t\t\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\t\t\t\t\tIV instance host URL\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t<i class="fa fa-files-o"\n\t\t\t\t\t\t\t\t\t\t ng-click="vm.copyIndoorViewerHostUrlToConfig()"\n\t\t\t\t\t\t\t\t\t\t title="{{\'Paste host URL of the current IV instance\' | translate}}"></i>\n\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t\t<input class="form-control"\n\t\t\t\t\t\t\t\t\t ng-model="vm.authConfig.oauthHostUrl"\n\t\t\t\t\t\t\t\t\t ng-disabled="!vm.authConfig">\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div class="form-group"\n\t\t\t\t\t\t\t\t ng-class="{\'has-success\' : !vm.isBlank(vm.authConfig.oauthIssuerUrl),\n\t\t\t\t\t\t\t\t\t\t\t\t\'has-error\' : vm.isBlank(vm.authConfig.oauthIssuerUrl)}">\n\t\t\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\t\t\t\t\tOIDC Issuer\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t\t<input class="form-control"\n\t\t\t\t\t\t\t\t\t ng-model="vm.authConfig.oauthIssuerUrl"\n\t\t\t\t\t\t\t\t\t ng-disabled="!vm.authConfig">\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div class="form-group"\n\t\t\t\t\t\t\t\t ng-class="{\'has-success\' : !vm.isBlank(vm.authConfig.oauthClientId),\n\t\t\t\t\t\t\t\t\t\t\t \'has-error\' : vm.isBlank(vm.authConfig.oauthClientId)}">\n\t\t\t\t\t\t\t\t\t<p>Client ID</p>\n\t\t\t\t\t\t\t\t\t<input class="form-control"\n\t\t\t\t\t\t\t\t\t ng-model="vm.authConfig.oauthClientId"\n\t\t\t\t\t\t\t\t\t ng-disabled="!vm.authConfig">\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div class="form-group"\n\t\t\t\t\t\t\t\t ng-class="{\'has-success\' : !vm.isBlank(vm.authConfig.oauthClientSecret),\n\t\t\t\t\t\t\t\t\t\t\t\t\'has-error\' : vm.isBlank(vm.authConfig.oauthClientSecret)}">\n\t\t\t\t\t\t\t\t\t<p>Client Secret</p>\n\t\t\t\t\t\t\t\t\t<input class="form-control"\n\t\t\t\t\t\t\t\t\t ng-model="vm.authConfig.oauthClientSecret"\n\t\t\t\t\t\t\t\t\t ng-disabled="!vm.authConfig">\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div class="form-group"\n\t\t\t\t\t\t\t\t ng-class="{\'has-success\' : !vm.isBlank(vm.authConfig.oauthRedirectUrls),\n\t\t\t\t\t\t\t\t\t\t\t\t\'has-error\' : vm.isBlank(vm.authConfig.oauthRedirectUrls)}">\n\t\t\t\t\t\t\t\t\t<p translate>Redirect URIs (separate multiple with spaces)</p>\n\t\t\t\t\t\t\t\t\t<input class="form-control"\n\t\t\t\t\t\t\t\t\t ng-model="vm.authConfig.oauthRedirectUrls"\n\t\t\t\t\t\t\t\t\t ng-disabled="!vm.authConfig">\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t\t\t\t<div class="checkbox">\n\t\t\t\t\t\t\t\t\t\t<label>\n\t\t\t\t\t\t\t\t\t\t\t<input type="checkbox" id="enableOidcGroupsMapping"\n\t\t\t\t\t\t\t\t\t\t\t ng-model="vm.authConfig.oauthUseGroupsInToken"\n\t\t\t\t\t\t\t\t\t\t\t ng-disabled="vm.isUserAuthConfigStateInProgress() || !vm.isUserAuthFeatureEnabled()"/>\n\t\t\t\t\t\t\t\t\t\t\t<span translate>Map user groups from OIDC access token</span>\n\t\t\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t\t\t<user-auth-group-digest [config]="vm.authConfig"></user-auth-group-digest>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t<div id="externalGroupsPanelOidc"\n\t\t\t\t\t\t\t\t\t ng-hide="(!vm.authConfig.oauthUseGroupsInToken)">\n\t\t\t\t\t\t\t\t\t\t<div class="row form-group open-id-form container-fluid">\n\t\t\t\t\t\t\t\t\t\t\t<div class="col-md-9">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class="form-group"\n\t\t\t\t\t\t\t\t\t\t\t\t ng-class="{\'has-success\' : !vm.isBlank(vm.authConfig.oauthGroupsClaimArrayKey)}">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\t\t\t\t\tOverride OIDC group array JWT claim\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<input class="form-control"\n\t\t\t\t\t\t\t\t\t\t\t\t\t placeholder="Default: $.group"\n\t\t\t\t\t\t\t\t\t\t\t\t\t ng-model="vm.authConfig.oauthGroupsClaimArrayKey"\n\t\t\t\t\t\t\t\t\t\t\t\t\t ng-disabled="!vm.authConfig">\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</form>\n\t\t\t</div>\n\t\t</div>\n\n\t\t<div class="row">\n\t\t\t<div class="col-md-6">\n\t\t\t\t<form class="form-horizontal">\n\t\t\t\t\t<h4 translate>Resource Server</h4>\n\t\t\t\t\t\x3c!-- user authentication not enabled in a license --\x3e\n\t\t\t\t\t<div class="alert alert-warning"\n\t\t\t\t\t ng-if="!vm.isUserAuthFeatureEnabled()">\n\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\tA fully functional User Authentication module is not available for this instance. Please upgrade your instance key and import it into 4DKanKan.\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class="checkbox">\n\t\t\t\t\t\t<label>\n\t\t\t\t\t\t\t<input type="checkbox" id="enableFederated"\n\t\t\t\t\t\t\t ng-change="vm.handleFederatedAuthenticationCheckboxChange()"\n\t\t\t\t\t\t\t ng-model="vm.isFederatedAuthenticationEnabled"\n\t\t\t\t\t\t\t ng-disabled="vm.isUserAuthConfigStateInProgress() || !vm.isUserAuthFeatureEnabled()"/>\n\t\t\t\t\t\t\t<span translate>Enable Resource Server</span>\n\t\t\t\t\t\t</label>\n\t\t\t\t\t</div>\n\t\t\t\t\t\x3c!-- user authentication can be enabled - fill in form with config data --\x3e\n\t\t\t\t\t<div #federatedAuthenticationPanel id="federatedAuthenticationPanel"\n\t\t\t\t\t class="collapse">\n\t\t\t\t\t\t<div class="row form-group open-id-form container-fluid">\n\t\t\t\t\t\t\t<div class="col-md-9">\n\t\t\t\t\t\t\t\t<div class="form-group"\n\t\t\t\t\t\t\t\t ng-class="{\'has-success\' : !vm.isBlank(vm.authConfig.federatedJwkSetUri),\n\t\t\t\t\t\t\t\t\t\t\t\t\'has-error\' : vm.isBlank(vm.authConfig.federatedJwkSetUri)}">\n\t\t\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\t\t\t\t\tJWKS public key URL\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t\t<input class="form-control"\n\t\t\t\t\t\t\t\t\t ng-model="vm.authConfig.federatedJwkSetUri"\n\t\t\t\t\t\t\t\t\t ng-disabled="!vm.authConfig">\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div class="form-group">\n\t\t\t\t\t\t\t\t\t<div class="checkbox">\n\t\t\t\t\t\t\t\t\t\t<label>\n\t\t\t\t\t\t\t\t\t\t\t<input type="checkbox" id="enableFederatedGroupsMapping"\n\t\t\t\t\t\t\t\t\t\t\t ng-model="vm.authConfig.federatedUseGroupsInToken"\n\t\t\t\t\t\t\t\t\t\t\t ng-disabled="vm.isUserAuthConfigStateInProgress() || !vm.isUserAuthFeatureEnabled()"/>\n\t\t\t\t\t\t\t\t\t\t\t<span translate>Map user groups from Resource Server access token</span>\n\t\t\t\t\t\t\t\t\t\t\t<user-auth-group-digest [config]="vm.authConfig"></user-auth-group-digest>\n\t\t\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t<div id="externalGroupsPanel"\n\t\t\t\t\t\t\t\t\t ng-hide="(!vm.authConfig.federatedUseGroupsInToken)">\n\t\t\t\t\t\t\t\t\t\t<div class="row form-group open-id-form container-fluid">\n\t\t\t\t\t\t\t\t\t\t\t<div class="col-md-9">\n\t\t\t\t\t\t\t\t\t\t\t\t<div class="form-group"\n\t\t\t\t\t\t\t\t\t\t\t\t ng-class="{\'has-success\' : !vm.isBlank(vm.authConfig.federatedGroupsClaimArrayKey)}">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t\t\t<span translate>\n\t\t\t\t\t\t\t\t\t\t\tOverride Resource Server group array JWT claim\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<input class="form-control"\n\t\t\t\t\t\t\t\t\t\t\t\t\t placeholder="Default: $.group"\n\t\t\t\t\t\t\t\t\t\t\t\t\t ng-model="vm.authConfig.federatedGroupsClaimArrayKey"\n\t\t\t\t\t\t\t\t\t\t\t\t\t ng-disabled="!vm.authConfig">\n\t\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</form>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n\n\t\x3c!-- user authentication configuration in progress --\x3e\n\t<div class="col-xs-12 mt-10" ng-show="vm.isUserAuthConfigStateInProgress()">\n\t\t<div class="alert alert-info" translate>\n\t\t\tConfiguring user authentication...\n\t\t</div>\n\t</div>\n\t\x3c!-- user authentication successfully configured --\x3e\n\t<div class="col-xs-12 mt-10" ng-if="vm.isUserAuthConfigStateSuccessful()">\n\t\t<div class="alert alert-success" translate>\n\t\t\tUser authentication configuration saved successfully\n\t\t</div>\n\t</div>\n\t\x3c!-- user authentication configuration error --\x3e\n\t<div class="col-xs-12 mt-10" ng-if="vm.isUserAuthConfigStateError()">\n\t\t<div class="alert alert-danger" translate>\n\t\t\tCould not save user authentication configuration\n\t\t</div>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){var i=n(11),r=n(1657);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){(e=n(10)(!1)).push([t.i,"user-auth-config .open-id-form{margin-top:15px}user-auth-config .fa-files-o{margin-left:5px;cursor:pointer}",""]),t.exports=e},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(){this.width="700px"}return t.default=function(){return new t},t}();e.ModalStyleLarge=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2);n(1660),n(1661),n(1663);var r=n(8),o=function(){function t(t){var e=this;t.getInformation().then(function(t){e.isCloud=t.isCloudInstance}).catch(r.handleWarning)}return t.$inject=["InstanceInformationService"],t}();e.LicenseSubscriptionPanelController=o;var a=function(){function t(){this.restrict="E",this.templateUrl="LicenseSubscriptionPanelUI/LicenseSubscriptionPanel.html",this.controller=o,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.LicenseSubscriptionPanelDirective=a,i.module("IVWebApp").directive("licenseSubscriptionPanel",a.factory())},function(t,e){var n="LicenseSubscriptionPanelUI/LicenseSubscriptionPanel.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="panel panel-default">\n\t<div class="panel-body">\n\t\t<form>\n\t\t\t\x3c!-- administration panel --\x3e\n\t\t\t<div id="license-subscription-panel">\n\t\t\t\t<div ng-if="vm.isCloud === false" id="admin-license">\n\t\t\t\t\t<license-config></license-config>\n\t\t\t\t</div>\n\t\t\t\t<div ng-if="vm.isCloud === true" id="admin-subscription">\n\t\t\t\t\t<subscription-info></subscription-info>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</form>\n\t</div>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(1662);var i=n(2),r=n(8),o=n(21),a=function(){function t(t,e){this.LicenseService=t,this.TrackingService=e,this.maxUsersWithGroups=0,this.maxPanoramas=0,this.licensableSquareMeters=0,this.currentUsersWithGroups=0,this.updateInformation()}return t.$inject=["LicenseService","TrackingService"],t.prototype.isMaxLocationsEnforced=function(){return void 0!==this.maxPanoramas},t.prototype.isMaxUsersEnforced=function(){return void 0!==this.maxUsersWithGroups},t.prototype.trackSubscriptionLinkClick=function(){o.TrackingService.trackSubscriptionLinkClick()},t.prototype.updateInformation=function(){var t=this;this.LicenseService.initialize().then(function(e){t.subject=e.subject,t.maxPanoramas=e.maxLocations,t.maxUsersWithGroups=e.maxUsersWithGroups,t.licensableSquareMeters=e.licensableSquareMeters,t.currentUsersWithGroups=e.currentUsersWithGroups}).catch(r.handleWarning)},t}();e.SubscriptionInfoController=a;var s=function(){function t(){this.restrict="E",this.templateUrl="LicenseSubscriptionPanelUI/SubscriptionInfo.html",this.controller=a,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.SubscriptionInfoDirective=s,i.module("IVWebApp").directive("subscriptionInfo",s.factory())},function(t,e){var n="LicenseSubscriptionPanelUI/SubscriptionInfo.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'<div class="container-fluid">\n <div class="row">\n <dl class="col-sm-6 dl-horizontal">\n <dt translate translate-context="Subscription plan">\n Plan\n </dt>\n <dd>\n {{vm.subject}}\n </dd>\n \x3c!--<dt translate>--\x3e\n \x3c!--Disk space--\x3e\n \x3c!--</dt>--\x3e\n \x3c!--<dd>--\x3e\n \x3c!--TODO--\x3e\n \x3c!--</dd>--\x3e\n <dt translate>\n Panoramas\n </dt>\n <dd ng-if="vm.isMaxLocationsEnforced()">\n <span translate translate-params-amount="vm.maxPanoramas">{{amount}} images</span>\n <required></required>\n </dd>\n <dd ng-if="!vm.isMaxLocationsEnforced()" translate>\n Unlimited\n </dd>\n <dt translate>\n Currently in database\n </dt>\n <dd>\n {{ vm.licensableSquareMeters | number:0 }} m<sup>2</sup>\n </dd>\n <dt translate>\n Licensed users\n </dt>\n <dd ng-if="vm.isMaxUsersEnforced()" translate translate-params-amount="vm.maxUsersWithGroups">\n {{amount}} including administrator\n </dd>\n <dd ng-if="!vm.isMaxUsersEnforced()" translate>\n Unlimited\n </dd>\n <dt translate>\n Counted users\n </dt>\n <dd>\n {{vm.currentUsersWithGroups}}\n </dd>\n\n </dl>\n </div>\n <div class="row form-group">\n <div class="col-sm-6">\n <a href="https://www.iv.4DKanKan.com" target="_blank" ng-click="GoogleTagManagerService.trackSubscriptionLinkClick()" translate>\n Manage subscription in 4DKanKan Cloud\n </a>\n </div>\n </div>\n <div class="row form-group">\n <dl class="col-sm-6">\n <dt>\n <required></required>\n <span translate>How do we count panoramas?</span>\n </dt>\n <dd translate>\n Only those panoramas that are two meters or more apart from all the other panoramas are counted towards the subscription.\n </dd>\n </dl>\n </div>\n</div>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(1664);var i=n(2),r=n(621),o=function(){function t(t){this.LicenseService=t,this.licenseConfigState=r.ConfigState.PROVIDE_CONFIG}return t.$inject=["LicenseService"],Object.defineProperty(t.prototype,"license",{get:function(){return this.LicenseService.license},enumerable:!0,configurable:!0}),t.prototype.saveLicense=function(t){var e=this;this.licenseConfigState=r.ConfigState.IN_PROGRESS,this.LicenseService.saveLicense(t).then(function(){return e.saveLicenseSuccess()}).catch(function(){return e.saveLicenseError()})},t.prototype.saveLicenseSuccess=function(){this.licenseConfigState=r.ConfigState.SUCCESS,this.LicenseService.initialize().catch(function(){})},t.prototype.saveLicenseError=function(){this.licenseConfigState=r.ConfigState.ERROR},t.prototype.isLicenseConfigStateInProgress=function(){return this.licenseConfigState===r.ConfigState.IN_PROGRESS},t.prototype.isLicenseConfigStateSuccess=function(){return this.licenseConfigState===r.ConfigState.SUCCESS},t.prototype.isLicenseConfigStateError=function(){return this.licenseConfigState===r.ConfigState.ERROR},t}();e.LicenseConfigController=o;var a=function(){function t(){this.restrict="E",this.templateUrl="LicenseUI/LicenseConfig.html",this.controller=o,this.controllerAs="vm",this.scope=!0}return t.factory=function(){return function(){return new t}},t}();e.LicenseConfigDirective=a,i.module("IVWebApp").directive("licenseConfig",a.factory())},function(t,e){var n="LicenseUI/LicenseConfig.html";window.angular.module("ng").run(["$templateCache",function(t){t.put(n,'\x3c!-- Invalid license annoyance box --\x3e\n<div ng-show="vm.LicenseService.licenseFetched && !vm.LicenseService.isLicenseValid"\n class="alert alert-danger">\n\t<div>\n\t\t<strong translate>\n\t\t\tInvalid instance key!\n\t\t</strong>\n\t\t<span translate ng-if="vm.LicenseService.isLicenseExpired()">\n\t\t\tThe existing instance key is either not yet valid or has expired.\n\t\t</span>\n\t\t<span translate ng-if="vm.LicenseService.isLicenseAreaExceeded()">\n\t\t\tThe licensed area is smaller than the hosted area.\n\t\t</span>\n\t\t<span translate ng-if="vm.LicenseService.isLicenseSignatureInvalid()">\n\t\t\tThe license signature is invalid.\n\t\t</span>\n\t\t<span translate>\n\t\t\tPlease contact your service provider to get a valid key.\n\t\t</span>\n\t</div>\n</div>\n\n\x3c!-- license present --\x3e\n<div class="container-fluid">\n\t<div class="row">\n\t\t<dl class="col-sm-6 dl-horizontal">\n\t\t\t<dt ng-class="{\'text-danger\': vm.LicenseService.isLicenseExpired()}" translate\n\t\t\t ng-if="vm.LicenseService.isLicenseValidFromAvailable()">\n\t\t\t\tValid from\n\t\t\t</dt>\n\t\t\t<dd ng-class="{\'text-danger\': vm.LicenseService.isLicenseExpired()}"\n\t\t\t ng-if="vm.LicenseService.isLicenseValidFromAvailable()">\n\t\t\t\t{{ vm.license.validFrom | date : \'mediumDate\'}}\n\t\t\t</dd>\n\t\t\t<dt ng-class="{\'text-danger\': vm.LicenseService.isLicenseExpired()}" translate\n\t\t\t ng-if="vm.LicenseService.isLicenseValidToAvailable()">\n\t\t\t\tExpires on\n\t\t\t</dt>\n\t\t\t<dd ng-class="{\'text-danger\': vm.LicenseService.isLicenseExpired()}"\n\t\t\t ng-if="vm.LicenseService.isLicenseValidToAvailable()">\n\t\t\t\t{{ vm.license.validTo | date : \'mediumDate\'}}\n\t\t\t</dd>\n\t\t\t<dt ng-class="{\'text-danger\': vm.LicenseService.isLicenseRegisteredUsersExceeded()}"\n\t\t\t ng-if="vm.LicenseService.isLicenseRegisteredUsersAvailable()" translate>\n\t\t\t\tLicensed users\n\t\t\t</dt>\n\t\t\t<dd ng-class="{\'text-danger\': vm.LicenseService.isLicenseRegisteredUsersExceeded()}"\n\t\t\t ng-if="vm.LicenseService.isLicenseRegisteredUsersAvailable()">\n\t\t\t\t{{ vm.license.maxUsersWithGroups }}\n\t\t\t</dd>\n\t\t\t<dt ng-class="{\'text-danger\': vm.LicenseService.isLicenseRegisteredUsersExceeded()}"\n\t\t\t ng-if="vm.LicenseService.isLicenseRegisteredUsersAvailable()" translate>\n\t\t\t\tCounted users\n\t\t\t</dt>\n\t\t\t<dd ng-class="{\'text-danger\': vm.LicenseService.isLicenseRegisteredUsersExceeded()}"\n\t\t\t ng-if="vm.LicenseService.isLicenseRegisteredUsersAvailable()">\n\t\t\t\t{{ vm.license.currentUsersWithGroups }}\n\t\t\t</dd>\n\t\t\t<dt ng-class="{\'text-danger\': vm.LicenseService.isLicenseMaxLocationsExceeded()}"\n\t\t\t ng-if="vm.LicenseService.isLicenseMaxLocationsAvailable()" translate>\n\t\t\t\tLicensed panoramas\n\t\t\t</dt>\n\t\t\t<dd ng-class="{\'text-danger\': vm.LicenseService.isLicenseMaxLocationsExceeded()}"\n\t\t\t ng-if="vm.LicenseService.isLicenseMaxLocationsAvailable()">\n\t\t\t\t{{ vm.license.maxLocations }}\n\t\t\t</dd>\n\t\t\t<dt ng-class="{\'text-danger\': vm.LicenseService.isLicenseMaxLocationsExceeded()}"\n\t\t\t ng-if="vm.LicenseService.isLicenseMaxLocationsAvailable()" translate>\n\t\t\t\tCurrent panoramas\n\t\t\t</dt>\n\t\t\t<dd ng-class="{\'text-danger\': vm.LicenseService.isLicenseMaxLocationsExceeded()}"\n\t\t\t ng-if="vm.LicenseService.isLicenseMaxLocationsAvailable()">\n\t\t\t\t{{ vm.license.currentLocations }}\n\t\t\t</dd>\n\t\t\t<dt ng-class="{\'text-danger\': vm.LicenseService.isLicenseAreaExceeded()}" translate\n\t\t\tng-if="vm.LicenseService.isLicenseAreaAvailable()">\n\t\t\t\tLicensed area\n\t\t\t</dt>\n\t\t\t<dd ng-class="{\'text-danger\': vm.LicenseService.isLicenseAreaExceeded()}"\n\t\t\tng-if="vm.LicenseService.isLicenseAreaAvailable()">\n\t\t\t\t{{ vm.license.area | number:0 }} m<sup>2</sup>\n\t\t\t</dd>\n\t\t\t<dt ng-class="{\'text-danger\': vm.LicenseService.isLicenseAreaExceeded()}" translate>\n\t\t\t\tCurrently in database\n\t\t\t</dt>\n\t\t\t<dd ng-class="{\'text-danger\': vm.LicenseService.isLicenseAreaExceeded()}">\n\t\t\t\t{{ vm.license.licensableSquareMeters | number:0 }} m<sup>2</sup>\n\t\t\t</dd>\n\t\t</dl>\n\t\t<div class="col-sm-6">\n\t\t\t<strong translate>\n\t\t\t\tModules\n\t\t\t</strong>\n\n\t\t\t<ul class="list-unstyled">\n\t\t\t\t<li ng-repeat="feature in vm.license.features">\n\t\t\t\t\t<i class="glyphicon" ng-class="feature.enabled ? \'text-success glyphicon-ok-circle\' : \'text-muted glyphicon-ban-circle\'"></i>\n\t\t\t\t\t<span>{{ feature.displayName | translate }}</span>\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t</div>\n\t</div>\n</div>\n\n<h4 translate translate-context="title">\n\tInsert Instance Key\n</h4>\n\n\x3c!-- License pasting --\x3e\n\n<form>\n\t\x3c!-- text input to paste the license --\x3e\n\t<div class="row">\n\t\t<div class="col-xs-12">\n\t\t\t\x3c!-- license input --\x3e\n\t\t\t<textarea class="form-control form-group" rows="8"\n\t\t\t\t\t ng-model="license_text"\n\t\t\t\t\t placeholder="{{\'Please paste the instance key here\'|translate}}">\n\t\t\t</textarea>\n\n\t\t\t\x3c!-- in progress --\x3e\n\t\t\t<div class="alert alert-info"\n\t\t\t\t ng-show="vm.isLicenseConfigStateInProgress()" translate>\n\t\t\t\tAttempting to apply new instance key...\n\t\t\t</div>\n\n\t\t\t\x3c!-- success --\x3e\n\t\t\t<div class="alert alert-success"\n\t\t\t\t ng-show="vm.isLicenseConfigStateSuccess()" translate>\n\t\t\t\tNew instance key has been successfully set\n\t\t\t</div>\n\n\t\t\t\x3c!-- error --\x3e\n\t\t\t<div class="alert alert-danger"\n\t\t\t\t ng-show="vm.isLicenseConfigStateError()" translate>\n\t\t\t\tSorry, there was an error applying the instance key\n\t\t\t</div>\n\t\t</div>\n\t</div>\n\n\t\x3c!-- button controls --\x3e\n\t<div class="text-right">\n\t\t\x3c!-- save --\x3e\n\t\t<button type="button"\n\t\t\t\tclass="btn btn-primary panel-control-button"\n\t\t\t\tng-click="vm.saveLicense(license_text)"\n\t\t\t\tng-disabled="!license_text"\n\t\t\t\ttranslate>\n\t\t\tSave\n\t\t</button>\n\t</div>\n\n</form>\n')}]),t.exports=n},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(0),r=(n(38),n(148)),o=n(81),a=n(141),s=n(147),c=n(2),l=n(6),u=(n(27),n(120),n(232)),d=n(348),p=(n(15),n(25)),h=(n(21),n(0)),f=n(38),g=n(27),m=n(120),v=n(15),y=n(21),b=function(){function t(t,e,n,i,c,l){var h=this;this.SidebarMenuService=t,this.UserService=e,this.FeatureFlagsService=n,this.ConfigService=i,this.TrackingService=c,this.gettext=l,this.featureKey=u.FeatureFlag.CLOUD_PROCESSING;var f=(new r.SidebarMenuItemBuilder).setKey(o.SidebarMenuItemsKey.CLOUD_PROCESSING).setTitle(this.gettext("Cloud Processing",void 0,"title")).setIcon(new a.IconInfo("material-icons","cloud")).setOnClick(function(){return h.TrackingService.trackCloudProcessingEnterEvent()}).setIsVisible(function(){return h.UserService.isAdmin()&&h.ConfigService.getBoolean(p.Configs.MENU_CLOUD_PROCESSING_VISIBLE,!0)}).setOrder(s.SidebarMenuItemsOrder.CLOUD_PROCESSING).setItems([this.createUploadedDataItem(),this.createProcessingTasksItem(),this.createProcessedDataItem()]).build();this.FeatureFlagsService.isEnabled(this.featureKey).then(function(){return h.SidebarMenuService.addItem(f)}).catch(d.handleDisabledFeature)}return t.prototype.createUploadedDataItem=function(){var t=this;return(new r.SidebarMenuItemBuilder).setTitle(this.gettext("Upload Data",void 0,"title")).setKey(o.SidebarMenuItemsKey.CLOUD_PROCESSING_UPLOADED_DATA).setIcon(new a.IconInfo("material-icons","cloud_upload")).setTemplate("templates/cloudprocessing/UploadedData.html").setOnClick(function(){return t.TrackingService.trackUploadDataEnterEvent()}).setOrder(s.SidebarMenuItemsOrder.CLOUD_PROCESSING_UPLOADED_DATA).setIsFullscreen(!0).build()},t.prototype.createProcessingTasksItem=function(){var t=this;return(new r.SidebarMenuItemBuilder).setTitle(this.gettext("Processing Tasks",void 0,"title")).setKey(o.SidebarMenuItemsKey.CLOUD_PROCESSING_PROCESSING_TASKS).setIcon(new a.IconInfo("material-icons","settings")).setTemplate("templates/cloudprocessing/ProcessingTasks.html").setOnClick(function(){return t.TrackingService.trackProcessingTaskEnterEvent()}).setOrder(s.SidebarMenuItemsOrder.CLOUD_PROCESSING_PROCESSING_TASKS).setIsFullscreen(!0).build()},t.prototype.createProcessedDataItem=function(){var t=this;return(new r.SidebarMenuItemBuilder).setTitle(this.gettext("Processed Data",void 0,"title")).setKey(o.SidebarMenuItemsKey.CLOUD_PROCESSING_PROCESSED_DATA).setIcon(new a.IconInfo("material-icons","cloud_done")).setTemplate("templates/cloudprocessing/ProcessedData.html").setOnClick(function(){return t.TrackingService.trackProcessedDataEnterEvent()}).setOrder(s.SidebarMenuItemsOrder.CLOUD_PROCESSING_PROCESSED_DATA).setIsFullscreen(!0).build()},t.ɵfac=function(e){return new(e||t)(h.ɵɵinject(f.SidebarMenuService),h.ɵɵinject(g.UserService),h.ɵɵinject(m.FeatureFlagsService),h.ɵɵinject(v.ConfigService),h.ɵɵinject(y.TrackingService),h.ɵɵinject("gettext"))},t.ɵprov=h.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.CloudProcessingModule=b,h.ɵsetClassMetadata(b,[{type:i.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:f.SidebarMenuService},{type:g.UserService},{type:m.FeatureFlagsService},{type:v.ConfigService},{type:y.TrackingService},{type:void 0,decorators:[{type:i.Inject,args:["gettext"]}]}]},null),c.module("IVWebApp").service("CloudProcessingModule",l.downgradeInjectable(b))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),n(38);var i=n(148),r=n(81),o=n(141),a=n(147),s=n(0),c=n(6),l=n(2),u=(n(120),n(232)),d=n(348),p=n(21),h=n(0),f=n(38),g=n(120),m=function(){function t(t,e,n){var s=this;this.SidebarMenuService=t,this.gettext=e;var c=(new i.SidebarMenuItemBuilder).setKey(r.SidebarMenuItemsKey.SETTINGS_THEME).setTitle(this.gettext("Theme",void 0,"title")).setIcon(new o.IconInfo("material-icons","palette")).setTemplate(p.TemplateName.THEME_SETTINGS).setOrder(a.SidebarMenuItemsOrder.SETTINGS_THEME_PANEL).setIsFullscreen(!0).build(),l=(new i.SidebarMenuItemBuilder).setKey(r.SidebarMenuItemsKey.DEVELOPER).setTitle(this.gettext("Developer",void 0,"title")).setIcon(new o.IconInfo("material-icons","bug_report")).setTemplate("templates/menu/DeveloperMenu.html").setOrder(a.SidebarMenuItemsOrder.DEVELOPER).setItems([c]).build();n.isEnabled(u.FeatureFlag.DEVELOPER_MENU).then(function(){return s.SidebarMenuService.addItem(l)}).catch(d.handleDisabledFeature)}return t.ɵfac=function(e){return new(e||t)(h.ɵɵinject(f.SidebarMenuService),h.ɵɵinject("gettext"),h.ɵɵinject(g.FeatureFlagsService))},t.ɵprov=h.ɵɵdefineInjectable({token:t,factory:t.ɵfac,providedIn:"root"}),t}();e.DeveloperModule=m,h.ɵsetClassMetadata(m,[{type:s.Injectable,args:[{providedIn:"root"}]}],function(){return[{type:f.SidebarMenuService},{type:void 0,decorators:[{type:s.Inject,args:["gettext"]}]},{type:g.FeatureFlagsService}]},null),l.module("IVWebApp").service("DeveloperModule",c.downgradeInjectable(m))},function(t,e,n){var i=n(11),r=n(1668);"string"==typeof(r=r.__esModule?r.default:r)&&(r=[[t.i,r,""]]);i(r,{insert:"head",singleton:!1}),t.exports=r.locals||{}},function(t,e,n){var i=n(10),r=n(211),o=n(515),a=n(516),s=n(517);e=i(!1);var c=r(o),l=r(a),u=r(s);e.push([t.i,"@font-face{font-family:Open Sans;src:url("+c+') format("woff")}@font-face{font-family:Open Sans;font-weight:700;src:url('+l+') format("woff")}@font-face{font-family:Material Icons;font-style:normal;font-weight:400;src:url('+u+') format("woff")}.material-icons{font-family:Material Icons,sans-serif;font-weight:400;font-style:normal;font-size:24px;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:"liga"}.mat-badge-content{font-family:Roboto,Helvetica Neue,sans-serif}.mat-h1,.mat-headline,.mat-typography h1{font:400 24px/32px Roboto,Helvetica Neue,sans-serif}.mat-h2,.mat-title,.mat-typography h2{font:500 20px/32px Roboto,Helvetica Neue,sans-serif}.mat-h3,.mat-subheading-2,.mat-typography h3{font:400 16px/28px Roboto,Helvetica Neue,sans-serif}.mat-h4,.mat-subheading-1,.mat-typography h4{font:400 15px/24px Roboto,Helvetica Neue,sans-serif}.mat-h5,.mat-typography h5{font:400 11.62px/20px Roboto,Helvetica Neue,sans-serif}.mat-h6,.mat-typography h6{font:400 9.38px/20px Roboto,Helvetica Neue,sans-serif}.mat-body-2,.mat-body-strong{font:500 14px/24px Roboto,Helvetica Neue,sans-serif}.mat-body,.mat-body-1,.mat-typography{font:400 14px/20px Roboto,Helvetica Neue,sans-serif}.mat-caption,.mat-small{font:400 12px/20px Roboto,Helvetica Neue,sans-serif}.mat-display-4,.mat-typography .mat-display-4{font:300 112px/112px Roboto,Helvetica Neue,sans-serif}.mat-display-3,.mat-typography .mat-display-3{font:400 56px/56px Roboto,Helvetica Neue,sans-serif}.mat-display-2,.mat-typography .mat-display-2{font:400 45px/48px Roboto,Helvetica Neue,sans-serif}.mat-display-1,.mat-typography .mat-display-1{font:400 34px/40px Roboto,Helvetica Neue,sans-serif}.mat-bottom-sheet-container{font:400 14px/20px Roboto,Helvetica Neue,sans-serif}.mat-button,.mat-button-toggle,.mat-calendar,.mat-card,.mat-checkbox,.mat-fab,.mat-flat-button,.mat-icon-button,.mat-mini-fab,.mat-raised-button,.mat-stroked-button,.mat-table{font-family:Roboto,Helvetica Neue,sans-serif}.mat-dialog-title{font:500 20px/32px Roboto,Helvetica Neue,sans-serif}.mat-expansion-panel-header{font-family:Roboto,Helvetica Neue,sans-serif}.mat-expansion-panel-content{font:400 14px/20px Roboto,Helvetica Neue,sans-serif}.mat-form-field{font-family:Roboto,Helvetica Neue,sans-serif}.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.34375em) scale(.75);width:133.33333%}.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.34374em) scale(.75);width:133.33334%}.mat-form-field-appearance-legacy.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.33333%}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.00101px);-ms-transform:translateY(-1.28124em) scale(.75);width:133.33334%}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.00102px);-ms-transform:translateY(-1.28123em) scale(.75);width:133.33335%}@media print{.mat-form-field-appearance-legacy.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28122em) scale(.75)}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28121em) scale(.75)}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.2812em) scale(.75)}}.mat-form-field-appearance-fill.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-fill.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-.59375em) scale(.75);width:133.33333%}.mat-form-field-appearance-fill.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-.59374em) scale(.75);width:133.33334%}.mat-form-field-appearance-outline.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-outline.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.59375em) scale(.75);width:133.33333%}.mat-form-field-appearance-outline.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.59374em) scale(.75);width:133.33334%}.mat-menu-item,.mat-paginator,.mat-paginator-page-size .mat-select-trigger,.mat-radio-button,.mat-select,.mat-slide-toggle-content,.mat-slider-thumb-label-text,.mat-stepper-horizontal,.mat-stepper-vertical,.mat-tab-group,.mat-tab-label,.mat-tab-link{font-family:Roboto,Helvetica Neue,sans-serif}.mat-toolbar,.mat-toolbar h1,.mat-toolbar h2,.mat-toolbar h3,.mat-toolbar h4,.mat-toolbar h5,.mat-toolbar h6{font:500 20px/32px Roboto,Helvetica Neue,sans-serif}.mat-list-base .mat-subheader,.mat-list-base[dense] .mat-subheader,.mat-list-item,.mat-list-option,.mat-option,.mat-tooltip{font-family:Roboto,Helvetica Neue,sans-serif}.mat-optgroup-label{font:500 14px/24px Roboto,Helvetica Neue,sans-serif}.mat-simple-snackbar,.mat-tree{font-family:Roboto,Helvetica Neue,sans-serif}.mat-ripple{overflow:hidden;position:relative}.mat-ripple:not(:empty){transform:translateZ(0)}.mat-ripple.mat-ripple-unbounded{overflow:visible}.mat-ripple-element{position:absolute;border-radius:50%;pointer-events:none;transition:opacity,transform 0ms cubic-bezier(0,0,.2,1);transform:scale(0)}.cdk-high-contrast-active .mat-ripple-element{display:none}.cdk-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;outline:0;-webkit-appearance:none;-moz-appearance:none}.cdk-global-overlay-wrapper,.cdk-overlay-container{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper,.cdk-overlay-pane{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{pointer-events:auto;box-sizing:border-box;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:transparent;transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}@media screen and (-ms-high-contrast:active){.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop,.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0}.cdk-overlay-connected-position-bounding-box{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}@keyframes cdk-text-field-autofill-start{/*!*/}@keyframes cdk-text-field-autofill-end{/*!*/}.cdk-text-field-autofill-monitored:-webkit-autofill{animation:cdk-text-field-autofill-start 0s 1ms}.cdk-text-field-autofill-monitored:not(:-webkit-autofill){animation:cdk-text-field-autofill-end 0s 1ms}textarea.cdk-textarea-autosize{resize:none}textarea.cdk-textarea-autosize-measuring{height:auto!important;overflow:hidden!important;padding:2px 0!important;box-sizing:content-box!important}.mat-ripple-element{background-color:rgba(0,0,0,.1)}.mat-option{color:rgba(0,0,0,.87)}.mat-option.mat-active,.mat-option.mat-selected:not(.mat-option-multiple):not(.mat-option-disabled),.mat-option:focus:not(.mat-option-disabled),.mat-option:hover:not(.mat-option-disabled){background:rgba(0,0,0,.04)}.mat-option.mat-active{color:rgba(0,0,0,.87)}.mat-option.mat-option-disabled{color:rgba(0,0,0,.38)}.mat-primary .mat-option.mat-selected:not(.mat-option-disabled){color:#3398c7}.mat-accent .mat-option.mat-selected:not(.mat-option-disabled){color:#33c7ac}.mat-warn .mat-option.mat-selected:not(.mat-option-disabled){color:#f44336}.mat-optgroup-label{color:rgba(0,0,0,.54)}.mat-optgroup-disabled .mat-optgroup-label{color:rgba(0,0,0,.38)}.mat-pseudo-checkbox{color:rgba(0,0,0,.54)}.mat-pseudo-checkbox:after{color:#fafafa}.mat-pseudo-checkbox-disabled{color:#b0b0b0}.mat-primary .mat-pseudo-checkbox-checked,.mat-primary .mat-pseudo-checkbox-indeterminate{background:#3398c7}.mat-accent .mat-pseudo-checkbox-checked,.mat-accent .mat-pseudo-checkbox-indeterminate,.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox-indeterminate{background:#33c7ac}.mat-warn .mat-pseudo-checkbox-checked,.mat-warn .mat-pseudo-checkbox-indeterminate{background:#f44336}.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled,.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled{background:#b0b0b0}.mat-elevation-z0{box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)}.mat-elevation-z1{box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)}.mat-elevation-z2{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.mat-elevation-z3{box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12)}.mat-elevation-z4{box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.mat-elevation-z5{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px 0 rgba(0,0,0,.14),0 1px 14px 0 rgba(0,0,0,.12)}.mat-elevation-z6{box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.mat-elevation-z7{box-shadow:0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)}.mat-elevation-z8{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.mat-elevation-z9{box-shadow:0 5px 6px -3px rgba(0,0,0,.2),0 9px 12px 1px rgba(0,0,0,.14),0 3px 16px 2px rgba(0,0,0,.12)}.mat-elevation-z10{box-shadow:0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12)}.mat-elevation-z11{box-shadow:0 6px 7px -4px rgba(0,0,0,.2),0 11px 15px 1px rgba(0,0,0,.14),0 4px 20px 3px rgba(0,0,0,.12)}.mat-elevation-z12{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.mat-elevation-z13{box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12)}.mat-elevation-z14{box-shadow:0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12)}.mat-elevation-z15{box-shadow:0 8px 9px -5px rgba(0,0,0,.2),0 15px 22px 2px rgba(0,0,0,.14),0 6px 28px 5px rgba(0,0,0,.12)}.mat-elevation-z16{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}.mat-elevation-z17{box-shadow:0 8px 11px -5px rgba(0,0,0,.2),0 17px 26px 2px rgba(0,0,0,.14),0 6px 32px 5px rgba(0,0,0,.12)}.mat-elevation-z18{box-shadow:0 9px 11px -5px rgba(0,0,0,.2),0 18px 28px 2px rgba(0,0,0,.14),0 7px 34px 6px rgba(0,0,0,.12)}.mat-elevation-z19{box-shadow:0 9px 12px -6px rgba(0,0,0,.2),0 19px 29px 2px rgba(0,0,0,.14),0 7px 36px 6px rgba(0,0,0,.12)}.mat-elevation-z20{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 20px 31px 3px rgba(0,0,0,.14),0 8px 38px 7px rgba(0,0,0,.12)}.mat-elevation-z21{box-shadow:0 10px 13px -6px rgba(0,0,0,.2),0 21px 33px 3px rgba(0,0,0,.14),0 8px 40px 7px rgba(0,0,0,.12)}.mat-elevation-z22{box-shadow:0 10px 14px -6px rgba(0,0,0,.2),0 22px 35px 3px rgba(0,0,0,.14),0 8px 42px 7px rgba(0,0,0,.12)}.mat-elevation-z23{box-shadow:0 11px 14px -7px rgba(0,0,0,.2),0 23px 36px 3px rgba(0,0,0,.14),0 9px 44px 8px rgba(0,0,0,.12)}.mat-elevation-z24{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)}.mat-app-background{background-color:#fafafa;color:rgba(0,0,0,.87)}.mat-theme-loaded-marker{display:none}.mat-autocomplete-panel{background:#fff;color:rgba(0,0,0,.87)}.mat-autocomplete-panel:not([class*=mat-elevation-z]){box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.mat-autocomplete-panel .mat-option.mat-selected:not(.mat-active):not(:hover){background:#fff}.mat-autocomplete-panel .mat-option.mat-selected:not(.mat-active):not(:hover):not(.mat-option-disabled){color:rgba(0,0,0,.87)}.mat-badge-content{color:#fff;background:#3398c7}.cdk-high-contrast-active .mat-badge-content{outline:1px solid;border-radius:0}.mat-badge-accent .mat-badge-content{background:#33c7ac;color:rgba(0,0,0,.87)}.mat-badge-warn .mat-badge-content{color:#fff;background:#f44336}.mat-badge{position:relative}.mat-badge-hidden .mat-badge-content{display:none}.mat-badge-disabled .mat-badge-content{background:#b9b9b9;color:rgba(0,0,0,.38)}.mat-badge-content{position:absolute;text-align:center;display:inline-block;border-radius:50%;transition:transform .2s ease-in-out;transform:scale(.6);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;pointer-events:none}.mat-badge-content._mat-animation-noopable,.ng-animate-disabled .mat-badge-content{transition:none}.mat-badge-content.mat-badge-active{transform:none}.mat-badge-small .mat-badge-content{width:16px;height:16px;line-height:16px}.mat-badge-small.mat-badge-above .mat-badge-content{top:-8px}.mat-badge-small.mat-badge-below .mat-badge-content{bottom:-8px}.mat-badge-small.mat-badge-before .mat-badge-content{left:-16px}[dir=rtl] .mat-badge-small.mat-badge-before .mat-badge-content{left:auto;right:-16px}.mat-badge-small.mat-badge-after .mat-badge-content{right:-16px}[dir=rtl] .mat-badge-small.mat-badge-after .mat-badge-content{right:auto;left:-16px}.mat-badge-small.mat-badge-overlap.mat-badge-before .mat-badge-content{left:-8px}[dir=rtl] .mat-badge-small.mat-badge-overlap.mat-badge-before .mat-badge-content{left:auto;right:-8px}.mat-badge-small.mat-badge-overlap.mat-badge-after .mat-badge-content{right:-8px}[dir=rtl] .mat-badge-small.mat-badge-overlap.mat-badge-after .mat-badge-content{right:auto;left:-8px}.mat-badge-medium .mat-badge-content{width:22px;height:22px;line-height:22px}.mat-badge-medium.mat-badge-above .mat-badge-content{top:-11px}.mat-badge-medium.mat-badge-below .mat-badge-content{bottom:-11px}.mat-badge-medium.mat-badge-before .mat-badge-content{left:-22px}[dir=rtl] .mat-badge-medium.mat-badge-before .mat-badge-content{left:auto;right:-22px}.mat-badge-medium.mat-badge-after .mat-badge-content{right:-22px}[dir=rtl] .mat-badge-medium.mat-badge-after .mat-badge-content{right:auto;left:-22px}.mat-badge-medium.mat-badge-overlap.mat-badge-before .mat-badge-content{left:-11px}[dir=rtl] .mat-badge-medium.mat-badge-overlap.mat-badge-before .mat-badge-content{left:auto;right:-11px}.mat-badge-medium.mat-badge-overlap.mat-badge-after .mat-badge-content{right:-11px}[dir=rtl] .mat-badge-medium.mat-badge-overlap.mat-badge-after .mat-badge-content{right:auto;left:-11px}.mat-badge-large .mat-badge-content{width:28px;height:28px;line-height:28px}.mat-badge-large.mat-badge-above .mat-badge-content{top:-14px}.mat-badge-large.mat-badge-below .mat-badge-content{bottom:-14px}.mat-badge-large.mat-badge-before .mat-badge-content{left:-28px}[dir=rtl] .mat-badge-large.mat-badge-before .mat-badge-content{left:auto;right:-28px}.mat-badge-large.mat-badge-after .mat-badge-content{right:-28px}[dir=rtl] .mat-badge-large.mat-badge-after .mat-badge-content{right:auto;left:-28px}.mat-badge-large.mat-badge-overlap.mat-badge-before .mat-badge-content{left:-14px}[dir=rtl] .mat-badge-large.mat-badge-overlap.mat-badge-before .mat-badge-content{left:auto;right:-14px}.mat-badge-large.mat-badge-overlap.mat-badge-after .mat-badge-content{right:-14px}[dir=rtl] .mat-badge-large.mat-badge-overlap.mat-badge-after .mat-badge-content{right:auto;left:-14px}.mat-bottom-sheet-container{box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12);background:#fff;color:rgba(0,0,0,.87)}.mat-button,.mat-icon-button,.mat-stroked-button{color:inherit;background:transparent}.mat-button.mat-primary,.mat-icon-button.mat-primary,.mat-stroked-button.mat-primary{color:#3398c7}.mat-button.mat-accent,.mat-icon-button.mat-accent,.mat-stroked-button.mat-accent{color:#33c7ac}.mat-button.mat-warn,.mat-icon-button.mat-warn,.mat-stroked-button.mat-warn{color:#f44336}.mat-button.mat-accent[disabled],.mat-button.mat-primary[disabled],.mat-button.mat-warn[disabled],.mat-button[disabled][disabled],.mat-icon-button.mat-accent[disabled],.mat-icon-button.mat-primary[disabled],.mat-icon-button.mat-warn[disabled],.mat-icon-button[disabled][disabled],.mat-stroked-button.mat-accent[disabled],.mat-stroked-button.mat-primary[disabled],.mat-stroked-button.mat-warn[disabled],.mat-stroked-button[disabled][disabled]{color:rgba(0,0,0,.26)}.mat-button.mat-primary .mat-button-focus-overlay,.mat-icon-button.mat-primary .mat-button-focus-overlay,.mat-stroked-button.mat-primary .mat-button-focus-overlay{background-color:#3398c7}.mat-button.mat-accent .mat-button-focus-overlay,.mat-icon-button.mat-accent .mat-button-focus-overlay,.mat-stroked-button.mat-accent .mat-button-focus-overlay{background-color:#33c7ac}.mat-button.mat-warn .mat-button-focus-overlay,.mat-icon-button.mat-warn .mat-button-focus-overlay,.mat-stroked-button.mat-warn .mat-button-focus-overlay{background-color:#f44336}.mat-button[disabled] .mat-button-focus-overlay,.mat-icon-button[disabled] .mat-button-focus-overlay,.mat-stroked-button[disabled] .mat-button-focus-overlay{background-color:transparent}.mat-button .mat-ripple-element,.mat-icon-button .mat-ripple-element,.mat-stroked-button .mat-ripple-element{opacity:.1;background-color:currentColor}.mat-button-focus-overlay{background:#000}.mat-stroked-button:not([disabled]){border-color:rgba(0,0,0,.12)}.mat-fab,.mat-flat-button,.mat-mini-fab,.mat-raised-button{color:rgba(0,0,0,.87);background-color:#fff}.mat-fab.mat-primary,.mat-flat-button.mat-primary,.mat-mini-fab.mat-primary,.mat-raised-button.mat-primary{color:#fff}.mat-fab.mat-accent,.mat-flat-button.mat-accent,.mat-mini-fab.mat-accent,.mat-raised-button.mat-accent{color:rgba(0,0,0,.87)}.mat-fab.mat-warn,.mat-flat-button.mat-warn,.mat-mini-fab.mat-warn,.mat-raised-button.mat-warn{color:#fff}.mat-fab.mat-accent[disabled],.mat-fab.mat-primary[disabled],.mat-fab.mat-warn[disabled],.mat-fab[disabled][disabled],.mat-flat-button.mat-accent[disabled],.mat-flat-button.mat-primary[disabled],.mat-flat-button.mat-warn[disabled],.mat-flat-button[disabled][disabled],.mat-mini-fab.mat-accent[disabled],.mat-mini-fab.mat-primary[disabled],.mat-mini-fab.mat-warn[disabled],.mat-mini-fab[disabled][disabled],.mat-raised-button.mat-accent[disabled],.mat-raised-button.mat-primary[disabled],.mat-raised-button.mat-warn[disabled],.mat-raised-button[disabled][disabled]{color:rgba(0,0,0,.26)}.mat-fab.mat-primary,.mat-flat-button.mat-primary,.mat-mini-fab.mat-primary,.mat-raised-button.mat-primary{background-color:#3398c7}.mat-fab.mat-accent,.mat-flat-button.mat-accent,.mat-mini-fab.mat-accent,.mat-raised-button.mat-accent{background-color:#33c7ac}.mat-fab.mat-warn,.mat-flat-button.mat-warn,.mat-mini-fab.mat-warn,.mat-raised-button.mat-warn{background-color:#f44336}.mat-fab.mat-accent[disabled],.mat-fab.mat-primary[disabled],.mat-fab.mat-warn[disabled],.mat-fab[disabled][disabled],.mat-flat-button.mat-accent[disabled],.mat-flat-button.mat-primary[disabled],.mat-flat-button.mat-warn[disabled],.mat-flat-button[disabled][disabled],.mat-mini-fab.mat-accent[disabled],.mat-mini-fab.mat-primary[disabled],.mat-mini-fab.mat-warn[disabled],.mat-mini-fab[disabled][disabled],.mat-raised-button.mat-accent[disabled],.mat-raised-button.mat-primary[disabled],.mat-raised-button.mat-warn[disabled],.mat-raised-button[disabled][disabled]{background-color:rgba(0,0,0,.12)}.mat-fab.mat-primary .mat-ripple-element,.mat-flat-button.mat-primary .mat-ripple-element,.mat-mini-fab.mat-primary .mat-ripple-element,.mat-raised-button.mat-primary .mat-ripple-element{background-color:hsla(0,0%,100%,.1)}.mat-fab.mat-accent .mat-ripple-element,.mat-flat-button.mat-accent .mat-ripple-element,.mat-mini-fab.mat-accent .mat-ripple-element,.mat-raised-button.mat-accent .mat-ripple-element{background-color:rgba(0,0,0,.1)}.mat-fab.mat-warn .mat-ripple-element,.mat-flat-button.mat-warn .mat-ripple-element,.mat-mini-fab.mat-warn .mat-ripple-element,.mat-raised-button.mat-warn .mat-ripple-element{background-color:hsla(0,0%,100%,.1)}.mat-flat-button:not([class*=mat-elevation-z]),.mat-stroked-button:not([class*=mat-elevation-z]){box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)}.mat-raised-button:not([class*=mat-elevation-z]){box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.mat-raised-button:not([disabled]):active:not([class*=mat-elevation-z]){box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)}.mat-raised-button[disabled]:not([class*=mat-elevation-z]){box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)}.mat-fab:not([class*=mat-elevation-z]),.mat-mini-fab:not([class*=mat-elevation-z]){box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.mat-fab:not([disabled]):active:not([class*=mat-elevation-z]),.mat-mini-fab:not([disabled]):active:not([class*=mat-elevation-z]){box-shadow:0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)}.mat-fab[disabled]:not([class*=mat-elevation-z]),.mat-mini-fab[disabled]:not([class*=mat-elevation-z]){box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)}.mat-button-toggle-group,.mat-button-toggle-standalone{box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.mat-button-toggle-group-appearance-standard,.mat-button-toggle-standalone.mat-button-toggle-appearance-standard{box-shadow:none}.mat-button-toggle{color:rgba(0,0,0,.38)}.mat-button-toggle .mat-button-toggle-focus-overlay{background-color:rgba(0,0,0,.12)}.mat-button-toggle-appearance-standard{color:rgba(0,0,0,.87);background:#fff}.mat-button-toggle-appearance-standard .mat-button-toggle-focus-overlay{background-color:#000}.mat-button-toggle-group-appearance-standard .mat-button-toggle+.mat-button-toggle{border-left:1px solid rgba(0,0,0,.12)}[dir=rtl] .mat-button-toggle-group-appearance-standard .mat-button-toggle+.mat-button-toggle{border-left:none;border-right:1px solid rgba(0,0,0,.12)}.mat-button-toggle-group-appearance-standard.mat-button-toggle-vertical .mat-button-toggle+.mat-button-toggle{border-left:none;border-right:none;border-top:1px solid rgba(0,0,0,.12)}.mat-button-toggle-checked{background-color:#e0e0e0;color:rgba(0,0,0,.54)}.mat-button-toggle-checked.mat-button-toggle-appearance-standard{color:rgba(0,0,0,.87)}.mat-button-toggle-disabled{color:rgba(0,0,0,.26);background-color:#eee}.mat-button-toggle-disabled.mat-button-toggle-appearance-standard{background:#fff}.mat-button-toggle-disabled.mat-button-toggle-checked{background-color:#bdbdbd}.mat-button-toggle-group-appearance-standard,.mat-button-toggle-standalone.mat-button-toggle-appearance-standard{border:1px solid rgba(0,0,0,.12)}.mat-card{background:#fff;color:rgba(0,0,0,.87)}.mat-card:not([class*=mat-elevation-z]){box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)}.mat-card.mat-card-flat:not([class*=mat-elevation-z]){box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)}.mat-card-subtitle{color:rgba(0,0,0,.54)}.mat-checkbox-frame{border-color:rgba(0,0,0,.54)}.mat-checkbox-checkmark{fill:#fafafa}.mat-checkbox-checkmark-path{stroke:#fafafa!important}.mat-checkbox-mixedmark{background-color:#fafafa}.mat-checkbox-checked.mat-primary .mat-checkbox-background,.mat-checkbox-indeterminate.mat-primary .mat-checkbox-background{background-color:#3398c7}.mat-checkbox-checked.mat-accent .mat-checkbox-background,.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background{background-color:#33c7ac}.mat-checkbox-checked.mat-warn .mat-checkbox-background,.mat-checkbox-indeterminate.mat-warn .mat-checkbox-background{background-color:#f44336}.mat-checkbox-disabled.mat-checkbox-checked .mat-checkbox-background,.mat-checkbox-disabled.mat-checkbox-indeterminate .mat-checkbox-background{background-color:#b0b0b0}.mat-checkbox-disabled:not(.mat-checkbox-checked) .mat-checkbox-frame{border-color:#b0b0b0}.mat-checkbox-disabled .mat-checkbox-label{color:rgba(0,0,0,.54)}.mat-checkbox .mat-ripple-element{background-color:#000}.mat-checkbox-checked:not(.mat-checkbox-disabled).mat-primary .mat-ripple-element,.mat-checkbox:active:not(.mat-checkbox-disabled).mat-primary .mat-ripple-element{background:#3398c7}.mat-checkbox-checked:not(.mat-checkbox-disabled).mat-accent .mat-ripple-element,.mat-checkbox:active:not(.mat-checkbox-disabled).mat-accent .mat-ripple-element{background:#33c7ac}.mat-checkbox-checked:not(.mat-checkbox-disabled).mat-warn .mat-ripple-element,.mat-checkbox:active:not(.mat-checkbox-disabled).mat-warn .mat-ripple-element{background:#f44336}.mat-chip.mat-standard-chip{background-color:#e0e0e0;color:rgba(0,0,0,.87)}.mat-chip.mat-standard-chip .mat-chip-remove{color:rgba(0,0,0,.87);opacity:.4}.mat-chip.mat-standard-chip:not(.mat-chip-disabled):active{box-shadow:0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12)}.mat-chip.mat-standard-chip:not(.mat-chip-disabled) .mat-chip-remove:hover{opacity:.54}.mat-chip.mat-standard-chip.mat-chip-disabled{opacity:.4}.mat-chip.mat-standard-chip:after{background:#000}.mat-chip.mat-standard-chip.mat-chip-selected.mat-primary{background-color:#3398c7;color:#fff}.mat-chip.mat-standard-chip.mat-chip-selected.mat-primary .mat-chip-remove{color:#fff;opacity:.4}.mat-chip.mat-standard-chip.mat-chip-selected.mat-primary .mat-ripple-element{background-color:hsla(0,0%,100%,.1)}.mat-chip.mat-standard-chip.mat-chip-selected.mat-warn{background-color:#f44336;color:#fff}.mat-chip.mat-standard-chip.mat-chip-selected.mat-warn .mat-chip-remove{color:#fff;opacity:.4}.mat-chip.mat-standard-chip.mat-chip-selected.mat-warn .mat-ripple-element{background-color:hsla(0,0%,100%,.1)}.mat-chip.mat-standard-chip.mat-chip-selected.mat-accent{background-color:#33c7ac;color:rgba(0,0,0,.87)}.mat-chip.mat-standard-chip.mat-chip-selected.mat-accent .mat-chip-remove{color:rgba(0,0,0,.87);opacity:.4}.mat-chip.mat-standard-chip.mat-chip-selected.mat-accent .mat-ripple-element{background-color:rgba(0,0,0,.1)}.mat-table{background:#fff}.mat-table-sticky,.mat-table tbody,.mat-table tfoot,.mat-table thead,[mat-footer-row],[mat-header-row],[mat-row],mat-footer-row,mat-header-row,mat-row{background:inherit}mat-footer-row,mat-header-row,mat-row,td.mat-cell,td.mat-footer-cell,th.mat-header-cell{border-bottom-color:rgba(0,0,0,.12)}.mat-header-cell{color:rgba(0,0,0,.54)}.mat-cell,.mat-footer-cell{color:rgba(0,0,0,.87)}.mat-calendar-arrow{border-top-color:rgba(0,0,0,.54)}.mat-datepicker-content .mat-calendar-next-button,.mat-datepicker-content .mat-calendar-previous-button,.mat-datepicker-toggle{color:rgba(0,0,0,.54)}.mat-calendar-table-header{color:rgba(0,0,0,.38)}.mat-calendar-table-header-divider:after{background:rgba(0,0,0,.12)}.mat-calendar-body-label{color:rgba(0,0,0,.54)}.mat-calendar-body-cell-content{color:rgba(0,0,0,.87);border-color:transparent}.mat-calendar-body-disabled>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected){color:rgba(0,0,0,.38)}.cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected),.cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected),.mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected){background-color:rgba(0,0,0,.04)}.mat-calendar-body-today:not(.mat-calendar-body-selected){border-color:rgba(0,0,0,.38)}.mat-calendar-body-disabled>.mat-calendar-body-today:not(.mat-calendar-body-selected){border-color:rgba(0,0,0,.18)}.mat-calendar-body-selected{background-color:#3398c7;color:#fff}.mat-calendar-body-disabled>.mat-calendar-body-selected{background-color:rgba(51,152,199,.4)}.mat-calendar-body-today.mat-calendar-body-selected{box-shadow:inset 0 0 0 1px #fff}.mat-datepicker-content{box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12);background-color:#fff;color:rgba(0,0,0,.87)}.mat-datepicker-content.mat-accent .mat-calendar-body-selected{background-color:#33c7ac;color:rgba(0,0,0,.87)}.mat-datepicker-content.mat-accent .mat-calendar-body-disabled>.mat-calendar-body-selected{background-color:rgba(51,199,172,.4)}.mat-datepicker-content.mat-accent .mat-calendar-body-today.mat-calendar-body-selected{box-shadow:inset 0 0 0 1px rgba(0,0,0,.87)}.mat-datepicker-content.mat-warn .mat-calendar-body-selected{background-color:#f44336;color:#fff}.mat-datepicker-content.mat-warn .mat-calendar-body-disabled>.mat-calendar-body-selected{background-color:rgba(244,67,54,.4)}.mat-datepicker-content.mat-warn .mat-calendar-body-today.mat-calendar-body-selected{box-shadow:inset 0 0 0 1px #fff}.mat-datepicker-content-touch{box-shadow:0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)}.mat-datepicker-toggle-active{color:#3398c7}.mat-datepicker-toggle-active.mat-accent{color:#33c7ac}.mat-datepicker-toggle-active.mat-warn{color:#f44336}.mat-dialog-container{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12);background:#fff;color:rgba(0,0,0,.87)}.mat-divider{border-top-color:rgba(0,0,0,.12)}.mat-divider-vertical{border-right-color:rgba(0,0,0,.12)}.mat-expansion-panel{background:#fff;color:rgba(0,0,0,.87)}.mat-expansion-panel:not([class*=mat-elevation-z]){box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.mat-action-row{border-top-color:rgba(0,0,0,.12)}.mat-expansion-panel .mat-expansion-panel-header.cdk-keyboard-focused:not([aria-disabled=true]),.mat-expansion-panel .mat-expansion-panel-header.cdk-program-focused:not([aria-disabled=true]),.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:hover:not([aria-disabled=true]){background:rgba(0,0,0,.04)}@media (hover:none){.mat-expansion-panel:not(.mat-expanded):not([aria-disabled=true]) .mat-expansion-panel-header:hover{background:#fff}}.mat-expansion-panel-header-title{color:rgba(0,0,0,.87)}.mat-expansion-indicator:after,.mat-expansion-panel-header-description{color:rgba(0,0,0,.54)}.mat-expansion-panel-header[aria-disabled=true]{color:rgba(0,0,0,.26)}.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-description,.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-title{color:inherit}.mat-form-field-label,.mat-hint{color:rgba(0,0,0,.6)}.mat-form-field.mat-focused .mat-form-field-label{color:#3398c7}.mat-form-field.mat-focused .mat-form-field-label.mat-accent{color:#33c7ac}.mat-form-field.mat-focused .mat-form-field-label.mat-warn{color:#f44336}.mat-focused .mat-form-field-required-marker{color:#33c7ac}.mat-form-field-ripple{background-color:rgba(0,0,0,.87)}.mat-form-field.mat-focused .mat-form-field-ripple{background-color:#3398c7}.mat-form-field.mat-focused .mat-form-field-ripple.mat-accent{background-color:#33c7ac}.mat-form-field.mat-focused .mat-form-field-ripple.mat-warn{background-color:#f44336}.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid) .mat-form-field-infix:after{color:#3398c7}.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid).mat-accent .mat-form-field-infix:after{color:#33c7ac}.mat-form-field-type-mat-native-select.mat-focused:not(.mat-form-field-invalid).mat-warn .mat-form-field-infix:after,.mat-form-field.mat-form-field-invalid .mat-form-field-label,.mat-form-field.mat-form-field-invalid .mat-form-field-label.mat-accent,.mat-form-field.mat-form-field-invalid .mat-form-field-label .mat-form-field-required-marker{color:#f44336}.mat-form-field.mat-form-field-invalid .mat-form-field-ripple,.mat-form-field.mat-form-field-invalid .mat-form-field-ripple.mat-accent{background-color:#f44336}.mat-error{color:#f44336}.mat-form-field-appearance-legacy .mat-form-field-label,.mat-form-field-appearance-legacy .mat-hint{color:rgba(0,0,0,.54)}.mat-form-field-appearance-legacy .mat-form-field-underline{background-color:rgba(0,0,0,.42)}.mat-form-field-appearance-legacy.mat-form-field-disabled .mat-form-field-underline{background-image:linear-gradient(90deg,rgba(0,0,0,.42) 0,rgba(0,0,0,.42) 33%,transparent 0);background-size:4px 100%;background-repeat:repeat-x}.mat-form-field-appearance-standard .mat-form-field-underline{background-color:rgba(0,0,0,.42)}.mat-form-field-appearance-standard.mat-form-field-disabled .mat-form-field-underline{background-image:linear-gradient(90deg,rgba(0,0,0,.42) 0,rgba(0,0,0,.42) 33%,transparent 0);background-size:4px 100%;background-repeat:repeat-x}.mat-form-field-appearance-fill .mat-form-field-flex{background-color:rgba(0,0,0,.04)}.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-flex{background-color:rgba(0,0,0,.02)}.mat-form-field-appearance-fill .mat-form-field-underline:before{background-color:rgba(0,0,0,.42)}.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-label{color:rgba(0,0,0,.38)}.mat-form-field-appearance-fill.mat-form-field-disabled .mat-form-field-underline:before{background-color:transparent}.mat-form-field-appearance-outline .mat-form-field-outline{color:rgba(0,0,0,.12)}.mat-form-field-appearance-outline .mat-form-field-outline-thick{color:rgba(0,0,0,.87)}.mat-form-field-appearance-outline.mat-focused .mat-form-field-outline-thick{color:#3398c7}.mat-form-field-appearance-outline.mat-focused.mat-accent .mat-form-field-outline-thick{color:#33c7ac}.mat-form-field-appearance-outline.mat-focused.mat-warn .mat-form-field-outline-thick,.mat-form-field-appearance-outline.mat-form-field-invalid.mat-form-field-invalid .mat-form-field-outline-thick{color:#f44336}.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-label{color:rgba(0,0,0,.38)}.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-outline{color:rgba(0,0,0,.06)}.mat-icon.mat-primary{color:#3398c7}.mat-icon.mat-accent{color:#33c7ac}.mat-icon.mat-warn{color:#f44336}.mat-form-field-type-mat-native-select .mat-form-field-infix:after{color:rgba(0,0,0,.54)}.mat-form-field-type-mat-native-select.mat-form-field-disabled .mat-form-field-infix:after,.mat-input-element:disabled{color:rgba(0,0,0,.38)}.mat-input-element{caret-color:#3398c7}.mat-input-element::placeholder{color:rgba(0,0,0,.42)}.mat-input-element::-moz-placeholder{color:rgba(0,0,0,.42)}.mat-input-element::-webkit-input-placeholder{color:rgba(0,0,0,.42)}.mat-input-element:-ms-input-placeholder{color:rgba(0,0,0,.42)}.mat-accent .mat-input-element{caret-color:#33c7ac}.mat-form-field-invalid .mat-input-element,.mat-warn .mat-input-element{caret-color:#f44336}.mat-form-field-type-mat-native-select.mat-form-field-invalid .mat-form-field-infix:after{color:#f44336}.mat-list-base .mat-list-item,.mat-list-base .mat-list-option{color:rgba(0,0,0,.87)}.mat-list-base .mat-subheader{color:rgba(0,0,0,.54)}.mat-list-item-disabled{background-color:#eee}.mat-action-list .mat-list-item:focus,.mat-action-list .mat-list-item:hover,.mat-list-option:focus,.mat-list-option:hover,.mat-nav-list .mat-list-item:focus,.mat-nav-list .mat-list-item:hover{background:rgba(0,0,0,.04)}.mat-list-single-selected-option,.mat-list-single-selected-option:focus,.mat-list-single-selected-option:hover{background:rgba(0,0,0,.12)}.mat-menu-panel{background:#fff}.mat-menu-panel:not([class*=mat-elevation-z]){box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.mat-menu-item{background:transparent;color:rgba(0,0,0,.87)}.mat-menu-item[disabled],.mat-menu-item[disabled]:after{color:rgba(0,0,0,.38)}.mat-menu-item-submenu-trigger:after,.mat-menu-item .mat-icon-no-color{color:rgba(0,0,0,.54)}.mat-menu-item-highlighted:not([disabled]),.mat-menu-item.cdk-keyboard-focused:not([disabled]),.mat-menu-item.cdk-program-focused:not([disabled]),.mat-menu-item:hover:not([disabled]){background:rgba(0,0,0,.04)}.mat-paginator{background:#fff}.mat-paginator,.mat-paginator-page-size .mat-select-trigger{color:rgba(0,0,0,.54)}.mat-paginator-decrement,.mat-paginator-increment{border-top:2px solid rgba(0,0,0,.54);border-right:2px solid rgba(0,0,0,.54)}.mat-paginator-first,.mat-paginator-last{border-top:2px solid rgba(0,0,0,.54)}.mat-icon-button[disabled] .mat-paginator-decrement,.mat-icon-button[disabled] .mat-paginator-first,.mat-icon-button[disabled] .mat-paginator-increment,.mat-icon-button[disabled] .mat-paginator-last{border-color:rgba(0,0,0,.38)}.mat-progress-bar-background{fill:#52a7cf}.mat-progress-bar-buffer{background-color:#52a7cf}.mat-progress-bar-fill:after{background-color:#3398c7}.mat-progress-bar.mat-accent .mat-progress-bar-background{fill:#52cfb8}.mat-progress-bar.mat-accent .mat-progress-bar-buffer{background-color:#52cfb8}.mat-progress-bar.mat-accent .mat-progress-bar-fill:after{background-color:#33c7ac}.mat-progress-bar.mat-warn .mat-progress-bar-background{fill:#ffcdd2}.mat-progress-bar.mat-warn .mat-progress-bar-buffer{background-color:#ffcdd2}.mat-progress-bar.mat-warn .mat-progress-bar-fill:after{background-color:#f44336}.mat-progress-spinner circle,.mat-spinner circle{stroke:#3398c7}.mat-progress-spinner.mat-accent circle,.mat-spinner.mat-accent circle{stroke:#33c7ac}.mat-progress-spinner.mat-warn circle,.mat-spinner.mat-warn circle{stroke:#f44336}.mat-radio-outer-circle{border-color:rgba(0,0,0,.54)}.mat-radio-button.mat-primary.mat-radio-checked .mat-radio-outer-circle{border-color:#3398c7}.mat-radio-button.mat-primary.mat-radio-checked .mat-radio-persistent-ripple,.mat-radio-button.mat-primary .mat-radio-inner-circle,.mat-radio-button.mat-primary .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple),.mat-radio-button.mat-primary:active .mat-radio-persistent-ripple{background-color:#3398c7}.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:#33c7ac}.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-persistent-ripple,.mat-radio-button.mat-accent .mat-radio-inner-circle,.mat-radio-button.mat-accent .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple),.mat-radio-button.mat-accent:active .mat-radio-persistent-ripple{background-color:#33c7ac}.mat-radio-button.mat-warn.mat-radio-checked .mat-radio-outer-circle{border-color:#f44336}.mat-radio-button.mat-warn.mat-radio-checked .mat-radio-persistent-ripple,.mat-radio-button.mat-warn .mat-radio-inner-circle,.mat-radio-button.mat-warn .mat-radio-ripple .mat-ripple-element:not(.mat-radio-persistent-ripple),.mat-radio-button.mat-warn:active .mat-radio-persistent-ripple{background-color:#f44336}.mat-radio-button.mat-radio-disabled.mat-radio-checked .mat-radio-outer-circle,.mat-radio-button.mat-radio-disabled .mat-radio-outer-circle{border-color:rgba(0,0,0,.38)}.mat-radio-button.mat-radio-disabled .mat-radio-inner-circle,.mat-radio-button.mat-radio-disabled .mat-radio-ripple .mat-ripple-element{background-color:rgba(0,0,0,.38)}.mat-radio-button.mat-radio-disabled .mat-radio-label-content{color:rgba(0,0,0,.38)}.mat-radio-button .mat-ripple-element{background-color:#000}.mat-select-value{color:rgba(0,0,0,.87)}.mat-select-placeholder{color:rgba(0,0,0,.42)}.mat-select-disabled .mat-select-value{color:rgba(0,0,0,.38)}.mat-select-arrow{color:rgba(0,0,0,.54)}.mat-select-panel{background:#fff}.mat-select-panel:not([class*=mat-elevation-z]){box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.mat-select-panel .mat-option.mat-selected:not(.mat-option-multiple){background:rgba(0,0,0,.12)}.mat-form-field.mat-focused.mat-primary .mat-select-arrow{color:#3398c7}.mat-form-field.mat-focused.mat-accent .mat-select-arrow{color:#33c7ac}.mat-form-field.mat-focused.mat-warn .mat-select-arrow,.mat-form-field .mat-select.mat-select-invalid .mat-select-arrow{color:#f44336}.mat-form-field .mat-select.mat-select-disabled .mat-select-arrow{color:rgba(0,0,0,.38)}.mat-drawer-container{background-color:#fafafa;color:rgba(0,0,0,.87)}.mat-drawer{color:rgba(0,0,0,.87)}.mat-drawer,.mat-drawer.mat-drawer-push{background-color:#fff}.mat-drawer:not(.mat-drawer-side){box-shadow:0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)}.mat-drawer-side{border-right:1px solid rgba(0,0,0,.12)}.mat-drawer-side.mat-drawer-end,[dir=rtl] .mat-drawer-side{border-left:1px solid rgba(0,0,0,.12);border-right:none}[dir=rtl] .mat-drawer-side.mat-drawer-end{border-left:none;border-right:1px solid rgba(0,0,0,.12)}.mat-drawer-backdrop.mat-drawer-shown{background-color:rgba(0,0,0,.6)}.mat-slide-toggle.mat-checked .mat-slide-toggle-thumb{background-color:#33c7ac}.mat-slide-toggle.mat-checked .mat-slide-toggle-bar{background-color:rgba(51,199,172,.54)}.mat-slide-toggle.mat-checked .mat-ripple-element{background-color:#33c7ac}.mat-slide-toggle.mat-primary.mat-checked .mat-slide-toggle-thumb{background-color:#3398c7}.mat-slide-toggle.mat-primary.mat-checked .mat-slide-toggle-bar{background-color:rgba(51,152,199,.54)}.mat-slide-toggle.mat-primary.mat-checked .mat-ripple-element{background-color:#3398c7}.mat-slide-toggle.mat-warn.mat-checked .mat-slide-toggle-thumb{background-color:#f44336}.mat-slide-toggle.mat-warn.mat-checked .mat-slide-toggle-bar{background-color:rgba(244,67,54,.54)}.mat-slide-toggle.mat-warn.mat-checked .mat-ripple-element{background-color:#f44336}.mat-slide-toggle:not(.mat-checked) .mat-ripple-element{background-color:#000}.mat-slide-toggle-thumb{box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);background-color:#fafafa}.mat-slide-toggle-bar{background-color:rgba(0,0,0,.38)}.mat-slider-track-background{background-color:rgba(0,0,0,.26)}.mat-primary .mat-slider-thumb,.mat-primary .mat-slider-thumb-label,.mat-primary .mat-slider-track-fill{background-color:#3398c7}.mat-primary .mat-slider-thumb-label-text{color:#fff}.mat-accent .mat-slider-thumb,.mat-accent .mat-slider-thumb-label,.mat-accent .mat-slider-track-fill{background-color:#33c7ac}.mat-accent .mat-slider-thumb-label-text{color:rgba(0,0,0,.87)}.mat-warn .mat-slider-thumb,.mat-warn .mat-slider-thumb-label,.mat-warn .mat-slider-track-fill{background-color:#f44336}.mat-warn .mat-slider-thumb-label-text{color:#fff}.mat-slider-focus-ring{background-color:rgba(51,199,172,.2)}.cdk-focused .mat-slider-track-background,.mat-slider:hover .mat-slider-track-background{background-color:rgba(0,0,0,.38)}.mat-slider-disabled .mat-slider-thumb,.mat-slider-disabled .mat-slider-track-background,.mat-slider-disabled .mat-slider-track-fill,.mat-slider-disabled:hover .mat-slider-track-background{background-color:rgba(0,0,0,.26)}.mat-slider-min-value .mat-slider-focus-ring{background-color:rgba(0,0,0,.12)}.mat-slider-min-value.mat-slider-thumb-label-showing .mat-slider-thumb,.mat-slider-min-value.mat-slider-thumb-label-showing .mat-slider-thumb-label{background-color:rgba(0,0,0,.87)}.mat-slider-min-value.mat-slider-thumb-label-showing.cdk-focused .mat-slider-thumb,.mat-slider-min-value.mat-slider-thumb-label-showing.cdk-focused .mat-slider-thumb-label{background-color:rgba(0,0,0,.26)}.mat-slider-min-value:not(.mat-slider-thumb-label-showing) .mat-slider-thumb{border-color:rgba(0,0,0,.26);background-color:transparent}.mat-slider-min-value:not(.mat-slider-thumb-label-showing).cdk-focused .mat-slider-thumb,.mat-slider-min-value:not(.mat-slider-thumb-label-showing):hover .mat-slider-thumb{border-color:rgba(0,0,0,.38)}.mat-slider-min-value:not(.mat-slider-thumb-label-showing).cdk-focused.mat-slider-disabled .mat-slider-thumb,.mat-slider-min-value:not(.mat-slider-thumb-label-showing):hover.mat-slider-disabled .mat-slider-thumb{border-color:rgba(0,0,0,.26)}.mat-slider-has-ticks .mat-slider-wrapper:after{border-color:rgba(0,0,0,.7)}.mat-slider-horizontal .mat-slider-ticks{background-image:repeating-linear-gradient(90deg,rgba(0,0,0,.7),rgba(0,0,0,.7) 2px,transparent 0,transparent);background-image:-moz-repeating-linear-gradient(.0001deg,rgba(0,0,0,.7),rgba(0,0,0,.7) 2px,transparent 0,transparent)}.mat-slider-vertical .mat-slider-ticks{background-image:repeating-linear-gradient(180deg,rgba(0,0,0,.7),rgba(0,0,0,.7) 2px,transparent 0,transparent)}.mat-step-header.cdk-keyboard-focused,.mat-step-header.cdk-program-focused,.mat-step-header:hover{background-color:rgba(0,0,0,.04)}@media (hover:none){.mat-step-header:hover{background:none}}.mat-step-header .mat-step-label,.mat-step-header .mat-step-optional{color:rgba(0,0,0,.54)}.mat-step-header .mat-step-icon{background-color:rgba(0,0,0,.54);color:#fff}.mat-step-header .mat-step-icon-selected,.mat-step-header .mat-step-icon-state-done,.mat-step-header .mat-step-icon-state-edit{background-color:#3398c7;color:#fff}.mat-step-header .mat-step-icon-state-error{background-color:transparent;color:#f44336}.mat-step-header .mat-step-label.mat-step-label-active{color:rgba(0,0,0,.87)}.mat-step-header .mat-step-label.mat-step-label-error{color:#f44336}.mat-stepper-horizontal,.mat-stepper-vertical{background-color:#fff}.mat-stepper-vertical-line:before{border-left-color:rgba(0,0,0,.12)}.mat-horizontal-stepper-header:after,.mat-horizontal-stepper-header:before,.mat-stepper-horizontal-line{border-top-color:rgba(0,0,0,.12)}.mat-sort-header-arrow{color:#757575}.mat-tab-header,.mat-tab-nav-bar{border-bottom:1px solid rgba(0,0,0,.12)}.mat-tab-group-inverted-header .mat-tab-header,.mat-tab-group-inverted-header .mat-tab-nav-bar{border-top:1px solid rgba(0,0,0,.12);border-bottom:none}.mat-tab-label,.mat-tab-link{color:rgba(0,0,0,.87)}.mat-tab-label.mat-tab-disabled,.mat-tab-link.mat-tab-disabled{color:rgba(0,0,0,.38)}.mat-tab-header-pagination-chevron{border-color:rgba(0,0,0,.87)}.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:rgba(0,0,0,.38)}.mat-tab-group[class*=mat-background-] .mat-tab-header,.mat-tab-nav-bar[class*=mat-background-]{border-bottom:none;border-top:none}.mat-tab-group.mat-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:rgba(82,167,207,.3)}.mat-tab-group.mat-primary .mat-ink-bar,.mat-tab-nav-bar.mat-primary .mat-ink-bar{background-color:#3398c7}.mat-tab-group.mat-primary.mat-background-primary .mat-ink-bar,.mat-tab-nav-bar.mat-primary.mat-background-primary .mat-ink-bar{background-color:#fff}.mat-tab-group.mat-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:rgba(82,207,184,.3)}.mat-tab-group.mat-accent .mat-ink-bar,.mat-tab-nav-bar.mat-accent .mat-ink-bar{background-color:#33c7ac}.mat-tab-group.mat-accent.mat-background-accent .mat-ink-bar,.mat-tab-nav-bar.mat-accent.mat-background-accent .mat-ink-bar{background-color:rgba(0,0,0,.87)}.mat-tab-group.mat-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:rgba(255,205,210,.3)}.mat-tab-group.mat-warn .mat-ink-bar,.mat-tab-nav-bar.mat-warn .mat-ink-bar{background-color:#f44336}.mat-tab-group.mat-warn.mat-background-warn .mat-ink-bar,.mat-tab-nav-bar.mat-warn.mat-background-warn .mat-ink-bar{background-color:#fff}.mat-tab-group.mat-background-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-primary .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-primary .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-primary .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-primary .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:rgba(82,167,207,.3)}.mat-tab-group.mat-background-primary .mat-tab-header,.mat-tab-group.mat-background-primary .mat-tab-header-pagination,.mat-tab-group.mat-background-primary .mat-tab-links,.mat-tab-nav-bar.mat-background-primary .mat-tab-header,.mat-tab-nav-bar.mat-background-primary .mat-tab-header-pagination,.mat-tab-nav-bar.mat-background-primary .mat-tab-links{background-color:#3398c7}.mat-tab-group.mat-background-primary .mat-tab-label,.mat-tab-group.mat-background-primary .mat-tab-link,.mat-tab-nav-bar.mat-background-primary .mat-tab-label,.mat-tab-nav-bar.mat-background-primary .mat-tab-link{color:#fff}.mat-tab-group.mat-background-primary .mat-tab-label.mat-tab-disabled,.mat-tab-group.mat-background-primary .mat-tab-link.mat-tab-disabled,.mat-tab-nav-bar.mat-background-primary .mat-tab-label.mat-tab-disabled,.mat-tab-nav-bar.mat-background-primary .mat-tab-link.mat-tab-disabled{color:hsla(0,0%,100%,.4)}.mat-tab-group.mat-background-primary .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-primary .mat-tab-header-pagination-chevron{border-color:#fff}.mat-tab-group.mat-background-primary .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-primary .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:hsla(0,0%,100%,.4)}.mat-tab-group.mat-background-primary .mat-ripple-element,.mat-tab-nav-bar.mat-background-primary .mat-ripple-element{background-color:hsla(0,0%,100%,.12)}.mat-tab-group.mat-background-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-accent .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-accent .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-accent .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-accent .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:rgba(82,207,184,.3)}.mat-tab-group.mat-background-accent .mat-tab-header,.mat-tab-group.mat-background-accent .mat-tab-header-pagination,.mat-tab-group.mat-background-accent .mat-tab-links,.mat-tab-nav-bar.mat-background-accent .mat-tab-header,.mat-tab-nav-bar.mat-background-accent .mat-tab-header-pagination,.mat-tab-nav-bar.mat-background-accent .mat-tab-links{background-color:#33c7ac}.mat-tab-group.mat-background-accent .mat-tab-label,.mat-tab-group.mat-background-accent .mat-tab-link,.mat-tab-nav-bar.mat-background-accent .mat-tab-label,.mat-tab-nav-bar.mat-background-accent .mat-tab-link{color:rgba(0,0,0,.87)}.mat-tab-group.mat-background-accent .mat-tab-label.mat-tab-disabled,.mat-tab-group.mat-background-accent .mat-tab-link.mat-tab-disabled,.mat-tab-nav-bar.mat-background-accent .mat-tab-label.mat-tab-disabled,.mat-tab-nav-bar.mat-background-accent .mat-tab-link.mat-tab-disabled{color:rgba(0,0,0,.4)}.mat-tab-group.mat-background-accent .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-accent .mat-tab-header-pagination-chevron{border-color:rgba(0,0,0,.87)}.mat-tab-group.mat-background-accent .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-accent .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:rgba(0,0,0,.4)}.mat-tab-group.mat-background-accent .mat-ripple-element,.mat-tab-nav-bar.mat-background-accent .mat-ripple-element{background-color:rgba(0,0,0,.12)}.mat-tab-group.mat-background-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-group.mat-background-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-warn .mat-tab-label.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-warn .mat-tab-label.cdk-program-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-warn .mat-tab-link.cdk-keyboard-focused:not(.mat-tab-disabled),.mat-tab-nav-bar.mat-background-warn .mat-tab-link.cdk-program-focused:not(.mat-tab-disabled){background-color:rgba(255,205,210,.3)}.mat-tab-group.mat-background-warn .mat-tab-header,.mat-tab-group.mat-background-warn .mat-tab-header-pagination,.mat-tab-group.mat-background-warn .mat-tab-links,.mat-tab-nav-bar.mat-background-warn .mat-tab-header,.mat-tab-nav-bar.mat-background-warn .mat-tab-header-pagination,.mat-tab-nav-bar.mat-background-warn .mat-tab-links{background-color:#f44336}.mat-tab-group.mat-background-warn .mat-tab-label,.mat-tab-group.mat-background-warn .mat-tab-link,.mat-tab-nav-bar.mat-background-warn .mat-tab-label,.mat-tab-nav-bar.mat-background-warn .mat-tab-link{color:#fff}.mat-tab-group.mat-background-warn .mat-tab-label.mat-tab-disabled,.mat-tab-group.mat-background-warn .mat-tab-link.mat-tab-disabled,.mat-tab-nav-bar.mat-background-warn .mat-tab-label.mat-tab-disabled,.mat-tab-nav-bar.mat-background-warn .mat-tab-link.mat-tab-disabled{color:hsla(0,0%,100%,.4)}.mat-tab-group.mat-background-warn .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-warn .mat-tab-header-pagination-chevron{border-color:#fff}.mat-tab-group.mat-background-warn .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-warn .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:hsla(0,0%,100%,.4)}.mat-tab-group.mat-background-warn .mat-ripple-element,.mat-tab-nav-bar.mat-background-warn .mat-ripple-element{background-color:hsla(0,0%,100%,.12)}.mat-toolbar{background:#f5f5f5;color:rgba(0,0,0,.87)}.mat-toolbar.mat-primary{background:#3398c7;color:#fff}.mat-toolbar.mat-accent{background:#33c7ac;color:rgba(0,0,0,.87)}.mat-toolbar.mat-warn{background:#f44336;color:#fff}.mat-toolbar .mat-focused .mat-form-field-ripple,.mat-toolbar .mat-form-field-ripple,.mat-toolbar .mat-form-field-underline{background-color:currentColor}.mat-toolbar .mat-focused .mat-form-field-label,.mat-toolbar .mat-form-field-label,.mat-toolbar .mat-form-field.mat-focused .mat-select-arrow,.mat-toolbar .mat-select-arrow,.mat-toolbar .mat-select-value{color:inherit}.mat-toolbar .mat-input-element{caret-color:currentColor}.mat-tooltip{background:rgba(97,97,97,.9)}.mat-tree{background:#fff}.mat-nested-tree-node,.mat-tree-node{color:rgba(0,0,0,.87)}.mat-snack-bar-container{color:hsla(0,0%,100%,.7);background:#323232;box-shadow:0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)}.mat-simple-snackbar-action{color:#33c7ac}.mat-badge-content{font-weight:600;font-size:12px;font-family:Open Sans}.mat-badge-small .mat-badge-content{font-size:9px}.mat-badge-large .mat-badge-content{font-size:24px}.mat-h1,.mat-headline,.mat-typography h1{font:400 24px/32px Open Sans;letter-spacing:normal;margin:0 0 16px}.mat-h2,.mat-title,.mat-typography h2{font:500 20px/32px Open Sans;letter-spacing:normal;margin:0 0 16px}.mat-h3,.mat-subheading-2,.mat-typography h3{font:400 16px/28px Open Sans;letter-spacing:normal;margin:0 0 16px}.mat-h4,.mat-subheading-1,.mat-typography h4{font:400 15px/24px Open Sans;letter-spacing:normal;margin:0 0 16px}.mat-h5,.mat-typography h5{font:400 11.62px/20px Open Sans;margin:0 0 12px}.mat-h6,.mat-typography h6{font:400 9.38px/20px Open Sans;margin:0 0 12px}.mat-body-2,.mat-body-strong{font:500 14px/24px Open Sans;letter-spacing:normal}.mat-body,.mat-body-1,.mat-typography{font:400 14px/20px Open Sans;letter-spacing:normal}.mat-body-1 p,.mat-body p,.mat-typography p{margin:0 0 12px}.mat-caption,.mat-small{font:400 12px/20px Open Sans;letter-spacing:normal}.mat-display-4,.mat-typography .mat-display-4{font:300 112px/112px Open Sans;letter-spacing:-.05em;margin:0 0 56px}.mat-display-3,.mat-typography .mat-display-3{font:400 56px/56px Open Sans;letter-spacing:-.02em;margin:0 0 64px}.mat-display-2,.mat-typography .mat-display-2{font:400 45px/48px Open Sans;letter-spacing:-.005em;margin:0 0 64px}.mat-display-1,.mat-typography .mat-display-1{font:400 34px/40px Open Sans;letter-spacing:normal;margin:0 0 64px}.mat-bottom-sheet-container{font:400 14px/20px Open Sans;letter-spacing:normal}.mat-button,.mat-fab,.mat-flat-button,.mat-icon-button,.mat-mini-fab,.mat-raised-button,.mat-stroked-button{font-family:Open Sans;font-size:14px;font-weight:500}.mat-button-toggle,.mat-card{font-family:Open Sans}.mat-card-title{font-size:24px;font-weight:500}.mat-card-header .mat-card-title{font-size:20px}.mat-card-content,.mat-card-subtitle{font-size:14px}.mat-checkbox{font-family:Open Sans}.mat-checkbox-layout .mat-checkbox-label{line-height:24px}.mat-chip{font-size:14px;font-weight:500}.mat-chip .mat-chip-remove.mat-icon,.mat-chip .mat-chip-trailing-icon.mat-icon{font-size:18px}.mat-table{font-family:Open Sans}.mat-header-cell{font-size:12px;font-weight:500}.mat-cell,.mat-footer-cell{font-size:14px}.mat-calendar{font-family:Open Sans}.mat-calendar-body{font-size:13px}.mat-calendar-body-label,.mat-calendar-period-button{font-size:14px;font-weight:500}.mat-calendar-table-header th{font-size:11px;font-weight:400}.mat-dialog-title{font:500 20px/32px Open Sans;letter-spacing:normal}.mat-expansion-panel-header{font-family:Open Sans;font-size:15px;font-weight:400}.mat-expansion-panel-content{font:400 14px/20px Open Sans;letter-spacing:normal}.mat-form-field{font-size:inherit;font-weight:400;line-height:1.125;font-family:Open Sans;letter-spacing:normal}.mat-form-field-wrapper{padding-bottom:1.34375em}.mat-form-field-prefix .mat-icon,.mat-form-field-suffix .mat-icon{font-size:150%;line-height:1.125}.mat-form-field-prefix .mat-icon-button,.mat-form-field-suffix .mat-icon-button{height:1.5em;width:1.5em}.mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field-suffix .mat-icon-button .mat-icon{height:1.125em;line-height:1.125}.mat-form-field-infix{padding:.5em 0;border-top:.84375em solid transparent}.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.34373em) scale(.75);width:133.33335%}.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.34372em) scale(.75);width:133.33336%}.mat-form-field-label-wrapper{top:-.84375em;padding-top:.84375em}.mat-form-field-label{top:1.34375em}.mat-form-field-underline{bottom:1.34375em}.mat-form-field-subscript-wrapper{font-size:75%;margin-top:.66667em;top:calc(100% - 1.79167em)}.mat-form-field-appearance-legacy .mat-form-field-wrapper{padding-bottom:1.25em}.mat-form-field-appearance-legacy .mat-form-field-infix{padding:.4375em 0}.mat-form-field-appearance-legacy.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.00106px);-ms-transform:translateY(-1.28119em) scale(.75);width:133.33339%}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.00107px);-ms-transform:translateY(-1.28118em) scale(.75);width:133.3334%}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(.00108px);-ms-transform:translateY(-1.28117em) scale(.75);width:133.33341%}.mat-form-field-appearance-legacy .mat-form-field-label{top:1.28125em}.mat-form-field-appearance-legacy .mat-form-field-underline{bottom:1.25em}.mat-form-field-appearance-legacy .mat-form-field-subscript-wrapper{margin-top:.54167em;top:calc(100% - 1.66667em)}@media print{.mat-form-field-appearance-legacy.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28116em) scale(.75)}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28115em) scale(.75)}.mat-form-field-appearance-legacy.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28114em) scale(.75)}}.mat-form-field-appearance-fill .mat-form-field-infix{padding:.25em 0 .75em}.mat-form-field-appearance-fill .mat-form-field-label{top:1.09375em;margin-top:-.5em}.mat-form-field-appearance-fill.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-fill.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-.59373em) scale(.75);width:133.33335%}.mat-form-field-appearance-fill.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-.59372em) scale(.75);width:133.33336%}.mat-form-field-appearance-outline .mat-form-field-infix{padding:1em 0}.mat-form-field-appearance-outline .mat-form-field-label{top:1.84375em;margin-top:-.25em}.mat-form-field-appearance-outline.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-appearance-outline.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.59373em) scale(.75);width:133.33335%}.mat-form-field-appearance-outline.mat-form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.59372em) scale(.75);width:133.33336%}.mat-grid-tile-footer,.mat-grid-tile-header{font-size:14px}.mat-grid-tile-footer .mat-line,.mat-grid-tile-header .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-grid-tile-footer .mat-line:nth-child(n+2),.mat-grid-tile-header .mat-line:nth-child(n+2){font-size:12px}input.mat-input-element{margin-top:-.0625em}.mat-menu-item{font-family:Open Sans;font-size:14px;font-weight:400}.mat-paginator,.mat-paginator-page-size .mat-select-trigger{font-family:Open Sans;font-size:12px}.mat-radio-button,.mat-select{font-family:Open Sans}.mat-select-trigger{height:1.125em}.mat-slide-toggle-content{font-family:Open Sans}.mat-slider-thumb-label-text{font-family:Open Sans;font-size:12px;font-weight:500}.mat-stepper-horizontal,.mat-stepper-vertical{font-family:Open Sans}.mat-step-label{font-size:14px;font-weight:400}.mat-step-sub-label-error{font-weight:400}.mat-step-label-error{font-size:14px}.mat-step-label-selected{font-size:14px;font-weight:500}.mat-tab-group{font-family:Open Sans}.mat-tab-label,.mat-tab-link{font-family:Open Sans;font-size:14px;font-weight:500}.mat-toolbar,.mat-toolbar h1,.mat-toolbar h2,.mat-toolbar h3,.mat-toolbar h4,.mat-toolbar h5,.mat-toolbar h6{font:500 20px/32px Open Sans;letter-spacing:normal;margin:0}.mat-tooltip{font-family:Open Sans;font-size:10px;padding-top:6px;padding-bottom:6px}.mat-tooltip-handset{font-size:14px;padding-top:8px;padding-bottom:8px}.mat-list-item,.mat-list-option{font-family:Open Sans}.mat-list-base .mat-list-item{font-size:16px}.mat-list-base .mat-list-item .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-list-base .mat-list-item .mat-line:nth-child(n+2){font-size:14px}.mat-list-base .mat-list-option{font-size:16px}.mat-list-base .mat-list-option .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-list-base .mat-list-option .mat-line:nth-child(n+2){font-size:14px}.mat-list-base .mat-subheader{font-family:Open Sans;font-size:14px;font-weight:500}.mat-list-base[dense] .mat-list-item{font-size:12px}.mat-list-base[dense] .mat-list-item .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-list-base[dense] .mat-list-item .mat-line:nth-child(n+2),.mat-list-base[dense] .mat-list-option{font-size:12px}.mat-list-base[dense] .mat-list-option .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-list-base[dense] .mat-list-option .mat-line:nth-child(n+2){font-size:12px}.mat-list-base[dense] .mat-subheader{font-family:Open Sans;font-size:12px;font-weight:500}.mat-option{font-family:Open Sans;font-size:16px}.mat-optgroup-label{font:500 14px/24px Open Sans;letter-spacing:normal}.mat-simple-snackbar{font-family:Open Sans;font-size:14px}.mat-simple-snackbar-action{line-height:1;font-family:inherit;font-size:inherit;font-weight:500}.mat-tree{font-family:Open Sans}.mat-nested-tree-node,.mat-tree-node{font-weight:400;font-size:14px}.mat-dialog-actions{min-height:68px!important;box-sizing:border-box}.mat-form-field.mat-form-field-type-mat-input.mat-form-field-appearance-outline .mat-form-field-prefix,.mat-form-field.mat-form-field-type-mat-input.mat-form-field-appearance-outline>.mat-form-field-wrapper>.mat-form-field-flex>.mat-form-field-suffix{top:0}.mat-form-field.mat-form-field-type-mat-input.mat-form-field-appearance-outline .mat-form-field-prefix>.mat-icon-button,.mat-form-field.mat-form-field-type-mat-input.mat-form-field-appearance-outline>.mat-form-field-wrapper>.mat-form-field-flex>.mat-form-field-suffix>.mat-icon-button{top:.4em}.mat-form-field.mat-form-field-type-mat-input.mat-form-field-appearance-outline.mat-form-field-can-float.mat-form-field-should-float>.mat-form-field-wrapper>.mat-form-field-flex>.mat-form-field-infix>.mat-form-field-label-wrapper>.mat-form-field-label{transform:translateY(-1.88em) scale(.75);width:133.33335%}.mat-form-field.mat-form-field-type-mat-input.mat-form-field-appearance-outline>.mat-form-field-wrapper>.mat-form-field-flex{padding:0 16px}.mat-form-field.mat-form-field-type-mat-input.mat-form-field-appearance-outline>.mat-form-field-wrapper>.mat-form-field-flex>.mat-form-field-outline{top:0}.mat-form-field.mat-form-field-type-mat-input.mat-form-field-appearance-outline>.mat-form-field-wrapper>.mat-form-field-flex>.mat-form-field-infix{border-top:0;padding:1.465em 0}.mat-form-field.mat-form-field-type-mat-input.mat-form-field-appearance-outline>.mat-form-field-wrapper>.mat-form-field-flex>.mat-form-field-infix>.mat-form-field-label-wrapper>.mat-form-field-label{top:2.29em;margin-top:0}.mat-button>.mat-button-wrapper{display:flex;align-items:center}.mat-button>.mat-button-wrapper>.mat-icon{margin-right:-8px}.mat-button-toggle-group-appearance-standard .mat-button-toggle{margin:2px;flex:1 1 0}.mat-button-toggle-group-appearance-standard .mat-button-toggle+.mat-button-toggle{border-left:none;margin-left:0}.mat-button-toggle-group-appearance-standard .mat-button-toggle.mat-button-toggle-checked{background-color:#3398c7;color:#fff}.mat-button-toggle-group-appearance-standard .mat-button-toggle.mat-button-toggle-checked>.mat-button-toggle-focus-overlay{border-bottom:48px solid}.mat-button-toggle-group-appearance-standard .mat-button-toggle.mat-button-toggle-checked:first-child{border-radius:3px 0 0 3px}.mat-button-toggle-group-appearance-standard .mat-button-toggle.mat-button-toggle-checked:last-child{border-radius:0 3px 3px 0}label.mat-checkbox-layout{font-weight:inherit;margin-bottom:unset;max-width:unset}.full-screen-modal{max-width:unset!important;margin:0!important;width:100%;height:100%}.full-screen-modal .mat-dialog-container{max-width:100vw;max-height:100vh;height:100%;width:100%;border-radius:0;display:flex;flex-direction:column}.full-screen-modal .mat-dialog-container .mat-dialog-content{max-height:unset!important;flex-grow:1;display:flex;flex-direction:column}.full-height-modal .mat-dialog-content{max-height:unset}.modal-content-full-size .mat-dialog-container{padding:0;position:relative}.mat-radio-button .mat-radio-label .mat-radio-label-content{font-weight:400}',""]),t.exports=e},function(t,e,n){"use strict";n.r(e);var i=484813681109536e-20,r=Math.PI/2,o=.017453292519943295,a=57.29577951308232,s=Math.PI/4,c=2*Math.PI,l=3.14159265359,u={greenwich:0,lisbon:-9.131906111111,paris:2.337229166667,bogota:-74.080916666667,madrid:-3.687938888889,rome:12.452333333333,bern:7.439583333333,jakarta:106.807719444444,ferro:-17.666666666667,brussels:4.367975,stockholm:18.058277777778,athens:23.7163375,oslo:10.722916666667},d={ft:{to_meter:.3048},"us-ft":{to_meter:1200/3937}},p=/[\s_\-\/\(\)]/g;function h(t,e){if(t[e])return t[e];for(var n,i=Object.keys(t),r=e.toLowerCase().replace(p,""),o=-1;++o<i.length;)if((n=i[o]).toLowerCase().replace(p,"")===r)return t[n]}var f=function(t){var e,n,i,r={},a=t.split("+").map(function(t){return t.trim()}).filter(function(t){return t}).reduce(function(t,e){var n=e.split("=");return n.push(!0),t[n[0].toLowerCase()]=n[1],t},{}),s={proj:"projName",datum:"datumCode",rf:function(t){r.rf=parseFloat(t)},lat_0:function(t){r.lat0=t*o},lat_1:function(t){r.lat1=t*o},lat_2:function(t){r.lat2=t*o},lat_ts:function(t){r.lat_ts=t*o},lon_0:function(t){r.long0=t*o},lon_1:function(t){r.long1=t*o},lon_2:function(t){r.long2=t*o},alpha:function(t){r.alpha=parseFloat(t)*o},lonc:function(t){r.longc=t*o},x_0:function(t){r.x0=parseFloat(t)},y_0:function(t){r.y0=parseFloat(t)},k_0:function(t){r.k0=parseFloat(t)},k:function(t){r.k0=parseFloat(t)},a:function(t){r.a=parseFloat(t)},b:function(t){r.b=parseFloat(t)},r_a:function(){r.R_A=!0},zone:function(t){r.zone=parseInt(t,10)},south:function(){r.utmSouth=!0},towgs84:function(t){r.datum_params=t.split(",").map(function(t){return parseFloat(t)})},to_meter:function(t){r.to_meter=parseFloat(t)},units:function(t){r.units=t;var e=h(d,t);e&&(r.to_meter=e.to_meter)},from_greenwich:function(t){r.from_greenwich=t*o},pm:function(t){var e=h(u,t);r.from_greenwich=(e||parseFloat(t))*o},nadgrids:function(t){"@null"===t?r.datumCode="none":r.nadgrids=t},axis:function(t){3===t.length&&-1!=="ewnsud".indexOf(t.substr(0,1))&&-1!=="ewnsud".indexOf(t.substr(1,1))&&-1!=="ewnsud".indexOf(t.substr(2,1))&&(r.axis=t)}};for(e in a)n=a[e],e in s?"function"==typeof(i=s[e])?i(n):r[i]=n:r[e]=n;return"string"==typeof r.datumCode&&"WGS84"!==r.datumCode&&(r.datumCode=r.datumCode.toLowerCase()),r},g=/\s/,m=/[A-Za-z]/,v=/[A-Za-z84]/,y=/[,\]]/,b=/[\d\.E\-\+]/;function w(t){if("string"!=typeof t)throw new Error("not a string");this.text=t.trim(),this.level=0,this.place=0,this.root=null,this.stack=[],this.currentObject=null,this.state=1}function S(t,e,n){Array.isArray(e)&&(n.unshift(e),e=null);var i=e?{}:t,r=n.reduce(function(t,e){return x(e,t),t},i);e&&(t[e]=r)}function x(t,e){if(Array.isArray(t)){var n=t.shift();if("PARAMETER"===n&&(n=t.shift()),1===t.length)return Array.isArray(t[0])?(e[n]={},void x(t[0],e[n])):void(e[n]=t[0]);if(t.length)if("TOWGS84"!==n){if("AXIS"===n)return n in e||(e[n]=[]),void e[n].push(t);var i;switch(Array.isArray(n)||(e[n]={}),n){case"UNIT":case"PRIMEM":case"VERT_DATUM":return e[n]={name:t[0].toLowerCase(),convert:t[1]},void(3===t.length&&x(t[2],e[n]));case"SPHEROID":case"ELLIPSOID":return e[n]={name:t[0],a:t[1],rf:t[2]},void(4===t.length&&x(t[3],e[n]));case"PROJECTEDCRS":case"PROJCRS":case"GEOGCS":case"GEOCCS":case"PROJCS":case"LOCAL_CS":case"GEODCRS":case"GEODETICCRS":case"GEODETICDATUM":case"EDATUM":case"ENGINEERINGDATUM":case"VERT_CS":case"VERTCRS":case"VERTICALCRS":case"COMPD_CS":case"COMPOUNDCRS":case"ENGINEERINGCRS":case"ENGCRS":case"FITTED_CS":case"LOCAL_DATUM":case"DATUM":return t[0]=["name",t[0]],void S(e,n,t);default:for(i=-1;++i<t.length;)if(!Array.isArray(t[i]))return x(t,e[n]);return S(e,n,t)}}else e[n]=t;else e[n]=!0}else e[t]=!0}function M(t){return.017453292519943295*t}w.prototype.readCharicter=function(){var t=this.text[this.place++];if(4!==this.state)for(;g.test(t);){if(this.place>=this.text.length)return;t=this.text[this.place++]}switch(this.state){case 1:return this.neutral(t);case 2:return this.keyword(t);case 4:return this.quoted(t);case 5:return this.afterquote(t);case 3:return this.number(t);case-1:return}},w.prototype.afterquote=function(t){if('"'===t)return this.word+='"',void(this.state=4);if(y.test(t))return this.word=this.word.trim(),void this.afterItem(t);throw new Error("havn't handled \""+t+'" in afterquote yet, index '+this.place)},w.prototype.afterItem=function(t){return","===t?(null!==this.word&&this.currentObject.push(this.word),this.word=null,void(this.state=1)):"]"===t?(this.level--,null!==this.word&&(this.currentObject.push(this.word),this.word=null),this.state=1,this.currentObject=this.stack.pop(),void(this.currentObject||(this.state=-1))):void 0},w.prototype.number=function(t){if(!b.test(t)){if(y.test(t))return this.word=parseFloat(this.word),void this.afterItem(t);throw new Error("havn't handled \""+t+'" in number yet, index '+this.place)}this.word+=t},w.prototype.quoted=function(t){'"'!==t?this.word+=t:this.state=5},w.prototype.keyword=function(t){if(v.test(t))this.word+=t;else{if("["===t){var e=[];return e.push(this.word),this.level++,null===this.root?this.root=e:this.currentObject.push(e),this.stack.push(this.currentObject),this.currentObject=e,void(this.state=1)}if(!y.test(t))throw new Error("havn't handled \""+t+'" in keyword yet, index '+this.place);this.afterItem(t)}},w.prototype.neutral=function(t){if(m.test(t))return this.word=t,void(this.state=2);if('"'===t)return this.word="",void(this.state=4);if(b.test(t))return this.word=t,void(this.state=3);if(!y.test(t))throw new Error("havn't handled \""+t+'" in neutral yet, index '+this.place);this.afterItem(t)},w.prototype.output=function(){for(;this.place<this.text.length;)this.readCharicter();if(-1===this.state)return this.root;throw new Error('unable to parse string "'+this.text+'". State is '+this.state)};var E=function(t){var e=function(t){return new w(t).output()}(t),n=e.shift(),i=e.shift();e.unshift(["name",i]),e.unshift(["type",n]);var r={};return x(e,r),function(t){if("GEOGCS"===t.type?t.projName="longlat":"LOCAL_CS"===t.type?(t.projName="identity",t.local=!0):"object"==typeof t.PROJECTION?t.projName=Object.keys(t.PROJECTION)[0]:t.projName=t.PROJECTION,t.AXIS){for(var e="",n=0,i=t.AXIS.length;n<i;++n){var r=t.AXIS[n][0].toLowerCase();-1!==r.indexOf("north")?e+="n":-1!==r.indexOf("south")?e+="s":-1!==r.indexOf("east")?e+="e":-1!==r.indexOf("west")&&(e+="w")}2===e.length&&(e+="u"),3===e.length&&(t.axis=e)}t.UNIT&&(t.units=t.UNIT.name.toLowerCase(),"metre"===t.units&&(t.units="meter"),t.UNIT.convert&&("GEOGCS"===t.type?t.DATUM&&t.DATUM.SPHEROID&&(t.to_meter=t.UNIT.convert*t.DATUM.SPHEROID.a):t.to_meter=t.UNIT.convert));var o=t.GEOGCS;function a(e){return e*(t.to_meter||1)}"GEOGCS"===t.type&&(o=t),o&&(o.DATUM?t.datumCode=o.DATUM.name.toLowerCase():t.datumCode=o.name.toLowerCase(),"d_"===t.datumCode.slice(0,2)&&(t.datumCode=t.datumCode.slice(2)),"new_zealand_geodetic_datum_1949"!==t.datumCode&&"new_zealand_1949"!==t.datumCode||(t.datumCode="nzgd49"),"wgs_1984"!==t.datumCode&&"world_geodetic_system_1984"!==t.datumCode||("Mercator_Auxiliary_Sphere"===t.PROJECTION&&(t.sphere=!0),t.datumCode="wgs84"),"_ferro"===t.datumCode.slice(-6)&&(t.datumCode=t.datumCode.slice(0,-6)),"_jakarta"===t.datumCode.slice(-8)&&(t.datumCode=t.datumCode.slice(0,-8)),~t.datumCode.indexOf("belge")&&(t.datumCode="rnb72"),o.DATUM&&o.DATUM.SPHEROID&&(t.ellps=o.DATUM.SPHEROID.name.replace("_19","").replace(/[Cc]larke\_18/,"clrk"),"international"===t.ellps.toLowerCase().slice(0,13)&&(t.ellps="intl"),t.a=o.DATUM.SPHEROID.a,t.rf=parseFloat(o.DATUM.SPHEROID.rf,10)),o.DATUM&&o.DATUM.TOWGS84&&(t.datum_params=o.DATUM.TOWGS84),~t.datumCode.indexOf("osgb_1936")&&(t.datumCode="osgb36"),~t.datumCode.indexOf("osni_1952")&&(t.datumCode="osni52"),(~t.datumCode.indexOf("tm65")||~t.datumCode.indexOf("geodetic_datum_of_1965"))&&(t.datumCode="ire65"),"ch1903+"===t.datumCode&&(t.datumCode="ch1903"),~t.datumCode.indexOf("israel")&&(t.datumCode="isr93")),t.b&&!isFinite(t.b)&&(t.b=t.a),[["standard_parallel_1","Standard_Parallel_1"],["standard_parallel_2","Standard_Parallel_2"],["false_easting","False_Easting"],["false_northing","False_Northing"],["central_meridian","Central_Meridian"],["latitude_of_origin","Latitude_Of_Origin"],["latitude_of_origin","Central_Parallel"],["scale_factor","Scale_Factor"],["k0","scale_factor"],["latitude_of_center","Latitude_Of_Center"],["latitude_of_center","Latitude_of_center"],["lat0","latitude_of_center",M],["longitude_of_center","Longitude_Of_Center"],["longitude_of_center","Longitude_of_center"],["longc","longitude_of_center",M],["x0","false_easting",a],["y0","false_northing",a],["long0","central_meridian",M],["lat0","latitude_of_origin",M],["lat0","standard_parallel_1",M],["lat1","standard_parallel_1",M],["lat2","standard_parallel_2",M],["azimuth","Azimuth"],["alpha","azimuth",M],["srsCode","name"]].forEach(function(e){return n=t,r=(i=e)[0],o=i[1],void(!(r in n)&&o in n&&(n[r]=n[o],3===i.length&&(n[r]=i[2](n[r]))));var n,i,r,o}),t.long0||!t.longc||"Albers_Conic_Equal_Area"!==t.projName&&"Lambert_Azimuthal_Equal_Area"!==t.projName||(t.long0=t.longc),t.lat_ts||!t.lat1||"Stereographic_South_Pole"!==t.projName&&"Polar Stereographic (variant B)"!==t.projName||(t.lat0=M(t.lat1>0?90:-90),t.lat_ts=t.lat1)}(r),r};function C(t){var e=this;if(2===arguments.length){var n=arguments[1];"string"==typeof n?"+"===n.charAt(0)?C[t]=f(arguments[1]):C[t]=E(arguments[1]):C[t]=n}else if(1===arguments.length){if(Array.isArray(t))return t.map(function(t){Array.isArray(t)?C.apply(e,t):C(t)});if("string"==typeof t){if(t in C)return C[t]}else"EPSG"in t?C["EPSG:"+t.EPSG]=t:"ESRI"in t?C["ESRI:"+t.ESRI]=t:"IAU2000"in t?C["IAU2000:"+t.IAU2000]=t:console.log(t);return}}!function(t){t("EPSG:4326","+title=WGS 84 (long/lat) +proj=longlat +ellps=WGS84 +datum=WGS84 +units=degrees"),t("EPSG:4269","+title=NAD83 (long/lat) +proj=longlat +a=6378137.0 +b=6356752.31414036 +ellps=GRS80 +datum=NAD83 +units=degrees"),t("EPSG:3857","+title=WGS 84 / Pseudo-Mercator +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs"),t.WGS84=t["EPSG:4326"],t["EPSG:3785"]=t["EPSG:3857"],t.GOOGLE=t["EPSG:3857"],t["EPSG:900913"]=t["EPSG:3857"],t["EPSG:102113"]=t["EPSG:3857"]}(C);var A=C,T=["PROJECTEDCRS","PROJCRS","GEOGCS","GEOCCS","PROJCS","LOCAL_CS","GEODCRS","GEODETICCRS","GEODETICDATUM","ENGCRS","ENGINEERINGCRS"],O=["3857","900913","3785","102113"],_=function(t){if(!function(t){return"string"==typeof t}(t))return t;if(function(t){return t in A}(t))return A[t];if(function(t){return T.some(function(e){return t.indexOf(e)>-1})}(t)){var e=E(t);if(function(t){var e=h(t,"authority");if(e){var n=h(e,"epsg");return n&&O.indexOf(n)>-1}}(e))return A["EPSG:3857"];var n=function(t){var e=h(t,"extension");if(e)return h(e,"proj4")}(e);return n?f(n):e}return function(t){return"+"===t[0]}(t)?f(t):void 0},P=function(t,e){var n,i;if(t=t||{},!e)return t;for(i in e)void 0!==(n=e[i])&&(t[i]=n);return t},I=function(t,e,n){var i=t*e;return n/Math.sqrt(1-i*i)},k=function(t){return t<0?-1:1},D=function(t){return Math.abs(t)<=l?t:t-k(t)*c},R=function(t,e,n){var i=t*n,o=.5*t;return i=Math.pow((1-i)/(1+i),o),Math.tan(.5*(r-e))/i},L=function(t,e){for(var n,i,o=.5*t,a=r-2*Math.atan(e),s=0;s<=15;s++)if(n=t*Math.sin(a),a+=i=r-2*Math.atan(e*Math.pow((1-n)/(1+n),o))-a,Math.abs(i)<=1e-10)return a;return-9999};function N(t){return t}var j=[{init:function(){var t=this.b/this.a;this.es=1-t*t,"x0"in this||(this.x0=0),"y0"in this||(this.y0=0),this.e=Math.sqrt(this.es),this.lat_ts?this.sphere?this.k0=Math.cos(this.lat_ts):this.k0=I(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts)):this.k0||(this.k?this.k0=this.k:this.k0=1)},forward:function(t){var e,n,i=t.x,o=t.y;if(o*a>90&&o*a<-90&&i*a>180&&i*a<-180)return null;if(Math.abs(Math.abs(o)-r)<=1e-10)return null;if(this.sphere)e=this.x0+this.a*this.k0*D(i-this.long0),n=this.y0+this.a*this.k0*Math.log(Math.tan(s+.5*o));else{var c=Math.sin(o),l=R(this.e,o,c);e=this.x0+this.a*this.k0*D(i-this.long0),n=this.y0-this.a*this.k0*Math.log(l)}return t.x=e,t.y=n,t},inverse:function(t){var e,n,i=t.x-this.x0,o=t.y-this.y0;if(this.sphere)n=r-2*Math.atan(Math.exp(-o/(this.a*this.k0)));else{var a=Math.exp(-o/(this.a*this.k0));if(-9999===(n=L(this.e,a)))return null}return e=D(this.long0+i/(this.a*this.k0)),t.x=e,t.y=n,t},names:["Mercator","Popular Visualisation Pseudo Mercator","Mercator_1SP","Mercator_Auxiliary_Sphere","merc"]},{init:function(){},forward:N,inverse:N,names:["longlat","identity"]}],V={},F=[];function U(t,e){var n=F.length;return t.names?(F[n]=t,t.names.forEach(function(t){V[t.toLowerCase()]=n}),this):(console.log(e),!0)}var B={start:function(){j.forEach(U)},add:U,get:function(t){if(!t)return!1;var e=t.toLowerCase();return void 0!==V[e]&&F[V[e]]?F[V[e]]:void 0}},z={MERIT:{a:6378137,rf:298.257,ellipseName:"MERIT 1983"},SGS85:{a:6378136,rf:298.257,ellipseName:"Soviet Geodetic System 85"},GRS80:{a:6378137,rf:298.257222101,ellipseName:"GRS 1980(IUGG, 1980)"},IAU76:{a:6378140,rf:298.257,ellipseName:"IAU 1976"},airy:{a:6377563.396,b:6356256.91,ellipseName:"Airy 1830"},APL4:{a:6378137,rf:298.25,ellipseName:"Appl. Physics. 1965"},NWL9D:{a:6378145,rf:298.25,ellipseName:"Naval Weapons Lab., 1965"},mod_airy:{a:6377340.189,b:6356034.446,ellipseName:"Modified Airy"},andrae:{a:6377104.43,rf:300,ellipseName:"Andrae 1876 (Den., Iclnd.)"},aust_SA:{a:6378160,rf:298.25,ellipseName:"Australian Natl & S. Amer. 1969"},GRS67:{a:6378160,rf:298.247167427,ellipseName:"GRS 67(IUGG 1967)"},bessel:{a:6377397.155,rf:299.1528128,ellipseName:"Bessel 1841"},bess_nam:{a:6377483.865,rf:299.1528128,ellipseName:"Bessel 1841 (Namibia)"},clrk66:{a:6378206.4,b:6356583.8,ellipseName:"Clarke 1866"},clrk80:{a:6378249.145,rf:293.4663,ellipseName:"Clarke 1880 mod."},clrk58:{a:6378293.645208759,rf:294.2606763692654,ellipseName:"Clarke 1858"},CPM:{a:6375738.7,rf:334.29,ellipseName:"Comm. des Poids et Mesures 1799"},delmbr:{a:6376428,rf:311.5,ellipseName:"Delambre 1810 (Belgium)"},engelis:{a:6378136.05,rf:298.2566,ellipseName:"Engelis 1985"},evrst30:{a:6377276.345,rf:300.8017,ellipseName:"Everest 1830"},evrst48:{a:6377304.063,rf:300.8017,ellipseName:"Everest 1948"},evrst56:{a:6377301.243,rf:300.8017,ellipseName:"Everest 1956"},evrst69:{a:6377295.664,rf:300.8017,ellipseName:"Everest 1969"},evrstSS:{a:6377298.556,rf:300.8017,ellipseName:"Everest (Sabah & Sarawak)"},fschr60:{a:6378166,rf:298.3,ellipseName:"Fischer (Mercury Datum) 1960"},fschr60m:{a:6378155,rf:298.3,ellipseName:"Fischer 1960"},fschr68:{a:6378150,rf:298.3,ellipseName:"Fischer 1968"},helmert:{a:6378200,rf:298.3,ellipseName:"Helmert 1906"},hough:{a:6378270,rf:297,ellipseName:"Hough"},intl:{a:6378388,rf:297,ellipseName:"International 1909 (Hayford)"},kaula:{a:6378163,rf:298.24,ellipseName:"Kaula 1961"},lerch:{a:6378139,rf:298.257,ellipseName:"Lerch 1979"},mprts:{a:6397300,rf:191,ellipseName:"Maupertius 1738"},new_intl:{a:6378157.5,b:6356772.2,ellipseName:"New International 1967"},plessis:{a:6376523,rf:6355863,ellipseName:"Plessis 1817 (France)"},krass:{a:6378245,rf:298.3,ellipseName:"Krassovsky, 1942"},SEasia:{a:6378155,b:6356773.3205,ellipseName:"Southeast Asia"},walbeck:{a:6376896,b:6355834.8467,ellipseName:"Walbeck"},WGS60:{a:6378165,rf:298.3,ellipseName:"WGS 60"},WGS66:{a:6378145,rf:298.25,ellipseName:"WGS 66"},WGS7:{a:6378135,rf:298.26,ellipseName:"WGS 72"}},G=z.WGS84={a:6378137,rf:298.257223563,ellipseName:"WGS 84"};z.sphere={a:6370997,b:6370997,ellipseName:"Normal Sphere (r=6370997)"};var H={wgs84:{towgs84:"0,0,0",ellipse:"WGS84",datumName:"WGS84"},ch1903:{towgs84:"674.374,15.056,405.346",ellipse:"bessel",datumName:"swiss"},ggrs87:{towgs84:"-199.87,74.79,246.62",ellipse:"GRS80",datumName:"Greek_Geodetic_Reference_System_1987"},nad83:{towgs84:"0,0,0",ellipse:"GRS80",datumName:"North_American_Datum_1983"},nad27:{nadgrids:"@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat",ellipse:"clrk66",datumName:"North_American_Datum_1927"},potsdam:{towgs84:"606.0,23.0,413.0",ellipse:"bessel",datumName:"Potsdam Rauenberg 1950 DHDN"},carthage:{towgs84:"-263.0,6.0,431.0",ellipse:"clark80",datumName:"Carthage 1934 Tunisia"},hermannskogel:{towgs84:"653.0,-212.0,449.0",ellipse:"bessel",datumName:"Hermannskogel"},osni52:{towgs84:"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15",ellipse:"airy",datumName:"Irish National"},ire65:{towgs84:"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15",ellipse:"mod_airy",datumName:"Ireland 1965"},rassadiran:{towgs84:"-133.63,-157.5,-158.62",ellipse:"intl",datumName:"Rassadiran"},nzgd49:{towgs84:"59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993",ellipse:"intl",datumName:"New Zealand Geodetic Datum 1949"},osgb36:{towgs84:"446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894",ellipse:"airy",datumName:"Airy 1830"},s_jtsk:{towgs84:"589,76,480",ellipse:"bessel",datumName:"S-JTSK (Ferro)"},beduaram:{towgs84:"-106,-87,188",ellipse:"clrk80",datumName:"Beduaram"},gunung_segara:{towgs84:"-403,684,41",ellipse:"bessel",datumName:"Gunung Segara Jakarta"},rnb72:{towgs84:"106.869,-52.2978,103.724,-0.33657,0.456955,-1.84218,1",ellipse:"intl",datumName:"Reseau National Belge 1972"}},W=function(t,e,n,r,o,a){var s={};return s.datum_type=void 0===t||"none"===t?5:4,e&&(s.datum_params=e.map(parseFloat),0===s.datum_params[0]&&0===s.datum_params[1]&&0===s.datum_params[2]||(s.datum_type=1),s.datum_params.length>3&&(0===s.datum_params[3]&&0===s.datum_params[4]&&0===s.datum_params[5]&&0===s.datum_params[6]||(s.datum_type=2,s.datum_params[3]*=i,s.datum_params[4]*=i,s.datum_params[5]*=i,s.datum_params[6]=s.datum_params[6]/1e6+1))),s.a=n,s.b=r,s.es=o,s.ep2=a,s};function q(t,e){if(!(this instanceof q))return new q(t);e=e||function(t){if(t)throw t};var n=_(t);if("object"==typeof n){var i=q.projections.get(n.projName);if(i){if(n.datumCode&&"none"!==n.datumCode){var r=h(H,n.datumCode);r&&(n.datum_params=r.towgs84?r.towgs84.split(","):null,n.ellps=r.ellipse,n.datumName=r.datumName?r.datumName:n.datumCode)}n.k0=n.k0||1,n.axis=n.axis||"enu",n.ellps=n.ellps||"wgs84";var o,a,s,c,l,u,d=function(t,e,n,i,r){if(!t){var o=h(z,i);o||(o=G),t=o.a,e=o.b,n=o.rf}return n&&!e&&(e=(1-1/n)*t),(0===n||Math.abs(t-e)<1e-10)&&(r=!0,e=t),{a:t,b:e,rf:n,sphere:r}}(n.a,n.b,n.rf,n.ellps,n.sphere),p=(o=d.a,a=d.b,d.rf,l=((s=o*o)-(c=a*a))/s,u=0,n.R_A?(s=(o*=1-l*(.16666666666666666+l*(.04722222222222222+.022156084656084655*l)))*o,l=0):u=Math.sqrt(l),{es:l,e:u,ep2:(s-c)/c}),f=n.datum||W(n.datumCode,n.datum_params,d.a,d.b,p.es,p.ep2);P(this,n),P(this,i),this.a=d.a,this.b=d.b,this.rf=d.rf,this.sphere=d.sphere,this.es=p.es,this.e=p.e,this.ep2=p.ep2,this.datum=f,this.init(),e(null,this)}else e(t)}else e(t)}q.projections=B,q.projections.start();var K=q;function X(t,e,n){var i,o,a,s,c=t.x,l=t.y,u=t.z?t.z:0;if(l<-r&&l>-1.001*r)l=-r;else if(l>r&&l<1.001*r)l=r;else{if(l<-r)return{x:-1/0,y:-1/0,z:t.z};if(l>r)return{x:1/0,y:1/0,z:t.z}}return c>Math.PI&&(c-=2*Math.PI),o=Math.sin(l),s=Math.cos(l),a=o*o,{x:((i=n/Math.sqrt(1-e*a))+u)*s*Math.cos(c),y:(i+u)*s*Math.sin(c),z:(i*(1-e)+u)*o}}function Y(t,e,n,i){var r,o,a,s,c,l,u,d,p,h,f,g,m,v,y,b=t.x,w=t.y,S=t.z?t.z:0;if(r=Math.sqrt(b*b+w*w),o=Math.sqrt(b*b+w*w+S*S),r/n<1e-12){if(v=0,o/n<1e-12)return y=-i,{x:t.x,y:t.y,z:t.z}}else v=Math.atan2(w,b);a=S/o,d=(s=r/o)*(1-e)*(c=1/Math.sqrt(1-e*(2-e)*s*s)),p=a*c,m=0;do{m++,l=e*(u=n/Math.sqrt(1-e*p*p))/(u+(y=r*d+S*p-u*(1-e*p*p))),g=(f=a*(c=1/Math.sqrt(1-l*(2-l)*s*s)))*d-(h=s*(1-l)*c)*p,d=h,p=f}while(g*g>1e-24&&m<30);return{x:v,y:Math.atan(f/Math.abs(h)),z:y}}function Z(t){return 1===t||2===t}var J=function(t,e,n){return function(t,e){return t.datum_type===e.datum_type&&!(t.a!==e.a||Math.abs(t.es-e.es)>5e-11)&&(1===t.datum_type?t.datum_params[0]===e.datum_params[0]&&t.datum_params[1]===e.datum_params[1]&&t.datum_params[2]===e.datum_params[2]:2!==t.datum_type||t.datum_params[0]===e.datum_params[0]&&t.datum_params[1]===e.datum_params[1]&&t.datum_params[2]===e.datum_params[2]&&t.datum_params[3]===e.datum_params[3]&&t.datum_params[4]===e.datum_params[4]&&t.datum_params[5]===e.datum_params[5]&&t.datum_params[6]===e.datum_params[6])}(t,e)||5===t.datum_type||5===e.datum_type?n:t.es!==e.es||t.a!==e.a||Z(t.datum_type)||Z(e.datum_type)?(n=X(n,t.es,t.a),Z(t.datum_type)&&(n=function(t,e,n){if(1===e)return{x:t.x+n[0],y:t.y+n[1],z:t.z+n[2]};if(2===e){var i=n[0],r=n[1],o=n[2],a=n[3],s=n[4],c=n[5],l=n[6];return{x:l*(t.x-c*t.y+s*t.z)+i,y:l*(c*t.x+t.y-a*t.z)+r,z:l*(-s*t.x+a*t.y+t.z)+o}}}(n,t.datum_type,t.datum_params)),Z(e.datum_type)&&(n=function(t,e,n){if(1===e)return{x:t.x-n[0],y:t.y-n[1],z:t.z-n[2]};if(2===e){var i=n[0],r=n[1],o=n[2],a=n[3],s=n[4],c=n[5],l=n[6],u=(t.x-i)/l,d=(t.y-r)/l,p=(t.z-o)/l;return{x:u+c*d-s*p,y:-c*u+d+a*p,z:s*u-a*d+p}}}(n,e.datum_type,e.datum_params)),Y(n,e.es,e.a,e.b)):n},Q=function(t,e,n){var i,r,o,a=n.x,s=n.y,c=n.z||0,l={};for(o=0;o<3;o++)if(!e||2!==o||void 0!==n.z)switch(0===o?(i=a,r=-1!=="ew".indexOf(t.axis[o])?"x":"y"):1===o?(i=s,r=-1!=="ns".indexOf(t.axis[o])?"y":"x"):(i=c,r="z"),t.axis[o]){case"e":case"w":case"n":case"s":l[r]=i;break;case"u":void 0!==n[r]&&(l.z=i);break;case"d":void 0!==n[r]&&(l.z=-i);break;default:return null}return l},$=function(t){var e={x:t[0],y:t[1]};return t.length>2&&(e.z=t[2]),t.length>3&&(e.m=t[3]),e};function tt(t){if("function"==typeof Number.isFinite){if(Number.isFinite(t))return;throw new TypeError("coordinates must be finite numbers")}if("number"!=typeof t||t!=t||!isFinite(t))throw new TypeError("coordinates must be finite numbers")}function et(t,e,n){var i;if(Array.isArray(n)&&(n=$(n)),function(t){tt(t.x),tt(t.y)}(n),t.datum&&e.datum&&function(t,e){return(1===t.datum.datum_type||2===t.datum.datum_type)&&"WGS84"!==e.datumCode||(1===e.datum.datum_type||2===e.datum.datum_type)&&"WGS84"!==t.datumCode}(t,e)&&(n=et(t,i=new K("WGS84"),n),t=i),"enu"!==t.axis&&(n=Q(t,!1,n)),"longlat"===t.projName)n={x:n.x*o,y:n.y*o,z:n.z||0};else if(t.to_meter&&(n={x:n.x*t.to_meter,y:n.y*t.to_meter,z:n.z||0}),!(n=t.inverse(n)))return;return t.from_greenwich&&(n.x+=t.from_greenwich),n=J(t.datum,e.datum,n),e.from_greenwich&&(n={x:n.x-e.from_greenwich,y:n.y,z:n.z||0}),"longlat"===e.projName?n={x:n.x*a,y:n.y*a,z:n.z||0}:(n=e.forward(n),e.to_meter&&(n={x:n.x/e.to_meter,y:n.y/e.to_meter,z:n.z||0})),"enu"!==e.axis?Q(e,!0,n):n}var nt=K("WGS84");function it(t,e,n){var i,r,o;return Array.isArray(n)?(i=et(t,e,n)||{x:NaN,y:NaN},n.length>2?void 0!==t.name&&"geocent"===t.name||void 0!==e.name&&"geocent"===e.name?"number"==typeof i.z?[i.x,i.y,i.z].concat(n.splice(3)):[i.x,i.y,n[2]].concat(n.splice(3)):[i.x,i.y].concat(n.splice(2)):[i.x,i.y]):(r=et(t,e,n),2===(o=Object.keys(n)).length||o.forEach(function(i){if(void 0!==t.name&&"geocent"===t.name||void 0!==e.name&&"geocent"===e.name){if("x"===i||"y"===i||"z"===i)return}else if("x"===i||"y"===i)return;r[i]=n[i]}),r)}function rt(t){return t instanceof K?t:t.oProj?t.oProj:K(t)}var ot=function(t,e,n){t=rt(t);var i,r=!1;return void 0===e?(e=t,t=nt,r=!0):(void 0!==e.x||Array.isArray(e))&&(n=e,e=t,t=nt,r=!0),e=rt(e),n?it(t,e,n):(i={forward:function(n){return it(t,e,n)},inverse:function(n){return it(e,t,n)}},r&&(i.oProj=e),i)},at=73,st=79,ct={forward:lt,inverse:function(t){var e=ht(gt(t.toUpperCase()));return e.lat&&e.lon?[e.lon,e.lat,e.lon,e.lat]:[e.left,e.bottom,e.right,e.top]},toPoint:ut};function lt(t,e){return e=e||5,function(t,e){var n,i,r,o,a,s,c,l,u,d,p,h="00000"+t.easting,f="00000"+t.northing;return t.zoneNumber+t.zoneLetter+(u=t.easting,d=t.northing,p=ft(t.zoneNumber),n=Math.floor(u/1e5),i=Math.floor(d/1e5)%20,o="AJSAJS".charCodeAt(r=p-1),a="AFAFAF".charCodeAt(r),l=!1,(s=o+n-1)>90&&(s=s-90+65-1,l=!0),(s===at||o<at&&s>at||(s>at||o<at)&&l)&&s++,(s===st||o<st&&s>st||(s>st||o<st)&&l)&&++s===at&&s++,s>90&&(s=s-90+65-1),(c=a+i)>86?(c=c-86+65-1,l=!0):l=!1,(c===at||a<at&&c>at||(c>at||a<at)&&l)&&c++,(c===st||a<st&&c>st||(c>st||a<st)&&l)&&++c===at&&c++,c>86&&(c=c-86+65-1),String.fromCharCode(s)+String.fromCharCode(c))+h.substr(h.length-5,e)+f.substr(f.length-5,e)}(function(t){var e,n,i,r,o,a,s=t.lat,c=t.lon,l=6378137,u=dt(s),d=dt(c);a=Math.floor((c+180)/6)+1,180===c&&(a=60),s>=56&&s<64&&c>=3&&c<12&&(a=32),s>=72&&s<84&&(c>=0&&c<9?a=31:c>=9&&c<21?a=33:c>=21&&c<33?a=35:c>=33&&c<42&&(a=37)),o=dt(6*(a-1)-180+3),e=l/Math.sqrt(1-.00669438*Math.sin(u)*Math.sin(u)),n=Math.tan(u)*Math.tan(u),i=.006739496752268451*Math.cos(u)*Math.cos(u);var p=.9996*e*((r=Math.cos(u)*(d-o))+(1-n+i)*r*r*r/6+(5-18*n+n*n+72*i-.39089081163157013)*r*r*r*r*r/120)+5e5,h=.9996*(l*(.9983242984503243*u-.002514607064228144*Math.sin(2*u)+2639046602129982e-21*Math.sin(4*u)-3.418046101696858e-9*Math.sin(6*u))+e*Math.tan(u)*(r*r/2+(5-n+9*i+4*i*i)*r*r*r*r/24+(61-58*n+n*n+600*i-2.2240339282485886)*r*r*r*r*r*r/720));return s<0&&(h+=1e7),{northing:Math.round(h),easting:Math.round(p),zoneNumber:a,zoneLetter:function(t){var e="Z";return 84>=t&&t>=72?e="X":72>t&&t>=64?e="W":64>t&&t>=56?e="V":56>t&&t>=48?e="U":48>t&&t>=40?e="T":40>t&&t>=32?e="S":32>t&&t>=24?e="R":24>t&&t>=16?e="Q":16>t&&t>=8?e="P":8>t&&t>=0?e="N":0>t&&t>=-8?e="M":-8>t&&t>=-16?e="L":-16>t&&t>=-24?e="K":-24>t&&t>=-32?e="J":-32>t&&t>=-40?e="H":-40>t&&t>=-48?e="G":-48>t&&t>=-56?e="F":-56>t&&t>=-64?e="E":-64>t&&t>=-72?e="D":-72>t&&t>=-80&&(e="C"),e}(s)}}({lat:t[1],lon:t[0]}),e)}function ut(t){var e=ht(gt(t.toUpperCase()));return e.lat&&e.lon?[e.lon,e.lat]:[(e.left+e.right)/2,(e.top+e.bottom)/2]}function dt(t){return t*(Math.PI/180)}function pt(t){return t/Math.PI*180}function ht(t){var e=t.northing,n=t.easting,i=t.zoneLetter,r=t.zoneNumber;if(r<0||r>60)return null;var o,a,s,c,l,u,d,p,h=6378137,f=(1-Math.sqrt(.99330562))/(1+Math.sqrt(.99330562)),g=n-5e5,m=e;i<"N"&&(m-=1e7),u=6*(r-1)-180+3,p=(d=m/.9996/6367449.145945056)+(3*f/2-27*f*f*f/32)*Math.sin(2*d)+(21*f*f/16-55*f*f*f*f/32)*Math.sin(4*d)+151*f*f*f/96*Math.sin(6*d),o=h/Math.sqrt(1-.00669438*Math.sin(p)*Math.sin(p)),a=Math.tan(p)*Math.tan(p),s=.006739496752268451*Math.cos(p)*Math.cos(p),c=.99330562*h/Math.pow(1-.00669438*Math.sin(p)*Math.sin(p),1.5),l=g/(.9996*o);var v=p-o*Math.tan(p)/c*(l*l/2-(5+3*a+10*s-4*s*s-.06065547077041606)*l*l*l*l/24+(61+90*a+298*s+45*a*a-1.6983531815716497-3*s*s)*l*l*l*l*l*l/720);v=pt(v);var y,b=(l-(1+2*a+s)*l*l*l/6+(5-2*s+28*a-3*s*s+.05391597401814761+24*a*a)*l*l*l*l*l/120)/Math.cos(p);if(b=u+pt(b),t.accuracy){var w=ht({northing:t.northing+t.accuracy,easting:t.easting+t.accuracy,zoneLetter:t.zoneLetter,zoneNumber:t.zoneNumber});y={top:w.lat,right:w.lon,bottom:v,left:b}}else y={lat:v,lon:b};return y}function ft(t){var e=t%6;return 0===e&&(e=6),e}function gt(t){if(t&&0===t.length)throw"MGRSPoint coverting from nothing";for(var e,n=t.length,i=null,r="",o=0;!/[A-Z]/.test(e=t.charAt(o));){if(o>=2)throw"MGRSPoint bad conversion from: "+t;r+=e,o++}var a=parseInt(r,10);if(0===o||o+3>n)throw"MGRSPoint bad conversion from: "+t;var s=t.charAt(o++);if(s<="A"||"B"===s||"Y"===s||s>="Z"||"I"===s||"O"===s)throw"MGRSPoint zone letter "+s+" not handled: "+t;i=t.substring(o,o+=2);for(var c=ft(a),l=function(t,e){for(var n="AJSAJS".charCodeAt(c-1),i=1e5,r=!1;n!==t.charCodeAt(0);){if(++n===at&&n++,n===st&&n++,n>90){if(r)throw"Bad character: "+t;n=65,r=!0}i+=1e5}return i}(i.charAt(0)),u=function(t,e){if(t>"V")throw"MGRSPoint given invalid Northing "+t;for(var n="AFAFAF".charCodeAt(c-1),i=0,r=!1;n!==t.charCodeAt(0);){if(++n===at&&n++,n===st&&n++,n>86){if(r)throw"Bad character: "+t;n=65,r=!0}i+=1e5}return i}(i.charAt(1));u<mt(s);)u+=2e6;var d=n-o;if(d%2!=0)throw"MGRSPoint has to have an even number \nof digits after the zone letter and two 100km letters - front \nhalf for easting meters, second half for \nnorthing meters"+t;var p,h,f,g=d/2,m=0,v=0;return g>0&&(p=1e5/Math.pow(10,g),h=t.substring(o,o+g),m=parseFloat(h)*p,f=t.substring(o+g),v=parseFloat(f)*p),{easting:m+l,northing:v+u,zoneLetter:s,zoneNumber:a,accuracy:p}}function mt(t){var e;switch(t){case"C":e=11e5;break;case"D":e=2e6;break;case"E":e=28e5;break;case"F":e=37e5;break;case"G":e=46e5;break;case"H":e=55e5;break;case"J":e=64e5;break;case"K":e=73e5;break;case"L":e=82e5;break;case"M":e=91e5;break;case"N":e=0;break;case"P":e=8e5;break;case"Q":e=17e5;break;case"R":e=26e5;break;case"S":e=35e5;break;case"T":e=44e5;break;case"U":e=53e5;break;case"V":e=62e5;break;case"W":e=7e6;break;case"X":e=79e5;break;default:e=-1}if(e>=0)return e;throw"Invalid zone letter: "+t}function vt(t,e,n){if(!(this instanceof vt))return new vt(t,e,n);if(Array.isArray(t))this.x=t[0],this.y=t[1],this.z=t[2]||0;else if("object"==typeof t)this.x=t.x,this.y=t.y,this.z=t.z||0;else if("string"==typeof t&&void 0===e){var i=t.split(",");this.x=parseFloat(i[0],10),this.y=parseFloat(i[1],10),this.z=parseFloat(i[2],10)||0}else this.x=t,this.y=e,this.z=n||0;console.warn("proj4.Point will be removed in version 3, use proj4.toPoint")}vt.fromMGRS=function(t){return new vt(ut(t))},vt.prototype.toMGRS=function(t){return lt([this.x,this.y],t)};var yt=vt,bt=.01068115234375,wt=function(t){var e=[];e[0]=1-t*(.25+t*(.046875+t*(.01953125+t*bt))),e[1]=t*(.75-t*(.046875+t*(.01953125+t*bt)));var n=t*t;return e[2]=n*(.46875-t*(.013020833333333334+.007120768229166667*t)),n*=t,e[3]=n*(.3645833333333333-.005696614583333333*t),e[4]=n*t*.3076171875,e},St=function(t,e,n,i){return n*=e,e*=e,i[0]*t-n*(i[1]+e*(i[2]+e*(i[3]+e*i[4])))},xt=function(t,e,n){for(var i=1/(1-e),r=t,o=20;o;--o){var a=Math.sin(r),s=1-e*a*a;if(r-=s=(St(r,a,Math.cos(r),n)-t)*(s*Math.sqrt(s))*i,Math.abs(s)<1e-10)return r}return r},Mt={init:function(){this.x0=void 0!==this.x0?this.x0:0,this.y0=void 0!==this.y0?this.y0:0,this.long0=void 0!==this.long0?this.long0:0,this.lat0=void 0!==this.lat0?this.lat0:0,this.es&&(this.en=wt(this.es),this.ml0=St(this.lat0,Math.sin(this.lat0),Math.cos(this.lat0),this.en))},forward:function(t){var e,n,i,r=t.x,o=t.y,a=D(r-this.long0),s=Math.sin(o),c=Math.cos(o);if(this.es){var l=c*a,u=Math.pow(l,2),d=this.ep2*Math.pow(c,2),p=Math.pow(d,2),h=Math.abs(c)>1e-10?Math.tan(o):0,f=Math.pow(h,2),g=Math.pow(f,2);e=1-this.es*Math.pow(s,2),l/=Math.sqrt(e);var m=St(o,s,c,this.en);n=this.a*(this.k0*l*(1+u/6*(1-f+d+u/20*(5-18*f+g+14*d-58*f*d+u/42*(61+179*g-g*f-479*f)))))+this.x0,i=this.a*(this.k0*(m-this.ml0+s*a*l/2*(1+u/12*(5-f+9*d+4*p+u/30*(61+g-58*f+270*d-330*f*d+u/56*(1385+543*g-g*f-3111*f))))))+this.y0}else{var v=c*Math.sin(a);if(Math.abs(Math.abs(v)-1)<1e-10)return 93;if(n=.5*this.a*this.k0*Math.log((1+v)/(1-v))+this.x0,i=c*Math.cos(a)/Math.sqrt(1-Math.pow(v,2)),(v=Math.abs(i))>=1){if(v-1>1e-10)return 93;i=0}else i=Math.acos(i);o<0&&(i=-i),i=this.a*this.k0*(i-this.lat0)+this.y0}return t.x=n,t.y=i,t},inverse:function(t){var e,n,i,o,a=(t.x-this.x0)*(1/this.a),s=(t.y-this.y0)*(1/this.a);if(this.es)if(e=this.ml0+s/this.k0,n=xt(e,this.es,this.en),Math.abs(n)<r){var c=Math.sin(n),l=Math.cos(n),u=Math.abs(l)>1e-10?Math.tan(n):0,d=this.ep2*Math.pow(l,2),p=Math.pow(d,2),h=Math.pow(u,2),f=Math.pow(h,2);e=1-this.es*Math.pow(c,2);var g=a*Math.sqrt(e)/this.k0,m=Math.pow(g,2);i=n-(e*=u)*m/(1-this.es)*.5*(1-m/12*(5+3*h-9*d*h+d-4*p-m/30*(61+90*h-252*d*h+45*f+46*d-m/56*(1385+3633*h+4095*f+1574*f*h)))),o=D(this.long0+g*(1-m/6*(1+2*h+d-m/20*(5+28*h+24*f+8*d*h+6*d-m/42*(61+662*h+1320*f+720*f*h))))/l)}else i=r*k(s),o=0;else{var v=Math.exp(a/this.k0),y=.5*(v-1/v),b=this.lat0+s/this.k0,w=Math.cos(b);e=Math.sqrt((1-Math.pow(w,2))/(1+Math.pow(y,2))),i=Math.asin(e),s<0&&(i=-i),o=0===y&&0===w?0:D(Math.atan2(y,w)+this.long0)}return t.x=o,t.y=i,t},names:["Transverse_Mercator","Transverse Mercator","tmerc"]},Et=function(t){var e=Math.exp(t);return(e-1/e)/2},Ct=function(t,e){t=Math.abs(t),e=Math.abs(e);var n=Math.max(t,e),i=Math.min(t,e)/(n||1);return n*Math.sqrt(1+Math.pow(i,2))},At=function(t,e){for(var n,i=2*Math.cos(2*e),r=t.length-1,o=t[r],a=0;--r>=0;)n=i*o-a+t[r],a=o,o=n;return e+n*Math.sin(2*e)},Tt=function(t,e,n){for(var i,r,o=Math.sin(e),a=Math.cos(e),s=Et(n),c=function(t){var e=Math.exp(t);return(e+1/e)/2}(n),l=2*a*c,u=-2*o*s,d=t.length-1,p=t[d],h=0,f=0,g=0;--d>=0;)i=f,r=h,p=l*(f=p)-i-u*(h=g)+t[d],g=u*f-r+l*h;return[(l=o*c)*p-(u=a*s)*g,l*g+u*p]},Ot={init:function(){if(void 0===this.es||this.es<=0)throw new Error("incorrect elliptical usage");this.x0=void 0!==this.x0?this.x0:0,this.y0=void 0!==this.y0?this.y0:0,this.long0=void 0!==this.long0?this.long0:0,this.lat0=void 0!==this.lat0?this.lat0:0,this.cgb=[],this.cbg=[],this.utg=[],this.gtu=[];var t=this.es/(1+Math.sqrt(1-this.es)),e=t/(2-t),n=e;this.cgb[0]=e*(2+e*(-2/3+e*(e*(116/45+e*(26/45+e*(-2854/675)))-2))),this.cbg[0]=e*(e*(2/3+e*(4/3+e*(-82/45+e*(32/45+e*(4642/4725)))))-2),n*=e,this.cgb[1]=n*(7/3+e*(e*(-227/45+e*(2704/315+e*(2323/945)))-1.6)),this.cbg[1]=n*(5/3+e*(-16/15+e*(-13/9+e*(904/315+e*(-1522/945))))),n*=e,this.cgb[2]=n*(56/15+e*(-136/35+e*(-1262/105+e*(73814/2835)))),this.cbg[2]=n*(-26/15+e*(34/21+e*(1.6+e*(-12686/2835)))),n*=e,this.cgb[3]=n*(4279/630+e*(-332/35+e*(-399572/14175))),this.cbg[3]=n*(1237/630+e*(e*(-24832/14175)-2.4)),n*=e,this.cgb[4]=n*(4174/315+e*(-144838/6237)),this.cbg[4]=n*(-734/315+e*(109598/31185)),n*=e,this.cgb[5]=n*(601676/22275),this.cbg[5]=n*(444337/155925),n=Math.pow(e,2),this.Qn=this.k0/(1+e)*(1+n*(.25+n*(1/64+n/256))),this.utg[0]=e*(e*(2/3+e*(-37/96+e*(1/360+e*(81/512+e*(-96199/604800)))))-.5),this.gtu[0]=e*(.5+e*(-2/3+e*(5/16+e*(41/180+e*(-127/288+e*(7891/37800)))))),this.utg[1]=n*(-1/48+e*(-1/15+e*(437/1440+e*(-46/105+e*(1118711/3870720))))),this.gtu[1]=n*(13/48+e*(e*(557/1440+e*(281/630+e*(-1983433/1935360)))-.6)),n*=e,this.utg[2]=n*(-17/480+e*(37/840+e*(209/4480+e*(-5569/90720)))),this.gtu[2]=n*(61/240+e*(-103/140+e*(15061/26880+e*(167603/181440)))),n*=e,this.utg[3]=n*(-4397/161280+e*(11/504+e*(830251/7257600))),this.gtu[3]=n*(49561/161280+e*(-179/168+e*(6601661/7257600))),n*=e,this.utg[4]=n*(-4583/161280+e*(108847/3991680)),this.gtu[4]=n*(34729/80640+e*(-3418889/1995840)),n*=e,this.utg[5]=-.03233083094085698*n,this.gtu[5]=.6650675310896665*n;var i=At(this.cbg,this.lat0);this.Zb=-this.Qn*(i+function(t,e){for(var n,i=2*Math.cos(e),r=t.length-1,o=t[r],a=0;--r>=0;)n=i*o-a+t[r],a=o,o=n;return Math.sin(e)*n}(this.gtu,2*i))},forward:function(t){var e=D(t.x-this.long0),n=t.y;n=At(this.cbg,n);var i=Math.sin(n),r=Math.cos(n),o=Math.sin(e),a=Math.cos(e);n=Math.atan2(i,a*r),e=Math.atan2(o*r,Ct(i,r*a)),e=function(t){var e=Math.abs(t);return e=function(t){var e=1+t,n=e-1;return 0===n?t:t*Math.log(e)/n}(e*(1+e/(Ct(1,e)+1))),t<0?-e:e}(Math.tan(e));var s,c,l=Tt(this.gtu,2*n,2*e);return n+=l[0],e+=l[1],Math.abs(e)<=2.623395162778?(s=this.a*(this.Qn*e)+this.x0,c=this.a*(this.Qn*n+this.Zb)+this.y0):(s=1/0,c=1/0),t.x=s,t.y=c,t},inverse:function(t){var e,n,i=(t.x-this.x0)*(1/this.a),r=(t.y-this.y0)*(1/this.a);if(r=(r-this.Zb)/this.Qn,i/=this.Qn,Math.abs(i)<=2.623395162778){var o=Tt(this.utg,2*r,2*i);r+=o[0],i+=o[1],i=Math.atan(Et(i));var a=Math.sin(r),s=Math.cos(r),c=Math.sin(i),l=Math.cos(i);r=Math.atan2(a*l,Ct(c,l*s)),i=Math.atan2(c,l*s),e=D(i+this.long0),n=At(this.cgb,r)}else e=1/0,n=1/0;return t.x=e,t.y=n,t},names:["Extended_Transverse_Mercator","Extended Transverse Mercator","etmerc"]},_t={init:function(){var t=function(t,e){if(void 0===t){if((t=Math.floor(30*(D(e)+Math.PI)/Math.PI)+1)<0)return 0;if(t>60)return 60}return t}(this.zone,this.long0);if(void 0===t)throw new Error("unknown utm zone");this.lat0=0,this.long0=(6*Math.abs(t)-183)*o,this.x0=5e5,this.y0=this.utmSouth?1e7:0,this.k0=.9996,Ot.init.apply(this),this.forward=Ot.forward,this.inverse=Ot.inverse},names:["Universal Transverse Mercator System","utm"],dependsOn:"etmerc"},Pt=function(t,e){return Math.pow((1-t)/(1+t),e)},It={init:function(){var t=Math.sin(this.lat0),e=Math.cos(this.lat0);e*=e,this.rc=Math.sqrt(1-this.es)/(1-this.es*t*t),this.C=Math.sqrt(1+this.es*e*e/(1-this.es)),this.phic0=Math.asin(t/this.C),this.ratexp=.5*this.C*this.e,this.K=Math.tan(.5*this.phic0+s)/(Math.pow(Math.tan(.5*this.lat0+s),this.C)*Pt(this.e*t,this.ratexp))},forward:function(t){var e=t.x,n=t.y;return t.y=2*Math.atan(this.K*Math.pow(Math.tan(.5*n+s),this.C)*Pt(this.e*Math.sin(n),this.ratexp))-r,t.x=this.C*e,t},inverse:function(t){for(var e=t.x/this.C,n=t.y,i=Math.pow(Math.tan(.5*n+s)/this.K,1/this.C),o=20;o>0&&(n=2*Math.atan(i*Pt(this.e*Math.sin(t.y),-.5*this.e))-r,!(Math.abs(n-t.y)<1e-14));--o)t.y=n;return o?(t.x=e,t.y=n,t):null},names:["gauss"]},kt={init:function(){It.init.apply(this),this.rc&&(this.sinc0=Math.sin(this.phic0),this.cosc0=Math.cos(this.phic0),this.R2=2*this.rc,this.title||(this.title="Oblique Stereographic Alternative"))},forward:function(t){var e,n,i,r;return t.x=D(t.x-this.long0),It.forward.apply(this,[t]),e=Math.sin(t.y),n=Math.cos(t.y),i=Math.cos(t.x),r=this.k0*this.R2/(1+this.sinc0*e+this.cosc0*n*i),t.x=r*n*Math.sin(t.x),t.y=r*(this.cosc0*e-this.sinc0*n*i),t.x=this.a*t.x+this.x0,t.y=this.a*t.y+this.y0,t},inverse:function(t){var e,n,i,r,o;if(t.x=(t.x-this.x0)/this.a,t.y=(t.y-this.y0)/this.a,t.x/=this.k0,t.y/=this.k0,o=Math.sqrt(t.x*t.x+t.y*t.y)){var a=2*Math.atan2(o,this.R2);e=Math.sin(a),n=Math.cos(a),r=Math.asin(n*this.sinc0+t.y*e*this.cosc0/o),i=Math.atan2(t.x*e,o*this.cosc0*n-t.y*this.sinc0*e)}else r=this.phic0,i=0;return t.x=i,t.y=r,It.inverse.apply(this,[t]),t.x=D(t.x+this.long0),t},names:["Stereographic_North_Pole","Oblique_Stereographic","Polar_Stereographic","sterea","Oblique Stereographic Alternative","Double_Stereographic"]},Dt={init:function(){this.coslat0=Math.cos(this.lat0),this.sinlat0=Math.sin(this.lat0),this.sphere?1===this.k0&&!isNaN(this.lat_ts)&&Math.abs(this.coslat0)<=1e-10&&(this.k0=.5*(1+k(this.lat0)*Math.sin(this.lat_ts))):(Math.abs(this.coslat0)<=1e-10&&(this.lat0>0?this.con=1:this.con=-1),this.cons=Math.sqrt(Math.pow(1+this.e,1+this.e)*Math.pow(1-this.e,1-this.e)),1===this.k0&&!isNaN(this.lat_ts)&&Math.abs(this.coslat0)<=1e-10&&(this.k0=.5*this.cons*I(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts))/R(this.e,this.con*this.lat_ts,this.con*Math.sin(this.lat_ts))),this.ms1=I(this.e,this.sinlat0,this.coslat0),this.X0=2*Math.atan(this.ssfn_(this.lat0,this.sinlat0,this.e))-r,this.cosX0=Math.cos(this.X0),this.sinX0=Math.sin(this.X0))},forward:function(t){var e,n,i,o,a,s,c=t.x,l=t.y,u=Math.sin(l),d=Math.cos(l),p=D(c-this.long0);return Math.abs(Math.abs(c-this.long0)-Math.PI)<=1e-10&&Math.abs(l+this.lat0)<=1e-10?(t.x=NaN,t.y=NaN,t):this.sphere?(e=2*this.k0/(1+this.sinlat0*u+this.coslat0*d*Math.cos(p)),t.x=this.a*e*d*Math.sin(p)+this.x0,t.y=this.a*e*(this.coslat0*u-this.sinlat0*d*Math.cos(p))+this.y0,t):(n=2*Math.atan(this.ssfn_(l,u,this.e))-r,o=Math.cos(n),i=Math.sin(n),Math.abs(this.coslat0)<=1e-10?(a=R(this.e,l*this.con,this.con*u),s=2*this.a*this.k0*a/this.cons,t.x=this.x0+s*Math.sin(c-this.long0),t.y=this.y0-this.con*s*Math.cos(c-this.long0),t):(Math.abs(this.sinlat0)<1e-10?(e=2*this.a*this.k0/(1+o*Math.cos(p)),t.y=e*i):(e=2*this.a*this.k0*this.ms1/(this.cosX0*(1+this.sinX0*i+this.cosX0*o*Math.cos(p))),t.y=e*(this.cosX0*i-this.sinX0*o*Math.cos(p))+this.y0),t.x=e*o*Math.sin(p)+this.x0,t))},inverse:function(t){var e,n,i,o,a;t.x-=this.x0,t.y-=this.y0;var s=Math.sqrt(t.x*t.x+t.y*t.y);if(this.sphere){var c=2*Math.atan(s/(2*this.a*this.k0));return e=this.long0,n=this.lat0,s<=1e-10?(t.x=e,t.y=n,t):(n=Math.asin(Math.cos(c)*this.sinlat0+t.y*Math.sin(c)*this.coslat0/s),e=Math.abs(this.coslat0)<1e-10?this.lat0>0?D(this.long0+Math.atan2(t.x,-1*t.y)):D(this.long0+Math.atan2(t.x,t.y)):D(this.long0+Math.atan2(t.x*Math.sin(c),s*this.coslat0*Math.cos(c)-t.y*this.sinlat0*Math.sin(c))),t.x=e,t.y=n,t)}if(Math.abs(this.coslat0)<=1e-10){if(s<=1e-10)return n=this.lat0,e=this.long0,t.x=e,t.y=n,t;t.x*=this.con,t.y*=this.con,i=s*this.cons/(2*this.a*this.k0),n=this.con*L(this.e,i),e=this.con*D(this.con*this.long0+Math.atan2(t.x,-1*t.y))}else o=2*Math.atan(s*this.cosX0/(2*this.a*this.k0*this.ms1)),e=this.long0,s<=1e-10?a=this.X0:(a=Math.asin(Math.cos(o)*this.sinX0+t.y*Math.sin(o)*this.cosX0/s),e=D(this.long0+Math.atan2(t.x*Math.sin(o),s*this.cosX0*Math.cos(o)-t.y*this.sinX0*Math.sin(o)))),n=-1*L(this.e,Math.tan(.5*(r+a)));return t.x=e,t.y=n,t},names:["stere","Stereographic_South_Pole","Polar Stereographic (variant B)"],ssfn_:function(t,e,n){return e*=n,Math.tan(.5*(r+t))*Math.pow((1-e)/(1+e),.5*n)}},Rt={init:function(){var t=this.lat0;this.lambda0=this.long0;var e=Math.sin(t),n=this.a,i=1/this.rf,r=2*i-Math.pow(i,2),o=this.e=Math.sqrt(r);this.R=this.k0*n*Math.sqrt(1-r)/(1-r*Math.pow(e,2)),this.alpha=Math.sqrt(1+r/(1-r)*Math.pow(Math.cos(t),4)),this.b0=Math.asin(e/this.alpha);var a=Math.log(Math.tan(Math.PI/4+this.b0/2)),s=Math.log(Math.tan(Math.PI/4+t/2)),c=Math.log((1+o*e)/(1-o*e));this.K=a-this.alpha*s+this.alpha*o/2*c},forward:function(t){var e=Math.log(Math.tan(Math.PI/4-t.y/2)),n=this.e/2*Math.log((1+this.e*Math.sin(t.y))/(1-this.e*Math.sin(t.y))),i=-this.alpha*(e+n)+this.K,r=2*(Math.atan(Math.exp(i))-Math.PI/4),o=this.alpha*(t.x-this.lambda0),a=Math.atan(Math.sin(o)/(Math.sin(this.b0)*Math.tan(r)+Math.cos(this.b0)*Math.cos(o))),s=Math.asin(Math.cos(this.b0)*Math.sin(r)-Math.sin(this.b0)*Math.cos(r)*Math.cos(o));return t.y=this.R/2*Math.log((1+Math.sin(s))/(1-Math.sin(s)))+this.y0,t.x=this.R*a+this.x0,t},inverse:function(t){for(var e=t.x-this.x0,n=t.y-this.y0,i=e/this.R,r=2*(Math.atan(Math.exp(n/this.R))-Math.PI/4),o=Math.asin(Math.cos(this.b0)*Math.sin(r)+Math.sin(this.b0)*Math.cos(r)*Math.cos(i)),a=Math.atan(Math.sin(i)/(Math.cos(this.b0)*Math.cos(i)-Math.sin(this.b0)*Math.tan(r))),s=this.lambda0+a/this.alpha,c=0,l=o,u=-1e3,d=0;Math.abs(l-u)>1e-7;){if(++d>20)return;c=1/this.alpha*(Math.log(Math.tan(Math.PI/4+o/2))-this.K)+this.e*Math.log(Math.tan(Math.PI/4+Math.asin(this.e*Math.sin(l))/2)),u=l,l=2*Math.atan(Math.exp(c))-Math.PI/2}return t.x=s,t.y=l,t},names:["somerc"]},Lt={init:function(){this.no_off=this.no_off||!1,this.no_rot=this.no_rot||!1,isNaN(this.k0)&&(this.k0=1);var t=Math.sin(this.lat0),e=Math.cos(this.lat0),n=this.e*t;this.bl=Math.sqrt(1+this.es/(1-this.es)*Math.pow(e,4)),this.al=this.a*this.bl*this.k0*Math.sqrt(1-this.es)/(1-n*n);var i,r,o=R(this.e,this.lat0,t),a=this.bl/e*Math.sqrt((1-this.es)/(1-n*n));if(a*a<1&&(a=1),isNaN(this.longc)){var s=R(this.e,this.lat1,Math.sin(this.lat1)),c=R(this.e,this.lat2,Math.sin(this.lat2));this.lat0>=0?this.el=(a+Math.sqrt(a*a-1))*Math.pow(o,this.bl):this.el=(a-Math.sqrt(a*a-1))*Math.pow(o,this.bl);var l=Math.pow(s,this.bl),u=Math.pow(c,this.bl);r=.5*((i=this.el/l)-1/i);var d=(this.el*this.el-u*l)/(this.el*this.el+u*l),p=(u-l)/(u+l),h=D(this.long1-this.long2);this.long0=.5*(this.long1+this.long2)-Math.atan(d*Math.tan(.5*this.bl*h)/p)/this.bl,this.long0=D(this.long0);var f=D(this.long1-this.long0);this.gamma0=Math.atan(Math.sin(this.bl*f)/r),this.alpha=Math.asin(a*Math.sin(this.gamma0))}else i=this.lat0>=0?a+Math.sqrt(a*a-1):a-Math.sqrt(a*a-1),this.el=i*Math.pow(o,this.bl),r=.5*(i-1/i),this.gamma0=Math.asin(Math.sin(this.alpha)/a),this.long0=this.longc-Math.asin(r*Math.tan(this.gamma0))/this.bl;this.no_off?this.uc=0:this.lat0>=0?this.uc=this.al/this.bl*Math.atan2(Math.sqrt(a*a-1),Math.cos(this.alpha)):this.uc=-1*this.al/this.bl*Math.atan2(Math.sqrt(a*a-1),Math.cos(this.alpha))},forward:function(t){var e,n,i,o=t.x,a=t.y,c=D(o-this.long0);if(Math.abs(Math.abs(a)-r)<=1e-10)i=a>0?-1:1,n=this.al/this.bl*Math.log(Math.tan(s+i*this.gamma0*.5)),e=-1*i*r*this.al/this.bl;else{var l=R(this.e,a,Math.sin(a)),u=this.el/Math.pow(l,this.bl),d=.5*(u-1/u),p=.5*(u+1/u),h=Math.sin(this.bl*c),f=(d*Math.sin(this.gamma0)-h*Math.cos(this.gamma0))/p;n=Math.abs(Math.abs(f)-1)<=1e-10?Number.POSITIVE_INFINITY:.5*this.al*Math.log((1-f)/(1+f))/this.bl,e=Math.abs(Math.cos(this.bl*c))<=1e-10?this.al*this.bl*c:this.al*Math.atan2(d*Math.cos(this.gamma0)+h*Math.sin(this.gamma0),Math.cos(this.bl*c))/this.bl}return this.no_rot?(t.x=this.x0+e,t.y=this.y0+n):(e-=this.uc,t.x=this.x0+n*Math.cos(this.alpha)+e*Math.sin(this.alpha),t.y=this.y0+e*Math.cos(this.alpha)-n*Math.sin(this.alpha)),t},inverse:function(t){var e,n;this.no_rot?(n=t.y-this.y0,e=t.x-this.x0):(n=(t.x-this.x0)*Math.cos(this.alpha)-(t.y-this.y0)*Math.sin(this.alpha),e=(t.y-this.y0)*Math.cos(this.alpha)+(t.x-this.x0)*Math.sin(this.alpha),e+=this.uc);var i=Math.exp(-1*this.bl*n/this.al),o=.5*(i-1/i),a=.5*(i+1/i),s=Math.sin(this.bl*e/this.al),c=(s*Math.cos(this.gamma0)+o*Math.sin(this.gamma0))/a,l=Math.pow(this.el/Math.sqrt((1+c)/(1-c)),1/this.bl);return Math.abs(c-1)<1e-10?(t.x=this.long0,t.y=r):Math.abs(c+1)<1e-10?(t.x=this.long0,t.y=-1*r):(t.y=L(this.e,l),t.x=D(this.long0-Math.atan2(o*Math.cos(this.gamma0)-s*Math.sin(this.gamma0),Math.cos(this.bl*e/this.al))/this.bl)),t},names:["Hotine_Oblique_Mercator","Hotine Oblique Mercator","Hotine_Oblique_Mercator_Azimuth_Natural_Origin","Hotine_Oblique_Mercator_Azimuth_Center","omerc"]},Nt={init:function(){if(this.lat2||(this.lat2=this.lat1),this.k0||(this.k0=1),this.x0=this.x0||0,this.y0=this.y0||0,!(Math.abs(this.lat1+this.lat2)<1e-10)){var t=this.b/this.a;this.e=Math.sqrt(1-t*t);var e=Math.sin(this.lat1),n=Math.cos(this.lat1),i=I(this.e,e,n),r=R(this.e,this.lat1,e),o=Math.sin(this.lat2),a=Math.cos(this.lat2),s=I(this.e,o,a),c=R(this.e,this.lat2,o),l=R(this.e,this.lat0,Math.sin(this.lat0));Math.abs(this.lat1-this.lat2)>1e-10?this.ns=Math.log(i/s)/Math.log(r/c):this.ns=e,isNaN(this.ns)&&(this.ns=e),this.f0=i/(this.ns*Math.pow(r,this.ns)),this.rh=this.a*this.f0*Math.pow(l,this.ns),this.title||(this.title="Lambert Conformal Conic")}},forward:function(t){var e=t.x,n=t.y;Math.abs(2*Math.abs(n)-Math.PI)<=1e-10&&(n=k(n)*(r-2e-10));var i,o,a=Math.abs(Math.abs(n)-r);if(a>1e-10)i=R(this.e,n,Math.sin(n)),o=this.a*this.f0*Math.pow(i,this.ns);else{if((a=n*this.ns)<=0)return null;o=0}var s=this.ns*D(e-this.long0);return t.x=this.k0*(o*Math.sin(s))+this.x0,t.y=this.k0*(this.rh-o*Math.cos(s))+this.y0,t},inverse:function(t){var e,n,i,o,a,s=(t.x-this.x0)/this.k0,c=this.rh-(t.y-this.y0)/this.k0;this.ns>0?(e=Math.sqrt(s*s+c*c),n=1):(e=-Math.sqrt(s*s+c*c),n=-1);var l=0;if(0!==e&&(l=Math.atan2(n*s,n*c)),0!==e||this.ns>0){if(n=1/this.ns,i=Math.pow(e/(this.a*this.f0),n),-9999===(o=L(this.e,i)))return null}else o=-r;return a=D(l/this.ns+this.long0),t.x=a,t.y=o,t},names:["Lambert Tangential Conformal Conic Projection","Lambert_Conformal_Conic","Lambert_Conformal_Conic_2SP","lcc"]},jt={init:function(){this.a=6377397.155,this.es=.006674372230614,this.e=Math.sqrt(this.es),this.lat0||(this.lat0=.863937979737193),this.long0||(this.long0=.4334234309119251),this.k0||(this.k0=.9999),this.s45=.785398163397448,this.s90=2*this.s45,this.fi0=this.lat0,this.e2=this.es,this.e=Math.sqrt(this.e2),this.alfa=Math.sqrt(1+this.e2*Math.pow(Math.cos(this.fi0),4)/(1-this.e2)),this.uq=1.04216856380474,this.u0=Math.asin(Math.sin(this.fi0)/this.alfa),this.g=Math.pow((1+this.e*Math.sin(this.fi0))/(1-this.e*Math.sin(this.fi0)),this.alfa*this.e/2),this.k=Math.tan(this.u0/2+this.s45)/Math.pow(Math.tan(this.fi0/2+this.s45),this.alfa)*this.g,this.k1=this.k0,this.n0=this.a*Math.sqrt(1-this.e2)/(1-this.e2*Math.pow(Math.sin(this.fi0),2)),this.s0=1.37008346281555,this.n=Math.sin(this.s0),this.ro0=this.k1*this.n0/Math.tan(this.s0),this.ad=this.s90-this.uq},forward:function(t){var e,n,i,r,o,a,s,c=t.x,l=t.y,u=D(c-this.long0);return e=Math.pow((1+this.e*Math.sin(l))/(1-this.e*Math.sin(l)),this.alfa*this.e/2),n=2*(Math.atan(this.k*Math.pow(Math.tan(l/2+this.s45),this.alfa)/e)-this.s45),i=-u*this.alfa,r=Math.asin(Math.cos(this.ad)*Math.sin(n)+Math.sin(this.ad)*Math.cos(n)*Math.cos(i)),o=Math.asin(Math.cos(n)*Math.sin(i)/Math.cos(r)),a=this.n*o,s=this.ro0*Math.pow(Math.tan(this.s0/2+this.s45),this.n)/Math.pow(Math.tan(r/2+this.s45),this.n),t.y=s*Math.cos(a)/1,t.x=s*Math.sin(a)/1,this.czech||(t.y*=-1,t.x*=-1),t},inverse:function(t){var e,n,i,r,o,a,s,c=t.x;t.x=t.y,t.y=c,this.czech||(t.y*=-1,t.x*=-1),o=Math.sqrt(t.x*t.x+t.y*t.y),r=Math.atan2(t.y,t.x)/Math.sin(this.s0),i=2*(Math.atan(Math.pow(this.ro0/o,1/this.n)*Math.tan(this.s0/2+this.s45))-this.s45),e=Math.asin(Math.cos(this.ad)*Math.sin(i)-Math.sin(this.ad)*Math.cos(i)*Math.cos(r)),n=Math.asin(Math.cos(i)*Math.sin(r)/Math.cos(e)),t.x=this.long0-n/this.alfa,a=e,s=0;var l=0;do{t.y=2*(Math.atan(Math.pow(this.k,-1/this.alfa)*Math.pow(Math.tan(e/2+this.s45),1/this.alfa)*Math.pow((1+this.e*Math.sin(a))/(1-this.e*Math.sin(a)),this.e/2))-this.s45),Math.abs(a-t.y)<1e-10&&(s=1),a=t.y,l+=1}while(0===s&&l<15);return l>=15?null:t},names:["Krovak","krovak"]},Vt=function(t,e,n,i,r){return t*r-e*Math.sin(2*r)+n*Math.sin(4*r)-i*Math.sin(6*r)},Ft=function(t){return 1-.25*t*(1+t/16*(3+1.25*t))},Ut=function(t){return.375*t*(1+.25*t*(1+.46875*t))},Bt=function(t){return.05859375*t*t*(1+.75*t)},zt=function(t){return t*t*t*(35/3072)},Gt=function(t,e,n){var i=e*n;return t/Math.sqrt(1-i*i)},Ht=function(t){return Math.abs(t)<r?t:t-k(t)*Math.PI},Wt=function(t,e,n,i,r){var o,a;o=t/e;for(var s=0;s<15;s++)if(o+=a=(t-(e*o-n*Math.sin(2*o)+i*Math.sin(4*o)-r*Math.sin(6*o)))/(e-2*n*Math.cos(2*o)+4*i*Math.cos(4*o)-6*r*Math.cos(6*o)),Math.abs(a)<=1e-10)return o;return NaN},qt={init:function(){this.sphere||(this.e0=Ft(this.es),this.e1=Ut(this.es),this.e2=Bt(this.es),this.e3=zt(this.es),this.ml0=this.a*Vt(this.e0,this.e1,this.e2,this.e3,this.lat0))},forward:function(t){var e,n,i=t.x,r=t.y;if(i=D(i-this.long0),this.sphere)e=this.a*Math.asin(Math.cos(r)*Math.sin(i)),n=this.a*(Math.atan2(Math.tan(r),Math.cos(i))-this.lat0);else{var o=Math.sin(r),a=Math.cos(r),s=Gt(this.a,this.e,o),c=Math.tan(r)*Math.tan(r),l=i*Math.cos(r),u=l*l,d=this.es*a*a/(1-this.es);e=s*l*(1-u*c*(1/6-(8-c+8*d)*u/120)),n=this.a*Vt(this.e0,this.e1,this.e2,this.e3,r)-this.ml0+s*o/a*u*(.5+(5-c+6*d)*u/24)}return t.x=e+this.x0,t.y=n+this.y0,t},inverse:function(t){t.x-=this.x0,t.y-=this.y0;var e,n,i=t.x/this.a,o=t.y/this.a;if(this.sphere){var a=o+this.lat0;e=Math.asin(Math.sin(a)*Math.cos(i)),n=Math.atan2(Math.tan(i),Math.cos(a))}else{var s=this.ml0/this.a+o,c=Wt(s,this.e0,this.e1,this.e2,this.e3);if(Math.abs(Math.abs(c)-r)<=1e-10)return t.x=this.long0,t.y=r,o<0&&(t.y*=-1),t;var l=Gt(this.a,this.e,Math.sin(c)),u=l*l*l/this.a/this.a*(1-this.es),d=Math.pow(Math.tan(c),2),p=i*this.a/l,h=p*p;e=c-l*Math.tan(c)/u*p*p*(.5-(1+3*d)*p*p/24),n=p*(1-h*(d/3+(1+3*d)*d*h/15))/Math.cos(c)}return t.x=D(n+this.long0),t.y=Ht(e),t},names:["Cassini","Cassini_Soldner","cass"]},Kt=function(t,e){var n;return t>1e-7?(1-t*t)*(e/(1-(n=t*e)*n)-.5/t*Math.log((1-n)/(1+n))):2*e},Xt={init:function(){var t,e=Math.abs(this.lat0);if(Math.abs(e-r)<1e-10?this.mode=this.lat0<0?this.S_POLE:this.N_POLE:Math.abs(e)<1e-10?this.mode=this.EQUIT:this.mode=this.OBLIQ,this.es>0)switch(this.qp=Kt(this.e,1),this.mmf=.5/(1-this.es),this.apa=function(t){var e,n=[];return n[0]=.3333333333333333*t,e=t*t,n[0]+=.17222222222222222*e,n[1]=.06388888888888888*e,e*=t,n[0]+=.10257936507936508*e,n[1]+=.0664021164021164*e,n[2]=.016415012942191543*e,n}(this.es),this.mode){case this.N_POLE:case this.S_POLE:this.dd=1;break;case this.EQUIT:this.rq=Math.sqrt(.5*this.qp),this.dd=1/this.rq,this.xmf=1,this.ymf=.5*this.qp;break;case this.OBLIQ:this.rq=Math.sqrt(.5*this.qp),t=Math.sin(this.lat0),this.sinb1=Kt(this.e,t)/this.qp,this.cosb1=Math.sqrt(1-this.sinb1*this.sinb1),this.dd=Math.cos(this.lat0)/(Math.sqrt(1-this.es*t*t)*this.rq*this.cosb1),this.ymf=(this.xmf=this.rq)/this.dd,this.xmf*=this.dd}else this.mode===this.OBLIQ&&(this.sinph0=Math.sin(this.lat0),this.cosph0=Math.cos(this.lat0))},forward:function(t){var e,n,i,o,a,c,l,u,d,p,h=t.x,f=t.y;if(h=D(h-this.long0),this.sphere){if(a=Math.sin(f),p=Math.cos(f),i=Math.cos(h),this.mode===this.OBLIQ||this.mode===this.EQUIT){if((n=this.mode===this.EQUIT?1+p*i:1+this.sinph0*a+this.cosph0*p*i)<=1e-10)return null;e=(n=Math.sqrt(2/n))*p*Math.sin(h),n*=this.mode===this.EQUIT?a:this.cosph0*a-this.sinph0*p*i}else if(this.mode===this.N_POLE||this.mode===this.S_POLE){if(this.mode===this.N_POLE&&(i=-i),Math.abs(f+this.lat0)<1e-10)return null;n=s-.5*f,e=(n=2*(this.mode===this.S_POLE?Math.cos(n):Math.sin(n)))*Math.sin(h),n*=i}}else{switch(l=0,u=0,d=0,i=Math.cos(h),o=Math.sin(h),a=Math.sin(f),c=Kt(this.e,a),this.mode!==this.OBLIQ&&this.mode!==this.EQUIT||(l=c/this.qp,u=Math.sqrt(1-l*l)),this.mode){case this.OBLIQ:d=1+this.sinb1*l+this.cosb1*u*i;break;case this.EQUIT:d=1+u*i;break;case this.N_POLE:d=r+f,c=this.qp-c;break;case this.S_POLE:d=f-r,c=this.qp+c}if(Math.abs(d)<1e-10)return null;switch(this.mode){case this.OBLIQ:case this.EQUIT:d=Math.sqrt(2/d),n=this.mode===this.OBLIQ?this.ymf*d*(this.cosb1*l-this.sinb1*u*i):(d=Math.sqrt(2/(1+u*i)))*l*this.ymf,e=this.xmf*d*u*o;break;case this.N_POLE:case this.S_POLE:c>=0?(e=(d=Math.sqrt(c))*o,n=i*(this.mode===this.S_POLE?d:-d)):e=n=0}}return t.x=this.a*e+this.x0,t.y=this.a*n+this.y0,t},inverse:function(t){t.x-=this.x0,t.y-=this.y0;var e,n,i,o,a,s,c,l,u,d,p=t.x/this.a,h=t.y/this.a;if(this.sphere){var f,g=0,m=0;if((n=.5*(f=Math.sqrt(p*p+h*h)))>1)return null;switch(n=2*Math.asin(n),this.mode!==this.OBLIQ&&this.mode!==this.EQUIT||(m=Math.sin(n),g=Math.cos(n)),this.mode){case this.EQUIT:n=Math.abs(f)<=1e-10?0:Math.asin(h*m/f),p*=m,h=g*f;break;case this.OBLIQ:n=Math.abs(f)<=1e-10?this.lat0:Math.asin(g*this.sinph0+h*m*this.cosph0/f),p*=m*this.cosph0,h=(g-Math.sin(n)*this.sinph0)*f;break;case this.N_POLE:h=-h,n=r-n;break;case this.S_POLE:n-=r}e=0!==h||this.mode!==this.EQUIT&&this.mode!==this.OBLIQ?Math.atan2(p,h):0}else{if(c=0,this.mode===this.OBLIQ||this.mode===this.EQUIT){if(p/=this.dd,h*=this.dd,(s=Math.sqrt(p*p+h*h))<1e-10)return t.x=this.long0,t.y=this.lat0,t;o=2*Math.asin(.5*s/this.rq),i=Math.cos(o),p*=o=Math.sin(o),this.mode===this.OBLIQ?(c=i*this.sinb1+h*o*this.cosb1/s,a=this.qp*c,h=s*this.cosb1*i-h*this.sinb1*o):(c=h*o/s,a=this.qp*c,h=s*i)}else if(this.mode===this.N_POLE||this.mode===this.S_POLE){if(this.mode===this.N_POLE&&(h=-h),!(a=p*p+h*h))return t.x=this.long0,t.y=this.lat0,t;c=1-a/this.qp,this.mode===this.S_POLE&&(c=-c)}e=Math.atan2(p,h),d=(l=Math.asin(c))+l,n=l+(u=this.apa)[0]*Math.sin(d)+u[1]*Math.sin(d+d)+u[2]*Math.sin(d+d+d)}return t.x=D(this.long0+e),t.y=n,t},names:["Lambert Azimuthal Equal Area","Lambert_Azimuthal_Equal_Area","laea"],S_POLE:1,N_POLE:2,EQUIT:3,OBLIQ:4},Yt=function(t){return Math.abs(t)>1&&(t=t>1?1:-1),Math.asin(t)},Zt={init:function(){Math.abs(this.lat1+this.lat2)<1e-10||(this.temp=this.b/this.a,this.es=1-Math.pow(this.temp,2),this.e3=Math.sqrt(this.es),this.sin_po=Math.sin(this.lat1),this.cos_po=Math.cos(this.lat1),this.t1=this.sin_po,this.con=this.sin_po,this.ms1=I(this.e3,this.sin_po,this.cos_po),this.qs1=Kt(this.e3,this.sin_po,this.cos_po),this.sin_po=Math.sin(this.lat2),this.cos_po=Math.cos(this.lat2),this.t2=this.sin_po,this.ms2=I(this.e3,this.sin_po,this.cos_po),this.qs2=Kt(this.e3,this.sin_po,this.cos_po),this.sin_po=Math.sin(this.lat0),this.cos_po=Math.cos(this.lat0),this.t3=this.sin_po,this.qs0=Kt(this.e3,this.sin_po,this.cos_po),Math.abs(this.lat1-this.lat2)>1e-10?this.ns0=(this.ms1*this.ms1-this.ms2*this.ms2)/(this.qs2-this.qs1):this.ns0=this.con,this.c=this.ms1*this.ms1+this.ns0*this.qs1,this.rh=this.a*Math.sqrt(this.c-this.ns0*this.qs0)/this.ns0)},forward:function(t){var e=t.x,n=t.y;this.sin_phi=Math.sin(n),this.cos_phi=Math.cos(n);var i=Kt(this.e3,this.sin_phi,this.cos_phi),r=this.a*Math.sqrt(this.c-this.ns0*i)/this.ns0,o=this.ns0*D(e-this.long0),a=r*Math.sin(o)+this.x0,s=this.rh-r*Math.cos(o)+this.y0;return t.x=a,t.y=s,t},inverse:function(t){var e,n,i,r,o,a;return t.x-=this.x0,t.y=this.rh-t.y+this.y0,this.ns0>=0?(e=Math.sqrt(t.x*t.x+t.y*t.y),i=1):(e=-Math.sqrt(t.x*t.x+t.y*t.y),i=-1),r=0,0!==e&&(r=Math.atan2(i*t.x,i*t.y)),i=e*this.ns0/this.a,this.sphere?a=Math.asin((this.c-i*i)/(2*this.ns0)):(n=(this.c-i*i)/this.ns0,a=this.phi1z(this.e3,n)),o=D(r/this.ns0+this.long0),t.x=o,t.y=a,t},names:["Albers_Conic_Equal_Area","Albers","aea"],phi1z:function(t,e){var n,i,r,o,a=Yt(.5*e);if(t<1e-10)return a;for(var s=t*t,c=1;c<=25;c++)if(a+=o=.5*(r=1-(i=t*(n=Math.sin(a)))*i)*r/Math.cos(a)*(e/(1-s)-n/r+.5/t*Math.log((1-i)/(1+i))),Math.abs(o)<=1e-7)return a;return null}},Jt={init:function(){this.sin_p14=Math.sin(this.lat0),this.cos_p14=Math.cos(this.lat0),this.infinity_dist=1e3*this.a,this.rc=1},forward:function(t){var e,n,i,r,o,a,s,c=t.x,l=t.y;return i=D(c-this.long0),e=Math.sin(l),n=Math.cos(l),r=Math.cos(i),(o=this.sin_p14*e+this.cos_p14*n*r)>0||Math.abs(o)<=1e-10?(a=this.x0+1*this.a*n*Math.sin(i)/o,s=this.y0+1*this.a*(this.cos_p14*e-this.sin_p14*n*r)/o):(a=this.x0+this.infinity_dist*n*Math.sin(i),s=this.y0+this.infinity_dist*(this.cos_p14*e-this.sin_p14*n*r)),t.x=a,t.y=s,t},inverse:function(t){var e,n,i,r,o,a;return t.x=(t.x-this.x0)/this.a,t.y=(t.y-this.y0)/this.a,t.x/=this.k0,t.y/=this.k0,(e=Math.sqrt(t.x*t.x+t.y*t.y))?(r=Math.atan2(e,this.rc),n=Math.sin(r),i=Math.cos(r),a=Yt(i*this.sin_p14+t.y*n*this.cos_p14/e),o=Math.atan2(t.x*n,e*this.cos_p14*i-t.y*this.sin_p14*n),o=D(this.long0+o)):(a=this.phic0,o=0),t.x=o,t.y=a,t},names:["gnom"]},Qt={init:function(){this.sphere||(this.k0=I(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts)))},forward:function(t){var e,n,i=t.x,r=t.y,o=D(i-this.long0);if(this.sphere)e=this.x0+this.a*o*Math.cos(this.lat_ts),n=this.y0+this.a*Math.sin(r)/Math.cos(this.lat_ts);else{var a=Kt(this.e,Math.sin(r));e=this.x0+this.a*this.k0*o,n=this.y0+this.a*a*.5/this.k0}return t.x=e,t.y=n,t},inverse:function(t){var e,n;return t.x-=this.x0,t.y-=this.y0,this.sphere?(e=D(this.long0+t.x/this.a/Math.cos(this.lat_ts)),n=Math.asin(t.y/this.a*Math.cos(this.lat_ts))):(n=function(t,e){var n=1-(1-t*t)/(2*t)*Math.log((1-t)/(1+t));if(Math.abs(Math.abs(e)-n)<1e-6)return e<0?-1*r:r;for(var i,o,a,s,c=Math.asin(.5*e),l=0;l<30;l++)if(o=Math.sin(c),a=Math.cos(c),s=t*o,c+=i=Math.pow(1-s*s,2)/(2*a)*(e/(1-t*t)-o/(1-s*s)+.5/t*Math.log((1-s)/(1+s))),Math.abs(i)<=1e-10)return c;return NaN}(this.e,2*t.y*this.k0/this.a),e=D(this.long0+t.x/(this.a*this.k0))),t.x=e,t.y=n,t},names:["cea"]},$t={init:function(){this.x0=this.x0||0,this.y0=this.y0||0,this.lat0=this.lat0||0,this.long0=this.long0||0,this.lat_ts=this.lat_ts||0,this.title=this.title||"Equidistant Cylindrical (Plate Carre)",this.rc=Math.cos(this.lat_ts)},forward:function(t){var e=t.x,n=t.y,i=D(e-this.long0),r=Ht(n-this.lat0);return t.x=this.x0+this.a*i*this.rc,t.y=this.y0+this.a*r,t},inverse:function(t){var e=t.x,n=t.y;return t.x=D(this.long0+(e-this.x0)/(this.a*this.rc)),t.y=Ht(this.lat0+(n-this.y0)/this.a),t},names:["Equirectangular","Equidistant_Cylindrical","eqc"]},te={init:function(){this.temp=this.b/this.a,this.es=1-Math.pow(this.temp,2),this.e=Math.sqrt(this.es),this.e0=Ft(this.es),this.e1=Ut(this.es),this.e2=Bt(this.es),this.e3=zt(this.es),this.ml0=this.a*Vt(this.e0,this.e1,this.e2,this.e3,this.lat0)},forward:function(t){var e,n,i,r=t.x,o=t.y,a=D(r-this.long0);if(i=a*Math.sin(o),this.sphere)Math.abs(o)<=1e-10?(e=this.a*a,n=-1*this.a*this.lat0):(e=this.a*Math.sin(i)/Math.tan(o),n=this.a*(Ht(o-this.lat0)+(1-Math.cos(i))/Math.tan(o)));else if(Math.abs(o)<=1e-10)e=this.a*a,n=-1*this.ml0;else{var s=Gt(this.a,this.e,Math.sin(o))/Math.tan(o);e=s*Math.sin(i),n=this.a*Vt(this.e0,this.e1,this.e2,this.e3,o)-this.ml0+s*(1-Math.cos(i))}return t.x=e+this.x0,t.y=n+this.y0,t},inverse:function(t){var e,n,i,r,o,a,s,c,l;if(i=t.x-this.x0,r=t.y-this.y0,this.sphere)if(Math.abs(r+this.a*this.lat0)<=1e-10)e=D(i/this.a+this.long0),n=0;else{var u;for(a=this.lat0+r/this.a,s=i*i/this.a/this.a+a*a,c=a,o=20;o;--o)if(c+=l=-1*(a*(c*(u=Math.tan(c))+1)-c-.5*(c*c+s)*u)/((c-a)/u-1),Math.abs(l)<=1e-10){n=c;break}e=D(this.long0+Math.asin(i*Math.tan(c)/this.a)/Math.sin(n))}else if(Math.abs(r+this.ml0)<=1e-10)n=0,e=D(this.long0+i/this.a);else{var d,p,h,f,g;for(a=(this.ml0+r)/this.a,s=i*i/this.a/this.a+a*a,c=a,o=20;o;--o)if(g=this.e*Math.sin(c),d=Math.sqrt(1-g*g)*Math.tan(c),p=this.a*Vt(this.e0,this.e1,this.e2,this.e3,c),h=this.e0-2*this.e1*Math.cos(2*c)+4*this.e2*Math.cos(4*c)-6*this.e3*Math.cos(6*c),c-=l=(a*(d*(f=p/this.a)+1)-f-.5*d*(f*f+s))/(this.es*Math.sin(2*c)*(f*f+s-2*a*f)/(4*d)+(a-f)*(d*h-2/Math.sin(2*c))-h),Math.abs(l)<=1e-10){n=c;break}d=Math.sqrt(1-this.es*Math.pow(Math.sin(n),2))*Math.tan(n),e=D(this.long0+Math.asin(i*d/this.a)/Math.sin(n))}return t.x=e,t.y=n,t},names:["Polyconic","poly"]},ee={init:function(){this.A=[],this.A[1]=.6399175073,this.A[2]=-.1358797613,this.A[3]=.063294409,this.A[4]=-.02526853,this.A[5]=.0117879,this.A[6]=-.0055161,this.A[7]=.0026906,this.A[8]=-.001333,this.A[9]=67e-5,this.A[10]=-34e-5,this.B_re=[],this.B_im=[],this.B_re[1]=.7557853228,this.B_im[1]=0,this.B_re[2]=.249204646,this.B_im[2]=.003371507,this.B_re[3]=-.001541739,this.B_im[3]=.04105856,this.B_re[4]=-.10162907,this.B_im[4]=.01727609,this.B_re[5]=-.26623489,this.B_im[5]=-.36249218,this.B_re[6]=-.6870983,this.B_im[6]=-1.1651967,this.C_re=[],this.C_im=[],this.C_re[1]=1.3231270439,this.C_im[1]=0,this.C_re[2]=-.577245789,this.C_im[2]=-.007809598,this.C_re[3]=.508307513,this.C_im[3]=-.112208952,this.C_re[4]=-.15094762,this.C_im[4]=.18200602,this.C_re[5]=1.01418179,this.C_im[5]=1.64497696,this.C_re[6]=1.9660549,this.C_im[6]=2.5127645,this.D=[],this.D[1]=1.5627014243,this.D[2]=.5185406398,this.D[3]=-.03333098,this.D[4]=-.1052906,this.D[5]=-.0368594,this.D[6]=.007317,this.D[7]=.0122,this.D[8]=.00394,this.D[9]=-.0013},forward:function(t){var e,n=t.x,r=t.y-this.lat0,o=n-this.long0,a=r/i*1e-5,s=o,c=1,l=0;for(e=1;e<=10;e++)c*=a,l+=this.A[e]*c;var u,d=l,p=s,h=1,f=0,g=0,m=0;for(e=1;e<=6;e++)u=f*d+h*p,h=h*d-f*p,f=u,g=g+this.B_re[e]*h-this.B_im[e]*f,m=m+this.B_im[e]*h+this.B_re[e]*f;return t.x=m*this.a+this.x0,t.y=g*this.a+this.y0,t},inverse:function(t){var e,n,r=t.x,o=t.y,a=r-this.x0,s=(o-this.y0)/this.a,c=a/this.a,l=1,u=0,d=0,p=0;for(e=1;e<=6;e++)n=u*s+l*c,l=l*s-u*c,u=n,d=d+this.C_re[e]*l-this.C_im[e]*u,p=p+this.C_im[e]*l+this.C_re[e]*u;for(var h=0;h<this.iterations;h++){var f,g=d,m=p,v=s,y=c;for(e=2;e<=6;e++)f=m*d+g*p,g=g*d-m*p,m=f,v+=(e-1)*(this.B_re[e]*g-this.B_im[e]*m),y+=(e-1)*(this.B_im[e]*g+this.B_re[e]*m);g=1,m=0;var b=this.B_re[1],w=this.B_im[1];for(e=2;e<=6;e++)f=m*d+g*p,g=g*d-m*p,m=f,b+=e*(this.B_re[e]*g-this.B_im[e]*m),w+=e*(this.B_im[e]*g+this.B_re[e]*m);var S=b*b+w*w;d=(v*b+y*w)/S,p=(y*b-v*w)/S}var x=d,M=p,E=1,C=0;for(e=1;e<=9;e++)E*=x,C+=this.D[e]*E;var A=this.lat0+C*i*1e5,T=this.long0+M;return t.x=T,t.y=A,t},names:["New_Zealand_Map_Grid","nzmg"]},ne={init:function(){},forward:function(t){var e=t.x,n=t.y,i=D(e-this.long0),r=this.x0+this.a*i,o=this.y0+this.a*Math.log(Math.tan(Math.PI/4+n/2.5))*1.25;return t.x=r,t.y=o,t},inverse:function(t){t.x-=this.x0,t.y-=this.y0;var e=D(this.long0+t.x/this.a),n=2.5*(Math.atan(Math.exp(.8*t.y/this.a))-Math.PI/4);return t.x=e,t.y=n,t},names:["Miller_Cylindrical","mill"]},ie={init:function(){this.sphere?(this.n=1,this.m=0,this.es=0,this.C_y=Math.sqrt((this.m+1)/this.n),this.C_x=this.C_y/(this.m+1)):this.en=wt(this.es)},forward:function(t){var e,n,i=t.x,r=t.y;if(i=D(i-this.long0),this.sphere){if(this.m)for(var o=this.n*Math.sin(r),a=20;a;--a){var s=(this.m*r+Math.sin(r)-o)/(this.m+Math.cos(r));if(r-=s,Math.abs(s)<1e-10)break}else r=1!==this.n?Math.asin(this.n*Math.sin(r)):r;e=this.a*this.C_x*i*(this.m+Math.cos(r)),n=this.a*this.C_y*r}else{var c=Math.sin(r),l=Math.cos(r);n=this.a*St(r,c,l,this.en),e=this.a*i*l/Math.sqrt(1-this.es*c*c)}return t.x=e,t.y=n,t},inverse:function(t){var e,n,i,o;return t.x-=this.x0,i=t.x/this.a,t.y-=this.y0,e=t.y/this.a,this.sphere?(e/=this.C_y,i/=this.C_x*(this.m+Math.cos(e)),this.m?e=Yt((this.m*e+Math.sin(e))/this.n):1!==this.n&&(e=Yt(Math.sin(e)/this.n)),i=D(i+this.long0),e=Ht(e)):(e=xt(t.y/this.a,this.es,this.en),(o=Math.abs(e))<r?(o=Math.sin(e),n=this.long0+t.x*Math.sqrt(1-this.es*o*o)/(this.a*Math.cos(e)),i=D(n)):o-1e-10<r&&(i=this.long0)),t.x=i,t.y=e,t},names:["Sinusoidal","sinu"]},re={init:function(){},forward:function(t){for(var e=t.x,n=t.y,i=D(e-this.long0),r=n,o=Math.PI*Math.sin(n);;){var a=-(r+Math.sin(r)-o)/(1+Math.cos(r));if(r+=a,Math.abs(a)<1e-10)break}r/=2,Math.PI/2-Math.abs(n)<1e-10&&(i=0);var s=.900316316158*this.a*i*Math.cos(r)+this.x0,c=1.4142135623731*this.a*Math.sin(r)+this.y0;return t.x=s,t.y=c,t},inverse:function(t){var e,n;t.x-=this.x0,t.y-=this.y0,n=t.y/(1.4142135623731*this.a),Math.abs(n)>.999999999999&&(n=.999999999999),e=Math.asin(n);var i=D(this.long0+t.x/(.900316316158*this.a*Math.cos(e)));i<-Math.PI&&(i=-Math.PI),i>Math.PI&&(i=Math.PI),n=(2*e+Math.sin(2*e))/Math.PI,Math.abs(n)>1&&(n=1);var r=Math.asin(n);return t.x=i,t.y=r,t},names:["Mollweide","moll"]},oe={init:function(){Math.abs(this.lat1+this.lat2)<1e-10||(this.lat2=this.lat2||this.lat1,this.temp=this.b/this.a,this.es=1-Math.pow(this.temp,2),this.e=Math.sqrt(this.es),this.e0=Ft(this.es),this.e1=Ut(this.es),this.e2=Bt(this.es),this.e3=zt(this.es),this.sinphi=Math.sin(this.lat1),this.cosphi=Math.cos(this.lat1),this.ms1=I(this.e,this.sinphi,this.cosphi),this.ml1=Vt(this.e0,this.e1,this.e2,this.e3,this.lat1),Math.abs(this.lat1-this.lat2)<1e-10?this.ns=this.sinphi:(this.sinphi=Math.sin(this.lat2),this.cosphi=Math.cos(this.lat2),this.ms2=I(this.e,this.sinphi,this.cosphi),this.ml2=Vt(this.e0,this.e1,this.e2,this.e3,this.lat2),this.ns=(this.ms1-this.ms2)/(this.ml2-this.ml1)),this.g=this.ml1+this.ms1/this.ns,this.ml0=Vt(this.e0,this.e1,this.e2,this.e3,this.lat0),this.rh=this.a*(this.g-this.ml0))},forward:function(t){var e,n=t.x,i=t.y;if(this.sphere)e=this.a*(this.g-i);else{var r=Vt(this.e0,this.e1,this.e2,this.e3,i);e=this.a*(this.g-r)}var o=this.ns*D(n-this.long0),a=this.x0+e*Math.sin(o),s=this.y0+this.rh-e*Math.cos(o);return t.x=a,t.y=s,t},inverse:function(t){var e,n,i,r;t.x-=this.x0,t.y=this.rh-t.y+this.y0,this.ns>=0?(n=Math.sqrt(t.x*t.x+t.y*t.y),e=1):(n=-Math.sqrt(t.x*t.x+t.y*t.y),e=-1);var o=0;if(0!==n&&(o=Math.atan2(e*t.x,e*t.y)),this.sphere)return r=D(this.long0+o/this.ns),i=Ht(this.g-n/this.a),t.x=r,t.y=i,t;var a=this.g-n/this.a;return i=Wt(a,this.e0,this.e1,this.e2,this.e3),r=D(this.long0+o/this.ns),t.x=r,t.y=i,t},names:["Equidistant_Conic","eqdc"]},ae={init:function(){this.R=this.a},forward:function(t){var e,n,i=t.x,o=t.y,a=D(i-this.long0);Math.abs(o)<=1e-10&&(e=this.x0+this.R*a,n=this.y0);var s=Yt(2*Math.abs(o/Math.PI));(Math.abs(a)<=1e-10||Math.abs(Math.abs(o)-r)<=1e-10)&&(e=this.x0,n=o>=0?this.y0+Math.PI*this.R*Math.tan(.5*s):this.y0+Math.PI*this.R*-Math.tan(.5*s));var c=.5*Math.abs(Math.PI/a-a/Math.PI),l=c*c,u=Math.sin(s),d=Math.cos(s),p=d/(u+d-1),h=p*p,f=p*(2/u-1),g=f*f,m=Math.PI*this.R*(c*(p-g)+Math.sqrt(l*(p-g)*(p-g)-(g+l)*(h-g)))/(g+l);a<0&&(m=-m),e=this.x0+m;var v=l+p;return m=Math.PI*this.R*(f*v-c*Math.sqrt((g+l)*(l+1)-v*v))/(g+l),n=o>=0?this.y0+m:this.y0-m,t.x=e,t.y=n,t},inverse:function(t){var e,n,i,r,o,a,s,c,l,u,d,p;return t.x-=this.x0,t.y-=this.y0,d=Math.PI*this.R,o=(i=t.x/d)*i+(r=t.y/d)*r,d=3*(r*r/(c=-2*(a=-Math.abs(r)*(1+o))+1+2*r*r+o*o)+(2*(s=a-2*r*r+i*i)*s*s/c/c/c-9*a*s/c/c)/27)/(l=(a-s*s/3/c)/c)/(u=2*Math.sqrt(-l/3)),Math.abs(d)>1&&(d=d>=0?1:-1),p=Math.acos(d)/3,n=t.y>=0?(-u*Math.cos(p+Math.PI/3)-s/3/c)*Math.PI:-(-u*Math.cos(p+Math.PI/3)-s/3/c)*Math.PI,e=Math.abs(i)<1e-10?this.long0:D(this.long0+Math.PI*(o-1+Math.sqrt(1+2*(i*i-r*r)+o*o))/2/i),t.x=e,t.y=n,t},names:["Van_der_Grinten_I","VanDerGrinten","vandg"]},se={init:function(){this.sin_p12=Math.sin(this.lat0),this.cos_p12=Math.cos(this.lat0)},forward:function(t){var e,n,i,o,a,s,c,l,u,d,p,h,f,g,m,v,y,b,w,S,x,M,E=t.x,C=t.y,A=Math.sin(t.y),T=Math.cos(t.y),O=D(E-this.long0);return this.sphere?Math.abs(this.sin_p12-1)<=1e-10?(t.x=this.x0+this.a*(r-C)*Math.sin(O),t.y=this.y0-this.a*(r-C)*Math.cos(O),t):Math.abs(this.sin_p12+1)<=1e-10?(t.x=this.x0+this.a*(r+C)*Math.sin(O),t.y=this.y0+this.a*(r+C)*Math.cos(O),t):(b=this.sin_p12*A+this.cos_p12*T*Math.cos(O),y=(v=Math.acos(b))?v/Math.sin(v):1,t.x=this.x0+this.a*y*T*Math.sin(O),t.y=this.y0+this.a*y*(this.cos_p12*A-this.sin_p12*T*Math.cos(O)),t):(e=Ft(this.es),n=Ut(this.es),i=Bt(this.es),o=zt(this.es),Math.abs(this.sin_p12-1)<=1e-10?(a=this.a*Vt(e,n,i,o,r),s=this.a*Vt(e,n,i,o,C),t.x=this.x0+(a-s)*Math.sin(O),t.y=this.y0-(a-s)*Math.cos(O),t):Math.abs(this.sin_p12+1)<=1e-10?(a=this.a*Vt(e,n,i,o,r),s=this.a*Vt(e,n,i,o,C),t.x=this.x0+(a+s)*Math.sin(O),t.y=this.y0+(a+s)*Math.cos(O),t):(c=A/T,l=Gt(this.a,this.e,this.sin_p12),u=Gt(this.a,this.e,A),d=Math.atan((1-this.es)*c+this.es*l*this.sin_p12/(u*T)),w=0===(p=Math.atan2(Math.sin(O),this.cos_p12*Math.tan(d)-this.sin_p12*Math.cos(O)))?Math.asin(this.cos_p12*Math.sin(d)-this.sin_p12*Math.cos(d)):Math.abs(Math.abs(p)-Math.PI)<=1e-10?-Math.asin(this.cos_p12*Math.sin(d)-this.sin_p12*Math.cos(d)):Math.asin(Math.sin(O)*Math.cos(d)/Math.sin(p)),h=this.e*this.sin_p12/Math.sqrt(1-this.es),v=l*w*(1-(S=w*w)*(m=(f=this.e*this.cos_p12*Math.cos(p)/Math.sqrt(1-this.es))*f)*(1-m)/6+(x=S*w)/8*(g=h*f)*(1-2*m)+(M=x*w)/120*(m*(4-7*m)-3*h*h*(1-7*m))-M*w/48*g),t.x=this.x0+v*Math.sin(p),t.y=this.y0+v*Math.cos(p),t))},inverse:function(t){var e,n,i,o,a,s,c,l,u,d,p,h,f,g,m,v,y,b,w,S,x,M,E;if(t.x-=this.x0,t.y-=this.y0,this.sphere){if((e=Math.sqrt(t.x*t.x+t.y*t.y))>2*r*this.a)return;return n=e/this.a,i=Math.sin(n),o=Math.cos(n),a=this.long0,Math.abs(e)<=1e-10?s=this.lat0:(s=Yt(o*this.sin_p12+t.y*i*this.cos_p12/e),c=Math.abs(this.lat0)-r,a=Math.abs(c)<=1e-10?this.lat0>=0?D(this.long0+Math.atan2(t.x,-t.y)):D(this.long0-Math.atan2(-t.x,t.y)):D(this.long0+Math.atan2(t.x*i,e*this.cos_p12*o-t.y*this.sin_p12*i))),t.x=a,t.y=s,t}return l=Ft(this.es),u=Ut(this.es),d=Bt(this.es),p=zt(this.es),Math.abs(this.sin_p12-1)<=1e-10?(h=this.a*Vt(l,u,d,p,r),e=Math.sqrt(t.x*t.x+t.y*t.y),s=Wt((h-e)/this.a,l,u,d,p),a=D(this.long0+Math.atan2(t.x,-1*t.y)),t.x=a,t.y=s,t):Math.abs(this.sin_p12+1)<=1e-10?(h=this.a*Vt(l,u,d,p,r),e=Math.sqrt(t.x*t.x+t.y*t.y),s=Wt((e-h)/this.a,l,u,d,p),a=D(this.long0+Math.atan2(t.x,t.y)),t.x=a,t.y=s,t):(e=Math.sqrt(t.x*t.x+t.y*t.y),m=Math.atan2(t.x,t.y),f=Gt(this.a,this.e,this.sin_p12),v=Math.cos(m),b=-(y=this.e*this.cos_p12*v)*y/(1-this.es),w=3*this.es*(1-b)*this.sin_p12*this.cos_p12*v/(1-this.es),M=1-b*(x=(S=e/f)-b*(1+b)*Math.pow(S,3)/6-w*(1+3*b)*Math.pow(S,4)/24)*x/2-S*x*x*x/6,g=Math.asin(this.sin_p12*Math.cos(x)+this.cos_p12*Math.sin(x)*v),a=D(this.long0+Math.asin(Math.sin(m)*Math.sin(x)/Math.cos(g))),E=Math.sin(g),s=Math.atan2((E-this.es*M*this.sin_p12)*Math.tan(g),E*(1-this.es)),t.x=a,t.y=s,t)},names:["Azimuthal_Equidistant","aeqd"]},ce={init:function(){this.sin_p14=Math.sin(this.lat0),this.cos_p14=Math.cos(this.lat0)},forward:function(t){var e,n,i,r,o,a,s,c=t.x,l=t.y;return i=D(c-this.long0),e=Math.sin(l),n=Math.cos(l),r=Math.cos(i),((o=this.sin_p14*e+this.cos_p14*n*r)>0||Math.abs(o)<=1e-10)&&(a=1*this.a*n*Math.sin(i),s=this.y0+1*this.a*(this.cos_p14*e-this.sin_p14*n*r)),t.x=a,t.y=s,t},inverse:function(t){var e,n,i,o,a,s,c;return t.x-=this.x0,t.y-=this.y0,e=Math.sqrt(t.x*t.x+t.y*t.y),n=Yt(e/this.a),i=Math.sin(n),o=Math.cos(n),s=this.long0,Math.abs(e)<=1e-10?(c=this.lat0,t.x=s,t.y=c,t):(c=Yt(o*this.sin_p14+t.y*i*this.cos_p14/e),a=Math.abs(this.lat0)-r,Math.abs(a)<=1e-10?(s=this.lat0>=0?D(this.long0+Math.atan2(t.x,-t.y)):D(this.long0-Math.atan2(-t.x,t.y)),t.x=s,t.y=c,t):(s=D(this.long0+Math.atan2(t.x*i,e*this.cos_p14*o-t.y*this.sin_p14*i)),t.x=s,t.y=c,t))},names:["ortho"]},le=1,ue=2,de=3,pe=4;function he(t,e,n,i){var o;return t<1e-10?(i.value=le,o=0):(o=Math.atan2(e,n),Math.abs(o)<=s?i.value=le:o>s&&o<=r+s?(i.value=ue,o-=r):o>r+s||o<=-(r+s)?(i.value=de,o=o>=0?o-l:o+l):(i.value=pe,o+=r)),o}function fe(t,e){var n=t+e;return n<-l?n+=c:n>+l&&(n-=c),n}var ge,me={init:function(){this.x0=this.x0||0,this.y0=this.y0||0,this.lat0=this.lat0||0,this.long0=this.long0||0,this.lat_ts=this.lat_ts||0,this.title=this.title||"Quadrilateralized Spherical Cube",this.lat0>=r-s/2?this.face=5:this.lat0<=-(r-s/2)?this.face=6:Math.abs(this.long0)<=s?this.face=1:Math.abs(this.long0)<=r+s?this.face=this.long0>0?2:4:this.face=3,0!==this.es&&(this.one_minus_f=1-(this.a-this.b)/this.a,this.one_minus_f_squared=this.one_minus_f*this.one_minus_f)},forward:function(t){var e,n,i,o,a,c,u={x:0,y:0},d={value:0};if(t.x-=this.long0,e=0!==this.es?Math.atan(this.one_minus_f_squared*Math.tan(t.y)):t.y,n=t.x,5===this.face)o=r-e,n>=s&&n<=r+s?(d.value=le,i=n-r):n>r+s||n<=-(r+s)?(d.value=ue,i=n>0?n-l:n+l):n>-(r+s)&&n<=-s?(d.value=de,i=n+r):(d.value=pe,i=n);else if(6===this.face)o=r+e,n>=s&&n<=r+s?(d.value=le,i=-n+r):n<s&&n>=-s?(d.value=ue,i=-n):n<-s&&n>=-(r+s)?(d.value=de,i=-n-r):(d.value=pe,i=n>0?-n+l:-n-l);else{var p,h,f,g,m,v;2===this.face?n=fe(n,+r):3===this.face?n=fe(n,+l):4===this.face&&(n=fe(n,-r)),g=Math.sin(e),m=Math.cos(e),v=Math.sin(n),p=m*Math.cos(n),h=m*v,f=g,1===this.face?i=he(o=Math.acos(p),f,h,d):2===this.face?i=he(o=Math.acos(h),f,-p,d):3===this.face?i=he(o=Math.acos(-p),f,-h,d):4===this.face?i=he(o=Math.acos(-h),f,p,d):(o=i=0,d.value=le)}return c=Math.atan(12/l*(i+Math.acos(Math.sin(i)*Math.cos(s))-r)),a=Math.sqrt((1-Math.cos(o))/(Math.cos(c)*Math.cos(c))/(1-Math.cos(Math.atan(1/Math.cos(i))))),d.value===ue?c+=r:d.value===de?c+=l:d.value===pe&&(c+=1.5*l),u.x=a*Math.cos(c),u.y=a*Math.sin(c),u.x=u.x*this.a+this.x0,u.y=u.y*this.a+this.y0,t.x=u.x,t.y=u.y,t},inverse:function(t){var e,n,i,o,a,s,c,u,d,p,h,f,g={lam:0,phi:0},m={value:0};if(t.x=(t.x-this.x0)/this.a,t.y=(t.y-this.y0)/this.a,n=Math.atan(Math.sqrt(t.x*t.x+t.y*t.y)),e=Math.atan2(t.y,t.x),t.x>=0&&t.x>=Math.abs(t.y)?m.value=le:t.y>=0&&t.y>=Math.abs(t.x)?(m.value=ue,e-=r):t.x<0&&-t.x>=Math.abs(t.y)?(m.value=de,e=e<0?e+l:e-l):(m.value=pe,e+=r),d=l/12*Math.tan(e),a=Math.sin(d)/(Math.cos(d)-1/Math.sqrt(2)),s=Math.atan(a),(c=1-(i=Math.cos(e))*i*(o=Math.tan(n))*o*(1-Math.cos(Math.atan(1/Math.cos(s)))))<-1?c=-1:c>1&&(c=1),5===this.face)u=Math.acos(c),g.phi=r-u,m.value===le?g.lam=s+r:m.value===ue?g.lam=s<0?s+l:s-l:m.value===de?g.lam=s-r:g.lam=s;else if(6===this.face)u=Math.acos(c),g.phi=u-r,m.value===le?g.lam=-s+r:m.value===ue?g.lam=-s:m.value===de?g.lam=-s-r:g.lam=s<0?-s-l:-s+l;else{var v,y,b;d=(v=c)*v,y=(d+=(b=d>=1?0:Math.sqrt(1-d)*Math.sin(s))*b)>=1?0:Math.sqrt(1-d),m.value===ue?(d=y,y=-b,b=d):m.value===de?(y=-y,b=-b):m.value===pe&&(d=y,y=b,b=-d),2===this.face?(d=v,v=-y,y=d):3===this.face?(v=-v,y=-y):4===this.face&&(d=v,v=y,y=-d),g.phi=Math.acos(-b)-r,g.lam=Math.atan2(y,v),2===this.face?g.lam=fe(g.lam,-r):3===this.face?g.lam=fe(g.lam,-l):4===this.face&&(g.lam=fe(g.lam,+r))}return 0!==this.es&&(p=g.phi<0?1:0,h=Math.tan(g.phi),f=this.b/Math.sqrt(h*h+this.one_minus_f_squared),g.phi=Math.atan(Math.sqrt(this.a*this.a-f*f)/(this.one_minus_f*f)),p&&(g.phi=-g.phi)),g.lam+=this.long0,t.x=g.lam,t.y=g.phi,t},names:["Quadrilateralized Spherical Cube","Quadrilateralized_Spherical_Cube","qsc"]},ve=[[1,2.2199e-17,-715515e-10,31103e-10],[.9986,-482243e-9,-24897e-9,-13309e-10],[.9954,-83103e-8,-448605e-10,-9.86701e-7],[.99,-.00135364,-59661e-9,36777e-10],[.9822,-.00167442,-449547e-11,-572411e-11],[.973,-.00214868,-903571e-10,1.8736e-8],[.96,-.00305085,-900761e-10,164917e-11],[.9427,-.00382792,-653386e-10,-26154e-10],[.9216,-.00467746,-10457e-8,481243e-11],[.8962,-.00536223,-323831e-10,-543432e-11],[.8679,-.00609363,-113898e-9,332484e-11],[.835,-.00698325,-640253e-10,9.34959e-7],[.7986,-.00755338,-500009e-10,9.35324e-7],[.7597,-.00798324,-35971e-9,-227626e-11],[.7186,-.00851367,-701149e-10,-86303e-10],[.6732,-.00986209,-199569e-9,191974e-10],[.6213,-.010418,883923e-10,624051e-11],[.5722,-.00906601,182e-6,624051e-11],[.5322,-.00677797,275608e-9,624051e-11]],ye=[[-5.20417e-18,.0124,1.21431e-18,-8.45284e-11],[.062,.0124,-1.26793e-9,4.22642e-10],[.124,.0124,5.07171e-9,-1.60604e-9],[.186,.0123999,-1.90189e-8,6.00152e-9],[.248,.0124002,7.10039e-8,-2.24e-8],[.31,.0123992,-2.64997e-7,8.35986e-8],[.372,.0124029,9.88983e-7,-3.11994e-7],[.434,.0123893,-369093e-11,-4.35621e-7],[.4958,.0123198,-102252e-10,-3.45523e-7],[.5571,.0121916,-154081e-10,-5.82288e-7],[.6176,.0119938,-241424e-10,-5.25327e-7],[.6769,.011713,-320223e-10,-5.16405e-7],[.7346,.0113541,-397684e-10,-6.09052e-7],[.7903,.0109107,-489042e-10,-104739e-11],[.8435,.0103431,-64615e-9,-1.40374e-9],[.8936,.00969686,-64636e-9,-8547e-9],[.9394,.00840947,-192841e-9,-42106e-10],[.9761,.00616527,-256e-6,-42106e-10],[1,.00328947,-319159e-9,-42106e-10]],be=a/5,we=function(t,e){return t[0]+e*(t[1]+e*(t[2]+e*t[3]))},Se={init:function(){this.x0=this.x0||0,this.y0=this.y0||0,this.long0=this.long0||0,this.es=0,this.title=this.title||"Robinson"},forward:function(t){var e=D(t.x-this.long0),n=Math.abs(t.y),i=Math.floor(n*be);i<0?i=0:i>=18&&(i=17);var r={x:we(ve[i],n=a*(n-.08726646259971647*i))*e,y:we(ye[i],n)};return t.y<0&&(r.y=-r.y),r.x=r.x*this.a*.8487+this.x0,r.y=r.y*this.a*1.3523+this.y0,r},inverse:function(t){var e={x:(t.x-this.x0)/(.8487*this.a),y:Math.abs(t.y-this.y0)/(1.3523*this.a)};if(e.y>=1)e.x/=ve[18][0],e.y=t.y<0?-r:r;else{var n=Math.floor(18*e.y);for(n<0?n=0:n>=18&&(n=17);;)if(ye[n][0]>e.y)--n;else{if(!(ye[n+1][0]<=e.y))break;++n}var i=ye[n],a=5*(e.y-i[0])/(ye[n+1][0]-i[0]);a=function(t,e,n,i){for(var r=a;i;--i){var o=t(r);if(r-=o,Math.abs(o)<1e-10)break}return r}(function(t){return(we(i,t)-e.y)/function(t,e){return t[1]+e*(2*t[2]+3*e*t[3])}(i,t)},0,0,100),e.x/=we(ve[n],a),e.y=(5*n+a)*o,t.y<0&&(e.y=-e.y)}return e.x=D(e.x+this.long0),e},names:["Robinson","robin"]},xe={init:function(){this.name="geocent"},forward:function(t){return X(t,this.es,this.a)},inverse:function(t){return Y(t,this.es,this.a,this.b)},names:["Geocentric","geocentric","geocent","Geocent"]};ot.defaultDatum="WGS84",ot.Proj=K,ot.WGS84=new ot.Proj("WGS84"),ot.Point=yt,ot.toPoint=$,ot.defs=A,ot.transform=et,ot.mgrs=ct,ot.version="__VERSION__",(ge=ot).Proj.projections.add(Mt),ge.Proj.projections.add(Ot),ge.Proj.projections.add(_t),ge.Proj.projections.add(kt),ge.Proj.projections.add(Dt),ge.Proj.projections.add(Rt),ge.Proj.projections.add(Lt),ge.Proj.projections.add(Nt),ge.Proj.projections.add(jt),ge.Proj.projections.add(qt),ge.Proj.projections.add(Xt),ge.Proj.projections.add(Zt),ge.Proj.projections.add(Jt),ge.Proj.projections.add(Qt),ge.Proj.projections.add($t),ge.Proj.projections.add(te),ge.Proj.projections.add(ee),ge.Proj.projections.add(ne),ge.Proj.projections.add(ie),ge.Proj.projections.add(re),ge.Proj.projections.add(oe),ge.Proj.projections.add(ae),ge.Proj.projections.add(se),ge.Proj.projections.add(ce),ge.Proj.projections.add(me),ge.Proj.projections.add(Se),ge.Proj.projections.add(xe),e.default=ot}]);